首页
社区
课程
招聘
[分享]AudioRight Recorder 2.0破解过程
发表于: 2004-12-27 14:24 3492

[分享]AudioRight Recorder 2.0破解过程

2004-12-27 14:24
3492
作者:朱永哲
目标:AudioRight production(Recorder,Converter,Ripper,Burner) V2.0
使用工具:softice for win2000,wdasm8.9
破解方法:暴力
难度:中级

开始了,打开softice设断点为 bpx messageboxa,再运行AudioRight Recorder 2.0。
程序运行完以后,它会让你注册,不注册会限制你的录音时间(1分钟)。
长话短说,它是用ARServiceBar.dll来判断你是否注册。
而且使用过程当中有4次检查,都是调用call 1000c220子程序。
如果你输入错eax=00000000,你输入对eax=00000001。
所以在1000c220子程序里面把eax强行转换成00000001就搞定了。

1次检查-------------------------------------------------------------------------------------
:1000BBC7 8B0DC09E0510            mov ecx, dword ptr [10059EC0]
:1000BBCD 894C2404                mov dword ptr [esp+04], ecx
:1000BBD1 8B96FC1D0000            mov edx, dword ptr [esi+00001DFC]
:1000BBD7 8BCE                    mov ecx, esi
:1000BBD9 52                      push edx
:1000BBDA C744242C00000000        mov [esp+2C], 00000000
:1000BBE2 E839060000              call 1000C220   ***************
:1000BBE7 85C0                    test eax, eax
:1000BBE9 7466                    je 1000BC51

* Possible Reference to String Resource ID=00205: "This product is licensed to:"
                                  |
:1000BBEB 68CD000000              push 000000CD
:1000BBF0 8D4C2408                lea ecx, dword ptr [esp+08]
:1000BBF4 E880890200              call 10034579
:1000BBF9 8D442404                lea eax, dword ptr [esp+04]
:1000BBFD 68849A0510              push 10059A84
:1000BC02 8D4C2410                lea ecx, dword ptr [esp+10]

..................................

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:1000BBE9(C)
|
:1000BC51 8B86FC1D0000            mov eax, dword ptr [esi+00001DFC]
:1000BC57 48                      dec eax
:1000BC58 83F803                  cmp eax, 00000003
:1000BC5B 772A                    ja 1000BC87
:1000BC5D FF2485C0BC0010          jmp dword ptr [4*eax+1000BCC0]

* Possible Reference to String Resource ID=00202: "This is a trial version of AudioRight Converter. You only ca"
                                  |
:1000BC64 68CA000000              push 000000CA
:1000BC69 EB13                    jmp 1000BC7E

2次检查--------------------------------------------------------------------------------------

* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:1000C196(C), :1000C1B7(C)
|
:1000C1BC 8B442448                mov eax, dword ptr [esp+48]
:1000C1C0 8BCF                    mov ecx, edi
:1000C1C2 50                      push eax
:1000C1C3 E858000000              call 1000C220   *******************
:1000C1C8 8D4C2414                lea ecx, dword ptr [esp+14]
:1000C1CC 8BF0                    mov esi, eax
:1000C1CE C644243802              mov [esp+38], 02
:1000C1D3 E8743C0200              call 1002FE4C
:1000C1D8 6801000080              push 80000001

3次检查---------------------------------------------------------------------------------------

:1000E69D 0FBF8694150000          movsx eax, word ptr [esi+00001594]
:1000E6A4 50                      push eax
:1000E6A5 8D4C2408                lea ecx, dword ptr [esp+08]
:1000E6A9 C78424181E000000000000  mov dword ptr [esp+00001E18], 00000000
:1000E6B4 E867DBFFFF              call 1000C220   *******************
:1000E6B9 8BF0                    mov esi, eax
:1000E6BB 8D8C24081E0000          lea ecx, dword ptr [esp+00001E08]
:1000E6C2 C78424141E000008000000  mov dword ptr [esp+00001E14], 00000008
:1000E6CD E87A170200              call 1002FE4C
:1000E6D2 8D8C24041E0000          lea ecx, dword ptr [esp+00001E04]
:1000E6D9 C68424141E000007        mov byte ptr [esp+00001E14], 07
:1000E6E1 E866170200              call 1002FE4C

