吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 11573|回复: 6
收起左侧

[分享] 超级全能音频转换器1.38破解分析

[复制链接]
35925 发表于 2010-6-21 08:55
【破文标题】超级全能音频转换
【破文作者】35925
【作者邮箱】tianhao1120@163.com
【作者主页】
破解工具】OD
【破解平台】winxp
【软件名称】超级全能音频转换器1.38
【软件大小】1.14 MB
【原版下载】http://www.mp4soft.cn/mp3.html
【保护方式】试用版只能转换20%
【软件简介】《超级全能音频转换器》是一款操作简单,功能强大的音频转换工具。 支持RM、MP2、 MP3、MPL 、AAC、WMA、 OGG、 WAV等主流音频格式之间任意转换,支持批量转换,可同时处理多个文件。 内置播放器支持多种音乐格式的播放。典型的应用于:RM转MP3、WAV/WMA转MP3、WAV/MP3转WMA、WAV/MP3/WMA转AAC。整个转换过程非常简单、只需三步即可完成转换,快速且具有高质量。

【破解声明】仅供学习交流使用
------------------------------------------------------------------------
【破解过程】第一步:OD加载,F9运行,查找可用字符串。
发现试用版只能转换原文件20%提示,双击来到程序领空,看跳转,发现
004B82AB   .  E8 E8CCFFFF   CALL mp3.004B4F98
004B82B0   .  8B55 B0       MOV EDX,DWORD PTR SS:[EBP-50]
004B82B3   .  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
004B82B6   .  8B80 C4040000 MOV EAX,DWORD PTR DS:[EAX+4C4]
004B82BC   .  E8 43C4F4FF   CALL mp3.00404704
004B82C1   .  75 0C         JNZ SHORT mp3.004B82CF       /如果不跳,下面JMP就能跳过转换限制,改7500
004B82C3   .  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
004B82C6   .  C680 B8040000>MOV BYTE PTR DS:[EAX+4B8],0
004B82CD   .  EB 31         JMP SHORT mp3.004B8300
004B82CF   >  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
004B82D2   .  C680 B8040000>MOV BYTE PTR DS:[EAX+4B8],1
004B82D9   .  8D55 AC       LEA EDX,DWORD PTR SS:[EBP-54]
004B82DC   .  A1 F0ED4B00   MOV EAX,DWORD PTR DS:[4BEDF0]
004B82E1   .  E8 52CAFAFF   CALL mp3.00464D38
004B82E6   .  8D45 AC       LEA EAX,DWORD PTR SS:[EBP-54]
004B82E9   .  BA 00894B00   MOV EDX,mp3.004B8900    (试用版只能转换源文件20%的时间!)
004B82EE   .  E8 CDC2F4FF   CALL mp3.004045C0
004B82F3   .  8B55 AC       MOV EDX,DWORD PTR SS:[EBP-54]
004B82F6   .  A1 F0ED4B00   MOV EAX,DWORD PTR DS:[4BEDF0]
004B82FB   .  E8 68CAFAFF   CALL mp3.00464D68
004B8300   >  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
第二步:找到字符串注册码错误,请重新输入用户名各注册码,双击来到程序领空,看跳转,发现
004B545E   .  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
004B5461   .  E8 52C6FCFF   CALL mp3.00481AB8
004B5466   .  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
004B5469   .  E8 1AFDFFFF   CALL mp3.004B5188
004B546E   .  E8 7DE8F4FF   CALL mp3.00403CF0
004B5473   .  EB 1A         JMP SHORT mp3.004B548F  ;可以跳过注册码错误
004B5475   >  6A 40         PUSH 40                 ;指向注册码错误,上面跳不能实现才好
004B5477   .  68 98554B00   PUSH mp3.004B5598                        ;  Register
004B547C   .  68 A4554B00   PUSH mp3.004B55A4                        ;  注册码错误,请重新输入用户名和注册码!
004B5481   .  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
004B5484   .  E8 9760FBFF   CALL mp3.0046B520
004B5489   .  50            PUSH EAX                                 ; |hOwner
004B548A   .  E8 191DF5FF   CALL            ; \MessageBoxA
看下面这句由哪里跳过来
004B5475   >  6A 40         PUSH 40                 ;指向注册码错误,上面跳不能实现才好
来到
004B537E   .  55            PUSH EBP
004B537F   .  68 BD544B00   PUSH mp3.004B54BD
004B5384   .  64:FF30       PUSH DWORD PTR FS:[EAX]
004B5387   .  64:8920       MOV DWORD PTR FS:[EAX],ESP
004B538A   .  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
004B538D   .  E8 B2FEFFFF   CALL mp3.004B5244
004B5392   .  84C0          TEST AL,AL
004B5394   .  0F84 DB000000 JE mp3.004B5475 ; 跳向注册码错误处 ----->NOP
第三步: F9运行,程序开始注册框与标题栏上20%限制字样去除,先保存一份修改,打开修改后程序
第四步:查找字符串,在字符串 关于 处双击,到程序领空,看下面第一个跳转处
004B5F02  |.  A1 2CCC4B00   MOV EAX,DWORD PTR DS:[4BCC2C]   //下断观察
004B5F07  |.  8B00          MOV EAX,DWORD PTR DS:[EAX]
004B5F09  |.  80B8 B9040000>CMP BYTE PTR DS:[EAX+4B9],0    //重点观察家这里数据
004B5F10  |.  75 12         JNZ SHORT mp3.004B5F24
004B5F12  |.  BA 0000FF00   MOV EDX,0FF0000
004B5F17  |.  8B83 18030000 MOV EAX,DWORD PTR DS:[EBX+318]
004B5F1D  |.  E8 B6EFFAFF   CALL mp3.00464ED8
004B5F22  |.  EB 31         JMP SHORT mp3.004B5F55
004B5F24  |>  BA FF000000   MOV EDX,0FF                     ;
004B5F29  |.  8B83 18030000 MOV EAX,DWORD PTR DS:[EBX+318]
004B5F2F  |.  E8 A4EFFAFF   CALL mp3.00464ED8
第五步:F9运行,点关于看一下,程序断下来了,F8观察
004B5F09  |.  80B8 B9040000>CMP BYTE PTR DS:[EAX+4B9],0
DS:[00A22C0D]=01
是个重要位置,先记下来,过会下内存断点用
第六步:再点软件注册里注册,看一下,先按上面第二步下好断点
点注册认证后提示,已保存注册信息,下次启动验证.那就重启程序
第七步:添加一个文件,转换一下看看
仍然只能转换20%
到这里总结一下:程序未修改前的启动提示注册框和标题栏上的20%限制已经去除,但是功能限制还没有真正解除,那就应该考虑到第五步里面那个[EAX+4B9]里面数据了
第八步:在数据窗口里按Ctrl+G 输入 00A22C0D 位置,下硬件访问断点
添加一个文件,断了下来
004B7547  |> \80BB B9040000>CMP BYTE PTR DS:[EBX+4B9],0  ;里面数据为1
004B754E  |.  74 66         JE SHORT mp3_1.004B75B6  ; 不等没跳
004B7550  |.  DB83 90040000 FILD DWORD PTR DS:[EBX+490]
004B7556  |.  D835 047D4B00 FDIV DWORD PTR DS:[4B7D04]
004B755C  |.  E8 AFB6F4FF   CALL mp3_1.00402C10
小结:接下来就有两种方法来实现功能限制解除了,一是在:004B754E 这句 je--->jmp 二是重新加载程序,在DS:[00A22C0D]处下内存写入断点,重新加载,下好内存断点,找到
004B7FAF  C680 B9040000>MOV BYTE PTR DS:[EAX+4B9],1
这里把1改0
经验证,两个方法都可以解除功能限制。


