PopDiagTraceDripsHistogram
VOID __stdcall PopDiagTraceDripsHistogram(
UINT64 CsDuration,
UINT64 DripsResidency,
UINT64 *DripsIdleBuckets,
UINT64 a4){
char v6;
_QWORD *v7;
__int64 *v8;
unsigned int v9;
__int64 v10;
__int64 *v11;
__int64 v12;
__int16 v13;
char v14;
char v15;
char v16;
char v17;
char v18;
__int64 v19;
UINT64 v20;
__int64 v21;
__int64 v22;
__int64 v23[3];
char v24;
__int64 v25;
__int64 v26;
char v27;
__int64 v28;
__int64 v29;
char v30;
struct _EVENT_DATA_DESCRIPTOR v31;
UINT64 *v32;
__int64 v33;
__int64 *v34;
__int64 v35;
char *v36;
__int64 v37;
char *v38;
__int64 v39;
char *v40;
__int64 v41;
char *v42;
__int64 v43;
char *v44;
__int64 v45;
_QWORD *v46;
v28 = -1i64;
v21 = 20000000i64;
v22 = 0i64;
LOBYTE(v23[0]) = 0;
v23[1] = 160000000i64;
v23[2] = 0i64;
v24 = 0;
v25 = 600000000i64;
v26 = 0i64;
v27 = 0;
v29 = 0i64;
v30 = 0;
if( (unsigned __int16)(DripsResidency / 0x23C34600) )
{
v6 = 100 * (__int64)DripsIdleBuckets / DripsResidency;
if( v6 )
{
v7 = v46;
v8 = qword_140CFA598;
v9 = 0;
v10 = 26i64;
do
{
for( ; v9 < 3; ++v9 )
{
if( *v8 <= (unsigned __int64)*(&v21 + 3 * v9) )
break;
}
v8 += 3;
v23[3 * v9 - 1] += *v7++;
--v10;
}
while( v10 );
v11 = v23;
v12 = 4i64;
do
{
*(_BYTE *)v11 = ((DripsResidency >> 1) + 100 * *(v11 - 1)) / DripsResidency;
v11 += 3;
--v12;
}
while( v12 );
if( (unsigned int)dword_140C021E8 > 5 )
{
if( tlgKeywordOn((__int64)&dword_140C021E8, 0x400000000000i64) )
{
v20 = CsDuration;
v32 = &v20;
v33 = 8i64;
v34 = &v19;
LOWORD(v19) = v13;
v36 = &v14;
v15 = v23[0];
v38 = &v15;
v16 = v24;
v40 = &v16;
v17 = v27;
v42 = &v17;
v18 = v30;
v44 = &v18;
v35 = 2i64;
v14 = v6;
v37 = 1i64;
v39 = 1i64;
v41 = 1i64;
v43 = 1i64;
v45 = 1i64;
tlgWriteTransfer_EtwWriteTransfer(
(__int64)&dword_140C021E8,
(unsigned __int8 *)&word_140027706,
0i64,
0i64,
9u,
&v31);
}
}
}
}
}Referenced by:
PpmSnapDripsAccountingSnapshot