EtwpUpdateProcessorTraceEvents

__int64 __fastcall EtwpUpdateProcessorTraceEvents(__int64 a1, __int64 a2, unsigned int a3){
  _QWORD *v4; 
  __int64 i; 
  int v7[6]; 
  if( a3 - 1 > 3 )
    return 3221225485i64;
  v4 = *(_QWORD **)(a1 + 1016);
  if( !v4 || !*v4 )
    return 3221225485i64;
  for( i = 0i64; ; i = (unsigned int)(i + 1) )
  {
    v7[0] = i;
    if( (unsigned int)i >= a3 )
      break;
    *(_WORD *)(*(_QWORD *)(a1 + 1016) + 2 * i + 28) = *(_WORD *)(a2 + 4 * i);
  }
  _InterlockedOr(v7, 0);
  *(_DWORD *)(*(_QWORD *)(a1 + 1016) + 24i64) = a3;
  return 0i64;
}

Referenced by:

EtwSetPerformanceTraceInformation