Newer
Older
AMI-Aptio-BIOS-Reversed / SystemInventory / SystemInventory_sub_27F8.c
@Ajax Dong Ajax Dong 2 days ago 825 bytes Init
__int64 __fastcall sub_27F8(__int64 a1, _DWORD *a2, _DWORD *a3, _DWORD *a4, _DWORD *a5)
{
  unsigned int v8; // edi
  __int64 n15; // rax
  int n6; // ebx

  v8 = a1; /*0x281f*/
  if ( a5 ) /*0x2824*/
    *a5 = sub_2BDC(a1, 12, 13); /*0x2834*/
  if ( a4 ) /*0x283a*/
    *a4 = sub_2BDC(v8, 0, 3); /*0x2849*/
  n15 = sub_2BDC(v8, 8, 11); /*0x2856*/
  n6 = n15; /*0x285b*/
  if ( a2 ) /*0x2860*/
  {
    *a2 = n15; /*0x2862*/
    if ( (_DWORD)n15 == 15 ) /*0x2868*/
    {
      n15 = sub_2BDC(v8, 20, 27); /*0x2873*/
      *a2 += n15; /*0x2878*/
    }
  }
  if ( a3 ) /*0x287e*/
  {
    n15 = sub_2BDC(v8, 4, 7); /*0x288b*/
    *a3 = n15; /*0x2890*/
    if ( n6 == 6 || n6 == 15 ) /*0x289a*/
    {
      n15 = 16 * (unsigned int)sub_2BDC(v8, 16, 19); /*0x28ac*/
      *a3 += n15; /*0x28af*/
    }
  }
  return n15; /*0x28c5*/
}