吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3666|回复: 11
收起左侧

[Windows] Bigasoft Total Video Converter6逆向思路分享

[复制链接]
zyjsuper 发表于 2020-1-23 17:43
本帖最后由 zyjsuper 于 2020-1-23 18:51 编辑

0x00:软件介绍
这款软件可以转换绝大部分视频和音频格式,非常值得推荐。
官方网站:http://www.bigasoft.com/total-video-converter.html
下载链接:http://www.bigasoft.com/downloads/b-total-video-converter.exe



官方介绍支持的格式如下:

图片.png
0x01:提示信息
打开软件会出现注册提示,提示未注册有功能限制。
图片.png



0x02:动态分析
使用x32dbg加载目标程序,点击F9运行,再次按F9直到x32dbg左下角出现“运行中”的提示,软件界面已经打开。


图片.png



此时,点击x32dbg软件上方的“符号”选项卡,双击“videoconverter.exe”即目标程序名称。

图片.png



双击之后会返回到程序的反汇编窗口,此时点击工具栏中的“A2”按钮进行字符串搜索,窗口会自动切换到“引用”选项卡。
图片.png



再“引用”窗口,搜索字符串“unregister”找到三处位置,在每一处都设置好断点。


重新运行调试,连续按F9继续运行,软件会断在如图所示的字符串调用处,向上分析代码如图中所解释,在函数调用位置下断。
此处给我的思路是这个函数的返回值设置为非0值。即可达到不跳转到unregistered的目的。


图片.png


重新运行调试,直到软件断在函数调用处,F7步入,来到videoconverter.4AC550这个函数内部。涉及到汇编代码如下:
为了继续分析函数的调用关系,先不要手动改这个函数的返回值。


[Asm] 纯文本查看 复制代码
004AC550 | E8 ABB70200              | call videoconverter.4D7D00                                    |
004AC555 | FF50 24                  | call dword ptr ds:[eax+24]                                  |
004AC558 | 85C0                     | test eax,eax                                                  |
004AC55A | 0F95C0                   | setne al                                                      |
004AC55D | C3                       | ret                                                           |
004AC55E | CC                       | int3                                                          |



由此可知eax的值来源于call dword ptr ds:[eax+24]这一处的赋值,在此处下断,继续重新运行调试。


再次连续F9运行,直到软件暂停在上一步设置的断点处,按F7步入,得到如下汇编代码:
到这里后先不用继续跟踪,分析下汇编代码。

[Asm] 纯文本查看 复制代码
004D7B70 | 6A 00                    | push 0                                                        |
004D7B72 | E8 09FFFFFF              | call videoconverter.4D7A80                                    |          
004D7B77 | 83C4 04                  | add esp,4                                                     |
004D7B7A | 85C0                     | test eax,eax                                                  |
004D7B7C | 74 06                    | je videoconverter.4D7B84                                      |
004D7B7E | B8 01000000              | mov eax,1                                                     |
004D7B83 | C3                       | ret                                                           |
004D7B84 | 6A 01                    | push 1                                                        |
004D7B86 | E8 F5FEFFFF              | call videoconverter.4D7A80                                    |
004D7B8B | 83C4 04                  | add esp,4                                                     |
004D7B8E | F7D8                     | neg eax                                                       |
004D7B90 | 1BC0                     | sbb eax,eax                                                   |
004D7B92 | 83E0 02                  | and eax,2                                                     |
004D7B95 | C3                       | ret                                                           |


分析得到eax的值来源于videoconverter.4D7A80这个函数的返回值,接着上一步的位置按"F7"步进到这个函数内部,这个函数要仔细分析和推敲,经过几次的重试和单步跟踪,
最后终于发现函数的返回值取决于xor eax,eax这一步,在此处下断点。
图片.png



重新运行调试,直到断到上一步设置的断点处,将汇编代码改成"mov al,1"按F9运行,又会来到刚开始我们设置的断点处,如图所示。此时按F7单步跟踪,

图片.png



来到这段代码处,
[Asm] 纯文本查看 复制代码
004AC550 | E8 ABB70200              | call videoconverter.4D7D00                                    |
004AC555 | FF50 24                  |call dword ptr ds:[eax+24]                                  |
004AC558 | 85C0                     | test eax,eax                                                  |
004AC55A | 0F95C0                   | setne al                                                      |
004AC55D | C3                       | ret                                                           |



来到之前设置的断点call dword ptr ds:[eax+24],
按F7跟进,来到下面这段代码,发现此处会将eax的值至为0,将其改成“mov al,1”即可完成全部破解


[Asm] 纯文本查看 复制代码
004CE860 | 33C0                     | xor eax,eax                                                   |
004CE862 | C3                       | ret                                                           |



上面的所有步骤所要达到的目的是将videoconverter.4AC55这个函数的最终返回值设置为1。
动态调试需要耐心,一遍一遍的设置断点,重新运行,观察函数返回值eax的值的变化。身为小菜的我们,希望您也可以学会这段破解。


感谢您发财的小手,给我的评分,谢谢,祝朋友们新春快乐,健康幸福。







免费评分

参与人数 3吾爱币 +3 热心值 +2 收起 理由
langrisser + 1 + 1 谢谢@Thanks!
FleTime + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
liangxy + 1 + 1 用心讨论,共获提升!

查看全部评分

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

gxr2010 发表于 2020-1-26 16:13
按照思路制作了一个补丁文件。

videoconverter 和谐补丁.txt

707.75 KB, 下载次数: 32, 下载积分: 吾爱币 -1 CB

lipinghao 发表于 2020-1-23 19:50
@zyjsuper 楼主,研究一下以下软件的Crack可好!
http://wwwapps.grassvalley.com/edius9trial
http://download1.pegasys-inc.com/download_files/tvmw7_en/TVMW7_7.0.13.15_setup_en.exe
http://download1.pegasys-inc.com/download_files/tvmw6_en/TVMW6_Trial_6.2.10.37_setup_en.exe
hk6242337 发表于 2020-1-23 18:42
zkq970413 发表于 2020-1-23 18:42
不错不错,占个沙发
wdh123 发表于 2020-1-23 19:00
要是楼主直接把软件破解了,然后分享出来再做个教程就完美了
sunboyzh 发表于 2020-1-23 20:58
作为小白  代码不是很懂  能否直接放个Crack可好!
chengxyt 发表于 2020-1-24 02:07
祝新春快乐
gxr2010 发表于 2020-1-26 16:14
下载后,改txt为rar,解压,放入程序文件目录中,运行,提示破解成功,就可以正常用了。
老万 发表于 2020-1-26 17:20
谢谢楼主分享,学写了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-1 09:33

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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