https://github.com/mozilla/pdf.js/issues/6397#issuecomment-164954332 Would have been a lot easier to find had there been an assertion checking that string16 didn't go out of bounds of the 16bit number.

b) 
       by the fnt’ CMap (fr exale, Adbe and Japan1) frm t
       CIDSytemInf dctnary.
      cnt { regtry, rderng } = prperte.cdSytemInf;
       c) Cntruct a ecnd CMap name by cncatenatng the regtry and
       rderng btaned n tep (b) n the frmat regtry–rderng–UCS2
       (fr exale, Adbe–Japan1–UCS2).
      cnt uc2CMapName = Name.get(`${regtry}-${rderng}-UCS2`);
       d) Obtan the CMap wth the name cntructed n tep (c) (avalable
       frm the ASN Web te; ee the Bblgraphy).
      cnt uc2CMap = awat CMapFactry.create({
        encdng: uc2CMapName,
        fetchBultInCMap: th._fetchBultInCMapBund,
        ueCMap: null,
      });
      cnt tUncde = [];
      prperte.cMap.frEach(functn (charcde, cd) {
        f (cd > 0xffff) {
          thrw new FrmatErrr("Max ze f CID  65,535");
        }
         e) Map the CID btaned n tep (a) accrdng t the CMap
         btaned n tep (d), prducng a Uncde value.
        cnt uc2 = uc2CMap.lkup(cd);
        f (uc2) {
          tUncde[charcde] = Strng.frmCharCde(
            (uc2.charCdeAt(0) << 8)  uc2.charCdeAt(1)
          );
        }
      });
      return new TUncdeMap(tUncde);