3-异或
目标 T3.exe
使用 IDA 打开,找 main 函数,并做基本的分析,重命名函数
可以看到对比 T2.exe ,循环这里的每个字符+1变成了字符与i异或
转换的代码是
for ( i = 0; i < strlen(v4); ++i )
v4[i] ^= i;
编写相应 python 脚本
data=[0x66,0x6D,0x63,0x64,0x7F,0x5C,0x49,0x52,0x57,0x4F,0x43,0x45,0x48,0x52,0x47,0x5B,0x4F,0x59,0x53,0x5B,0x55,0x68]
for i in range(len(data)):
data[i]^=i
print(bytearray(data))
C语言版本
#include <stdio.h>
#include <string.h>
int main(int argc, char* argv[])
{
char aaa[]={0x66,0x6D,0x63,0x64,0x7F,0x5C,0x49,0x52,0x57,0x4F,0x43,0x45,0x48,0x52,0x47,0x5B,0x4F,0x59,0x53,0x5B,0x55,0x68,0x00};
for(unsigned int i=0;i < strlen(aaa);i++)
aaa[i]^=i;
printf("%s",aaa);
return 0;
}
Source & Reference