PopFxComponentPerfWork
VOID __stdcall PopFxComponentPerfWork(VOID *Parameter){
__int64 v1;
unsigned int v3;
_POP_FX_DEVICE *v4;
signed __int32 v5;
signed __int32 v6;
__int64 v7;
v1 = *(_QWORD *)Parameter;
v3 = *(_DWORD *)(*(_QWORD *)Parameter + 16i64);
v4 = *(_POP_FX_DEVICE **)(*(_QWORD *)Parameter + 80i64);
do
{
_m_prefetchw((char *)Parameter + 40);
v5 = *((_DWORD *)Parameter + 10);
do
{
v6 = v5;
v5 = _InterlockedCompareExchange((volatile signed __int32 *)Parameter + 10, v5, v5);
}
while( v6 != v5 );
PopFxCompleteComponentPerfState(v4, v3, (_POP_FX_PERF_INFO *)Parameter, (v5 & 0x40000000) != 0);
}
while( _InterlockedExchangeAdd((volatile signed __int32 *)Parameter + 30, 0xFFFFFFFF) != 1 );
v7 = *(_QWORD *)(v1 + 80);
if( _InterlockedExchangeAdd((volatile signed __int32 *)(v7 + 244), 0xFFFFFFFF) == 1 )
KeSetEvent((PRKEVENT)(v7 + 248), 0, 0);
}Referenced by:
No references.