谁知道加速齿轮的原理?

王朝知道·作者佚名  2012-08-08
窄屏简体版  字體: |||超大  
 
分類: 遊戲 >> 網絡遊戲
 
參考答案:

变速齿轮的原理

变速齿轮通过修改API函数GETTICKCOUNT和TIMEGETTIME骗过了游戏和程序的定时器导致游戏和程序速度看起来被改变。下面以GETTICKCOUNT为例进行分析:原本的GETTICKCOUNT汇编:

kernel32!gettickcount mov gs,[bffcaea18]

mov eax,gs:[***********]

sub edx,edx

mov gs,dx

ret

变速齿轮修改后的GETTICKCOUNT汇编:

kernel32!gettickcount

这里是关键-->jmp 840500d9(840500d9并不是绝对的)

add [eax],al

add [ecx+***********],ah

sub edx,edx

mov gs,dx

ret

可以看出变速齿轮修改了gettickcount的代码,当游戏和程序使用gettickcount时就会自动跳转到840500d9处执行。再看看840500d9处的代码汇编:

840500d9:CLI

push ebp

mov ebp,esp

push ebx

push ecx

push edx

push esi

push edi

call 840500e7

840500e7:pop edi

xor di,di

mov esi,edi

add esi,***********

sub esi,00401f0b

push esi

call edi

call ***********

***********:pop edi

xor di,di

call [edi+0000fef0]

call ***********

***********:sub eax,[edi+0000ff30]

mul dword,ptr[edi+0000ff30]

mov ebx,***********

div ebx

add eax,[edi+0000fe20]

push eax

mov eax,***********

sub eax,00401f08

add eax,edi

push eax

call edi

小贴士:① 若网友所发内容与教科书相悖,请以教科书为准;② 若网友所发内容与科学常识、官方权威机构相悖,请以后者为准;③ 若网友所发内容不正确或者违背公序良俗,右下举报/纠错。
 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航