9.x86游戏实战-汇编指令mov

news2024/11/23 8:04:08

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动!

本次游戏没法给

内容参考于:微尘网络安全

工具下载:

链接:https://pan.baidu.com/s/1rEEJnt85npn7N38Ai0_F2Q?pwd=6tw3

提取码:6tw3

复制这段内容后打开百度网盘手机App,操作更方便哦

上一个内容:8.x86游戏实战-OD详解

OD使用过程中会经常卡死,只能通过任务管理器结束,然后重新来

有时候OD附加完进程,下图红框位置是空白的(什么也没有)

这时点一下下图红框位置的C就好了

然后有时候进程的线程会停止,需要检查一下

如果有线程停止了(不是激活状态),如下图点击 Resume All threads让线程启动

学习汇编代码,就要写代码,就要执行代码,最简单的方式就是使用OD附加一个进程,然后找这个进程一直运行的代码,然后在一直运行的代码里下断点(后面就能看到断点是什么东西了),下了断点之后写汇编代码,然后使用断点的功能一行一行的执行代码

进程中什么位置会一直执行?ws2_32.send,send函数是网络程序用于给服务器发送数据包的(有的游戏不使用send,其它的后面在写)

OD附加进程,这里多一嘴OD也可以不用管理员启动也能附加进程,用不用管理员要看要被附加的进程,所以为了省心直接全用管理员启动就好了

鼠标按住下图红框位置,然后拖到要附加的程序窗口上,然后放开鼠标

然后点是就可以了

然后会到入口点,如下图,这时被附加程序会卡死,OD的状态如下图也是暂停,这时点下图红框位置让附加进程运行起来

OD附加完进程之后,点击下图红框位置,也就是点击代码段区域

然后按ctrl+g,然后输入 ws2_32.send,然后点OK,如果点了OK没反应,那就重新操作几次

然后就能跳转到send函数了,跳转到send函数的头部,也就是send函数的第一行,ws2_32是模块名,ws2_32.send意思是跳转到ws2_32模块里的send函数,有多个函数叫send所以需要指定模块名,然后为什么用ws2_32模块里的send函数?别管为什么这里记住用ws2_32里的send函数就行,后面就能知道原因了

首先选中下图红框位置(send函数的第一行)

然后按f2,下图紫色框框起来的位置就变成红色了,这说明这里下了断点,当程序执行到这时会卡主

然后在程序做一个可以发送数据包的操作,停下来(或者说断下来)的样子,如下图

然后多选几行代码,然后鼠标右击选择填充为NOP

NOP的意思是没有代码,处理器执行到NOP时不做任何操作,然后继续往下执行,NOP的硬编码是0x90

然后开始写mov指令,双击下图红框位置

然后输入mov eax, 1

然后点汇编,点了汇编按钮之后窗口不会自动关闭,需要手动关

然后就有了 mov eax, 1 代码

然后接下来按 f8,让它运行一下看看效果,如下图,可以看到eax变成了1

然后写mov ecx, [0x1484438],取地址的值

然后点了汇编之后,它给我们添加dword ptr,ptr表示地址,dword是数据宽度(4字节宽度)

然后按f8执行代码看看效果,这就是一个取内存地址里面值的效果

然后还能写 mov [0x1484438], 2,给内存地址里的值修改掉

然后点汇编的时候它让写一个操作数大小

这里写一个dword,4字节大小

然后点汇编就变成了下图的样子

然后按f8执行代码的效果,游戏崩溃了,这说明改成功了,我们是把0x1484438里的值改成了2,0x1484438原本的值是一个内存地址,然后2不是一个正常的内存地址,所以它蹦了

然后如下图红框,有的时候写了内存地址,点击汇编之后,它会变成英文,这是翻译的问题,它把内存地址翻译成了函数名(一般之后函数才会被翻译成英文)

c/c++写汇编,下方的代码是32位的汇编写法,64位汇编没法用_asm写,64位的汇编后面用到的时候会写

#include <iostream>
#include "Windows.h"

int main()
{

	int a = 1;
	int b = 1;
	_asm {
		mov a,2
		mov eax,3
		mov b, eax
	}
	printf("%d, %d", a, b);
}


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1893727.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux上快速定位Java代码问题行

