Newer
Older
AMI-Aptio-BIOS-Reversed / Platform / SetupValueFormatter.c
@Ajax Dong Ajax Dong 2 days ago 2 KB Init
// SetupValueFormatter - decompiled from Platform.efi
__int64 __fastcall SetupValueFormatter(char n2, __int64 a2)
{
  __int64 result; // rax
  __int64 v3; // rdx
  __int64 v4; // rdx
  __int64 v5; // rdx
  __int64 v6; // rdx
  __int64 v7; // rdx
  __int64 v8; // rdx
  __int64 v9; // rdx
  __int64 v10; // rdx
  __int64 v11; // rdx
  __int64 v12; // rdx

  result = 0; /*0x35ec*/
  if ( n2 == 1 ) /*0x35f1*/
  {
    if ( a2 ) /*0x35f6*/
    {
      v3 = a2 - 1; /*0x35f8*/
      if ( v3 ) /*0x35fc*/
      {
        v4 = v3 - 1; /*0x35fe*/
        if ( v4 ) /*0x3602*/
        {
          v5 = v4 - 1; /*0x3604*/
          if ( v5 ) /*0x3608*/
          {
            v6 = v5 - 1; /*0x360a*/
            if ( v6 ) /*0x360e*/
            {
              v7 = v6 - 1; /*0x3610*/
              if ( v7 ) /*0x3614*/
              {
                v8 = v7 - 1; /*0x3616*/
                if ( v8 ) /*0x361a*/
                {
                  if ( v8 == 1 ) /*0x3620*/
                    return 1129; /*0x3622*/
                }
                else
                {
                  return 1126; /*0x3628*/
                }
              }
              else
              {
                return 329; /*0x362e*/
              }
            }
            else
            {
              return 327; /*0x3634*/
            }
          }
          else
          {
            return 325; /*0x363a*/
          }
        }
        else
        {
          return 323; /*0x3640*/
        }
      }
      else
      {
        return 321; /*0x3646*/
      }
    }
    else
    {
      return 319; /*0x364c*/
    }
  }
  else if ( n2 == 2 ) /*0x3655*/
  {
    if ( a2 ) /*0x365a*/
    {
      v9 = a2 - 1; /*0x365c*/
      if ( v9 ) /*0x3660*/
      {
        v10 = v9 - 1; /*0x3662*/
        if ( v10 ) /*0x3666*/
        {
          v11 = v10 - 1; /*0x3668*/
          if ( v11 ) /*0x366c*/
          {
            v12 = v11 - 1; /*0x366e*/
            if ( v12 ) /*0x3672*/
            {
              if ( v12 == 1 ) /*0x3678*/
                return 678; /*0x367a*/
            }
            else
            {
              return 675; /*0x3680*/
            }
          }
          else
          {
            return 659; /*0x3686*/
          }
        }
        else
        {
          return 670; /*0x368c*/
        }
      }
      else
      {
        return 667; /*0x3692*/
      }
    }
    else
    {
      return 664; /*0x3698*/
    }
  }
  return result; /*0x3627*/
}