Newer
Older
AMI-Aptio-BIOS-Reversed / EarlyVideoPei / DebugVgaPrintStr.c
@Ajax Dong Ajax Dong 2 days ago 810 bytes Init
_BYTE *__usercall DebugVgaPrintStr@<eax>(int value@<eax>, _BYTE *buf, char a3, unsigned int n164)
{
  unsigned int n164_1; // ecx
  _BYTE *buf_1; // edi
  __int16 value_1; // bx
  int value_2; // eax
  int v8; // edx
  char n164_2; // dl
  unsigned int count; // ecx

  n164_1 = n164;
  LOBYTE(value) = a3;
  buf_1 = buf;
  BYTE1(value) = a3;
  value_1 = value;
  value_2 = value << 16;
  LOWORD(value_2) = value_1;
  if ( n164 >= 4 )
  {
    v8 = (unsigned __int8)buf & 3;
    if ( ((unsigned __int8)buf & 3) != 0 )
    {
      memset(buf, value_1, 4 - v8);
      buf_1 = &buf[4 - v8];
      n164_1 = n164 - (4 - v8);
    }
    n164_2 = n164_1;
    count = n164_1 >> 2;
    memset32(buf_1, value_2, count);
    buf_1 += 4 * count;
    n164_1 = n164_2 & 3;
  }
  memset(buf_1, value_1, n164_1);
  return buf;
}