新年第一响 发表于 2016-2-21 11:53

继续往下说吧。无奈,昨晚干到两点多,搜索到吐。上面有位仁兄说是找那个冷却的函数。很快找到了inc。说个找个办法,豌豆冷却时间7.5s.
不知道汇编中是怎么算的,搜索0-750之间的数值。几次就找到了。然后将这个值改到9000 (这个随意大于2000就行,看每个的冷却)。锁定应用。基本上算是无冷却。

新年第一响 发表于 2016-2-21 12:08

前面三行代码分别代表拿起,放地毯上开始计时,最后是冷却完成。https://www.52hb.com/forum.php?mod=image&aid=56171&size=300x300&key=8a09d30119d04606&nocache=yes&type=fixnonehttps://www.52hb.com/forum.php?mod=image&aid=56169&size=300x300&key=80c8e69a9d04e0f5&nocache=yes&type=fixnone几天的代码和昨天的不同。各位


新年第一响 发表于 2016-2-21 12:13

一搜索,结果为0.https://www.52hb.com/forum.php?mod=image&aid=56174&size=300x300&key=061f898260d3a186&nocache=yes&type=fixnone,然后还是崩溃。

新年第一响 发表于 2016-2-21 12:58

然后我就火大了。怎么办。别人都是找附近的,干脆就让它偏移1000=3e8。查找之间的数值。https://www.52hb.com/forum.php?mod=image&aid=56181&size=300x300&key=a7e69bb384aef298&nocache=yes&type=fixnone。竟然找到了一个。终于再找是谁访问了。竟然可以了。

新年第一响 发表于 2016-2-21 13:05

接着顺理成章的,继续找是谁访问了改地址。竟然找到和阳光基址一样的基址。
如此反复找了两次。看截图正确的地址:https://www.52hb.com/forum.php?mod=image&aid=56182&size=300x300&key=b05dc20a09c76103&nocache=yes&type=fixnonehttps://www.52hb.com/forum.php?mod=image&aid=56183&size=300x300&key=5621363fc5ab3f4b&nocache=yes&type=fixnone
至此 ,正确的地址找到。
发现了便宜的规律。4C ---------------9C.大家不用继续找第三第四的。直接复制偏移16进制的50即可。

两天的困惑。

Master 发表于 2016-2-21 13:09

.版本 2

.程序集 窗口程序集_启动窗口
.程序集变量 窗口句柄, 整数型
.程序集变量 进程ID, 整数型
.程序集变量 进程句柄, 整数型
.程序集变量 阳光初始地址, 整数型
.程序集变量 阳光基址偏移1, 整数型
.程序集变量 阳光最终地址, 整数型

.子程序 __启动窗口_创建完毕

时钟1.时钟周期 = 1000

.子程序 _时钟1_周期事件

窗口句柄 = 取窗体句柄 (“MainWindow”, “Plants vs. Zombies GOTY”)
.如果 (窗口句柄 ≠ 0)
    进程ID = 取窗口进程ID (窗口句柄)
    进程句柄 = 打开进程 (进程ID)
    输出调试文本 (窗口句柄)
    输出调试文本 (进程ID)
    内存_读整数型 (进程句柄, 十六到十 (“007794f8”), 阳光初始地址)

    内存_读整数型 (进程句柄, 阳光初始地址 + 十六到十 (“868”), 阳光基址偏移1)

    内存_读整数型 (进程句柄, 阳光基址偏移1 + 十六到十 (“5578”), 阳光最终地址)

    标签1.标题 = 到文本 (阳光最终地址)

    标签2.标题 = “游戏已经启动”

.否则
    标签2.标题 = “游戏未启动”
.如果结束


.子程序 _按钮1_被单击


.如果真 (窗口句柄 = 0)

    信息框 (“还没启动游戏呢!”, 0, , )
.如果真结束
返回 ()

内存_写整数型 (进程句柄, 阳光基址偏移1 + 十六到十 (“5578”), 到整数 (编辑框1.内容))


.子程序 _按钮2_被单击


.如果真 (窗口句柄 = 0)

    信息框 (“还没启动游戏呢!”, 0, , )


.如果真结束

返回 ()

.如果 (按钮2.标题 = “去掉CD延时”)' 当前还没延时
    ' 内存_写字节集 (窗口句柄, 到整数 (十六到十 (“004B2FF3”)), 到字节集 ({ 144, 144 }), )
    内存_写字节集 (进程句柄, 十六到十 (“004B2FF3”), 十六进制到字节集 (“9090”))
    按钮2.标题 = “恢复CD延时”
.否则
    按钮2.标题 = “恢复CD延时”
    内存_写字节集 (进程句柄, 十六到十 (“004B2FF3”), 十六进制到字节集 (“7E12”))
    按钮2.标题 = “去掉CD延时”

.如果结束












新年第一响 发表于 2016-2-21 13:12

Master 发表于 2016-2-21 13:09
.版本 2

.程序集 窗口程序集_启动窗口


我不玩这个。{:5_118:}

一个good而已 发表于 2016-2-21 13:38

新年第一响 发表于 2016-2-21 11:30
阳光基址,查找改写,查找访问,两次偏移就找到了。

楼主可否位小白出一个教程~~论坛币虽少,但是志向远大~

新年第一响 发表于 2016-2-21 15:00

一个good而已 发表于 2016-2-21 13:38
楼主可否位小白出一个教程~~论坛币虽少,但是志向远大~

救我这样的渣渣。。。还出教程。。。。算了吧。

哎呦呦 发表于 2016-2-21 15:40

004B4CA1 - mov byte ptr ,00 改成 mov byte ptr ,0x1 无冷却
页: 1 [2] 3
查看完整版本: 植物大战僵尸CE逆向无冷却遇到问题