Newer
Older
AMI-Aptio-BIOS-Reversed / LenovoServerPkg / SetupDefaults / SetupDefaultLoad / sub_868.txt
@Ajax Dong Ajax Dong 2 days ago 1 KB Restructure the repo
__int64 __fastcall sub_868(char a1, _BYTE *a2, __int64 a3, __int64 a4)
{
  __int64 v4; // rax
  _BYTE *v5; // rbx
  __int64 result; // rax
  _BYTE v8[24]; // [rsp+40h] [rbp-18h] BYREF
  char n3; // [rsp+70h] [rbp+18h] BYREF
  char v10; // [rsp+78h] [rbp+20h] BYREF

  v4 = qword_7920; /*0x872*/
  v5 = a2; /*0x879*/
  if ( !qword_7920 ) /*0x882*/
  {
    result = (*(__int64 (__fastcall **)(void *, _QWORD, __int64 *))(qword_79B8 + 320))(&unk_7450, 0, &qword_7920); /*0x89b*/
    if ( result < 0 ) /*0x8a4*/
    {
      qword_7920 = 0; /*0x8a6*/
      return result; /*0x8ae*/
    }
    v4 = qword_7920; /*0x8b0*/
  }
  v8[0] = a1; /*0x8bc*/
  LOBYTE(a4) = 44; /*0x8c6*/
  n3 = 3; /*0x8ce*/
  LOBYTE(a2) = 46; /*0x8ea*/
  result = (*(__int64 (__fastcall **)(__int64, _BYTE *, _QWORD, __int64, _BYTE *, char, char *, char *))(v4 + 16))( /*0x8ef*/
             v4,
             a2,
             0,
             a4,
             v8,
             1,
             &v10,
             &n3);
  if ( result >= 0 ) /*0x8f5*/
  {
    *v5 = v10; /*0x8fb*/
    return 0; /*0x8fd*/
  }
  return result; /*0x904*/
}