NT_DISK::Read

__int64 __fastcall NT_DISK::Read(NT_DISK *this, _LARGE_INTEGER a2, unsigned int a3, unsigned __int8 *a4){
  _IRP *v5; 
  _IRP *v6; 
  unsigned int v7; 
  INT64 v8; 
  INT64 v9; 
  _LARGE_INTEGER v11; 

  v11 = a2;
  v5 = IoBuildAsynchronousFsdRequest(3ui64, *((_DEVICE_OBJECT **)this + 44), a4, a3, &v11, 0i64);
  v6 = v5;
  if( v5 )
  {
    v5->Tail.CurrentStackLocation[-1].Flags |= 2u;
    v7 = IoSynchronousCallDriver(*((PDEVICE_OBJECT *)this + 44), v5);
    MmUnlockPages((INT64)v6->MdlAddress, v8, v9);
    IoFreeMdl(v6->MdlAddress);
    IoFreeIrp(v6);
  }
  else
  {
    return(unsigned int)-1073741670;
  }
  return v7;
}

Referenced by:

No references.