int __fastcall VgaGcProgramMisc(_DWORD *a1, _DWORD *a2)
{
unsigned int v3; // esi
unsigned int v4; // ebx
_BYTE *v5; // ecx
unsigned int v6; // edx
unsigned int v7; // ebp
int n0xFFFF; // eax
unsigned __int8 v9; // [esp+13h] [ebp-9h]
v3 = (*a2 * a2[1] * ((unsigned int)(a2[2] + 7) >> 3) - 1) >> 16;
v4 = 0;
do
{
v9 = (16 * (BYTE1(v4) & 0xF)) | BYTE1(v4) & 0xF;
__outbyte(0x3D4u, 0xA5u);
__outbyte(0x3D5u, v9);
__outbyte(0x3CBu, (16 * ((v4 >> 4) & 0xF)) | (v4 >> 4) & 0xF);
__outbyte(0x3CDu, (16 * (v4 & 0xF)) | v4 & 0xF);
v5 = (_BYTE *)a1[17];
v6 = v4;
v7 = v4;
n0xFFFF = 0xFFFF;
do
{
*v5++ = 0;
--n0xFFFF;
}
while ( n0xFFFF );
++v4;
}
while ( v4 <= v3 );
a1[20] = v7;
a1[21] = v6;
return n0xFFFF;
}