热血江湖 · 分析报告总索引

把分散在各个任务工作区里的分析报告收拢到一处 —— 服务器侧 / 客户端数据 / 内存逆向 / 助手模块逆向,共 28 篇。

28 篇报告总数
4 类分类
2026-09-16 ~ 09-17时间跨度
4 个来源会话
保留在原会话目录原始代码/脚本
启动器与更新链路3客户端数据解析3内存逆向与基址定位18助手挂机模块逆向4

跨任务关键结论速览

13 条

把各任务报告的核心结论压成一页速查;右侧标注可信度与出处,细节点进对应报告。

维度结论可信度出处
游戏运营状态仍在活跃运营——《热血江湖》台服,代理商 樂意傳播 Happytuk(平台 mangot5.com),补丁每周四发版实测启动器抓包分析 / 分析总报告
启动器性质韩服原厂通用启动器 launcher.exe,无壳无签名无进程注入 API;私服那份是原件照搬(SHA256 一致)静态+哈希launcher 启动器分析报告
更新链路HTTP 80 明文 GET /yg_patch/patch_{版本}.zip,UA=NetGame;补丁域名运行时由版本校验接口下发,exe 内无字面量抓包铁证启动器抓包分析报告
网络前提全部流量经迅游加速器本地代理 192.168.100.189:61753 中转;内地直连官方 IP 会被 DROP实测启动器抓包分析报告
补丁服务器S3 桶 happytuk-tw-hot 可直接 ListBucket 列清单 → 一次请求即得「在不在 + 最新版本 + 最后更新日」实测分析总报告 / 开服检测器
客户端加密29 个 .cfg = 固定 150 字节密钥表 XOR(密钥在 exe .rdata);0x1250 魔数格式已完全解析已破解cfg 数据总表
文本编码外观/资源类 9 表原文是韩文 CP949(非 Big5 乱码);另有 UTF-8 中文被按 Big5 解的形态,需三档自适应判定已破解cfg 数据总表
内存基址旧「31007 模块」基址表对本游戏全部失效;活游戏对象数组基址实测 0x03BE3E68(另一构建)CE 实测活游戏基址总表 / 目录分析
对象字段偏移+0x08 类型 / +0x0C ID / +0x18 名 / +0x5F8 血 等属 C++ 结构布局,跨版本稳定可直接用(血值反查可验)玩家/怪物/物品对象字段表
队伍(队员)结构队伍关系不在玩家对象内部,是独立 8 槽指针数组;队员基址静态不可得,必须运行时指针扫描(尚未钉死)待解队伍结构定位 / 队员结构扫描
组队封包按名字组队 opcode=30001400;结构 = 固定头 + 名字 BIG5 + 00 00 + 补零到 40 字节,A440 不是定界符已二进制验证组队_名字组_发包分析
助手挂机模块客户端内置助手模块的函数表 / 中央分发器 / 开关地址均已定位,可支撑易语言子程序地址重定位已定位助手汇编内存地图 / call 重定位
主要风险①补丁明文 HTTP 无签名校验 ②加速器会改写请求头 ③客户端带 XIGNCODE 反作弊,调试读写有封号风险提示分析总报告

启动器与更新链路

3 篇

对 D:\rxjh2025\launcher.exe 的静态解析、实机抓包与补丁服务器探测,判定游戏运营状态与整条更新链路。会话日期:2026-09-17

01

热血江湖分析总报告

综合总报告01_启动器与更新链路/热血江湖分析总报告.html

四轮分析(服务器侧 / 客户端数据 / 内存逆向)的全量汇总入口,含「一图看懂」结论表与全部被推翻的旧结论记录。

  • 游戏仍在活跃运营(代理商 樂意傳播 Happytuk / mangot5.com),每周四发版补丁
  • 活动图:实机抓包 37,405 包、下载补丁 15.3MB、已解密 CFG 29/153、补丁服务器 365 个对象条目
  • 活游戏对象数组基址实测 0x03BE3E68;旧「31007 模块」基址表已作废
  • 三大风险:补丁明文 HTTP 无签名校验 / 加速器改写请求头 / XIGNCODE 反作弊封号风险
