小白一个,尝试一款很老的游戏,发现属性数值是游戏里的显示值乘8,但是搜不到基址只能手动扫描指针,4级偏移扫描到最后一直剩6个指针不减了,然后随便挑了一个用重启了两次游戏都还有效,正当我以为成功了超嗨皮时,第三次重启游戏后指针失效了有没有大佬知道什么情况,是不是扫的偏移层级还不够 指针, 游戏
这种情况好解决,一般这个时候mov的前面后面都有相同的寄存器。 这个时候不要相信ce的推测,因为ce标明了这是执行之后的各个寄存器的值,并不能反映真正的地址加偏移。 这个时候点那个代码,打开反汇编,在这个代码的地方下个断点,然后直接看寄存器的值。 这个时候显示的是代码执行前寄存器的值,就是真正的地址加偏移,直接带入代码中括号内的表达式计算一下就ok。 只不过有的地址很奇怪,找到模块地址之后第一个偏移不太对,你得手动前后动几个字节才能指向正确的地址,这个我也不太懂,希望有大佬看到能帮忙解决一下。