[`http://www.ei.ruhr-uni-bochum.de/media/crypto/veroeffentlichungen/2010/08/08/baileypaaroefjc.pdf`](http://www.ei.ruhr-uni-bochum.de/media/crypto/veroeffentlichungen/2010/08/08/baileypaaroefjc.pdf) is severely mis-rendered by the version of pdf.js bundled with Firefox 38.0.5:

![screen shot of misrendered PDF using pdf.js](https://cloud.githubusercontent.com/assets/325899/8235479/3876046e-15b0-11e5-97c0-ecbb5d9f8ee8.png)

You can see that practically every word has some blanks where letters should be.

Note that Adobe Reader (11.0.09) does a _better_ job of rendering but still has many missing characters, and throws up an error message about a font that it "cannot extract", so the PDF itself may be ill-formed (in which case pdf.js should give an error message too).

![screen shot of the same PDF with Adobe Reader 11.0.09](https://cloud.githubusercontent.com/assets/325899/8235615/da33e866-15b0-11e5-96a2-8b9f15c6f74d.png)

const cffIndex = new CFFIndex();
      const bytes = this.bytes;
      const count = (bytes[pos++] << 8) | bytes[pos++];
      const offsets = [];
      let end = pos;
      let i, ii;
      if (count !== 0) {
        const offsetSize = bytes[pos++];
        
        const startPos = pos + (count + 1) * offsetSize - 1;
        for (i = 0, ii = count + 1; i < ii; ++i) {
          let offset = 0;
          for (let j = 0; j < offsetSize; ++j) {
            offset <<= 8;
            offset += bytes[pos++];
          }
          offsets.push(startPos + offset);
        }
        end = offsets[count];
      }
      for (i = 0, ii = offsets.length - 1; i < ii; ++i) {
        const offsetStart = offsets[i];
        const offsetEnd = offsets[i + 1];
        cffIndex.add(bytes.subarray(offsetStart, offsetEnd));
      }
      return { obj: cffIndex, endPos: end };
    }
    parseNameIndex(index) {