I was wondering if it was possible to change the value of a register when an instruction gets executed. For example
0x10 call eax
0x20 at that point, I want to add
0x10 to it so that the address that gets called is now
What I tried doing was set a
AddVectoredExceptionHandler and put an
0x10. When my exception handler gets called, I restore the original byte at
0x10. Then I add
eax and jump to
ExceptionInfo->ContextRecord->Eip. This obviously doesn't work well because I never return to the OS.
Is there another way or is this even possible?