public String decode()

in jsign-core/src/main/java/net/jsign/msi/MSIStreamName.java [56:77]


    public String decode() {
        ByteArrayOutputStream out = new ByteArrayOutputStream();

        for (char c : name.toCharArray()) {
            if (c >= 0x3800 && c < 0x4840) {
                if (c < 0x4800) {
                    // 0x3800-0x383F
                    c -= 0x3800;
                    out.write(ALPHABET[(c & MASK)]);
                    out.write(ALPHABET[((c >> 6) & MASK)]);
                } else {
                    // 0x4800-0x483F
                    out.write(ALPHABET[c - 0x4800]);
                }
            } else {
                // other characters are passed through
                out.write(c);
            }
        }

        return new String(out.toByteArray(), Charset.forName("UTF-8"));
    }