LookupAceTypeInTable

_STRSD_KEY_LOOKUP *__stdcall LookupAceTypeInTable(WCHAR *String, UINT64 AceType, UINT64 LookupFlags){
  _STRSD_KEY_LOOKUP *v3; 
  size_t *v4; 
  unsigned int v5; 
  int v6; 
  int v7; 

  v3 = 0i64;
  v4 = (size_t *)((char *)&stru_140C00F40 + 3992);
  v5 = 0;
  v6 = LookupFlags;
  v7 = AceType;
  do
  {
    if( (v6 & v4[2]) == v6 && (String ? wcsnicmp(String, *((const wchar_t **)v4 - 1), *v4) == 0 : v7 == v4[1]) )
      break;
    ++v5;
    v4 += 6;
  }
  while( v5 < 0x11 );
  if( v5 < 0x11 )
    return(_STRSD_KEY_LOOKUP *)((char *)&stru_140C00F40 + 24 * v5 + 3984);
  return v3;
}

Referenced by:

LocalConvertAclToString
LocalGetAclForString