j.smali
.class public final Lcom/google/android/exoplayer2/extractor/mp4/j;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field public static final a:[I
# direct methods
.method public static constructor <clinit>()V
.registers 1
const/16 v0, 0x1d
new-array v0, v0, [I
fill-array-data v0, :array_a
sput-object v0, Lcom/google/android/exoplayer2/extractor/mp4/j;->a:[I
return-void
:array_a
.array-data 4
0x69736f6d
0x69736f32
0x69736f33
0x69736f34
0x69736f35
0x69736f36
0x69736f39
0x61766331
0x68766331
0x68657631
0x61763031
0x6d703431
0x6d703432
0x33673261
0x33673262
0x33677236
0x33677336
0x33676536
0x33676736
0x4d345620 # 1.89096448E8f
0x4d344120 # 1.89010432E8f
0x66347620
0x6b646469
0x4d345650
0x71742020
0x4d534e56 # 2.215704E8f
0x64627931
0x69736d6c
0x70696666
.end array-data
.end method
.method public static a(Lcom/google/android/exoplayer2/extractor/j;ZZ)Z
.registers 25
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
move-object/from16 v0, p0
.line 1
invoke-interface/range {p0 .. p0}, Lcom/google/android/exoplayer2/extractor/j;->a()J
move-result-wide v1
const-wide/16 v3, -0x1
const-wide/16 v5, 0x1000
cmp-long v7, v1, v3
if-eqz v7, :cond_14
cmp-long v8, v1, v5
if-lez v8, :cond_13
goto :goto_14
:cond_13
move-wide v5, v1
:cond_14
:goto_14
long-to-int v6, v5
.line 2
new-instance v5, Lcom/google/android/exoplayer2/util/y;
const/16 v8, 0x40
invoke-direct {v5, v8}, Lcom/google/android/exoplayer2/util/y;-><init>(I)V
const/4 v8, 0x0
const/4 v9, 0x0
const/4 v10, 0x0
:goto_1f
const/4 v11, 0x1
if-ge v9, v6, :cond_ff
const/16 v12, 0x8
.line 3
invoke-virtual {v5, v12}, Lcom/google/android/exoplayer2/util/y;->B(I)V
.line 4
iget-object v13, v5, Lcom/google/android/exoplayer2/util/y;->a:[B
.line 5
invoke-interface {v0, v13, v8, v12, v11}, Lcom/google/android/exoplayer2/extractor/j;->j([BIIZ)Z
move-result v13
if-nez v13, :cond_31
goto/16 :goto_ff
.line 6
:cond_31
invoke-virtual {v5}, Lcom/google/android/exoplayer2/util/y;->v()J
move-result-wide v13
.line 7
invoke-virtual {v5}, Lcom/google/android/exoplayer2/util/y;->e()I
move-result v15
const-wide/16 v16, 0x1
const/16 v11, 0x10
cmp-long v18, v13, v16
if-nez v18, :cond_4e
.line 8
iget-object v13, v5, Lcom/google/android/exoplayer2/util/y;->a:[B
.line 9
invoke-interface {v0, v13, v12, v12}, Lcom/google/android/exoplayer2/extractor/j;->h([BII)V
.line 10
invoke-virtual {v5, v11}, Lcom/google/android/exoplayer2/util/y;->D(I)V
.line 11
invoke-virtual {v5}, Lcom/google/android/exoplayer2/util/y;->n()J
move-result-wide v13
goto :goto_67
:cond_4e
const-wide/16 v16, 0x0
cmp-long v11, v13, v16
if-nez v11, :cond_65
.line 12
invoke-interface/range {p0 .. p0}, Lcom/google/android/exoplayer2/extractor/j;->a()J
move-result-wide v16
cmp-long v11, v16, v3
if-eqz v11, :cond_65
.line 13
invoke-interface/range {p0 .. p0}, Lcom/google/android/exoplayer2/extractor/j;->l()J
move-result-wide v13
sub-long v16, v16, v13
int-to-long v13, v12
add-long v13, v16, v13
:cond_65
const/16 v11, 0x8
:goto_67
int-to-long v3, v11
cmp-long v18, v13, v3
if-gez v18, :cond_6d
return v8
:cond_6d
add-int/2addr v9, v11
const v11, 0x6d6f6f76
if-ne v15, v11, :cond_81
long-to-int v3, v13
add-int/2addr v6, v3
if-eqz v7, :cond_7e
int-to-long v3, v6
cmp-long v11, v3, v1
if-lez v11, :cond_7e
long-to-int v3, v1
move v6, v3
:cond_7e
const-wide/16 v3, -0x1
goto :goto_1f
:cond_81
const v11, 0x6d6f6f66
if-eq v15, v11, :cond_fb
const v11, 0x6d766578
if-ne v15, v11, :cond_8d
goto/16 :goto_fb
:cond_8d
move-wide/from16 v18, v1
int-to-long v1, v9
add-long/2addr v1, v13
sub-long/2addr v1, v3
move/from16 v20, v9
int-to-long v8, v6
cmp-long v21, v1, v8
if-ltz v21, :cond_9b
goto/16 :goto_ff
:cond_9b
sub-long/2addr v13, v3
long-to-int v1, v13
add-int v9, v20, v1
const v2, 0x66747970
if-ne v15, v2, :cond_ee
if-ge v1, v12, :cond_a8
const/4 v2, 0x0
return v2
:cond_a8
const/4 v2, 0x0
.line 14
invoke-virtual {v5, v1}, Lcom/google/android/exoplayer2/util/y;->B(I)V
.line 15
iget-object v3, v5, Lcom/google/android/exoplayer2/util/y;->a:[B
.line 16
invoke-interface {v0, v3, v2, v1}, Lcom/google/android/exoplayer2/extractor/j;->h([BII)V
.line 17
div-int/lit8 v1, v1, 0x4
const/4 v2, 0x0
:goto_b4
if-ge v2, v1, :cond_ea
const/4 v3, 0x1
if-ne v2, v3, :cond_be
const/4 v4, 0x4
.line 18
invoke-virtual {v5, v4}, Lcom/google/android/exoplayer2/util/y;->F(I)V
goto :goto_e7
.line 19
:cond_be
invoke-virtual {v5}, Lcom/google/android/exoplayer2/util/y;->e()I
move-result v4
ushr-int/lit8 v8, v4, 0x8
const v12, 0x336770
if-ne v8, v12, :cond_ca
goto :goto_dd
:cond_ca
const v8, 0x68656963
if-ne v4, v8, :cond_d2
if-eqz p2, :cond_d2
goto :goto_dd
.line 20
:cond_d2
sget-object v8, Lcom/google/android/exoplayer2/extractor/mp4/j;->a:[I
const/16 v12, 0x1d
const/4 v13, 0x0
:goto_d7
if-ge v13, v12, :cond_e2
aget v14, v8, v13
if-ne v14, v4, :cond_df
:goto_dd
const/4 v4, 0x1
goto :goto_e3
:cond_df
add-int/lit8 v13, v13, 0x1
goto :goto_d7
:cond_e2
const/4 v4, 0x0
:goto_e3
if-eqz v4, :cond_e7
const/4 v10, 0x1
goto :goto_ea
:cond_e7
:goto_e7
add-int/lit8 v2, v2, 0x1
goto :goto_b4
:cond_ea
:goto_ea
const/4 v2, 0x0
if-nez v10, :cond_f4
return v2
:cond_ee
const/4 v2, 0x0
if-eqz v1, :cond_f4
.line 21
invoke-interface {v0, v1}, Lcom/google/android/exoplayer2/extractor/j;->m(I)V
:cond_f4
move-wide/from16 v1, v18
const-wide/16 v3, -0x1
const/4 v8, 0x0
goto/16 :goto_1f
:cond_fb
:goto_fb
const/4 v2, 0x0
const/4 v3, 0x1
const/4 v0, 0x1
goto :goto_102
:cond_ff
:goto_ff
const/4 v2, 0x0
const/4 v3, 0x1
const/4 v0, 0x0
:goto_102
if-eqz v10, :cond_10a
move/from16 v1, p1
if-ne v1, v0, :cond_10a
const/4 v8, 0x1
goto :goto_10b
:cond_10a
const/4 v8, 0x0
:goto_10b
return v8
.end method