文章导航PC6首页软件下载单机游戏安卓资源苹果资源

pc软件新闻网络操作系统办公工具编程服务器软件评测

安卓新闻资讯应用教程刷机教程安卓游戏攻略tv资讯深度阅读综合安卓评测

苹果ios资讯苹果手机越狱备份教程美化教程ios软件教程mac教程

单机游戏角色扮演即时战略动作射击棋牌游戏体育竞技模拟经营其它游戏游戏工具

网游cf活动dnf活动lol周免英雄lol礼包

手游最新动态手游评测手游活动新游预告手游问答

您的位置:首页精文荟萃破解文章 → 磁盘清理工具(EasyClean) V1.50 Build 0806

磁盘清理工具(EasyClean) V1.50 Build 0806

时间:2004/10/15 0:55:00来源:本站整理作者:蓝点我要评论(0)

 磁盘清理工具(EasyClean) V1.50 Build 0806

下载地址:http://www.skycn.com/download.php?id=7960&url=http://lnhttp.skycn.net/down/ez150.zip

软件介绍:快速磁盘垃圾扫描清理软件,本着简单、易用、快速的原则。全面开放扫描控制,用户可以自定义扫描子类以及扫描线程的数量、优先级。用户可以根据自己机器的配置,修改需要,达到最佳的搜索效果。

难度:中

工具:AspackDie,TRW2000(1.22),Winasm

为了响应组织号召,特此发表一篇重启验证注册码的破解实例,希望对大家有所帮助。(本不想拿国产软件开刀的,只不过在论坛里看见了有弟兄贴出这个软件来,况且机会难得,我特地去找此类重启验证的软件很麻烦了。上帝保佑)

个人经验小结: 本人破解重启验证注册的软件不是很多,但也偶有心得。对于此类软件,要不就是把注册信息存放到注册表中,重启时验证;要不就是把注册信息存放入ini或dat之类的文件中,重启时验证。对此可以用winasm反汇编后查找相关的字符串参考以获得着手点。如:注册信息存放到注册表:HKEY_USERS\.DEFAULT\Software\ABC\regcode中,则可查找“regcode”之类的字符串参考,然后在相关代码处设置断点,在软件重启时就可跟踪调试了。若注册信息放在abc.ini文件中也可
查找相关的信息,设置断点调试。
还可以设置条件断点,相关信息请查看softice和TRW2000的帮助。

好了废话少说,开工
用户ID:Stoby[DFCG]                            (注册ID不得少于8个字符)
注册码:1234-5678-0987-6543        (注册码格式可以从winasm中看到)

* Possible StringData Ref from Data Obj ->"RegCode"
                                 |
:0040C59A 6844444500              push 00454444
:0040C59F 8D4C2414                lea ecx, dword ptr [esp+14]

* Possible StringData Ref from Data Obj ->"Option"
                                 |
:0040C5A3 684C444500              push 0045444C
:0040C5A8 51                      push ecx
:0040C5A9 8BCE                    mov ecx, esi
:0040C5AB E8DA0A0300              call 0043D08A
:0040C5B0 50                      push eax
:0040C5B1 8D4C2408                lea ecx, dword ptr [esp+08]
:0040C5B5 C644241C03              mov [esp+1C], 03
:0040C5BA E8435E0200              call 00432402
:0040C5BF 8D4C240C                lea ecx, dword ptr [esp+0C]
:0040C5C3 C644241801              mov [esp+18], 01
:0040C5C8 E8FC5C0200              call 004322C9
:0040C5CD 8B542408                mov edx, dword ptr [esp+08]          〈==用户注册名
:0040C5D1 8B42F8                  mov eax, dword ptr [edx-08]          〈==注册名长度
:0040C5D4 85C0                    test eax, eax                        〈==是否为空
:0040C5D6 744F                    je 0040C627 *********跳了就over了
:0040C5D8 8B442404                mov eax, dword ptr [esp+04]          〈==用户输入的注册码
:0040C5DC 8B40F8                  mov eax, dword ptr [eax-08]          〈==注册码长度
:0040C5DF 85C0                    test eax, eax                        〈==是否为空    
:0040C5E1 7444                    je 0040C627*********跳了就over了
:0040C5E3 8D4C2404                lea ecx, dword ptr [esp+04]
:0040C5E7 8D542408                lea edx, dword ptr [esp+08]
:0040C5EB 51                      push ecx
:0040C5EC 52                      push edx
:0040C5ED 8BCE                    mov ecx, esi
:0040C5EF E86C000000              call 0040C660   ***************就这了,跟入call中                
:0040C5F4 8D4C2404                lea ecx, dword ptr [esp+04]
:0040C5F8 8BF0                    mov esi, eax
:0040C5FA C644241800              mov [esp+18], 00
:0040C5FF E8C55C0200              call 004322C9
:0040C604 8D4C2408                lea ecx, dword ptr [esp+08]

 


