EtwpCovSampHashLookupInTable

VOID __stdcall EtwpCovSampHashLookupInTable(){
  unsigned __int8 *v0; 
  __int64 v1; 
  _QWORD *v2; 
  _QWORD *v3; 
  int v4; 
  __int64 v5; 
  __int64 v6; 
  int v7; 
  int v8; 
  __int64 i; 
  _QWORD *v10; 

  v3 = v2;
  v4 = 0;
  v5 = *(_QWORD *)(v1 + 24);
  v6 = *(_QWORD *)v0;
  v7 = *(_DWORD *)(v1 + 20) - 1;
  v8 = v0[7]
     + 37 * (v0[6] + 37 * (v0[5] + 37 * (v0[4] + 37 * (v0[3] + 37 * (v0[2] + 37 * (v0[1] + 37 * (*v0 + 11623883)))))));
  for( i = v8 & (unsigned int)v7; ; i = v7 & (unsigned int)(v4 + i) )
  {
    v10 = (_QWORD *)(v5 + 8 * i);
    if( *v10 == v6 || !*v10 )
      break;
    if( !v4 )
    {
      v4 = -1640531535 * v8 + 1;
      if( ((-79 * (_BYTE)v8) & 1) != 0 )
        v4 = -1640531535 * v8;
    }
  }
  *v3 = v10;
}

Referenced by:

EtwpCovSampContextAddSamples
EtwpCovSampHashMakeRoomAndAcquireLock