Basic Asm question

Posts 16 of 6 · Page 1 of 1
Basic Asm question
Okay now, I am not learning Asm, nor is it high on my list to learn (I will at some point though). But basically, I am writing an sv_cheats and sv_consistency bypass. It works, but the problem is the address's change every time the game is run. So instead I found what writes to the address's (with CE). Now I found the address, but I am somewhat confused on what is happening.

Code:
Address   |  Bytes  |       Asm      
0F740DB3   89 46 30  mov[esi+30],eax
Okay now, I don't really know what the bytes mean but I kinda understand (Small understanding of asm). If I am correct, eax stores a value (I'm guessing the last written thing in console) and esi is an address referring to whatever was typed into console (possibly). So what happens is it stores eax (what I changed) in esi+30.

Now that is a complete shot in the dark, I have barely any asm knowledge and I just figured I would take a shot at figuring it out. Now I am almost positive that is wrong, so I would much appreciate someone to explain what this operation is (without telling me to go learn asm) and hopefully I can figure out a way to find the sv_cheats and sv_consistency address's each time.

Thanks in advance
~lilneo
You can't really tell what something does with just one instruction. That's basically the same as:

[php]
*(DWORD*)(0x111111+0xC) = EAX;
[/php]

Assuming whatevers in ESI is 0x111111, it could be anything. Also, 0xC ( 12 ) because in assembly everything goes by single bytes, so I just had to make a small conversion.

I don't think I'm understanding you here though, are you trying to find what's in ESI all the time? Or...
Quote Originally Posted by Void View Post
You can't really tell what something does with just one instruction. That's basically the same as:

[php]
*(DWORD*)(0x111111+0xC) = EAX;
[/php]

Assuming whatevers in ESI is 0x111111, it could be anything. Also, 0xC ( 12 ) because in assembly everything goes by single bytes, so I just had to make a small conversion.

I don't think I'm understanding you here though, are you trying to find what's in ESI all the time? Or...
Well when I execute a console command, esi+30 is the address where the value of the command I executed goes. So sv_cheats 1 or something
~lilneo
So you basically need ESI, but it changes right?

Just use breakpoints. Or you can cause an access violation on that address and add an exception handler, then continue with what you need to do from there.
Alright, well I'll attempt to figure this out some more. Anyways why the hell did Void get banned? o.o
~lilneo
Quote Originally Posted by lilneo View Post
Alright, well I'll attempt to figure this out some more. Anyways why the hell did Void get banned? o.o
~lilneo
therofl is void, and 1337 post ban... a forum thing.. :\
Posts 16 of 6 · Page 1 of 1

Post a Reply

Similar Threads

Tags for this Thread

None

Need help?