int __fastcall GetPerformanceLogBuffer(int *a1, int *a2)
{
  int v4; // eax
  int v5; // eax
  int v6; // eax
  int v7; // edi
  int v8; // eax
  int result; // eax
  int v10; // eax
  int v11; // eax

  if ( !a1 ) /*0xffd7fa9d*/
  {
    v4 = GetReportStatusCodePpi(); /*0xffd7fa9f*/
    if ( v4 ) /*0xffd7faa6*/
      (*(void (__cdecl **)(const char *, int, const char *))(v4 + 4))( /*0xffd7fab0*/
        "e:\\hs\\MdeModulePkg\\Library\\PeiPerformanceLib\\PeiPerformanceLib.c",
        57,
        "PeiPerformanceLog != ((void *) 0)");
  }
  if ( !a2 ) /*0xffd7fab8*/
  {
    v5 = GetReportStatusCodePpi(); /*0xffd7faba*/
    if ( v5 ) /*0xffd7fac1*/
      (*(void (__cdecl **)(const char *, int, const char *))(v5 + 4))( /*0xffd7facb*/
        "e:\\hs\\MdeModulePkg\\Library\\PeiPerformanceLib\\PeiPerformanceLib.c",
        58,
        "PeiPerformanceIdArray != ((void *) 0)");
  }
  v6 = sub_FFD8CE7C(&unk_FFD97F9C); /*0xffd7fad8*/
  if ( v6 ) /*0xffd7fadf*/
  {
    *a1 = v6 + 24; /*0xffd7fae9*/
    v7 = sub_FFD8CE7C(&unk_FFD97ECC); /*0xffd7faf0*/
    if ( !v7 ) /*0xffd7faf4*/
    {
      v8 = GetReportStatusCodePpi(); /*0xffd7faf6*/
      if ( v8 ) /*0xffd7fafd*/
        (*(void (__cdecl **)(const char *, int, const char *))(v8 + 4))( /*0xffd7fb07*/
          "e:\\hs\\MdeModulePkg\\Library\\PeiPerformanceLib\\PeiPerformanceLib.c",
          72,
          "GuidHob != ((void *) 0)");
    }
    result = v7 + 24; /*0xffd7fb0d*/
  }
  else
  {
    v10 = sub_FFD8CF46(&unk_FFD97F9C, 40008); /*0xffd7fb1b*/
    *a1 = v10; /*0xffd7fb22*/
    *a1 = sub_FFD8D4C8(v10, 40008); /*0xffd7fb2b*/
    v11 = sub_FFD8CF46(&unk_FFD97ECC, 4000); /*0xffd7fb39*/
    *a2 = v11; /*0xffd7fb40*/
    result = sub_FFD8D4C8(v11, 4000); /*0xffd7fb44*/
  }
  *a2 = result; /*0xffd7fb4a*/
  return result; /*0xffd7fb49*/
}
