佳丽云

英雄无敌3-WoG中文站

 找回密码
 英雄注册|Register
查看: 2549|回复: 10

EXE修改心得(铁匠铺出售战争机器)

[复制链接]
  • TA的每日心情
    开心
    2024-3-23 12:26
  • 签到天数: 76 天

    连续签到: 1 天

    [LV.6]地狱战马

    256

    回帖

    580

    金币

    0

    精华

    5级 Honorable Hero

    Rank: 5Rank: 5

    积分
    4353
    发表于 2019-9-7 20:34:30 | 显示全部楼层 |阅读模式
    HotA 1.54为例,用ollydbg打开h3hota.exe,界面如下:

    左侧第1列为内存地址,第2列为机器语言(十六进制),第3列是汇编语言,第4列是注释。

    如果我们知道某个功能的机器指令,可以在以上界面中:鼠标右键—搜索—二进制字符串(就是Ctrl+B)


    城镇中铁匠铺出售的战争机器类型的子程序代码已知如下:
    (From 0x001C3220h to 0x001C329Fh)
    83 C8 FF BA 06 00 00 00 B9 05 00 00 00 C7 05 60
    AA 6A 00 04 00 00 00 A3 64 AA 6A 00 89 15 68 AA
    6A 00 A3 6C AA 6A 00 89 0D 70 AA 6A 00 A3 74 AA
    6A 00 89 0D 78 AA 6A 00 A3 7C AA 6A 00 89 15 80
    AA 6A 00 A3 84 AA 6A 00 C7 05 88 AA 6A 00 04 00
    00 00 A3 8C AA 6A 00 89 0D 90 AA 6A 00 A3 94 AA
    6A 00 89 15 98 AA 6A 00 A3 9C AA 6A 00 C7 05 A0
    AA 6A 00 04 00 00 00 A3 A4 AA 6A 00 C3 90 90 90
    我们截取前面的部分进行搜索,结果如下:


    下面我们对每条命令逐行分析:
    005C3220  /.  83C8 FF                    OR EAX,FFFFFFFF
    解释:使用操作数FF对EAX寄存器进行OR运算。EAX寄存器是32位累加寄存器,FF(1111 1111)是8位,对EXA寄存器进行运算需要4个FF。OR运算的结果是EAX寄存器中的32位全部变成FFFFFFFF。用于填充内存字节(内存中战争机器的代码为双字,占16个字节,剩下的16个字节用FFFF填充)。
    005C3223  |.  BA 06000000                MOV EDX,6
    解释:EDX寄存器,6 = 急救帐篷。
    005C3228  |.  B9 05000000                MOV ECX,5
    解释:ECX寄存器,5 = 弹药车。
    005C322D  |.  C705 60AA6A00 04000000     MOV DWORD PTR DS:[6AAA60],4
    解释:把4赋予指针引用的DS寄存器地址[6AAA60](内存地址),4 = 弩车,[6AAA60] = 城堡。
    005C3237  |.  A3 64AA6A00                MOV DWORD PTR DS:[6AAA64],EAX
    解释:把EAX寄存器的值(双字,就是FFFF)赋予指针引用的DS寄存器地址[6AAA68]。用于填充字节。
    005C323C  |.  8915 68AA6A00              MOV DWORD PTR DS:[6AAA68],EDX
    解释:把EDX寄存器的值(6 = 急救帐篷)赋予指针引用的DS寄存器地址[6AAA68](壁垒城)。
    005C3242  |.  A3 6CAA6A00                MOV DWORD PTR DS:[6AAA6C],EAX
    解释:填充内存字节。
    005C3247  |.  890D 70AA6A00              MOV DWORD PTR DS:[6AAA70],ECX
    解释:把ECX寄存器的值(5 = 弹药车)赋予指针引用的DS寄存器地址[6AAA70](塔楼城)。
    005C324D  |.  A3 74AA6A00            MOV DWORD PTR DS:[6AAA74],EAX
    解释:填充内存字节。
    005C3252  |.  890D 78AA6A00              MOV DWORD PTR DS:[6AAA78],ECX
    解释:把ECX寄存器的值(5 = 弹药车)赋予指针引用的DS寄存器地址[6AAA78](地狱城)。
    005C3258  |.  A3 7CAA6A00                MOV DWORD PTR DS:[6AAA7C],EAX
    解释:填充内存字节。
    005C325D  |.  8915 80AA6A00              MOV DWORD PTR DS:[6AAA80],EDX
    解释:把EDX寄存器的值(6 = 急救帐篷)赋予指针引用的DS寄存器地址[6AAA80](墓园城)。
    005C3263  |.  A3 84AA6A00                MOV DWORD PTR DS:[6AAA84],EAX
    解释:填充内存字节。
    005C3268  |.  C705 88AA6A00 04000000     MOV DWORD PTR DS:[6AAA88],4
    解释:把4赋予指针引用的DS寄存器地址[6AAA88],4 = 弩车,[6AAA88] = 地下城。
    005C3272  |.  A3 8CAA6A00                MOV DWORD PTR DS:[6AAA8C],EAX
    解释:填充内存字节。
    005C3277  |.  890D 90AA6A00              MOV DWORD PTR DS:[6AAA90],ECX
    解释:把ECX寄存器的值(5 = 弹药车)赋予指针引用的DS寄存器地址[6AAA90](据点城)。
    005C327D  |.  A3 94AA6A00                MOV DWORD PTR DS:[6AAA94],EAX
    解释:填充内存字节。
    005C3282  |.  8915 98AA6A00              MOV DWORD PTR DS:[6AAA98],EDX
    解释:把EDX寄存器的值(6 = 急救帐篷)赋予指针引用的DS寄存器地址[6AAA98](要塞城)。
    005C3288  |.  A3 9CAA6A00                MOV DWORD PTR DS:[6AAA9C],EAX
    解释:填充字节。
    005C328D  |.  C705 A0AA6A00 04000000     MOV DWORD PTR DS:[6AAAA0],4
    解释:把4赋予指针引用的DS寄存器地址[6AAAA0],4 = 弩车,[6AAAA0] = 元素城。
    005C3297  |.  A3 A4AA6A00                MOV DWORD PTR DS:[6AAAA4],EAX
    解释:填充字节。
    005C329C  \.  C3                             RETN
    解释:从段内转移CALL进的子程序中返回
    005C329D      90                             NOP
    解释:填充机器码字节。
    005C329E      90                             NOP
    005C329F      90                             NOP
    截图201909072033291115..png
    截图201909072034136590..png
    截图201909072034248674..png
  • TA的每日心情
    郁闷
    2015-6-6 16:12
  • 签到天数: 52 天

    连续签到: 1 天

    [LV.5]女巫

    4949

    回帖

    3万

    金币

    35

    精华

    超级版主

    Rank: 11Rank: 11Rank: 11Rank: 11

    积分
    34675

    论坛守望者论坛元老杰出贡献

    发表于 2019-9-9 12:47:13 | 显示全部楼层
    感谢楼主分享。
    改exe太专业了,颇为复杂些。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2024-2-25 17:00
  • 签到天数: 1273 天

    连续签到: 1 天

    [LV.10]圣龙

    3216

    回帖

    9万

    金币

    0

    精华

    5级 Honorable Hero

    Rank: 5Rank: 5

    积分
    6118
    发表于 2019-9-9 12:51:22 | 显示全部楼层
    一般人根本看不懂
    收了可观的小费后,旋转猫小声道:
    指挥官才是最强的,X追什么的都是邪门歪道。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2023-6-12 14:57
  • 签到天数: 192 天

    连续签到: 1 天

    [LV.7]血污怪

    553

    回帖

    8039

    金币

    0

    精华

    5级 Honorable Hero

    Rank: 5Rank: 5

    积分
    4638
    发表于 2019-9-9 13:39:43 | 显示全部楼层
    我就是一般人,完全看不懂
    回复 支持 反对

    使用道具 举报

     成长值: 29575

  • TA的每日心情
    无聊
    2020-5-27 00:09
  • 签到天数: 24 天

    连续签到: 2 天

    [LV.4]狂狼人

    5772

    回帖

    2696万

    金币

    42

    精华

    管理员

    精灵奇侠

    Rank: 12Rank: 12Rank: 12

    积分
    9245146

    社区QQ达人论坛创始人杰出贡献论坛元老

    发表于 2019-9-9 14:19:22 | 显示全部楼层
    我是一般人+1
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2021-6-21 12:37
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]投石矮人

    23

    回帖

    6011

    金币

    0

    精华

    2级 Adventuring Hero

    Rank: 2

    积分
    393
    发表于 2019-9-9 16:11:22 | 显示全部楼层
    这都太专业了,好厉害
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2020-12-10 03:20
  • 签到天数: 550 天

    连续签到: 3 天

    [LV.9]龙巫妖

    4640

    回帖

    35万

    金币

    2

    精华

    超级版主

    一路狂奔

    Rank: 11Rank: 11Rank: 11Rank: 11

    积分
    16212

    论坛守望者

    发表于 2019-9-9 16:41:32 | 显示全部楼层
    一般人过来看的一脸懵逼
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    3 小时前
  • 签到天数: 160 天

    连续签到: 3 天

    [LV.7]血污怪

    130

    回帖

    5790

    金币

    0

    精华

    4级 Famous Hero

    Rank: 4

    积分
    2523
    发表于 2019-9-10 11:19:34 | 显示全部楼层
    看头像就知道是个老道的程序员
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2023-11-26 12:28
  • 签到天数: 36 天

    连续签到: 1 天

    [LV.5]女巫

    15

    回帖

    6159

    金币

    0

    精华

    3级 Known Hero

    Rank: 3Rank: 3

    积分
    517
    发表于 2019-9-12 18:58:09 | 显示全部楼层
    这个是直接修改的可执行 二进制/十六进制 代码
    当年静态破解共享软件也这么干的,牛刀级的技术,杀鸡用牛刀的那个牛刀
    这个要熟悉汇编语言才玩得转,并且暴力改exe,咳咳有可能影响稳定性
    还是erm就好啦
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2024-3-23 12:26
  • 签到天数: 76 天

    连续签到: 1 天

    [LV.6]地狱战马

    256

    回帖

    580

    金币

    0

    精华

    5级 Honorable Hero

    Rank: 5Rank: 5

    积分
    4353
     楼主| 发表于 2019-9-18 20:34:44 | 显示全部楼层
    没那么高深,可以连蒙带猜的。我就是这么干的。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2022-6-6 21:41
  • 签到天数: 70 天

    连续签到: 1 天

    [LV.6]地狱战马

    80

    回帖

    9555

    金币

    0

    精华

    3级 Known Hero

    Rank: 3Rank: 3

    积分
    908
    发表于 2019-9-23 01:09:56 | 显示全部楼层
    技术贴啊,支持LZ,进来学习学习
    回复 支持 反对

    使用道具 举报

    ahome_bigavatar:guest
    ahome_bigavatar:welcomelogin
    您需要登录后才可以回帖 登录 | 英雄注册|Register

    本版积分规则

    捐赠
    关注我们,英3Mod一网打尽!

    WoG中文站 ( 辽B2-20210485-10 )|辽公网安备 21128202000228 号

    GMT+8, 2024-9-28 15:23 , Processed in 0.349366 second(s), 15 queries , Gzip On, File On.

    Powered by Discuz! X3.4

    Copyright © 2004-2022, Beijing Second Sight Technology Co., LTD.

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