有时候我们在聊微信或者QQ时,稍不注意,就不知道对方撤回了你非常感兴趣的东西。这时候,你可能会有些失落,甚至好奇心暴增。这款适用于 Windows 下 PC 版微信/QQ/TIM的防撤回补丁或许可以玩玩。

微信/QQ/TIM防撤回补丁,支持最新版微信/QQ/TIM,其中微信能够选择安装多开功能。

使用方法
  1. 首先,你的系统需要满足以下条件:

Windows 7 或更高版本,不支持XP。.NET Framework 4.5.2 或更高版本。低于此版本在打开程序时可能无反应,或者直接报错。

  1. 使用本程序前,先关闭微信/QQ/TIM。
  2. 以管理员身份运行本程序,等待右下角获取最新的补丁信息。
  3. 选择微信/QQ/TIM的安装路径。如果你用的安装版的微信/QQ/TIM,正常情况下本程序会自动从注册表中获取安装路径,绿色版需要手动选择路径。
  4. 点击防撤回。界面可能会出现一段时间的无响应,请耐心等待。由于修改了微信的 WeChatWin.dll 文件、QQ/TIM的 IM.dll 文件,杀毒软件可能会弹出警告,放行即可。

微信免费防撤回插件(开源微信QQTIM防撤回工具)(1)

微信防撤回与多开原理
  1. 需要安装x32dbg或者OllyDbg
  2. 打开 x32dbg ,点击 文件 -> 附加 ,切换到 符号 选项卡,在左下角搜索 WeChatWin.dll ,双击 wechatwin.dll 进入 CPU 选项卡 ,右键 搜索 -> 当前区域 -> 字符串,搜索撤回关键词 revokemsg,然后双击第一个”revokemsg”进入

需要进行修改的是当前行的上面一行: je xxxxxx ,双击 je xxxxxx ,把 je 修改为 jmp 即可 修改为jmp

微信免费防撤回插件(开源微信QQTIM防撤回工具)(2)

微信免费防撤回插件(开源微信QQTIM防撤回工具)(3)

微信免费防撤回插件(开源微信QQTIM防撤回工具)(4)

微信免费防撤回插件(开源微信QQTIM防撤回工具)(5)

接下来搜索防多开关键词 WeChat_App_Instance_Identity_Mutex_Name,然后双击第一个L”WeChat_App_Instance_Identity_Mutex_Name”进入 ,需要进行修改的是当前行的上面第一个出现的 push ebp ,双击 push ebp ,把 push ebp 修改为 ret 即可 修改为jmp

微信免费防撤回插件(开源微信QQTIM防撤回工具)(6)

微信免费防撤回插件(开源微信QQTIM防撤回工具)(7)

微信免费防撤回插件(开源微信QQTIM防撤回工具)(8)

微信免费防撤回插件(开源微信QQTIM防撤回工具)(9)

点击生成补丁的按钮,然后点击修补文件就可以得到修改后的 WeChatWin.dll

微信免费防撤回插件(开源微信QQTIM防撤回工具)(10)

QQ或TIM防撤回
  1. 打开 x64dbg ,点击 文件 -> 附加
  2. 附加QQ的进程

微信免费防撤回插件(开源微信QQTIM防撤回工具)(11)

3. 切换到 符号 选项卡,在左下角搜索 IM.dll ,双击 IM.dll 进入 CPU 选项卡

微信免费防撤回插件(开源微信QQTIM防撤回工具)(12)

右键 搜索 -> 当前区域 -> 字符串 搜索好友撤回关键词 bytes_reserved,然后双击第三个 “bytes_reserved” 进入 ,需要进行修改的是当前行的上面一行: push ecx ,目标是让其 jmp 到下面的 test eax,eax 的地址,此处地址为 0x5D8F77B5 ,双击 push ecx ,修改为 jmp 下面test的地址 ,即 jmp 0x5D8F77B5 jmp到test

微信免费防撤回插件(开源微信QQTIM防撤回工具)(13)

微信免费防撤回插件(开源微信QQTIM防撤回工具)(14)

微信免费防撤回插件(开源微信QQTIM防撤回工具)(15)

微信免费防撤回插件(开源微信QQTIM防撤回工具)(16)

微信免费防撤回插件(开源微信QQTIM防撤回工具)(17)

搜索群聊撤回关键词 bytes_userdef,然后双击第三个/第四个 “bytes_userdef” 进入,测试两个都改才有效,此处以第三个为例 ,需要进行修改的是当前行: push xxx ,和上面一样,目标是让其 jmp 到下面的 test eax,eax 的地址,此处地址为 0x5D8F73E9 ,双击 push xxx ,修改为 jmp 下面test的地址 ,即 jmp 0x5D8F73E9 jmp到test ,同样的方法修改第四个 “bytes_userdef”

微信免费防撤回插件(开源微信QQTIM防撤回工具)(18)

微信免费防撤回插件(开源微信QQTIM防撤回工具)(19)

微信免费防撤回插件(开源微信QQTIM防撤回工具)(20)

微信免费防撤回插件(开源微信QQTIM防撤回工具)(21)

点击生成补丁的按钮,然后点击修补文件就可以得到修改后的 IM.dll

微信免费防撤回插件(开源微信QQTIM防撤回工具)(22)

RevokeMsgPatcher工具

前面就是防撤回的原理,那么RevokeMsgPatcher这个工具就是将前面的找到的特征值,用十六进制编辑的方式修改对应的DLL文件。

代码地址:https://github.com/huiyadanli/RevokeMsgPatcher.git

因为该方式只是直接跳过撤回的逻辑,所以,我们也区分不出撤回的是哪一条消息,只有通过手机端和PC对比吧。

Mac版本的代码:https://github.com/sunnyyoung/WeChatTweak-macOS.git

,