下载附件
拖拽至ida中进行反汇编
从主函数开始分析
可以看出输入的字符串要经过 子函数sub_4006FD 处理
找到 sub_4006FD 函数分析:
由逻辑可知 该函数的返回值应为0,故:
图中所标代码应满足:
*(char*)(v3[i%3] + 2*(i/3)) - *(char *)(i + a1) == 1
即:
(v3[i%3] + 2*(i/3)) - 1== *(char *)(i + a1)
(v3[i%3] + 2*(i/3):类似于c的二维数组,“+”左右都是偏移量
a1:为传入的参数
脚本如下:
运行结果为:
Code_Talkers