用Hopper搞定Mac迅雷的会员以及离线下载功能

转自 用Hopper搞定Mac迅雷的会员以及离线下载功能

先定位Mac迅雷的可执行文件

snakeninnys-iMac:~ snakeninny$ ls /Applications/Thunder.app/Contents/MacOS
Thunder            libetm.dylib       libiniparser.dylib

如果你的迅雷也是放在了/Applications下,那么可执行文件的位置应该跟上面一样??

用Hopper分析可执行文件

定位要修改的函数

可执行文件尺寸不大,Hopper很快就可以完成对它的分析。在Label搜索栏中输入“ is”(注意,是“空格is”),在搜索结果中,找到如图所示的4个方法:
 
它们分别是

1. -[LocalTask isValidLixianTask]
2. -[UserController isVip]
3. -[UserController isPlatinum]
4. -[UserController isDiamond]

用Hopper静态patch这4个方法

首先patch-[LocalTask isValidLixianTask]
把鼠标焦点放在-[LocalTask isValidLixianTask]的第一行汇编代码上,然后选择Hopper菜单栏的Modify -> Assemble Instruction,并在弹出的文本框里输入mov eax, 0x1,如图所示:

Screen Shot 2015-07-06 at 3.18.07 PM.png870x177 65 KB

然后点击“Assemble and Go Next”,再在文本框里输入ret。patch之后的-[LocalTask isValidLixianTask]长这样:
 
为什么要这么patch呢?简单解释一下:在x86汇编里,函数的返回值存放在eax寄存器里。1对应BOOL类型的YES,因此我们的patch让-[LocalTask isValidLixianTask]永远返回YES,告诉迅雷这是一个有效的离线任务 
同理,用完全相同的输入来patch掉另外的3个方法,即把它们的前2条汇编指令都改成mov eax, 0x1ret,修改结果如图所示:

Screen Shot 2015-07-06 at 3.29.28 PM.png447x634 110 KB

用Hopper生成一个patch过的新可执行文件

在Hopper的菜单里选择File -> Produce New Executable...,然后在弹框中选择YES,即可生成一个新的Thunder文件。用这个新的Thunder替换掉原来的/Applications/Thunder.app/Contents/MacOS/Thunder,然后重启迅雷,看看效果:

Screen Shot 2015-07-06 at 3.59.29 PM.png946x161 89.8 KB

打完收工 

亲测可以,今天尝试破解了下QQ音乐,试了半天,没点亮绿钻(在手机上之前破解成功过,mac上估计没找对地方)

但是把HQ标志点亮了

效果如图,但是没听出有啥变化,所以应该还是一个假的状态。。。

时间: 2024-10-07 21:10:10

用Hopper搞定Mac迅雷的会员以及离线下载功能的相关文章

搞定mac的bashrc

 邻家的の柠檬叔 2015-03-11 14:16:26 1.根据这篇文章:http://www.joshstaiger.org/archives/2005/07/bash_profile_vs.html 简单的说就是:.bash_profile is executed for login shells, while .bashrc is executed for interactive non-login shells. Mac OS X - an exception An exception

Mac迅雷版本又更新了?想不想知道有哪些新功能!

Mac迅雷是迅雷网络针对Mac OS系统推出的专业下载工具,是迅雷在多终端的重要布局.Mac版迅雷继承了迅雷软件轻巧灵动.高速流畅的特点,安装文件仅1.8M,下载速度令人满意.同时,Mac版迅雷保持了Windows版本中支持全协议下载的优势,同样支持BT和eMule下载,弥补了Mac OS 下缺乏P2SP下载软件的空白. Mac迅雷软件特色 1.更稳定更流畅,专为Mac平台优化的内核,下载速度更快,离线下载更稳定.每一秒都是不一样的下载体验. 2.画面更加精致简洁,更多功能集中在一起,无广告无插

iOS开发一行代码系列:一行搞定输入框

