PipDmgEnforceEnumerationPolicy

NTSTATUS __stdcall PipDmgEnforceEnumerationPolicy(ULONG_PTR BugCheckParameter2){
  NTSTATUS v1; 
  INT64 v2; 
  void *v3; 
  bool v4; 

  v1 = 0;
  v2 = *(_QWORD *)(*(_QWORD *)&BugCheckParameter2 + 720i64);
  v3 = *(void **)&BugCheckParameter2;
  if( PipDmaGuardPolicy != 1 )
  {
    if( PipDmaGuardPolicy == 2 )
    {
      if( !PiCslIsConsoleLocked() || PiIommuIsDeviceSafeWhileConsoleLocked(v2) )
        return v1;
      v4 = 1;
    }
    else
    {
      if( PipDmaGuardPolicy != 3 )
        __fastfail(5u);
      v4 = !PiIommuIsDeviceSafeWhileConsoleLocked(*(_QWORD *)(*(_QWORD *)&BugCheckParameter2 + 720i64));
    }
    if( v4 )
      return PipDmaGuardBlockAddDevice(v3);
  }
  return v1;
}

Referenced by:

PipCallDriverAddDevice