/** @file LegacySmmSredir.h -- Header for LegacySmmSredir Copyright (c) HR650X BIOS Decompilation Project **/ #ifndef __LEGACYSMMSREDIR_H__ #define __LEGACYSMMSREDIR_H__ #include "../uefi_headers/Uefi.h" // // Global state recovered from module data recovery notes // extern EFI_SYSTEM_TABLE *gST; // 0x1A08 extern EFI_BOOT_SERVICES *gBS; // 0x1A10 extern EFI_HANDLE gImageHandle; // 0x1A18 extern EFI_RUNTIME_SERVICES *gRT; // 0x1A20 extern VOID *gSmst; // 0x1A28 extern VOID *gSmmDebugLib; // 0x1A30 extern EFI_BOOT_SERVICES *gBSLocal; // 0x1A38 extern VOID *gSmmInternalProtocol;// 0x1A40 extern VOID *gSmmBase2Protocol; // 0x1A48 extern UINT8 gSmmMode; // 0x1A50 extern VOID *gSmmIoProtocol; // 0x1A58 extern UINT8 gSmmIoPhase; // 0x1A60 extern VOID *gDxeDebugLib; // 0x1A68 extern VOID *gDxeIoProtocol; // 0x1A70 extern EFI_RUNTIME_SERVICES *gRTLocal; // 0x1A78 extern VOID *gDxeDebugMask; // 0x1A80 extern EFI_SYSTEM_TABLE *gSTLocal; // 0x1A88 extern VOID *gAmiBufferValidation;// 0x1A90 extern UINT8 gCmosValue; // 0x1A98 extern UINTN gDriverStatus; // 0x1B98 extern VOID *gSmmCommunication; // 0x1BA0 extern VOID *gSmmCommunicationProtocol; // 0x19F0 extern UINT8 gDataWidth; // 0x19F8 extern UINT8 gCommunicateDisabled; // 0x19F9 extern VOID *gSmmCommunicateBuffer; // 0x1A00 // // Function Prototypes // /// /// _ModuleEntryPoint -- UEFI SMM entry point recovered name /// EFI_STATUS EFIAPI _ModuleEntryPoint( IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable ); /// /// ModuleEntryPoint -- legacy compatibility alias /// EFI_STATUS EFIAPI ModuleEntryPoint( IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable ); /// /// _ModuleEntryPoint sub-helpers /// EFI_STATUS EFIAPI sub_44C( VOID ); /// /// sub_618 /// EFI_STATUS EFIAPI sub_618( IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable ); /// /// Recovered semantic wrappers for sub_44C/sub_618 /// EFI_STATUS EFIAPI LegacySmmSredirAutoGenInit(VOID); EFI_STATUS EFIAPI LegacySmmSredirDriverEntry(IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable); #endif /* __LEGACYSMMSREDIR_H__ */