// SetupInfoRecordsDisplay - decompiled from Platform.efi
bool __fastcall SetupInfoRecordsDisplay(__int64 a1, __int64 a2, __int64 a3, __int64 a4)
{
_WORD *v5; // rdi
unsigned __int64 v7; // rbx
unsigned __int64 v8; // rax
const CHAR8 *ZeroPool; // rsi
__int64 v10; // rbx
_BYTE v11[24]; // [rsp+30h] [rbp-18h] BYREF
__int64 v12; // [rsp+60h] [rbp+18h] BYREF
v12 = a3; /*0xa37f*/
v5 = SetupKeywordHandler(a1, a2, 0, a4); /*0xa393*/
if ( !v5 ) /*0xa399*/
return 0; /*0xa399*/
v7 = 2 * SetupOptionQuery(L"GUID=00000000000000000000000000000000&NAME=0000&PATH=00"); /*0xa3b1*/
v8 = SetupOptionQuery(v5); /*0xa3b5*/
ZeroPool = (const CHAR8 *)AllocateZeroPool(v7 + 2 * v8 + 4); /*0xa3e1*/
AsciiStrLen(ZeroPool); /*0xa3e4*/
ExtractConfig(); /*0xa3ec*/
if ( !ZeroPool ) /*0xa3f4*/
return 0; /*0xa39b*/
v10 = (*(__int64 (__fastcall **)(__int64, const CHAR8 *, __int64, __int64 *, _BYTE *))(qword_FF78 + 32))( /*0xa41b*/
qword_FF78,
ZeroPool,
a4,
&v12,
v11);
ExtractConfig(); /*0xa41e*/
return v10 >= 0; /*0xa438*/
}