首先呢,栈顶减8个字节
然后将$0x402400放入第二个参数以调用<strings_not_equal>,对于这个函数稍后再看(函数名可以看出就是比对字符串相不相等)
通过查看其内存中的内容
即判断这个输入语句是否和这个语句相同
相同就返回0到寄存器%eax然后判断%eax是否为0,是的话就跳转,否则向下继续执行爆炸函数
所以要输入的即为
Border relations with Canada have never been better.
最后对于<strings_not_equal>,可以看见%rdi和%rsi指向的地址都为0x603780通过查看其中的值发现是输入值
然后比较两字符串长度是否相同,不相同直接返回1表示两字符串不相同
然后就是比较逐个循环比较两个字符串是否相同了