private static FilteredBytesAndDisassembly getFilteredBytesAndDisassembly(
			List<String> byteStrings, ByteSequenceLengthFilter lengthFilter,
			FunctionBitPatternInfo fInfo, PatternType type) {
		List<String> disassembly = new ArrayList<String>();
		List<String> filteredByteStrings = new ArrayList<String>();
		for (int i = 0, numStrings = byteStrings.size(); i < numStrings; ++i) {
			String currentByteString = byteStrings.get(i);
			if (lengthFilter != null) {
				String filteredString = lengthFilter.filter(currentByteString);
				//if it is null, the string does not meet the 
				//minimum length requirements of the filter
				if (filteredString != null) {
					filteredByteStrings.add(filteredString);
					disassembly.add("partial bytestring");
				}
			}
			else {
				if (currentByteString != null) {
					filteredByteStrings.add(currentByteString);
					disassembly.add(getCompleteDisassembly(fInfo, type,
						type.equals(PatternType.RETURN) ? i : 0));
				}
			}
		}
		FilteredBytesAndDisassembly fAndD =
			new FilteredBytesAndDisassembly(filteredByteStrings, disassembly);
		return fAndD;
	}
Returns the {@link ByteSequenceRowObjects} of {@link PatternType} in {@code unfilteredInfo} which
pass the context register filter and the length filter
 
@param unfilteredInfo information about function starts/pre-starts/returns
@param type desired {@code PatternType}
@param registerFilter {@ContextRegisterFilter} to apply
@param lengthFilter {@ByteSequenceLengthFilter} to apply
@return filtered row objects
Ghidra/Features/BytePatterns/src/main/java/ghidra/bitpatterns/info/ByteSequenceRowObject.java