CUIT-2017 Re150 攻防世界

这个题 我日  真的有点东西

其实dump 这东西 谁都会   就算不想写 脚本 恢复的话  也能 直接dump

问题就是 dump之后    怎么修复  让自己看起来更爽一点  2333

dump的话 我就dump了  0x1000字节的 然后 我的 修复起点 在

根据 经验 这里应该就是输入点 然后我们  就慢慢的去除花指令   然后发现

+ 类似函数的开头

就试着  创建函数

然后 我修复出来的效果是这样的

 

 

这样的函数逻辑就看的很清楚了

然后我们我们直接re算法 就行

#include <stdio.h>

unsigned char ida_chars[] =
{
  0x73, 0x8D, 0xF2, 0x4C, 0xC7, 0xD4, 0x7B, 0xF7, 0x18, 0x32,
  0x71, 0x0D, 0xCF, 0xDC, 0x67, 0x4F, 0x7F, 0x0B, 0x6D, 0x00
};
int main(void){
    int i = 0;

    for(i=0;i<19;i++){
        ida_chars[i] = ida_chars[i]^32;
    }

    i = 0;
    for(i=0;i<19;i++){
        ida_chars[i] = ((ida_chars[i]^i)<<(i%8)) | ((ida_chars[i]^i)>>(8 - (i%8)));
    }

    printf("%s\n",ida_chars);
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_41071646/article/details/90724305
今日推荐