KiCopyCounters
VOID __stdcall KiCopyCounters(_ETHREAD *Thread){
__int64 v1;
unsigned __int8 CurrentIrql;
__int64 v4;
int v5;
v1 = *((_QWORD *)Thread + 45);
CurrentIrql = KeGetCurrentIrql();
__writecr8(1ui64);
do
{
v4 = *((_QWORD *)Thread + 9);
_enable();
v5 = KiCopyCountersWorker((__int64)Thread, v1);
_disable();
}
while( !v5 && v4 != *((_QWORD *)Thread + 9) );
__writecr8(CurrentIrql);
if( (*((_WORD *)KeGetCurrentPrcb() + 127) & 2) != 0 )
KiUpdateStibpPairing(0i64);
}Referenced by:
KiApcInterrupt
KiBoundFault
KiControlProtectionFault
KiDpcInterrupt
KiExceptionDispatch
KiFastFailDispatch
KiInvalidOpcodeFault
KiIpiInterrupt
KiMcheckAbort
KiNmiInterruptStart
KiPageFault
KiRestoreSetContextState
KiSpuriousDispatchNoEOI
KiSwInterrupt
KiSystemCall64
KiUmsFastReturnToUser
KiVirtualizationException
KxIsrLinkage
KxMcheckAlternateReturn
KxStartUserThread
NtCallEnclave
NtContinueEx
NtRaiseException