BOOL __stdcall MiPageAvailableEx(INT64 a1, UINT64 a2, INT16 a3){
BOOL result;
int v4;
result = a2 >= 0x9F
|| (a3 & 0x2000) != 0
|| (v4 = *(_DWORD *)&KeGetCurrentThread()[1].gapD8[12], (v4 & 0xC) == 8)
|| (a2 >= 0x20 || (_MI_PARTITION *)a1 != &Irp)
&& ((a3 & 4) != 0 || (v4 & 2) != 0 && a2 >= 0x21 || (*(_DWORD *)(a1 + 4) & 0x20) != 0);
return result;
}