MMIO Access for QEMU


typedef struct { 
    UINT64 GpaAddress; // GPA address of the memory access 
    UINT8 Direction; // Read or write 
    UINT8 AccessSize; // 1, 2, 4, or 8 bytes 
    union { 
        UINT64 Value; // Input value (for write), output value (for read) 
        UINT64 GpaAddress2; // GPA address of the second instruction operand 


This information is derived by decoding the instruction that caused an RunVpExitMemoryAccess exit for a virtual processor.