我正在使用WinDbg调试程序。
在崩溃站点,最后两帧调用堆栈是:
ChildEBP RetAddr
WARNING: Stack unwind information not available. Following frames may be wrong.
0251bfe8 6031f8da npdf!ProvideCoreHFT2+0x24db0
0251c000 011eb7a5 npdf!ProvideCoreHFT2+0x5ac1a
...
我想知道第1帧如何调用第0帧。由于第0帧的返回地址是6031f8da,我打开了反汇编窗口并跳转到该位置,代码为:
...
6031f8d5 e8a6d0ffff call npdf!ProvideCoreHFT2+0x57cc0 (6031c980)
6031f8da 5f pop edi
...
我的问题是,返回地址之前的调用指令调用npdf!ProvideCoreHFT2 + 0x57cc0,而帧0中的函数实际上是npdf!ProvideCoreHFT2 + 0x24db0。为什么存在这种不一致?我该怎么办?
非常感谢!