|
本帖最后由 叶良辰和赵总 于 2016-9-2 10:37 编辑
本教程由热情洋溢的木木不哭赞助播出(“哎呀我摔倒了要漂亮姐姐亲亲才能起来 ”)
方法二:那么我们就可以用常量PJ了,因为他都是赋值在一个地址。所以我们可以先看看他判断注册版哪里看下
[Visual Basic] 纯文本查看 复制代码 004C58CF . 50 push eax
004C58D0 . 8B8D 60FEFFFF mov ecx,dword ptr ss:[ebp-0x1A0]
004C58D6 . 51 push ecx
004C58D7 . FF15 8C104000 call dword ptr ds:[<&MSVBVM60.__vbaHresu>; MSVBVM60.__vbaHresultCheckObj
004C58DD . 8985 FCFDFFFF mov dword ptr ss:[ebp-0x204],eax
004C58E3 . EB 0A jmp short sdczit.004C58EF
004C58E5 > C785 FCFDFFFF>mov dword ptr ss:[ebp-0x204],0x0
004C58EF > 8D8D 10FFFFFF lea ecx,dword ptr ss:[ebp-0xF0]
004C58F5 . FF15 4C134000 call dword ptr ds:[<&MSVBVM60.__vbaFreeO>; MSVBVM60.__vbaFreeObj
004C58FB . C745 FC 07000>mov dword ptr ss:[ebp-0x4],0x7
004C5902 . 8B55 0C mov edx,dword ptr ss:[ebp+0xC]
004C5905 . 0FBF02 movsx eax,word ptr ds:[edx]
004C5908 . 85C0 test eax,eax
004C590A . 0F84 21040000 je sdczit.004C5D31
004C5910 . 0FBF0D C01052>movsx ecx,word ptr ds:[0x5210C0]
004C5917 . 85C9 test ecx,ecx
004C5919 . 0F85 12040000 jnz sdczit.004C5D31
004C591F . C745 FC 08000>mov dword ptr ss:[ebp-0x4],0x8
004C5926 . BA DCC64100 mov edx,sdczit.0041C6DC ; 注册提醒
004C592B . 8D8D 14FFFFFF lea ecx,dword ptr ss:[ebp-0xEC]
004C5931 . FF15 6C124000 call dword ptr ds:[<&MSVBVM60.__vbaStrCo>; MSVBVM60.__vbaStrCopy
004C5937 . 66:C785 68FEF>mov word ptr ss:[ebp-0x198],0x2
004C5940 . 68 60C64100 push sdczit.0041C660 ; 你还没有注册,只能做第1套题!注册后可做全部试题,您现在要注册吗?
004C5945 . 68 DC354100 push sdczit.004135DC ; /\r\n
004C594A . FF15 78104000 call dword ptr ds:[<&MSVBVM60.__vbaStrCa>; \__vbaStrCat
004C5950 . 8BD0 mov edx,eax
004C5952 . 8D8D 1CFFFFFF lea ecx,dword ptr ss:[ebp-0xE4]
004C5958 . FF15 0C134000 call dword ptr ds:[<&MSVBVM60.__vbaStrMo>; MSVBVM60.__vbaStrMove
004C595E . 50 push eax
004C595F . 68 A8C64100 push sdczit.0041C6A8 ; /点“是”进行注册,点“否”免费试用第一套题目。
004C5964 . FF15 78104000 call dword ptr ds:[<&MSVBVM60.__vbaStrCa>; \__vbaStrCat
004C596A . 8BD0 mov edx,eax
004C596C . 8D8D 18FFFFFF lea ecx,dword ptr ss:[ebp-0xE8]
004C5972 . FF15 0C134000 call dword ptr ds:[<&MSVBVM60.__vbaStrMo>; MSVBVM60.__vbaStrMove
004C5978 . 8D95 14FFFFFF lea edx,dword ptr ss:[ebp-0xEC]
004C597E . 52 push edx
004C597F . 8D85 68FEFFFF lea eax,dword ptr ss:[ebp-0x198]
004C5985 . 50 push eax
004C5986 . 8D8D 18FFFFFF lea ecx,dword ptr ss:[ebp-0xE8]
004C598C . 51 push ecx
004C598D . E8 CE29F7FF call sdczit.00438360
004C5992 . 8D95 14FFFFFF lea edx,dword ptr ss:[ebp-0xEC]
004C5998 . 52 push edx
004C5999 . 8D85 18FFFFFF lea eax,dword ptr ss:[ebp-0xE8]
004C599F . 50 push eax
004C59A0 . 8D8D 1CFFFFFF lea ecx,dword ptr ss:[ebp-0xE4]
004C59A6 . 51 push ecx
004C59A7 . 6A 03 push 0x3
004C59A9 . FF15 80124000 call dword ptr ds:[<&MSVBVM60.__vbaFreeS>; MSVBVM60.__vbaFreeStrList
004C59AF . 83C4 10 add esp,0x10
004C59B2 . C745 FC 09000>mov dword ptr ss:[ebp-0x4],0x9
004C59B9 . 66:833D D4115>cmp word ptr ds:[0x5211D4],0x1
004C59C1 . 0F85 5B030000 jnz sdczit.004C5D22
004C59C7 . C745 FC 0A000>mov dword ptr ss:[ebp-0x4],0xA
004C59CE . 8B55 08 mov edx,dword ptr ss:[ebp+0x8]
004C59D1 . 8B02 mov eax,dword ptr ds:[edx]
004C59D3 . 8B4D 08 mov ecx,dword ptr ss:[ebp+0x8]
004C59D6 . 51 push ecx
004C59D7 . FF90 4C030000 call dword ptr ds:[eax+0x34C]
004C59DD . 50 push eax
004C59DE . 8D95 10FFFFFF lea edx,dword ptr ss:[ebp-0xF0]
004C59E4 . 52 push edx
那我们在这里下断004C85F2 . 66:833D C0105>cmp word ptr ds:[0x5210C0],0xFFFF 关键常量
(, 下载次数: 81)
断下后我们往下跟 我们发现他跳转了 很显然他跳过了已注册
我们看下关键跳转是那种跳转 是jnz跳转
Jnz其实就是 JNAE: jump not above and equal 低于,即不高于且不等于则转移
我们在看下关键跳上面的的cmp指令
[C] 纯文本查看 复制代码 004C85D1 . 51 push ecx
004C85D2 . FF50 04 call dword ptr ds:[eax+0x4]
004C85D5 . C745 FC 01000>mov dword ptr ss:[ebp-0x4],0x1
004C85DC . C745 FC 02000>mov dword ptr ss:[ebp-0x4],0x2
004C85E3 . 6A FF push -0x1 ; /OnErrEvent = Resume Next
004C85E5 . FF15 E0104000 call dword ptr ds:[<&MSVBVM60.__vbaOnErr>; \__vbaOnError
004C85EB . C745 FC 03000>mov dword ptr ss:[ebp-0x4],0x3
004C85F2 . 66:833D C0105>cmp word ptr ds:[0x5210C0],0xFFFF [color=#666]关键常量[/color]
004C85FA . 75 6A jnz short sdczit.004C8666
004C85FC . C745 FC 04000>mov dword ptr ss:[ebp-0x4],0x4
004C8603 . BA BC254100 mov edx,sdczit.004125BC ; 考试系统提示
004C8608 . 8D8D 68FFFFFF lea ecx,dword ptr ss:[ebp-0x98]
004C860E . FF15 6C124000 call dword ptr ds:[<&MSVBVM60.__vbaStrCo>; MSVBVM60.__vbaStrCopy
004C8614 . 66:C785 94FEF>mov word ptr ss:[ebp-0x16C],0x3
004C861D . BA 88C74100 mov edx,sdczit.0041C788 ; 已经是注册版本,无需再次注册!
004C8622 . 8D8D 6CFFFFFF lea ecx,dword ptr ss:[ebp-0x94]
004C8628 . FF15 6C124000 call dword ptr ds:[<&MSVBVM60.__vbaStrCo>; MSVBVM60.__vbaStrCopy
004C862E . 8D95 68FFFFFF lea edx,dword ptr ss:[ebp-0x98]
004C8634 . 52 push edx
004C8635 . 8D85 94FEFFFF lea eax,dword ptr ss:[ebp-0x16C]
004C863B . 50 push eax
004C863C . 8D8D 6CFFFFFF lea ecx,dword ptr ss:[ebp-0x94]
004C8642 . 51 push ecx
ffff是16进制 转化为10进制就是-1
这条指令也就是说比较关键常量与-1的大小
而jnz这条指令的意思是低于,即不高于且不等于则转移
那么意思就很明显了 这个常量必须等于或者大于或者等于-1才不会跳转
我们就搜索0x5210C0这条指令。
或者这样搜索
(, 下载次数: 91)
我们搜到了很多 我们只进入mov 因为mov是赋值 我们必须在赋值上做工作。
(, 下载次数: 81)
我们把所有带有变量的mov改成FFFF 也就是-1 我们找到了这两个指令
[Visual Basic] 纯文本查看 复制代码 cmp word ptr ds:[0x5210C0],0xFFFF
我们改了试试
(, 下载次数: 90)
(, 下载次数: 88)
最后 我来浅谈下补码!注意 是浅谈!浅谈
我们来搜索www 找到这一段代码
(, 下载次数: 100)
[Visual Basic] 纯文本查看 复制代码 00447903 . 66:C705 C0105>mov word ptr ds:[0x5210C0],0x0
0044B3AD . 66:C705 C0105>mov word ptr ds:[0x5210C0],0x0
我整来了一个用过的正版码 注意 是用过的
然后下断 断下
(, 下载次数: 98)
然后往下跟
(, 下载次数: 86)
跟到他出现网址 然后我们访问下网站
(, 下载次数: 89)
注意 这里是error 53
然后我们继续往下跟
(, 下载次数: 95)
经过这个call的时候 出现了error 53
也就是说 他是判断error是多少来返回的 比如error 53就是已经用过了。
所以如果有正版号可以看他到这个call这里返回的数据是多少
只是小菜的想法 大神勿喷 我也没有正版号 因为正版号也不便宜
写了足足1个小时 求加个精华吧 @Shark恒 不加精华我就自杀
|
评分
-
参与人数 38 | 威望 +1 |
HB +93 |
THX +19 |
收起
理由
|
花盗睡鼠
| |
+ 2 |
+ 1 |
[吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少! |
longge188
| |
+ 1 |
|
[吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守! |
虚心学习
| |
+ 1 |
|
[吾爱汇编论坛52HB.COM]-吃水不忘打井人,给个评分懂感恩! |
24567
| |
|
+ 1 |
|
Jawon
| |
+ 2 |
|
|
一路走来不容易
| |
+ 2 |
|
|
消逝的过去
| |
|
+ 1 |
|
纯英文
| |
|
+ 1 |
|
禽大师
| |
|
+ 1 |
|
武清一点点
| |
+ 1 |
|
|
叶落花开
| |
+ 2 |
|
|
jaunic
| |
+ 2 |
|
|
h112233h456
| |
+ 1 |
|
|
mengzhisuoliu1
| |
+ 1 |
|
|
lies
| |
+ 1 |
|
|
海天一色001
| |
+ 1 |
+ 1 |
[快捷评语] - 2017,让我们17学破解! |
Satan
| |
+ 1 |
|
评分=感恩!简单却充满爱!感谢您的作品! |
18406732240
| |
+ 1 |
|
分享精神,是最值得尊敬的! |
我是苍狼
| |
+ 1 |
+ 1 |
分享精神,是最值得尊敬的! |
病人吗233
| |
+ 1 |
|
分享精神,是最值得尊敬的! |
zlyqwe456
| |
+ 1 |
|
吃水不忘打井人,给个评分懂感恩! |
6丶7
| |
+ 1 |
|
分享精神,是最值得尊敬的! |
cydzdiy
| |
+ 5 |
+ 1 |
吃水不忘打井人,给个评分懂感恩! |
米其林轮胎
| |
+ 2 |
+ 1 |
软件下载地址呢 我可是来看软件的{抠鼻} |
老山
| |
+ 1 |
+ 1 |
分享精神,是最值得尊敬的! |
lingjin3
| |
|
+ 1 |
吃水不忘打井人,给个评分懂感恩! |
小帅大大
| |
+ 1 |
|
悬赏杀手主题,额外增加10HB,感谢热心解答! |
study01
| |
+ 1 |
+ 1 |
分享精神,是最值得尊敬的! |
wswwj
| |
+ 2 |
+ 1 |
吃水不忘打井人,给个评分懂感恩! |
xpjqingche
| |
+ 1 |
|
分享精神,是最值得尊敬的! |
蓝色贝雷帽
| |
+ 3 |
+ 1 |
分享精神,是最值得尊敬的! |
xiaocao
| |
+ 1 |
|
吃水不忘打井人,给个评分懂感恩! |
858185616
| |
+ 1 |
|
分享精神,是最值得尊敬的! |
81NewArk
| |
+ 6 |
+ 1 |
吃水不忘打井人,给个评分懂感恩! |
Bu弃
| |
+ 5 |
+ 1 |
吃水不忘打井人,给个评分懂感恩! |
LYQingYe
| |
+ 6 |
+ 1 |
分享精神,是最值得尊敬的! |
xuenii
| |
+ 5 |
+ 1 |
很高端~~ |
Shark恒
| + 1 |
+ 30 |
+ 1 |
虽然没有完美解决问题,但确实很详细,相信可以帮到很多人! |
查看全部评分
|