最近看到了一些CTF题目,感觉挺有意思,其中有一部分师逆向工程相关的。
在翻了知乎上的回答之后,找到了一本《Reverse Engineering For Beginners》,简称《RE For Beginners》或《RE4B》,比看雪的《加密与解密》要好入门一点。
下图为hello,world的反汇编代码。图片版权为《RE4B》所有,后续会替换成实机反编译数据。
1.常量字符串'hello, world',是存放在CONST里,并且以0结尾(字符串以\0结尾)
2.在用call调用printf之前,通过push,将字符指针压到栈里,以供作为函数参数