Newer
Older
AMI-Aptio-BIOS-Reversed / NvramPei / decompiled / 0xffe4ebb5.json
@Ajax Dong Ajax Dong 2 days ago 4 KB Init
{"jsonrpc": "2.0", "result": {"content": [{"type": "text", "text": "{\"addr\":\"0xffe4ebb5\",\"code\":\"int __cdecl sub_FFE4EBB5(int a1, int a2, int *a3)\\n{\\n  int v4; // eax\\n  int v5; // esi\\n  int v6; // [esp+4h] [ebp-8h]\\n  unsigned int n3; // [esp+8h] [ebp-4h] BYREF\\n\\n  if ( !(unsigned __int8)sub_FFE4F0E0(16973825) )\\n  {\\n    sub_FFE4F76B(0x80000000, \\\"GPIO ERROR: Incorrect GpioPad define used on this chipset (Group=%d, Pad=%d)!\\\\n\\\", 3, 1);\\n    return -2147483645; /*0xffe4ebe4*/\\n  }\\n  v4 = sub_FFE4F0BF(&n3); /*0xffe4ebec*/\\n  v5 = v4; /*0xffe4ebf5*/\\n  if ( n3 <= 3 )\\n  {\\n    sub_FFE4F76B(0x80000000, \\\"GPIO ERROR: Group argument (%d) exceeds GPIO group range\\\\n\\\", 3);\\n    return -2147483646; /*0xffe4ec12*/\\n  }\\n  if ( *(_DWORD *)(v4 + 236) <= 1u )\\n  {\\n    sub_FFE4F76B(0x80000000, \\\"GPIO ERROR: Pin number (%d) exceeds possible range for this group\\\\n\\\", 1);\\n    return -2147483646; /*0xffe4ec24*/\\n  }\\n  sub_FFE4EED7(); /*0xffe4ec29*/\\n  if ( v6 )\\n  {\\n    sub_FFE4F76B(0x80000000, \\\"GPIO ERROR: Accessing pad not owned by host (Group=%d, Pad=%d)!\\\\n\\\", 3, 1);\\n    return -2147483645; /*0xffe4ec3d*/\\n  }\\n  *a3 = *(_DWORD *)((unsigned __int16)(*(_DWORD *)(v5 + 232) + 8) | ((*(unsigned __int8 *)(v5 + 180) | 0xFFFFFD00) << 16)) /*0xffe4ec65*/\\n      & 2;\\n  return 0; /*0xffe4ec69*/\\n}\",\"refs\":[{\"addr\":\"0xffe4f76b\",\"name\":\"sub_FFE4F76B\"},{\"addr\":\"0xffe505b4\",\"name\":\"aGpioErrorIncor\",\"string\":\"GPIO ERROR: Incorrect GpioPad define used on this chipset (Group=%d, Pad=%d)!\\n\"},{\"addr\":\"0xffe4f0e0\",\"name\":\"sub_FFE4F0E0\"},{\"addr\":\"0xffe4f0bf\",\"name\":\"sub_FFE4F0BF\"},{\"addr\":\"0xffe50604\",\"name\":\"aGpioErrorGroup\",\"string\":\"GPIO ERROR: Group argument (%d) exceeds GPIO group range\\n\"},{\"addr\":\"0xffe50644\",\"name\":\"aGpioErrorPinNu\",\"string\":\"GPIO ERROR: Pin number (%d) exceeds possible range for this group\\n\"},{\"addr\":\"0xffe4eed7\",\"name\":\"sub_FFE4EED7\"},{\"addr\":\"0xffe5068c\",\"name\":\"aGpioErrorAcces\",\"string\":\"GPIO ERROR: Accessing pad not owned by host (Group=%d, Pad=%d)!\\n\"}]}"}], "structuredContent": {"addr": "0xffe4ebb5", "code": "int __cdecl sub_FFE4EBB5(int a1, int a2, int *a3)\n{\n  int v4; // eax\n  int v5; // esi\n  int v6; // [esp+4h] [ebp-8h]\n  unsigned int n3; // [esp+8h] [ebp-4h] BYREF\n\n  if ( !(unsigned __int8)sub_FFE4F0E0(16973825) )\n  {\n    sub_FFE4F76B(0x80000000, \"GPIO ERROR: Incorrect GpioPad define used on this chipset (Group=%d, Pad=%d)!\\n\", 3, 1);\n    return -2147483645; /*0xffe4ebe4*/\n  }\n  v4 = sub_FFE4F0BF(&n3); /*0xffe4ebec*/\n  v5 = v4; /*0xffe4ebf5*/\n  if ( n3 <= 3 )\n  {\n    sub_FFE4F76B(0x80000000, \"GPIO ERROR: Group argument (%d) exceeds GPIO group range\\n\", 3);\n    return -2147483646; /*0xffe4ec12*/\n  }\n  if ( *(_DWORD *)(v4 + 236) <= 1u )\n  {\n    sub_FFE4F76B(0x80000000, \"GPIO ERROR: Pin number (%d) exceeds possible range for this group\\n\", 1);\n    return -2147483646; /*0xffe4ec24*/\n  }\n  sub_FFE4EED7(); /*0xffe4ec29*/\n  if ( v6 )\n  {\n    sub_FFE4F76B(0x80000000, \"GPIO ERROR: Accessing pad not owned by host (Group=%d, Pad=%d)!\\n\", 3, 1);\n    return -2147483645; /*0xffe4ec3d*/\n  }\n  *a3 = *(_DWORD *)((unsigned __int16)(*(_DWORD *)(v5 + 232) + 8) | ((*(unsigned __int8 *)(v5 + 180) | 0xFFFFFD00) << 16)) /*0xffe4ec65*/\n      & 2;\n  return 0; /*0xffe4ec69*/\n}", "refs": [{"addr": "0xffe4f76b", "name": "sub_FFE4F76B"}, {"addr": "0xffe505b4", "name": "aGpioErrorIncor", "string": "GPIO ERROR: Incorrect GpioPad define used on this chipset (Group=%d, Pad=%d)!\n"}, {"addr": "0xffe4f0e0", "name": "sub_FFE4F0E0"}, {"addr": "0xffe4f0bf", "name": "sub_FFE4F0BF"}, {"addr": "0xffe50604", "name": "aGpioErrorGroup", "string": "GPIO ERROR: Group argument (%d) exceeds GPIO group range\n"}, {"addr": "0xffe50644", "name": "aGpioErrorPinNu", "string": "GPIO ERROR: Pin number (%d) exceeds possible range for this group\n"}, {"addr": "0xffe4eed7", "name": "sub_FFE4EED7"}, {"addr": "0xffe5068c", "name": "aGpioErrorAcces", "string": "GPIO ERROR: Accessing pad not owned by host (Group=%d, Pad=%d)!\n"}]}, "isError": false}, "id": 1}