PipRecordOpenHandleVeto
VOID __stdcall PipRecordOpenHandleVeto(
UINT64 ArrayCount,
_DEVICE_OBJECT **DeviceObjectArray,
_DEVICE_OBJECT *DeviceObject,
_ENUM_HANDLES_CONTEXT *EnumContext,
INT64 a5){
INT64 v6;
INT64 v7;
__int64 v8;
_ADAPTER_OBJECT *v9;
_ADAPTER_OBJECT *v10;
*(_DWORD *)a5 = 5;
PnpCollectOpenHandles((PVOID *)DeviceObjectArray, (unsigned int)ArrayCount, (__int64)EnumContext);
v8 = 0i64;
if( DeviceObject )
{
LODWORD(v9) = IoGetDeviceAttachmentBaseRef((INT64)DeviceObject, v6, v7);
v10 = v9;
if( v9 )
v8 = *(_QWORD *)(v9->ExpiredLock._bf_0 + 40);
RtlCopyUnicodeString((PUNICODE_STRING)(a5 + 8), (PCUNICODE_STRING)(v8 + 40));
HalPutDmaAdapter(v10);
}
else
{
RtlInitUnicodeString((PUNICODE_STRING)(a5 + 8), 0i64);
}
}Referenced by:
PipSendQueryRemoveIrpAndCheckOpenHandles