精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>电脑技术>>● 计算机安全>>◆破解技巧◆>>我写的破解文章,希望有同好者给点意见!

主题:我写的破解文章,希望有同好者给点意见!
发信人: darkfly()
整理人: williamlong(2000-02-10 14:10:17), 站内信件
        ★Dark Baby 破解小组★

             【CoolFly】
=========
破解前话:
=========
首先,你得准备一套破解工具,如: 鬼佬的ICE,GAMETOOLS,TR,DEBUG,SYMDEB,等追
踪调试
解释器,然后须准备用于修改的工具,如: UltraEdit,Pctools,Hiew,Pse等等.
上面的东西准备完毕后,嗯,差不多了,再翻翻组合语言的书,喂,不要皱眉头哦,坚
持才会
胜利嘛?其实也不是特别的困难啦,只要懂得什么是 JMP,JNZ,CMP,CALL,... 这些
都知道
了吗? 嗯,孺子可教也!! 接下来,我就跟你讲一讲那个鬼佬的ICE,它的热键是Ctr
l-D .
F5: 返回USER程序
F4: 看USER画面
F6: 命令区与记忆区切换
F8: 单步执行,进入CALL
F9: 设断点
F10: 单步执行,不进入CALL
F12: 相当于P RET
D: 看记忆体 E: 修改记忆体 R: 修改寄存器 G: 执行程式
CODE ON: 观看机械码
差不多了,跟着看看我下面的'破文'就可以明了一二,最重要的是自己实践,对吗?
!

**********************************************************************
*******
第一回
**********************************************************************
*******
★目标软件: KanjiWEB3.0
时间限制: 大约一个月

1998年12月25日晚23:14分
KANJIWEB 是个不错的内码转换程序,但是有时间限制,需要注册。
首先打开 MultiWord.exe 程序,然后选择 register,
在注册框中输入任意字符,切换到 winice ,输入:
bpx getdlgitemtext ,按F5键回到程序,按下OK按键,程序被中断,
我们就从这儿一路P下去,最后到了
....
....
....

30f7:39c9 xor byte ptr [si],86
    :39cc inc si
    :39cd lea ax,[bp+fe2f]
    :39d1 cmp si,ax
    :39d3 jb 39c9

程式到此循环九遍,程式在判断九位注册码,追到

30f7:3a4e call messagebox

此时出现注册失败的画面,因此我就从此开始逆查,往上一看,

xxxx:39eb repz cmpsb
    :39ed jz 39f4 '判断语句,如果相等则跳到29f4继续执行。
xxxx:xxxx .
          .
xxxx:39f4 or ax ax
xxxx:39f6 jnz 3a3a '比较,如果不等则跳到3a3a处。

按F10键执行到3a3a处一看:

xxxx:3a3a mov si,0001
...
...
xxxx:3a4e call user!messagebox  '执行到此处就会出现上面的注册失败的画面

....
xxxx:3a6d or si,si
xxxx:3a6f jnz 3a87 '跳到3a87,并结束注册

所以39f6 处的比较绝对有问题,假设相等就不会跳跃了,我们从39f6往下看:

....
....
xxxx:3a32 jmp 3a53
xxxx:3a34 mov si,[bp-08]
xxxx:3a37 jmp 3a6d

而跳到3a53处往下执行是:
....
....
xxxx:3a6f jnz 3a87 
....
xxxx:3a74 call user!getparent '处理注册
....
xxxx:3a82 call user!sendmessage '发送注册信息。
....
xxxx:3a87 xxxx
....
xxxx:3a8c call user!enddialog '注册结束信息

我想上面的关键语句行一看就会明白39ed和39f6语句有问题

方法,下code on 命令将修改下列机械码:

 30f7:39f6 jnz 3a3a -> nop nop (因为是两个字节,所以填两个nop)

退出后,注册成功,软件可以正常使用啦!

【结论】

查找:  MULTWORD.EXE (49,008 BYTE)
       <1> 0BC0 <7542> C646FBFF -> 0BC0 <9090> C646FBFF 
                 ^^^^                    ^^^^
