//0x10 bytes (sizeof)
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR
{
    UCHAR Type;                                                             //0x0
    UCHAR ShareDisposition;                                                 //0x1
    USHORT Flags;                                                           //0x2
    union
    {
        struct
        {
            union _LARGE_INTEGER Start;                                     //0x4
            ULONG Length;                                                   //0xc
        } Generic;                                                          //0x4
        struct
        {
            union _LARGE_INTEGER Start;                                     //0x4
            ULONG Length;                                                   //0xc
        } Port;                                                             //0x4
        struct
        {
            USHORT Level;                                                   //0x4
            USHORT Group;                                                   //0x6
            ULONG Vector;                                                   //0x8
            ULONG Affinity;                                                 //0xc
        } Interrupt;                                                        //0x4
        struct
        {
            union
            {
                struct
                {
                    USHORT Group;                                           //0x4
                    USHORT MessageCount;                                    //0x6
                    ULONG Vector;                                           //0x8
                    ULONG Affinity;                                         //0xc
                } Raw;                                                      //0x4
                struct
                {
                    USHORT Level;                                           //0x4
                    USHORT Group;                                           //0x6
                    ULONG Vector;                                           //0x8
                    ULONG Affinity;                                         //0xc
                } Translated;                                               //0x4
            };
        } MessageInterrupt;                                                 //0x4
        struct
        {
            union _LARGE_INTEGER Start;                                     //0x4
            ULONG Length;                                                   //0xc
        } Memory;                                                           //0x4
        struct
        {
            ULONG Channel;                                                  //0x4
            ULONG Port;                                                     //0x8
            ULONG Reserved1;                                                //0xc
        } Dma;                                                              //0x4
        struct
        {
            ULONG Channel;                                                  //0x4
            ULONG RequestLine;                                              //0x8
            UCHAR TransferWidth;                                            //0xc
            UCHAR Reserved1;                                                //0xd
            UCHAR Reserved2;                                                //0xe
            UCHAR Reserved3;                                                //0xf
        } DmaV3;                                                            //0x4
        struct
        {
            ULONG Data[3];                                                  //0x4
        } DevicePrivate;                                                    //0x4
        struct
        {
            ULONG Start;                                                    //0x4
            ULONG Length;                                                   //0x8
            ULONG Reserved;                                                 //0xc
        } BusNumber;                                                        //0x4
        struct
        {
            ULONG DataSize;                                                 //0x4
            ULONG Reserved1;                                                //0x8
            ULONG Reserved2;                                                //0xc
        } DeviceSpecificData;                                               //0x4
        struct
        {
            union _LARGE_INTEGER Start;                                     //0x4
            ULONG Length40;                                                 //0xc
        } Memory40;                                                         //0x4
        struct
        {
            union _LARGE_INTEGER Start;                                     //0x4
            ULONG Length48;                                                 //0xc
        } Memory48;                                                         //0x4
        struct
        {
            union _LARGE_INTEGER Start;                                     //0x4
            ULONG Length64;                                                 //0xc
        } Memory64;                                                         //0x4
        struct
        {
            UCHAR Class;                                                    //0x4
            UCHAR Type;                                                     //0x5
            UCHAR Reserved1;                                                //0x6
            UCHAR Reserved2;                                                //0x7
            ULONG IdLowPart;                                                //0x8
            ULONG IdHighPart;                                               //0xc
        } Connection;                                                       //0x4
    } u;                                                                    //0x4
};