【文章标题】: 销售王家装预算软件V2005.10.005算法分析
【作 者】: dvchen[OCN][D4s][FCG]...
【软件名称】: 销售王家装预算软件
【大 小】: 4944K
【下载地址】: http://www5.skycn.com/soft/6941.html
【加壳方式】: ?
【保护方式】: ?
【编写语言】: Delphi
【工 具】: OD
【作者声明】: 朋友好奇,我只是感兴趣,没有其他目的。呵呵。超级简单,高手就不要看了!我只是用用破文生成器试试它的格式!
--------------------------------------------------------------------------------
【详细过程】
0062A274 |. E8 3325E2FF call 0044C7AC ; 机器码出现
0062A279 |. 8B45 E8 mov eax, [ebp-18]
0062A27C |. 50 push eax
0062A27D |. 8D55 E0 lea edx, [ebp-20]
0062A280 |. 8B83 08030000 mov eax, [ebx+308]
0062A286 |. E8 2125E2FF call 0044C7AC
0062A28B |. 8B45 E0 mov eax, [ebp-20] ; dvchen
0062A28E |. 8D55 E4 lea edx, [ebp-1C]
0062A291 |. E8 F2EFDDFF call 00409288
0062A296 |. 8B55 E4 mov edx, [ebp-1C]
0062A299 |. A1 C4666300 mov eax, [6366C4]
0062A29E |. 8B00 mov eax, [eax]
0062A2A0 |. 8B80 B8000000 mov eax, [eax+B8]
0062A2A6 |. 59 pop ecx
0062A2A7 |. E8 C8A1EFFF call 00524474 ; 算法跟进 得到注册码
0062A2AC |. 8B45 EC mov eax, [ebp-14] ; "FF10E10CFB100FE"
0062A2AF |. 50 push eax
0062A2B0 |. 8D55 D8 lea edx, [ebp-28]
0062A2B3 |. 8B83 0C030000 mov eax, [ebx+30C]
0062A2B9 |. E8 EE24E2FF call 0044C7AC
0062A2BE |. 8B45 D8 mov eax, [ebp-28] ; 试练码出现
0062A2C1 |. 8D55 DC lea edx, [ebp-24] ; 13572468
0062A2C4 |. E8 BFEFDDFF call 00409288
0062A2C9 |. 8B55 DC mov edx, [ebp-24]
0062A2CC |. 58 pop eax
0062A2CD |. E8 FAA8DDFF call 00404BCC ; 比较
0062A2D2 |. 75 70 jnz short 0062A344
0062A2D4 |. 8D55 D0 lea edx, [ebp-30]
005244C3 |> /8B45 F8 /mov eax, [ebp-8] ; 5DB164A6
005244C6 |. |E8 BD05EEFF |call 00404A88
005244CB |. |8B55 F8 |mov edx, [ebp-8]
005244CE |. |0FB6543A FF |movzx edx, byte ptr [edx+edi-1] ; 5 D B
005244D3 |. |03C2 |add eax, edx ; 35+8=3D 44+8=4C
005244D5 |. |50 |push eax
005244D6 |. |8B45 FC |mov eax, [ebp-4]
005244D9 |. |E8 AA05EEFF |call 00404A88 ; dvchen
005244DE |. |8BD0 |mov edx, eax ; 6
005244E0 |. |58 |pop eax
005244E1 |. |03C2 |add eax, edx ; 6+3D=43 6+4C=52
005244E3 |. |05 BC000000 |add eax, 0BC ; 43+BC=FF 52+BC=10E
005244E8 |. |8D4D F4 |lea ecx, [ebp-C]
005244EB |. |BA 02000000 |mov edx, 2
005244F0 |. |E8 A751EEFF |call 0040969C
005244F5 |. |8B55 F4 |mov edx, [ebp-C] ; FF
005244F8 |. |8BC6 |mov eax, esi
005244FA |. |E8 9105EEFF |call 00404A90
005244FF |. |47 |inc edi
00524500 |. |4B |dec ebx
00524501 |.^\75 C0 \jnz short 005244C3
00524503 |> 33C0 xor eax, eax
依次连接得到注册码: "FF10E10CFB100FE"
--------------------------------------------------------------------------------
【总结】
一、机器码是硬盘出厂序列号
二、依次取出机器码的ASIIC值与机器码的位数相加
三、再加上用户名的位数,再加上BC得到的值,连接起来就是注册码!
--------------------------------------------------------------------------------
【版权声明】: 本文原创于OCN论坛, 转载请注明作者并保持文章的完整, 谢谢!
2006年02月08日 12:08:49
[招生]系统0day安全班,企业级设备固件漏洞挖掘,Linux平台漏洞挖掘!