HalpTscTraceProcessorSynchronization

CHAR HalpTscTraceProcessorSynchronization(INT64 a1, INT64 a2, ...){
  void **v2; 
  UINT64 v3; 
  UINT64 UserDataCount; 
  struct _EVENT_DATA_DESCRIPTOR UserData; 
  int *v7; 
  int v8; 
  int v9; 
  va_list v10; 
  int v11; 
  int v12; 
  va_list v13; 
  int v14; 
  int v15; 
  va_list v16; 
  int v17; 
  int v18; 
  void *retaddr; 
  int v20; 
  int v21; 
  EVENT_DESCRIPTOR *v22; 
  __int64 v23; 
  va_list va2; 
  va_list va; 
  va_list va1; 
  va_start(va2, a2);
  va_start(va1, a2);
  va_start(va, a2);
  v22 = va_arg(va1, EVENT_DESCRIPTOR *);
  va_copy(va2, va1);
  v23 = va_arg(va2, _QWORD);
  v2 = &retaddr;
  v21 = a2;
  v20 = a1;
  if( HalpDiagnosticEventsRegistered )
  {
    v3 = HalpDiagnosticEventHandle;
    LOBYTE(v2) = EtwEventEnabled(
                   HalpDiagnosticEventHandle,
                   (EVENT_DESCRIPTOR *)&HAL_ETW_EVENT_TIMER_PROC_SYNCH_REPORT,
                   v22);
    if( (_BYTE)v2 )
    {
      UserData.Reserved = 0;
      v9 = 0;
      v12 = 0;
      v15 = 0;
      v18 = 0;
      UserData.Ptr = (unsigned __int64)&v20;
      v7 = &v21;
      UserData.Size = 4;
      va_copy(v10, va);
      va_copy(v13, va1);
      va_copy(v16, va2);
      LODWORD(UserDataCount) = 5;
      v8 = 4;
      v11 = 8;
      v14 = 8;
      v17 = 4;
      LOBYTE(v2) = EtwWriteEx(
                     v3,
                     (EVENT_DESCRIPTOR *)&HAL_ETW_EVENT_TIMER_PROC_SYNCH_REPORT,
                     0i64,
                     0i64,
                     0i64,
                     0i64,
                     UserDataCount,
                     &UserData);
    }
  }
  return(char)v2;
}

Referenced by:

HalpTscAdjustToLeader
HalpTscAdjustToTarget
HalpTscAdvSynchToLeader
HalpTscAdvSynchToTarget