变速齿轮的原理

游戏变速神器:变速齿轮原理与实战解析 变速齿轮是一款专为Windows平台设计的系统级工具,其主要功能是通过修改系统时钟频率来改变游戏程序对时间的感知,从而实现游戏运行速度的加速或减速。该工具广泛应用于单机策略类与模拟类游戏中,帮助玩家更高效地完成游戏任务或测试游戏逻辑。其适用场景包括但不限于游戏调试、快速训练、资源积累等。尽管其操作机制涉及系统底层,但用户界面友好,适合各类技术水平的玩家使用。本章为全文的技术铺垫,将为后续深入解析其工作原理与影响打下基础。 阅读详情

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

kernel32!gettickcount     mov gs,[bffcaea18]

                                    mov eax,gs:[00000000]

                                    sub edx,edx

                                     mov  gs,dx

                                     ret

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

kernel32!gettickcount

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

                      add [eax],al

                      add [ecx+00000000],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,00402051

                           sub esi,00401f0b

                           push esi      

                           call edi

                           call 84050101

            84050101:pop edi

                           xor di,di    

                           call [edi+0000fef0]                     

                           call 84050110         

            84050110:sub eax,[edi+0000ff30]     

                           mul dword,ptr[edi+0000ff30] 

                           mov ebx,00100000                 

                           div ebx                

                           add eax,[edi+0000fe20]         

                           push eax                 

                            mov eax,00402072              

                            sub eax,00401f08          

                            add eax,edi              

                            push eax             

                            call edi                  

                            pop eax                     

                            pop edi               

                           pop esi             

                           pop edx                

                           pop ecx               

                           pop ebx                

                            pop ebp                 

                            sil                

                            ret  

以上正是变速齿轮变速的核心所在。(GETTICKCOUNT返回的是EAX的值你可以对EAX进行跟踪)

    下面说一下变速齿轮挂接API的方法:首先变速齿轮在MMF区(WIN9X/ME)申请一块内存,把上面的代码从程序中移到该内存。使用修改描述符的方法从应用程序级跳到核心级(具体可查看《电脑编程技巧与维护》2000年第6期34页)修改GETTICKCOUNT开头的代码使之指向申请的内存的首地址实现挂接。 以上就是我对变速齿轮分析,如果有什么意见或想查看详细的原代码请与我联系,我的邮箱:rwjgpget@sohu.com我会尽快给你答复。

Windows时间API Hook实现变速齿轮原理与工程实践 时间API是操作系统提供给应用程序感知‘流逝’的基础接口,其调用频率高、副作用小,成为用户态Hook的首选目标。原理上,通过IAT或Inline方式劫持GetTickCount、QueryPerformanceCounter等函数的返回值,可非侵入式地缩放进程时间流速,避免线程挂起或CPU干预。该技术具备低开销、高兼容性、易集成等工程价值,广泛应用于游戏调试、性能压测、多线程竞态分析及逆向时序观察等场景。本文以VC++ 6.0纯Win32工程为载体,深入解析时间API Hook机制与变速齿轮落地实现。 阅读详情

相关推荐

Windows系统加速工具:变速齿轮使用指南

系统速度调节是指通过软件或硬件手段改变计算机内部时钟频率,从而调整处理器的工作速度。这样的调节可以实现对计算机性能的即时优化。实现这一功能的基本原理是通过对处理器时钟频率的调整来控制CPU的工作速度。在操作系统层面,可以通过修改处理器的倍频系数、外频或核心电压来实现速度调节。在硬件层面,超频是常见的做法,但是也可能涉及到电路板设计的更改。

weixin_36231030的博客 2033

变速齿轮

