PopFxInvokeDripsWatchdogCallback
NTSTATUS __stdcall PopFxInvokeDripsWatchdogCallback(INT64 a1, INT64 a2, INT64 a3){
INT64 v3;
__int64 v4;
__int64 v5;
v3 = a1;
v4 = *(_QWORD *)(a1 + 80);
if( v4 )
{
if( *(_QWORD *)(v4 + 168) )
{
if( v3 == a2
|| (LODWORD(v3) = _InterlockedCompareExchange((volatile signed __int32 *)(v4 + 824), 0, 0), (v3 & 8) != 0) )
{
v3 = *(_QWORD *)(v4 + 864);
v5 = *(_QWORD *)(a2 + 32);
if( !v3 || v3 == *(_QWORD *)(v5 + 8) )
LODWORD(v3) = (*(__int64(__fastcall **)(_QWORD, __int64, INT64, _QWORD))(v4 + 168))(
*(_QWORD *)(v4 + 192),
v5,
a3,
0i64);
}
}
}
return v3;
}Referenced by:
PopDripsWatchdogInvokeDeviceCallbacks