EtwTraceThreadSetName

VOID __stdcall EtwTraceThreadSetName(INT64 a1){
  unsigned int v1; 
  unsigned __int16 *v2; 
  __int64 *v3; 
  unsigned int v4; 
  unsigned __int64 v5; 
  int v6[4]; 
  __int64 v7[2]; 
  __int64 *v8; 
  __int64 v9; 
  __int64 *v10; 
  __int64 v11; 

  v6[0] = *(_DWORD *)(a1 + 1144);
  v1 = 2;
  v6[1] = *(_DWORD *)(a1 + 1152);
  v7[0] = (__int64)v6;
  v2 = *(unsigned __int16 **)(a1 + 1552);
  v6[2] = 0;
  v7[1] = 8i64;
  if( v2 && (v3 = (__int64 *)*((_QWORD *)v2 + 1)) != 0i64 )
  {
    v4 = *v2;
    v5 = 2048i64;
    if( (unsigned __int16)v4 < 0x800u )
      v5 = v4;
    v8 = v3;
    v9 = (unsigned int)v5;
    if( !(_DWORD)v5 || *((_WORD *)v3 + (v5 >> 1) - 1) )
    {
      v11 = 2i64;
      v10 = &EtwpNull;
      v1 = 3;
    }
  }
  else
  {
    v9 = 2i64;
    v8 = &EtwpNull;
  }
  EtwTraceKernelEvent((__int64)v7, v1, 2u, 0x548u, 0x501802u);
}

Referenced by:

NtSetInformationThread