[rop] 2048 main
fx-es(ms)吧
全部回复
仅看楼主
level 7
XgoodollsX 楼主
https://www.123865.com/s/HAApTd-8n9jH 提取码:verF
2025年f吧最后一个程序(也许)
长度1000字节(刚好) 理论上可以常驻 但是对使用功能有限制
模拟器(msvc)测试完毕 真机未测试
2025年12月31日 11点12分 1
level 7
XgoodollsX 楼主
有些地方于原版不符 问题不大
照这个思路的话这个程序已经快摸到f吧当前技术的天花板了
2025年12月31日 11点12分 2
level 9
卧槽牛逼
f吧最高的山终于在2025年最后一天被攻克了!
2025年12月31日 14点12分 3
玩了一下,不错,但感觉调成表格小字体应该会好一点,还有连续合并的问题,不过总体已经很厉害了
2025年12月31日 14点12分
bro喜欢用1145垫位[阴险]
2026年01月01日 01点01分
level 11
verF?
2025年12月31日 16点12分 5
level 11
还有一座山俄罗斯方块明年继续攻克吧
2025年12月31日 16点12分 6
level 9
请问真机注入有什么注意的吗?我等放寒假真机注入一次试试看
2026年01月01日 13点01分 7
常规注入即可
2026年01月01日 14点01分
level 9
能大致讲一下逻辑吗?p3update研究半天没看明白[你懂的]
2026年01月02日 09点01分 8
。。。
2026年01月02日 10点01分
level 7
XgoodollsX 楼主
我语言表达能力是依托 有问题可以再问(悲)
程序思路如下
p0 数据储存
d400处有16个字节 存游戏中各个格子中的数字 不过存的是一个索引
程序最后有标签<update> 存的是格子的更新顺序
.
p1 渲染
用拼字地址0282C打在屏幕上(短循环重复4*4次)
具体确认拼字内容是通过d400处的索引计算出对应数字在字库中的位置得到
(我字库就放在最后 很明显吧)
.
p2 按键检测
正常检测
ac重置(清d400 清屏 重置运行区)
1234取一个数字 计算出该方向键对应的更新顺序在<update>中位置的地址
写入p3 备用
未知按键回p1
.
p3 更新
<update>中数据存储方式为
偏移量 0000 一次移动中加载的12个格子的地址的低位(简称索引)
此处偏移量指的是一个数字移动后的索引减去原索引的值
若移动前格子称为加载位 移动后格子称为目标位

p3先获取加载位值 更新08f10表
再获取目标位值进行比较 比较结果用于控制<p3control>处执行地址
若目标位为00 则执行sp+=14h 用1810e使er0=加载位值
若目标位等于加载位 则执行sp+=Ah er0=0001 再sp+=4跳过上面的1810e
er8=er0
读取目标位利用er8进行修改 再往加载位填00
若目标位不等于加载位且不等于00 执行pop er14直接跳过
以上步骤重复12*3遍 期间不会重置运行区
(更新一次要运行12次 但此处更新一次只能移动一格 所有要重复3遍)
.
p4 生成
177dc随机取一个数 将首位当计数器
遍历d400 每遇到一个00计数器-1 当计数器归零时写入01
理论上如果格子全部填满程序会在这里卡死 但是我不到为什么实际上不会 可能又出了什么什么bug 懒得修了(
2026年01月02日 11点01分 9
level 7
XgoodollsX 楼主
在程序中以下部分可能难以解析
1.p4内 此处读取指针的值 利用141ca+1da70根据r0是否为00设置r0(我讲过 但帖子删了)
加2bff使er0等于ffff(r0=00)或0000(r0=01)以此对计数器进行加减
2.p3内 21110结尾pop xr4,qr8 这里我在0902e里面凑出来个edc0赋给er8
然后sp=[er8]回到p3return 再pop er8和er2 给短循环地址加1
这里21110pop完了的执行的21d36刚好08f90里面的pop xr8重合
3.p3内 上面讲了 类似于加法分支
4.p2内 程序核心 程序内唯一一个memcpy 所有运行区重置均在这里运行
为了给p1的短循环适配而被迫设置长度为0050h 所以程序无法通过这里启动
2026年01月02日 11点01分 10
level 9
求launcher
2026年01月03日 14点01分 11
真的有点长啊,我得抽个时间再真机测试,上课的时候太容易打错了[泪],寒假等我的消息[太开心]
2026年01月03日 14点01分
同求
2026年01月05日 11点01分
?launcher不就是发的文件末尾那一行注释吗?fd243030363231303105e0e930d724d7c45231308acd
2026年01月05日 12点01分
另外说一句,正常launcher打好之后按等于会白屏,显示为没开屏幕,需要按shift之后再按任意一个方向键进入游戏,不会有人看到这个就以为自己注入失败了吧[滑稽]
2026年01月05日 12点01分
1