unsigned int __fastcall VgaCrtcRegReadModifyWrite(unsigned __int8 a1, char a2, char a3, char a4, unsigned __int8 a5)
{
unsigned __int32 v6; // eax
unsigned int result; // eax
_DWORD v8[4]; // [esp+4h] [ebp-20h]
_DWORD v9[4]; // [esp+14h] [ebp-10h]
v9[0] = 0;
v8[0] = -256;
v8[1] = -65281;
v8[2] = -16711681;
v8[3] = 0xFFFFFF;
v9[1] = 8;
v9[2] = 16;
v9[3] = 24;
__outdword(0xCF8u, a4 & 0xFC | ((a3 & 7 | (8 * (a2 & 0x1F | (32 * (a1 | 0xFFFF8000))))) << 8));
v6 = __indword(0xCFCu);
result = v6 & v8[a4 & 3] | (a5 << v9[a4 & 3]);
__outdword(0xCFCu, result);
return result;
}