SmKmKeyGenKeyFind

_QWORD *__fastcall SmKmKeyGenKeyFind(__int64 a1, unsigned __int16 *a2){
  _QWORD *v2; 
  _QWORD *result; 
  unsigned __int16 *v5; 
  int v6; 
  int v7; 

  v2 = (_QWORD *)(a1 + 8);
  for( result = *(_QWORD **)(a1 + 8); result != v2; result = (_QWORD *)*result )
  {
    v5 = a2;
    do
    {
      v6 = *(unsigned __int16 *)((char *)v5 + result[2] - (_QWORD)a2);
      v7 = *v5 - v6;
      if( v7 )
        break;
      ++v5;
    }
    while( v6 );
    if( !v7 )
      return result;
  }
  return 0i64;
}

Referenced by:

SmKmKeyGenGenerate
SmKmKeyGenNewKey