4次检查----------------------------------------------------------------------------------------

:1000E7B2 6A00                    push 00000000
:1000E7B4 8D4C2408                lea ecx, dword ptr [esp+08]
:1000E7B8 E883D1FFFF              call 1000B940
:1000E7BD 0FBF8694150000          movsx eax, word ptr [esi+00001594]
:1000E7C4 50                      push eax
:1000E7C5 8D4C2408                lea ecx, dword ptr [esp+08]
:1000E7C9 C78424181E000000000000  mov dword ptr [esp+00001E18], 00000000
:1000E7D4 E847DAFFFF              call 1000C220   *******************
:1000E7D9 85C0                    test eax, eax
:1000E7DB 0F849C000000            je 1000E87D
:1000E7E1 8D8C24081E0000          lea ecx, dword ptr [esp+00001E08]
:1000E7E8 C78424141E000008000000  mov dword ptr [esp+00001E14], 00000008
:1000E7F3 E854160200              call 1002FE4C
:1000E7F8 8D8C24041E0000          lea ecx, dword ptr [esp+00001E04]
:1000E7FF C68424141E000007        mov byte ptr [esp+00001E14], 07

1000c220子程序---------------------------------------------------------------------------------------

* Referenced by a CALL at Addresses:
|:1000BBE2   , :1000C1C3   , :1000E6B4   , :1000E7D4   
|
:1000C220 6AFF                    push FFFFFFFF
:1000C222 6838590410              push 10045938
:1000C227 64A100000000            mov eax, dword ptr fs:[00000000]
:1000C22D 50                      push eax
:1000C22E 64892500000000          mov dword ptr fs:[00000000], esp
:1000C235 83EC20                  sub esp, 00000020
:1000C238 56                      push esi
:1000C239 57                      push edi
:1000C23A 8B7C2438                mov edi, dword ptr [esp+38]
:1000C23E 8BF1                    mov esi, ecx
:1000C240 57                      push edi
:1000C241 E82A010000              call 1000C370

* Possible StringData Ref from Data Obj ->"SOFTWARE\Mightsoft\AudioRight\Register"
                                  |
:1000C246 68049B0510              push 10059B04
:1000C24B 8D4C243C                lea ecx, dword ptr [esp+3C]
:1000C24F C744243400000000        mov [esp+34], 00000000
:1000C257 C744240C01000080        mov [esp+0C], 80000001
:1000C25F E8563C0200              call 1002FEBA
:1000C264 8D4C2418                lea ecx, dword ptr [esp+18]

..................................

:1000C31B E8D0310000              call 1000F4F0
:1000C320 8D4C2418                lea ecx, dword ptr [esp+18]
:1000C324 8BF0                    mov esi, eax
:1000C326 C644243001              mov [esp+30], 01
:1000C32B E8D0280000              call 1000EC00
:1000C330 8D4C2438                lea ecx, dword ptr [esp+38]
:1000C334 C644243000              mov [esp+30], 00
:1000C339 E80E3B0200              call 1002FE4C
:1000C33E 6801000080              push 80000001

* Reference To: ADVAPI32.RegCloseKey, Ord:015Bh
                                  |
:1000C343 FF1528800410            Call dword ptr [10048028]
:1000C349 8B4C2428                mov ecx, dword ptr [esp+28]
:1000C34D 8BC6                    mov eax, esi   **********************
:1000C34F 5F                      pop edi
:1000C350 64890D00000000          mov dword ptr fs:[00000000], ecx
:1000C357 5E                      pop esi
:1000C358 83C42C                  add esp, 0000002C
:1000C35B C20400                  ret 0004

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

你在1000c220子程序里面可以看到下面代码,
1000C34D 8BC6    mov eax, esi
把8BC6(mov eax,esi)转换成B001(mov al,01)。
手工,喝酒去吧。

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 1
支持
分享
最新回复 (1)
雪    币: 389
活跃值: (912)
能力值: ( LV9,RANK:770 )
在线值:
发帖
回帖
粉丝
2
支持一下,简单了点.
2004-12-27 16:41
0
游客
登录 | 注册 方可回帖
返回
//