合购VIP资源论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

魔鬼作坊全套软件编程VIP教材[更新到最新]
重楼C++辅助是如何炼成的教材
独立团编程培训系列教材全套
九尾狐EZ按键脚本VIP系列教程
VC++传奇三逆向研究三部曲 打包
江中游VIP系列按键精灵培训班
播布客新概念C语言视频教程
小生我怕怕中级班破解培训教材[价值2000元]
紫猫VIP按键精灵培训教程
2013饭客大型职业入侵渗透特训班
蓝丝雨TC《商业辅助是怎样炼成的》
老A淘宝打造爆款系列教材[更新至第九期]
上百G电脑维修硬件维修手机维修教程
菜鸟腾飞MetaSploit渗透测试平台之应用
甲壳虫VIP绝版SEO优化系列教程
半斤八两VIP初级破解班1-27官方售价500元
半斤八两中级破解教程价值1000元
天都吧全站教程高清无密更新完毕
暗月渗透系列教程第一套更新完毕
暗月渗透系列教程第二套更新完毕
DIY商业辅助学院201VIP教程[基础实战LUA篇]
老王Python培训视频教程(价值500元)
2014年小七免杀论坛VIP系列第三季 (美女讲师)
一洋2014淘宝培训最新教程16个模块(价值2980元)
大猛网赚编程系列教程(价值699元)
C++ Primer视频教程(初级,中级,高级全套)
轩辕IT培训 Linux C++ 远程全科班[价值500元]
C++实地培训教程[持续更新中]
魔域辅助系列教程(价值300元)
burpsuite系列视频教程高清无KEY 
 侠客C#营销软件开发特训(价值880元)[高清版]
滴水网络初级逆向培训视频(价值800元)逆向必备
某米网价值2399元钻石VIP会员视频
价值上万元淘宝大学电子商务培训教材
敬伟PS教程/PS5 6视频教材书/平面 广告设计淘宝美工自学全套高清
安全渗透测试实践高级系列课程[价值1500元]
AGP驱动高级班VIP零基础游戏反驱动保护教程
7000元AGP论坛远程VIP培训班
梦幻西游2辅助系列视频教程
龙之谷辅助系列视频教程
世恒百集易语言教程全套100集更新完毕
广告位置招租150/月 联系QQ:1595000430
Hadoop七天培训[更新完毕] JAVA上海培训基础就业班 达内C++ 2014 培训第一期视频教程
Windows程序设计第五版视频教程[价值1700]
SEO培训史上最强SEO培训(价值4980元)[高清完整版]
老男孩python高级运维开发课程(高清完整版)
老男孩OpenStack企业私有云实战培训课程(价值800元)
Java 编程思想系列教程[初级中级高级]
在线开通VIP会员联系QQ:1595000430点击这里给我发消息
在线开通VIP会员联系QQ:1595000430点击这里给我发消息 
上千G精品VIP教程目录请点击这里 加入VIP会员全站无限制下载 免费获取VIP会员说明详细点击
永久电影资源采集网
超级资源采集网--用心创造快乐

OK资源网无水印高清资源

速播资源-更新快速度保证也不卡
广告位招租联系QQ:1595000430
永久电影资源采集网
永久电影资源采集网
8k资源网超清资源国内百G带宽
广告位招租联系QQ:1595000430
查看: 317|回复: 317

[脚本语言] 64位内存与通用寄存器