打开报告 →
02

launcher.exe 启动器分析报告

静态分析01_启动器与更新链路/launcher启动器分析报告.html

原厂启动器身份锁定:韩版 MFC、无壳无签名、无进程注入 API,私服那份是原件照搬(哈希一致)。

  • 3,017,728 字节 · 32 位 · 编译时间 2015-05-26 · 内部名 HomunclusLauncher
  • SHA256 78446D20…B8A84,与 D:\rxjh2025私服\launcher.exe 完全一致
  • 导入表含 WININET 全套,但 FtpFindFirstFileA / FtpOpenFileA 是未使用的遗留导入
  • 真正私服入口是 fate_launcherNew.exe(易语言),更新服 dlq.fatetw.pro:99 → 43.159.63.133
打开报告 →
03

launcher.exe 启动抓包分析报告

实机抓包01_启动器与更新链路/启动器抓包分析报告.html

决定性证据:启动器全部流量走迅游本地代理,补丁走 HTTP 80 明文从官方 S3 桶下载,补丁域名由版本校验接口运行时下发。

  • 唯一游戏外联请求:GET /yg_patch/patch_645.zip,UA=NetGame,4 秒下完 15.3MB
  • 补丁域名 patch-hot.mangot5.com.tw 不在 exe 字面量里 → 由 hotsession.mangot5.com 动态下发
  • 全部流量经 xunyou.exe 本地代理 192.168.100.189:61753,内地直连官方 IP 会被 DROP
  • S3 桶 happytuk-tw-hot 可直接 ListBucket 列清单(判活最强判据)
打开报告 →

客户端数据解析

3 篇

对客户端加密 CFG、明文 INI 与游戏内数据的解析成果,输出可检索的数据总表。会话日期:2026-09-17

01

cfg 数据总表

数据总表(21 标签页)02_客户端数据解析/cfg数据总表.html

29 个解密 CFG 全部按 EOF 精确解析并中文化表头,含 NPC 编号↔名称对照、地图/传送点/NPC 关联。

  • 破解 0x1250 魔数格式:两种头部变体 + 1 字节长度前缀字符串流,记录数恒比声明多 1
  • 外观/资源类 9 表原文为韩文 CP949,已重解并新增「名称(中文)」简体对照列(8370 个名称,65% 完全汉化)
  • ybmapinfo 拆为 地图名称/ID、相邻地图名称/ID、X 坐标/Y 坐标、NPC 编号/名称 共 9 列
  • 地图 ID 修正:1301 南明湖、1401-1601 血魔洞 1-3 层、1701-1901 地灵洞 1-3 层、20001 伏魔洞
打开报告 →
02

客户端明文文件总表

数据总表02_客户端数据解析/客户端明文文件总表.html

D:\rxjh2025\client 下未加密文件的完整盘点:明文 INI 可解析,153 个 CFG 仍是加密态。

  • 根目录 10 个 INI + 角色目录 UserConfig.ini×191 / 购买物品列表.ini×137 + 坐标脚本\*.ini
  • 坐标脚本 = 寻路 call(x,y)序列;.scs/.mhslot/.aut 为二进制;大 .txt 是挂机日志
  • 物品编号.ini(325 条)= 游戏内人工验证过的 ID 表,用作物品 ID 校验基准
打开报告 →
03

全部数据整理表

数据整理(摘录版)02_客户端数据解析/全部数据整理表.html

游戏内粘贴数据(武功/状态/地图等)的整理表,字段语义已按用户口径更正。

  • reqlevel=习得等级、reqkarma=历练、usemp=消耗内力、additionaldamage=附加伤害、targetmax=目标数
  • 状态异常 6002101 对象弱化1 = 50/150/300、6002102 对象弱化2 = 100/200/400
  • 另有 7 份因上下文压缩丢失原文,仅按摘要重建样例行并标注「摘录版」,待补全
打开报告 →

内存逆向与基址定位

18 篇

对活游戏 YGOnline.exe 的基址、对象结构与组队封包的逆向定位与验证(18 篇,含 CE 脚本配套)。会话日期:2026-09-16

