C语言编写红色警戒外挂
首先打开ce附加红警3的进程(注意要选对进程,是ra3_1.12.game)
找钱的数值9750
输入钱的数,点首次扫描
找到7个结果
在游戏内让钱发生改变
到ce内输入变化后的钱,点再次扫描
找到3个结果,双击添加到下面的框中
双击进行更改数值,然后回到游戏内看钱的变化情况,确定哪个才是真正的地址
发现04DF0AC4才是真正的地址.删除错误的地址,对真的地址进行追踪
右键地址选择”找出是什么改写了这个地址”,会要求附加调试器,选择是
再次回到游戏中,改变钱的数量,然后跳出来发现有了结果
往下察看,esi的值为04DF0AC0,第一个偏移4也出来了
记住偏移和值,接着开始搜索这个值,找到一个结果
把结果加到下面的框中右键选择”找出是什么前往了这个地址”
得到一个结果
有人就开始疑惑,这个的偏移是多少呢?接下来要怎么找呢?
先点击”显示反汇编程序”
往上退3行,有句xor eax,eax的指令,这是异或判断,如果eax=eax,结果就为0
EAX的值是结果是从ECX+EAX*4得来的,EAX=0,所以实际上句子是
mov eax,[ecx+0*4]
所以接下来我们要查找的地址是ECX=03B656C0,这里的偏移就是0
继续追踪
发现两个结果
选择sub那个结果
下一个要找到的地址是ECX=030FC320这里的偏移就是E4
接下来找出来的结果就有点多了,我们只能一个个找先
首先排除红色的,然后第一个和第四个没有结果,我们追到第5个
结果依然很多。。。。
但是我们发现,结果不外乎2个,一个是自己,那么另一个就是正确的值了
EAX=03B86878,偏移是28
接下来找到了一个绿色的值,那么这个就是基地址了,我们来验证一下
我们关闭游戏重开,重新附加,点“手工加入地址”,钩上指针,填写上绿色的地址,以我们找到的基地址反序添加
修改数值,发现游戏中的钱被修改了
这下地址和偏移都找到了,我们开始写程序吧
#include<stdio.h>
#include<windows.h>
int main (void)
{
char input;
HWND hWnd;
DWORD pid;
HANDLE hProcess=0;
//钱的基地址和偏移
DWORD ba_addr=0x00CE8C9C;//基地址
DWORD m_offset1=0x28;//偏移1
DWORD m_offset2=0xE4;//偏移2
DWORD m_offset3=0x0;//偏移3
DWORD m_offset4=0x4;//偏移4
//电的偏移(钱与电基地址相同)
DWORD p_offset1=0x28;//偏移1
DWORD p_offset2=0x74;//偏移2
DWORD p_offset3=0x4;//偏移3
while(1)
{
printf("------------------------------------------\n");
printf(" O.打开外挂 M.修改金钱 \n");
printf(" P.修改电量 E.退出外挂 \n");
printf("------------------------------------------\n");
input=getchar();
if(input=='O'||input=='o')
{
hWnd=FindWindow(NULL,"命令与征服:红色警戒3");
if(hWnd!=0)
{
GetWindowThreadProcessId(hWnd,&pid);
hProcess=OpenProcess(PROCESS_ALL_ACCESS,FALSE,pid);//打开进程,取得句柄
if(hProcess==0)
{
printf("打开游戏进程失败\n");
}
else
{
printf("打开游戏成功!!\n");
}
}
else
{
printf("游戏没有运行!!\n");
}
}if(input=='M'||input=='m')
{
if(hProcess==0)
{
printf("请先打开游戏进程");
}
else
{
DWORD m_tempadd;
DWORD MONEY;
printf("请输入要修改的钱\n");
scanf("%d",&MONEY);
ReadProcessMemory(hProcess,(LPVOID)ba_addr,&m_tempadd,4,0);
ReadProcessMemory(hProcess,(LPVOID)(m_tempadd+m_offset1),&m_tempadd,4,0);
ReadProcessMemory(hProcess,(LPVOID)(m_tempadd+m_offset2),&m_tempadd,4,0);
ReadProcessMemory(hProcess,(LPVOID)(m_tempadd+m_offset3),&m_tempadd,4,0);
//要修改的内存地址是(tempadd+offset4)
DWORD res=WriteProcessMemory(hProcess,(LPVOID)(m_tempadd+m_offset4),&MONEY,4,0);
if(res==0)
{
printf("修改失败");
}
else
{
printf("修改成功");
}
}
}
if(input=='P'||input=='p')
{
if(hProcess==0)
{
printf("请先打开游戏进程");
}
else
{
DWORD p_tempadd;
DWORD POWER;
printf("请输入要修改的电量\n");
scanf("%d",&POWER);
ReadProcessMemory(hProcess,(LPVOID)ba_addr,&p_tempadd,4,0);
ReadProcessMemory(hProcess,(LPVOID)(p_tempadd+p_offset1),&p_tempadd,4,0);
ReadProcessMemory(hProcess,(LPVOID)(p_tempadd+p_offset2),&p_tempadd,4,0);
//要修改的内存地址是(tempadd+p_offset3)
DWORD res=WriteProcessMemory(hProcess,(LPVOID)(p_tempadd+p_offset3),&POWER,4,0);
if(res==0)
{
printf("修改失败");
}
else
{
printf("修改成功");
}
}
}
if(input=='E'||input=='e')
{
break;
}
}
return 0;
}
C语言编写红色警戒外挂相关推荐
- 「 硬核教学」 ❤️ C语言编写扫雷游戏外挂❤️「 完整源码」
目录 第一步:使用CE找出棋盘的基址 第二步:使用CE/OD查看该地址的数据 第三步:对比棋盘分析数据的含义 第四步:验证猜想 第五步:编写功能 有没有羡慕学霸们在机房里 潇洒如意地玩着扫雷无限通关, ...
- Qt实现的红色警戒3修改器
前言 这部修改器制作有一段时间了,但是一直没出教程.今天利用周末空闲写篇教程,给后来者指路的同时也加深自己对游戏修改器的理解,大佬就随便看看吧 浏览了一下网络,形形色色的单机游戏修改器教程,但是基本只 ...
- 用Lua语言编写Wireshark dissector插件
from: http://yoursunny.com/t/2008/Wireshark-Lua-dissector/ Wireshark是一款著名的网络协议分析工具,基于GPLv2协议开源,支持Lin ...
- c语言图书借阅系统源码.zip,C语言编写的图书借阅管理系统源代码.doc
确认键)delete(删除)ctre+系列的组合键,大致的基本桌面操作就是方向键↑←↓→移动光标和enter(回车/:所有文件"对话框 windows键+r打开"运行"对 ...
- 用红色警戒的单位来帮助我们学习UML类图和关系图
回顾回顾UML类图的画法,争取自己画出的图能让其他人看得懂. 我为什么要借助红色警戒这个游戏来说明UML类图的画法呢,因为我觉得大家都玩过,对他们的内容都有一个清晰的认识,其次是不想让我的文章太晦涩难 ...
- 用C语言编写万年历6,C语言编写万年历
<C语言编写万年历>由会员分享,可在线阅读,更多相关<C语言编写万年历(8页珍藏版)>请在人人文库网上搜索. 1.C语言编写万年历 [要求]:1 程序运行后,首先在屏幕上显示主 ...
- win10红色警戒黑屏解决
相信很多80,90后的同学们都喜欢在代码之余打打红色警戒 但是苦于win10差劲兼容性,每次下个红色警戒or尤里复仇不是弹框就是黑屏 今天笔者给出一个完美究极解决方案 请注意: 1!红色警戒中把Ra2 ...
- 实用c语言函数源码,C语言编写简单朗读小工具(有源码)
原标题:C语言编写简单朗读小工具(有源码) 最近不少人在后台留言说学C都是面对枯燥的控制台程序,能不能体现一下C语言的实际用途,今天我们就理论结合实践一把:C语言结合VBS脚本编写一个简单的朗读小工具 ...
- R语言编写自定义函数计算R方、使用自助法Bootstrapping估计多元回归模型的R方的置信区间、可视化获得的boot对象、估计单个统计量的置信区间、分别使用分位数法和BCa法
R语言编写自定义函数计算R方.使用自助法Bootstrapping估计多元回归模型的R方的置信区间.可视化获得的boot对象.估计单个统计量的置信区间.分别使用分位数法和BCa法(Bootstrapp ...
- R语言编写自定义函数自定义ggplot图像中的图例(legend)的位置、图例标题、键值、文本字体大小(title、text、key)、颜色标识的大小、点形状pch的大小
R语言编写自定义函数自定义ggplot图像中的图例(legend)的位置.图例标题.键值.文本字体大小(title.text.key).颜色标识的大小.点形状pch的大小 目录
最新文章
- css选择器顺序的小技巧
- java青蛙青蛙跳井_速解青蛙跳井问题
- File类获取功能的方法
- Service Request Account field in CRM and C4C
- 一步一步教你使用AgileEAS.NET基础类库进行应用开发-系列目录
- 机器学习笔记网盘分享
- Java 9 ← 2017,2019 → Java 13 ,Java 两年来都经历了什么?| CSDN 博文精选
- 老男孩高端linux培训2014业务服务范围
- MapReduce分布式编程框架
- labelImg 标签bug
- 亚太地区数学建模优秀论文_2020APMCM 亚太地区大学生数学建模竞赛
- 2013=726 整合,优化,利用自身资源。 让自己的时间更有意义,最大化利用
- 软件测试技术——覆盖方法介绍
- xp系统usb android,xp系统usb网络共享怎么设置,xp系统usb手机网络共享设置方法
- html怎么取消打印空白页,怎么取消打印空白页:如何删除Excel工作表中的空白页...
- solidworks背景改为纯白色
- 【设计模式】结构型模式之代理模式
- 老司机珍藏的130个网站,没人的时候偷偷看!
- stardict词典下载
- 强化学习 | Multi Agents | Trust Region | HATRPO | HAPPO
热门文章
- html之圆形用户头像
- Tara APP隐私政策
- 涉密计算机终端安全防护,终端安全登录与文件保护系统保密认证设备
- SageMath矩阵操作及解线性方程组
- curve BLS12-377/381 BN256 SageMath脚本
- 起底白帽黑客郭盛华读过的学校,看完流眼泪了!
- c语言开发宏程序,一文搞懂宏程序的编程基础,快速入门秘笈
- lightgbm中的多分类multiclass与multiclassova
- shell中各种括号用法
- 度量衡计算工具_单位换算器|度量衡计量单位换算转换器下载v1.0 官方版 - 欧普软件下载...