@Override
	public void parse(BinaryReader reader, TaskMonitor monitor)
			throws IOException, CancelledException {
		monitor.setMessage("Parsing DEX files inside VDEX (oreo)...");
		monitor.setProgress(0);
		monitor.setMaximum(number_of_dex_files_ * 2);
		for (int i = 0; i < number_of_dex_files_; ++i) {
			monitor.checkCancelled();
			monitor.incrementProgress(1);
			long index = reader.getPointerIndex();
			ByteProvider provider = reader.getByteProvider();
			ByteProvider tmpProvider =
				new ByteProviderWrapper(provider, index, provider.length() - index);
			BinaryReader tmpReader = new BinaryReader(tmpProvider, reader.isLittleEndian());
			tmpReader.setPointerIndex(0);
			dexHeaderList.add(DexHeaderFactory.getDexHeader(tmpReader));
			tmpReader.setPointerIndex(0);
			int length = DexHeaderQuickMethods.getDexLength(tmpReader);
			dexHeaderStartsList.add(index);
			reader.setPointerIndex(index + length);
		}
		//stringTable = new VdexStringTable( reader );
	}
<a href="https://android.googlesource.com/platform/art/+/refs/heads/oreo-release/runtime/vdex_file.h">oreo-release/runtime/vdex_file.h</a>
<br>
<a href="https://android.googlesource.com/platform/art/+/refs/heads/oreo-m2-release/runtime/vdex_file.h">oreo-m2-release/runtime/vdex_file.h</a>
Ghidra/Features/FileFormats/src/main/java/ghidra/file/formats/android/vdex/headers/VdexHeader_006.java