PpMarkDeviceStackExtensionFlag

VOID __stdcall PpMarkDeviceStackExtensionFlag(DEVICE_OBJECT *DeviceObject, UINT64 ExtensionFlag, UINT8 Set){
  int v5; 
  KIRQL v6; 
  __int64 v7; 
  int v8; 
  int v9; 
  v5 = ExtensionFlag;
  v6 = KeAcquireQueuedSpinLock(0xAui64);
  while( DeviceObject )
  {
    v7 = *((_QWORD *)DeviceObject + 39);
    v8 = *(_DWORD *)(v7 + 32);
    if( Set )
      v9 = v5 | v8;
    else
      v9 = ~v5 & v8;
    *(_DWORD *)(v7 + 32) = v9;
    DeviceObject = (DEVICE_OBJECT *)*((_QWORD *)DeviceObject + 3);
  }
  KeReleaseQueuedSpinLock(0xAui64, v6);
}

Referenced by:

IopDoDeferredSetInterfaceState
PiProcessNewDeviceNode
PnpStartDeviceNode