决赛第二题第二小题
本帖最后由 fyc132 于 2018-5-16 19:19 编辑应官网邀请
程序的关键逻辑是通过ue4的script来解析的,首先定位到几个关键函数
ExecuteUbergraph_HUD 页面的逻辑函数
BP_f 逻辑处理函数
PuzzleMain::OnRep_IsState md5加密函数
首先定位到相关函数的opcode
,
解析一下opcode,我们可以解析出相关的逻辑
第二关的逻辑如下:先把第一关的key进行md5加密E0EA72E0E1C1BFFBC26E8B47AD9D809C 得到FF653EABCDF87B7F21288857EE1BD9E5
然后把加密后的md5作为参数传给
BP_F函数把这个字符串分割为4块,然后对不同的块做不同的处理
最终得到返回值"-999893888",
接着程序把字符串”tencent_mobile_game+”与返回值拼接得到"tencent_mobile_game+-999893888"
并且结算出MD5值 "1942F62DC8F2E93185F0C2D601174546"
接着,程序把用户输入的验证码进行一轮md5加密
然后把加密后的值与上面的值进行比较
最终得出flag:tencent_mobile_game+-999893888
注册机编写:先把第一关的key进行md5加密E0EA72E0E1C1BFFBC26E8B47AD9D809C 得到FF653EABCDF87B7F21288857EE1BD9E5
然后把加密后的md5作为参数传给
BP_F函数把这个字符串分割为4块
,
对应的逻辑如下
需要注意的是,UE4分割后的字符串转换成整数是大端序
把第一关的key的md5分割为 val1 | val2 | val3 | val4得到逻辑
注册机代码如下:
iwxshw 发表于 2018-5-16 19:24
来你们看看这个楼主注册十年还是锋芒初露可怜啊大家给点评分
他是这次比赛社会组的冠军,不是官网邀请他根本不care在这里发帖的 第三题我就不发了,发图累死 来你们看看这个楼主注册十年还是锋芒初露可怜啊大家给点评分 大佬受我一拜 学习了大佬的思路~ 大佬。。。10年了注册 好深奥呀!膜拜大佬。 大佬真厉害{:1_893:} 同样10年前注册的,我们差距咋这么大捏{:1_889:},完全看不懂