IopDecDisableableDepends

VOID __stdcall IopDecDisableableDepends(_DEVICE_NODE *DeviceNode){
  _DEVICE_NODE *v1; 
  WCHAR *Buffer; 

  if( DeviceNode )
  {
    v1 = DeviceNode;
    do
    {
      if( _InterlockedExchangeAdd((volatile signed __int32 *)&v1->DisableableDepends, 0xFFFFFFFF) != 1 )
        break;
      Buffer = v1->InstancePath.Buffer;
      if( Buffer )
        PnpRaiseNtPlugPlayDevicePropertyChangeEvent((INT64)DeviceNode, Buffer, 11);
      v1 = v1->Parent;
    }
    while( v1 );
  }
}

Referenced by:

IopRemoveDevice
PiProcessQueryDeviceState