8.x86游戏实战-OD详解

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

本次游戏没法给

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

上一个内容:7.x86游戏实战-C++实现跨进程读写-跨进程写内存

工具下载:下载 OllyICE_wc.zip这个

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

提取码:6tw3

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

打开OD

用管理员启动NewOd.exe

下图菜单栏里的打开和附加,打开的意思是用OD运行一个程序,附加是自己运行一个程序(双击exe文件运行程序)让OD附加上,一般都会使用附加

然后点击附加,然后随便找一个程序附加,附加窗口里面显示的是进程(程序运行起来就被称为进程),然后想附加的进程可能会没有,这时重启电脑试试,如果还没有后面会有解决办法

附加完之后,会有下图的四个区域,代码区域、寄存器区域、内存区域、栈区域

下图红框位置是当前程序状态

停止的状态,效果就是附加的程序卡死

停止状态点击下图红框位置就会让程序运行起来

有时候它的窗口会变成下图红框的样子

如下图鼠标放到边缘变成箭头,然后鼠标左键按住左、右、上、下拖动一下就能明白了

或者点击下图红框位置的C

如下图有时会弹出其它的窗口搞的很乱,然后按C也没有用

这时双击下图红框位置就可以了

代码区

代码区为了好理解可以称它是代码段(就是程序中专门用来放代码的内存空间),如下图它有4列,从左往右分别是 代码的内存地址、硬编码、汇编代码、注释

代码的内存地址,就是内存地址所代表的空间里的内容视作代码

硬编码是cpu看的(英特尔、AMD、苹果的m系列)不同处理器用的指令集不一样,然后就会导致硬编码不一样

汇编代码,汇编是通过硬编码翻译的(老前辈们就是用硬编码写程序,后面使用硬编码实现汇编语言,又通过汇编实现c语言)

注释是给人说明这段代码什么意思

内存区:

内存区又称数据区(为了区分数据是代码还是数据(数据这俩字很抽象,这里可以理解成除了代码以外的所有东西)),如下图红框,首先ctrl+G弹出下图里的弹框,然后输入0x77166C1C,输入完点击ok,0x77166C1C是代码的内存地址

然后可以看到下图红框,可以通过数据区来看代码,但是通过数据区看代码就只能看硬编码了,然后在代码区看代码它会自动给翻译汇编代码

同理在代码区看数据区的内容,可以看到它翻译的汇编代码是乱的(后面就知道为什么说它是乱的了)

到这应该可以明白一件事,同样是数字(数据)对它的不同看法会有不同的样子,数据本身没有任何意义,有意义的是我们如何去解析,有一个东西叫数据结构,通过上方的例子带入数据结构应该可以很好理解

OD菜单的说明

看这位大哥写的(写的有点官方主要了解了解,看不懂也没事,后面用的时候会用白话写):OD窗口介绍_od界面介绍-CSDN博客


 

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

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

相关文章

嵌入式Linux之Uboot简介和移植

uboot简介 uboot 的全称是 Universal Boot Loader,uboot 是一个遵循 GPL 协议的开源软件,uboot是一个裸机代码,可以看作是一个裸机综合例程。现在的 uboot 已经支持液晶屏、网络、USB 等高级功能。 也就是说,可以在没有系统的情况…

[我靠升级逆袭成为大师]韩漫日漫无删减完整版,免费在线观看漫画

[我靠升级逆袭成为大师]韩漫日漫无删减完整版,免费在线观看漫画 不能多说,怕审-核不过,自己看图吧。 目前统计【统计日期:2024-07-03】: 完结的有:420部。 连载的有:308部,持续更…

生单链路流程复杂,涉及到上下游商品、库存、营销、风控、拆单、校验、落库等等十多个节点操作,需要保证数据的完整性和正确性

处理复杂的生单链路流程,确保数据的完整性和正确性,需要一个综合的策略,包括但不限于以下几个方面: 1. **流程设计**: - 明确每个节点的职责和输入输出,确保流程的逻辑清晰。 2. **数据校验**&#xf…

python库(1):Nuitka库

1 Nuitka介绍 Nuitka是一个 Python 解释器的替代品,支持CPython提供的代码,可编译 Python 代码到 C 程序,并使用 libpython 来执行这些代码,就像 CPython 一样。 这让你可以在没有安装 Python 的环境中运行 Python 程序&#xf…

AC7801时钟配置流程

一 默认配置 在启动文件中,已经对时钟进行了初始化,默认按外部8M晶振,配置系统时钟为48MHZ,APB为系统时钟的2分频,为24MHZ。在system_ac780x.c文件中,可以找到下面这个系统初始化函数,里面有Se…

前端修改audio背景色

1.查看浏览器设置Show user agent shadow DOM是否打开 2.打开可以查看audio Dom /** 去掉默认的背景颜色 */ audio::-webkit-media-controls-enclosure{background-color:unset; } 3.效果图