* Referenced by a CALL at Address:
|:0040C5EF  
|
:0040C660 6AFF                    push FFFFFFFF
:0040C662 686B154400              push 0044156B
:0040C667 64A100000000            mov eax, dword ptr fs:[00000000]
:0040C66D 50                      push eax
:0040C66E 64892500000000          mov dword ptr fs:[00000000], esp
:0040C675 81EC4C080000            sub esp, 0000084C
:0040C67B 8B84245C080000          mov eax, dword ptr [esp+0000085C]
:0040C682 53                      push ebx
:0040C683 55                      push ebp
:0040C684 56                      push esi
:0040C685 8B28                    mov ebp, dword ptr [eax]
:0040C687 57                      push edi
:0040C688 894C2418                mov dword ptr [esp+18], ecx
:0040C68C 8B5DF8                  mov ebx, dword ptr [ebp-08]
:0040C68F 83FB08                  cmp ebx, 00000008
:0040C692 0F8CA9010000            jl 0040C841
:0040C698 B907000000              mov ecx, 00000007            〈==注意,令ecx=0x7
:0040C69D 33C0                    xor eax, eax
:0040C69F 8D7C2420                lea edi, dword ptr [esp+20]
:0040C6A3 894C243C                mov dword ptr [esp+3C], ecx******令[esp+3C]为0x7
:0040C6A7 C744241C00000000        mov [esp+1C], 00000000
:0040C6AF C744244008000000        mov [esp+40], 00000008--------------------
:0040C6B7 F3                      repz                             |
:0040C6B8 AB                      stosd                            |    
:0040C6B9 C744244403000000        mov [esp+44], 00000003
:0040C6C1 C744244804000000        mov [esp+48], 00000004         这期间的赋值和上面的0x7要注意
:0040C6C9 C744244C06000000        mov [esp+4C], 00000006           |
:0040C6D1 C744245002000000        mov [esp+50], 00000002           |
:0040C6D9 C744245401000000        mov [esp+54], 00000001           |
:0040C6E1 C744245805000000        mov [esp+58], 00000005--------------------

