The IDA-x86emu is a plugin designed for the IDAPro disassembler.
The plugin includes several buttons with specific purposes. The "Step" button executes a single instruction at eip, while the "Jump" button sets eip to the current cursor location. The "Run" button runs the code until a breakpoint is encountered, and the "Skip" button advances eip to the next instruction and skips the current instruction. The "Run to cursor" button executes instructions from eip until eip == the cursor location, but it can be dangerous if the cursor location is never reached.
In addition to these buttons, the plugin also includes "Push" and "Set Data" features. The "Push" button opens an input window that allows users to push data onto the plugin's stack. This is done by entering data as space-separated values. Each value is treated as a 4-byte quantity, and values are pushed right-to-left. The "Set Data" button opens a dialog where users can specify an address and data values to write at that address. Data values can be entered in a variety of formats, depending on the selected radio button.
Finally, the "Segments" button opens the segment register dialog box. Users can set 16-bit values for any segment register and 32-bit values for the segment base. This feature is a crude workaround for the current lack of a GDT. 16-bit addressing is not implemented at this time, and all address values are added to the appropriate segment base address (either implied or explicit).
Overall, the ida-x86emu plugin is a great addition to any reverse engineer's toolkit. Its user-friendly interface and powerful features make it an excellent choice for those looking to step through x86 code and disassemble binaries.
Version 0.9.5a: N/A