KiEndThreadCycleAccumulation
VOID __fastcall KiEndThreadCycleAccumulation(INT64 a1, INT64 a2, INT64 a3, INT64 a4, INT64 a5, INT64 a6, INT64 a7){
unsigned __int64 v9;
UINT64 v10;
unsigned __int64 v11;
bool v12;
*(_BYTE *)(a1 + 32) = 1;
v9 = __rdtsc();
v10 = v9 - *(_QWORD *)(a1 + 32448);
v11 = v10 + *(unsigned int *)(a2 + 80);
*(_QWORD *)(a2 + 72) += v10;
*(_QWORD *)(a1 + 32448) = v9;
if( v11 > 0xFFFFFFFF )
LODWORD(v11) = -1;
v12 = (*(_BYTE *)(a2 + 2) & 0x3E) == 0;
*(_DWORD *)(a2 + 80) = v11;
if( !v12 )
KiEndThreadAccountingPeriod((_KPRCB *)a1, (_KTHREAD *)a2, v10);
if( a3 )
*(_QWORD *)a3 = v9;
}Referenced by:
KeBoostPriorityThread
KeCpuSetReportParkedProcessors
KeDelayExecutionThread
KeRecomputeCpuSetAffinityProcess
KeRemoveQueueEx
KeSetAffinityThread
KeSetBasePriorityThread
KeSetCpuSetsProcess
KeSetLegacyAffinityThread
KeSetSchedulingGroupRankBias
KeSetSelectedCpuSetsThread
KeSetThreadSchedulerAssist
KeUpdateThreadCpuSets
KeUpdateThreadTag
KeYieldExecution
KiAbForceProcessLockEntry
KiAbThreadUnboostCpuPriority
KiCheckForThreadDispatch
KiExitDispatcher
KiGroupSchedulingGenerationEnd
KiProcessDeferredReadyList
KiQuantumEnd
KiReadyOutSwappedThreads
KiSchedulerApc
KiSetHeteroPolicyThread
PsImpersonateContainerOfThread