我一直在查看我试图“改进”的一段电脑游戏代码。(好吧,也许我对游戏很烂,但我仍然想玩)。您能否查看以下代码:
fld dword ptr[ebp+00007B1C]
fsub dword ptr[esp+64]
fst dword ptr[ebp+00007B1C]
call 004A2E48
此代码每秒调用一次,用于关卡倒计时。我需要在一个特定的水平上停留几分钟。如果我可以修改上面的代码,使推入地址 [ebp+00007B1C] 的值为 0,那么游戏关卡将永远超时,这样我就可以不用玩那些疯狂的“生存”小游戏了。
我将解释我从这段代码中理解的内容。不用担心,您不必深入研究。
在第一行中,我们得到计时器值。例如,如果还剩 97 秒,则在此处加载此值。
在第二行中,从 97 中减去一个值(1 秒)。
在第三行中,96 再次移动到内存中。最后我们有一个函数调用,它将根据剩余时间进行其他处理。
现在我需要做的就是以某种方式修补这段代码,以便推送的值为 0(在第三步中)。
你能帮我解决这个问题吗?