EFI_STATUS ModuleEntryPoint(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable)
{
  int v2; // eax
  int v3; // ecx
  void *v4; // ecx
  int v5; // ecx
  int v6; // eax
  int v7; // eax
  int v8; // eax
  unsigned __int64 v10; // [esp-Ch] [ebp-10h]

  if ( (sub_FFD9165B(1024068) & 0x80u) == 0 ) /*0xffd7f7b0*/
  {
    sub_FFD9168B(); /*0xffd7f7b2*/
    v2 = sub_FFD9164F(); /*0xffd7f7b7*/
    *(_BYTE *)(v2 + 1024068) |= 0x80u; /*0xffd7f7c3*/
  }
  DebugPrint(64, (int)"SiInitPrePolicy() Start\n"); /*0xffd7f88f*/
  TraceHubInitialize(0); /*0xffd7f898*/
  RecordPerformanceEntry(v3, __rdtsc()); /*0xffd7f8a3*/
  PrintPchInfo(); /*0xffd7f8a8*/
  DebugPrint(64, (int)"PchInitPrePolicy() - Start\n"); /*0xffd7f8b4*/
  PchWdtInit(); /*0xffd7f8b9*/
  InstallPchResetPpi(); /*0xffd7f8be*/
  InstallPchSpiPpi(); /*0xffd7f8c3*/
  PchInitPreMem(); /*0xffd7f8c8*/
  sub_FFD8B940(v4); /*0xffd7f8cd*/
  DebugPrint(64, (int)"PchInitPrePolicy() - End\n"); /*0xffd7f8d9*/
  v10 = __rdtsc(); /*0xffd7f8e5*/
  EndPerformanceMeasurement(v5, v10, HIDWORD(v10)); /*0xffd7f8e7*/
  v6 = sub_FFD8AD54(); /*0xffd7f8ec*/
  v7 = (*(int (__cdecl **)(int, void *))(*(_DWORD *)v6 + 36))(v6, &unk_FFD97FEC); /*0xffd7f8f9*/
  if ( v7 < 0 ) /*0xffd7f901*/
  {
    DebugPrint(0x80000000, (int)"\nASSERT_EFI_ERROR (Status = %r)\n", v7); /*0xffd7f90e*/
    v8 = GetReportStatusCodePpi(); /*0xffd7f916*/
    if ( v8 ) /*0xffd7f91d*/
      (*(void (__cdecl **)(const char *, int, const char *))(v8 + 4))( /*0xffd7f92e*/
        "e:\\hs\\PurleySktPkg\\SouthClusterLbg\\SiInit\\Pei\\SiInitPreMem.c",
        155,
        "!EFI_ERROR (Status)");
  }
  DebugPrint(64, (int)"SiInitPrePolicy() - End\n"); /*0xffd7f93b*/
  return 0; /*0xffd7f947*/
}
