Newer
Older
AMI-Aptio-BIOS-Reversed / TcgPei / decompile_0xffe0b18a.txt
@Ajax Dong Ajax Dong 2 days ago 2 KB Init
{"addr":"0xffe0b18a","code":"int __fastcall sub_FFE0B18A(int a1, int *a2)\n{\n  int v3; // edi\n  int v4; // eax\n  int result; // eax\n  unsigned __int8 v6; // bl\n  unsigned __int8 v7; // [esp+13h] [ebp-21h]\n  int v8; // [esp+14h] [ebp-20h] BYREF\n  _BYTE v9[6]; // [esp+18h] [ebp-1Ch] BYREF\n  unsigned __int8 v10; // [esp+1Eh] [ebp-16h]\n\n  v3 = 0; /*0xffe0b198*/\n  v4 = *a2; /*0xffe0b19b*/\n  v8 = 0; /*0xffe0b1a4*/\n  result = (*(int (__cdecl **)(int *, void *, _DWORD, _DWORD, int *))(v4 + 32))(a2, &SystemTable__0, 0, 0, &v8); /*0xffe0b1a8*/\n  if ( result >= 0 && v8 ) /*0xffe0b1ba*/\n  {\n    sub_FFE0B2E8(64, \"before getTcgPeiPolicy\\n\"); /*0xffe0b1c9*/\n    (*(void (__cdecl **)(int *, _BYTE *))(v8 + 4))(a2, v9); /*0xffe0b1d8*/\n    if ( v10 ) /*0xffe0b1e3*/\n    {\n      v6 = sub_FFE0B8E5(); /*0xffe0b1fb*/\n      sub_FFE0B2E8(64, \"CrbSupport = %x \\n\", v6); /*0xffe0b207*/\n      if ( v6 ) /*0xffe0b211*/\n        return -2147483634; /*0xffe0b2aa*/\n      (*(void (__cdecl **)(int *, void *))(*a2 + 24))(a2, &unk_FFE0DC30); /*0xffe0b21f*/\n    }\n    else\n    {\n      (*(void (__cdecl **)(int *, void *))(*a2 + 24))(a2, &unk_FFE0DC30); /*0xffe0b1ed*/\n      v6 = v7; /*0xffe0b1f0*/\n    }\n    sub_FFE0B2E8(64, \"TpmDevice Ppi Installed\\n\"); /*0xffe0b22a*/\n    sub_FFE0B2E8(64, \"TpmPeientry ConfigFlags.DeviceType = %x\\n\", v10); /*0xffe0b23b*/\n    if ( *(_BYTE *)dword_FFE0DC28 == 0xFF || !*(_BYTE *)dword_FFE0DC28 ) /*0xffe0b252*/\n      v3 = -2147483634; /*0xffe0b257*/\n    sub_FFE0B2E8(64, \"IsTpmPresent results = %r\\n\", v3); /*0xffe0b260*/\n    sub_FFE0B2E8(64, \"IsTpmPresent base = %x\\n\", dword_FFE0DC28); /*0xffe0b277*/\n    sub_FFE0B2E8(64, \"IsTpmPresent Access reg = %x\\n\", *(unsigned __int8 *)dword_FFE0DC28); /*0xffe0b28b*/\n    if ( v3 >= 0 && v10 && v6 ) /*0xffe0b2a0*/\n      return -2147483634; /*0xffe0b2a2*/\n    else\n      return v3; /*0xffe0b2a6*/\n  }\n  return result; /*0xffe0b2af*/\n}","refs":[{"addr":"0xffe0db48","name":"SystemTable__0"},{"addr":"0xffe0b2e8","name":"sub_FFE0B2E8"},{"addr":"0xffe0b8e5","name":"sub_FFE0B8E5"},{"addr":"0xffe0dc30","name":"unk_FFE0DC30"},{"addr":"0xffe0dc28","name":"dword_FFE0DC28"}]}