吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 13155|回复: 80
收起左侧

[原创] 某豆人辅助逆源

  [复制链接]
lichunfeng 发表于 2020-9-4 21:07
本帖最后由 lichunfeng 于 2020-9-4 21:10 编辑

      
       这个辅助貌似N天前拿到的了,现已被和谐。当时还原出来了c++代码,由于也是没有加壳,看起来和源码并无太大区别,本质原理就是遍历内存搜索浮点数9.5(人物移动速度),然后将其保存到vector,调用writeprocmemory api 写入更快的速度(比9.5大的值)实现外挂功能,写入9.5还原速度,执行效率相当堪忧,好的方法是找到人物移动速度基址,直接改,因为遍历内存搜索太慢了。这里就不贴汇编代码的分析了,基本上就是一些Api的调用,push 参数 call。贴出部分代码,总滴来说就是一个学习的过程。


bool sFindGame() {//寻找游戏 遍历内存 搜索浮点数9.5
        speed.clear();
        DWORD fpid = GetProcessIDFromName(_T("FallGuys_client.exe"));//进程名取ID
        if (fpid == 0)
        {
                AfxMessageBox(_T("没有发现游戏进程! 先运行游戏"));
                return 0;
        }
        fHandle = OpenProcess(PROCESS_ALL_ACCESS, FALSE, fpid);//取得进程句柄
        MEMORY_BASIC_INFORMATION MemInfo;
        for (static size_t address; VirtualQueryEx(fHandle, (LPVOID)address, &MemInfo, sizeof(MemInfo)); address += MemInfo.RegionSize)
        { //查询内存地址信息  然后遍历搜索浮点数9.5 ,搜索到之后保存
                if (MemInfo.State != MEM_COMMIT)
                {
                        continue;
                }
                std::vector <float> memory(MemInfo.RegionSize);//定义一个动态数组
                if (!ReadProcessMemory(fHandle, (LPVOID)address, &memory[0], MemInfo.RegionSize, 0))//读取内存赋值给动态数组
                {
                        continue;
                }
                size_t size = MemInfo.RegionSize / sizeof(float); //内存取域大小除以浮点长度 即遍历次数
                for (size_t i = 0; i < size; i++)
                {
                        if (memory[i] == 9.5f)
                        {
                                speed.push_back(address + (i * sizeof(float)));//搜到浮点数9.5然后保存到全局变量
                        }

                }
        }
}
void SetSpeed(float sp) {//这个函数就是写入移动速度数值

        for (size_t x = 0; x < speed.size(); x++) {
                WriteProcessMemory(fHandle, (LPVOID)speed[x],&sp, sizeof(sp), NULL);

        }
}

免费评分

参与人数 21吾爱币 +19 热心值 +19 收起 理由
qq69713 + 1 + 1 热心回复!
silence2540 + 1 + 1 我很赞同!
hakurei123 + 1 + 1 用心讨论,共获提升!
al9484571 + 1 + 1 我很赞同!
yntcxlong + 1 我很赞同!
kokomoonko + 1 + 1 热心回复!
stardustaloy + 1 我很赞同!
晓森大人 + 1 + 1 我很赞同!
江影影 + 1 + 1 热心回复!
szjzxm4321 + 1 + 1 热心回复!
jeffrey1851 + 1 + 1 热心回复!
Terensu + 1 + 1 用心讨论,共获提升!
流浪的猫 + 1 + 1 我很赞同!
哈哈达仁 + 1 + 1 热心回复!
yuanshaoai0 + 1 楼上的都瞎了吗?没看见楼主说学习嘛
ronjae + 1 + 1 一个娱乐游戏也开挂是什么心态?
小怪兽01 + 1 + 1 我很赞同!
Liu159 + 1 用心讨论,共获提升!
叮当东东当当 + 1 + 1 我很赞同!
i66235 + 1 + 1 热心回复!
鎏丿情何以堪 + 1 + 1 牛批

查看全部评分

本帖被以下淘专辑推荐:

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

E飞翔 发表于 2020-9-4 23:24
[C++] 纯文本查看 复制代码
// GetProcessIDFromName


这个函数的代码分享下呗!!


Mr丶Yang 发表于 2020-9-5 08:58
国际豆哥 发表于 2020-9-4 23:02
cc919298 发表于 2020-9-4 21:25
不明觉厉~
哀默余生 发表于 2020-9-4 21:42
不明所以~
Gaho2002 发表于 2020-9-4 21:44
厉害了代码
ElliotAlderson 发表于 2020-9-4 21:53
今天看直播猴哥被g气坏了哈哈
leader20jb 发表于 2020-9-4 22:40
PC版简直没法好好玩
披荆斩棘天使翼 发表于 2020-9-4 22:45
PC版本的我都卸载了,那挂开的满天飞。。。
huang007f 发表于 2020-9-4 22:46
(⊙﹏⊙)某豆人
sd5513620 发表于 2020-9-4 23:15
看不太懂 ,感觉厉害哈哈哈哈
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-24 22:32

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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