//0x108 bytes (sizeof)
struct _DUMP_INITIALIZATION_CONTEXT
{
    ULONG Length;                                                           //0x0
    ULONG Reserved;                                                         //0x4
    VOID* MemoryBlock;                                                      //0x8
    VOID* CommonBuffer[2];                                                  //0x10
    union _LARGE_INTEGER PhysicalAddress[2];                                //0x20
    VOID (*StallRoutine)(ULONG arg1);                                       //0x30
    UCHAR (*OpenRoutine)(union _LARGE_INTEGER arg1);                        //0x38
    LONG (*WriteRoutine)(union _LARGE_INTEGER* arg1, struct _MDL* arg2);    //0x40
    VOID (*FinishRoutine)();                                                //0x48
    struct _ADAPTER_OBJECT* AdapterObject;                                  //0x50
    VOID* MappedRegisterBase;                                               //0x58
    VOID* PortConfiguration;                                                //0x60
    UCHAR CrashDump;                                                        //0x68
    UCHAR MarkMemoryOnly;                                                   //0x69
    UCHAR HiberResume;                                                      //0x6a
    UCHAR Reserved1;                                                        //0x6b
    ULONG MaximumTransferSize;                                              //0x6c
    ULONG CommonBufferSize;                                                 //0x70
    VOID* TargetAddress;                                                    //0x78
    LONG (*WritePendingRoutine)(LONG arg1, union _LARGE_INTEGER* arg2, struct _MDL* arg3, VOID* arg4); //0x80
    ULONG PartitionStyle;                                                   //0x88
    union
    {
        struct
        {
            ULONG Signature;                                                //0x8c
            ULONG CheckSum;                                                 //0x90
        } Mbr;                                                              //0x8c
        struct
        {
            struct _GUID DiskId;                                            //0x8c
        } Gpt;                                                              //0x8c
    } DiskInfo;                                                             //0x8c
    LONG (*ReadRoutine)(LONG arg1, union _LARGE_INTEGER* arg2, struct _MDL* arg3); //0xa0
    LONG (*GetDriveTelemetryRoutine)(ULONG arg1, ULONG arg2, VOID* arg3, ULONG arg4); //0xa8
    ULONG LogSectionTruncateSize;                                           //0xb0
    ULONG Parameters[16];                                                   //0xb4
    VOID (*GetTransferSizesRoutine)(ULONG* arg1, ULONG* arg2);              //0xf8
    VOID (*DumpNotifyRoutine)(enum _DUMP_EVENTS arg1, VOID* arg2, ULONG arg3); //0x100
};