DES逆向分析
在第一部分三次使用call调用函数,第一次是puts输出“give me a string to encrypt”,通过运行exe也可以发现,程序首先会输出“give me a string to encrypt”。
第二次是调用scanf函数,进行一段输入保存在位置为Str的栈空间里。
第三次是调用strlen函数,计算输入字符串的长度,保存在eax里。
之后拿eax的值和8进行比较,也就是比较8和字符串的长度,如果不相等的话则跳转到红线部分,查看红色部分。
表示程序直接结束,通过运行exe文件,符合事实。
如果字符串的长度恰好等于8,则跳转到绿色部分,查看绿色箭头指引的部分。