KeShouldYieldProcessor
BOOL __fastcall KeShouldYieldProcessor(){
struct _KPRCB *CurrentPrcb;
BOOL v1;
int v2;
int v3;
__int64 v4;
CurrentPrcb = KeGetCurrentPrcb();
v1 = 0;
v2 = *((_DWORD *)CurrentPrcb + 3147);
if( (v2 & 1) != 0 )
{
v3 = 1;
if( *((_DWORD *)CurrentPrcb + 8103) > 7u )
{
if( *((_BYTE *)CurrentPrcb + 12585) )
goto LABEL_8;
goto LABEL_16;
}
LABEL_5:
if( *((_DWORD *)CurrentPrcb + 7931) <= 7u )
return 0;
if( !v3 )
{
LABEL_13:
_disable();
*((_DWORD *)CurrentPrcb + 7931) = 0;
*((_DWORD *)CurrentPrcb + 8103) = 0;
KiResetGlobalDpcWatchdogProfiler((INT64)CurrentPrcb);
_enable();
v3 = 0;
goto LABEL_8;
}
LABEL_16:
if( (v2 & 0x1E) != 0 )
{
v3 = 5;
goto LABEL_8;
}
if( *((_QWORD *)CurrentPrcb + 1) != *((_QWORD *)CurrentPrcb + 3) )
{
v3 = 6;
goto LABEL_8;
}
goto LABEL_13;
}
v3 = 0;
if( (v2 & 0x1E) != 0 )
{
v3 = 2;
}
else
{
if( !*((_BYTE *)CurrentPrcb + 12585) )
{
v4 = *((_QWORD *)CurrentPrcb + 2);
if( v4 && v4 != *((_QWORD *)CurrentPrcb + 1) )
{
v3 = 4;
goto LABEL_8;
}
goto LABEL_5;
}
v3 = 3;
}
LABEL_8:
LOBYTE(v1) = v3 != 0;
return v1;
}Referenced by:
MiAddPagesToEnclave
MiArePageContentsZero
MiCloneVads
MiCommitEnclavePages
MiCommitPoolMemory
MiConvertEntireLargePageToSmall
MiConvertSmallPageRangeToLarge
MiDecommitHardwareEnclavePages
MiDecrementLargeSubsections
MiDeleteSystemPagableVm
MiDispatchFault
MiDoGangAssignment
MiEnableLargeSubsection
MiFillPoolCommitPageTable
MiFreePhysicalPages
MiGetPageChain
MiGetWorkingSetInfoList
MiInitializeLargeMdlLeafPfns
MiInitializeMdlPages
MiInsertViewOfPhysicalSection
MiMakeVaRangePhysicallyContiguous
MiMapLockedPagesInUserSpaceHelper
MiMoveDirtyBitsToPfns
MiPreparePhysicalPagesMdlForFree
MiProtectEnclavePages
MiProtectPrivateMemory
MiQueryAddressSpan
MiQueryVaPhysicalContiguity
MiRemoveMappedPtes
MiReplaceRotateWithDemandZero
MiScrubLargeMappedPage
MiSetGraphicsPtes
MiSetProtectionOnSection
MiSharePages
MiShouldYieldProcessor
MiSoftFaultMappedView
MiTransferPartitionPageRun
MiUnlinkBadPages
MiUnlinkNodeLargePages
MiUpdatePrivateDemandZeroView
MiWalkVaRange
MiWriteAwePtes
MmPurgeSection
MmUnlockPages