PiDqIrpCancel

VOID __stdcall PiDqIrpCancel(DEVICE_OBJECT *DeviceObject, IRP *Irp){
  char v3; 
  INT64 v4; 
  v3 = 0;
  v4 = *(_QWORD *)(*(_QWORD *)(*((_QWORD *)Irp + 23) + 48i64) + 32i64);
  KeReleaseQueuedSpinLock(7ui64, *((_BYTE *)Irp + 69));
  PiDqQueryLock(v4);
  if( *(_QWORD *)(v4 + 176) )
  {
    *(_DWORD *)(v4 + 216) &= ~0x10u;
    v3 = 1;
    *(_QWORD *)(v4 + 176) = 0i64;
  }
  PiDqQueryUnlock(v4);
  if( v3 )
  {
    *((_QWORD *)Irp + 7) = 0i64;
    *((_DWORD *)Irp + 12) = -1073741536;
    IofCompleteRequest(Irp, 0);
  }
}

Referenced by:

No references.