****************************************令S={7,8,3,4,6,2,1,5}************************************
:0040C6E9 C7842458080000B2B8E905  mov dword ptr [esp+00000858], 05E9B8B2
:0040C6F4 8D44245C                lea eax, dword ptr [esp+5C]
:0040C6F8 B9FF010000              mov ecx, 000001FF

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040C70D(C)
|
:0040C6FD 8B5004                  mov edx, dword ptr [eax+04]
:0040C700 83C004                  add eax, 00000004
:0040C703 81F217EDAB04            xor edx, 04ABED17
:0040C709 49                      dec ecx
:0040C70A 8950FC                  mov dword ptr [eax-04], edx
:0040C70D 75EE                    jne 0040C6FD
:0040C70F 8D44243C                lea eax, dword ptr [esp+3C]
:0040C713 B908000000              mov ecx, 00000008

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040C722(C)
|
:0040C718 8B38                    mov edi, dword ptr [eax]
:0040C71A 83C004                  add eax, 00000004
:0040C71D 4F                      dec edi
:0040C71E 49                      dec ecx************************令S中每个元素都减1的到新的集合S'={6,7,2,3,5,1,0,4}
:0040C71F 8978FC                  mov dword ptr [eax-04], edi
:0040C722 75F4                    jne 0040C718
:0040C724 B908000000              mov ecx, 00000008
:0040C729 8D74243C                lea esi, dword ptr [esp+3C]
:0040C72D 8D7C245C                lea edi, dword ptr [esp+5C]
:0040C731 33C0                    xor eax, eax
:0040C733 F3                      repz
:0040C734 A5                      movsd

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040C740(C)
|
:0040C735 8A0C28                  mov cl, byte ptr [eax+ebp]
:0040C738 884C0410                mov byte ptr [esp+eax+10], cl
:0040C73C 40                      inc eax
:0040C73D 83F808                  cmp eax, 00000008
:0040C740 7CF3                    jl 0040C735
:0040C742 83FB08                  cmp ebx, 00000008
:0040C745 7E24                    jle 0040C76B
:0040C747 BE08000000              mov esi, 00000008                         〈==esi为0x8,计数器1

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040C769(C)
|
:0040C74C 8BC6                    mov eax, esi
:0040C74E 2507000080              and eax, 80000007
:0040C753 7905                    jns 0040C75A
:0040C755 48                      dec eax
:0040C756 83C8F8                  or eax, FFFFFFF8
:0040C759 40                      inc eax                    〈==eax为计数器2,且初值为1

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040C753(C)
|
:0040C75A 8A1428                  mov dl, byte ptr [eax+ebp]      〈==取用户ID首字母    
:0040C75D 8A0C2E                  mov cl, byte ptr [esi+ebp]      〈==取用户ID第8个字母
:0040C760 32CA                    xor cl, dl      〈==两者异或
:0040C762 46                      inc esi         〈==计数器1加一
:0040C763 3BF3                    cmp esi, ebx     〈==比较是否比较完用户ID号长度,ebx为用户ID号长度
:0040C765 884C0410                mov byte ptr [esp+eax+10], cl   〈==保存运算结果
:0040C769 7CE1                    jl 0040C74C       〈==没比较完则继续

令原来的用户ID经过运算变成了用户ID(2)

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040C745(C)
|
:0040C76B 33C0                    xor eax, eax

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040C786(C)
|
:0040C76D 8B4C045C                mov ecx, dword ptr [esp+eax+5C]   〈==把S'中的元素分别送入ecx
:0040C771 83C004                  add eax, 00000004    〈==eax相当与计数器,给eax加4,因为S'中每个元素地址都相差4,这样下次接着取下一个元素
:0040C774 0FBE4C0C10              movsx ecx, byte ptr [esp+ecx+10]  将用户ID(2)中的第ecx个元素ASCII分别送入ecx (注:[esp+ecx+10]中的ecx即为S'中的元素,所以S'中元素的作用是用来取地址偏移量的;[esp+10]指向用户ID(2)首地址)
:0040C779 81F1AE000000            xor ecx, 000000AE          ecx与0xAE异或****(算法关键之处)
:0040C77F 83F820                  cmp eax, 00000020      比较S'中的元素是否取完
:0040C782 894C0418                mov dword ptr [esp+eax+18], ecx 保存运算结果result
:0040C786 7CE5                    jl 0040C76D


好了,下面是将运算结果每4个一组加上“-”形成注册码,过程省略。

算法总结:

先将集合S={7,8,3,4,6,2,1,5}各元素分别减1得到集合S'={6,7,2,3,5,1,0,4}
将用户ID号的第8个字母ASCII与第1个字母ASCII异或,第9个字母和第2个字母ASCII异或..............
直到第(用户ID号长度)个字母与第(用户ID号长度-8)个字母异或完。使得用户ID号经过运算变成了用户ID号(2)
将用户ID号(2)中的第S'[i]个字符的ASCII与0xAE异或结果放入result中,这样直到取完S'中的元素。
最后把result每4个一组加上“-”即为注册码。

用户ID:Stoby[DFCG]
注册码:EAE8-9CCC-F59D-BED7

最近想学用keymake做注册机(非内存注册机),可是还不是很了解,有哪位大哥会的教兄弟一下。谢了!(哪为大哥把这个软件用keymake写个注册机?(非内存注册机)教教我?)


    
    
     
    
    
     

相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 去除winrar注册框方法

最新文章 比特币病毒怎么破解 比去除winrar注册框方法 华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)通过Access破解MSSQL获得数据

人气排行 华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)qq相册密码破解方法去除winrar注册框方法(适应任何版本)怎么用手机破解收费游戏华为无线猫HG522破解如何给软件脱壳基础教程