@Override
	public void writeSignedInteger(AttributeId attribId, long val) throws IOException {
		writeHeader(0xc0, attribId.id());
		int typeByte;
		long num;
		if (val < 0) {
			typeByte = (TYPECODE_SIGNEDINT_NEGATIVE << TYPECODE_SHIFT);
			num = -val;
		}
		else {
			typeByte = (TYPECODE_SIGNEDINT_POSITIVE << TYPECODE_SHIFT);
			num = val;
		}
		writeInteger(typeByte, num);
	}
A byte-based encoder designed to marshal to the decompiler efficiently
See {@code PackedDecode} for details of the encoding format
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/pcode/PackedEncode.java