EtwpApplyTransientFilters
CHAR __fastcall EtwpApplyTransientFilters(INT64 a1, INT64 a2, INT64 a3, INT64 a4){
CHAR v4;
unsigned int v9;
_WORD *v10;
_DWORD *v12;
unsigned int v13;
v4 = 1;
if( (*(_BYTE *)(a1 + 98) & 1) == 0 )
{
v9 = 0;
if( !*(_QWORD *)a4 || (v4 = EtwpApplyExeFilter((_ETW_REG_ENTRY *)a1, *(_ETW_FILTER_STRING_TOKEN **)a4)) != 0 )
{
v10 = *(_WORD **)(a4 + 8);
if( v10 || *(_QWORD *)(a4 + 16) )
v4 = EtwpApplyPackageIdFilter(a1, v10, *(_WORD **)(a4 + 16));
if( v4 )
{
if( a3 )
{
v4 = 0;
v12 = (_DWORD *)(a2 + *(_QWORD *)a3);
v13 = *(_DWORD *)(a3 + 8) >> 2;
if( v13 )
{
while( *v12 != *(_DWORD *)(*(_QWORD *)(a1 + 80) + 1088i64) )
{
++v9;
++v12;
if( v9 >= v13 )
return v4;
}
return 1;
}
}
}
}
}
return v4;
}Referenced by:
EtwpIsRegEntryAllowed
EtwpNotifyGuid