千里之外 发表于 2007-5-26 03:45:19

菜鸟算法4

【文章标题】: 共享资料保护专家高级版算法分析
【文章作者】: 千里之外
【作者邮箱】: [email protected]
【作者主页】: www.wm5.net.cn
【作者QQ号】: 506398911
【软件名称】: 共享资料保护专家高级版
【下载地址】: http://www.jianrui.cn/dl.htm
【保护方式】: 机器码
【编写语言】: Borland Delphi 6.0 - 7.0
【使用工具】: OD PEID
【操作平台】: WINXP2
【软件介绍】: 软件对文件夹加密后,用户只能浏览该文件夹内的word、Excel或图片文件等的内容,不能修改、拷贝或盗取。
【作者声明】: 谢谢 fonge大哥的热心指导 没有你 我也许离写出算法还很远 再次感谢 祝好人一生平安
--------------------------------------------------------------------------------
【详细过程】
大家好 我是千里之外 在这里依然谢谢fonge大哥的热心指导是你给我指明了学习的方向 呵呵 我会继续努力的

搜索你已经注册可以很快来到这里



004D3C53   .50            PUSH EAX
004D3C54   .8D95 F4FDFFFF LEA EDX,DWORD PTR SS:
004D3C5A   .A1 C0F14D00   MOV EAX,DWORD PTR DS:
004D3C5F   .8B00          MOV EAX,DWORD PTR DS:
004D3C61   .E8 1E300000   CALL 共享资料.004D6C84                     ;第一个算法CALL
004D3C66   .8B85 F4FDFFFF MOV EAX,DWORD PTR SS:
004D3C6C   .8D95 F8FDFFFF LEA EDX,DWORD PTR SS:
004D3C72   .E8 D551F3FF   CALL 共享资料.00408E4C
004D3C77   .8B95 F8FDFFFF MOV EDX,DWORD PTR SS:
004D3C7D   .58            POP EAX
004D3C7E   .E8 890FF3FF   CALL 共享资料.00404C0C
004D3C83   .75 2C         JNZ SHORT 共享资料.004D3CB1
004D3C85   .6A 40         PUSH 40
004D3C87   .B9 58404D00   MOV ECX,共享资料.004D4058                  ;你已经注册
004D3C8C   .BA 64404D00   MOV EDX,共享资料.004D4064                  ;您已购买并注册《共享资料保护专家高级版》软件,谢谢支持!
004D3C91   .A1 B4F24D00   MOV EAX,DWORD PTR DS:
004D3C96   .8B00          MOV EAX,DWORD PTR DS:
004D3C98   .E8 972DF9FF   CALL 共享资料.00466A34
004D3C9D   .8BC3          MOV EAX,EBX
004D3C9F   .E8 54F5F8FF   CALL 共享资料.004631F8

第一个算法CALL处
004D6C84   $55            PUSH EBP
004D6C85   .8BEC          MOV EBP,ESP
004D6C87   .6A 00         PUSH 0
004D6C89   .6A 00         PUSH 0
004D6C8B   .6A 00         PUSH 0
004D6C8D   .53            PUSH EBX
004D6C8E   .56            PUSH ESI
004D6C8F   .57            PUSH EDI
004D6C90   .8955 FC       MOV DWORD PTR SS:,EDX
004D6C93   .8BD8          MOV EBX,EAX                              ;hNM
004D6C95   .33C0          XOR EAX,EAX
004D6C97   .55            PUSH EBP
004D6C98   .68 146D4D00   PUSH 共享资料.004D6D14
004D6C9D   .64:FF30       PUSH DWORD PTR FS:
004D6CA0   .64:8920       MOV DWORD PTR FS:,ESP
004D6CA3   .33C0          XOR EAX,EAX
004D6CA5   .55            PUSH EBP
004D6CA6   .68 E26C4D00   PUSH 共享资料.004D6CE2
004D6CAB   .64:FF30       PUSH DWORD PTR FS:
004D6CAE   .64:8920       MOV DWORD PTR FS:,ESP
004D6CB1   .8D45 F8       LEA EAX,DWORD PTR SS:
004D6CB4   .50            PUSH EAX
004D6CB5   .8D55 F4       LEA EDX,DWORD PTR SS:
004D6CB8   .8BC3          MOV EAX,EBX                              ;hNM
004D6CBA   .E8 9D000000   CALL 共享资料.004D6D5C
004D6CBF   .8B55 F4       MOV EDX,DWORD PTR SS:             ;5808328774
004D6CC2   .66:B9 1701    MOV CX,117
004D6CC6   .8BC3          MOV EAX,EBX
004D6CC8   .E8 BBFEFFFF   CALL 共享资料.004D6B88                     ;第二个算法CALL
004D6CCD   .8B45 FC       MOV EAX,DWORD PTR SS:
004D6CD0   .8B55 F8       MOV EDX,DWORD PTR SS:
004D6CD3   .E8 8CDBF2FF   CALL 共享资料.00404864
004D6CD8   .33C0          XOR EAX,EAX
004D6CDA   .5A            POP EDX

