题目链接:下载链接
查壳后发现无壳,用IDA打开,按f5看伪代码。
首先给了str2字符串数组,然后‘printf(&Format)‘,点击Format可以知道是让你输入flag,所以str即flag。v7为str长度,for循环对str进行遍历加密变化,最后通过strcmp函数,让str2==str。
在for循环,当‘(Str[i] <= 96 || Str[i] > 98) && (Str[i] <= 64 || Str[i] > 66)’,str[i]-=2,所以逆向‘(Str[i] <= 94 || Str[i] > 96) && (Str[i] <= 62 || Str[i] > 64)’,str[i]+=2,否则str[i]-=24,代码如下
可得到flag