千里之外 发表于 2007-5-21 22:53:36

菜鸟算法2(高手飞过)

【文章标题】: 菜鸟算法2(高手飞过)
【文章作者】: 千里之外
【作者邮箱】: [email protected]
【作者QQ号】: 506398911
【软件名称】: 速用流水帐Ⅱ(企业版)
【下载地址】: http://www4.skycn.com/soft/28080.html#download
【加壳方式】: 无
【保护方式】: 机器码
【编写语言】: Borland Delphi 6.0 - 7.0
【使用工具】: OD PEID
【操作平台】: winxp2
【软件介绍】: 速用流水帐软件是一种新型的财务管理软件
【作者声明】: 谢谢 fonge版主的热心指导 没有你 我也许离写出算法还很远 再次感谢 祝好人一生平安
--------------------------------------------------------------------------------
【详细过程】

大家好 我是千里之外 在这里依然谢谢fonge版主的热心指导是你给我指明了学习的方向 呵呵 我会继续努力的

不知道为什么 你要离开 我看到你得帖子了 很伤心 真得 很伤心希望你能开心快乐每一天



0054F7E3|.48            DEC EAX
0054F7E4|.75 70         JNZ SHORT SuperMon.0054F856
0054F7E6|.8D55 F4       LEA EDX,DWORD PTR SS:
0054F7E9|.8B45 FC       MOV EAX,DWORD PTR SS:
0054F7EC|.E8 DFF2FEFF   CALL SuperMon.0053EAD0                   ;算法CALL
0054F7F1|.8B55 F4       MOV EDX,DWORD PTR SS:
0054F7F4|.A1 2C4F5500   MOV EAX,DWORD PTR DS:
0054F7F9|.8B00          MOV EAX,DWORD PTR DS:
0054F7FB|.8B80 18030000 MOV EAX,DWORD PTR DS:
0054F801|.E8 E64EEBFF   CALL SuperMon.004046EC
0054F806|.75 44         JNZ SHORT SuperMon.0054F84C
0054F808|.A1 A04E5500   MOV EAX,DWORD PTR DS:
0054F80D|.8B00          MOV EAX,DWORD PTR DS:
0054F80F|.50            PUSH EAX
0054F810|.B9 B0F85400   MOV ECX,SuperMon.0054F8B0                ;regver
0054F815|.BA 90F85400   MOV EDX,SuperMon.0054F890                ;sv
0054F81A|.B8 9CF85400   MOV EAX,SuperMon.0054F89C                ;supermoney
0054F81F|.E8 F4EFFEFF   CALL SuperMon.0053E818
0054F824|.A1 A04E5500   MOV EAX,DWORD PTR DS:
0054F829|.8B00          MOV EAX,DWORD PTR DS:
0054F82B|.50            PUSH EAX
0054F82C|.B9 2CF95400   MOV ECX,SuperMon.0054F92C                ;alive
0054F831|.BA 3CF95400   MOV EDX,SuperMon.0054F93C                ;systemstate
0054F836|.B8 9CF85400   MOV EAX,SuperMon.0054F89C                ;supermoney
0054F83B|.E8 D8EFFEFF   CALL SuperMon.0053E818
0054F840|.B8 50F95400   MOV EAX,SuperMon.0054F950                ;软件注册成功,谢谢您的支持!
0054F845|.E8 6E96EEFF   CALL SuperMon.00438EB8
0054F84A|.EB 0A         JMP SHORT SuperMon.0054F856
0054F84C|>B8 78F95400   MOV EAX,SuperMon.0054F978                ;注册码错误,请重新操作
0054F851|.E8 6296EEFF   CALL SuperMon.00438EB8

算法CALL处

