typedef struct _DEVICE_NODE                                      // 50 elements, 0x158 bytes (sizeof)
/*0x000*/     struct _DEVICE_NODE* Sibling;
/*0x004*/     struct _DEVICE_NODE* Child;
/*0x008*/     struct _DEVICE_NODE* Parent;
/*0x00C*/     struct _DEVICE_NODE* LastChild;
/*0x010*/     ULONG32      Level;
/*0x014*/     struct _PO_DEVICE_NOTIFY Notify;                             // 8 elements, 0x24 bytes (sizeof)
/*0x038*/     struct _PO_IRP_MANAGER PoIrpManager;                         // 2 elements, 0x10 bytes (sizeof)
/*0x048*/     enum _PNP_DEVNODE_STATE State;
/*0x04C*/     enum _PNP_DEVNODE_STATE PreviousState;
/*0x050*/     enum _PNP_DEVNODE_STATE StateHistory[20];
/*0x0A0*/     ULONG32      StateHistoryEntry;
/*0x0A4*/     LONG32       CompletionStatus;
/*0x0A8*/     struct _IRP* PendingIrp;
/*0x0AC*/     ULONG32      Flags;
/*0x0B0*/     ULONG32      UserFlags;
/*0x0B4*/     ULONG32      Problem;
/*0x0B8*/     struct _DEVICE_OBJECT* PhysicalDeviceObject;
/*0x0BC*/     struct _CM_RESOURCE_LIST* ResourceList;
/*0x0C0*/     struct _CM_RESOURCE_LIST* ResourceListTranslated;
/*0x0C4*/     struct _UNICODE_STRING InstancePath;                         // 3 elements, 0x8 bytes (sizeof)
/*0x0CC*/     struct _UNICODE_STRING ServiceName;                          // 3 elements, 0x8 bytes (sizeof)
/*0x0D4*/     struct _DEVICE_OBJECT* DuplicatePDO;
/*0x0D8*/     struct _IO_RESOURCE_REQUIREMENTS_LIST* ResourceRequirements;
/*0x0DC*/     enum _INTERFACE_TYPE InterfaceType;
/*0x0E0*/     ULONG32      BusNumber;
/*0x0E4*/     enum _INTERFACE_TYPE ChildInterfaceType;
/*0x0E8*/     ULONG32      ChildBusNumber;
/*0x0EC*/     UINT16       ChildBusTypeIndex;
/*0x0EE*/     UINT8        RemovalPolicy;
/*0x0EF*/     UINT8        HardwareRemovalPolicy;
/*0x0F0*/     struct _LIST_ENTRY TargetDeviceNotify;                       // 2 elements, 0x8 bytes (sizeof)
/*0x0F8*/     struct _LIST_ENTRY DeviceArbiterList;                        // 2 elements, 0x8 bytes (sizeof)
/*0x100*/     struct _LIST_ENTRY DeviceTranslatorList;                     // 2 elements, 0x8 bytes (sizeof)
/*0x108*/     UINT16       NoTranslatorMask;
/*0x10A*/     UINT16       QueryTranslatorMask;
/*0x10C*/     UINT16       NoArbiterMask;
/*0x10E*/     UINT16       QueryArbiterMask;
              union                                                        // 3 elements, 0x4 bytes (sizeof)
/*0x110*/         struct _DEVICE_NODE* LegacyDeviceNode;
/*0x110*/         struct _DEVICE_RELATIONS* PendingDeviceRelations;
/*0x110*/         VOID*        Information;
              union                                                        // 1 elements, 0x4 bytes (sizeof)
/*0x114*/         struct _DEVICE_NODE* NextResourceDeviceNode;
/*0x118*/     struct _CM_RESOURCE_LIST* BootResources;
/*0x11C*/     struct _CM_RESOURCE_LIST* BootResourcesTranslated;
/*0x120*/     ULONG32      CapabilityFlags;
              struct                                                       // 3 elements, 0x10 bytes (sizeof)
/*0x124*/         enum _PROFILE_STATUS DockStatus;
/*0x128*/         struct _LIST_ENTRY ListEntry;                            // 2 elements, 0x8 bytes (sizeof)
/*0x130*/         UINT16*      SerialNumber;
/*0x134*/     ULONG32      DisableableDepends;
/*0x138*/     struct _LIST_ENTRY PendedSetInterfaceState;                  // 2 elements, 0x8 bytes (sizeof)
/*0x140*/     struct _LIST_ENTRY LegacyBusListEntry;                       // 2 elements, 0x8 bytes (sizeof)
/*0x148*/     ULONG32      DriverUnloadRetryCount;
/*0x14C*/     struct _DEVICE_NODE* PreviousParent;
/*0x150*/     ULONG32      DeletedChildren;
/*0x154*/     ULONG32      NumaNodeIndex;
Return to structures/enums list.
Return to O.S. version list.

(c) MoonSols 2010.