這道題給了一個.s檔案
解決方案有兩個:
1.利用gcc編譯成可執行檔案,然後反編譯生成虛擬碼
2.直接分析彙編(我不會。。。)
1.利用gcc編譯成可執行檔案
linux執行gcc -o 1.s 1
IDA開啟,分析並編寫,注意一定要在字串末尾加上\0結束符!!!
點選檢視程式碼
#include <stdio.h>
int main(void)
{
char e1[32] = "Z`J[X^LMNO`PPJPVQRSIUTJ]IMNOZKMM";
char result[33];
for (int i = 0; i <= 31; i++)
{
result[i] = e1[i] - 7;
}
result[33] = "\0";
printf("%s",result);
return 0;
}