0053EAD0/$55            PUSH EBP
0053EAD1|.8BEC          MOV EBP,ESP
0053EAD3|.33C9          XOR ECX,ECX
0053EAD5|.51            PUSH ECX
0053EAD6|.51            PUSH ECX
0053EAD7|.51            PUSH ECX
0053EAD8|.51            PUSH ECX
0053EAD9|.51            PUSH ECX
0053EADA|.51            PUSH ECX
0053EADB|.51            PUSH ECX
0053EADC|.53            PUSH EBX
0053EADD|.56            PUSH ESI
0053EADE|.57            PUSH EDI
0053EADF|.8955 F8       MOV DWORD PTR SS:,EDX
0053EAE2|.8945 FC       MOV DWORD PTR SS:,EAX
0053EAE5|.8B45 FC       MOV EAX,DWORD PTR SS:
0053EAE8|.E8 A35CECFF   CALL SuperMon.00404790
0053EAED|.33C0          XOR EAX,EAX
0053EAEF|.55            PUSH EBP
0053EAF0|.68 E8EB5300   PUSH SuperMon.0053EBE8
0053EAF5|.64:FF30       PUSH DWORD PTR FS:
0053EAF8|.64:8920       MOV DWORD PTR FS:,ESP
0053EAFB|.8B45 FC       MOV EAX,DWORD PTR SS:
0053EAFE|.E8 9D5AECFF   CALL SuperMon.004045A0
0053EB03|.8BF8          MOV EDI,EAX
0053EB05|.85FF          TEST EDI,EDI
0053EB07|.7E 2F         JLE SHORT SuperMon.0053EB38
0053EB09|.BE 01000000   MOV ESI,1
0053EB0E|>8B45 FC       /MOV EAX,DWORD PTR SS:
0053EB11|.8A5C30 FF   |MOV BL,BYTE PTR DS:
0053EB15|.80FB 31       |CMP BL,31
0053EB18|.72 1A         |JB SHORT SuperMon.0053EB34
0053EB1A|.80FB 39       |CMP BL,39
0053EB1D|.77 15         |JA SHORT SuperMon.0053EB34
0053EB1F|.8D45 F0       |LEA EAX,DWORD PTR SS:
0053EB22|.8BD3          |MOV EDX,EBX
0053EB24|.E8 9F59ECFF   |CALL SuperMon.004044C8
0053EB29|.8B55 F0       |MOV EDX,DWORD PTR SS:
0053EB2C|.8D45 F4       |LEA EAX,DWORD PTR SS:
0053EB2F|.E8 745AECFF   |CALL SuperMon.004045A8
0053EB34|>46            |INC ESI
0053EB35|.4F            |DEC EDI
0053EB36|.^ 75 D6         \JNZ SHORT SuperMon.0053EB0E
0053EB38|>837D F4 00    CMP DWORD PTR SS:,0               ;取机器码中1-9之间的数字 我的机器码是52
0053EB3C|.75 0D         JNZ SHORT SuperMon.0053EB4B
0053EB3E|.8D45 F4       LEA EAX,DWORD PTR SS:
0053EB41|.BA 00EC5300   MOV EDX,SuperMon.0053EC00
0053EB46|.E8 2D58ECFF   CALL SuperMon.00404378
0053EB4B|>8B45 F4       MOV EAX,DWORD PTR SS:
0053EB4E|.E8 15A7ECFF   CALL SuperMon.00409268                   ;将10进制52转为16进制34 结果送如EAX
0053EB53|.05 BD070000   ADD EAX,7BD                              ;         EAX=34+7bd=7f1
0053EB58|.83D2 00       ADC EDX,0                              ;            EDX清零
0053EB5B|.52            PUSH EDX                                 ; /Arg2
0053EB5C|.50            PUSH EAX                                 ; |Arg1
0053EB5D|.8D45 EC       LEA EAX,DWORD PTR SS:            ; |
0053EB60|.E8 3FA6ECFF   CALL SuperMon.004091A4                   ; \将16进制的7f1转为10进制2033 送入EDX
0053EB65|.8B55 EC       MOV EDX,DWORD PTR SS:            ;2033
0053EB68|.8D45 F4       LEA EAX,DWORD PTR SS:
0053EB6B|.E8 0858ECFF   CALL SuperMon.00404378
0053EB70|.8D45 E8       LEA EAX,DWORD PTR SS:
0053EB73|.8B55 F4       MOV EDX,DWORD PTR SS:             ;2033
0053EB76|.8A12          MOV DL,BYTE PTR DS:               ;   2033的第一位2送入DL
0053EB78|.E8 4B59ECFF   CALL SuperMon.004044C8
0053EB7D|.8B45 E8       MOV EAX,DWORD PTR SS:
0053EB80|.E8 6FA6ECFF   CALL SuperMon.004091F4                   ;将2送入EAX
0053EB85|.8BD8          MOV EBX,EAX                              ;2
0053EB87|.80C3 41       ADD BL,41                              ;            BL=2+41=43
0053EB8A|.8D45 F4       LEA EAX,DWORD PTR SS:
0053EB8D|.E8 665CECFF   CALL SuperMon.004047F8                   ;取43的字符’ C‘
0053EB92|.8818          MOV BYTE PTR DS:,BL               ;    用‘C’替换2033的第一位 2
0053EB94|.8D45 E4       LEA EAX,DWORD PTR SS:            ;   EAX=C033
0053EB97|.8B55 F4       MOV EDX,DWORD PTR SS:
0053EB9A|.8A52 01       MOV DL,BYTE PTR DS:               ;   DL=02033的第2位
0053EB9D|.E8 2659ECFF   CALL SuperMon.004044C8
0053EBA2|.8B45 E4       MOV EAX,DWORD PTR SS:
0053EBA5|.E8 4AA6ECFF   CALL SuperMon.004091F4                   ;eax清0
0053EBAA|.8BD8          MOV EBX,EAX                              ;         EBX清0
0053EBAC|.80C3 41       ADD BL,41                              ;            ebx=0+41(0为2033的第2位)
0053EBAF|.8D45 F4       LEA EAX,DWORD PTR SS:
0053EBB2|.E8 415CECFF   CALL SuperMon.004047F8                   ;取41的字符‘A’
0053EBB7|.8858 01       MOV BYTE PTR DS:,BL               ;‘A’替换C033的第2位0
0053EBBA|.8B45 F8       MOV EAX,DWORD PTR SS:             ;EAX=CA33
0053EBBD|.8B55 F4       MOV EDX,DWORD PTR SS:
0053EBC0|.E8 6F57ECFF   CALL SuperMon.00404334
0053EBC5|.33C0          XOR EAX,EAX
0053EBC7|.5A            POP EDX
0053EBC8|.59            POP ECX
0053EBC9|.59            POP ECX
0053EBCA|.64:8910       MOV DWORD PTR FS:,EDX
0053EBCD|.68 EFEB5300   PUSH SuperMon.0053EBEF
0053EBD2|>8D45 E4       LEA EAX,DWORD PTR SS:
0053EBD5|.BA 05000000   MOV EDX,5
0053EBDA|.E8 2557ECFF   CALL SuperMon.00404304
0053EBDF|.8D45 FC       LEA EAX,DWORD PTR SS:
0053EBE2|.E8 F956ECFF   CALL SuperMon.004042E0
0053EBE7\.C3            RETN
0053EBE8   .^ E9 1750ECFF   JMP SuperMon.00403C04
0053EBED   .^ EB E3         JMP SHORT SuperMon.0053EBD2
0053EBEF   .5F            POP EDI
0053EBF0   .5E            POP ESI
0053EBF1   .5B            POP EBX
0053EBF2   .8BE5          MOV ESP,EBP
0053EBF4   .5D            POP EBP
0053EBF5   .C3            RETN
0053EBF6      00            DB 00


