吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3573|回复: 31
收起左侧

[原创] PCVX逆向全解:自己手搓多开补丁

  [复制链接]
xingkongawa 发表于 2023-4-29 11:22
本帖最后由 xingkongawa 于 2023-4-29 12:10 编辑

PCVX逆向全解:自己手搓多开补丁

前言

没错,该系列又复活了 :P

使用工具

VX:3.9.2.23

吾爱专版OD

分析

  1. 提前打开一个微信

  2. 用OD打开再一个微信(而非附加!)

  3. 下断CreateMutexW

  4. 断下后观察堆栈

iKkV85.png

像这样MutexNameNULL或者调用模块非WeChatWin.dll的都可以直接继续运行

断下、运行两三次以后就像这样就可以了

iKkttE.png  

/CALL 到 CreateMutexW 来自 WeChatWi.XXXXXXXX上右键点击反汇编窗口中跟随,并在到达的地方的上一句下断,取消原来的断点,重新运行微信

即在此下断

11526697    FF15 8C435A12   call dword ptr ds:[<&KERNEL32.CreateMutexW>]         ; kernel32.CreateMutexW

断下后观察周围代码

   11526692    50              push eax
   11526693    6A 00           push 0x0
   11526695    6A 00           push 0x0
   11526697    FF15 8C435A12   call dword ptr ds:[<&KERNEL32.CreateMutexW>]         ; kernel32.CreateMutexW
   1152669D    8BF0            mov esi,eax
   1152669F    32DB            xor bl,bl
   115266A1    85F6            test esi,esi
   115266A3    74 1E           je short WeChatWi.115266C3
   115266A5    FF15 B0425A12   call dword ptr ds:[<&KERNEL32.GetLastError>]         ; kernel32.GetLastError
   115266AB    3D B7000000     cmp eax,0xB7
   115266B0    75 0B           jnz short WeChatWi.115266BD
   115266B2    56              push esi
   115266B3    B3 01           mov bl,0x1
   115266B5    FF15 9C425A12   call dword ptr ds:[<&KERNEL32.CloseHandle>]          ; kernel32.CloseHandle
   115266BB    EB 06           jmp short WeChatWi.115266C3
   115266BD    8935 1CEBE412   mov dword ptr ds:[0x12E4EB1C],esi
   115266C3    8B45 98         mov eax,dword ptr ss:[ebp-0x68]
   115266C6    8B35 B8535A12   mov esi,dword ptr ds:[<&mmtcmalloc.mm_free>]         ; mmtcmall.mm_free
   115266CC    85C0            test eax,eax
   115266CE    74 0D           je short WeChatWi.115266DD
   115266D0    50              push eax
   115266D1    FFD6            call esi

发现CreateMutexW下有一je跳转未实现,没有跳过CloseHandleCloseHandle是什么意思想必各位都知道吧)

尝试将其改成jmp

运行,发现成功实现多开

制作补丁

右键修改完的jmp,复制到可执行文件->所有修改->全部复制

iKkQHc.png

右键->保存文件->选择路径

补丁制作完成,替换安装目录下的文件即可(一定要备份原版的!!!)

优缺点

  • [+] 随时开,无限开

  • [+] 无需借助第三方软件,无中毒风险

  • [+] 长期可用

  • [-] 每个版本都要单独搓补丁

  • [-] 做补丁麻烦(吗?)


大家多评分啊,我要升级

免费评分

参与人数 7吾爱币 +11 热心值 +7 收起 理由
笙若 + 1 + 1 谢谢@Thanks!
Hmily + 5 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
aabbcc123123 + 1 + 1 谢谢@Thanks!
smile1110 + 2 + 1 热心回复!
2016976438 + 1 + 1 谢谢@Thanks!
Bob5230 + 1 + 1 热心回复!
znys14379 + 1 up&amp;amp;#10133;1

查看全部评分

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

爱飞的猫 发表于 2023-5-1 04:25

[-] 每个版本都要单独搓补丁

为啥不用这个字符串做特征并 Hook CreateMutexW,建立 mutex 的时候把字串改掉?比如在字符串结尾加上 pid

 楼主| xingkongawa 发表于 2023-4-29 12:15
宝宝抱抱贝贝 发表于 2023-4-29 12:13
之前有个大佬弄了个批处理的,这次学学楼主的,感谢分享

批处理的若有VX已经在运行就不能多开了...
wasm2023 发表于 2023-4-29 12:01
 楼主| xingkongawa 发表于 2023-4-29 12:04
wasm2023 发表于 2023-4-29 12:01
楼主,期待出个hook code的教程

我已经写了个易语言的demo,但是由于易语言实在是上不了台面,我现在正在尝试把它移植到高级语言
wasm2023 发表于 2023-4-29 12:06
xingkongawa 发表于 2023-4-29 12:04
我已经写了个易语言的demo,但是由于易语言实在是上不了台面,我现在正在尝试把它移植到高级语言

期待成品
宝宝抱抱贝贝 发表于 2023-4-29 12:13
之前有个大佬弄了个批处理的,这次学学楼主的,感谢分享
无阻 发表于 2023-4-29 12:22
用API直接干掉互斥体就好了
 楼主| xingkongawa 发表于 2023-4-29 12:28
无阻 发表于 2023-4-29 12:22
用API直接干掉互斥体就好了

条条大路通罗马
cdsgg 发表于 2023-4-29 12:32

都研究出啥功能了 下个版本 64位了
 楼主| xingkongawa 发表于 2023-4-29 12:50
cdsgg 发表于 2023-4-29 12:32
都研究出啥功能了 下个版本 64位了

????
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-12-23 19:41

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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