VfStartBranchTracing
INT64 __stdcall VfStartBranchTracing(){
unsigned int v0;
INT64 result;
if( (MmVerifierData & 0x8000000) == 0 || !VfBTSSupported )
return 3221225474i64;
if( VfBTSInitialized && !*((_DWORD *)VfBTSStarted + *((unsigned int *)KeGetCurrentPrcb() + 9)) )
{
if( VfBTSProcessorFamily == 15 )
{
v0 = 12;
}
else
{
if( VfBTSProcessorFamily != 6 )
{
LABEL_10:
result = 0i64;
*((_DWORD *)VfBTSStarted + *((unsigned int *)KeGetCurrentPrcb() + 9)) = 1;
return result;
}
v0 = 192;
}
__writemsr(0x1D9u, v0);
goto LABEL_10;
}
return 3221226538i64;
}Referenced by:
KiFreezeTargetExecution
VfNotifyVerifierOfEvent