Newer
Older
AMI-Aptio-BIOS-Reversed / Platform / SetupActionHandler.c
@Ajax Dong Ajax Dong 2 days ago 2 KB Init
// SetupActionHandler - decompiled from Platform.efi
unsigned __int64 SetupActionHandler()
{
  _WORD *v0; // rax
  _WORD *v1; // rbx
  __int64 v2; // rcx
  __int64 v4; // [rsp+20h] [rbp-E0h]
  _BYTE v5[95]; // [rsp+30h] [rbp-D0h] BYREF
  char v6; // [rsp+8Fh] [rbp-71h]
  char v7; // [rsp+90h] [rbp-70h]
  char v8; // [rsp+91h] [rbp-6Fh]
  char v9; // [rsp+92h] [rbp-6Eh]
  char v10; // [rsp+93h] [rbp-6Dh]
  char v11; // [rsp+94h] [rbp-6Ch]
  __int16 v12; // [rsp+95h] [rbp-6Bh]
  char v13; // [rsp+97h] [rbp-69h]
  char v14; // [rsp+99h] [rbp-67h]
  char v15; // [rsp+9Ah] [rbp-66h]
  char v16; // [rsp+9Bh] [rbp-65h]
  char v17; // [rsp+9Ch] [rbp-64h]
  char v18; // [rsp+9Dh] [rbp-63h]
  char v19; // [rsp+9Eh] [rbp-62h]
  __int16 v20; // [rsp+9Fh] [rbp-61h]
  char v21; // [rsp+A1h] [rbp-5Fh]
  __int16 v22; // [rsp+A2h] [rbp-5Eh]

  v0 = HiiStringToToken2((__int64)&unk_F9E0); /*0x28dc*/
  if ( v0 )
  {
    v1 = v0 + 12; /*0x2903*/
    SetupInfoRecordsDisplay((__int64)&unk_FAB0, (__int64)L"SocketMemoryConfig", 514, (__int64)v5); /*0x2907*/
    if ( (unsigned __int8)(v6 - 2) <= 1u && v1 )
    {
      v2 = (unsigned __int8)(v6 - 2); /*0x2926*/
      v7 = *((_BYTE *)v1 + 27 * v2 + 24304); /*0x2934*/
      v8 = *((_BYTE *)v1 + 27 * v2 + 24305); /*0x293e*/
      v9 = *((_BYTE *)v1 + 27 * v2 + 24306); /*0x2948*/
      v10 = *((_BYTE *)v1 + 27 * v2 + 24310); /*0x2952*/
      v11 = *((_BYTE *)v1 + 27 * v2 + 24312); /*0x295c*/
      v12 = *(_WORD *)((char *)v1 + 27 * v2 + 24327); /*0x296e*/
      v13 = *((_BYTE *)v1 + 27 * v2 + 24307); /*0x2979*/
      v14 = *((_BYTE *)v1 + 27 * v2 + 24311); /*0x2983*/
      v15 = *((_BYTE *)v1 + 27 * v2 + 24309); /*0x298d*/
      v16 = *((_BYTE *)v1 + 27 * v2 + 24313); /*0x2997*/
      v17 = *((_BYTE *)v1 + 27 * v2 + 24314); /*0x29a1*/
      v18 = *((_BYTE *)v1 + 27 * v2 + 24315); /*0x29ab*/
      v19 = *((_BYTE *)v1 + 27 * v2 + 24316); /*0x29b5*/
      v21 = *((_BYTE *)v1 + 27 * v2 + 24317); /*0x29bf*/
      v20 = *(_WORD *)((char *)v1 + 27 * v2 + 24325); /*0x29ca*/
      v22 = *(_WORD *)((char *)v1 + 27 * v2 + 24318); /*0x29d6*/
    }
    else
    {
      v21 = v6 != 0 ? v21 : 0;
    }
    SetupRecordsNavigate((__int64)&unk_FAB0, (__int64)L"SocketMemoryConfig", 514, (__int64)v5, v4); /*0x29fc*/
    return 0; /*0x2a01*/
  }
  else
  {
    DebugPrint(0x80000000, "\nASSERT_EFI_ERROR (Status = %r)\n", 0x8000000000000007uLL); /*0x2a1e*/
    Assert((__int64)"e:\\hs\\PurleyRpPkg\\Platform\\Dxe\\Setup\\SetupPlatform.c", 2586, (__int64)"!EFI_ERROR (Status)"); /*0x2a36*/
    return 0x8000000000000007uLL; /*0x2a3b*/
  }
}