PpDevNodeInsertIntoTree
VOID __stdcall PpDevNodeInsertIntoTree(_DEVICE_NODE *ParentNode, _DEVICE_NODE *DeviceNode){
unsigned __int64 v4;
_DEVICE_NODE *LastChild;
int v6[10];
v4 = (unsigned __int8)KeAcquireSpinLockRaiseToDpc((UINT64 *)&PnpReplaceEvent + 50);
DeviceNode->Level = ParentNode->Level + 1;
DeviceNode->Parent = ParentNode;
_InterlockedOr(v6, 0);
LastChild = ParentNode->LastChild;
if( LastChild )
LastChild->Sibling = DeviceNode;
else
ParentNode->Child = DeviceNode;
ParentNode->LastChild = DeviceNode;
KxReleaseSpinLock((UINT64 *)&PnpReplaceEvent + 50);
__writecr8(v4);
}Referenced by:
IoReportDetectedDevice
IopInitializeDeviceInstanceKey
PiInitializeDevice
PipProcessEnumeratedChildDevice