Continuing from last week, let’s discuss other disassembly options you may want to change. Here’s the options page again:
Disassembly line parts
This group is for options which control the content of the main line itself. Here is an example of a line with all options enabled:
The marked up parts are:
- The line prefix (address of the line).
- The stack pointer value or delta (relative to the value at the entry point). Enabling this can be useful when debugging problems like “sp-analysis failed”, “positive sp value has been detected”, or “call analysis failed”.
- Comments for instructions with a short description of what the instruction is doing (may not be available for all processors or all instructions).
- Opcode bytes. The number entered in the “Number of opcode bytes” specifies the number displayed on a single line at most. If the instruction is longer, the rest is printed on the second line. If you prefer to truncate the extra bytes, enter a negative number (e.g. -4 will display 4 bytes at most, the rest will be truncated).
Display disassembly lines
This group of options control display of lines other than the actual line of the disassembly for a given address (main line).
- Empty lines: this prints additional empty lines to make disassembly more readable, especially in text mode (e.g. between functions or before labels). Turn it off to fit more code on screen.
- Borders between data/code: displays the border line (
;------------
) whenever there is a stop in the execution flow (e.g. after an unconditional jump or a call to a non-returning function). - Basic block boundaries: adds one more empty line at the end of each basic block (i.e. after a call or a branch).
- Source line numbers: displays source file name and line number if this information is available in the database (e.g. imported from the DWARF debug information).
- Try block lines: enables or disables display of information about exception handling recovered by parsing the exception handling metadata in the binary.
Article Link: https://www.hex-rays.com/blog/igors-tip-of-the-week-26-disassembly-options-2/