RtlpLogCapabilityCheckLatency
signed __int16 __fastcall RtlpLogCapabilityCheckLatency(_QWORD *a1, _QWORD *a2, char a3, char a4, char a5, char a6){
signed __int16 result;
const _GUID *v11;
__int64 v12;
VOID *v13;
VOID **v14;
VOID *v15;
LONGLONG v16;
_EVENT_DATA_DESCRIPTOR v17;
LONGLONG *v18;
__int64 v19;
VOID **v20;
__int64 v21;
__int64 v22;
__int64 v23;
__int64 v24;
__int64 v25;
__int64 v26;
__int64 v27;
result = RtlRunOnceExecuteOnce(
&RtlpCapChkTelemetryRunOnceCtx,
(UINT64)RtlpCapChkTelemetryRunOnce,
0i64,
0i64,
v13,
v14,
v15,
(VOID **)v16);
if( a1 )
{
if( a2 )
{
if( *a1 )
{
if( *a2 )
{
if( RtlpPerformanceCounterFrequency.QuadPart )
{
result = _InterlockedDecrement16(&TelemetryEventThrottle);
if( !result )
{
if( (unsigned int)dword_140C0EEA0 > 5 )
{
if( tlgKeywordOn((__int64)&dword_140C0EEA0, 0x200000000000i64) )
{
v12 = 1000000i64 * (*a2 - *a1);
v19 = 8i64;
LOBYTE(v15) = a3;
v21 = 1i64;
v16 = v12 / RtlpPerformanceCounterFrequency.QuadPart;
v18 = &v16;
v20 = &v15;
v22 = (__int64)&v15 + 1;
BYTE2(v15) = a5;
v24 = (__int64)&v15 + 2;
BYTE3(v15) = a6;
v26 = (__int64)&v15 + 3;
BYTE1(v15) = a4;
v23 = 1i64;
v25 = 1i64;
v27 = 1i64;
tlgWriteTransfer_EtwWriteTransfer(
(__int64)&dword_140C0EEA0,
(unsigned __int8 *)byte_14002B32D,
0i64,
v11,
7u,
&v17);
}
}
result = TelemetryEventThrottle;
TelemetryEventThrottle = 100;
}
}
}
}
}
}
return result;
}Referenced by:
RtlCapabilityCheck