IDA pro asm instructions change

asm picture asm · Jun 13, 2011 · Viewed 30.3k times · Source

I just want to know how I can change asm instructions in the IDA-view A:

  1. How to edit instructions(for instance: jnz to jmp)?
  2. How to insert new instructions(call func1, call func2 inserted to existing code)?

I know how to make dif files, I know how to apply the changes on my DLL, but how can I "make the difference"? How can I edit the code in IDA?

I learned how to modify a DLL:

  1. Modify code(how?)
  2. Generate dif file.
  3. Apply the code modifications to the DLL with the dif file and a script.

Answer

Seki picture Seki · Jun 13, 2011
  1. There is a Edit / Patch menu that used to be shown by default but that is hidden in recent IDA releases. If it is your case, edit the cfg/idagui.cfg file, look for the DISPLAY_PATCH_SUBMENU = NO line and change the setting. On the next IDA session, you will be able to change single byte / word values or assemble some code like in OllyDbg.
  2. Once you have patched your database, go to File / Produce file / Create DIF file, it will let you create a simple diff file in the form offset / value before / value after (it is not the common diff file format)
  3. To apply the diff file to an existing file, you can use the source code of a dif file patcher that was released in the IDA Pro Book