【文章标题】: Cool File Encryption 算法
【文章作者】: KAN [ DCG ]
【作者邮箱】: tom7411@163.com
【作者主页】: 我都想有,可惜。。。。
【作者QQ号】: 591258070
【软件名称】: Cool File Encryption 2.3
【软件大小】: 720 k
【下载地址】: http://www.dreamflysoft.com/
【加壳方式】: ASPack 2.12
【保护方式】: 简单的压缩壳
【编写语言】: Dephi 7
【使用工具】: OD 
【操作平台】: winxp sp2
【软件介绍】: 一个老外文件加密的工具,界面还挺漂亮的
【作者声明】: 只是感兴趣,为解密而学破解
--------------------------------------------------------------------------------
【详细过程】
  今天的手气比较好,一天之内拿下了两个软件。早上在 PYG 下了野猫III 的一个剪贴板的软件 KEY ,一用感觉不错,但他的定位有点问题,就想上主页上看看有没有新版,谁知道竟然没有,就顺便把这个软件下了,下来一看,2 分钟就写出了注册机,但不敢发上论坛
汗啊,这么简单的东西你叫我如何是好呢,但一想,可能好多菜鸟就是欠这种软件来练(我当初第一次看懂算法的crackme 就是一个超简单的用户名累加(到现在我还很感谢那个Crackme 的作者,是他给了一次机会我,让我知道算法
是如何生成的 ,大家如果看过我的破文(真的很破的文),都是些肤浅的东西。说真的我这个人懒,如果算法太长的话
我会把它 Patch 了算了(当然还要在我的能力可以之下)
  
  
  004B1847  |.  BA A4194B00   MOV EDX,Cool_Fil.004B19A4            ;  ASCII "1301" 这是头4个数字
  004B184C  |.  E8 6F2AF5FF   CALL Cool_Fil.004042C0
  004B1851  |.  8D55 F8       LEA EDX,DWORD PTR SS:[EBP-8]
  004B1854  |.  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
  004B1857  |.  8B80 14030000 MOV EAX,DWORD PTR DS:[EAX+314]
  004B185D  |.  E8 8AFAF9FF   CALL Cool_Fil.004512EC
  004B1862  |.  8B45 F8       MOV EAX,DWORD PTR SS:[EBP-8]         ;  用户名
  004B1865  |.  E8 7E2CF5FF   CALL Cool_Fil.004044E8
  004B186A  |.  8BD8          MOV EBX,EAX
  004B186C  |.  8D55 EC       LEA EDX,DWORD PTR SS:[EBP-14]
  004B186F  |.  B8 6D000000   MOV EAX,6D
  004B1874  |.  E8 276EF5FF   CALL Cool_Fil.004086A0               ;  可疑
  004B1879  |.  8B55 EC       MOV EDX,DWORD PTR SS:[EBP-14]        ;  109 常数
  004B187C  |.  8D45 F0       LEA EAX,DWORD PTR SS:[EBP-10]
  004B187F  |.  E8 6C2CF5FF   CALL Cool_Fil.004044F0
  004B1884  |.  83FB 05       CMP EBX,5
  004B1887  |.  7C 05         JL SHORT Cool_Fil.004B188E
  004B1889  |.  BB 05000000   MOV EBX,5
  004B188E  |>  8BF3          MOV ESI,EBX
  004B1890  |.  85F6          TEST ESI,ESI
  004B1892  |.  7E 42         JLE SHORT Cool_Fil.004B18D6
  004B1894  |.  C745 F4 01000>MOV DWORD PTR SS:[EBP-C],1
  004B189B  |>  8D45 E8       /LEA EAX,DWORD PTR SS:[EBP-18]
  004B189E  |.  50            |PUSH EAX
  004B189F  |.  B9 01000000   |MOV ECX,1
  004B18A4  |.  8B55 F4       |MOV EDX,DWORD PTR SS:[EBP-C]
  004B18A7  |.  8B45 F8       |MOV EAX,DWORD PTR SS:[EBP-8]        ;  用户名字符
  004B18AA  |.  E8 992EF5FF   |CALL Cool_Fil.00404748
  004B18AF  |.  8B45 E8       |MOV EAX,DWORD PTR SS:[EBP-18]
  004B18B2  |.  E8 312EF5FF   |CALL Cool_Fil.004046E8
  004B18B7  |.  8A18          |MOV BL,BYTE PTR DS:[EAX]            ;  读入字符
  004B18B9  |.  8D55 E4       |LEA EDX,DWORD PTR SS:[EBP-1C]
  004B18BC  |.  33C0          |XOR EAX,EAX
  004B18BE  |.  8AC3          |MOV AL,BL                           ;  字符传给 AL
  004B18C0  |.  E8 DB6DF5FF   |CALL Cool_Fil.004086A0
  004B18C5  |.  8B55 E4       |MOV EDX,DWORD PTR SS:[EBP-1C]   ;  每次用户名字符的十进制 给 DX
  004B18C8  |.  8D45 F0       |LEA EAX,DWORD PTR SS:[EBP-10]
  004B18CB  |.  E8 202CF5FF   |CALL Cool_Fil.004044F0
  004B18D0  |.  FF45 F4       |INC DWORD PTR SS:[EBP-C]
  004B18D3  |.  4E            |DEC ESI
  004B18D4  |.^ 75 C5         \JNZ SHORT Cool_Fil.004B189B
  004B18D6  |>  8D55 E0       LEA EDX,DWORD PTR SS:[EBP-20]
  004B18D9  |.  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
  004B18DC  |.  8B80 18030000 MOV EAX,DWORD PTR DS:[EAX+318]
  004B18E2  |.  E8 05FAF9FF   CALL Cool_Fil.004512EC
  004B18E7  |.  8B45 E0       MOV EAX,DWORD PTR SS:[EBP-20]        ;  假码入 EAX
  004B18EA  |.  8B55 F0       MOV EDX,DWORD PTR SS:[EBP-10]
  004B18ED  |.  E8 422DF5FF   CALL Cool_Fil.00404634
  004B18F2  |.  75 55         JNZ SHORT Cool_Fil.004B1949
  004B18F4  |.  B2 01         MOV DL,1
  004B18F6  |.  A1 5C5E4300   MOV EAX,DWORD PTR DS:[435E5C]
  004B18FB  |.  E8 5C46F8FF   CALL Cool_Fil.00435F5C
  004B1900  |.  8BD8          MOV EBX,EAX
  004B1902  |.  BA 00000080   MOV EDX,80000000
  004B1907  |.  8BC3          MOV EAX,EBX
  004B1909  |.  E8 EE46F8FF   CALL Cool_Fil.00435FFC
  004B190E  |.  B1 01         MOV CL,1
  004B1910  |.  BA B4194B00   MOV EDX,Cool_Fil.004B19B4            ;  ASCII ".lwx"
  004B1915  |.  8BC3          MOV EAX,EBX
  004B1917  |.  E8 4447F8FF   CALL Cool_Fil.00436060
  004B191C  |.  84C0          TEST AL,AL
  004B191E  |.  74 11         JE SHORT Cool_Fil.004B1931
  004B1920  |.  B9 C4194B00   MOV ECX,Cool_Fil.004B19C4            ;  ASCII "mxlovelwxmore"
  004B1925  |.  BA DC194B00   MOV EDX,Cool_Fil.004B19DC            ;  ASCII "registerok"
  004B192A  |.  8BC3          MOV EAX,EBX
  004B192C  |.  E8 CB48F8FF   CALL Cool_Fil.004361FC
  004B1931  |>  8BC3          MOV EAX,EBX
  004B1933  |.  E8 801BF5FF   CALL Cool_Fil.004034B8
  004B1938  |.  A1 406C4B00   MOV EAX,DWORD PTR DS:[4B6C40]
  004B193D  |.  8B00          MOV EAX,DWORD PTR DS:[EAX]
  004B193F  |.  8B10          MOV EDX,DWORD PTR DS:[EAX]
  004B1941  |.  FF92 EC000000 CALL DWORD PTR DS:[EDX+EC]
  004B1947  |.  EB 18         JMP SHORT Cool_Fil.004B1961
  004B1949  |>  6A 00         PUSH 0
  004B194B  |.  B9 E8194B00   MOV ECX,Cool_Fil.004B19E8            ;  ASCII "Warning"
  004B1950  |.  BA F0194B00   MOV EDX,Cool_Fil.004B19F0            ;  ASCII "Invalid registration!!"
  004B1955  |.  A1 AC6B4B00   MOV EAX,DWORD PTR DS:[4B6BAC]
  
  
----------------------------------------------------------------------
注册码开头的 1301109 是固定的,后面是你输入的用户名字符的十进制数连起来 就是注册码了,简单了吧,该看懂了吧!
【经验总结】
  附上 C 语言注册机   , 如果你见惯大侠的注册机,就来见见菜鸟的
  
  /* Note:Your choice is C IDE */
  #include "stdio.h"
  #include"string.h"
  main()
  {
     int a[10],i,len;
     char name[10];  
     gets(name);
     printf("你的正版序列号是:  1301109");
     len=strlen(name);
     for(i=0;i<len;i++)
     {
       a[i]=name[i];
       printf("%d",a[i]);
     }  
  }
  
--------------------------------------------------------------------------------
【版权声明】: 本文原创于看雪技术论坛, 转载请注明作者并保持文章的完整, 谢谢!

                                                       2006年10月12日 21:38:43