[复制链接]
  • TA的每日心情
    开心
    2020-3-26 15:08
  • 签到天数: 28 天

    [LV.4]偶尔看看III

    11

    主题

    38

    帖子

    96

    合购币

    ○小试身手●

    UID
    277002
    积分
    134
    合购币
    96 枚
    注册时间
    2019-5-23
    最后登录
    2020-3-26
    发表于 2020-1-9 18:03:21 | 显示全部楼层 |阅读模式
    大家好!
    1.png
    随着游戏行业的发展,x32位的程序已经很难满足一些新兴游戏的需求!
    2.png
    因为32位内存的最大值为0xFFFFFFFF,这个值看似足够,但是当游戏对资源需求非常大,那么真正可以分配的内存就显得捉襟见肘了。
    3.png
    于是很多公司尝试并成功的开发了64位的游戏。并且很多32位的游戏也在向64位转型。
    4.png
    很多初学者在刚刚接触64位程序时会觉得很陌生,想象着这是一个新的领域,会比32位的分析难度高很多。其实当你对32位的逆向有一定的基础和理解的时候,再来看64位就不那么难了。
    5.png
    64位与32位最直观的区别就是他可分配的内存最大值是0xFFFFFFFFFFFFFFFF。有人可能会说这也就比32位的多了一倍,其实不然,他的大小是32位的0x100000000倍。这个大小就足够我们去使用了,甚至当你在分析64位的游戏时会发现,很多地址也仅仅是1XXXXXXXX,因为目前来说这些也就足够了。
    6.png
    64位与32位逆向的第二个区别就是他的寄存器,他的寄存器为16个而不是8个(如图)
    7.png
    在这16个寄存器中,前面8个的名字与32位的很像,只是前面的E改为了R。后面的8个则以R8-R15命名。当然我们所说的这16个是通用寄存器,而后面还有16个浮点数使用的XMM寄存器(如图)
    8.png
    在初学者的学习中,我们主要来学习通用寄存器的使用。
    RAX与EAX的作用是类似的,他主要用来存放函数的返回值,他的数值也是经常会变化的(如图)
    9.png
    图中是一个随意截取的一断64位函数代码,函数后面的RAX传递给RDX,其实就是将返回值进行传递,这里了解一下即可,后面还会详细讲解。
    RCX,RDX,R8,R9则常常会做为第1-4个参数(如图)
    10.png
    图中是一个游戏调用send函数的代码,RCX-R9分别为函数的s,buf,len,flags,当然如果还有其他的参数的话则会存放在RSP+28中,这些在后面讲函数的时候会详细讲解。
    RSP和32位中的ESP是类似的,同样作为堆栈指针(如图)
    11.png
    RBP虽然偶尔会用来作为帧指针,也就是所谓的栈底,但是显然没有32位用的频繁,下图则是RBP在函数头部被赋值的情况(如图)
    12.png
    当然RBP也常常会被用作普通的寄存器去进行传址。
    R10和R11在syscall/sysret指令中会被使用,暂时只需要了解一下即可。
    而这些寄存器中,除了RAX,RCX,RDX,R8,R9,RSP之外的寄存器,如果在函数过程中被调用,则必须在调用前对其数值进行保留(如图)
    13.png
    14.png
    15.png
    以上就是64为内存和通用寄存器的一些基础知识,深入的内容会在后面的文章和视频中进行讲解。


    回复

    使用道具 举报

  • TA的每日心情

    2020-3-19 10:16
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    0

    主题

    7439

    帖子

    75

    合购币

    禁止访问

    UID
    275507
    积分
    7514
    合购币
    75 枚
    注册时间
    2019-1-8
    最后登录
    2020-3-20
    发表于 2020-3-19 15:02:11 | 显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2020-3-19 10:16
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    0

    主题

    7439

    帖子

    75

    合购币

    禁止访问

    UID
    275507
    积分
    7514
    合购币
    75 枚
    注册时间
    2019-1-8
    最后登录
    2020-3-20
    发表于 2020-3-19 15:02:12 | 显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2020-3-19 10:16
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    0

    主题

    7439

    帖子

    75

    合购币

    禁止访问

    UID
    275507
    积分
    7514
    合购币
    75 枚
    注册时间
    2019-1-8
    最后登录
    2020-3-20
    发表于 2020-3-19 15:02:14 | 显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2020-3-19 10:16
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    0

    主题

    7439

    帖子

    75

    合购币

    禁止访问

    UID
    275507
    积分
    7514
    合购币
    75 枚
    注册时间
    2019-1-8
    最后登录
    2020-3-20
    发表于 2020-3-19 15:02:16 | 显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2020-3-19 10:16
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    0

    主题

    7439

    帖子

    75

    合购币

    禁止访问

    UID
    275507
    积分
    7514
    合购币
    75 枚
    注册时间
    2019-1-8
    最后登录
    2020-3-20
    发表于 2020-3-19 15:02:18 | 显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2020-3-19 10:16
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    0

    主题

    7439

    帖子

    75

    合购币

    禁止访问

    UID
    275507
    积分
    7514
    合购币
    75 枚
    注册时间
    2019-1-8
    最后登录
    2020-3-20
    发表于 2020-3-19 15:02:21 | 显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2020-3-19 10:16
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    0

    主题

    7439

    帖子

    75

    合购币

    禁止访问

    UID
    275507
    积分
    7514
    合购币
    75 枚
    注册时间
    2019-1-8
    最后登录
    2020-3-20
    发表于 2020-3-19 15:02:24 | 显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2020-3-19 10:16
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    0

    主题

    7439

    帖子

    75

    合购币

    禁止访问

    UID
    275507
    积分
    7514
    合购币
    75 枚
    注册时间
    2019-1-8
    最后登录
    2020-3-20
    发表于 2020-3-19 15:02:25 | 显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2020-3-19 10:16
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    0

    主题

    7439

    帖子

    75

    合购币

    禁止访问

    UID
    275507
    积分
    7514
    合购币
    75 枚
    注册时间
    2019-1-8
    最后登录
    2020-3-20
    发表于 2020-3-19 15:02:27 | 显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|小黑屋|手机版|Archiver|合购VIP资源论坛 |网站地图

    GMT+8, 2020-4-10 01:36 , Processed in 0.140536 second(s), 28 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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