生产环境中&#xff0c;经常会遇到CPU持续飙高或内存、IO飙高&#xff0c;如何快速定位问题点是很多新手头疼的问题&#xff0c;只能通过经验和代码推理&#xff0c;其实这里针对Java程序可以通过top和jstack命令&#xff0c;快速定位到问题代码。 Top命令的输出 具体定位之前…

ubuntu20.04配置调试工具

1.准备工作&#xff1a;安装g或者gdb sudo apt updatesudo apt install gg --versionsudo apt install gdbgdb --version 2.配置环境 2.1在本地新建一个main.cpp #include <iostream> #include <vector> #include <string>using namespace std;int main(…

【HarmonyOS4学习笔记】《HarmonyOS4+NEXT星河版入门到企业级实战教程》课程学习笔记(二十一)

课程地址&#xff1a; 黑马程序员HarmonyOS4NEXT星河版入门到企业级实战教程&#xff0c;一套精通鸿蒙应用开发 &#xff08;本篇笔记对应课程第 31 节&#xff09; P31《30.数据持久化-关系型数据库》 上一节中学习了使用用户首选项的方式实现数据持久化&#xff0c;但用户首…

DC/AC电源模块:效率与可靠性兼备的能源转换解决方案

BOSHIDA DC/AC电源模块&#xff1a;效率与可靠性兼备的能源转换解决方案 随着科技的迅速发展和人工智能技术的逐渐成熟&#xff0c;各种电子设备的需求也日益增加。然而&#xff0c;这些设备往往需要不同的电压和电流来正常工作&#xff0c;而供电方式却可能不尽相同。这时&am…

miniprogram-to-uniapp-微信小程序转换成uniapp项目

文章目录 参考:miniprogram-to-uniapp使用指南第一步第二步第三步第四步【miniprogram-to-uniapp】转换微信小程序”项目为uni-app项目(新版本工具已经支持各种小程序转换) 参考: 小程序技能树 uni-app基础知识总结 miniprogram-to-uniapp使用指南 第一步 win + R 输入…

【计算机网络仿真】b站湖科大教书匠思科Packet Tracer——实验15 网络故障导致的路由环路问题

一、实验目的 1.验证因网络故障而导致的静态路由的路由环路问题&#xff1b; 二、实验要求 1.使用Cisco Packet Tracer仿真平台&#xff1b; 2.观看B站湖科大教书匠仿真实验视频&#xff0c;完成对应实验。 三、实验内容 1.构建网络拓扑&#xff1b; 2.验证网络故障导致的…

Stable Diffusion图像的脸部细节控制——采样器全解析

文章目录 艺术地掌控人物形象好易智算原因分析为什么在使用Stable Diffusion生成全身图像时&#xff0c;脸部细节往往不够精细&#xff1f; 解决策略 局部重绘采样器总结 艺术地掌控人物形象 在运用Stable Diffusion这一功能强大的AI绘图工具时&#xff0c;我们往往会发现自己…

web学习笔记(七十五)

目录 1.小程序修改响应式数据 1.1修改基本数据类型的值 1.2修改复合数据类型的值 2. 发送请求 3.小程序解决跨域问题 1.小程序修改响应式数据 1.1修改基本数据类型的值 在小程序中需要先将data中的数据拿过来并结构&#xff0c;才可以在this.setdata中修改数据&#xf…

充分利用智慧校园人事系统,提升党政职务管理

智慧校园人事系统中的党政职务管理功能&#xff0c;是专为高校及教育机构设计的&#xff0c;旨在高效、精确地处理与党政职务相关的各类事务&#xff0c;包括职务任命、任期管理、职责分配、考核评估等&#xff0c;以信息化手段促进党务及行政工作的透明化、规范化。 该模块首先…

14-5 小语言模型SLM 百科全书

想象一下这样一个世界&#xff1a;智能助手不再驻留在云端&#xff0c;而是驻留在你的手机上&#xff0c;无缝理解你的需求并以闪电般的速度做出响应。这不是科幻小说&#xff1b;这是小型语言模型 (SLM) 的前景&#xff0c;这是一个快速发展的领域&#xff0c;有可能改变我们与…

