序列号长度为0x20, 经函数0x004014A0转换为0x10字节数组,调用验证函数0x00401580完成验证,验证包含3个步骤:
膨胀 0x004015CC - 0x004016B6
将序列号前8字节放入数组,与已初始化数据组成0x100大小的原始数据,记为g_box
按特定算法将数组中1个字节膨胀到0x100字节
检验特定位个数是否满足要求
枚举算法如下:
替换 004016BC - 00401724
对g_box数组做自替换,结束后的g_box数组前8字节作为密文(记为cipher),序列号后8字节作为密钥(记为key)进行解密
[注意]看雪招聘,专注安全领域的专业人才平台!