0

我第一次尝试注入代码,到目前为止基本上一切正常。但问题是,在我运行程序并调用方法 MessageBoxA() 后,会发生访问冲突。

问题是,ESI cpu 寄存器没有有效值。

MessageBoxA() 调用

 PUSH DWORD PTR DS:[ESI-5]

在它被调用之后。我必须在 ESI 中存储什么才能避免出现此错误?我已经将该方法的参数推送到堆栈上,所以我只是不知道这条指令想要我做什么..

如果您需要更多信息,请告诉我。

谢谢你。


编辑

程序的第一条指令跳转到我的代码。在我调用 MessageBoxA 后,我跳回到标准程序(目前没关系)

在此处输入图像描述

在这里,您可以看到我调用 MessageBoxA 后程序的去向。第三条指令已经导致了问题。

在此处输入图像描述

我希望这会有所帮助^^

4

0 回答 0