破解完成,可以上床睡觉了。看看表,哇,很晚了吗?see you letter!

**********************************************************************
*******
第二回
**********************************************************************
*******
★目标软件: Hot Backgrounds2.0.0 和 Hot Buttons2.0.0

1998年12月26日中午12:33分破掉Hot Backgrounds 软件
首先载入winice.exe
运行Hot backgrounds ,出现注册画面,在注册框中输入任意值,然后回到winic
e中,
输入:
bpx getdlgitembox 设置中断,按F5键回到程序中,按下OK键,被winice拦到。

按F10键到

xxxx:0cc4 jmp 0d05
xxxx:0cc6 jle bx,[bp-06]
....
....
xxxx:0d09 jle 0cc6 '此处是个循环,判断输入字符。
xxxx:0d0b cmp word ptr [bp-08],00
xxxx:0d0f jnz 0d5b  '此处是个判断,如果不等则到0d5b

按F10键时,没跳到0d5b处,继续再往下执行,到

xxxx:0d42 call user!messagebox '出现注册失败画面
因此试着将

xxxx:0d0f jnz 0d5b 改为 jmp 0d5b 跳到0d5b处执行时,一切正常。

【结论】
修改机械码:

找 837EF800 754A C45EFA 26FFB7FF04 -> EB4A
            ^^^^                      ^^^^
一切完成。同样,Hot Buttons 软件修一模一样哦。


**********************************************************************
*******
第三回
**********************************************************************
*******
★目标软件: HomeSite3.1 
使用期限1个月,使用次数为50次。

因为软体本身没有要求输入注册号的地方,需要换一种方法CRACK。
将日期调增一个月。
呼出win-ice
(1) 输入 BPX CREATEWINDOW
(2) 运行程序,被中断,按10次F12键,走到
      015F:578107 XOR EAX,EAX
(3) 开始按F10开始TRACE!
(4) 当走到 015F:578131 CALL 004FFE68 处时出现失败视窗。
      在这个地方,我以为只要跳过此CALL 即可,(后来得知:谁知错也。)