最近总结了下开发过程中常用的功能,发现有时候我在做重复性的劳动.于是决定把常用的功能抽出来,方便下次使用. 我的想法是:用最少的代码来解决问题.于是写了一些常用的工具类,名字就叫一行代码系列吧...好像挺挫的.. 大致内容有: 1.一行搞定输入框 2.一行搞定网络请求 3.一行搞定上下拉刷新(会自动判断是上拉还是下拉还是两者并存) 4.一行搞定数据库(最近还在写,功能已经基本实现) 5.一行搞定图片保存 6.一行搞定定位 7.一行搞定网络状况变化 8.一行搞定X(功能小集合) 一行搞定输入框 输

教你怎么半天搞定Docker

首先,不要把docker想的那么高大,它不就是先做个镜像,然后通过docker像虚拟机一样跑起来嘛...docker其实在真实业务场景中还是非常有局限性的.Dockerfile脚本也没那么好写,有些应用也没有那么好安装. 废话不多说,教你半天搞定docker! 安装依赖和docker 下载路径:http://down.51cto.com/data/699208 rpm -ivh epel-release-6-8.noarch.rpm yum install docker-io -y 启动dock

猫猫学IOS(四十一)UI之核心动画 两行代码搞定3D转场(做android的哭死)

猫猫分享,必须精品 原创文章,欢迎转载.转载请注明:翟乃玉的博客 地址:http://blog.csdn.net/u013357243?viewmode=contents 源码素材地址:http://blog.csdn.net/u013357243/article/details/45583465 效果: 代码: 其实代码很少,苹果都给封装好了 // 1.创建核心动画 CATransition *ca = [CATransition animation]; // 1.1动画过渡类型 ca.typ

【Android】快速开发偷懒必备,一句话搞定所有ViewGroup的Adapter . 支持自定义ViewGroup

转载请标明出处: http://blog.csdn.net/zxt0601/article/details/53576092 本文出自:[张旭童的博客](http://blog.csdn.net/zxt0601) 代码传送门:喜欢的话,随手点个star.多谢 https://github.com/mcxtzhang/all-base-adapter 概述 开发中,经常会用到动态在ScrollView.LinearLayout里addView的事,尤其是ItemView一样时,每次都要写一大堆代码

app分享功能,微信分享代码,几行代码轻松搞定

让你的应用支持分享送积分功能,获得更多社交流量. *通过友推,开发者用几行代码就可以为应用添加分享送积分功能,并提供详尽的统计报表 *除了本身具备的分享功能外,开发者也可将积分功能单独集成在已有分享组件的APP上, 让您的应用更多地通过用户的分享推荐触达新用户,获得更多社交流量. 一.分享组件功能 1.支持微信,QQ,新浪微博,QQ空间,短信,邮件等多家大型社交媒体平台一键分享2.支持积分抽奖活动在线活动创建3.后台多维度数据统计用户分享行为以及其他数据,让您及时做出精准的营销定位策略4.集成简

实战栈溢出:三个漏洞搞定一台路由器(转自长亭科技)

转:https://zhuanlan.zhihu.com/p/26271959 背景知识: 1.snprintf(),为函数原型int snprintf(char *str, size_t size, const char *format, ...),将可变个参数(...)按照format格式化成字符串,然后将其复制到str中. 函数返回值:若成功则返回欲写入的字符串长度,若出错则返回负值.与snprintf的返回值不同,sprintf的返回值是成功写入的字符串长度,此处需要谨慎处理! 2.st

iDSDT搞定显卡和声卡 黑苹果不纠结

原帖:http://www.lovelucy.info/idsdt-mac-video-audio-drive.html 之前写过PC机上装Mac OS X系统,准备工作中最纠结的就是驱动了.在网络上搜寻别人发布的驱动,可惜很多时候都无法解决自己出现的各种莫名其妙的问题.好在现在有了iDSDT这款神器,显卡声卡都可以完美工作,轻松搞定. 本文适用于你仍然拥有Windows系统,并且已经安装好了Mac OS X系统,只是在Mac系统下部分硬件工作不正常的情况,可以有效解决无法更改分辨率.没有声音等