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