// SetupRecordsGetSet - decompiled from Platform.efi
bool __fastcall SetupRecordsGetSet(_WORD *ZeroPool, _WORD *a2, _WORD *&NAME_, _WORD *&PATH_)
{
  _WORD *ZeroPool_1; // rsi
  bool result; // al
  GUID GUID_; // rdi
  _WORD *v11; // rbx
  _WORD *v12; // rax
  unsigned __int64 n0xF4240; // rbx

  if ( !ZeroPool ) /*0xa1b7*/
    Assert((__int64)"e:\\hs\\MdeModulePkg\\Library\\UefiHiiLib\\HiiLib.c", 2732, (__int64)"FirstString != ((void *) 0)"); /*0xa1cc*/
  if ( !a2 ) /*0xa1d4*/
    Assert( /*0xa1e9*/
      (__int64)"e:\\hs\\MdeModulePkg\\Library\\UefiHiiLib\\HiiLib.c",
      2733,
      (__int64)"SecondString != ((void *) 0)");
  if ( !&NAME_ ) /*0xa1f1*/
    Assert( /*0xa206*/
      (__int64)"e:\\hs\\MdeModulePkg\\Library\\UefiHiiLib\\HiiLib.c",
      2734,
      (__int64)"StartSearchString != ((void *) 0)");
  if ( !&PATH_ ) /*0xa20e*/
    Assert( /*0xa223*/
      (__int64)"e:\\hs\\MdeModulePkg\\Library\\UefiHiiLib\\HiiLib.c",
      2735,
      (__int64)"StopSearchString != ((void *) 0)");
  ZeroPool_1 = PlatformSetupPolicy(ZeroPool, &NAME_); /*0xa233*/
  result = ZeroPool_1 /*0xa297*/
        && (GUID_ = PlatformSetupPolicy(a2, &NAME_)) != 0
        && (v11 = PlatformSetupPolicy(ZeroPool_1, &PATH_)) != 0
        && (v12 = PlatformSetupPolicy(GUID_, &PATH_)) != 0
        && (n0xF4240 = v11 - ZeroPool_1, n0xF4240 == v12 - GUID_)
        && SetupValueCheck(ZeroPool_1, GUID_, n0xF4240) == 0;
  return result; /*0xa2a9*/
}
