| View previous topic :: View next topic |
| Author |
Message |
deama1234 Master Cheater
Reputation: 3
Joined: 20 Dec 2014 Posts: 328
|
Posted: Fri May 01, 2015 9:11 pm Post subject: break and trace tutorial? |
|
|
| I can't seem to find a tutorial (for starters) about how the "break and trace instructions" feature works, could someone give me a tutorial or just write one?
|
|
| Back to top |
|
 |
Geri Moderator
Reputation: 111
Joined: 05 Feb 2010 Posts: 5627
|
Posted: Fri May 01, 2015 11:50 pm Post subject: |
|
|
There is a description for it in the help file. What is that you want to know exactly?
_________________
|
|
| Back to top |
|
 |
deama1234 Master Cheater
Reputation: 3
Joined: 20 Dec 2014 Posts: 328
|
Posted: Sat May 02, 2015 10:48 am Post subject: |
|
|
| Geri wrote: | | There is a description for it in the help file. What is that you want to know exactly? |
If there was an instruction like
"mov [ecx+00000110],eax"
how would I trace the "eax" part? As in, how would I use the break and trace feature to trace the "eax" all the way to the part where it was assigned a value?
So, if:
"eax = 100"
how would I trace it to the point when it was given that "100" value?
|
|
| Back to top |
|
 |
Zanzer I post too much
Reputation: 126
Joined: 09 Jun 2013 Posts: 3278
|
Posted: Sat May 02, 2015 11:26 am Post subject: |
|
|
Well, if you're lucky, you can simply scroll up and find mov eax,****
If you're even more lucky, that instruction won't be a temporary address from the stack.
The true hope you have is that the game normally reads the existing value before changing it.
Again, if you're lucky, it will have a separate instruction that reads from the value only when an action occurs.
So, use the Find out what accesses this address (instead of 'writes to').
Perform an action that changes it then go to the instruction similar to mov eax,[ecx+00000110]
Break and trace the instruction there.
Now press CTRL-F to find 'EIP==0x#######' where that value is the EIP value of the original write instruction you found.
Now you know that the trace you are looking at has the entire logic from beginning to end.
|
|
| Back to top |
|
 |
Geri Moderator
Reputation: 111
Joined: 05 Feb 2010 Posts: 5627
|
Posted: Sat May 02, 2015 1:22 pm Post subject: |
|
|
Tracing doesn't go backwards, because the code is not executed backwards. If you want to backtrace something, try those things that Zanzer said. Sometimes, this is very easy, sometimes it is very complicated. The code is executed from top to bottom unless you hit a jump or call or other instruction that takes you to somewhere else. So if you want to know what happened with eax before your instruction, then scroll up in the code and if it helps, you can try to start the tracing a little higher up, but this may give false results due to the mentioned jumps.
_________________
|
|
| Back to top |
|
 |
|