01 re0_0
首先用IDA64位打开文件,F5,发现神秘的judge函数。
judge函数被加密了,转到汇编,是个样子的,无法反编译。
这个时候取消judge的定义【快捷键U】,在IDA的python栏中输入代码如下。
judge=0x600B00
for i in range(182):
addr=0x600B00+i
byte=get_bytes(addr,1)
byte=ord(byte)^0xC
patch_byte(addr,byte)
然后再定义函数judge【快捷键D】,这样,函数就可以F5了,我们会得到这样的代码。
阅读函数发现,v2-v15就是flag_encode,快捷键R把数字转化字符串,再写脚本得到flag。
flag_enc="fmcd\x7fk7d;V\x60;np"
flag=""
for i in range(len(flag_enc)):
c&