Newer
Older
AMI-Aptio-BIOS-Reversed / MdeModulePkg / Core / PiSmmCore / PiSmmIpl / PiSmmIpl.h
/** @file
  PiSmmIpl.h -- Header for PiSmmIpl

Copyright (c) HR650X BIOS Decompilation Project
**/

#ifndef __PISMMIPL_H__
#define __PISMMIPL_H__

#include "../uefi_headers/Uefi.h"

//
// Function Prototypes
//

EFI_STATUS
EFIAPI
ModuleEntryPoint(
  VOID
);

EFI_STATUS
EFIAPI
decompilation of all functions(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x1128(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x1154(
  VOID
);

EFI_STATUS
EFIAPI
__int64 BootServices_1; // r10(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v6; // rax(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v8; // rax(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v10; // rax(
  VOID
);

EFI_STATUS
EFIAPI
::ImageHandle = ImageHandle; /*0x116c*/(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x1504(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v1; // rax(
  VOID
);

EFI_STATUS
EFIAPI
__int64 BootServices_1; // rax(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v5; // rax(
  VOID
);

EFI_STATUS
EFIAPI
BootServices = BootServices; /*0x1518*/(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x16CC(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x1704(
  VOID
);

EFI_STATUS
EFIAPI
char _smmc__1; // di(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x180C(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x1854(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x185C(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 result; // rax(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x1958(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v3; // rax(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v5; // [rsp+40h] [rbp+18h] BYREF(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x19E8(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v3; // rbx(
  VOID
);

EFI_STATUS
EFIAPI
char v5; // [rsp+40h] [rbp+18h] BYREF(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x1AA8(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x1B0C(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x1B20(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v4; // r14(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v7; // rax(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v9; // rsi(
  VOID
);

EFI_STATUS
EFIAPI
int v11; // r9d(
  VOID
);

EFI_STATUS
EFIAPI
unsigned int v13; // r9d(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v15; // rbx(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v17; // rax(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v19; // [rsp+30h] [rbp-A9h] BYREF(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x1E50(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v9; // r10(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v13; // rdi(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v16; // rax(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v18; // r8(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v20; // rdx(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v22; // rcx(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v24; // rax(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v26; // rcx(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v28; // rcx(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v30; // rcx(
  VOID
);

EFI_STATUS
EFIAPI
_UNKNOWN *retaddr; // [rsp+8h] [rbp+0h] BYREF(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x2098(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v3; // rcx(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v5; // rbx(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v7; // r15(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v9; // rdi(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v11; // rcx(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v13; // r13(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v15; // r14(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v17; // rcx(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v19; // rax(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 *v21; // r14(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 *v23; // rbx(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v25; // rdx(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v27; // rax(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v29; // rbx(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v31; // rcx(
  VOID
);

EFI_STATUS
EFIAPI
_QWORD *v33; // rdx(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v36; // rdi(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v38; // rbx(
  VOID
);

EFI_STATUS
EFIAPI
_QWORD *v40; // [rsp+40h] ... [9911 chars total](
  VOID
);

EFI_STATUS
EFIAPI
@ 0x2598(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v5; // rbx(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 n258048; // rdi(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v9; // r11(
  VOID
);

EFI_STATUS
EFIAPI
_BYTE *v11; // r10(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v13; // rdx(
  VOID
);

EFI_STATUS
EFIAPI
char v15; // r11(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v17; // r10(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v19; // r9(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v21; // rax(
  VOID
);

EFI_STATUS
EFIAPI
__int64 (__fastcall **v23)(); // rcx(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v25; // rbp(
  VOID
);

EFI_STATUS
EFIAPI
__int64 (__fastcall *v27)(); // rsi(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v29; // rax(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v31; // rax(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v34; // [rsp+70h] [rbp+8h] BYREF(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x2B38(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x2B80(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v7; // rax(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x2BE8(
  VOID
);

