angelfish 发表于 2008-4-21 11:58:01

文件夹加锁王企业版2008简单分析

【破文标题】文件夹加锁王企业版2008简单分析
【破文作者】angelfish
【作者邮箱】
【作者主页】
【破解工具】PEid 0.94,ODbyDYK,ImpREC 1.7c,LordPE__PYG,dede
【破解平台】深度xp精简版
【软件名称】folderlockpro
【软件大小】797KB
【原版下载】摆渡下
【保护方式】ASProtect 2.0x Registered
【软件简介】 本软件文件夹加密功能强大,和国内其他的加密软件有本质的区别,其他加
密软件都是简单的把文件夹移动到回收站中并做一些简单的伪装,在Winrar等工
具软件和部分杀毒软件中都无可遁形,真正解除你加密机密资料的后顾之忧。
【破解声明】只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
------------------------------------------------------------------------
【破解过程】OK,开始我的菜鸟之旅~~~~大侠们可以无视这篇文章。。。。。


首先当然是PEID看看,是ASProtect 2.0x Registered -> Alexey Solodovnikov~~

因为是菜鸟,所以用脚本下~~
Script written by VolX
Script   : Aspr2.XX_unpacker

很好,很和谐~~没有偷窃代码~~

打开由心海伽蓝大大汉化的Import REConstructor v1.7c FINAL (C) 2001-2008 MackT/uCF/uCF

OEP=11BA84,自动查找IAT,获取输入表,修复转储文件de_folderlockpro.exe~~(脚本生成)

PEID查看是Borland Delphi 6.0 - 7.0~~~

注册名称:angelfish

授权密码:1111-2222-3333333

【提示信息】:未输入注册码或者输入的注册码不正确,请重新输入或者与软件供应商联系!

用DEDE找到
SpeedButton6Click        00519F40        0018//这个

关键00519F40处,

00519F40/.55            push    ebp
00519F41|.8BEC          mov   ebp, esp
00519F43|.33C9          xor   ecx, ecx
00519F45|.51            push    ecx
00519F46|.51            push    ecx
00519F47|.51            push    ecx
00519F48|.51            push    ecx
00519F49|.53            push    ebx
00519F4A|.8BD8          mov   ebx, eax
00519F4C|.33C0          xor   eax, eax
00519F4E|.55            push    ebp
00519F4F|.68 24A05100   push    0051A024
00519F54|.64:FF30       push    dword ptr fs:
00519F57|.64:8920       mov   dword ptr fs:, esp
00519F5A|.8D55 F8       lea   edx, dword ptr
00519F5D|.8B83 9C040000 mov   eax, dword ptr
00519F63|.E8 18BCF2FF   call    00445B80                     ;取位数
00519F68|.8B45 F8       mov   eax, dword ptr        ;取前到EAX
00519F6B|.50            push    eax
00519F6C|.8D55 F4       lea   edx, dword ptr
00519F6F|.8B83 B0040000 mov   eax, dword ptr
00519F75|.E8 06BCF2FF   call    00445B80
00519F7A|.8B45 F4       mov   eax, dword ptr
00519F7D|.50            push    eax
00519F7E|.8D55 F0       lea   edx, dword ptr
00519F81|.8B83 90040000 mov   eax, dword ptr
00519F87|.E8 F4BBF2FF   call    00445B80
00519F8C|.8B55 F0       mov   edx, dword ptr       ;用户名
00519F8F|.8B83 AC040000 mov   eax, dword ptr
00519F95|.59            pop   ecx
00519F96|.E8 3DBBFDFF   call    004F5AD8                     ;关键call/F7
00519F9B|.84C0          test    al, al
00519F9D|.75 2C         jnz   short 00519FCB
00519F9F|.8D45 FC       lea   eax, dword ptr
00519FA2|.BA 38A05100   mov   edx, 0051A038
00519FA7|.E8 78ABEEFF   call    00404B24
00519FAC|.6A 40         push    40
00519FAE|.8B45 FC       mov   eax, dword ptr
00519FB1|.E8 86AFEEFF   call    00404F3C
00519FB6|.8BD0          mov   edx, eax
00519FB8|.B9 8CA05100   mov   ecx, 0051A08C
00519FBD|.A1 D8E45100   mov   eax, dword ptr
00519FC2|.8B00          mov   eax, dword ptr
00519FC4|.E8 BFCAF4FF   call    00466A88                     ;弹出错误对话框


