private CodeUnit virtuallyDisassembleAddress(Address address) {
			CodeUnit codeUnit = null;

			if (address != null) {
				PseudoDisassembler disassembler = getPseudoDisassembler();

				try {
					codeUnit = disassembler.disassemble(address);
				}
				catch (UsrException ue) {
					// these exceptions happen if there is insufficient data from the program:
					// InsufficientBytesException, UnknownInstructionException,
					// UnknownContextException
				}
			}

			return codeUnit;
		}
Attempts to disassemble the provided address virtually
(without changing the state of the program) by making use of the
{@link PseudoDisassembler}.

@param  address The address that will be disassembled.
@return The CodeUnit that resulted from the disassembly.
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/disassembler/DisassembledViewPlugin.java