--------------------------------------------------------------------------------
【经验总结】
1.取机器码中1到9之间的数字我的机器码是5PS2VLK0 所以取52
2.将10进制52转为16进制34 然后加上7bd 结果转为10进制2033 记为S
3.取S 的第1位2   加上41 得43(16进制) 取其字符‘C’替换 S 的第1位得C033记为S1
4.取S1的第2位0加上41得41                取其字符‘A’替换S1的第2位得CA33这就是注册码

--------------------------------------------------------------------------------
【版权声明】: 本文原创于PYG论坛, 转载请注明作者并保持文章的完整, 谢谢!

                                                       2007年05月21日 22:50:21

[ 本帖最后由 千里之外 于 2007-5-22 12:59 编辑 ]

ABCdiyPE 发表于 2007-5-22 14:14:31

顶起来!!

pw2000 发表于 2007-5-22 15:15:37

学习了!!

hjw 发表于 2007-5-23 12:23:15

学习中,算法还是不太懂

yingfeng 发表于 2007-5-23 16:15:53

先顶一个,慢慢看

新手求教 发表于 2007-5-23 21:09:09

谢谢!学习了,有没有高手也教教咱

piger 发表于 2007-5-24 00:53:05

呵呵,有点看不懂

775825866 发表于 2007-5-25 19:02:38

这个有点看不洞啊!

yingfeng 发表于 2007-5-31 10:12:09

郁闷,学习中,不懂算法

小子贼野 发表于 2007-5-31 15:54:03

似懂非懂~!还是不明白,继续学习~!
页: [1] 2
查看完整版本: 菜鸟算法2(高手飞过)