首页
社区
课程
招聘
[旧帖] [求助]大家帮忙看一看是什么原因啊 0.00雪花
发表于: 2008-11-12 08:31 2767

[旧帖] [求助]大家帮忙看一看是什么原因啊 0.00雪花

2008-11-12 08:31
2767
我是一个菜鸟,最近试着破解一个软件就出现问题。???却不知为何第一次可以注册,最后打开出现系统被破坏,停止使用的提示,不管是重启还是运行原程序都不行了。下面是过程:

破解对象:五笔泡泡1.0

2.运行此软件,试着输入任意注册码去注册,出现错误
提示信息"注册码错误,请注意字母大小写,建议直接拷贝输入",将错误提示信息记下来;

3.用DiE 0.63 汉化版侦测wbPopo.exe,发现没有加壳;

4.OllyICE中文版反汇编;

5.使用插件Find ASCII找到错误提示信息或可能是注册正确的提示信息
"注册成功,谢谢您对我们的支持。"怀疑可能是正确的提示信息
在该处双击鼠标左键,回到CPU主窗口,发现只有一处调用,在主窗口发现下面的(######所标的地方)

6.分析
004BD27C  |.  58            pop     eax
004BD27D  |.  E8 F27BF4FF   call    00404E74        (关键call)
004BD282      75 6A         jnz     short 004BD2EE     ******跳向错误处(关键跳转)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
004BD284  |.  8D55 E4       lea     edx, dword ptr [ebp-1C]
004BD287  |.  8B83 2C030000 mov     eax, dword ptr [ebx+32C]
004BD28D  |.  E8 C6D6F8FF   call    0044A958
004BD292  |.  8B45 E4       mov     eax, dword ptr [ebp-1C]
004BD295  |.  E8 E6F4FFFF   call    004BC780
004BD29A  |.  B2 01         mov     dl, 1
004BD29C  |.  8B83 2C030000 mov     eax, dword ptr [ebx+32C]
004BD2A2  |.  E8 155DF8FF   call    00442FBC
004BD2A7  |.  8B83 30030000 mov     eax, dword ptr [ebx+330]
004BD2AD  |.  8B40 68       mov     eax, dword ptr [eax+68]
004BD2B0  |.  BA 0000FF00   mov     edx, 0FF0000
004BD2B5  |.  E8 2AA3F6FF   call    004275E4
004BD2BA  |.  BA D8D34B00   mov     edx, 004BD3D8                    ;  已注册******注册成功的提示
004BD2BF  |.  8B83 30030000 mov     eax, dword ptr [ebx+330]
004BD2C5  |.  E8 BED6F8FF   call    0044A988
004BD2CA  |.  6A 40         push    40
004BD2CC  |.  B9 88D34B00   mov     ecx, 004BD388                    ;  五笔泡泡
004BD2D1  |.  BA E0D34B00   mov     edx, 004BD3E0                    ;  注册成功,谢谢您对我们的支持。########
004BD2D6  |.  A1 505D4C00   mov     eax, dword ptr [4C5D50]
004BD2DB  |.  8B00          mov     eax, dword ptr [eax]
004BD2DD  |.  E8 56D4FAFF   call    0046A738
004BD2E2  |.  C783 3C030000>mov     dword ptr [ebx+33C], 1
004BD2EC  |.  EB 4F         jmp     short 004BD33D
004BD2EE  |>  6A 40         push    40
^^^^^^^^^
004BD2F0  |.  B9 88D34B00   mov     ecx, 004BD388                    ;  五笔泡泡
004BD2F5  |.  BA 00D44B00   mov     edx, 004BD400                    ;  注册码错误,请注意字母大小写,建议直接拷贝输入。
                                    \n\n提示:如果您确认已申请了注册码,且多次尝试
                                    均不能成功注册请及时与我们联系。******注册失败的提示
004BD2FA  |.  A1 505D4C00   mov     eax, dword ptr [4C5D50]
004BD2FF  |.  8B00          mov     eax, dword ptr [eax]

######所标的地方向上寻找第一个跳转,找到
004BD282      75 6A         jnz     short 004BD2EE
程序之所以没有来到注册成功的地方主要就是因为这个跳转,
跳到了错误的地方(^^^^^^所标的地方)
4BD282处的跳转称为关键跳转,它上面的call为关键call

7.淡蓝色光条停在关键跳转,即
004BD282      75 6A         jnz     short 004BD2EE

鼠标左键双击,弹出“汇编于此处:004BD282”对话框
将jnz     short 004BD2EE 改成jz     short 004BD2EE,点“汇编”,这时的关键跳转
变为004BD282     /74 6A         je      short 004BD2EE,并且红色高亮显示。

8.接下来复制到可执行文件进行所有修改,最后保存。
注意:为了担心改的不对,需保留原来的文件,故另存为wbPopo1.exe

[修改原理]
输入的注册码不对时跳到出错的地方,正确时来到对的地方
修改后 输入的注册码不对时来到对的地方,正确时跳到出错的地方

9.运行wbPopo1.exe,任意输入注册码注册能成功,破解完成;但重打开软件后?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 427
活跃值: (65)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
2
你爆的不是关键点
有重启验证
软件认为只有正确的注册码才能进入注册表,而现在发现错误的注册码进来了,所以出现“系统被破坏,停止使用”的提示,你也可以从这个提示入手找关键处,也可以去注册表删除错误的注册码再重新来过。。
软件注册码不一定在注册表里,你跟踪监视一下,。
2008-11-12 10:05
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
ASCII里看看有没INI文件的提示,或者看看还是注册表地址提示.找到了注册码存放的地方,要过重器验证就容易了..
2008-11-12 10:44
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
还有个思路你看看.直接把出错的提示跳过.也就是跳过了程序的启动验证.
2008-11-12 11:52
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
出错的可能是在DLL文件什么的地方.你一路跟.跟回系统领空.系统领空的那个CALL就是关键CALL.跳过这个CALL就过验证了
2008-11-12 11:53
0
游客
登录 | 注册 方可回帖
返回
//