吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1276|回复: 4
收起左侧

[游戏安全] 记一次对某二次元开放世界GName加密算法分析

[复制链接]
0xLuna 发表于 2026-3-24 11:25
本帖最后由 0xLuna 于 2026-3-24 11:39 编辑
研究仅供学习交流目的,请勿用于任何违法用途
基本分析

ida打开XXX-Win64-Shipping.exe,先通过ida的字符串查找拿到Gname

2026-03-24-10-09-23-image.png

猜测 RVA : 8BC1A40 就是FNamePool,不确定,打开ce看一下。符合FNamePool的特征结构

2026-03-24-10-24-36-image.png

随便转到一个Blocks元素,显然是加密了,正常情况下这里Name是None

2026-03-24-10-29-35-image.png

猜测可能会在注册这里做加密操作,sub_3248EF0

2026-03-24-10-35-56-image.png

跟进这个函数去分析,此处调用了一个非常可疑的函数 qword_8613B48(v29, v31);

2026-03-24-10-38-39-image.png

1432401B0 - 140000000(ImageBase)得到该函数的RVA: 32401B0

2026-03-24-10-40-15-image.png

最终来到了加密解密函数,直接说结论:byte_8BC181C是一个性能计数器值,但是被加密了, 当作它是异或密钥

2026-03-24-10-47-17-image.png

对着汇编解密就行

2026-03-24-11-00-40-image.png

代码实现
void  ConvertCryptData(PBYTE pbBuffer, UINT uLen, UINT8 bCryptKey)
{
        if (uLen)
        {
                int i = uLen;
                do
                {
                        UINT8 bStepOne = ((bCryptKey >> 1) & 8) | bCryptKey;
                        UINT8 bStepTwo = ((bStepOne & 8) + (bStepOne & 8)) ^ bStepOne;
                        UINT8 bStepThree = ((bStepTwo & 0x10) | 0xE) >> 1 ^ bStepTwo;
                        pbBuffer[i - 1] ^= bStepThree;
                        --i;
                } while (i);
        }
}

免费评分

参与人数 2吾爱币 +14 热心值 +2 收起 理由
willJ + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
Hmily + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

4Crazy 发表于 2026-3-25 14:18
厉害,感谢分享
youdiyuan 发表于 2026-3-25 20:57
bobobab1 发表于 2026-3-26 07:53
hlz008 发表于 2026-3-26 14:51
感谢,试试看
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - 52pojie.cn ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2026-7-26 11:20

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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