第二个算法CALL处

004D6B88   $55            PUSH EBP
004D6B89   .8BEC          MOV EBP,ESP
004D6B8B   .6A 00         PUSH 0
004D6B8D   .6A 00         PUSH 0
004D6B8F   .6A 00         PUSH 0
004D6B91   .6A 00         PUSH 0
004D6B93   .53            PUSH EBX
004D6B94   .56            PUSH ESI
004D6B95   .57            PUSH EDI
004D6B96   .66:894D FE    MOV WORD PTR SS:,CX               ;取固定字符 ‘117’
004D6B9A   .8BFA          MOV EDI,EDX
004D6B9C   .33C0          XOR EAX,EAX
004D6B9E   .55            PUSH EBP
004D6B9F   .68 5E6C4D00   PUSH 共享资料.004D6C5E
004D6BA4   .64:FF30       PUSH DWORD PTR FS:
004D6BA7   .64:8920       MOV DWORD PTR FS:,ESP
004D6BAA   .33C0          XOR EAX,EAX
004D6BAC   .55            PUSH EBP
004D6BAD   .68 2C6C4D00   PUSH 共享资料.004D6C2C
004D6BB2   .64:FF30       PUSH DWORD PTR FS:
004D6BB5   .64:8920       MOV DWORD PTR FS:,ESP
004D6BB8   .8B45 08       MOV EAX,DWORD PTR SS:
004D6BBB   .E8 50DCF2FF   CALL 共享资料.00404810
004D6BC0   .8D45 F8       LEA EAX,DWORD PTR SS:
004D6BC3   .E8 48DCF2FF   CALL 共享资料.00404810
004D6BC8   .8BC7          MOV EAX,EDI                              ;取机器码我的是5808328774
004D6BCA   .E8 F9DEF2FF   CALL 共享资料.00404AC8
004D6BCF   .8BD8          MOV EBX,EAX
004D6BD1   .85DB          TEST EBX,EBX
004D6BD3   .7E 36         JLE SHORT 共享资料.004D6C0B
004D6BD5   .BE 01000000   MOV ESI,1
004D6BDA   >8D45 F0       LEA EAX,DWORD PTR SS:
004D6BDD   .8A5437 FF   MOV DL,BYTE PTR DS:         ;取机器码第一位 我的是 5
004D6BE1   .E8 0ADEF2FF   CALL 共享资料.004049F0
004D6BE6   .8B45 F0       MOV EAX,DWORD PTR SS:
004D6BE9   .E8 DE24F3FF   CALL 共享资料.004090CC                     ;将5送入EAX
004D6BEE   .0FB755 FE   MOVZX EDX,WORD PTR SS:            ;固定字符117入EDX
004D6BF2   .33C2          XOR EAX,EDX                              ;EAX=EAX XOR EDX=5 XOR 117=112(16进制)
004D6BF4   .8D55 F4       LEA EDX,DWORD PTR SS:
004D6BF7   .E8 6C24F3FF   CALL 共享资料.00409068                     ;将16进制112转化为10进制274
004D6BFC   .8B55 F4       MOV EDX,DWORD PTR SS:
004D6BFF   .8D45 F8       LEA EAX,DWORD PTR SS:
004D6C02   .E8 C9DEF2FF   CALL 共享资料.00404AD0                     ;将每次的结果依次连接
004D6C07   .46            INC ESI
004D6C08   .4B            DEC EBX
004D6C09   .^ 75 CF         JNZ SHORT 共享资料.004D6BDA                  ;以上是将机器码的每一位进行如上循环并依次连接 我的结果是274287279287276277287272272275
004D6C0B   >8B45 08       MOV EAX,DWORD PTR SS:
004D6C0E   .50            PUSH EAX
004D6C0F   .8BC7          MOV EAX,EDI
004D6C11   .E8 B2DEF2FF   CALL 共享资料.00404AC8
004D6C16   .8BC8          MOV ECX,EAX
004D6C18   .33D2          XOR EDX,EDX
004D6C1A   .8B45 F8       MOV EAX,DWORD PTR SS:             ;274287279287276277287272272275
004D6C1D   .E8 FEE0F2FF   CALL 共享资料.00404D20
004D6C22   .33C0          XOR EAX,EAX
004D6C24   .5A            POP EDX
004D6C25   .59            POP ECX
004D6C26   .59            POP ECX
004D6C27   .64:8910       MOV DWORD PTR FS:,EDX
004D6C2A   .EB 17         JMP SHORT 共享资料.004D6C43
004D6C2C   .^ E9 CFD2F2FF   JMP 共享资料.00403F00
004D6C31   .8B45 08       MOV EAX,DWORD PTR SS:
004D6C34   .BA 786C4D00   MOV EDX,共享资料.004D6C78                  ;1398502186
004D6C39   .E8 26DCF2FF   CALL 共享资料.00404864
004D6C3E   .E8 25D6F2FF   CALL 共享资料.00404268
004D6C43   >33C0          XOR EAX,EAX
004D6C45   .5A            POP EDX
004D6C46   .59            POP ECX
004D6C47   .59            POP ECX
004D6C48   .64:8910       MOV DWORD PTR FS:,EDX
004D6C4B   .68 656C4D00   PUSH 共享资料.004D6C65
004D6C50   >8D45 F0       LEA EAX,DWORD PTR SS:
004D6C53   .BA 03000000   MOV EDX,3                              ;EDX=3
004D6C58   .E8 D7DBF2FF   CALL 共享资料.00404834
004D6C5D   .C3            RETN
004D6C5E   .^ E9 51D5F2FF   JMP 共享资料.004041B4
004D6C63   .^ EB EB         JMP SHORT 共享资料.004D6C50
004D6C65   .5F            POP EDI
004D6C66   .5E            POP ESI
004D6C67   .5B            POP EBX
004D6C68   .8BE5          MOV ESP,EBP
004D6C6A   .5D            POP EBP
004D6C6B   .C2 0400       RETN 4                                        取所得结果的前10位即为真正的注册码


