/** @file
CryptoSMM.c -- CryptoSMM
Auto-converted from IDA decompiler output.
Functions: 1
Copyright (c) HR650X BIOS Decompilation Project
**/
#include "CryptoSMM.h"
// Function: ModuleEntryPoint
// Original build path:
// AmiCryptoPkg/CryptoProtocols/CryptoSMM/DEBUG/AutoGen.c
EFI_STATUS ModuleEntryPoint(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable)
{
__int64 v3; // rcx
__int64 v4; // rax
EFI_STATUS v5; // rbx
InitializeCryptoContext(ImageHandle);
qword_14598 = 0x8000000000000001uLL;
if ( !InitializeCryptoSmmLock(&unk_144A0) )
{
v4 = InstallCryptoProtocol(v3, SystemTable);
if ( v4 >= 0 || qword_14598 < 0 )
qword_14598 = v4;
CryptoServiceCleanup(&unk_144A0);
FinalizeCryptoSmmLock(&unk_144A0, -1);
DebugAssertLine(
"e:\\hs\\Build\\HR6N0XMLK\\DEBUG_VS2015\\X64\\AmiCryptoPkg\\CryptoProtocols\\CryptoSMM\\DEBUG\\AutoGen.c",
273,
"((BOOLEAN)(0==1))");
DebugAssertLine(
"e:\\hs\\Build\\HR6N0XMLK\\DEBUG_VS2015\\X64\\AmiCryptoPkg\\CryptoProtocols\\CryptoSMM\\DEBUG\\AutoGen.c",
288,
"((BOOLEAN)(0==1))");
}
v5 = qword_14598;
if ( qword_14598 < 0 )
CryptoSmmDestructor();
return v5;
}