EFI_STATUS
EFIAPI
v3 = n16 - 1; /*0x2c05*/(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x2C88(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x2CB8(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x2CF8(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 n0x10; // rbx(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x2D80(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v4; // r8(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int8 v6; // al(
  VOID
);

EFI_STATUS
EFIAPI
int n113; // edx(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x2E00(
  VOID
);

EFI_STATUS
EFIAPI
GetDebugPrintProtocol(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x2E40(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x2E4C(
  VOID
);

EFI_STATUS
EFIAPI
if ( qword_6430 ) /*0x2e58*/(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x2E74(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x2EA4(
  VOID
);

EFI_STATUS
EFIAPI
result = (*(__int64 (**)(void))(BootServices + 72))(); /*0x2eaf*/(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x2EE8(
  VOID
);

EFI_STATUS
EFIAPI
if ( !a1 ) /*0x2f0a*/(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x2FAC(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x3034(
  VOID
);

EFI_STATUS
EFIAPI
result = (*(__int64 (__fastcall **)(_QWORD, __int64 *))(RuntimeServices + 64))(0, &RuntimeServices_1); /*0x3048*/(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x3058(
  VOID
);

EFI_STATUS
EFIAPI
bool v4; // zf(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v6; // r9(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v8; // rcx(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v10; // rdx(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v13; // rax(
  VOID
);

EFI_STATUS
EFIAPI
unsigned int v15; // r8d(
  VOID
);

EFI_STATUS
EFIAPI
unsigned int v17; // edx(
  VOID
);

EFI_STATUS
EFIAPI
int v19; // edx(
  VOID
);

EFI_STATUS
EFIAPI
unsigned int n0x10; // r8d(
  VOID
);

EFI_STATUS
EFIAPI
unsigned int v23; // r8d(
  VOID
);

EFI_STATUS
EFIAPI
unsigned int v25; // edx(
  VOID
);

EFI_STATUS
EFIAPI
__int16 n3772; // cx(
  VOID
);

EFI_STATUS
EFIAPI
unsigned int n40; // esi(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v31; // rcx(
  VOID
);

EFI_STATUS
EFIAPI
int v33; // ecx(
  VOID
);

EFI_STATUS
EFIAPI
_BYTE v35[12]; // [rsp+20h] [rbp-49h] BYREF(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x359C(
  VOID
);

EFI_STATUS
EFIAPI
char n512_3; // r9(
  VOID
);

EFI_STATUS
EFIAPI
__int16 n523; // r8(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int16 v7; // r10(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v9; // rax(
  VOID
);

EFI_STATUS
EFIAPI
char *v11; // r15(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v13; // r12(
  VOID
);

EFI_STATUS
EFIAPI
bool i; // cf(
  VOID
);

EFI_STATUS
EFIAPI
bool v17; // zf(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v19; // rsi(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v21; // r12(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v23; // r15(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v25; // rcx(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v27; // rax(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v29; // rcx(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x3910(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v5; // rcx(
  VOID
);

EFI_STATUS
EFIAPI
unsigned int n5; // edx(
  VOID
);

EFI_STATUS
EFIAPI
unsigned int *v9; // rcx(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v11; // rax(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v13; // rcx(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v15; // r11(
  VOID
);

EFI_STATUS
EFIAPI
_WORD *v19; // r8(
  VOID
);

EFI_STATUS
EFIAPI
unsigned int *v21; // r14(
  VOID
);

EFI_STATUS
EFIAPI
unsigned int *v23; // rbp(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v25; // rsi(
  VOID
);

EFI_STATUS
EFIAPI
int v27; // r11d(
  VOID
);

EFI_STATUS
EFIAPI
int v29; // r11d(
  VOID
);

EFI_STATUS
EFIAPI
_QWORD *v31; // r8(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v33; // rax(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x3C30(
  VOID
);

EFI_STATUS
EFIAPI
signed __int64 result; // rax(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v5; // r8(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v7; // rdx(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v9; // r8(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v11; // rbx(
  VOID
);

EFI_STATUS
EFIAPI
unsigned int *v13; // r13(
  VOID
);

EFI_STATUS
EFIAPI
__int64 v15; // r12(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v17; // rdx(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v19; // r14(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v21; // r8(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v23; // rax(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v29; // rcx(
  VOID
);

EFI_STATUS
EFIAPI
unsigned int n5; // eax(
  VOID
);

EFI_STATUS
EFIAPI
unsigned __int64 v33; // rax(
  VOID
);

EFI_STATUS
EFIAPI
_DWORD *v35; // r14(
  VOID
);

EFI_STATUS
EFIAPI
unsigned int v37; // r8d(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x422C(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x43C4(
  VOID
);

EFI_STATUS
EFIAPI
if ( !qword_6458 && !byte_6450 ) /*0x43db*/(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x4424(
  VOID
);

EFI_STATUS
EFIAPI
if ( qword_6458 ) /*0x4430*/(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x444C(
  VOID
);

EFI_STATUS
EFIAPI
@ 0x44A8(
  VOID
);

#endif /* __PISMMIPL_H__ */