- UID
- 31985
注册时间2007-5-6
阅读权限40
最后登录1970-1-1
独步武林
该用户从未签到
|
【文章标题】: 简单算法6
【文章作者】: 千里之外
【作者邮箱】: [email protected]
【作者主页】: www.wm5.net.cn
【作者QQ号】: 506398911
【软件名称】: IE终极加速内存
【加壳方式】: UPX
【保护方式】: 注册码
【编写语言】: Borland Delphi 6.0 - 7.0
【使用工具】: OD PEID
【作者声明】: 谢谢 fonge版主的热心指导 没有你 我也许离写出算法还很远 再次感谢 祝好人一生平安
--------------------------------------------------------------------------------
【详细过程】
大家好 我是千里之外 这个软件其实没什么算法 我只是试这分析了下 呵呵 不足之处请大家指教
0049946C . 55 PUSH EBP
0049946D . 8BEC MOV EBP,ESP
0049946F . B9 0A000000 MOV ECX,0A
00499474 > 6A 00 PUSH 0
00499476 . 6A 00 PUSH 0
00499478 . 49 DEC ECX
00499479 .^ 75 F9 JNZ SHORT 1.00499474
0049947B . 51 PUSH ECX
0049947C . 53 PUSH EBX
0049947D . 56 PUSH ESI
0049947E . 57 PUSH EDI
0049947F . 8945 FC MOV DWORD PTR SS:[EBP-4],EAX
00499482 . 33C0 XOR EAX,EAX
00499484 . 55 PUSH EBP
00499485 . 68 75984900 PUSH 1.00499875
0049948A . 64:FF30 PUSH DWORD PTR FS:[EAX]
0049948D . 64:8920 MOV DWORD PTR FS:[EAX],ESP
00499490 . 8D55 E4 LEA EDX,DWORD PTR SS:[EBP-1C]
00499493 . 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
00499496 . 8B80 00030000 MOV EAX,DWORD PTR DS:[EAX+300]
0049949C . E8 A385FAFF CALL 1.00441A44
004994A1 . 8B45 E4 MOV EAX,DWORD PTR SS:[EBP-1C]
004994A4 . E8 87B5F6FF CALL 1.00404A30
004994A9 . 05 57040000 ADD EAX,457 EAX=用户名位数+457
004994AE . 8D55 E8 LEA EDX,DWORD PTR SS:[EBP-18]
004994B1 . E8 06FBF6FF CALL 1.00408FBC 将EAX中的数转换为10进制 记做@ 后面要用到的
004994B6 . 8D55 E0 LEA EDX,DWORD PTR SS:[EBP-20]
004994B9 . 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
004994BC . 8B80 00030000 MOV EAX,DWORD PTR DS:[EAX+300]
004994C2 . E8 7D85FAFF CALL 1.00441A44
004994C7 . 8B45 E0 MOV EAX,DWORD PTR SS:[EBP-20]
004994CA . BA 8C984900 MOV EDX,1.0049988C ; ASCII "DiSTiNCT"
004994CF . E8 A0B6F6FF CALL 1.00404B74
004994D4 . 0F84 EA020000 JE 1.004997C4
004994DA . 8D55 DC LEA EDX,DWORD PTR SS:[EBP-24]
004994DD . 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
004994E0 . 8B80 00030000 MOV EAX,DWORD PTR DS:[EAX+300]
004994E6 . E8 5985FAFF CALL 1.00441A44
004994EB . 8B45 DC MOV EAX,DWORD PTR SS:[EBP-24]
004994EE . BA A0984900 MOV EDX,1.004998A0 ; team insane
004994F3 . E8 7CB6F6FF CALL 1.00404B74
004994F8 . 0F84 C6020000 JE 1.004997C4
004994FE . 8D55 D8 LEA EDX,DWORD PTR SS:[EBP-28]
00499501 . 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
00499504 . 8B80 00030000 MOV EAX,DWORD PTR DS:[EAX+300]
0049950A . E8 3585FAFF CALL 1.00441A44
0049950F . 8B45 D8 MOV EAX,DWORD PTR SS:[EBP-28]
00499512 . BA B4984900 MOV EDX,1.004998B4 ; tnt!2000
00499517 . E8 58B6F6FF CALL 1.00404B74
0049951C . 0F84 A2020000 JE 1.004997C4
00499522 . 8D55 D4 LEA EDX,DWORD PTR SS:[EBP-2C]
00499525 . 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
00499528 . 8B80 00030000 MOV EAX,DWORD PTR DS:[EAX+300]
0049952E . E8 1185FAFF CALL 1.00441A44
00499533 . 8B45 D4 MOV EAX,DWORD PTR SS:[EBP-2C]
00499536 . BA C8984900 MOV EDX,1.004998C8 ; -=demian/tnt!=-
0049953B . E8 34B6F6FF CALL 1.00404B74
00499540 . 0F84 7E020000 JE 1.004997C4
00499546 . 8D55 D0 LEA EDX,DWORD PTR SS:[EBP-30]
00499549 . 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0049954C . 8B80 00030000 MOV EAX,DWORD PTR DS:[EAX+300]
00499552 . E8 ED84FAFF CALL 1.00441A44
00499557 . 8B45 D0 MOV EAX,DWORD PTR SS:[EBP-30]
0049955A . BA E0984900 MOV EDX,1.004998E0 ; -=demian/tnt!=-
0049955F . E8 10B6F6FF CALL 1.00404B74
00499564 . 0F84 5A020000 JE 1.004997C4
0049956A . 8D55 CC LEA EDX,DWORD PTR SS:[EBP-34]
0049956D . 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
00499570 . 8B80 00030000 MOV EAX,DWORD PTR DS:[EAX+300]
00499576 . E8 C984FAFF CALL 1.00441A44
0049957B . 8B45 CC MOV EAX,DWORD PTR SS:[EBP-34]
0049957E . BA FC984900 MOV EDX,1.004998FC ; distinct
00499583 . E8 ECB5F6FF CALL 1.00404B74
00499588 . 0F84 36020000 JE 1.004997C4
0049958E . 8D55 C8 LEA EDX,DWORD PTR SS:[EBP-38]
00499591 . 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
00499594 . 8B80 00030000 MOV EAX,DWORD PTR DS:[EAX+300]
0049959A . E8 A584FAFF CALL 1.00441A44
0049959F . 8B45 C8 MOV EAX,DWORD PTR SS:[EBP-38]
004995A2 . BA 10994900 MOV EDX,1.00499910 ; tmg
004995A7 . E8 C8B5F6FF CALL 1.00404B74 上面的是黑名单 大写的哦
004995AC . 0F84 12020000 JE 1.004997C4
004995B2 . 68 1C994900 PUSH 1.0049991C ; 固定字符 C
004995B7 . 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
004995BA . FFB0 2C030000 PUSH DWORD PTR DS:[EAX+32C] ; 固定字符 MW
004995C0 . 68 28994900 PUSH 1.00499928 ; 固定字符 20
004995C5 . FF75 E8 PUSH DWORD PTR SS:[EBP-18] ; 这里是“@”
004995C8 . 68 34994900 PUSH 1.00499934 ; 固定字符 -
004995CD . 8D55 C0 LEA EDX,DWORD PTR SS:[EBP-40]
004995D0 . 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
004995D3 . 8B80 00030000 MOV EAX,DWORD PTR DS:[EAX+300]
004995D9 . E8 6684FAFF CALL 1.00441A44
004995DE . 8B45 C0 MOV EAX,DWORD PTR SS:[EBP-40]
004995E1 . 8D55 C4 LEA EDX,DWORD PTR SS:[EBP-3C]
004995E4 . E8 E3FDFFFF CALL 1.004993CC ; 取用户名的ASCII16进制 hack(6861636B)
004995E9 . FF75 C4 PUSH DWORD PTR SS:[EBP-3C]
004995EC . 8D45 EC LEA EAX,DWORD PTR SS:[EBP-14]
004995EF . BA 06000000 MOV EDX,6 ; EDX=6
004995F4 . E8 F7B4F6FF CALL 1.00404AF0
004995F9 . 8D45 E8 LEA EAX,DWORD PTR SS:[EBP-18]
004995FC . BA 40994900 MOV EDX,1.00499940 ; \system32\spool\drivers\w32x86\2\riched20.dll setactiveeditcontrolfont, arial, 30
00499601 . E8 0AB2F6FF CALL 1.00404810
00499606 . 8D55 BC LEA EDX,DWORD PTR SS:[EBP-44]
00499609 . 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0049960C . 8B80 04030000 MOV EAX,DWORD PTR DS:[EAX+304]
00499612 . E8 2D84FAFF CALL 1.00441A44 ; 将两部分(CMW201115-和6861636B) 连接
00499617 . 8B55 BC MOV EDX,DWORD PTR SS:[EBP-44]
0049961A . 8B45 EC MOV EAX,DWORD PTR SS:[EBP-14]
0049961D . E8 4AB7F6FF CALL 1.00404D6C
00499622 . 85C0 TEST EAX,EAX
00499624 . 0F84 9A010000 JE 1.004997C4
0049962A . 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0049962D . 8B80 04030000 MOV EAX,DWORD PTR DS:[EAX+304]
00499633 . 33D2 XOR EDX,EDX
00499635 . E8 3A84FAFF CALL 1.00441A74
0049963A . 8D45 EC LEA EAX,DWORD PTR SS:[EBP-14]
0049963D . E8 36B1F6FF CALL 1.00404778
00499642 . 6A 00 PUSH 0
00499644 . 68 94994900 PUSH 1.00499994 ; registration success!
00499649 . 68 AC994900 PUSH 1.004999AC ; thank you for your support.\nwe will work even harder and\nnotify you future releases.
0049964E . 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
00499651 . E8 B6EAFAFF CALL 1.0044810C
00499656 . 50 PUSH EAX ; |hOwner
00499657 . E8 C0E0F6FF CALL <JMP.&USER32.MessageBoxA> ; \MessageBoxA
0049965C . 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0049965F . C680 31030000>MOV BYTE PTR DS:[EAX+331],0
00499666 . B2 01 MOV DL,1
00499668 . A1 48DD4600 MOV EAX,DWORD PTR DS:[46DD48]
0049966D . E8 D647FDFF CALL 1.0046DE48
--------------------------------------------------------------------------------
【经验总结】
1.软件有黑名单 要是用户名和黑名单中的一样就注册失败了 呵呵
2.将用户名位数+457 然后转化为10进制数 记做 @ 取用户名的ASCII16进制 记做 $
3.注册码是固定字符 "CMW20"+"@"+"-"+"$"
比如 用户名 hack 注册码 CMW201115-6861636B
黑名单如下
DiSTiNCT
Team iNSaNE
TNT!2000
-=Demian/TNT!=-(这个出现了两遍好像作者和它有仇似的 呵呵)
DiSTiNCT
TMG
--------------------------------------------------------------------------------
【版权声明】: 谢谢 fonge版主的热心指导 没有你 我也许离写出算法还很远 再次感谢 祝好人一生平安
2007年06月07日 13:49:32
易语言注册机(这个要非常谢谢秋风下的落叶)虽然算法如此简单但写这个注册机时却遇到了不少麻烦 多亏了秋风姐姐的帮助 送朵鲜花给姐姐 (其实我比你大 呵呵)/:09
.版本 2
.局部变量 long, 整数型
.局部变量 a, 整数型
.局部变量 b, 整数型
.局部变量 变量, 整数型
.局部变量 c, 文本型
long = 取文本长度 (编辑框1.内容)
a = long + 1111
.计次循环首 (long, 变量)
c = c + 取十六进制文本 (取代码 (编辑框1.内容, 变量))
.计次循环尾 ()
编辑框2.内容 = “CMW20” + 到文本 (a) + “-” + c
[ 本帖最后由 千里之外 于 2007-6-7 15:52 编辑 ] |
|