EtwpCovSampCaptureBufferProcess
VOID __stdcall EtwpCovSampCaptureBufferProcess(INT64 *a1, INT64 a2){
INT64 v4;
PVOID v5;
_QWORD *v6;
unsigned int v7;
PVOID BugCheckParameter2;
BugCheckParameter2 = 0i64;
if( (int)EtwpCovSampAcquireSamplerRundown((_LIST_ENTRY **)&BugCheckParameter2) < 0 )
goto LABEL_6;
if( (*(_DWORD *)(a2 + 56) & 4) != 0 )
{
v5 = BugCheckParameter2;
EtwpCovSampContextAddSamples(BugCheckParameter2);
goto LABEL_7;
}
if( EtwpCovSampStackHashCheck(a1, v4, (UINT8 *)(a2 + 64), *(unsigned __int16 *)(a2 + 62)) )
{
LABEL_6:
v5 = BugCheckParameter2;
}
else
{
v6 = (_QWORD *)(a2 + 64);
v7 = *(unsigned __int16 *)(a2 + 62);
v5 = BugCheckParameter2;
EtwpCovSampContextAddAddresses(BugCheckParameter2, (__int64)KeGetCurrentThread()->ApcState.Process, v6, v7);
}
LABEL_7:
if( v5 )
{
ExReleaseRundownProtection((_EX_RUNDOWN_REF *)&ExBootDevicesRemovedEvent + 152);
KeLeaveCriticalRegion();
}
}Referenced by:
EtwpCovSampCaptureWorkerThread