From f5fe795028230745e64c565f2fe8ebe994019f01 Mon Sep 17 00:00:00 2001 From: Igor Pissolati Date: Sun, 11 Jan 2026 17:11:17 -0300 Subject: [PATCH] Fix inadvertent stack pointer overwriting in callback hook --- src/windows-emulator/process_context.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/windows-emulator/process_context.cpp b/src/windows-emulator/process_context.cpp index 3d3e2b3c..d98ec9bb 100644 --- a/src/windows-emulator/process_context.cpp +++ b/src/windows-emulator/process_context.cpp @@ -503,7 +503,7 @@ void process_context::setup_callback_hook(windows_emulator& win_emu, memory_mana target_rip += 2; } - const uint64_t ret_stack_ptr = frame.rsp - sizeof(emulator_pointer); + const uint64_t ret_stack_ptr = emu.reg(x86_register::rsp) - sizeof(emulator_pointer); emu.write_memory(ret_stack_ptr, &target_rip, sizeof(target_rip)); emu.reg(x86_register::rsp, ret_stack_ptr); });