PopDiagTraceServiceNotification

void __fastcall PopDiagTraceServiceNotification(_DWORD *a1){
  const _EVENT_DESCRIPTOR *v2; 
  _DWORD *v3; 
  __int64 v4; 
  __int16 v5; 
  _EVENT_DATA_DESCRIPTOR UserData; 
  _DWORD *v7; 
  int v8; 
  int v9; 

  v2 = (const _EVENT_DESCRIPTOR *)POP_ETW_EVENT_SUSPENDSERVICE;
  if( *a1 )
    v2 = &POP_ETW_EVENT_SUSPENDSERVICE_END;
  if( PopDiagHandleRegistered && EtwEventEnabled(PopDiagHandle, v2) )
  {
    v3 = a1 + 1;
    v4 = -1i64;
    do
      ++v4;
    while( *((_WORD *)v3 + v4) );
    v5 = v4;
    UserData.Ptr = (unsigned __int64)&v5;
    v8 = 2 * (unsigned __int16)v4;
    *(_QWORD *)&UserData.Size = 2i64;
    v7 = v3;
    v9 = 0;
    EtwWrite(PopDiagHandle, v2, 0, 2u, &UserData);
  }
}

Referenced by:

No references.