首页
社区
课程
招聘
[旧帖] [原创]破解优化大师v7.99专业版(申请邀请码) 0.00雪花
发表于: 2010-2-10 01:15 2734

[旧帖] [原创]破解优化大师v7.99专业版(申请邀请码) 0.00雪花

2010-2-10 01:15
2734
【破解的软件】:Windows优化大师[专业版] 7.99.10.101

【下载地址】:  自己搜索下载

【加壳方式】:   没壳

【使用工具】:  OllyICE

【详细过程】:
说是原创 其实是看了http://bbs.pediy.com/showthread.php?t=106082这个帖子以及cjchome大大的回复整理了一下 第一次搞 还请各位大牛多多指点-,-
主要是不用每次运行都注册一下了
下面开始
直接OD载入WoptiUtilities_CN.exe
下消息断点 bp MessageBoxA,SHIFT+F9运行。
来到主界面,点 注册 打开注册框
输入注册名和随便的注册码

点 注册。

被OD断下。

77D507EA >    8BFF          mov     edi, edi
77D507EC  /.  55            push    ebp
77D507ED  |.  8BEC          mov     ebp, esp
77D507EF  |.  833D BC14D777>cmp     dword ptr [77D714BC], 0
77D507F6  |.  74 24         je      short 77D5081C
77D507F8  |.  64:A1 1800000>mov     eax, dword ptr fs:[18]
77D507FE  |.  6A 00         push    0
77D50800  |.  FF70 24       push    dword ptr [eax+24]
77D50803  |.  68 241BD777   push    77D71B24
77D50808  |.  FF15 C412D177 call    dword ptr [<&KERNEL32.Interlocke>;  kernel32.InterlockedCompareExchange
77D5080E  |.  85C0          test    eax, eax
77D50810  |.  75 0A         jnz     short 77D5081C
77D50812  |.  C705 201BD777>mov     dword ptr [77D71B20], 1
77D5081C  |>  6A 00         push    0                                ; /LanguageID = 0 (LANG_NEUTRAL)
77D5081E  |.  FF75 14       push    dword ptr [ebp+14]               ; |Style
77D50821  |.  FF75 10       push    dword ptr [ebp+10]               ; |Title
77D50824  |.  FF75 0C       push    dword ptr [ebp+C]                ; |Text
77D50827  |.  FF75 08       push    dword ptr [ebp+8]                ; |hOwner
77D5082A  |.  E8 2D000000   call    MessageBoxExA                    ; \MessageBoxExA
77D5082F  |.  5D            pop     ebp
77D50830  \.  C2 1000       retn    10

然后在堆栈中 选择第一个 反汇编窗口跟随(ENTER)

来到

006B81CB   > \8B45 FC       mov     eax, dword ptr [ebp-4]
然后向上找  找到
006B818F   > \6A 10         push    10


我们可以看到 跳转是来自 006B7FA8

好的 现在向上找到它。

006B7FA8     /0F85 E1010000 jnz     006B818F

这个是关键跳,如果跳下去就会提示你注册失败。

你可以把它改为

006B7FA8     /0F85 E1010000 jz     006B818F

就注册成功了。

但是这个程序会重启验证,所以这样改之后 每次打开程序都要注册一下。很麻烦。

我也是改了之后才知道的。

所以我们还要继续找

-------------------------------------------------------------------------------------------

006B7F9E   .  E8 B127FAFF   call    0065A754                         ;  关键CALL
006B7FA3      3D B2000000   cmp     eax, 0B2                         ;  比较
006B7FA8      0F85 E1010000 jnz     006B818F                         ;  跳了就完蛋。

跳转上面的CALL 肯定是关键CALL。

分析代码可以发现 如果EAX=0B2 那么就不跳。

那么CALL里面肯定会获得注册信息 所以我们跟进这个CALL。

来到。

0065A754  /$  8BC8          mov     ecx, eax
0065A756  |.  B2 01         mov     dl, 1
0065A758  |.  A1 74A26500   mov     eax, dword ptr [65A274]
0065A75D  |.  E8 C60A0000   call    0065B228
0065A762  |.  8B15 506A7F00 mov     edx, dword ptr [7F6A50]          ;  WoptiUti.0080E550
0065A768  |.  8B12          mov     edx, dword ptr [edx]
0065A76A  |.  8950 1C       mov     dword ptr [eax+1C], edx
0065A76D  |.  C740 18 7C1B7>mov     dword ptr [eax+18], 00791B7C
0065A774  |.  C605 C4CE8000>mov     byte ptr [80CEC4], 1
0065A77B  |.  E8 F030DDFF   call    0042D870
0065A780  |>  B8 E8030000   /mov     eax, 3E8
0065A785  |.  E8 9E93DAFF   |call    00403B28
0065A78A  |.  A1 186A7F00   |mov     eax, dword ptr [7F6A18]
0065A78F  |.  8B00          |mov     eax, dword ptr [eax]
0065A791  |.  E8 EEDAE3FF   |call    00498284
0065A796  |.  803D C4CE8000>|cmp     byte ptr [80CEC4], 0
0065A79D  |.^ 75 E1         \jnz     short 0065A780
0065A79F  |.  A1 C8CE8000   mov     eax, dword ptr [80CEC8]
0065A7A4  \.  C3            retn

我们可以发现 在RETN上 程序给EAX赋值了 值就是 80CEC8这个地址的。

我们可以直接把

0065A79F  |.  A1 C8CE8000   mov     eax, dword ptr [80CEC8]
改成

0065A79F  |.  A1 C8CE8000   mov     eax, 0B2

不叫程序把内存80CEC8的值赋给EAX

我们直接给EAX值 为0B2

-----------------------------------------------------------------------------------------------------

也可以

选择 0065A79F  |.  A1 C8CE8000   mov     eax, dword ptr [80CEC8]  这个指令

右键-》数据窗口中跟随-》内存地址。

下内存写入断点。



F9运行。

被OD断下。

0065B250      C705 C8CE8000>mov     dword ptr [80CEC8], 0AE
0065B25A  |.  8D55 FC       lea     edx, dword ptr [ebp-4]
0065B25D  |.  8BC6          mov     eax, esi
0065B25F  |.  E8 8CFDFFFF   call    0065AFF0
0065B264  |.  8B55 FC       mov     edx, dword ptr [ebp-4]
0065B267  |.  8D47 40       lea     eax, dword ptr [edi+40]
0065B26A  |.  E8 7DA2DAFF   call    004054EC

我们可以看到第一句。

内存地址80CEC8 被赋值了 0AE。

上面我们说过 是通过

006B7FA3      3D B2000000   cmp     eax, 0B2

判断 EAX是不是等于0B2来决定是不是跳的

这里内存80CEC8(也就是EAX)被赋值=0AE了

所以 后面就跳到注册失败了。

那么我们可以知道 如果80CEC8被赋值0B2。那么就说明程序是注册过的

就不会再提示你注册按钮。

从而达到不需要每次运行都要注册的目的。

好了现在我们把

0065B250      C705 C8CE8000>mov     dword ptr [80CEC8], 0AE

改成

0065B250      C705 C8CE8000>mov     dword ptr [80CEC8], 0B2

让程序被默认为以注册过了的。

好了修改之后保存就OK了.


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 0
支持
分享
最新回复 (27)
雪    币: 26
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
不错 学习了 支持楼主
2010-2-10 21:26
0
雪    币: 2290
活跃值: (2180)
能力值: (RANK:400 )
在线值:
发帖
回帖
粉丝
3
我是新人,LZ厉害了。学习了
2010-2-10 21:43
0
雪    币: 28
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
下内存访问断点那个方法,LZ你怎么断下来的?我怎么不可以呢?
2010-2-11 09:15
0
雪    币: 8
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
我也遇到同样的问题
2010-2-11 11:19
0
雪    币: 22
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
选择指令 右键-》数据窗口中跟随-》内存地址
然后再HEX里选择 AE 00 00 00
下内存写入断点
我可以用啊=。= 不知道什么情况
2010-2-11 16:47
0
雪    币: 348
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
这个破解方法 08年都有公开的视频教程了
2010-2-11 23:56
0
雪    币: 197
活跃值: (17)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
6#已经解释了,不知解决的如何??
2010-2-12 11:17
0
雪    币: 1424
活跃值: (122)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
楼主很强啊!学习了。
2010-2-12 20:56
0
雪    币: 30
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
楼主好强大啊,学习学习一下
2010-2-12 21:32
0
雪    币: 40
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
以前一直用优化大师的。现在都用360了
2010-2-12 21:55
0
雪    币: 64
活跃值: (31)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
LZ厉害了。学习了
2010-2-24 18:57
0
雪    币: 18
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
看不懂,楼主好强呀
2010-2-24 21:50
0
雪    币: 5
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
近来学习 的,,
2010-2-24 22:16
0
雪    币: 243
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
楼主厉害
学习了
2010-2-24 22:39
0
雪    币: 7
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
相关的东西还不是很熟悉 学习一下
2010-2-24 23:04
0
雪    币: 21
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
好帖,学习了。
2010-2-25 09:18
0
雪    币: 5
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
高人,学习学习!!!
2010-3-6 21:57
0
雪    币: 109
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
楼主强大菜鸟学习了
2010-3-6 22:28
0
雪    币: 30
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
nice work,thanks
2010-3-7 11:29
0
雪    币: 6
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
谢谢楼主提供。学习了
2010-3-7 12:39
0
雪    币: 46
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
谢谢楼主提供。学习了
2010-3-7 14:52
0
雪    币: 228
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
学习了,咋都比我强呢
努力啊
2010-3-8 09:31
0
雪    币: 3
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
新手 学习下
2010-3-10 17:49
0
雪    币: 23
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
学习了 !!!
2010-3-10 18:28
0
游客
登录 | 注册 方可回帖
返回
//