分类分类
关注+2004-10-15作者:蓝点
W32dasm分析破解美萍网管大师v5.2以及用Crackcode2000制作注册机
本文作者:wind[CCG]
我的网站:http://biggow.8u8.com(有空来看看)
China Cracking Group是中国自己的破解组织,有兴趣可以和SunBird大哥联系!
他的E-mail:sun.bird@371.net
开篇:美萍安全卫士v5.2可以防trw2000和softice,而且极为凶悍,有些程序检测到
这类跟踪调试软件只不过是显示一个nag然后终止程序运行,而美萍网管大师v5.2
(包括安全卫士的最新版本)发现此类程序,就关机,所以这次使用w32dasm超级
中文版来破解它!
1、scon.exe这个文件是用aspack 1.07加的壳,直接使用unaspack就可以搞定了!
2、启动W32dasm反汇编scon.exe,那么我们从何入手呢,看看说明;哦,有时间
限制,还有那个注册框上显示的未注册一句话作为入手!如果在W32dasm中,找
不到,那么我们可以通过注册表,因为它通过阅读注册表的信息,然后判断是否
注册,很高兴,我们找到了这么一句话“软件试用期还剩”,我们就从这里入手!
双击它,然后来到如下程序段:
* Possible StringData Ref from Code Obj ->"软件试用期还剩"
|
:004846DA 6808494800 push 00484908
:004846DF 8D55DC lea edx, dword ptr [ebp-24]
:004846E2 A1F48D4800 mov eax, dword ptr [00488DF4]
:004846E7 40 inc eax
:004846E8 2B0544DE4A00 sub eax, dword ptr [004ADE44]
:004846EE E8392EF8FF call 0040752C
:004846F3 FF75DC push [ebp-24]
:004846F6 6820494800 push 00484920
/*当然这里没有我们需要的信息,我们需要往上找*/
往上来到如下:
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00484476(C)
|
:004846A3 E8EC55FEFF call 00469C94 --->判断什么的?
:004846A8 85C0 test eax, eax
:004846AA 7577 jne 00484723 --->这个jnz有可疑!双击此处,让光标来到此处!
:004846AC A1F48D4800 mov eax, dword ptr [00488DF4]
:004846B1 83E80F sub eax, 0000000F
:004846B4 3B0544DE4A00 cmp eax, dword ptr [004ADE44]
:004846BA 7D67 jge 00484723
:004846BC 6A40 push 00000040
:004846BE 8D45E8 lea eax, dword ptr [ebp-18]
--让光标停留在4846AA处,然后用jump to看它跳到哪里去.....
* Possible StringData Ref from Code Obj ->",请赶快向作者注册(0371-8982414)"
|
:004846FB 682C494800 push 0048492C
:00484700 8D45E4 lea eax, dword ptr [ebp-1C]
:00484703 BA04000000 mov edx, 00000004
:00484708 E88FF5F7FF call 00403C9C
:0048470D 8B45E4 mov eax, dword ptr [ebp-1C]
:00484710 E88BF6F7FF call 00403DA0
:00484715 50 push eax
:00484716 8BC3 mov eax, ebx
:00484718 E82719FAFF call 00426044
:0048471D 50 push eax
* Reference To: user32.MessageBoxA, Ord:0000h
|
:0048471E E8DD1BF8FF Call 00406300 --->call出那个讨厌对话框的地方!
* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:004846AA(C), :004846BA(C)
|
:00484723 B201 mov dl, 01 --->4846AA的跳跃就是来到这里的
到了这里,也就是跳过了那个窗口!
:00484725 8B8314020000 mov eax, dword ptr [ebx+00000214]
:0048472B E85408FDFF call 00454F84
/*那么4846A3的那个call不是判断时间就是判断注册码的,我们进那个call看看*/
4846A3那个call的内容如下:
* Referenced by a CALL at Addresses:
|:0048305F , :004846A3
|
:00469C94 53 push ebx
:00469C95 A13C8F4800 mov eax, dword ptr [00488F3C]
:00469C9A 8B00 mov eax, dword ptr [eax]
:00469C9C E827A5FFFF call 004641C8 --->计算注册码的call!写注册机就要仔细看这个call
它的算法不是很复杂!
:00469CA1 8BD8 mov ebx, eax
* Possible StringData Ref from Code Obj ->"RegNum" -->看见了吗,这个call就是判断注册码的!
算出注册码也不能了吧!
|:00469CA3 B8C49C4600 mov eax, 00469CC4
:00469CA8 E8B3A6FFFF call 00464360
:00469CAD 3BD8 cmp ebx, eax -->哈哈,我们可以用trw2000来下断点!下断点469C94
很快来到这里,看ebx的值,把它转成十进制就是注册码
:00469CAF 7507 jne 00469CB8 -->这里不跳就OK!改破解版,就改这里好了把7507改成9090
:00469CB1 B801000000 mov eax, 00000001
:00469CB6 5B pop ebx
:00469CB7 C3 ret
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00469CAF(C)
|
:00469CB8 33C0 xor eax, eax -->不能来到这里,让他把eax清0就完了!
:00469CBA 5B pop ebx
:00469CBB C3 ret
下面我们用Crackcode2000来制作注册机,因为今次的注册码不是直接用ASCII码形式放在内存中的,
而是用数值的形式放在寄存器处的,所以这时就要用模式1了。下面是Crackcode.ini的信息:
[Options]
CommandLine=scon.exe
Mode=1
First_Break_Address=469CAD
First_Break_Address_Code=3B
First_Break_Address_Code_Lenth=2
Save_Code_Address=EBX
我的序列号是183894,计算出的注册码是30806!crackcode2000注册机就写好了!很简单吧!
哈哈,这要感谢我们的Rufeng兄,写了一个如此棒的程序!而且体积很小!
破解版制作:
1、用UnAspack解压scon.exe文件
2、查找:E8 B3 A6 FF FF 3B D8 75 07
替换:-- -- -- -- -- -- -- 90 90
今天就到这里,休息.......休息!
wind
China Cracking Group
2000.8.30
相关文章
更多+相同厂商
热门推荐
点击查看更多
点击查看更多
点击查看更多
说两句网友评论