public static LEB128Info readValue(BinaryReader reader, boolean isSigned) throws IOException {
		long offset = reader.getPointerIndex();
		long value = LEB128.read(reader.getInputStream(), isSigned);
		int size = (int) (reader.getPointerIndex() - offset);
		return new LEB128Info(offset, value, size);
	}
Reads a LEB128 value from the BinaryReader and returns a {@link LEB128Info} instance
that contains the value along with size and position metadata.

@param reader {@link BinaryReader} to read bytes from
@param isSigned true if the value is signed
@return a {@link LEB128Info} instance with the read LEB128 value with metadata
@throws IOException if an I/O error occurs or value is outside the range of a java
64 bit int
Ghidra/Features/Base/src/main/java/ghidra/app/util/bin/LEB128Info.java