004F5AD8/$55            push    ebp
004F5AD9|.8BEC          mov   ebp, esp
004F5ADB|.83C4 F0       add   esp, -10
004F5ADE|.53            push    ebx
004F5ADF|.33DB          xor   ebx, ebx
004F5AE1|.895D F0       mov   dword ptr , ebx
004F5AE4|.895D F4       mov   dword ptr , ebx
004F5AE7|.894D F8       mov   dword ptr , ecx
004F5AEA|.8955 FC       mov   dword ptr , edx
004F5AED|.8BD8          mov   ebx, eax
004F5AEF|.8B45 FC       mov   eax, dword ptr
004F5AF2|.E8 35F4F0FF   call    00404F2C
004F5AF7|.8B45 F8       mov   eax, dword ptr
004F5AFA|.E8 2DF4F0FF   call    00404F2C
004F5AFF|.8B45 08       mov   eax, dword ptr
004F5B02|.E8 25F4F0FF   call    00404F2C
004F5B07|.33C0          xor   eax, eax
004F5B09|.55            push    ebp
004F5B0A|.68 C25B4F00   push    004F5BC2
004F5B0F|.64:FF30       push    dword ptr fs:
004F5B12|.64:8920       mov   dword ptr fs:, esp
004F5B15|.8B45 FC       mov   eax, dword ptr
004F5B18|.E8 27F2F0FF   call    00404D44
004F5B1D|.3B43 4C       cmp   eax, dword ptr       ;比较用户名位数
004F5B20|.7F 19         jg      short 004F5B3B               ;>64位玩完
004F5B22|.8B45 FC       mov   eax, dword ptr
004F5B25|.E8 1AF2F0FF   call    00404D44
004F5B2A|.3B43 50       cmp   eax, dword ptr       ;用户名要大于3位
004F5B2D|.7C 0C         jl      short 004F5B3B
004F5B2F|.8B45 08       mov   eax, dword ptr
004F5B32|.E8 0DF2F0FF   call    00404D44
004F5B37|.85C0          test    eax, eax                     ;看看用户名为空
004F5B39|.75 04         jnz   short 004F5B3F
004F5B3B|>33DB          xor   ebx, ebx
004F5B3D|.EB 60         jmp   short 004F5B9F
004F5B3F|>8D55 F4       lea   edx, dword ptr
004F5B42|.8B45 08       mov   eax, dword ptr
004F5B45|.E8 B236F1FF   call    004091FC
004F5B4A|.8B55 F4       mov   edx, dword ptr
004F5B4D|.8D45 08       lea   eax, dword ptr
004F5B50|.E8 CFEFF0FF   call    00404B24
004F5B55|.8D4D F0       lea   ecx, dword ptr
004F5B58|.8B55 FC       mov   edx, dword ptr
004F5B5B|.8BC3          mov   eax, ebx
004F5B5D|.E8 BAFBFFFF   call    004F571C                     ;算法CALL/F7


