查壳
看ida
这里的中心就是两个字符串和一个计算式子,text=killshadow和str2=adsfkndcls,计算式子str2[v2] = (v1 - 39 - key[v3 % v5] + 97) % 26 + 97
完整exp:
#include<stdio.h>
int main()
{
char key[11]="adsfkndcls";
char text[11]="killshadow";
char str2[11];
char flag[11];
int v1=0,v2=0,v3=0,v5=0;
v3=v5=10;
while(1)
{
for(v1='A';v1<='z';v1++)
{
str2[v2] = (v1 - 39 - key[v3 % v5] + 97) % 26 + 97;
if(str2[v2]==text[v2])
{
flag[v2]=v1;
v3++;
break;
}
}
v2++;
if(v2==10)
{
break;
}
}
printf("%s",flag);
}
最后flag是flag{KLDQCUDFZO}