01

易语言项目分析报告(挂机辅助)

代码审计03_内存逆向与基址/01_易语言项目分析报告_热血江湖挂机辅助.html

辅助工程整体架构与功能清单,附具体 Bug 与维护性风险清单。

  • DLL 注入 + 窗口线程架构,约 9000+ 行主窗口代码、300+ 子程序
  • 【严重】etxt 转换产物把几乎所有局部变量都标成「数组」
  • 【Bug】遍历背包红/蓝药找不到药时返回值错误;【隐患】线程强杀、跨线程 UI 访问
打开报告 →
02

D:\rxjh2025 目录分析

关键修正03_内存逆向与基址/02_D盘rxjh2025_目录分析.html

确认被分析的活游戏就是 D:\rxjh2025\client\YGOnline.exe,并推翻 31007 那套基址表。

  • 31007 模块的 0x03173B70 与活游戏 0x03BE3E68 的 RVA 不同 → 不是同一构建
  • 活游戏为 32 位、模块固定 0x400000(无 ASLR),绝对地址可直接对应模块内 RVA
  • 目录里存在辅助写出的 Default.ini / ybopt2.cfg / YBpos3.cfg / YBc.cfg 与角色文件夹
打开报告 →
03

CE 分析报告:对象数组与邀请封包

CE 实测03_内存逆向与基址/03_CE分析报告_对象数组与邀请封包.html

对象数组基址身份确认 + 数组结构规律(对象 ID == 槽位下标),并纠正「邀请包」的误判。

  • 数组基址 0x03BE3E68 属主模块 .data 静态地址,不需指针扫描、不随重登改变
  • 对象指针 = 读整数(基址 + k×4),玩家槽从 8000 起,玩家类型 ptr+8 == 0x31
  • ★ 抓到的那条 0x30 包不是组队邀请;对象 ID 会随会话变化
打开报告 →
04

基址总表(31007)

参考表(已过期)03_内存逆向与基址/04_基址总表_31007.html

旧版 31007 模块的完整基址/偏移/call 速查表,仅作对照参考,对本游戏已失效。

  • 数组基址、对象字段偏移、物品/聊天/组队窗口对象、关键 call 地址
  • 字段偏移部分跨版本稳定仍可用;基址数值换版本即失效
  • 聊天数组 = 游戏基址 + 4×283;组队请求窗口 = 游戏基址 + 26708
打开报告 →
05

基址总表 · 分析检测报告

检测报告03_内存逆向与基址/05_基址总表_检测报告.html

对 31007 基址逐条做检测分类:仅对象数组一项活实测,其余标「待本机指针扫描确认」。

  • 平移量 delta = 0x03BE3E68 − 0x03173B70 = 0x00A702F8(仅对象数组适用)
  • 对象字段偏移(+0x08 类型 / +0x0C ID / +0x18 名 / +0x5F8 血)跨版本稳定,可用血值反查验证
  • 唯一死矛盾:#组队_队员名称 源码值 824(0x338) 与注释 0x20C 不一致
打开报告 →
06

基址更新子程序 · 验证与修复报告

二进制验证03_内存逆向与基址/06_基址更新_验证与修复报告.html

把「基址更新」子程序里 34 条 FindData 特征在本机 exe 逐条精确匹配,分出可修与不可修。

  • 20 条精确命中可直接用;3 条帧偏移漂移可一键修复(人物基址、全局大列表、攻击列表)
  • 14 条无法自动修复:整段不存在,其中 9 条是 64 位客户端特征(架构不符永远 0 命中)
  • 周围列表基址 0x9E09AC 是实体数组指针变量的位置(模块相对偏移,抗 ASLR)
打开报告 →
07

基址数据验证报告

数据校验03_内存逆向与基址/07_基址数据验证报告.html

十进制↔十六进制逐条互算,修正 6 处十六进制注解错误、标出 1 处必须运行时确认的矛盾。

  • 易语言常量以十进制参与编译 → 十进制始终权威,问题只在文档注解
  • 6 处修正仅影响标注;CE_对象分析_按总表.lua 全用十进制,运行不受影响
  • 待确认:#组队_队员名称 偏移 0x20C vs 0x338
