I'm working on a localization project and have a few trampoline hooks to translate some text in an online game. Periodically throughout gameplay, there are checks that run in the background to ensure the .text section of the game hasn't been modified. Of course I've done this with the existence of trampoline hooks, so the check fails and I'm met with what looks like a custom error code of INVALID_CALL_1.

I've attempted for months to figure out how this checksum is calculated, but I don't believe I have the skills necessary to figure this out, so I'm looking at other options.

I'm wondering if this logic seems reasonable, but would you theoretically be able to re-direct how the exception is handled using something like SetUnhandledExceptionFilter to check if the exception matches INVALID_CALL_1 and have it return EXCEPTION_CONTINUE_EXECUTION instead? I don't mind doing the work, but wanted to know if my logic is flawed as I haven't worked with the Windows API all that much and am unsure where to ask this question.


  • Can you elaborate on what makes you sure that there's an exception thrown somewhere, as opposed to, say, an if-statement? Commented Oct 4, 2022 at 5:23


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.