------------------------------------------------------------------------
【破解总结】    软件采取了未注册版本只能转换开20%对软件进行保护,根据注册失败信息,修改成功后,再实际应用发现,尽管注册提示框和标题栏提示信息已经消失,但功能限制没有真正解除,考虑到软件一般都会在“关于”里面有对软件注册信息提示,通过查找字符串,发现CMP BYTE PTR DS:[EAX+4B9],0 ,估计这里面数据比较重要,通过下内存断点发现,里面数据为1里就只能转换20%,为0功能限制解除。接下解决问题方法就是:一是在转换软件前给里面数据赋0值;二是改跳转条件。
本程序共需要修改三个地方:
004B82C1   .  75 0C         JNZ SHORT mp3.004B82CF  / 去除软件一开始运行主提示注册信息框;
004B5394   .  0F84 DB000000 JE mp3.004B5475  / 去除软件注册时提示注册码错误信息;
004B7FAF  C680 B9040000>MOV BYTE PTR DS:[EAX+4B9],1  /把1改0,解除功能限制
整个过程,实现了软件破解,但思路还不够很明晰,有点蒙的感觉,希望下次有所进步。
------------------------------------------------------------------------
【版权声明】软件版权归原作者所有,请支持国产软件发展!仅供学习交流使用

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

2099502 发表于 2012-1-10 18:55
不错不错  支持了
a7909a 发表于 2011-12-30 22:50
wo20591287 发表于 2010-6-21 10:26
a6670110 发表于 2010-6-21 10:26
ye  也来 学习 了
perfectiris 发表于 2010-6-21 10:12
我前两天也是玩了玩这个软件,感觉楼主说的方法很不错哦。
我只改了2个地方,运行不提示未注册了,跳过标题栏的未注册。。
不过具体能不能转换100%了我没试,我手上没视频。
lafeng 发表于 2010-6-21 09:41
坐着沙发学习,这才叫舒服!哈哈
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-15 10:43

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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