IopQueryDockRemovalInterface
__int64 __fastcall IopQueryDockRemovalInterface(_DEVICE_OBJECT *DeviceObject, _QWORD *a2){
VOID **PoolWithTag;
VOID **v5;
NTSTATUS v7;
_IO_STACK_LOCATION TopStackLocation;
GUID v9;
v9 = GUID_DOCK_INTERFACE;
PoolWithTag = ExAllocatePoolWithTag(1ui64, 0x30ui64, 538996816i64);
v5 = PoolWithTag;
if( !PoolWithTag )
return 3221225626i64;
*(_OWORD *)PoolWithTag = 0i64;
*((_OWORD *)PoolWithTag + 1) = 0i64;
*((_OWORD *)PoolWithTag + 2) = 0i64;
*(_WORD *)PoolWithTag = 48;
memset(&TopStackLocation, 0i64, sizeof(TopStackLocation));
*(_WORD *)&TopStackLocation.MajorFunction = 2075;
TopStackLocation.Parameters.SecurityContext = (_IO_SECURITY_CONTEXT *)&v9;
TopStackLocation.Parameters.Options = 48;
*(_QWORD *)&TopStackLocation.Parameters.FileAttributes = v5;
*(_QWORD *)&TopStackLocation.Parameters.EaLength = 0i64;
v7 = IopSynchronousCall(DeviceObject, &TopStackLocation, 3221225659i64, 0i64, 0i64);
if( v7 < 0 )
ExFreePoolWithTag(v5, 0);
else
*a2 = v5;
return(unsigned int)v7;
}Referenced by:
PnpProcessQueryRemoveAndEject