PfLogEvent
INT64 __fastcall PfLogEvent(INT64 a1, INT64 a2, const VOID *a3, UINT64 a4){
unsigned int v5;
int v6;
int v7;
unsigned int v8;
INT64 v9;
int v10;
unsigned int v11;
unsigned __int64 *v12;
INT64 v13;
PSLIST_ENTRY ListEntry;
unsigned __int64 *v16;
v5 = a4;
v6 = a2;
v7 = a1;
v8 = (a4 + 31) & 0xFFFFFFF0;
PfFbLogEntryReserve((INT64)&stru_140C4FA60, &ListEntry, (INT64)&v16, v8, 0i64, 0i64);
v11 = v10;
if( v10 < 0 )
{
_InterlockedExchangeAdd((_DWORD *)&xmmword_140C4FC10 + 1, 1u);
if( ListEntry )
PfFbLogEntryComplete(ListEntry, v9, 0i64);
}
else
{
v12 = v16;
*v16 = *v16 & 0xFFFFFFFFFFFFF003ui64 | ((v8 & 0x3FF0 | 0x8000Cui64) >> 2);
*((_DWORD *)v12 + 2) = v6;
*v12 ^= (*(_DWORD *)v12 ^ (v7 << 12)) & 0x1F000;
memmove((UINT8 *)v12 + 16, (UINT8 *)a3, v5);
PfFbLogEntryComplete(ListEntry, v13, v8);
return 0;
}
return v11;
}Referenced by:
PfFileInfoNotify
PfLogFileDataAccess
PfLogForegroundProcess
PfPowerActionNotify
PfpLogApplicationEvent
PfpLogEventRequest
PfpLogScenarioEvent
PfpPowerActionStartScenarioTracing
PfpRpLogDeprioEvent