PfSnTracingStateExWorkerRoutine
VOID __stdcall PfSnTracingStateExWorkerRoutine(_PFSN_TRACING_STATE_TIMER *TracingStateTimer){
PVOID v2;
PVOID *v3;
ExAcquireFastMutex(&FastMutex);
if( dword_140C501E4 == 2 )
{
KeReleaseGuardedMutex(&FastMutex);
}
else
{
dword_140C501E4 = 1;
while( qword_140C50198 != &qword_140C50198 )
{
v2 = qword_140C501A0;
if( *(PVOID **)qword_140C501A0 != &qword_140C50198
|| (v3 = (PVOID *)*((_QWORD *)qword_140C501A0 + 1), *v3 != qword_140C501A0) )
{
__fastfail(3u);
}
qword_140C501A0 = (PVOID)*((_QWORD *)qword_140C501A0 + 1);
*v3 = &qword_140C50198;
ExFreePoolWithTag(v2, 0);
--dword_140C501E0;
}
KeReleaseGuardedMutex(&FastMutex);
if( qword_140C501E8 )
KeSetEvent(qword_140C501E8, 0, 0);
}
ExFreePoolWithTag(TracingStateTimer, 0);
}Referenced by:
No references.