randmaster How do I cheat?
Reputation: 0
Joined: 03 Oct 2009 Posts: 1
|
Posted: Sat Oct 03, 2009 9:21 am Post subject: Finding assembly instruction that affect a value? [master] |
|
|
Hi there.
I have been searching a way to find how i could identify the assembly instruction that modify a value in a game that won't really let you do this easily (I won't name it, sorry )
This is what access the value:
| Code: |
MOV EAX,[address of value]
PUSH EAX
|
This is what changes the value:
| Code: |
POP EAX
MOV [address of value],EAX
|
Problem 1: after the access, the program jump to a non static adress. It looks like this:
| Code: |
JMP dword ptr [EBX*4+ghotspotvmlongconstantentryarraystride+(Constant value)]
|
Problem 2: Several hundred of values are being accessed and changed this way, and can jump to different addresses depending on the above
Problem 3: From here, this would be easy if i implemented assembly code there that would tell me where it jumps. but after doing it I realised that more than one value can use the same jump.
Problem 4: The value is not only accessed when it needs to be writen. So i cannot implement something that allow trace if i identify it.
Problem 5: After high implementations on both ends - when the value is supposed to change - i realised that lot of others values just change, too.
In order to check where it will jump, i injected assembly using allocation, used another allocation to store the destination and read it using programming skills.
--------
As you can guess I bet i won't get out of this using obvious CE features, and couldn't do everything i tried using CE alone.
Do you have anything to suggest me? Like tracing using conditions: if EAX<>expected, stop tracing and try again or such.
If CE lack of such features can you tell me how to trace myself? (which dll do i need or so)
advice for reading the stack! If i can handle it using my own programming skills maybe i'll be able to trace the value after being pushed/poped until it gets affected.
Thanks for reading, and hopefully, helping.
|
|