PiProcessAddBootDevices

INT64 __stdcall PiProcessAddBootDevices(PDEVICE_OBJECT DeviceObject){
  __int64 v1; 
  ULONG_PTR v2; 
  __int64 v4; 
  PVOID P; 
  v4 = 0i64;
  v1 = *((_QWORD *)DeviceObject + 39);
  P = 0i64;
  v2 = *(_QWORD *)(v1 + 40);
  if( *(_DWORD *)(v2 + 300) == 770 && (*(_DWORD *)(v2 + 396) & 0x6002) == 0 && !*(_QWORD *)(v2 + 432) )
  {
    PiPnpRtlBeginOperation((__int64 **)&P);
    BYTE4(v4) = PnPBootDriversInitialized;
    if( (int)PipCallDriverAddDevice(v2, (__int64)&v4) >= 0 )
      PoFxPrepareDevice(v2, 0);
    if( P )
      PiPnpRtlEndOperation(P);
  }
  return 0i64;
}

Referenced by:

PipAddDevicesToBootDriverWorker