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