打开报告 →
08

活游戏基址总表(已确认)

结论表03_内存逆向与基址/08_活游戏基址总表_已确认.html

本游戏唯一可信的活基址清单(常量有值 + exe 字节命中双条件),并解释队功能读不到人的根因。

  • 命中次数 = 代码区引用该全局变量的次数,作为可信度判据
  • 队员基址在常量文件里根本没有值定义;31007 的 0x03148650 活 exe 命中 0 次
  • 各基址相对 31007 的 delta 各不相同(角色 +0xA0D844、背包 +0x8477FC),无法平移推导
打开报告 →
09

对象字段偏移 · 验证清单

验证清单03_内存逆向与基址/09_对象字段偏移_验证清单.html

按 ✅ 二进制确认 / 📁 源码权威 / 🔍 需指针扫描 / ⚠ 自相矛盾 四级给全部字段标注状态。

  • 对象数组、数组大小、背包基址 0x03B9DCE0 三项被二进制确认
  • 其余基址不在 exe 静态数据里,必须 CE 指针扫描
  • 遍历公式:对象指针 = 0x03BE3E68 + i×4,玩家槽 8000+
打开报告 →
10

玩家对象字段(数组指针 + 偏移)

权威字段表03_内存逆向与基址/10_玩家对象字段_数组指针偏移.html

按活游戏实跑子程序 _人物遍历_被单击 得出的玩家对象布局,推翻 31007 旧值。

  • 基址变量 #怪物基址值 = 0x03BE3E68(exe 命中 1971 次)
  • 玩家 type 0x31,与怪物是不同 C++ 类,偏移不通用
  • 配套 CE_玩家对象字段验证.lua 可直接挂进程出报告
打开报告 →
11

怪物对象字段(数组指针 + 偏移)

权威字段表03_内存逆向与基址/11_怪物对象字段_数组指针偏移.html

