I'm trying to reverse an application which debugs itself.
It put 0xcc bytes all over the place: I immediately thought it was a common anti-debug technique but this was not the case. As I continued reversing, I discovered the process had a fully working "custom debugger" which modified the EIP upon receiving a breakpoint interrupt in order to make static analysis more complex.
Now: with a common debugger it is not that simple modifying the EIP each time I encounter a 0xcc byte. What do you suggest to do to follow the code flow?
Thank you very much!
It put 0xcc bytes all over the place: I immediately thought it was a common anti-debug technique but this was not the case. As I continued reversing, I discovered the process had a fully working "custom debugger" which modified the EIP upon receiving a breakpoint interrupt in order to make static analysis more complex.
Now: with a common debugger it is not that simple modifying the EIP each time I encounter a 0xcc byte. What do you suggest to do to follow the code flow?
Thank you very much!