飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 3700|回复: 1

[原创] Super Cleaner v2.96 简单算法

[复制链接]
  • TA的每日心情

    2016-6-2 20:34
  • 签到天数: 10 天

    [LV.3]偶尔看看II

    发表于 2007-12-2 13:23:26 | 显示全部楼层 |阅读模式
    Super Cleaner v2.96是帮助用户清洗他们的计算机硬盘内不必要的文件的程序。它能扫描你的系统让你选择不再需要的文件进行删除。并能备份文件已避免你误删除有用的文件,此备份功能将不必要的文件扔进再循环箱,这样可以让你再必要的时候恢复信息。
    老外软件有汉化版,这个小工具还不错的 http://www.newhua.com/soft/6433.htm

    OD载入 BP MessageBoxA 下断很快来到关键
    004256E9     55                push ebp
    004256EA     50                push eax
    004256EB     C64424 18 00      mov byte ptr ss:[esp+18],0
    004256F0     E8 8BAA0000       call SuperCle.00430180
    004256F5     8D5C24 18         lea ebx,dword ptr ss:[esp+18]
    004256F9     E8 B2000000       call SuperCle.004257B0                  ; 算法CALL,跟进
    004256FE     56                push esi
    004256FF     8BFB              mov edi,ebx
    00425701     E8 0AFFFFFF       call SuperCle.00425610                  ; 真假码比较
    00425706     83C4 10           add esp,10
    00425709     85C0              test eax,eax
    0042570B     74 05             je short SuperCle.00425712              ; 不能跳
    //////// 跟进算法CALL ////////
    004257B0     81EC 04010000     sub esp,104
    004257B6     A1 44504400       mov eax,dword ptr ds:[445044]
    004257BB     33C4              xor eax,esp
    004257BD     898424 00010000   mov dword ptr ss:[esp+100],eax
    004257C4     55                push ebp
    004257C5     56                push esi
    004257C6     68 FF000000       push 0FF
    004257CB     8D4424 0D         lea eax,dword ptr ss:[esp+D]
    004257CF     6A 00             push 0
    004257D1     50                push eax
    004257D2     C64424 14 00      mov byte ptr ss:[esp+14],0
    004257D7     E8 A4A90000       call SuperCle.00430180
    004257DC     83C4 0C           add esp,0C
    004257DF     57                push edi
    004257E0     FF15 A8D24300     call dword ptr ds:[<&KERNEL32.lstrlenA>>; kernel32.lstrlenA
    004257E6     8BF0              mov esi,eax                           //逐位取用户名长度入eax   
    004257E8     33C9              xor ecx,ecx
    004257EA     33C0              xor eax,eax
    004257EC     85F6              test esi,esi
    004257EE     7E 15             jle short SuperCle.00425805
    004257F0     8B15 8C654400     mov edx,dword ptr ds:[44658C]           ; ds:[0044658C]=00000026
    004257F6     0FBE2C07          movsx ebp,byte ptr ds:[edi+eax]         //逐位取用户名ASCII码
    004257FA     03EA              add ebp,edx                             ; 相加
    004257FC     83C0 01           add eax,1
    004257FF     03CD              add ecx,ebp
    00425801     3BC6              cmp eax,esi                             //再累加
    00425803   ^ 7C F1             jl short SuperCle.004257F6              
    00425805     51                push ecx
    00425806     68 D01A4400       push SuperCle.00441AD0                  ; ASCII "%ld-" 输入格式
    0042580B     53                push ebx
    0042580C     FF15 8CD44300     call dword ptr ds:[<&USER32.wsprintfA>] ; USER32.wsprintfA
    00425812     83C4 0C           add esp,0C
    00425815     33C9              xor ecx,ecx
    00425817     33C0              xor eax,eax
    00425819     85F6              test esi,esi
    0042581B     7E 16             jle short SuperCle.00425833
    0042581D     8B15 90654400     mov edx,dword ptr ds:[446590]           ; ds:[00446590]=00000034
    00425823     0FBE2C07          movsx ebp,byte ptr ds:[edi+eax]         //逐位取用户名ASCII码
    00425827     0FAFEA            imul ebp,edx                             ; 相乘
    0042582A     83C0 01           add eax,1
    0042582D     03CD              add ecx,ebp
    0042582F     3BC6              cmp eax,esi                             //再累加
    00425831   ^ 7C F0             jl short SuperCle.00425823
    00425833     51                push ecx
    00425834     8D4C24 0C         lea ecx,dword ptr ss:[esp+C]
    00425838     68 D01A4400       push SuperCle.00441AD0                  ; ASCII "%ld-"
    0042583D     51                push ecx
    0042583E     FF15 8CD44300     call dword ptr ds:[<&USER32.wsprintfA>] ; USER32.wsprintfA
    00425844     83C4 0C           add esp,0C
    00425847     8D5424 08         lea edx,dword ptr ss:[esp+8]
    0042584B     52                push edx
    0042584C     53                push ebx
    0042584D     FF15 B4D24300     call dword ptr ds:[<&KERNEL32.lstrcatA>>; kernel32.lstrcatA
    00425853     33C9              xor ecx,ecx
    00425855     33C0              xor eax,eax
    00425857     85F6              test esi,esi
    00425859     7E 15             jle short SuperCle.00425870
    0042585B     8B15 94654400     mov edx,dword ptr ds:[446594]           ; ds:[00446594]=0000000C
    00425861     0FBE2C07          movsx ebp,byte ptr ds:[edi+eax]         //逐位取用户名ASCII码
    00425865     03EA              add ebp,edx                             ; 相加
    00425867     83C0 01           add eax,1
    0042586A     03CD              add ecx,ebp
    0042586C     3BC6              cmp eax,esi                             //再累加
    0042586E   ^ 7C F1             jl short SuperCle.00425861
    00425870     51                push ecx
    00425871     8D4424 0C         lea eax,dword ptr ss:[esp+C]
    00425875     68 D01A4400       push SuperCle.00441AD0                  ; ASCII "%ld-"
    0042587A     50                push eax
    0042587B     FF15 8CD44300     call dword ptr ds:[<&USER32.wsprintfA>] ; USER32.wsprintfA
    00425881     83C4 0C           add esp,0C
    00425884     8D4C24 08         lea ecx,dword ptr ss:[esp+8]
    00425888     51                push ecx
    00425889     53                push ebx
    0042588A     FF15 B4D24300     call dword ptr ds:[<&KERNEL32.lstrcatA>>; kernel32.lstrcatA
    00425890     33C9              xor ecx,ecx
    00425892     33C0              xor eax,eax
    00425894     85F6              test esi,esi
    00425896     7E 18             jle short SuperCle.004258B0
    00425898     8B15 98654400     mov edx,dword ptr ds:[446598]           ; ds:[446598]=0000000E
    0042589E     8BFF              mov edi,edi
    004258A0     0FBE2C07          movsx ebp,byte ptr ds:[edi+eax]         //逐位取用户名ASCII码
    004258A4     0FAFEA            imul ebp,edx                             ; 相乘
    004258A7     83C0 01           add eax,1
    004258AA     03CD              add ecx,ebp                             //再累加
    004258AC     3BC6              cmp eax,esi
    004258AE   ^ 7C F0             jl short SuperCle.004258A0
    004258B0     51                push ecx
    004258B1     8D5424 0C         lea edx,dword ptr ss:[esp+C]
    004258B5     68 D81A4400       push SuperCle.00441AD8                  ; ASCII "%ld"
    004258BA     52                push edx
    004258BB     FF15 8CD44300     call dword ptr ds:[<&USER32.wsprintfA>] ; USER32.wsprintfA
    004258C1     83C4 0C           add esp,0C
    004258C4     8D4424 08         lea eax,dword ptr ss:[esp+8]
    004258C8     50                push eax
    004258C9     53                push ebx
    004258CA     FF15 B4D24300     call dword ptr ds:[<&KERNEL32.lstrcatA>>; kernel32.lstrcatA
    004258D0     8B8C24 08010000   mov ecx,dword ptr ss:[esp+108]
    004258D7     5E                pop esi
    004258D8     5D                pop ebp
    004258D9     33CC              xor ecx,esp
    004258DB     E8 0C540000       call SuperCle.0042ACEC
    004258E0     81C4 04010000     add esp,104
    004258E6     C3                retn

    注册信息在HKEY_CURRENT_USER\Software\SuperCleaner\Registration
    可以看到算法非常简单,四个简单的循环得到的结果连接起来,如VB注册机
    Private Sub Command1_Click()
    Dim i, edx, SN1, SN2, SN3, SN4 As Integer

    For i = 1 To Len(RegName.Text)
        edx = 38
        SN1 = SN1 + Asc(Mid(RegName.Text, i)) + edx
    Next i
    For i = 1 To Len(RegName.Text)
        edx = 52
        SN2 = SN2 + Asc(Mid(RegName.Text, i)) * edx
    Next i
    For i = 1 To Len(RegName.Text)
        edx = 12
        SN3 = SN3 + Asc(Mid(RegName.Text, i)) + edx
    Next
    For i = 1 To Len(RegName.Text)
        edx = 14
        SN4 = SN4 + Asc(Mid(RegName.Text, i)) * edx
    Next

    RegCode.Text = SN1 & "-" & SN2 & "-" & SN3 & "-" & SN4
    End Sub
    --------------------------------------
    一组注册码
    Name:Bbs.ChinaPYG.CoM
    Code:1957-70148-1541-18886

    注册.rar

    291 Bytes, 下载次数: 8, 下载积分: 飘云币 -2 枚

    评分

    参与人数 1威望 +20 收起 理由
    kiss-you + 20 您的贴子很精彩,希望能再次分享!

    查看全部评分

    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-12-3 12:44:03 | 显示全部楼层
    支持+学习~~~
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表