中华通迅录破解过程
破解过程 :首先用PEID查一下,发现有壳,是ASPPACK 2.12版本的。
用WASPACK 2.12脱一下壳,好了,壳没有了。Borland Delphi 4.0 - 5.0
这样脱壳是比较简单的,因为知道是什么壳。
如果不知道的话,我们还可以用OD来脱壳。
用OD打开程序,发现在ESP和EIP都是红色的,这让我们接着想到
了ESP定律,不妨用一下看看。
在命令行里:dd 0012ffc4,回车,然后在数字下点右键---
断点----硬件访问----字。
然后按F9执行到断点,看是不是找到OEP了。然后我们在这儿脱
壳,用OD脱壳。然后另存。试一下打开,报错误。没有关系,我
们修复一下。用ImportREC修复,完成后,再用PEID查下,看没
有壳了吧!Borland Delphi 4.0 - 5.0
下面我们注册一下看看。
注册信息是:
用户机器码:ACE2-C1F0
用户注册码:zxqhang
用我的常用名吧,呵呵。。。。
提示出错了,
'zxqhang' is not a valid integer value.
所以从这儿看出,我输入的zxqhang 是无效的。
重新输入一下,
数字:123456789
出现:“注册码不正确,无法注册。”
打开W32DASM8.93+
在串中找到上面的错误信息
双击,从中找到代码行。做个标记。
然后再多次双击,发现只有这一处用到。
向上滚动代码行,找到关键JUMP
代码如下:
:00567A9A B8C4CAA7B0 mov eax, B0A7CAC4
:00567A9F DCA3A1000053 fsub qword ptr
:00567AA5 8BD8 mov ebx, eax
:00567AA7 8BC3 mov eax, ebx
:00567AA9 E812CCFFFF call 005646C0
:00567AAE 84C0 test al, al
:00567AB0 7409 je 00567ABB
:00567AB2 8BC3 mov eax, ebx
:00567AB4 E84FC9FFFF call 00564408
:00567AB9 5B pop ebx
:00567ABA C3 ret
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00567AB0(C)
|
:00567ABB 6A20 push 00000020
* Possible StringData Ref from Data Obj ->"信息提示"
|
:00567ABD B9D87A5600 mov ecx, 00567AD8
* Possible StringData Ref from Data Obj ->"注册码不正确,无法注册"
|
:00567AC2 BAE47A5600 mov edx, 00567AE4
:00567AC7 A1CC715700 mov eax, dword ptr
:00567ACC 8B00 mov eax, dword ptr
:00567ACE E8B9F1EEFF call 00456C8C
:00567AD3 5B pop ebx
:00567AD4 C3 ret
我们来看je 00567abb这个关键跳转。其偏移地址为00167ab0
再用UEDIT32打开文件,找到这个地址
00167ab0: 74 09 8b .....
我们来爆破一下,74改为75另存。
然后打开软件,随便输入一组数字注册看看,“感谢您使用,注
册成功。” 试试,看看能不能破解 F7跟进:00567AA9 .E8 12CCFFFF CALL dumped_.005646C0,进去后第一行修改为:mov eax,1,第二行修改为:retn。保存修改,可任意注册了。 标志位爆破啊 学习了! 谢谢了支持啊 很明显的是标志位破解的
呵呵
AL
不需要无条件跳 学习学习,多谢了。
页:
[1]