CrackMe.apk
Download file
package com.google.android.exoplayer2.source.chunk;
import com.google.android.exoplayer2.C;
import com.google.android.exoplayer2.Format;
import com.google.android.exoplayer2.extractor.DefaultExtractorInput;
import com.google.android.exoplayer2.extractor.TrackOutput;
import com.google.android.exoplayer2.upstream.DataReader;
import com.google.android.exoplayer2.upstream.DataSource;
import com.google.android.exoplayer2.upstream.DataSourceUtil;
import com.google.android.exoplayer2.upstream.DataSpec;
import java.io.IOException;
public final class SingleSampleMediaChunk extends BaseMediaChunk {
private boolean loadCompleted;
private long nextLoadPosition;
private final Format sampleFormat;
private final int trackType;
public void cancelLoad() {
}
/* JADX INFO: super call moved to the top of the method (can break code semantics) */
public SingleSampleMediaChunk(DataSource dataSource, DataSpec dataSpec, Format format, int i, Object obj, long j, long j2, long j3, int i2, Format format2) {
super(dataSource, dataSpec, format, i, obj, j, j2, C.TIME_UNSET, C.TIME_UNSET, j3);
this.trackType = i2;
this.sampleFormat = format2;
}
public boolean isLoadCompleted() {
return this.loadCompleted;
}
/* JADX INFO: finally extract failed */
public void load() throws IOException {
BaseMediaChunkOutput output = getOutput();
output.setSampleOffsetUs(0);
TrackOutput track = output.track(0, this.trackType);
track.format(this.sampleFormat);
try {
long open = this.dataSource.open(this.dataSpec.subrange(this.nextLoadPosition));
if (open != -1) {
open += this.nextLoadPosition;
}
DefaultExtractorInput defaultExtractorInput = new DefaultExtractorInput(this.dataSource, this.nextLoadPosition, open);
for (int i = 0; i != -1; i = track.sampleData((DataReader) defaultExtractorInput, Integer.MAX_VALUE, true)) {
this.nextLoadPosition += (long) i;
}
track.sampleMetadata(this.startTimeUs, 1, (int) this.nextLoadPosition, 0, (TrackOutput.CryptoData) null);
DataSourceUtil.closeQuietly(this.dataSource);
this.loadCompleted = true;
} catch (Throwable th) {
DataSourceUtil.closeQuietly(this.dataSource);
throw th;
}
}
}
Download file