p.smali

.class public Lc/c/a/a/p;
.super Lc/e/a/b;
.source "SampleDescriptionBox.java"

# interfaces
.implements Lc/c/a/a/i;


# instance fields
.field private m:I

.field private n:I


# direct methods
.method public constructor <init>()V
    .registers 2

    const-string v0, "stsd"

    .line 1
    invoke-direct {p0, v0}, Lc/e/a/b;-><init>(Ljava/lang/String;)V

    return-void
.end method


# virtual methods
.method public getBox(Ljava/nio/channels/WritableByteChannel;)V
    .registers 5
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    .line 1
    invoke-virtual {p0}, Lc/e/a/b;->g()Ljava/nio/ByteBuffer;

    move-result-object v0

    invoke-interface {p1, v0}, Ljava/nio/channels/WritableByteChannel;->write(Ljava/nio/ByteBuffer;)I

    const/16 v0, 0x8

    .line 2
    invoke-static {v0}, Ljava/nio/ByteBuffer;->allocate(I)Ljava/nio/ByteBuffer;

    move-result-object v0

    .line 3
    iget v1, p0, Lc/c/a/a/p;->m:I

    invoke-static {v0, v1}, Lc/c/a/e;->c(Ljava/nio/ByteBuffer;I)V

    .line 4
    iget v1, p0, Lc/c/a/a/p;->n:I

    invoke-static {v0, v1}, Lc/c/a/e;->b(Ljava/nio/ByteBuffer;I)V

    .line 5
    invoke-virtual {p0}, Lc/e/a/e;->b()Ljava/util/List;

    move-result-object v1

    invoke-interface {v1}, Ljava/util/List;->size()I

    move-result v1

    int-to-long v1, v1

    invoke-static {v0, v1, v2}, Lc/c/a/e;->a(Ljava/nio/ByteBuffer;J)V

    .line 6
    invoke-virtual {v0}, Ljava/nio/ByteBuffer;->rewind()Ljava/nio/Buffer;

    move-result-object v0

    check-cast v0, Ljava/nio/ByteBuffer;

    invoke-interface {p1, v0}, Ljava/nio/channels/WritableByteChannel;->write(Ljava/nio/ByteBuffer;)I

    .line 7
    invoke-virtual {p0, p1}, Lc/e/a/e;->a(Ljava/nio/channels/WritableByteChannel;)V

    return-void
.end method

.method public getSize()J
    .registers 8

    .line 1
    invoke-virtual {p0}, Lc/e/a/e;->d()J

    move-result-wide v0

    const-wide/16 v2, 0x8

    add-long/2addr v0, v2

    .line 2
    iget-boolean v4, p0, Lc/e/a/b;->l:Z

    if-nez v4, :cond_19

    add-long/2addr v2, v0

    const-wide v4, 0x100000000L

    cmp-long v6, v2, v4

    if-ltz v6, :cond_16

    goto :goto_19

    :cond_16
    const/16 v2, 0x8

    goto :goto_1b

    :cond_19
    :goto_19
    const/16 v2, 0x10

    :goto_1b
    int-to-long v2, v2

    add-long/2addr v0, v2

    return-wide v0
.end method