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"));
}