Java官网网址及其重要资源

Java是一种广泛应用于开发各种应用程序的编程语言,它具有跨平台、面向对象和高性能等优势。若你想学习Java或深入了解它的最新动态,Java官网是你的首要目的地。在本文中,我们将向你介绍Java官网的网址以及一些重要资源。 Java官网网址&#x…

TCP/IP 网络协议族分层

TCP/IP协议族 TCP/IP不单是TCP和IP两个协议,TCP/IP实际上是一组协议,它包括上百个各种功能的协议,如:远程登录、文件传输和电子邮件等,当然,也包括TCP、IP协议 它将软件通信过程抽象化为四个抽象层&#…

基于SpringBoot校园外卖配送系统设计和实现(源码+LW+调试文档+讲解等)

💗博主介绍:✌全网粉丝10W,CSDN作者、博客专家、全栈领域优质创作者,博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌💗 🌟文末获取源码数据库🌟 感兴趣的可以先收藏起来,…

c++:关键字异常处理机制

模板编程的几个关键字 模(mu)板编程初体验 (1)template和typename (2)模板实际上是一种抽象,C的高级编程特性就是不断向抽象化发展 export (1)用来在cpp文件中定义一个模板类或模板函数,而它的声明在对应的h文件中 (2)export专用于模板,类似…

揭秘电子世界的双雄:模拟电路与数字电路的精彩对决!

数字电路与模拟电路,这两者在电子工程领域可谓是两大基石,各有千秋,各自发挥着不可或缺的作用。下面,我们就来详细探讨一下它们之间的主要区别。 1. 信号类型与处理 模拟电路:处理的是连续变化的信号,就像…

使用阿里云语音服务实现设备异常实时通知

随着物联网的普及,设备异常通知方式也变得多种多样。从传统的后台异常列表,到短信通知,再到微信消息通知等。然而,当设备探测到火警等紧急异常时,需要实时通知到相关人员。本文将介绍如何借助阿里云的语音服务来实现这一功能。 1. 准备工作 1.1 资质申请 首先,登录阿里…

Git中fetch与pull 的区别

一、fetch与pull的基本概念 在Git中,fetch和pull都是用于从远程仓库获取数据的命令。但是,它们在处理方式和结果上有所不同。 1、fetch fetch命令用于从远程仓库下载最新的数据到本地仓库,但它不会自动合并或修改当前的工作。fetch会将远程…

2024年大厂离职当博主成为最拥挤自媒体赛道的现象分析

大厂离职博主在2024年成为最拥挤自媒体赛道的现象分析 1. 行业背景与就业环境变化 降本增效引发的被动离职:近年来,随着各行业的降本增效措施不断推进,即便是知名大厂也在缩减员工规模。腾讯、阿里巴巴等企业的财报显示,从2021年…

一键恢复短信,4个方法,轻松找回iPhone数据!

在日常生活和工作中,短信往往承载着重要的信息和回忆。然而,意外删除、系统故障或手机更换等情况都可能导致短信丢失,这让很多iPhone用户感到困扰。 好消息是,您并不需要担心这些数据无法找回。如今,一键恢复短信的方…

autoware.universe源码略读(3.7)--perception:elevation_map_loader/euclidean_cluster

autoware.universe源码略读3.7--perception:elevation_map_loader/euclidean_cluster elevation_map_loadereuclidean_clustereuclidean_clustervoxel_grid_based_euclidean_cluster节点类launch文件 elevation_map_loader 在上一篇文章有提到compare_map_segmentat…

基于java+springboot+vue实现的家政服务平台(文末源码+Lw)299

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本家政服务平台就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息&a…

Redis中hash类型的操作命令(命令的语法、返回值、时间复杂度、注意事项、操作演示)

文章目录 字符串和哈希类型相比hset 命令hget 命令hexistshdelhkeyshvalshgetallhmgethlenhsetnxhincrbyhincrbyfloat 字符串和哈希类型相比 假设有以下一种场景:现在要在 Redis 中存储一个用户的基本信息(id1、namezhangsan、age17),下图表示使用字符串…

2024护网整体工作预案示例

目录 第1章 HW整体工作工作部署 1.1 工作组织架构 1.2 各部门工作职责 1.3 演练期间工作机制 1.3.1 工作汇报机制 1.3.2 应急响应机制 第2章 系统资产梳理整改 2.1 敏感信息梳理整改 2.2 互联网资产发现 2.3 第三方供应商梳理 2.4 业务连接单位梳理 第3…

下载nginx搭建的文件服务器(爬虫)

下载nginx搭建的文件服务器(爬虫) windows版 需要下载python包:pip install requests import requests import re import os#开始访问的url地址,必须以/结尾 index_url "https://www.aaa.com/aaaaa/" #下载到本地的地…