/*变速齿轮原理是,游戏在刷新画面时会用到时钟来控制刷新速度,有过游戏开发的人都知道,一般游戏锁定1秒30帧,这样会很流畅,人眼有视觉停顿,当速度达到1秒16帧的时候,就是在跑动画了,游戏用到的计时器有大部分是两个windows提供的api函数,一个是::GetTickCount,一个是::timeGetTime,这两个api的原型请查msdn,我们利用hook api 去修改它的值,从而改变

wuleibilly3的专栏 2万+

全新升级版变速齿轮软件介绍

游戏速度调节功能的出现,源于对传统游戏体验的挑战和创新。这种功能让玩家可以在不受游戏设计初衷限制的情况下,根据自己的喜好调整游戏速度。设计理念的核心是增强游戏体验的个性化和适应性。速度调节可让用户在单人游戏中快速通过繁琐部分,或是让竞技游戏的玩家根据自己的反应速度调整游戏节奏。此外,速度调节功能有时也被用作测试游戏性能,帮助开发者识别和修复游戏运行中的问题。游戏平衡性是指在游戏设计中,确保各个游戏元素之间不存在绝对优势或劣势,使得玩家可以在一个公平的环境中竞争和体验游戏。

weixin_35916518的博客 1161

深入游戏变速底层原理以及内核变速的实现

前言 当你接触了一款叫做“变速齿轮”的软件,你可以玩上一整个星期。因为它实在是太酷炫了,无论网页(Flash、HTML5)、还是小软件,又或者是单机游戏,他总能给你惊喜,唯独网游不能!那么我们今天就来探究一下变速原理,并且我们试试看,能不能写出一个更牛逼的变速软件。 我们本章节内容大致如下图: 变速原理探究 变速齿轮(GearNT 0.46) 原理 我们拿个经典的变速软件开刀,...

yaoyutian的博客 1万+

变速齿轮 变速齿轮 变速齿轮 变速齿轮

变速齿轮是一个神奇的改变游戏速度的程序。他是世界上第一个,也是目前最好的改变Windows游戏速度的程序。他几乎能改变任何Windows游戏的速度。我还没有发现任何其他程序能改变,而变速齿轮不能改变的游戏。并且在效果上,例如变速后画面的平滑性(这同时会影响游戏的操作性)、能使游戏达到的最快或最慢速度、使用的方便性、运行的稳定性等都是最好的。

变速齿轮.7z

变速齿轮.7z

Windows 各种计时函数总结

本文对Windows平台下常用的计时函数进行总结,包括精度为秒、毫秒、微秒三种精度的5种方法。分为在标准C/C++下的二种time()及clock(),标准C/C++所以使用的time()及clock()不仅可以用在Windows系统,也可以用于Linux系统。在Windows系统下三种,使用Windows提供的API接口timeGetTime()、GetTickCount()及QueryPerf

MoreWindows Blog 6万+

变速齿轮 v0.45

变速齿轮是一个神奇的改变游戏速度的程序,她是世界上第一个可以改变Windows9x游戏速度的程序(可以加快也可以减慢游戏速度)。所以如果你觉得你的反应速度够快,不需要降低速度的话,那么就在那些磨蹭的游戏中加快速度吧。程序的使用非常简单,你要做的唯一事情是移动滑杆设定你想要的速度。 新增功能与改进:1。支持最新的Windows Server 2003。2。正如你所看到的,变速齿轮有了一个相当漂亮的界面。他是我用DELPHI做的。3。他的使用更方便了。4。9x和NT版合并在了一起。5。用InstallShield做了一个安装程序,并且解决了变速齿轮在Windows 98第一版下不能加速的问题。6。NT版中,被变速齿轮变速的进程启动的进程也自动被变速。有些游戏,例如红色警戒2,会有一个引导程序,由这个引导程序启动真正的游戏进程。由于被变速齿轮变速的进程启动的进程也自动被变速,所以像红色警戒2这样原来在NT下不能变速的游戏现在也没问题了。

变速齿轮”再研究-----(转帖)

 提起“变速齿轮”(以下简称“齿轮”)这个软件,大家应该都知道吧,该软件号称是全球第一款能改变游戏速度的程序。我起初用时觉得很神奇,久而久之就不禁思考其实现原理了,但苦于个人水平有限,始终不得其解,成了长驻于脑中挥散不去的大问号。  偶然一天在BBS上看到了一篇名为《“变速齿轮”研究手记》(以下简称《手记》)的文章,我如获至宝,耐着性子把文章看完了,但之后还是有很多地方不解,不过还是有了比

lxh111222的专栏 2348

ADB详细(从下载安装到灵活运用)

ADB(Android Debug Bridge)是一种允许模拟器或已连接的 Android 设备进行通信的命令行工具,它可为各种设备操作提供便利,如安装和调试应用,并提供对 Unix shell(可用来在模拟器或连接的设备上运行各种命令)的访问。可以在Android SDK/platform-tools中找到 adb 工具或下载ADB Kits。

LiuYong_01的博客 10万+

【新手必看】挖漏洞流程指南,黑客手把手教你挖漏洞月入过万!收藏这篇就够了!(附学习笔记)

【新手必看】挖漏洞流程指南,黑客手把手教你挖漏洞月入过万!收藏这篇就够了!(附学习笔记)【新手必看】挖漏洞流程指南,黑客手把手教你挖漏洞月入过万!收藏这篇就够了!(附学习笔记)

weixin_57514792的博客 1103

精度试验结果报告Sleep, GetTickCount, timeGetTime, QueryPerformanceCounter

一段简单的代码来实现精度试验 int main(){      // 初始化代码      ......      int i = 0;      while(i++       {             // 获取时间代码             ......             printf(...); // 将时间打出      }}

Vonger的专栏 9836

新手小白如何学习编程

学习目标推荐第一门语言优势网站 / APP 开发(前端)JavaScript浏览器原生支持,能快速做出可视化效果后端 / 服务器 / 数据分析Python语法简洁像英语,库多、应用广(入门友好)游戏开发先用电竞入门,再转专业引擎硬件 / 嵌入式(比如单片机)C 语言贴近硬件,行业标准办公自动化(Excel / 文档处理)Python快速解决重复工作(比如批量改文件)👉新手首选推荐。

2501_94331842的博客 2232

变速齿轮原理研究

打开Intel64 手册卷1,查看指令集:处理器在每个时钟周期内单调递增时钟周期计数器MSR,并在处理器重置时将其归零,而rdtsc指令从时钟周期计数器MSR中读取数据,存入EDX:EAX中,如果CPU的主频是1GHz,那么时钟周期的持续时间就是1纳秒,所以这个API能精确到微秒也是可以理解的,类似的还有rdtscp指令,它还额外返回处理器的id到ECX中。另外的,这种方法只能欺骗自己的机器,对于需要联网的程序,强行改变客户端运行的速度可能会导致异常。当标志设置时,仅能在特权级别0(内核态)下执行。

qq_43148856的博客 1677

零代码搭建专业知识库:Wiki.js+cpolar让团队协作像写笔记一样简单

"项目文档又找不到了!“团队负责人小张第N次在群里看到这样的抱怨——技术文档分散在邮件、网盘和个人电脑里,新人入职要花一周熟悉文档位置,远程协作时版本混乱更是家常便饭。Wiki.js与cpolar内网穿透服务的出现,就像给团队协作装上了"中央大脑”,用写Markdown笔记的简单方式,搭建一个专业的知识库系统。普通人对知识管理的需求其实很简单:方便记录、容易查找、大家能用。但传统方案把这个过程搞得异常复杂:建服务器、配环境、学语法、搞权限……大部分团队还没开始就放弃了。

Yawesh的博客 2038

微信公众号网页H5跳转小程序实战指南(开放标签wx-open-launch-weapp)微信H5跳转小程序、wx-open-launch-weapp、小程序跳转按钮、微信开放标签、H5打开小程序

跳转小程序(wx-open-launch-weapp)唤起App显示支付按钮等等……而我们这次要用的,就是跳转小程序的标签。场景是否支持服务号网页✅ 支持小程序静态网页托管✅ 支持订阅号❌ 不支持微信外部浏览器❌ 不支持这个“开放标签”功能其实很强大,除了跳转小程序,还有唤起APP、跳支付、调用客服等能力。但可惜资料零散,很多坑等着你亲自踩一遍。这篇文章我整理的流程基本涵盖了从“能不能跳”到“怎么跳”的完整路径,希望你能像我一样省下几个小时的踩坑时间。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 1163

变速齿轮原理

变速齿轮原理是,游戏在刷新画面时会用到时钟来控制刷新速度,有过游戏开发的人都知道,一般游戏锁定1秒30帧,这样会很流畅,人眼有视觉停顿,当速度达到1秒16帧的时候,就是在跑动画了,游戏用到的计时器有大部分是两个windows提供的api函数,一个是::GetTickCount,一个是::timeGetTime,这两个api的原型请查msdn,我们利用hook api 去修改它的值,从而改变游戏速度...

weixin_34375233的博客 4345

Ceph入门到精通-存储桶通知

这 通知还可以根据前缀的匹配项过滤掉事件,并且 (1) 键的后缀,(2) 附加到对象的元数据属性, 或 (3) 对象标签。在此模式下,操作仅在以下之后确认(确认) 通知将发送到主题的已配置终端节点。这意味着 通知的往返时间(发送 通知主题的终端节点以及接收 确认)被添加到操作本身的延迟中。要更新主题,请使用用于创建主题的相同命令(但在 更新时,使用现有主题的名称和不同的终端节点值)。端口:对于未加密的连接,默认为 5672,对于未加密的连接,默认为 5671 SSL 加密连接。(默认情况下,这是“假的”。

隔壁老瓦的专栏 1131

变速齿轮原理分析及检测方案

变速外挂会严重破坏游戏的公平性,引发正常玩家不满,如果不加以制止,会急剧缩短游戏的生命周期。

FairGuard手游加固(企业官方博客) 1814

SAP-ABAP: BP主数据完全指南:从基础到高阶应用

SAP-ABAP: BP主数据完全指南:从基础到高阶应用

baidu_35680696的博客 1647

基于uniapp开发PDA扫码枪APP:实现RFID批量扫描读取功能

基于uniapp的PDA扫码枪APP开发实战,实现高效RFID读取功能,uniapp整合PDA硬件的实践分享,基于uniapp的PDA端RFID批量扫描方案开发

商务合作 / 项目定制 / 学习交流。个人vx:lovely_wml 1万+

“变速齿轮”研究手记

注意:如果你看了本文,对我们这个软件有兴趣,请到我们的主页www.vrbrothers.com下载。注:为节省篇幅,本文对一些计算机术语直接使用而没有作详细的解释,读者若有不熟悉之处,建议参考清华大学出版社出版,周明德编著的《微型计算机系统原理及应用》一书中关于8253/8254定时器和x86保护模式的相应章节。            “变速齿轮”研究手记                     

rchu的专栏 2218

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

“变速齿轮”再研究

                             “变速齿轮”再研究       作者        BBBKOM        关键词     变速齿轮  调用门  RING0     提起“变速齿轮”(以下简称“齿轮”)这个软件,大家应该都知道吧,该软件号称 是全球第一款能改变游戏速度的程序。我起初用时觉得很神奇,久而久之就不禁思考其实现原理了,但苦于个人水平有限,始终不得其解,成了长

BBBKOM的专栏 2720

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

变速齿轮分析

<br />各种变速齿轮基本上是通过hook一系列的时间函数进行的。<br /> 主要的hook方式有iat和inline。其中A变速器,采用的就是iat hook,其他的基本上都是使用inline hook的。<br /> 如果从驱动获取tickcount,可以部分inline hook方式的工具,而对于通过修改时钟的方式还不能。<br /><br /><br /> 使用Dos读取bios时间的方法<br /> MOV       AH,0         ;GET   BIOS   TIME <

Tommy(凌飞)的专栏 6774

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

VC “变速齿轮”再研究

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站                              “变速齿轮”再研究       作者        BBBK

1401
下一篇: 新病毒尼姆达的防御
rwjgpget
博客等级 码龄25年 1粉丝 2原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值