pub(crate) fn read_pointer<H: HistoryMode>(
    memory: &SimpleMemory<H>,
    pointer: FatPointer,
) -> Vec<u8> {
    let FatPointer {
        offset,
        length,
        start,
        memory_page,
    } = pointer;

    // The actual bounds of the returndata ptr is [start+offset..start+length]
    let mem_region_start = start + offset;
    let mem_region_length = length - offset;

    memory.read_unaligned_bytes(
        memory_page as usize,
        mem_region_start as usize,
        mem_region_length as usize,
    )
}
Reads the memory slice represented by the fat pointer.
Note, that the fat pointer must point to the accessible memory (i.e. not cleared up yet).
core/lib/multivm/src/versions/vm_boojum_integration/tracers/utils.rs