• 标 题:FPE 2000 Pro在Crack中的一点应用 (1千字)
  • 作 者:liangs
  • 时 间:2001-2-14 10:10:18
  • 链 接:http://bbs.pediy.com

FPE 2000 Pro在Crack中的一点应用
                 
  FPE 2000 Pro是一个功能强大的游戏修改工具,它的内存扫描分析功能确实
相当的强劲,相信很多喜欢玩游戏的兄弟都能熟练的使用它。其实把它作为一个
Crack的辅助分析工具也是相当不错的哟!下面举一个实例来说明一下。
  过年的那几天,在家里没事就玩了玩泡泡龙(Bubble Bobble Nostalgie v1.0)
,由于游戏开始只给了4条命,到了后面简直就玩不动了,想想要是能将4条命改成
N条命那该多好。说干就干,马上运行FPE 2000 Pro进行内存扫描分析,自杀几次
后,FPE找出了唯一的一处内存地址[0042CC04],通过对此处内存地址的锁定,我们
发现的确没错。问题是用了FPE后,每次玩游戏的时候都要运行一下它,太麻烦了。
要是直接修改一下程序,让它加载时就给足你N条命,那该多好。
  要修改程序,我们首先用W32Dasm静态反汇编一下,既然游戏中的生命值始终是
对内存地址[0042CC04]的操作,我们就搜索这个地址,于是就找到了如下一段代码:

:00406191 B904000000              mov ecx, 00000004
:00406196 891568CC4200            mov dword ptr [0042CC68], edx
:0040619C AA                      stosb
:0040619D 890D37CC4200            mov dword ptr [0042CC37], ecx
:004061A3 890D04CC4200            mov dword ptr [0042CC04], ecx

  上面这段代码我想大家都能看的懂,00406191处是游戏初始化是将要赋值的4条命,
也正是我们想要修改的地方,004061A3处就是将4条命放到内存[0042CC04]中去,你
死一条命,[0042CC04]处的内存值就减1。注意,虽然共有四个字节可供你去修改,
但是,如果改的太大,游戏中命的显示会有问题。
  希望大家看过这篇泡泡龙的修改后,在Crack的时候能多一条思路。


                                      liangs
                                      2/14/2001