I have a software which writes some data to specific location in memory depending on user choices. Say i can have 2 choices, A & B. I want to run IDA, set option A and save all the data, then run it again with option B and save and after that compare the 2.

Can i do this?


  • The question is pretty vague: "I want to run IDA, set option A and save all the data". What does "save all the data" mean? If you're talking about something in a data section, you could manually save the data as a binary file and then do a binary diff after each. (You could even do this with an entire data section.) If you're talking about heap-allocated data, your life is going to be harder. Nevertheless, the question really can't be answered until you be more specific about what the data is. Commented Feb 2, 2019 at 21:44

2 Answers 2


What you are asking for is called "Differential Debugging". Take a look to this tutorial to see how to do so with IDA without requiring any kind of plugins, just built-in functionality.

  • The link you provided for IDA does not work anymore
    – Eric
    Commented Aug 24, 2020 at 16:35
  • 1
    I have updated to link to point to the PDF in the web archive. Commented Aug 27, 2020 at 9:18

You may collect code coverage in both cases and then make a diff via ida plugin like lighthouse

  • how do you collect the data for this plugin?
    – dandan
    Commented Sep 5, 2018 at 11:20
  • the way it's described at "Collecting Coverage" section at the main page. Commented Sep 5, 2018 at 11:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.