老文章档案 · 2003 年

破解PassMe(CoDe_InSiDe) (2千字)

赢政天下 [WINZHENG.COM] · 网络学院 · 2003-08-27 · 作者:VitaminC 人气: · 出处:赢政天下整理收藏)

CrackMe下载

破解PassMe(CoDe_InSiDe):

又有插曲了:我正想用W32DASM来反汇编这段程序,谁知,根本什么都没有,没有一点代码!其它版本的W32DASM也不行!

我用FI一查,它不是PE文件,而是一个什么PE WIN GUI,W32DASM拿它没法!

好在我工具齐全,我用Borg Disassembler v2.21!那就有了这篇东东了...呵呵...

...

1000:00401047 6a10 push 10h

1000:00401049 6800134000 push 401300h

1000:0040104e 68e8030000 push 3e8h

1000:00401053 ff7508 push dword ptr [ebp+08h]

1000:00401056 ff15701d4000 call dword ptr [GetDlgItemTextA] /*这里!*/

1000:0040105c 3c08 cmp al, 08h /*NUM.要>=8个字符*/

1000:0040105e 7590 jnz 400ff0h

1000:00401060 bfc2114000 mov edi, 4011c2h

1000:00401065 33c9 xor ecx, ecx

1000:00401067 33d2 xor edx, edx

1000:00401069 33f6 xor esi, esi

; XREFS First: 1000:0040107c Number : 1

1000:0040106b 8a0f mov cl, [edi]

1000:0040106d 8a5701 mov dl, [edi+01h]

1000:00401070 80fa00 cmp dl, 00h

1000:00401073 7409 jz 40107eh

1000:00401075 01d1 add ecx, edx

1000:00401077 01ce add esi, ecx

1000:00401079 83c702 add edi, 02h

1000:0040107c ebed jmp 40106bh

; XREFS First: 1000:00401073 Number : 1

1000:0040107e 01ce add esi, ecx

1000:00401080 0faff0 imul esi, eax

1000:00401083 f7fe idiv esi

1000:00401085 01f6 add esi, esi

1000:00401087 01d6 add esi, edx

1000:00401089 8bd6 mov edx, esi

1000:0040108b c1c210 rol edx, 10h

1000:0040108e 01d6 add esi, edx

1000:00401090 33d2 xor edx, edx

1000:00401092 bf00134000 mov edi, 401300h

1000:00401097 33c0 xor eax, eax

1000:00401099 8b07 mov eax, [edi]

1000:0040109b 8b4f04 mov ecx, [edi+04h]

1000:0040109e 01c8 add eax, ecx

1000:004010a0 3bc6 cmp eax, esi /*这个东东!*/

1000:004010a2 7402 jz 4010a6h

...

这个程序很小,这里面我们要的东东都有了,连同NUM.的算法!

一看就知可以在SICE里用BPX GETDLGITEMTEXTA设断,就行了,那里取得了你输入的NUM.

好了,一看关键的东西全出来了,要CRACK它一点也不难.

分析代码,可以知道正确的NUM.是如何来的,但我要告诉你,在这是不行的...在SICE里面却一看就知道了,为什么?因为要知道004011C2H里的内容,是一个'Wellcome...'的句子,可以在SICE里看到,这里不行.

不理它了,反正也可以不知道!只要你能在:004010A0那个CMP里找到正确的NUM.就行了,是ESI那个,EAX那个是用输入的NUM.计算来的.那么关键就是要知道输入的NUM.要经过怎样的计算:

还是用例子来说吧!要不我不知如何表达...(我不是中文系的吗!)

我输入的NUM.:1234abcd[和以前的一样:-)]

NUM.分成两个:4321和dcba(注意顺序!)

再相加:

4 3 2 1

HEX 34 33 32 31

d c b a

HEX 64 63 62 61 (+

------------------------------

98 96 94 92 H

然后98969492H和ESI里的455B455BH比较,那么可知,找出两组数相加是455B455BH的就OK了,那我们可以大胆设第一组数是21212121H(!!!!)[不要太大,要不相减后,那个数太小就没有字符了:-(,设成相同的数是方便自己计算吗!^-^]好用455B455BH-21212121H=243A243AH($:$:)那么对应正确的NUM: !!!!:$:$

输入程序...OK!

还是把那个计算NUM.的算法说一下吧:

它是将那句话的所有字符相加(16进制)+46H的和*8再+01A2A8H+8H+45580003H=455B455BH

45580003H是用前面得到的数字ROL 10H得来的.

好了,这个就完成了,不难吧?

NUM: !!!!:$:$

OK!

Vitamin C[抗坏血酸].2002.2.5.HY.GD.CHI. (出处:赢政天下整理收藏)

相关文章:

·5StarZip 2001 破解--初学者破解入门

相关软件:

→ 特别推荐

→ 热点TOP10

关于我们 |

帮助(?)

| 广告服务 |

版权声明 |

商业合作 |

发展历程 |

加盟我们 |

联系我们

Copyright © 1999-2003

winzheng.com All Rights Reserved.

繁体版:由华琦数码技术提供

Powered

by:MeSky.Net

2003-2004 年,宽带刚刚普及,下载站的文章区是许多人学电脑的第一课堂。
🕰 → 🤖 从那时到现在

当年一篇教程能让一台电脑焕然一新;今天的效率工具换成了 AI。 想知道当下最可靠的 AI 模型怎么选?看 赢政指数——我们用了 28 年的选软件严谨,现在用来评测大模型。

档案性质声明:本页为赢政天下(1998-2011)老文章的历史档案复原, 内容反映当年发表时的原貌——包括当年的技术表述、软件版本与观点,部分方法在今天已不适用或不合规,仅作互联网历史记录与研究用途, 不提供任何形式的下载。原始数据经由公共网络存档(Internet Archive)复原。发现问题请联系我们
← 返回老文章档案 · 软件史档案馆 · 赢政天下站史