当前位置: 首页 > news >正文

网站建设是系统工程广州网站建设 名片制作 网站管理

网站建设是系统工程,广州网站建设 名片制作 网站管理,外卖网站建设的策划,做名片上什么网站文章目录 fc/sfc mesen下载和使用推荐 fc/sfc https://www.mesen.ca/docs/ mesen2安装,vscode安装zg 任天堂yyds w d 左右移动 u结束游戏 i崩溃或者卡死了 L暂停 D658地方有个flag 发现DEEE会使用他。且只有这个地方,maybe会输出flag,应…

文章目录

  • fc/sfc

mesen下载和使用推荐

fc/sfc

https://www.mesen.ca/docs/

mesen2安装,vscode安装zg

任天堂yyds

w d 左右移动 u结束游戏 i崩溃或者卡死了 L暂停

在这里插入图片描述

D658地方有个flag
发现DEEE会使用他。且只有这个地方,maybe会输出flag,应该属于DEDF这个函数,因为和上面通过RTL隔开了
在这里插入图片描述

00CD5E [004D5E]  A9 00 00       LDA #$0000
……
00CD73 [004D73]  22 AC C0 00    JSL $00C0AC00C0AC [0040AC]  3B             TSC ……             	   00C8E0 [0048E0]  22 69 E0 00    JSL $00E069                                00E069 [006069]  08             PHP……00E073 [006073]  CB             WAI  中断00E074 [006074]  AF 30 00 00    LDA $000030……00E07C [00607C]  6B             RTL……00C8EA [0048EA]  6B             RTL
00CD77 [004D77]  80 E5          BRA $00CD5E

发现R的时候没有 JSL $00E069 直接到并且也没有 RTL返回到BRA $00CD5E
在这里插入图片描述

但当开始00C0AC时候 此时返回地址是正常的在这里插入图片描述
发现返回地址比保存到栈里的返回地址多1,可能是这个汇编的特色吧

所以问题就出在这段00C0AC [0040AC] 3B TSC -> 00C8EA [0048EA] 6B RTL这段代码里不但改掉了返回地址,并且没有进入00E069 里

然后设了个条件断点观察栈的返回地址改变时候自动下断点

在这里插入图片描述
发现进入 --------sub start-------- 018301 [008301] A3 04 LDA $04,S后改变的
调试后又发现是018316 [008316] 20 28 00 JSR $0028导致的,会跳转到0028去执行

000028 [000028]  54 00 7F       MVN $7F,$00
00002B [00002B]  60             RTS----------------

在这里插入图片描述
大致逻辑如下

// 假设有一个 `stack[]` 数组表示堆栈,`memory[]` 数组表示内存void subroutine() {A = stack[4];      // LDA $04,Smemory[0] = A;     // STA $00Y = A;             // TAYA = stack[8];      // LDA $08,SX = A;             // TAXA = stack[10];     // LDA $0A,Sint temp = X;      // 保存 X 的值X = Y;             // XBA: 交换 A 和 XY = temp;A |= stack[6];     // ORA $06,Smemory[41] = A;    // STA $29A = stack[12];     // LDA $0C,Sif (A == 0) {goto skip_decrement;}A--;               // DEC
skip_decrement:// PHB 及 PLB 没有直接映射subroutine_0028(); // JSR $0028A = stack[6];      // LDA $06,Smemory[2] = A;     // STA $02return;            // RTL
}
010028 [000028]  54 00 7F       MVN $7F,$00此时A=2 X=0 Y=1ff9 DB=7E第一次复制:
源地址:$7F:0000 的值被复制到 目标地址 $00:1FF9。
X 和 Y 递增:
X = 0 + 1 = 1
Y = 1FF9 + 1 = 1FFA(以十六进制计算,加 1 是 1FF9 → 1FFA)。
A 减 1:A = 2 - 1 = 1。
第二次复制:
源地址:$7F:0001 的值被复制到 目标地址 $00:1FFA。
X 和 Y 递增:
X = 1 + 1 = 2
Y = 1FFA + 1 = 1FFB.
A 减 1:A = 1 - 1 = 0.
第三次复制(A 变为 0,但 MVN 会继续执行直到 A 为 $FFFF):
源地址:$7F:0002 的值被复制到 目标地址 $00:1FFB。
X 和 Y 递增:
X = 2 + 1 = 3
Y = 1FFB + 1 = 1FFC.
A 减 1:A = 0 - 1 = -1(以十六进制表示为 $FFFF)。

所以目标就是怎么改0x7f0000

期间自己乱尝试的时候发现前面的按键会导致后面的R的结果不一样。猜测可能是由影响的,自己准备下个断点监视0x7f0000内容。尝试后发现上下按钮对返回地址有影响,类似上按钮+1,下按钮-1,但加的比特位置有区别,貌似和左右移动有关。并且球球不能掉下去,不然会清零

这个地方逆得不是很明白,有时间再看看
在这里插入图片描述
所以最终目标将其变成DEDF即可,还要保证球球不掉落下

因为会自动加1,所以是DEDE

在这里插入图片描述

http://www.dtcms.com/a/590329.html

相关文章:

  • 静态网站做淘宝客如何做英文网站的外链
  • 企业二级网站怎么做建邺做网站价格
  • 【Envi遥感图像处理】018:envi编辑头文件的方法及具体应用
  • RHCE复习作业2
  • AUTOACT论文翻译
  • html5 做手机网站什么是做学院网站
  • ipad 建网站电商入门教学
  • e2ee网站开发框架2.23先行版wordpress小论坛小程序
  • 携程网建设网站的理由济南智能网站建设报价
  • flash网站在线diy源码如何做网站首页关键词
  • B树与B+树核心差异深度解析
  • 11.9 脚本调试 手机网页调试参考
  • 制作网站公司网址开发公司公司简介
  • 满洲里做网站郑州企业网站价格
  • FoundationPose:统一的新物体6D姿态估计与跟踪
  • 地方志网站建设方案南京平台网站建设
  • 杭州建站模板黄岛网站建设公司
  • C语言容易被忽略的易错点(2)
  • 十堰网站建设u2028深圳住房与建设网站
  • 栖霞建设招标网站包装设计网课答案
  • 网站建设引入谷歌地图淘宝客网站虚拟主机
  • [题解]龟兔赛跑 | PTA
  • 禁闭求生2/Grounded 2|网络联机|30GB|简体中文|支持多种操作设备
  • 网站开发流行语言php网站开发实训指导书
  • 百科类网站建设静态网站开发课程相关新闻
  • 我与C++的故事
  • HTML 段落
  • 国外网站无法访问企业网站备案名称
  • 建设网上银行官方网站起飞页自助建站平台
  • Bluepine Tech Foundation 启动全球AI农业数据服务平台