(5) 往上看,
    { 15F:578115 CALL 577428
    {   XXX:57811A TEST AL,AL
    { XXX:578A1C JZ 57812F ->改为 JMP 57812F
  1 { XXX:XXXXXX ...
    {    ...
    { XXX:57812A JMP 578523 ->如果走到这一步,程序就死掉了.(千万小心)
    { XXX:57812F MOV AL,01
XXX:XXXXXX ...
   ...
    { XXX:578131 CALL 004FFE68
    { XXX:578136 TEXT AL,AL
  2 { XXX:578138 JNZ 57814B ->改为 JMP 57814B
    { XXX:57813A ...
    { XXX:XXXXXX ...
    { XXX:578146 JMP 578523 ->其实这个JMP是终止程序的跳转。
    { XXX:57814B

现在可以知道只要程序不执行到两个 XXX:XXXXXX JMP 578523 处即可。
它们的上面都有个判断程式。只要将其改为无条件转移即可。应该明白了吧。

注: 1处为判断程式使用次数是否超过,2处为判断程式使用期是否超过。

【结论】

查找:   HOMESITE3.EXE (2,906,112 BYTE)
84C0 7411 A178 C359 ->84C0 EB11 A178 C359
             ^^^^                      ^^^^
84C0 7511 A178 C359 ->84C0 EB11 A178 C359
             ^^^^                      ^^^^

修改完毕后,调出程式,但出现一个不太好看的信息框,不过没有关系,能够正
常使用,
那么就一切OK了。

**********************************************************************
*******
第四回
**********************************************************************
*******
★目标软件: UltrEdit-32
时间限制: 40天

将日期调增
首先载入Win-ice
输入中断: BPX CREATEWINDOWEX
运行程式,被中断,按F12 23下走到:
15F:4060A1 TEXT EAX,EAX
按F10继续走,当走到

15F:406555 CALL 407FEF
XXX:40655A TEXT EAX,EAX
XXX:40655C JNZ 406564
XXX:40655E AND [ESI+0124],EAX
XXX:406564 CMP DWORD PTR[EBP-10],00
XXX:406568 JNZ 406DF9
...
XXX:406DF9 PUSH ...
XXX:XXXXXX
...
XXX:406E11 JG 406E28 ->将其改为NOP NOP
XXX:406E12 CMP DWORD PTR [ESI+00000124],00
XXX:406E22 JNZ 40659B ->改为JMP 40659B
XXX:406E28 CALL ?? ->如果走到这个CALL就会出现询问注册号的画面。
知道怎么做了吧?对了,将上面的一个比较改为无条件跳转 即可了。

【结论】
修改: UEDIT32.EXE (772,608 BYTE)
XXX:406E22 0F8573F7FF  ->E974F7FFFF90
                   ^^^^^^^^^^     ^^^^^^^^^^^^ 
意思是: 将 XXX:406E22 JNZ 40659B ->JMP 40659B

XXX:406E?1 7F0D 838E2401->9090  838E2401
   ^^^^           ^^^^
        意思是: 将 XXX:406E11 JG 406E28 ->NOP NOP
 
如果觉得每次运行程序时出现的画面很讨厌,可以修改如下机械码:

查找: 7516 8B4DD86A06 ->EB16 8B4DD86A06
      ^^^^                ^^^^
这套软件,我总共花了将近几个小时,感觉很不舒服。但还是将它破了,它通过
你输入
的注册号放入.INI文件中,第二次打开程序时再从.INI文件中取出注册号对比,
虽然我
总不能找到它的注册号,谁叫咱的组合语言功底差呢?

**********************************************************************
*******
第五回
**********************************************************************
*******
★目标软件: SNAGIT/32 Version 4.2.1
是个抓图软件,时间限制为: 45天,我试着把日期调增一年后,发现只要在延迟
画面
上的GIVE ME MORE TIME 按钮上点一下又可以进入程序了。
这次的目标是做掉延迟画面。
首先载入WIN-ICE
打下中断: BPX CREATEWINDOW
按7次F12,后按F10键直到:

15F:42C21A CALL 468CF1
XXX:XXXXXX ...
XXX:42C2C2 CALL 42D0CF ->这个CALL绝对有问题。
如果你问我怎么知道,我说我有试过啊,。真是麻烦唉,你好不开窍哟##$@**@

那么换F8键进入观摩一下吧?
当TRACE 到

15F:42D45D CALL 42DFC8 ->出现延迟画面啦。
抬头望青天啦!
XXX:42D3C6 CMP [EBX+00000108],EDI
XXX:42D3CC JNZ 42D462 ->将它改为JMP 42D462即可。
XXX:42D3D2 CMP [EBP+08],EDI
XXX:42D3D5 JNZ 42D462 ->改这个也行,看你喜欢啦?

【结论】
查找: SNAGIT32.EXE (743,424 BYTE)
0F8590000000 397D08 ->E99100000090 397D08
        ^^^^^^^^^^^^          ^^^^^^^^^^^^
附注: 当我试将日期调后,发现已经不知被哪位XX杀过了,所以可照常使用.没日
期限制. 

**********************************************************************
*******
第六回
**********************************************************************
*******
★目标软件: XARA 3D Version 2.10
功能限制: 不能选择背景图案

现在我们就来破它吧,首先当然是载入WIN-ICE了,否则,这么多课简直是白学了

选择HELP菜单下的UNLOCK选项,随意输入一个注册码,如: 79797979
搜出位址后设断,二拦后在
16AF:3A90 JMP 3AAB
XXXX:XXXX ...
...
15F:40C69E CALL 47542F ->此CALL绝对有问题,因为失败视窗出现了。
往上看有没有可跳过此CALL的方法,哗,找到了,
15F:40C4DA CMP EDX,ECX  ->在此设断,重新注册。
XXX:40C4DC JNZ 0040C595
...
XXX:40C590 JMP 40C63F ->可跳过XXX:40C69E 那个CALL

执行,咦,竟然没走到我刚设的那个断,WHY? 举头望明月,明白了,你不明白,
那我
告诉你:

上面还有8个相类似的比较语句都是可跳过40C595,现在明白怎么做了吧,很简单
呀,
将它们全部NOP掉就可以了。

【结论】
修改: X3D.EXE (852,992 BYTE)
0F85E6010000 ->909090909090 <DISP: B7A9-B7AF>
0F84D2010000 ->909090909090 <DISP: B7BD-B7C2>
0F84B6010000 ->909090909090 <DISP: B7D9-B7DE>
0F849A010000 ->909090909090 <DISP: B7F5-B7FA>
0F847E010000 ->909090909090 <DISP: B811-B816>
0F8462010000 ->909090909090 <DISP: B82D-B832>
0F8446010000 ->909090909090 <DISP: B849-B84E>
0F842A010000 ->909090909090 <DISP: B865-B86A>
0F85B3000000 ->909090909090 <DISP: B8DC-B8E1>
        
这次可是大行动哦,改得你手发麻。刚好锻炼一下自己的修改功力也不错啊?!
1999年1月2日晚

**********************************************************************
*******
第七回
**********************************************************************
*******
★目标软件: Virtual Drive (tm)V2.01 for win95
时间限制: 21天

只要看过前面的八课,你就会明白,首先肯定是将日期调增一年,然后呼出WIN-
ICE,
下断点: BPX CREATEWINDOWEX
运行程序,被中断,按31次F12键,到达:
15F:40FE88 TEST EAX,EAX
XXX:XXXXXX ...
...
XXX:410007 CALL XXXXXX ->到此CALL出现失败画面
按照常规,举头望明月,哗,被我搜到了,我真是很聪明哦,
XXX:40FFE4 JAE 410050 ->可跳过410007,将它改为JMP。

修改后,运行程序,咦,还是不能运行,又出现了一个询问画框,按CACEL就会退
出。
嗯,还得改,继续跟踪程式:
XXX:4101B4 CALL 4174F6 ->此CALL甚有文章,跟进去观摩一下吧!

XXX:5F410F6E JZ 5F410FA9 ->改为JMP 5F410FA9
XXX:XXXXXXXX ...
XXX:5F41ED27 JNZ 5F410FBE ->改为JMP 5F410FBE
XXX:XXXXXXXX ...
...
XXX:5F4101C3 JZ 410329 ->改为JMP 410329

请别问我是怎么看出上面的跳转有问题,请你们自己试码,因为程式有很多的判
断,只
要你跟进去把各个跳转弄清楚就可以了。

【结论】
修改: MGR.EXE (612,532 BYTE)
8D0C383B4DE4 7367 ->8D0C383B4DE4 EB67
             ^^^^                ^^^^
0F8460010000 ->E96101000090
^^^^^^^^^^^^   ^^^^^^^^^^^^  
MFC42.DLL (954,128 BYTE) ->C:\WINDOWS\SYSTEM\
33DB3BC3 7439 ->33DB3BC3 EB39
                 ^^^^            ^^^^
0F859122FFFF 57 ->E99222FFFF90 57  
^^^^^^^^^^^^      ^^^^^^^^^^^^
1999年1月5日20:37,用时约30分钟。

**********************************************************************
*******
第八回
**********************************************************************
*******
★目标软件: Virual CDRom 2.0 for windows95
 日期限制: 21天

这堂课,我将会把程序主要流程标出来,请大家注意看:
首先下BPX CREATEWINDOWEX 中断
被程式拦截后按31次F12,然后按F10开始,当走到

[主程式]
15F:405EEB CALL 41627A ->在此设断,进入此CALL。
...
15F:405EF2 JZ 406054 (9-B) ->改为 JMP 406054
...
15F:406054 CALL 406063
... ->结束。

[分支程式]
XXX:5F410EC2 ...
XXX:XXXXXXXX ...
XXX:5F410F48 JNZ 5F41ECC2 (1)
XXX:XXXXXXXX ...
XXX:5F410F4E AND DWORD PTR [EBP-04],00 (3)
...
XXX:5F410F6E JNZ 5F410FA9 (4) ->改为 JMP 5F410FA9
...
XXX:5F410FA9 OR DWORD PTR [EBP-04],-01
...
XXX:5F410FB0 JNZ 5F41ED10 (5)
...
XXX:5F410FB6 CMP EDI,EBX
XXX:5F410FB8 JNZ 5F41ED1E (7)
...
XXX:5F410FBE MOV EAX,[ESI]
...
XXX:5F410FDD RET (9-A)
...
XXX:5F41ECC2 PUSH EDI
...
XXX:5F41ECE1 JMP 5F410F4E (2)
...
XXX:5F41ED10 PUSH 01
...
XXX:5F41ED19 JMP 5F410FB6 (6)
...
XXX:5F41ED1E CALL [5F498658]
...
XXX:5F41ED27 JNZ 5F410FBE (8) ->改为 JMP 5F410FBE

【结论】
修改: MGR.EXE (809,984 BYTE)
0F845C010000 ->E95D01000090
^^^^^^^^^^^^   ^^^^^^^^^^^^
      MFC42.DLL (954,128 BYTE)
33DB3BC3 7439 ->33DB3BC3 EB39
                 ^^              ^^
0F859122FFFF ->E99222FFFF90
        ^^^^^^^^^^^^   ^^^^^^^^^^^^
注:
如果已经安装过Virsual Cdrom 2.0 ,而又想重新安装,就须修改。
SETUP.EXE (51,712 BYTE)
85F6 745D ->85F6 EB5D
             ^^^^        ^^^^ 
**********************************************************************
*******
第九回
**********************************************************************
*******
★目标软件: 东方快车98 月限时版
时间限制: 1个月

首先下中断,这个软件给我的感觉是太庞大了,F12都要按得手疼。
给你个提示吧,将日期调增一月是必然的,然后下 BPX SHOWWINDOW 中断,按F1
2追下去
,直到信息框出现,然后在附近下中断。(我为什么要调增一月,而不是一年呢
,因为
调增一年却能够正常使用,我想因为是它只测算有没有超过月份吧?)
等程式追到:

20c7:5948 ...
xxxx:xxxx ...
20c7:597b jz 5985 
20c7:5980 call user!
xxx:xxxxx ...
1bb7:3d21 push ..
xxxx:xxxx ...
xxxx:1245 jnz 1252 ->将此改为 JMP 1252
xxxx:xxxx ...
xxxx:124d call ... ->程式结束
xxxx:xxxx ...
xxxx:1252 ... ->程式运行

【结论】
修改: DFKC.EXE (6,630,780 BYTE)
750B C43EF422 ->EB0B C43EF422
^^                ^^
改完后,竟然发觉只需改2个BYTE,真是奇怪,这么大的文件,嗯??
   
**********************************************************************
*******
第十回
**********************************************************************
*******
目标软件: CDWizard V1.0
时间限制: 30天
首先将时间调增一年,运行程序,被万能的WIN-ICE中断在
15F:405F43 CALL EBP ->光盘精灵的控制面板被呼出
15F:405F45 CALL 408310 ->时间限制信息出现
XXX:XXXXXX ...
XXX:405F4A TEST EAX,EAX
XXX:405F4C JNZ 405F52 ->如果不跳转就死掉了,因此设法让EAX不为零。
...
XXX:405F50 JMP 405FB5 ->完蛋了。

经过上面的分析,知道问题在 405F45 那个CALL
15F:40839D TEST EAX,EAX
XXX:40839F JNZ 4083C1 ->改为NOP
...
XXX:4083B3 TEST EAX,EAX
XXX:4083B5 JNZ 4083C1 ->改为NOP
...
XXX:4083C0 RET
...
XXX:4083CF CALL [00420520] ->时间限制信息发源地。
XXX:4083D5 XOR EAX,EAX ->使EAX清零,失败的预言。
XXX:4083D8 RET

【结论】
修改: POWERVCD.EXE (448,512 BYTE)
85C0 7520 68C0 ->85C0 9090 68C0
             ^^^^             ^^^^
85C0 750A B801 ->85C0 9090 B801
             ^^^^             ^^^^

**********************************************************************
*******
第十一回
**********************************************************************
*******
目标软件: GETRIGHT V3.2
功能限制: ??
这个软体是个不错的断点续传下载软件,功能很强,算起来我已经有三个多月没有
破解过
什么软体了,这次就拿它来开刀吧.
首先点HELP菜单,选择ABOUT GETRIGHT选项,然后按下ENTER CODE键,这时在对话框
中输入
注册码'79797979'.
按CTRL-D呼出ICE,下中断BPX HMEMCPY,返回程式,按下OK键后,被ICE中断.连忙按
F12键
追踪下去,到了程式在
15F:43217B CALL 44324E ->弹出注册失败框.
往上看有什么地方可跳过此处,哗,很幸运,找到了:

15F:43212E CALL 4662AD
XXX:XXXXXX ...
15F:432140 JZ 432161
XXX:XXXXXX ...
15F:43216B TEST EAX,EAX
15F:43216D JZ 432178 ->将它NOP掉就行了.
XXX:XXXXXX ...
15F:432176 JMP 432182 ->此处可跳过滤43217B处的CALL,所以.
15F:43217B CALL 44324E ->失败.
  
具体关于算注册码要看 15F:43216D JZ 432178 上面的一个CALL段,进去自己揣摩
一下吧,
不要什么事都依赖别人,已经很晚了,我得赶快睡觉.嗯,打CODE ON,看机械码:

【结论】
修改: GETRIGHT.EXE (1,033,216 BYTES)
7409 8BCEE8E0 ->9090 8BCEE8E0
^^^^ ^^^^
其实对于注册软体来讲,这样霸王硬上弓来硬改机械码不是太好,有时有的软体就
会拒绝,
所以对于这种情况你就只能算注册码了,一定要有耐心哦,不多说了,自己多练练吧
.

**********************************************************************
*******
第十二回
**********************************************************************
*******
目标软件: WEBZIP 2.1
时间限制: 21 天

首先打开程序,在出现的延迟画面上单击REGISTER,在出现的注册框中输入自己的
名字和
任意的注册码,一切OK后,切回ICE,下BPX HMEMCPY 命令.
按F5键回到程序,按下回车键后被ICE拦截,按F10一直追踪,直到:
15F:005C9C80 CALL 5C743C
15F:XXXXXXXX ...
15F:005C74E5 CMP BYTE PTR [EBP-0D],00
15F:005C74E9 JZ 5C7568 ->当然是将这个跳转改为空了.
15F:XXXXXXXX ...
15F:005C7568 CALL 5C7B9C ->程序走到此处会弹出注册失败信息. 

【结论】
修改: C:\WINDOWS\SYSTEM\SHRLK20.DLL (211,456 BYTES)
747D B880 ->9090 B880
^^^^   ^^^^
修改过后的WEBZIP可以继续执行,等到延迟画面出现时,选择注册,不用输入任何字
直接
按回车,这时出现注册成功的信息,然后CONTINUE键就有效了,可以继续执行了.因
为我最
近很忙,所以不能将它完全破得透彻,请大家原谅.

**********************************************************************
*******
第十三回
**********************************************************************
*******
目标软件: MAPEDIT V2.23
这是个为HTML超文本文件制作图像镜像链接的小工具,非常方便,如果不是我将VB
丢手几
个月的话,我也会做一个同样的工具,因为它确实非常的方便.
具体破解过程就不用多说了.用SOFT-ICE追踪.

【结论】
MAP32.EXE (272,896 BYTES)
注册码是: BJJNBKBA

**********************************************************************
*******
第十四回
**********************************************************************
*******
目标软件: REG.OCX
这是一个用于编辑WINDOWS注册表的控件,感觉很好用,但这个程序的作者太差劲,
这样一
个小程序居然反反复复地让人注册,太不人道.只好祭出WIN-ICE.所谓你不
仁,我不
义吗?
首先打中断,因为使用这个控件的可执行程序会被控件要求注册,如果按cancel会
继续运
行,但下次它会又要求你注册.我们按下register键,随便乱打注册码,跟踪程序进
入到:

15F:XXXXXXXX CALL XXXXXXXX ->进入此CALL.
15F:100044AF CMP DWORD[ESI-08],18  ->意思是比较注册码的长度(一定要是24
位)
15F:100044B3 JZ 100044BD ->将它改为JMP即可.
...
15F:XXXXXXXX JZ XXXXXXXX ->下面还有一个JZ将它也改为JMP即可.
这个JZ,我没记在哪个位置,自己去找找看.给个提示: 在子程序要返回的前几行
.

【结论】
修改: REG.OCX (48,128 BYTES)
7408 33C0 ->EB08 33C0
^^^^   ^^^^
7402 33C0 ->EB02 33C0
^^^^   ^^^^
DATE: 1999年5月16日(10:38)

**********************************************************************
*******
第十五回
**********************************************************************
*******
目标软件: WinZip 7.0(1260)
原以为这个ZIP很出名,它的注册程式一定很牢固,可没想到破的时候,只花了两
分钟就
搞定了,下面列出破解经过:
下中断BPX hmemcpy
被拦下后,一直P到失败信息框出现,
15F:4080C6 CALL 426790 ->失败
往上看有什么地方可跳过此CALL,找到了:
15F:4080B0 JMP 4080E3 ->刚才为什么没走到此地?
再往上找:
15F:408061 TEST EAX,EAX
15F:408063 JZ 4080B2 ->将它NOP掉,就OK了。

【结论】
修改: WINZIP32.EXE (983.040 BYTES)
85C0 744D 53BB ->85C0 9090 53BB
     ^^^^        ^^^^
刚才证实了一下,虽然出现了注册成功的信息框,但下次启动WINZIP时叫你注册的
延迟画
面又会出来烦你,真是的.只好想办法把它去掉了.我是不是真的很逊呀?!
重新TRACE一遍:
这次用 BPX CreateWindowEX 中断,
15F:43C064 CALL 4018AD ->出现要你注册的延迟画面,将它NOP掉。
15F:43C069 TEXT EAX,EAX ->EAX为0,则退出程式;EAX为1,则进入程式。
15F:43C06B POP ECX
15F:43C06C JZ 43C123 ->改为NOP,即直接进入程式。
【结论】
修改: WINZIP32.EXE (983,040 BYTES)
0F84B1000000 68C0A147 ->909090909090 68C0A147
^^^^^^^^^^^^           ^^^^^^^^^^^^
E84458FCFF 85C059 ->9090909090 85C059
^^^^^^^^^^   ^^^^^^^^^^

刚刚打开一个ZIP文件时,却意外发现不能解压缩啦,完蛋了,还是不行呀,怎么办?
只有重
新TRACE一遍,把它的注册码给敲出来,追进去一个CALL,等出来时它会判断是否EA
X为0,
如果为1则注册成功,追进去之后,会发现自己的ID存在EBX,而注册码存在ESI,当然
是自己
输的注册码了,真正的注册码放在EAX,下
D EAX ;查看注册码为50792331
【结论】
注册人: CoolFly (注意大小写)
注册码: 50792331
DATE: 1999年5月29日(19:10)
这个ZIP逼得我把注册码给算出来,看来要懒惰的我算注册码还是要逼我啊??

**********************************************************************
******
如果有高手将PowerDvd 1.20 (电脑报PC世界2中有) 破掉的话,请将详细破解过程
E-mail给我:
[email protected]
不甚感谢...


--
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.102.193.203]

[关闭][返回]