Newer
Older
AMI-Aptio-BIOS-Reversed / PurleySktPkg / Me / Heci / Smm / HeciSmm / HeciSmm.c
/** @file
  HeciSmm.c -- HeciSmm

  Auto-converted from IDA decompiler output.
  Functions: 1

Copyright (c) HR650X BIOS Decompilation Project
**/

#include "HeciSmm.h"


// Function: ModuleEntryPoint
// Original build path:
//   PurleySktPkg/Me/Heci/Smm/HeciSmm/DEBUG/AutoGen.c
EFI_STATUS
ModuleEntryPoint(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable)
{
  __int64 v2; // rax
  EFI_STATUS v3; // rbx

  InitializeHeciSmmServices(ImageHandle, SystemTable);
  qword_3618 = 0x8000000000000001uLL;

  if ( !LocateHeciSmmProtocol(&unk_3520) )
  {
    v2 = InstallHeciSmmProtocolInterfaces();
    if ( v2 >= 0 || qword_3618 < 0 )
      qword_3618 = v2;

    InitializeHeciSmmProtocolState(&unk_3520);
    SetHeciSmmProtocolStatus(&unk_3520, -1);
    HeciSmmAssertHandler(
      "e:\\hs\\Build\\HR6N0XMLK\\DEBUG_VS2015\\X64\\PurleySktPkg\\Me\\Heci\\Smm\\HeciSmm\\DEBUG\\AutoGen.c",
      461,
      "((BOOLEAN)(0==1))");
    HeciSmmAssertHandler(
      "e:\\hs\\Build\\HR6N0XMLK\\DEBUG_VS2015\\X64\\PurleySktPkg\\Me\\Heci\\Smm\\HeciSmm\\DEBUG\\AutoGen.c",
      476,
      "((BOOLEAN)(0==1))");
  }

  v3 = qword_3618;
  if ( qword_3618 < 0 )
    ShutdownHeciSmmServices();
  return v3;
}