NTSTATUS __fastcall HalAllocateAdapterChannel(INT64 a1, INT64 a2, INT64 a3, INT64 a4){
UINT64 v5;
_LIST_ENTRY *v6;
INT64 v7;
INT64 v8;
if( HalpDmaGetAdapterVersion((_ADAPTER_OBJECT *)a1) == 2 )
return HalAllocateAdapterChannelV2((PDMA_ADAPTER)v8, (_KDEVICE_QUEUE_ENTRY *)v7, v5, v6);
*(_DWORD *)(v7 + 20) &= ~2u;
return HalpAllocateAdapterChannel(v8, v7, v5, *(_DWORD *)(v8 + 244) >> 12, 0, a4);
}