KeInitializeSchedulerAssist

NTSTATUS __stdcall KeInitializeSchedulerAssist(INT64 a1){
  _BOOL4 v1; 
  NTSTATUS result; 

  v1 = 0;
  if( !*(_QWORD *)(a1 + 33976) )
  {
LABEL_2:
    KiSchedulerAssistThreadFlagEnabled = v1;
    if( !v1 )
      goto LABEL_3;
    goto LABEL_9;
  }
  if( KiSchedulerAssistThreadFlagOverride != 1 )
  {
    v1 = KiSchedulerAssistThreadFlagOverride != 2;
    goto LABEL_2;
  }
  KiSchedulerAssistThreadFlagEnabled = 1;
LABEL_9:
  _interlockedbittestandset(*(volatile signed __int32 **)(a1 + 24), 0x16u);
LABEL_3:
  result = KiVpThreadSystemWorkPriority - 1;
  if( (unsigned int)(KiVpThreadSystemWorkPriority - 1) > 0x1E )
    LODWORD(KiVpThreadSystemWorkPriority) = 1;
  if( *(_QWORD *)(a1 + 33976) )
    KiIrqlFlags |= 1u;
  return result;
}

Referenced by:

KeInitSystem