HvlDmaAttachDeviceDomain
NTSTATUS __fastcall HvlDmaAttachDeviceDomain(_BYTE *a1){
__int64 v1;
INT16 v3;
UINT16 v4;
UINT64 v5;
_QWORD a2[2];
BOOL v7;
int v8;
__int64 v9;
a2[1] = 0i64;
a2[0] = -1i64;
v7 = *(_BYTE *)(v1 + 4) != 0;
v8 = *(_DWORD *)v1;
if( *(_DWORD *)a1 == 1 )
{
v9 = 0x4000000000000000i64;
LOWORD(v9) = *((_WORD *)a1 + 6);
WORD1(v9) = *((_WORD *)a1 + 4);
goto LABEL_7;
}
if( *(_DWORD *)a1 != 4 )
return -1073741637;
if( *((_QWORD *)a1 + 1) > 0x3FFFFFFFFFFFFFFFui64 )
return -1073741811;
v9 = *((_QWORD *)a1 + 1);
LABEL_7:
while( 1 )
{
LODWORD(v5) = 0;
v3 = HvcallFastExtended(65714i64, a2, 0x20ui64, 0i64, v5);
if( !HvlpHvStatusIsInsufficientMemory(v3) )
break;
if( HvlpHandleInsufficientMemory() < 0 )
return -1073741670;
}
return HvlpHvToNtStatus(v4);
}Referenced by:
No references.