EtwpCovSampHashLookupInTable

INT64 __fastcall EtwpCovSampHashLookupInTable(INT64 a1, UINT8 *a2, _QWORD *a3){
  unsigned int v4; 
  int v5; 
  __int64 v6; 
  __int64 v7; 
  int v8; 
  int v9; 
  __int64 i; 
  _QWORD *v11; 
  INT64 result; 
  v4 = 0;
  v5 = 0;
  v6 = *(_QWORD *)(a1 + 24);
  v7 = *(_QWORD *)a2;
  v8 = *(_DWORD *)(a1 + 20) - 1;
  v9 = a2[7]
     + 37 * (a2[6] + 37 * (a2[5] + 37 * (a2[4] + 37 * (a2[3] + 37 * (a2[2] + 37 * (a2[1] + 37 * (*a2 + 11623883)))))));
  for( i = v9 & (unsigned int)v8; ; i = v8 & (unsigned int)(v5 + i) )
  {
    v11 = (_QWORD *)(v6 + 8 * i);
    if( *v11 == v7 )
      break;
    if( !*v11 )
      goto LABEL_9;
    if( !v5 )
    {
      v5 = -1640531535 * v9 + 1;
      if( ((-79 * (_BYTE)v9) & 1) != 0 )
        v5 = -1640531535 * v9;
    }
  }
  v4 = 1;
LABEL_9:
  result = v4;
  *a3 = v11;
  return result;
}

Referenced by:

EtwpCovSampContextAddSamples
EtwpCovSampHashMakeRoomAndAcquireLock