PipUpdatePostStartCharacteristics

VOID __stdcall PipUpdatePostStartCharacteristics(DEVICE_OBJECT *PhysicalDeviceObject){
  int v1; 
  DEVICE_OBJECT *v2; 
  int v3; 
  v1 = 0;
  v2 = PhysicalDeviceObject;
  if( PhysicalDeviceObject )
  {
    do
    {
      v3 = *((_DWORD *)v2 + 13);
      v2 = (DEVICE_OBJECT *)*((_QWORD *)v2 + 3);
      v1 |= v3 & 0x40000;
    }
    while( v2 );
    if( v1 )
    {
      do
      {
        *((_DWORD *)PhysicalDeviceObject + 13) |= v1;
        PhysicalDeviceObject = (DEVICE_OBJECT *)*((_QWORD *)PhysicalDeviceObject + 3);
      }
      while( PhysicalDeviceObject );
    }
  }
}

Referenced by:

PnpDeviceCompletionProcessCompletedRequest
PnpStartDeviceNode