If file is given, the disassembly is written to that file. Otherwise it is printed to standard output.
The address type (virtual or physical) used during tracing is passed to the disassembler.
Note that only the recorded PC values are disassembled in the current processor mode, so the output may be incorrect if the processor has switched modes (e.g. from 64-bit to 32-bit) during tracing.
When using physical addresses, an instruction that crosses a page boundary may be disassembled incorrectly if the next page is not at a contiguous physical address.