按 _NPC遍历_被单击 得出的怪物对象布局;强调必须先按 +0x08 类型分流。

  • 怪物 type 0x2E,与玩家对象同数组不同类
  • 遍历:怪物位置 = 读整数((8000+x)×4 + #怪物基址值)
  • 31007 / 早期分析的怪物字段旧值全部作废
打开报告 →
12

物品对象字段(数组指针 + 偏移)

权威字段表03_内存逆向与基址/12_物品对象字段_数组指针偏移.html

背包容器与物品对象结构;背包基址已二进制确认为本游戏活基址。

  • 背包基址值 0x03B9DCE0(exe 命中 3495 次)→ 读整数得容器指针
  • 物品位置 = 读整数(背包基址 + 0x53C + (格子-1)×4),≤0 跳过
  • 石头/宝石槽数组结构取自旧版本代码,待验证
打开报告 →
13

遍历代码 · 数组结构分析

结构总览03_内存逆向与基址/13_遍历代码_数组结构分析.html

把「遍历」程序集里所有列表型数据的寻址方式归纳成统一规律。

  • 通用规律:基址 + 索引×4 读指针 → 指针 + 字段偏移 读字段
  • 确认用户一直在找的「队伍基址」就是 #队员基址(8 元素指针数组)
  • 覆盖背包/任务包/仓库/快捷栏/技能辅助栏/聊天/结婚窗口
打开报告 →
14

道具遍历基址 · 二进制验证报告

二进制验证03_内存逆向与基址/14_道具遍历基址_验证报告.html

确认 道具遍历基址 是「地面掉落物」世界容器,与背包、副本道具是三套不同数据。

  • 运行时常量 0x1801170(模块相对 0x1401170),指向 6400 槽指针数组
  • 元素 element+8 关联回实体数组 0x03BE3E68 → 证明是场景掉落物
  • GetAt(i) 于 VA 0x769BA0,主循环 VA 0x768D22
打开报告 →
15

队伍结构定位报告(CE 实测)

CE 实测03_内存逆向与基址/15_队伍结构定位报告.html

用行为对比排除法证明:队伍关系不在玩家对象内部,是独立的一张表。

  • 判据一(队内 3 人相同/队外不同)→ 0 个字段;判据二(槽位标记小值)→ 0 个字段
  • 主模块数据区里队长名字共 5 处出现点,候选表 0x03BA1F40 起 0x50 步长
  • 下一步:一次「行为对比」即可定案
打开报告 →
16

队员结构 · 指针扫描分析

待解问题03_内存逆向与基址/16_队员结构_指针扫描分析.html

队员基址静态不可得,给出两阶段指针扫描方案与手动 CE 兜底步骤。

  • 核心矛盾:名字偏移 0x20C 还是 0x338(必须活测)
  • 阶段1 锚定一个队员对象指针 → 阶段2 反查队员基址
  • 静态路径全灭:31007 值 0 命中、delta 平移候选 0x03bb8948 也 0 命中
打开报告 →
17

CE 手动找「队员基址」操作手册

操作手册03_内存逆向与基址/17_CE_队员基址_手动手册.html

脚本跑不动或队友名特殊时的兜底流程,6 步拿到队员基址并回填常量。

  • 先遍历 k=8000..10000 找 ptr+8==0x31 且 ptr+0x18 名字匹配的对象指针
  • 对该指针做指针扫描,找 8 槽连续的全局变量
  • 回填 #队员基址 / #组队_队员名称(824 或 524) / #组队_队长名称 908 / #组队_队伍等级 928
打开报告 →
18

组队「按名字」发包分析

封包分析03_内存逆向与基址/18_组队_名字组_发包分析.html

用两条抓包逐字节对照,纠正 A440 定界符的误判,给出正确的发包构造器。

  • ★ A440 不是定界符——那两字节是名字自带的「一」字的 BIG5 编码
  • 正确结构 = 固定头 + 名字 BIG5 + 00 00 + 补零到 40 字节
  • opcode 30001400;已用 Python 逐字节复现两条真实抓包
打开报告 →

助手挂机模块逆向

4 篇

定位客户端内置「助手挂机」模块的函数表、消息分发器与关键内存地址,为易语言子程序提供改动依据。会话日期:2026-09-16

01

D:\rxjh2025 游戏分析报告(助手挂机逆向定位)

模块定位04_助手模块逆向/rxjh2025_分析报告.html

整体定位客户端内置助手挂机模块:核心函数表、反汇编入口、字符串引用地图与配置体系。

  • 给出已验证的反汇编入口地址表与 .aut 加载函数 0xA3EB90 片段
  • 通过模块内字符串引用侧写功能范围
  • 记录字符串加密观察与运行时配置文件清单
打开报告 →
02

助手挂机模块 · 汇编内存地址地图

地址地图04_助手模块逆向/助手汇编内存地图.html

按子系统划分的模块内存地图:I/O、主分发器、UI 窗口、宏发包、混淆校验、全局数据。

  • .aut 账号 / .mhslot 槽位 I/O 子系统
  • 主消息分发器(中央调度)+ 各分页窗口处理函数
  • 「开启挂机」开关定位结论与 .data 全局数据地址(易语言外挂解引用目标)
打开报告 →
03

助手 call 内存地址重定位报告(更新版)

重定位04_助手模块逆向/助手call重定位_更新版.html

面向易语言子程序改造的旧→新地址对照表,附 dispatcher 命令字映射与改动清单。

  • 核心 call 地址表 + dispatcher 命令字映射(0x0B–0x53 节选)
  • 常量基址旧→新对照并标注可信度
  • 结构内偏移全部稳定无需修改
打开报告 →
04

「小助手开」内存地址定位报告

特征定位04_助手模块逆向/小助手开_内存地址定位.html

锁定「小助手开」开关的内存位置,给出完整调用链与两条特征码详解。

  • 特征码 A = NPC 对话基址,特征码 B = 小助手 call 基址
  • 0xA3F700 中央分发器入口反汇编逐条确认
  • 对易语言子程序逐行确认并给出可优化点
打开报告 →