Newer
Older
AMI-Aptio-BIOS-Reversed / Platform / SetupInfoRecordsDisplay.c
@Ajax Dong Ajax Dong 2 days ago 1 KB Init
// 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*/
}