--------------------------------------------------------------------------------
【经验总结】
1.机器码的每一位分别与固定值117(机器码和117都看作是16进制)作异或运算 结果转为10进制
2.将每位的运算结果依次连接我的结果是 274287279287276277287272272275
3.取以上结果的前10位(2742872792)即为注册码

--------------------------------------------------------------------------------
【版权声明】: 谢谢 fonge大哥的热心指导 没有你 我也许离写出算法还很远 再次感谢 祝好人一生平安

                                                       2007年05月26日 3:10:11

[ 本帖最后由 千里之外 于 2007-5-28 13:25 编辑 ]

新手求教 发表于 2007-5-26 08:15:56

顶一下,兄弟给咱也介绍一位师傅,算法分析卡壳了,怎么也过不去在群里能加你吗?向你学习学习

小子贼野 发表于 2007-5-26 13:17:01

兄弟不错,分析的很好,我还不会算法呢,郁闷啊

pw2000 发表于 2007-5-26 14:39:16

向楼主学习。

playboyjin 发表于 2007-5-26 19:19:17

会算了,,不错

爬爬虫 发表于 2007-5-27 09:22:48

又学到一些东西了!

deletex 发表于 2007-5-27 11:58:58

进步真快。。。

deletex 发表于 2007-5-27 12:06:10

希望兄弟可以做几个算法的教程

[ 本帖最后由 deletex 于 2007-5-27 12:22 编辑 ]

千里之外 发表于 2007-5-27 12:51:51

原帖由 deletex 于 2007-5-27 12:06 发表 https://www.chinapyg.com/images/common/back.gif
希望兄弟可以做几个算法的教程


兄弟 是指动画教程吗我感觉算法做动画语音比较好 但是我在网吧上网不方便 再说我还是初学算法 好多不懂的 呵呵

deletex 发表于 2007-5-27 21:20:49

原帖由 千里之外 于 2007-5-27 12:51 发表 https://www.chinapyg.com/images/common/back.gif



再说我还是初学算法 好多不懂的 呵呵


至少比我强,呵,做个教程来教教我
页: [1] 2
查看完整版本: 菜鸟算法4