转让北京文化传媒公司带营业性演出经纪许可证

影视文化传播倡导将健康的影视文化有效传播给观众&#xff0c;从而构建观众与电影制作者的良 性沟通与互动&#xff0c;是沟通电影制作者与电影受众的重要桥梁。影视文化泛指以电影&#xff0c;电视方式所进行的全部文化创造&#xff0c;即体现为电影&#xff0c;电视全部的存在…

探索企业知识边界,鸿翼ECM AI助手开启智慧问答新时代

在信息化迅速发展的当下&#xff0c;企业积累的数字文档数量巨大&#xff0c;这些文档中蕴含的深层信息对业务发展至关重要。然而&#xff0c;传统的搜索技术常常因只能进行关键字查询而无法满足对文档深层次理解的需求。 据Gartner调查&#xff0c;高达47%的员工在寻找有效工…

制造企业真的需要数字化转型吗?一文讲透:为何做,如何做?

此前拜访了不少制造企业&#xff0c;其以中小型企业居多&#xff0c;在与企业负责人交流数字化转型话题时&#xff0c;感触最多的还是管理者对“数字化转型”的认知。 在数字化转型方面从国家层面到地方政府进行大量的宣传与政策支持&#xff0c;部分行业头部企业也从数字化转…

AI免费英语学习在线工具:Pi;gpt;其他大模型AI 英语学习智能体工具

1、pi(强烈推荐&#xff1a;可以安卓下载使用) https://pi.ai/talk &#xff08;网络国内使用方便&#xff09; 支持实时聊天与语音对话 2、chatgpt&#xff08;强烈推荐&#xff1a;可以安卓下载使用) https://chat.openai.com/ &#xff08;网络国内使用不方便&#xf…

贪心 | Java | LeetCode 455, 376, 53 做题总结

贪心算法介绍 贪心算法&#xff1a;贪心的本质是选择每一阶段的局部最优&#xff0c;从而达到全局最优。 说实话贪心算法并没有固定的套路。 一般解题步骤 贪心算法一般分为如下四步&#xff1a; ① 将问题分解为若干个子问题 ② 找出适合的贪心策略 ③ 求解每一个子问题的…

vue2+element-ui新增编辑表格+删除行

实现效果&#xff1a; 代码实现 &#xff1a; <el-table :data"dataForm.updateData"border:header-cell-style"{text-align:center}":cell-style"{text-align:center}"><el-table-column label"选项字段"align"center&…

【全网最全流程+所有代码】企业微信回调联调,开通企微回调和收到企微回调

流程图: 只是这里的消息回调,仅作为提示,群内有消息了。不是具体的消息,而是类似这样的结构,: 如果需要获取消息,还需要拉取企微群内消息方法,这个后续再更新。 好了,我们开始吧。 开启消息回调和接收消息回调,地址是一样的,只是 开启消息回调,get请求, 接受消…

【图像分割】mask2former:通用的图像分割模型详解

最近看到几个项目都用mask2former做图像分割&#xff0c;虽然是1年前的论文&#xff0c;但是其attention的设计还是很有借鉴意义&#xff0c;同时&#xff0c;mask2former参考了detr的query设计&#xff0c;实现了语义和实例分割任务的统一。 1.背景 1.1 detr简介 detr算是第…

Build a Large Language Model (From Scratch)附录A(gpt-4o翻译版)

来源&#xff1a;https://github.com/rasbt/LLMs-from-scratch?tabreadme-ov-file https://www.manning.com/books/build-a-large-language-model-from-scratch

GBU2510-ASEMI储能专用整流桥GBU2510

编辑&#xff1a;ll GBU2510-ASEMI储能专用整流桥GBU2510 型号&#xff1a;GBU2510 品牌&#xff1a;ASEMI 封装&#xff1a;GBU-4 正向电流&#xff08;Id&#xff09;&#xff1a;25A 反向耐压&#xff08;VRRM&#xff09;&#xff1a;1000V 正向浪涌电流&#xff1a…