神光
还是想了一下,但那个异或搞不出来,都是对dword_41A038操作,想起开头就给了 key ,还有反调试应该是要调试的
输出的应该就是 flag ,只是为什么是乱码呢?
放 od 再试试,直接就出 flag 了,强!!!
有点坑人 0_0
BBBigEqSet
好像是大端序的意思
这么多变量,记得可以用 angr 还是 pwntools 爆破
这么多肯定是不用 z3 了
一些师傅看的汇编(ida不能f5),确实汇编可以看出都是一样的操作:
movzx eax, [rbp+s]
零扩展并移动数据指令,0x1234–>0x00001234
movsx eax, al
符号扩展并移动数据,用符号扩展补充高位
0xff–>0xFFFFFFFF , 0x7f -->0x0000007F
imul edx, eax, 9421h
有符号整数乘法, eax * 0x9421 得到一个64位结果,高32位存到edx,低32位存到eax
嗯,找规律哈哈哈哈
厉害了我嘞个豆
然后比较重要的就是提取数据
def u32(a):
return a[3]<<24 | a[2]<<16 | a[1]<<8 | a[0