PiSendTargetDeviceRemoveCanceledNotification
NTSTATUS __fastcall PiSendTargetDeviceRemoveCanceledNotification(INT64 a1, UINT64 a2){
unsigned int v2;
unsigned int i;
__int64 v5;
__int64 v6;
int v7;
NTSTATUS result;
if( (_DWORD)a2 )
{
v2 = a2;
for( i = 0; i < v2; ++i )
{
v5 = *(_QWORD *)(a1 + 8i64 * (v2 - i - 1));
if( v5 )
v6 = *(_QWORD *)(*(_QWORD *)(v5 + 312) + 40i64);
else
v6 = 0i64;
if( v6 )
{
v7 = *(_DWORD *)(v6 + 300);
result = v7 - 769;
if( ((v7 - 769) & 0xFFFFFFEE) == 0 && v7 != 785 )
continue;
}
result = PnpNotifyTargetDeviceChange((GUID *)GUID_TARGET_DEVICE_REMOVE_CANCELLED, (DEVICE_OBJECT *)v5, 0i64, 0i64);
}
}
return result;
}Referenced by:
PipProcessQueryRemovalInKernelMode
PipSendTargetDeviceQueryRemoveNotification