Link to PDF file (or attach file here):
[pages4.pdf](https://github.com/mozilla/pdf.js/files/1128300/pages4.pdf)

Configuration:
- Web browser and its version: Firefox 54
- Operating system and its version: Win 10
- PDF.js version: 1.8.522
- Is an extension: no

What is the expected behavior? (add screenshot)
![chrome1-1 1](https://user-images.githubusercontent.com/146436/27918380-2f74512a-6245-11e7-8525-d0038fa6c2e8.jpg)
![chrome1-2 1](https://user-images.githubusercontent.com/146436/27918425-54f8e47e-6245-11e7-9bff-127f79ad0511.jpg)


What went wrong? (add screenshot)
![screenshot from 2017-07-06 12-10-30](https://user-images.githubusercontent.com/146436/27918442-5d57624e-6245-11e7-9436-5ba31cc8bd1a.png)
![screenshot from 2017-07-06 12-10-44](https://user-images.githubusercontent.com/146436/27918454-63b486da-6245-11e7-9eb5-c03aa5c40943.png)



transferMapGreen = transferMaps[0];
        transferMapBlue = transferMaps[0];
        transferMapGray = transferMaps[0];
        break;
      case 4:
        transferMapRed = transferMaps[0];
        transferMapGreen = transferMaps[1];
        transferMapBlue = transferMaps[2];
        transferMapGray = transferMaps[3];
        break;
    }
  }
  
  
  if (imgData.kind === ImageKind.GRAYSCALE_1BPP) {
    
    const srcLength = src.byteLength;
    const dest32 = new Uint32Array(dest.buffer, 0, dest.byteLength >> 2);
    const dest32DataLength = dest32.length;
    const fullSrcDiff = (width + 7) >> 3;
    let white = 0xffffffff;
    let black = IsLittleEndianCached.value ? 0xff000000 : 0x000000ff;
    if (transferMapGray) {
      if (transferMapGray[0] === 0xff && transferMapGray[0xff] === 0) {
        [white, black] = [black, white];
      }
    }
    for (i = 0; i < totalChunks; i++) {
      thisChunkHeight = i < fullChunks ? FULL_CHUNK_HEIGHT : partialChunkHeight;
      destPos = 0;