004F571C/$55            push    ebp
004F571D|.8BEC          mov   ebp, esp
004F571F|.83C4 E0       add   esp, -20
004F5722|.53            push    ebx
004F5723|.56            push    esi
004F5724|.57            push    edi
004F5725|.33DB          xor   ebx, ebx
004F5727|.895D EC       mov   dword ptr , ebx
004F572A|.895D E8       mov   dword ptr , ebx
004F572D|.895D E4       mov   dword ptr , ebx
004F5730|.895D E0       mov   dword ptr , ebx
004F5733|.8BF9          mov   edi, ecx
004F5735|.8955 FC       mov   dword ptr , edx
004F5738|.8BF0          mov   esi, eax
004F573A|.8B45 FC       mov   eax, dword ptr
004F573D|.E8 EAF7F0FF   call    00404F2C
004F5742|.33C0          xor   eax, eax
004F5744|.55            push    ebp
004F5745|.68 B5584F00   push    004F58B5
004F574A|.64:FF30       push    dword ptr fs:
004F574D|.64:8920       mov   dword ptr fs:, esp
004F5750|.8D45 EC       lea   eax, dword ptr
004F5753|.BA CC584F00   mov   edx, 004F58CC                ;ASCII "gf258369gf"
004F5758|.E8 C7F3F0FF   call    00404B24
004F575D|.837D EC 00    cmp   dword ptr , 0
004F5761|.75 0D         jnz   short 004F5770
004F5763|.8D45 E0       lea   eax, dword ptr
004F5766|.8B55 FC       mov   edx, dword ptr
004F5769|.E8 B6F3F0FF   call    00404B24
004F576E|.EB 5D         jmp   short 004F57CD
004F5770|>8B45 EC       mov   eax, dword ptr
004F5773|.E8 CCF5F0FF   call    00404D44
004F5778|.8BD8          mov   ebx, eax
004F577A|.8D45 E8       lea   eax, dword ptr
004F577D|.50            push    eax
004F577E|.8BCB          mov   ecx, ebx
004F5780|.D1F9          sar   ecx, 1
004F5782|.79 03         jns   short 004F5787
004F5784|.83D1 00       adc   ecx, 0
004F5787|>BA 01000000   mov   edx, 1
004F578C|.8B45 EC       mov   eax, dword ptr
004F578F|.E8 08F8F0FF   call    00404F9C
004F5794|.8D45 E4       lea   eax, dword ptr
004F5797|.50            push    eax
004F5798|.8BC3          mov   eax, ebx
004F579A|.D1F8          sar   eax, 1
004F579C|.79 03         jns   short 004F57A1
004F579E|.83D0 00       adc   eax, 0
004F57A1|>8BCB          mov   ecx, ebx
004F57A3|.2BC8          sub   ecx, eax
004F57A5|.8BD3          mov   edx, ebx
004F57A7|.D1FA          sar   edx, 1
004F57A9|.79 03         jns   short 004F57AE
004F57AB|.83D2 00       adc   edx, 0
004F57AE|>42            inc   edx
004F57AF|.8B45 EC       mov   eax, dword ptr
004F57B2|.E8 E5F7F0FF   call    00404F9C
004F57B7|.FF75 E8       push    dword ptr
004F57BA|.FF75 FC       push    dword ptr
004F57BD|.FF75 E4       push    dword ptr
004F57C0|.8D45 E0       lea   eax, dword ptr
004F57C3|.BA 03000000   mov   edx, 3
004F57C8|.E8 37F6F0FF   call    00404E04
004F57CD|>C745 F0 00000>mov   dword ptr , 0
004F57D4|.C745 F4 00000>mov   dword ptr , 0
004F57DB|.8B45 FC       mov   eax, dword ptr
004F57DE|.E8 61F5F0FF   call    00404D44
004F57E3|.3B46 4C       cmp   eax, dword ptr
004F57E6|.7F 0D         jg      short 004F57F5
004F57E8|.8B45 FC       mov   eax, dword ptr
004F57EB|.E8 54F5F0FF   call    00404D44
004F57F0|.3B46 50       cmp   eax, dword ptr
004F57F3|.7D 0C         jge   short 004F5801
004F57F5|>8BC7          mov   eax, edi
004F57F7|.E8 90F2F0FF   call    00404A8C
004F57FC|.E9 91000000   jmp   004F5892
004F5801|>8B45 E0       mov   eax, dword ptr
004F5804|.E8 3BF5F0FF   call    00404D44
004F5809|.8BD8          mov   ebx, eax
004F580B|.EB 37         jmp   short 004F5844
004F580D|>8B46 68       /mov   eax, dword ptr
004F5810|.8B56 6C       |mov   edx, dword ptr
004F5813|.0345 F0       |add   eax, dword ptr
004F5816|.1355 F4       |adc   edx, dword ptr
004F5819|.52            |push    edx
004F581A|.50            |push    eax
004F581B|.8B45 E0       |mov   eax, dword ptr
004F581E|.0FB64418 FF   |movzx   eax, byte ptr
004F5823|.50            |push    eax
004F5824|.B8 59040000   |mov   eax, 459
004F5829|.5A            |pop   edx
004F582A|.8BCA          |mov   ecx, edx
004F582C|.33D2          |xor   edx, edx
004F582E|.F7F1          |div   ecx
004F5830|.8BC2          |mov   eax, edx
004F5832|.33D2          |xor   edx, edx
004F5834|.290424      |sub   dword ptr , eax
004F5837|.195424 04   |sbb   dword ptr , edx
004F583B|.58            |pop   eax
004F583C|.5A            |pop   edx
004F583D|.8945 F0       |mov   dword ptr , eax
004F5840|.8955 F4       |mov   dword ptr , edx
004F5843|.4B            |dec   ebx
004F5844|>8B45 E0      mov   eax, dword ptr
004F5847|.E8 F8F4F0FF   |call    00404D44
004F584C|.3BD8          |cmp   ebx, eax
004F584E|.7F 04         |jg      short 004F5854
004F5850|.85DB          |test    ebx, ebx
004F5852|.^ 7F B9         \jg      short 004F580D
004F5854|>8B5E 60       mov   ebx, dword ptr
004F5857|.85DB          test    ebx, ebx
004F5859|.7F 11         jg      short 004F586C
004F585B|.FF75 F4       push    dword ptr
004F585E|.FF75 F0       push    dword ptr
004F5861|.8BD7          mov   edx, edi
004F5863|.33C0          xor   eax, eax
004F5865|.E8 623FF1FF   call    004097CC
004F586A|.EB 26         jmp   short 004F5892
004F586C|>FF75 F4       push    dword ptr
004F586F|.FF75 F0       push    dword ptr
004F5872|.8BD7          mov   edx, edi
004F5874|.8BC3          mov   eax, ebx
004F5876|.E8 513FF1FF   call    004097CC
004F587B|.8B07          mov   eax, dword ptr
004F587D|.E8 C2F4F0FF   call    00404D44                     ;经过一番算法后eax出现好东西

