能力值:
( LV2,RANK:10 )
|
-
-
2 楼
我不知道,这样的帖子在这里是否违规,如果不行,版主处理掉就行了。
|
能力值:
(RANK:990 )
|
-
-
3 楼
你可以把你在调试中遇到的问题提出来,看看大家能否帮助你。但是不能请求别人帮你破解,否则就违规了。
|
能力值:
( LV6,RANK:90 )
|
-
-
4 楼
在Hrms.dll中找到的
00C37482 8B80 D8020000 MOV EAX, DWORD PTR [EAX+2D8]
00C37488 E8 2B63C7FF CALL 008AD7B8
00C3748D 8B45 EC MOV EAX, DWORD PTR [EBP-14]
// 检查序列号的长度
00C37490 E8 7BCEC3FF CALL 00874310
00C37495 83F8 04 CMP EAX, 4
// 接下来把4段注册码连接起来
......
// 下面开始计算了
00C37546 8B55 E0 MOV EDX, DWORD PTR [EBP-20]
00C37549 A1 7025C600 MOV EAX, DWORD PTR [C62570]
00C3754E 8B00 MOV EAX, DWORD PTR [EAX]
// 这个函数里面将注册码转换成HEX
00C37550 E8 C70FFFFF CALL 00C2851C
......
00C375B4 8B55 D8 MOV EDX, DWORD PTR [EBP-28]
00C375B7 8D4D F2 LEA ECX, DWORD PTR [EBP-E]
00C375BA A1 7025C600 MOV EAX, DWORD PTR [C62570]
00C375BF 8B00 MOV EAX, DWORD PTR [EAX]
// 这个函数应该是关键了,因为后面就有个倒霉的跳转
00C375C1 E8 DA0BFFFF CALL 00C281A0
00C375C8 /75 2E JNZ SHORT 00C375F8
00C375CA |6A 10 PUSH 10
00C375CC |B9 C077C300 MOV ECX, 00C377C0 ;"错误"
00C375D1 |BA D477C300 MOV EDX, 00C377D4 ;"注册码错误..."
00C375D6 |A1 0C22C600 MOV EAX, DWORD PTR [C6220C]
00C375DB |8B00 MOV EAX, DWORD PTR [EAX]
00C375DD |E8 5275C9FF CALL 008CEB34
所以跟进去看看,有一些很熟悉的字符串,这个似乎暗示了使用的RSA算法,
在早期的windows优化大师里面也有类似的代码,
它实际的算法可能需要进一步分析,毕竟静态分析就得到了这点收获。
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
再试着看一下
|
能力值:
( LV9,RANK:330 )
|
-
-
6 楼
delphi的程序是用SendMessage传递WM_GETTEXT消息的,所以你的断点不起作用,可以在SendMessage处设条件断点。
还有,你为什么不用Dede呢?
在Dede反编译出的函数处下断不是更好吗?
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
不好意思,什么是DEDE,不了解。请指教
|
|
|