I am trying to analyze some execution crash information, and to better identify the root cause of memory access error, I would like to
reverse execute the program from the crash point.
For example, to identify the root cause of memory access error below, I would like to reversely execute from the third line, and by leveraging some data flow analysis techniques, I should be able to identify the root cause at the first line.
mov -0x18(%rbp),%rax <---- root cause is at memory -0x18(%rbp) add %rdx,%rax mov (%rax),%eax <--- crash when reading (%rax)
So here is my question, is there any dynamic analysis tool/debugger that can support reverse execution? I prefer
Pin, but I am not aware that
Pin can do this..