看到算法就晕。。。。。所以就不去研究了。。。。。


看了下,这个软件的注册码看上去分三段,其实比较的是第二段~~~~


然后得到好东西后,就注册下:

注册名称:angelfish

授权密码:xxxxxxx-0073DE2440-xxxxxxxx(xxxxx处可以不填)

请重新启动软件以验证注册码!
感谢您对我们的支持,我们将为您提供终身免费升级。

重启,注册成功~~

Sou了下注册表,发现保存在HKEY_CLASSES_ROOT\CLSID\{7FF02D23-3021-410E-88EB-57525254DC9D}\InprocServer32]

这里~~

好了,就到这里,因为菜,所以只能 这样了。。。。。。。


------------------------------------------------------------------------
【破解总结】要破解吧,首先要知道关键CALL。。。。。。
------------------------------------------------------------------------
【版权声明】: 本文原创于『PYG 』, 转载请注明作者并保持文章的完整, 谢谢!

CCC_Fish 发表于 2008-4-21 13:05:05

学习了,谢谢...:victory:

gtboy 发表于 2008-4-21 16:22:54

很好很强大,学习了
我也不懂算法,一跟就晕,所以现在还只能做内存注册机,嘿嘿
asp的壳也只会用脚本跑,天草的视频上有,可惜没有学会,继续努力中~~~~~~~~

hj2008mt 发表于 2008-4-21 17:53:12

但是好像还有限制!

linghangzhe 发表于 2008-4-21 18:36:09

感谢你的辛苦,支持一下。

Nisy 发表于 2008-4-21 22:56:48

不错/:good

tianxj 发表于 2008-4-21 23:21:31

我原来带壳调试的

save425 发表于 2008-4-23 23:08:57

学习中~~

akira 发表于 2008-4-25 09:39:31

学习了,此方法很好很详细。。。/:018

dabtiger 发表于 2008-4-28 10:51:48

不错,学习了,谢谢楼主!
页: [1] 2
查看完整版本: 文件夹加锁王企业版2008简单分析