PnpDeviceCompletionQueueRemoveCompletedRequest
_QWORD *__fastcall PnpDeviceCompletionQueueRemoveCompletedRequest(__int64 a1, _QWORD *a2){
unsigned __int8 v3;
_QWORD *v4;
unsigned __int64 v5;
_QWORD **v6;
KeWaitForSingleObject((UINT64)&PnpReplaceEvent + 5960, 0, 0, 0, 0i64);
v3 = KeAcquireSpinLockRaiseToDpc((UINT64 *)&PnpReplaceEvent + 749);
v4 = (_QWORD *)*a2;
v5 = v3;
v6 = (_QWORD **)a2[1];
if( *(_QWORD **)(*a2 + 8i64) != a2 || *v6 != a2 )
__fastfail(3u);
*v6 = v4;
v4[1] = v6;
KxReleaseSpinLock((UINT64 *)&PnpReplaceEvent + 749);
__writecr8(v5);
return a2;
}Referenced by:
PipEnumerateDevice
PnpStartDeviceNode