Attach (recommended) or Link to PDF file here:
[issue13075.pdf](https://github.com/mozilla/pdf.js/files/6117265/issue13075.pdf)

Configuration:
- Web browser and its version: Node.js 14.15.5
- Operating system and its version: Mac OS 11.2.1
- PDF.js version: master/2.7.570/2.6.347/1.10.100
- Is a browser extension: false

Steps to reproduce the problem:
1. const fileBuffer = fs.readFileSync('./pdf')
2. PDFJS.getDocument(fileBuffer)
3. fileBuffer.buffer has junk data at the start and at the end. Randomly, pdfjs can not read a buffer, whose buffer.buffer contains random memory junk data in fileBuffer.buffer

What is the expected behavior? pdfjs ignores a buffer.buffer and reads only buffer

What went wrong? (add screenshot)
I've catched that random error and wrote fileBuffer.buffer of the error buffer to a file named issue13075.pdf
I've recreated a buffer that has the wrong buffer.buffer (see line 6). Pdfjs fails to read that buffer (console.log('Fail')).
The Uint8Array of that buffer, pdfjs correctly reads (console.log('OK')).
![image](https://user-images.githubusercontent.com/8398353/110660366-59f1a780-8178-11eb-94c2-29be826c2118.png)


codesandbox:
https://codesandbox.io/s/pdfjs-loading-from-buffer-issue-9h4fd?file=/src/index.js

constructor() {
    this._objs = Object.create(null);
  }
  /**
   * Ensures there is an object defined for `objId`.
   * @private
   */
  _ensureObj(objId) {
    if (this._objs[objId]) {
      return this._objs[objId];
    }
    return (this._objs[objId] = {
      capability: createPromiseCapability(),
      data: null,
      resolved: false,
    });
  }
  /**
   * If called *without* callback, this returns the data of `objId` but the
   * object needs to be resolved. If it isn't, this method throws.
   *
   * If called *with* a callback, the callback is called with the data of the
   * object once the object is resolved. That means, if you call this method
   * and the object is already resolved, the callback gets called right away.
   */
  get(objId, callback = null) {