很多时候会遇到调试crash时只有一条栈调用信息。
这种情况下是有机会修复完整的调用栈信息的。
1. 查看当前的寄存器的ebp
如果这个EBP 没有被破坏的话,就可以尝试修复。(因为EBP 保存的是当前函数的栈底,当前函数的栈底会保存上一层函数的ebp,和指令地址)
2. 查看EBP 对应的内存数据
3.现在转到0xe4f9fd
现在已经能看到上一层栈的调用函数了,如果还想往上层遍历,可以继续读取ebp的值遍历。
很多时候会遇到调试crash时只有一条栈调用信息。
这种情况下是有机会修复完整的调用栈信息的。
1. 查看当前的寄存器的ebp
如果这个EBP 没有被破坏的话,就可以尝试修复。(因为EBP 保存的是当前函数的栈底,当前函数的栈底会保存上一层函数的ebp,和指令地址)
2. 查看EBP 对应的内存数据
3.现在转到0xe4f9fd
现在已经能看到上一层栈的调用函数了,如果还想往上层遍历,可以继续读取ebp的值遍历。