-
-
[旧帖]
[求助]关于QQGame多开破解
0.00雪花
-
-
[旧帖] [求助]关于QQGame多开破解
0.00雪花
正在看一个关于关于QQGame多开破解的文章
原帖地址:http://hi.baidu.com/lktsllj/blog/item/5ead500f965a132e6159f3ed.html
看到下面这个地方有些困惑
10010441 FF15 E4800110 call dword ptr [<&KERNEL32.CreateMute>; kernel32.CreateMutexA
10010447 85C0 test eax, eax
10010449 8946 44 mov dword ptr [esi+44], eax
1001044C 74 24 je short 10010472
1001044E FF15 A8800110 call dword ptr [<&KERNEL32.GetLastErr>; ntdll.RtlGetLastWin32Error
10010454 3D B7000000 cmp eax, 0B7
10010459 8BCE mov ecx, esi
1001045B 75 07 jnz short 10010464
1001045D E8 60000000 call 100104C2
10010462 EB 2A jmp short 1001048E
10010464 E8 32010000 call 1001059B
10010469 85C0 test eax, eax
1001046B 74 21 je short 1001048E
走到这里,请您看清楚了. 10010441 这一行调用的API函数为kernel32.CreateMutexA,这个函数有什么用?老实说,我清楚,但讲不清楚,我讲出来同MS的API说明一样,还是请您直接参考 API 说明吧.
继续F8,走到1001045B 75 07 jnz short 10010464,此处要JNZ. 不,此处不能按他的想法运行了,那样我们又会失败了. 那就改成JMP吧. 按空格键,将此句改为 JMP SHORT 10010464,再按F9,呵呵...奇迹会出现了,出现了两个QQ游戏大厅登陆窗口,此时我们破解已经成功,简单吧?
为什么写文章的人一下就看出1001045B 75 07 jnz short 10010464这句需要修改呢后面还有很多调用、跳转指令的。
如果我遇到这样的代码,是不是必须要把func1()里的内容都看明白才能找对位置呢?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | if (psw != turePsw)
{
func1();
}
void func1()
{
if (.....)
if (.....)
func2();
}
void func2()
{
exit (0);
}
|
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课