前段时间想起来这款音效软件,下载下来使用,音效效果的确提升很多,当然,肯定没有硬件来的好,毕竟只是通过软件优化而已。
下载的是15天试用版本的,网上找了找,没什么好的破解,倒是找到一个导入的注册表,导入ActivationID,ManualShortCode,ResponseCode,倒是可以成功授权,不过每次开启程序会弹窗提示已授权
,比较烦人,还经常获取不到服务状态,每次在服务已启动的情况下依然提示服务未运行,然后提示开启服务,不知道是不是偶RP有问题 = =
所以在昨天授权过期之后想起来亲自操刀。看最终破解的请查看文章最后部分
这是需要操刀的主程序HDAL.exe,版本号为1.0.71.0
PEid检测显示为.Net 8.0 = =...杯具,至今还未搞过.Net的Crcak,不过这难不倒偶,原理还是知道的(大家可以自行Google一下,讲的很详细)
好了,言归正传,本次用到的工具为
1. Reflector .Net(需FileDisassembler插件)
Reflector .Net (一款优秀的.Net平台反编译软件,比较好用的就是可以即时将MSIL转换为.Net平台的任意语言查看)
没有可以用微软的官方工具IL反汇编程序"ildasm.exe"+一款十六进制编辑工具
2. WinHex
你可以用你喜欢的任意一款十六进制编辑器
用 Reflector 打开 HDAL.exe,使用FileDisassembler导出源代码(此处选择的是C#)后,跟进分析,最后得出对激活判断的最后操作代码在SandboxWPF.AudioLabService中的
m_DriverAuthorization_AuthorizeProductCompleted中,代码如下图
此处代码即为需修改的代码
赋值为SandboxWPF.AudioLabService.AP_Status类型,查看类型,代码如下
枚举类型,从变量名看出kAPS_Authorized=1为授权状态,这是我们需要的
好,下面返回到m_DriverAuthorization_AuthorizeProductCompleted方法,并切换 Reflector 至 IL&Bytes 视图(左上方工具栏第一个下拉菜单)
此处代码即为需修改的代码
MSIL语言代码,可以通过查阅MSDN查看System.Reflection.Emit.OpCode类的字段获取
这里我们需要传入kAPS_Authorized,也就是1,所以修改为
分析完毕,接下来的就是实际的Crcak了,到这里一切就很简单了
打开 WinHex 搜索m_DriverAuthorization_AuthorizeProductCompleted方法的十六进制值,
搜索只需搜索前面一部分就可以了,此方法的大小为9C
然后修改 02 04 6F FD 02 00 06 为 02 17 00 00 00 00 00
最后保存,重启服务,再打开 HDAL.exe 看看效果
上张Crack之后的截图