• 标 题:Easy File && Folder Protector V3.3
  • 作 者:cyclotron
  • 时 间:2004-1-17 周六, 下午10:19
  • 链 接:http://bbs.pediy.com

软件名称:  Easy File && Folder Protector V3.3
软件大小:  921 KB
软件语言:  英文
软件类别:  国外软件 / 共享版 / 加密工具
应用平台:  Win9x/NT/2000/XP
界面预览:  无
加入时间:  2004-01-17 10:53:22
开 发 商:  http://www.softstack.com/

软件介绍:
    一个非常Easy的文件和文件夹保护程序.只要你给Easy File & Folder Protector设置一个密码, 你就可以保护你的任何文件和文件夹,没有这个密码任何人都无法访问经过Easy File & Folder Protector 保护的文件和文件夹.对文件夹进行保护时文件夹进行了隐藏,这样就显得更安全.此外,它还可防止别人通过网络访问你的文件.如果你要保护自己的隐私,你就要试试Easy File & Folder Protector了.使用方法: 启动保护: "添加文件或文件夹"--->"启动"按钮--->"应用"按钮 解除保护: "点选文件列表中的文件或文件夹"--->"解除"按钮。


0049AA2C  PUSH EBP
0049AA2D  MOV EBP,ESP
0049AA2F  ADD ESP,-10
0049AA32  PUSH EBX
0049AA33  PUSH ESI
0049AA34  PUSH EDI
0049AA35  XOR EDX,EDX
0049AA37  MOV DWORD PTR SS:[EBP-C],EDX
0049AA3A  MOV DWORD PTR SS:[EBP-10],EDX
0049AA3D  MOV DWORD PTR SS:[EBP-4],EAX
0049AA40  MOV EAX,DWORD PTR SS:[EBP-4]
0049AA43  CALL EFPP.00404C70
0049AA48  XOR EAX,EAX
0049AA4A  PUSH EBP
0049AA4B  PUSH EFPP.0049AB35
0049AA50  PUSH DWORD PTR FS:[EAX]
0049AA53  MOV DWORD PTR FS:[EAX],ESP
0049AA56  XOR EBX,EBX
0049AA58  CALL EFPP.0049A2E4
0049AA5D  MOV EAX,DWORD PTR SS:[EBP-4]
0049AA60  CALL EFPP.00404A80                    ;  取得试炼码长度P.00404
0049AA65  CMP EAX,10                            ;  试炼码长度是否为16位
0049AA68  JNZ EFPP.0049AB12
0049AA6E  LEA EAX,DWORD PTR SS:[EBP-C]
0049AA71  PUSH EAX
0049AA72  MOV ECX,8
0049AA77  MOV EDX,1
0049AA7C  MOV EAX,DWORD PTR SS:[EBP-4]
0049AA7F  CALL EFPP.00404CE0                    ;  取试炼码前八位P.00404
0049AA84  LEA EAX,DWORD PTR SS:[EBP-10]
0049AA87  PUSH EAX
0049AA88  MOV ECX,8
0049AA8D  MOV EDX,9
0049AA92  MOV EAX,DWORD PTR SS:[EBP-4]
0049AA95  CALL EFPP.00404CE0                    ;  取试炼码后八位P.00404
0049AA9A  LEA EDX,DWORD PTR SS:[EBP-8]
0049AA9D  MOV EAX,DWORD PTR SS:[EBP-C]
0049AAA0  CALL EFPP.0040340C                    ;  判断前八位是否都是数字40340C
0049AAA5  CMP DWORD PTR SS:[EBP-8],0
0049AAA9  JNZ SHORT EFPP.0049AB12
0049AAAB  LEA EDX,DWORD PTR SS:[EBP-8]
0049AAAE  MOV EAX,DWORD PTR SS:[EBP-10]
0049AAB1  CALL EFPP.0040340C                    ;  判断后八位是否都是数字40340C
0049AAB6  CMP DWORD PTR SS:[EBP-8],0
0049AABA  JNZ SHORT EFPP.0049AB12
0049AABC  MOV ESI,30
0049AAC1  /XOR EAX,EAX
0049AAC3  |MOV DWORD PTR SS:[EBP-8],EAX
0049AAC6  |MOV EAX,DWORD PTR SS:[EBP-4]
0049AAC9  |CALL EFPP.00404A80
0049AACE  |TEST EAX,EAX
0049AAD0  |JLE SHORT EFPP.0049AAE9
0049AAD2  |MOV EDX,1
0049AAD7  |/MOV ECX,ESI
0049AAD9  ||MOV EDI,DWORD PTR SS:[EBP-4]
0049AADC  ||CMP CL,BYTE PTR DS:[EDI+EDX-1]      ;  依次比较试炼码的每一位是否为0~9十个数字字符
0049AAE0  ||JNZ SHORT EFPP.0049AAE5
0049AAE2  ||INC DWORD PTR SS:[EBP-8]            ;  如果是,就将该数字对应的标志加1S:[EBP-8]
0049AAE5  ||INC EDX
0049AAE6  ||DEC EAX
0049AAE7  |JNZ SHORT EFPP.0049AAD7             ;  对每个数字均扫描一遍试炼码,最后标志位存放的是该数字在试炼码中出现的次数
0049AAE9  |CMP DWORD PTR SS:[EBP-8],5           ;  若同一数字在试炼码中出现次数超过5次就置出错标志
0049AAED  |JLE SHORT EFPP.0049AAF8
0049AAEF  |MOV DWORD PTR SS:[EBP-8],-1          ;  置出错标志WORD
0049AAF6  |JMP SHORT EFPP.0049AAFE
0049AAF8  |INC ESI
0049AAF9  |CMP ESI,3A                           ;  每个十进制数字字符都扫描一遍
0049AAFC  JNZ SHORT EFPP.0049AAC1
0049AAFE  CMP DWORD PTR SS:[EBP-8],0            ;  出错标志位是否有效PTR SS:[E
0049AB02  JL SHORT EFPP.0049AB12
0049AB04  MOV EAX,DWORD PTR SS:[EBP-4]
0049AB07  CALL EFPP.0049A8BC                    ;  关键call,追入0049A
0049AB0C  TEST AL,AL
0049AB0E  JE SHORT EFPP.0049AB12
0049AB10  MOV BL,1
0049AB12  XOR EAX,EAX
0049AB14  POP EDX
0049AB15  POP ECX
0049AB16  POP ECX
0049AB17  MOV DWORD PTR FS:[EAX],EDX
0049AB1A  PUSH EFPP.0049AB3C
0049AB1F  LEA EAX,DWORD PTR SS:[EBP-10]
0049AB22  MOV EDX,2
0049AB27  CALL EFPP.004047E4
0049AB2C  LEA EAX,DWORD PTR SS:[EBP-4]
0049AB2F  CALL EFPP.004047C0
0049AB34  RETN

-----------------------------8<----------------------------------

0049A8BC  PUSH EBP
0049A8BD  MOV EBP,ESP
0049A8BF  MOV ECX,6
0049A8C4  /PUSH 0
0049A8C6  |PUSH 0
0049A8C8  |DEC ECX
0049A8C9  JNZ SHORT EFPP.0049A8C4
0049A8CB  PUSH EBX
0049A8CC  PUSH ESI
0049A8CD  MOV EBX,EAX
0049A8CF  XOR EAX,EAX
0049A8D1  PUSH EBP
0049A8D2  PUSH EFPP.0049AA1A
0049A8D7  PUSH DWORD PTR FS:[EAX]
0049A8DA  MOV DWORD PTR FS:[EAX],ESP
0049A8DD  LEA EAX,DWORD PTR SS:[EBP-4]
0049A8E0  MOV DL,BYTE PTR DS:[EBX]              ;  sn[0]
0049A8E2  CALL EFPP.004049A8
0049A8E7  MOV EAX,DWORD PTR SS:[EBP-4]
0049A8EA  CALL EFPP.00408CCC
0049A8EF  MOV ESI,EAX
0049A8F1  LEA EAX,DWORD PTR SS:[EBP-8]
0049A8F4  MOV DL,BYTE PTR DS:[EBX+1]            ;  sn[1]
0049A8F7  CALL EFPP.004049A8
0049A8FC  MOV EAX,DWORD PTR SS:[EBP-8]
0049A8FF  CALL EFPP.00408CCC
0049A904  ADD ESI,EAX
0049A906  LEA EAX,DWORD PTR SS:[EBP-C]
0049A909  MOV DL,BYTE PTR DS:[EBX+2]            ;  sn[2]
0049A90C  CALL EFPP.004049A8
0049A911  MOV EAX,DWORD PTR SS:[EBP-C]
0049A914  CALL EFPP.00408CCC
0049A919  ADD ESI,EAX
0049A91B  LEA EAX,DWORD PTR SS:[EBP-10]
0049A91E  MOV DL,BYTE PTR DS:[EBX+3]            ;  sn[3]
0049A921  CALL EFPP.004049A8
0049A926  MOV EAX,DWORD PTR SS:[EBP-10]
0049A929  CALL EFPP.00408CCC
0049A92E  ADD ESI,EAX
0049A930  MOV EAX,DWORD PTR DS:[4A5678]
0049A935  CMP ESI,DWORD PTR DS:[EAX]            ;  sn[0]+sn[1]+sn[2]+sn[3]?=22
0049A937  JNZ EFPP.0049A9F7
0049A93D  LEA EAX,DWORD PTR SS:[EBP-14]
0049A940  MOV DL,BYTE PTR DS:[EBX+4]            ;  sn[4]
0049A943  CALL EFPP.004049A8
0049A948  MOV EAX,DWORD PTR SS:[EBP-14]
0049A94B  CALL EFPP.00408CCC
0049A950  MOV ESI,EAX
0049A952  LEA EAX,DWORD PTR SS:[EBP-18]
0049A955  MOV DL,BYTE PTR DS:[EBX+7]            ;  sn[7]
0049A958  CALL EFPP.004049A8
0049A95D  MOV EAX,DWORD PTR SS:[EBP-18]
0049A960  CALL EFPP.00408CCC
0049A965  ADD ESI,EAX
0049A967  LEA EAX,DWORD PTR SS:[EBP-1C]
0049A96A  MOV DL,BYTE PTR DS:[EBX+A]            ;  sn[10]
0049A96D  CALL EFPP.004049A8
0049A972  MOV EAX,DWORD PTR SS:[EBP-1C]
0049A975  CALL EFPP.00408CCC
0049A97A  ADD ESI,EAX
0049A97C  LEA EAX,DWORD PTR SS:[EBP-20]
0049A97F  MOV DL,BYTE PTR DS:[EBX+D]            ;  sn[13]
0049A982  CALL EFPP.004049A8
0049A987  MOV EAX,DWORD PTR SS:[EBP-20]
0049A98A  CALL EFPP.00408CCC
0049A98F  ADD ESI,EAX
0049A991  MOV EAX,DWORD PTR DS:[4A56AC]
0049A996  CMP ESI,DWORD PTR DS:[EAX]            ;  sn[4]+sn[7]+sn[10]+sn[13]?=30
0049A998  JNZ SHORT EFPP.0049A9F7
0049A99A  LEA EAX,DWORD PTR SS:[EBP-24]
0049A99D  MOV DL,BYTE PTR DS:[EBX+6]            ;  sn[6]
0049A9A0  CALL EFPP.004049A8
0049A9A5  MOV EAX,DWORD PTR SS:[EBP-24]
0049A9A8  CALL EFPP.00408CCC
0049A9AD  MOV ESI,EAX
0049A9AF  LEA EAX,DWORD PTR SS:[EBP-28]
0049A9B2  MOV DL,BYTE PTR DS:[EBX+9]            ;  sn[9]
0049A9B5  CALL EFPP.004049A8
0049A9BA  MOV EAX,DWORD PTR SS:[EBP-28]
0049A9BD  CALL EFPP.00408CCC
0049A9C2  ADD ESI,EAX
0049A9C4  LEA EAX,DWORD PTR SS:[EBP-2C]
0049A9C7  MOV DL,BYTE PTR DS:[EBX+C]            ;  sn[12]
0049A9CA  CALL EFPP.004049A8
0049A9CF  MOV EAX,DWORD PTR SS:[EBP-2C]
0049A9D2  CALL EFPP.00408CCC
0049A9D7  ADD ESI,EAX
0049A9D9  LEA EAX,DWORD PTR SS:[EBP-30]
0049A9DC  MOV DL,BYTE PTR DS:[EBX+F]            ;  sn[15]
0049A9DF  CALL EFPP.004049A8
0049A9E4  MOV EAX,DWORD PTR SS:[EBP-30]
0049A9E7  CALL EFPP.00408CCC
0049A9EC  ADD ESI,EAX
0049A9EE  MOV EAX,DWORD PTR DS:[4A53A4]
0049A9F3  CMP ESI,DWORD PTR DS:[EAX]            ;  sn[6]+sn[9]+sn[12]+sn[15]?=9
0049A9F5  JE SHORT EFPP.0049A9FB
0049A9F7  XOR EAX,EAX
0049A9F9  JMP SHORT EFPP.0049A9FD
0049A9FB  MOV AL,1
0049A9FD  MOV EBX,EAX
0049A9FF  XOR EAX,EAX
0049AA01  POP EDX
0049AA02  POP ECX
0049AA03  POP ECX
0049AA04  MOV DWORD PTR FS:[EAX],EDX
0049AA07  PUSH EFPP.0049AA21
0049AA0C  LEA EAX,DWORD PTR SS:[EBP-30]
0049AA0F  MOV EDX,0C
0049AA14  CALL EFPP.004047E4
0049AA19  RETN
0049AA1A  JMP EFPP.004041C4
0049AA1F  JMP SHORT EFPP.0049AA0C
0049AA21  MOV EAX,EBX
0049AA23  POP ESI
0049AA24  POP EBX
0049AA25  MOV ESP,EBP
0049AA27  POP EBP
0049AA28  RETN

写个函数注册一下:)

void register(void)
{
  char regcode[17];
  int i,flag[10];
  randomize();
  do
  {
    for(i=0;i<10;i++)
      flag[i]=0;
    for(i=0;i<16;i++)
    {
      do
      {
        regcode[i]=random(10);
      }
      while(flag[regcode[i]]>=5);
      flag[regcode[i]]++;
    }
  }
  while(regcode[0]+regcode[1]+regcode[2]+regcode[3]!=22||
    regcode[4]+regcode[7]+regcode[10]+regcode[13]!=30||
    regcode[6]+regcode[9]+regcode[12]+regcode[15]!=9);
  for(i=0;i<16;i++)
    regcode[i]+=0x30;
  regcode[16]=' ';
}


注册信息保存:
[HKEY_LOCAL_MACHINESOFTWAREEasy File & Folder ProtectorSettings]
"Inf1"="5604191e1ed36dca00"
"Inf2"="545d5f0d156e091b02cac21dd653c153"


                                           cyclotron
                                    [BCG][DFCG][FCG][OCN]
                                        2004.1.17