/** @file
  SBPEI.h -- Header for SBPEI

Copyright (c) HR650X BIOS Decompilation Project
**/

#ifndef __SBPEI__H__
#define __SBPEI__H__

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

char *
internal_memcpy (
  char *dst,
  char *src,
  unsigned int count
  );

void *
internal_memset (
  void *buf,
  unsigned int count,
  char value
  );

int
fn_addr (
  int a1,
  int a2,
  int a3,
  int a4
  );

void *
internal_memset32 (
  void *buf,
  unsigned int count,
  int value
  );

EFI_STATUS
EFIAPI
ModuleEntryPoint (
  EFI_HANDLE ImageHandle,
  EFI_SYSTEM_TABLE *SystemTable
  );

char
InitializeSbPeiEnvironment (
  VOID
  );

int
GetSbSataDeviceAddress (
  int a1,
  _BYTE *a2,
  _BYTE *a3,
  _BYTE *a4,
  _BYTE *a5
  );

int
RecInitSbSataController (
  int a1,
  unsigned __int8 *a2,
  int a3
  );

int
ReadPortWordChecked (
  unsigned __int16 n1028
  );

int
ReadIoWordChecked (
  unsigned __int16 *a1
  );

__int16
WriteIoWordChecked (
  _WORD *a1,
  __int16 a2
  );

int
BcdByteToBinary (
  unsigned __int8 n0xA0
  );

int
GetPeiServicesTable (
  VOID
  );

int
PeiDebugPrint (
  int n64,
  char *_nSbPei.c_:__nRecInitSbSataController,
  ...
  );

int
PeiAssert (
  int e:__hs__MdePkg__Library__PeiServicesTablePointerLibIdt__PeiServ,
  int n48,
  int PeiServices____((void__)_0)
  );

int
GetPcdProtocol (
  void *this
  );

int
PcdGet16FromProtocol (
  void *this
  );

int
PcdGet32FromProtocol (
  void *this
  );

int
DebugAssert (
  int a1,
  EFI_SYSTEM_TABLE *SystemTable,
  char *ASSERT_in_%s_on_%i:_%s_n,
  ...
  );

int
PcdGet16FromProtocolValue (
  void *this
  );

int *
GetMmioBaseFromResourceList (
  int a1,
  int a2,
  _DWORD *a3,
  int *a4
  );

int
ReadRtcRegisterB (
  VOID
  );

int
InitializePcdProtocolCache (
  _DWORD *a1,
  int n8
  );

int
ResolvePcdResourceOffset (
  int a1
  );

int
GetPeiServices (
  VOID
  );

void *
__thiscall
ReadIdtr (
  void *this
  );

#endif /* __SBPEI__H__ */
