HalpMapTransferV3
__int64 __fastcall HalpMapTransferV3(
__int64 a1,
__int64 a2,
__int64 a3,
__int64 a4,
unsigned int *a5,
char a6,
char a7){
__int16 v7;
_QWORD *v10;
__int64 v11;
__int64 v12[3];
v7 = a4;
v12[0] = 0i64;
if( !*a5 )
return 0i64;
if( !*(_QWORD *)(a1 + 504) )
{
*a5 = 0;
return 0i64;
}
v10 = *(_QWORD **)(a3 + 56);
if( *(_BYTE *)(a1 + 434) )
HalpDmaMapScatterTransferV3(a1, a2, a3, a4, a5, a6, a7, v12);
else
HalpDmaMapContiguousTransferV3(a1, a2, a3, a4, a5, a6, a7, v12);
if( !*(_BYTE *)(a1 + 433) && !a6 )
{
if( *(_BYTE *)(a1 + 436) )
HalpDmaZeroMapBuffers(v11, v10, v7 & 0xFFF, *a5);
}
return v12[0];
}Referenced by:
IoMapTransferInternal