ag.smali

.class public final Lcom/xiaomi/push/ag;
.super Ljava/lang/Object;


# instance fields
.field private final a:[B

.field private b:I

.field private c:I

.field private d:I

.field private final e:Ljava/io/InputStream;

.field private f:I

.field private g:I

.field private h:I

.field private i:I

.field private j:I

.field private k:I


# direct methods
.method private constructor <init>(Ljava/io/InputStream;)V
    .registers 4

    const/4 v1, 0x0

    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    const v0, 0x7fffffff

    iput v0, p0, Lcom/xiaomi/push/ag;->h:I

    const/16 v0, 0x40

    iput v0, p0, Lcom/xiaomi/push/ag;->j:I

    const/high16 v0, 0x4000000

    iput v0, p0, Lcom/xiaomi/push/ag;->k:I

    const/16 v0, 0x1000

    new-array v0, v0, [B

    iput-object v0, p0, Lcom/xiaomi/push/ag;->a:[B

    iput v1, p0, Lcom/xiaomi/push/ag;->b:I

    iput v1, p0, Lcom/xiaomi/push/ag;->d:I

    iput-object p1, p0, Lcom/xiaomi/push/ag;->e:Ljava/io/InputStream;

    return-void
.end method

.method private constructor <init>([BII)V
    .registers 5

    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    const v0, 0x7fffffff

    iput v0, p0, Lcom/xiaomi/push/ag;->h:I

    const/16 v0, 0x40

    iput v0, p0, Lcom/xiaomi/push/ag;->j:I

    const/high16 v0, 0x4000000

    iput v0, p0, Lcom/xiaomi/push/ag;->k:I

    iput-object p1, p0, Lcom/xiaomi/push/ag;->a:[B

    add-int v0, p2, p3

    iput v0, p0, Lcom/xiaomi/push/ag;->b:I

    iput p2, p0, Lcom/xiaomi/push/ag;->d:I

    const/4 v0, 0x0

    iput-object v0, p0, Lcom/xiaomi/push/ag;->e:Ljava/io/InputStream;

    return-void
.end method

.method public static a(Ljava/io/InputStream;)Lcom/xiaomi/push/ag;
    .registers 2

    new-instance v0, Lcom/xiaomi/push/ag;

    invoke-direct {v0, p0}, Lcom/xiaomi/push/ag;-><init>(Ljava/io/InputStream;)V

    return-object v0
.end method

.method public static a([BII)Lcom/xiaomi/push/ag;
    .registers 4

    new-instance v0, Lcom/xiaomi/push/ag;

    invoke-direct {v0, p0, p1, p2}, Lcom/xiaomi/push/ag;-><init>([BII)V

    return-object v0
.end method

.method private a(Z)Z
    .registers 6

    const/4 v1, -0x1

    const/4 v2, 0x0

    iget v0, p0, Lcom/xiaomi/push/ag;->d:I

    iget v3, p0, Lcom/xiaomi/push/ag;->b:I

    if-ge v0, v3, :cond_10

    new-instance v0, Ljava/lang/IllegalStateException;

    const-string v1, "refillBuffer() called when buffer wasn\'t empty."

    invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V

    throw v0

    :cond_10
    iget v0, p0, Lcom/xiaomi/push/ag;->g:I

    iget v3, p0, Lcom/xiaomi/push/ag;->b:I

    add-int/2addr v0, v3

    iget v3, p0, Lcom/xiaomi/push/ag;->h:I

    if-ne v0, v3, :cond_22

    if-eqz p1, :cond_20

    invoke-static {}, Lcom/xiaomi/push/d;->a()Lcom/xiaomi/push/d;

    move-result-object v0

    throw v0

    :cond_20
    move v0, v2

    :goto_21
    return v0

    :cond_22
    iget v0, p0, Lcom/xiaomi/push/ag;->g:I

    iget v3, p0, Lcom/xiaomi/push/ag;->b:I

    add-int/2addr v0, v3

    iput v0, p0, Lcom/xiaomi/push/ag;->g:I

    iput v2, p0, Lcom/xiaomi/push/ag;->d:I

    iget-object v0, p0, Lcom/xiaomi/push/ag;->e:Ljava/io/InputStream;

    if-nez v0, :cond_5b

    move v0, v1

    :goto_30
    iput v0, p0, Lcom/xiaomi/push/ag;->b:I

    iget v0, p0, Lcom/xiaomi/push/ag;->b:I

    if-eqz v0, :cond_3a

    iget v0, p0, Lcom/xiaomi/push/ag;->b:I

    if-ge v0, v1, :cond_64

    :cond_3a
    new-instance v0, Ljava/lang/IllegalStateException;

    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    const-string v2, "InputStream#read(byte[]) returned invalid result: "

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    iget v2, p0, Lcom/xiaomi/push/ag;->b:I

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v1

    const-string v2, "\nThe InputStream implementation is buggy."

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V

    throw v0

    :cond_5b
    iget-object v0, p0, Lcom/xiaomi/push/ag;->e:Ljava/io/InputStream;

    iget-object v3, p0, Lcom/xiaomi/push/ag;->a:[B

    invoke-virtual {v0, v3}, Ljava/io/InputStream;->read([B)I

    move-result v0

    goto :goto_30

    :cond_64
    iget v0, p0, Lcom/xiaomi/push/ag;->b:I

    if-ne v0, v1, :cond_73

    iput v2, p0, Lcom/xiaomi/push/ag;->b:I

    if-eqz p1, :cond_71

    invoke-static {}, Lcom/xiaomi/push/d;->a()Lcom/xiaomi/push/d;

    move-result-object v0

    throw v0

    :cond_71
    move v0, v2

    goto :goto_21

    :cond_73
    invoke-direct {p0}, Lcom/xiaomi/push/ag;->p()V

    iget v0, p0, Lcom/xiaomi/push/ag;->g:I

    iget v1, p0, Lcom/xiaomi/push/ag;->b:I

    add-int/2addr v0, v1

    iget v1, p0, Lcom/xiaomi/push/ag;->c:I

    add-int/2addr v0, v1

    iget v1, p0, Lcom/xiaomi/push/ag;->k:I

    if-gt v0, v1, :cond_84

    if-gez v0, :cond_89

    :cond_84
    invoke-static {}, Lcom/xiaomi/push/d;->h()Lcom/xiaomi/push/d;

    move-result-object v0

    throw v0

    :cond_89
    const/4 v0, 0x1

    goto :goto_21
.end method

.method private p()V
    .registers 3

    iget v0, p0, Lcom/xiaomi/push/ag;->b:I

    iget v1, p0, Lcom/xiaomi/push/ag;->c:I

    add-int/2addr v0, v1

    iput v0, p0, Lcom/xiaomi/push/ag;->b:I

    iget v0, p0, Lcom/xiaomi/push/ag;->g:I

    iget v1, p0, Lcom/xiaomi/push/ag;->b:I

    add-int/2addr v0, v1

    iget v1, p0, Lcom/xiaomi/push/ag;->h:I

    if-le v0, v1, :cond_1d

    iget v1, p0, Lcom/xiaomi/push/ag;->h:I

    sub-int/2addr v0, v1

    iput v0, p0, Lcom/xiaomi/push/ag;->c:I

    iget v0, p0, Lcom/xiaomi/push/ag;->b:I

    iget v1, p0, Lcom/xiaomi/push/ag;->c:I

    sub-int/2addr v0, v1

    iput v0, p0, Lcom/xiaomi/push/ag;->b:I

    :goto_1c
    return-void

    :cond_1d
    const/4 v0, 0x0

    iput v0, p0, Lcom/xiaomi/push/ag;->c:I

    goto :goto_1c
.end method


# virtual methods
.method public a()I
    .registers 3

    const/4 v0, 0x0

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->n()Z

    move-result v1

    if-eqz v1, :cond_a

    iput v0, p0, Lcom/xiaomi/push/ag;->f:I

    :goto_9
    return v0

    :cond_a
    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->j()I

    move-result v0

    iput v0, p0, Lcom/xiaomi/push/ag;->f:I

    iget v0, p0, Lcom/xiaomi/push/ag;->f:I

    if-nez v0, :cond_19

    invoke-static {}, Lcom/xiaomi/push/d;->d()Lcom/xiaomi/push/d;

    move-result-object v0

    throw v0

    :cond_19
    iget v0, p0, Lcom/xiaomi/push/ag;->f:I

    goto :goto_9
.end method

.method public a(I)V
    .registers 3

    iget v0, p0, Lcom/xiaomi/push/ag;->f:I

    if-eq v0, p1, :cond_9

    invoke-static {}, Lcom/xiaomi/push/d;->e()Lcom/xiaomi/push/d;

    move-result-object v0

    throw v0

    :cond_9
    return-void
.end method

.method public a(Lcom/xiaomi/push/dh;)V
    .registers 5

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->j()I

    move-result v0

    iget v1, p0, Lcom/xiaomi/push/ag;->i:I

    iget v2, p0, Lcom/xiaomi/push/ag;->j:I

    if-lt v1, v2, :cond_f

    invoke-static {}, Lcom/xiaomi/push/d;->g()Lcom/xiaomi/push/d;

    move-result-object v0

    throw v0

    :cond_f
    invoke-virtual {p0, v0}, Lcom/xiaomi/push/ag;->c(I)I

    move-result v0

    iget v1, p0, Lcom/xiaomi/push/ag;->i:I

    add-int/lit8 v1, v1, 0x1

    iput v1, p0, Lcom/xiaomi/push/ag;->i:I

    invoke-virtual {p1, p0}, Lcom/xiaomi/push/dh;->a(Lcom/xiaomi/push/ag;)Lcom/xiaomi/push/dh;

    const/4 v1, 0x0

    invoke-virtual {p0, v1}, Lcom/xiaomi/push/ag;->a(I)V

    iget v1, p0, Lcom/xiaomi/push/ag;->i:I

    add-int/lit8 v1, v1, -0x1

    iput v1, p0, Lcom/xiaomi/push/ag;->i:I

    invoke-virtual {p0, v0}, Lcom/xiaomi/push/ag;->d(I)V

    return-void
.end method

.method public b()V
    .registers 2

    :cond_0
    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->a()I

    move-result v0

    if-eqz v0, :cond_c

    invoke-virtual {p0, v0}, Lcom/xiaomi/push/ag;->b(I)Z

    move-result v0

    if-nez v0, :cond_0

    :cond_c
    return-void
.end method

.method public b(I)Z
    .registers 5

    const/4 v0, 0x1

    invoke-static {p1}, Lcom/xiaomi/push/ei;->a(I)I

    move-result v1

    packed-switch v1, :pswitch_data_34

    invoke-static {}, Lcom/xiaomi/push/d;->f()Lcom/xiaomi/push/d;

    move-result-object v0

    throw v0

    :pswitch_d
    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->e()I

    :goto_10
    return v0

    :pswitch_11
    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->m()J

    goto :goto_10

    :pswitch_15
    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->j()I

    move-result v1

    invoke-virtual {p0, v1}, Lcom/xiaomi/push/ag;->f(I)V

    goto :goto_10

    :pswitch_1d
    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->b()V

    invoke-static {p1}, Lcom/xiaomi/push/ei;->b(I)I

    move-result v1

    const/4 v2, 0x4

    invoke-static {v1, v2}, Lcom/xiaomi/push/ei;->a(II)I

    move-result v1

    invoke-virtual {p0, v1}, Lcom/xiaomi/push/ag;->a(I)V

    goto :goto_10

    :pswitch_2d
    const/4 v0, 0x0

    goto :goto_10

    :pswitch_2f
    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->l()I

    goto :goto_10

    nop

    :pswitch_data_34
    .packed-switch 0x0
        :pswitch_d
        :pswitch_11
        :pswitch_15
        :pswitch_1d
        :pswitch_2d
        :pswitch_2f
    .end packed-switch
.end method

.method public c(I)I
    .registers 4

    if-gez p1, :cond_7

    invoke-static {}, Lcom/xiaomi/push/d;->b()Lcom/xiaomi/push/d;

    move-result-object v0

    throw v0

    :cond_7
    iget v0, p0, Lcom/xiaomi/push/ag;->g:I

    iget v1, p0, Lcom/xiaomi/push/ag;->d:I

    add-int/2addr v0, v1

    add-int/2addr v0, p1

    iget v1, p0, Lcom/xiaomi/push/ag;->h:I

    if-le v0, v1, :cond_16

    invoke-static {}, Lcom/xiaomi/push/d;->a()Lcom/xiaomi/push/d;

    move-result-object v0

    throw v0

    :cond_16
    iput v0, p0, Lcom/xiaomi/push/ag;->h:I

    invoke-direct {p0}, Lcom/xiaomi/push/ag;->p()V

    return v1
.end method

.method public c()J
    .registers 3

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->k()J

    move-result-wide v0

    return-wide v0
.end method

.method public d()J
    .registers 3

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->k()J

    move-result-wide v0

    return-wide v0
.end method

.method public d(I)V
    .registers 2

    iput p1, p0, Lcom/xiaomi/push/ag;->h:I

    invoke-direct {p0}, Lcom/xiaomi/push/ag;->p()V

    return-void
.end method

.method public e()I
    .registers 2

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->j()I

    move-result v0

    return v0
.end method

.method public e(I)[B
    .registers 13

    const/16 v10, 0x1000

    const/4 v5, 0x1

    const/4 v3, -0x1

    const/4 v1, 0x0

    if-gez p1, :cond_c

    invoke-static {}, Lcom/xiaomi/push/d;->b()Lcom/xiaomi/push/d;

    move-result-object v0

    throw v0

    :cond_c
    iget v0, p0, Lcom/xiaomi/push/ag;->g:I

    iget v2, p0, Lcom/xiaomi/push/ag;->d:I

    add-int/2addr v0, v2

    add-int/2addr v0, p1

    iget v2, p0, Lcom/xiaomi/push/ag;->h:I

    if-le v0, v2, :cond_26

    iget v0, p0, Lcom/xiaomi/push/ag;->h:I

    iget v1, p0, Lcom/xiaomi/push/ag;->g:I

    sub-int/2addr v0, v1

    iget v1, p0, Lcom/xiaomi/push/ag;->d:I

    sub-int/2addr v0, v1

    invoke-virtual {p0, v0}, Lcom/xiaomi/push/ag;->f(I)V

    invoke-static {}, Lcom/xiaomi/push/d;->a()Lcom/xiaomi/push/d;

    move-result-object v0

    throw v0

    :cond_26
    iget v0, p0, Lcom/xiaomi/push/ag;->b:I

    iget v2, p0, Lcom/xiaomi/push/ag;->d:I

    sub-int/2addr v0, v2

    if-gt p1, v0, :cond_3c

    new-array v0, p1, [B

    iget-object v2, p0, Lcom/xiaomi/push/ag;->a:[B

    iget v3, p0, Lcom/xiaomi/push/ag;->d:I

    invoke-static {v2, v3, v0, v1, p1}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    iget v1, p0, Lcom/xiaomi/push/ag;->d:I

    add-int/2addr v1, p1

    iput v1, p0, Lcom/xiaomi/push/ag;->d:I

    :goto_3b
    return-object v0

    :cond_3c
    if-ge p1, v10, :cond_78

    new-array v2, p1, [B

    iget v0, p0, Lcom/xiaomi/push/ag;->b:I

    iget v3, p0, Lcom/xiaomi/push/ag;->d:I

    sub-int/2addr v0, v3

    iget-object v3, p0, Lcom/xiaomi/push/ag;->a:[B

    iget v4, p0, Lcom/xiaomi/push/ag;->d:I

    invoke-static {v3, v4, v2, v1, v0}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    iget v3, p0, Lcom/xiaomi/push/ag;->b:I

    iput v3, p0, Lcom/xiaomi/push/ag;->d:I

    invoke-direct {p0, v5}, Lcom/xiaomi/push/ag;->a(Z)Z

    :goto_53
    sub-int v3, p1, v0

    iget v4, p0, Lcom/xiaomi/push/ag;->b:I

    if-le v3, v4, :cond_6b

    iget-object v3, p0, Lcom/xiaomi/push/ag;->a:[B

    iget v4, p0, Lcom/xiaomi/push/ag;->b:I

    invoke-static {v3, v1, v2, v0, v4}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    iget v3, p0, Lcom/xiaomi/push/ag;->b:I

    add-int/2addr v0, v3

    iget v3, p0, Lcom/xiaomi/push/ag;->b:I

    iput v3, p0, Lcom/xiaomi/push/ag;->d:I

    invoke-direct {p0, v5}, Lcom/xiaomi/push/ag;->a(Z)Z

    goto :goto_53

    :cond_6b
    iget-object v3, p0, Lcom/xiaomi/push/ag;->a:[B

    sub-int v4, p1, v0

    invoke-static {v3, v1, v2, v0, v4}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    sub-int v0, p1, v0

    iput v0, p0, Lcom/xiaomi/push/ag;->d:I

    move-object v0, v2

    goto :goto_3b

    :cond_78
    iget v5, p0, Lcom/xiaomi/push/ag;->d:I

    iget v6, p0, Lcom/xiaomi/push/ag;->b:I

    iget v0, p0, Lcom/xiaomi/push/ag;->g:I

    iget v2, p0, Lcom/xiaomi/push/ag;->b:I

    add-int/2addr v0, v2

    iput v0, p0, Lcom/xiaomi/push/ag;->g:I

    iput v1, p0, Lcom/xiaomi/push/ag;->d:I

    iput v1, p0, Lcom/xiaomi/push/ag;->b:I

    sub-int v0, v6, v5

    sub-int v0, p1, v0

    new-instance v7, Ljava/util/Vector;

    invoke-direct {v7}, Ljava/util/Vector;-><init>()V

    move v4, v0

    :goto_91
    if-lez v4, :cond_c1

    invoke-static {v4, v10}, Ljava/lang/Math;->min(II)I

    move-result v0

    new-array v8, v0, [B

    move v0, v1

    :goto_9a
    array-length v2, v8

    if-ge v0, v2, :cond_b9

    iget-object v2, p0, Lcom/xiaomi/push/ag;->e:Ljava/io/InputStream;

    if-nez v2, :cond_a9

    move v2, v3

    :goto_a2
    if-ne v2, v3, :cond_b2

    invoke-static {}, Lcom/xiaomi/push/d;->a()Lcom/xiaomi/push/d;

    move-result-object v0

    throw v0

    :cond_a9
    iget-object v2, p0, Lcom/xiaomi/push/ag;->e:Ljava/io/InputStream;

    array-length v9, v8

    sub-int/2addr v9, v0

    invoke-virtual {v2, v8, v0, v9}, Ljava/io/InputStream;->read([BII)I

    move-result v2

    goto :goto_a2

    :cond_b2
    iget v9, p0, Lcom/xiaomi/push/ag;->g:I

    add-int/2addr v9, v2

    iput v9, p0, Lcom/xiaomi/push/ag;->g:I

    add-int/2addr v0, v2

    goto :goto_9a

    :cond_b9
    array-length v0, v8

    sub-int v0, v4, v0

    invoke-virtual {v7, v8}, Ljava/util/Vector;->addElement(Ljava/lang/Object;)V

    move v4, v0

    goto :goto_91

    :cond_c1
    new-array v4, p1, [B

    sub-int v0, v6, v5

    iget-object v2, p0, Lcom/xiaomi/push/ag;->a:[B

    invoke-static {v2, v5, v4, v1, v0}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    move v2, v1

    move v3, v0

    :goto_cc
    invoke-virtual {v7}, Ljava/util/Vector;->size()I

    move-result v0

    if-ge v2, v0, :cond_e4

    invoke-virtual {v7, v2}, Ljava/util/Vector;->elementAt(I)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, [B

    check-cast v0, [B

    array-length v5, v0

    invoke-static {v0, v1, v4, v3, v5}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    array-length v0, v0

    add-int/2addr v3, v0

    add-int/lit8 v0, v2, 0x1

    move v2, v0

    goto :goto_cc

    :cond_e4
    move-object v0, v4

    goto/16 :goto_3b
.end method

.method public f(I)V
    .registers 6

    const/4 v3, 0x0

    if-gez p1, :cond_8

    invoke-static {}, Lcom/xiaomi/push/d;->b()Lcom/xiaomi/push/d;

    move-result-object v0

    throw v0

    :cond_8
    iget v0, p0, Lcom/xiaomi/push/ag;->g:I

    iget v1, p0, Lcom/xiaomi/push/ag;->d:I

    add-int/2addr v0, v1

    add-int/2addr v0, p1

    iget v1, p0, Lcom/xiaomi/push/ag;->h:I

    if-le v0, v1, :cond_22

    iget v0, p0, Lcom/xiaomi/push/ag;->h:I

    iget v1, p0, Lcom/xiaomi/push/ag;->g:I

    sub-int/2addr v0, v1

    iget v1, p0, Lcom/xiaomi/push/ag;->d:I

    sub-int/2addr v0, v1

    invoke-virtual {p0, v0}, Lcom/xiaomi/push/ag;->f(I)V

    invoke-static {}, Lcom/xiaomi/push/d;->a()Lcom/xiaomi/push/d;

    move-result-object v0

    throw v0

    :cond_22
    iget v0, p0, Lcom/xiaomi/push/ag;->b:I

    iget v1, p0, Lcom/xiaomi/push/ag;->d:I

    sub-int/2addr v0, v1

    if-gt p1, v0, :cond_2f

    iget v0, p0, Lcom/xiaomi/push/ag;->d:I

    add-int/2addr v0, p1

    iput v0, p0, Lcom/xiaomi/push/ag;->d:I

    :cond_2e
    return-void

    :cond_2f
    iget v0, p0, Lcom/xiaomi/push/ag;->b:I

    iget v1, p0, Lcom/xiaomi/push/ag;->d:I

    sub-int/2addr v0, v1

    iget v1, p0, Lcom/xiaomi/push/ag;->g:I

    iget v2, p0, Lcom/xiaomi/push/ag;->b:I

    add-int/2addr v1, v2

    iput v1, p0, Lcom/xiaomi/push/ag;->g:I

    iput v3, p0, Lcom/xiaomi/push/ag;->d:I

    iput v3, p0, Lcom/xiaomi/push/ag;->b:I

    move v1, v0

    :goto_40
    if-ge v1, p1, :cond_2e

    iget-object v0, p0, Lcom/xiaomi/push/ag;->e:Ljava/io/InputStream;

    if-nez v0, :cond_4e

    const/4 v0, -0x1

    :goto_47
    if-gtz v0, :cond_59

    invoke-static {}, Lcom/xiaomi/push/d;->a()Lcom/xiaomi/push/d;

    move-result-object v0

    throw v0

    :cond_4e
    iget-object v0, p0, Lcom/xiaomi/push/ag;->e:Ljava/io/InputStream;

    sub-int v2, p1, v1

    int-to-long v2, v2

    invoke-virtual {v0, v2, v3}, Ljava/io/InputStream;->skip(J)J

    move-result-wide v2

    long-to-int v0, v2

    goto :goto_47

    :cond_59
    add-int/2addr v1, v0

    iget v2, p0, Lcom/xiaomi/push/ag;->g:I

    add-int/2addr v0, v2

    iput v0, p0, Lcom/xiaomi/push/ag;->g:I

    goto :goto_40
.end method

.method public f()Z
    .registers 2

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->j()I

    move-result v0

    if-eqz v0, :cond_8

    const/4 v0, 0x1

    :goto_7
    return v0

    :cond_8
    const/4 v0, 0x0

    goto :goto_7
.end method

.method public g()Ljava/lang/String;
    .registers 6

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->j()I

    move-result v1

    iget v0, p0, Lcom/xiaomi/push/ag;->b:I

    iget v2, p0, Lcom/xiaomi/push/ag;->d:I

    sub-int/2addr v0, v2

    if-gt v1, v0, :cond_1e

    if-lez v1, :cond_1e

    new-instance v0, Ljava/lang/String;

    iget-object v2, p0, Lcom/xiaomi/push/ag;->a:[B

    iget v3, p0, Lcom/xiaomi/push/ag;->d:I

    const-string v4, "UTF-8"

    invoke-direct {v0, v2, v3, v1, v4}, Ljava/lang/String;-><init>([BIILjava/lang/String;)V

    iget v2, p0, Lcom/xiaomi/push/ag;->d:I

    add-int/2addr v1, v2

    iput v1, p0, Lcom/xiaomi/push/ag;->d:I

    :goto_1d
    return-object v0

    :cond_1e
    new-instance v0, Ljava/lang/String;

    invoke-virtual {p0, v1}, Lcom/xiaomi/push/ag;->e(I)[B

    move-result-object v1

    const-string v2, "UTF-8"

    invoke-direct {v0, v1, v2}, Ljava/lang/String;-><init>([BLjava/lang/String;)V

    goto :goto_1d
.end method

.method public h()Lcom/xiaomi/push/a;
    .registers 4

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->j()I

    move-result v1

    iget v0, p0, Lcom/xiaomi/push/ag;->b:I

    iget v2, p0, Lcom/xiaomi/push/ag;->d:I

    sub-int/2addr v0, v2

    if-gt v1, v0, :cond_1b

    if-lez v1, :cond_1b

    iget-object v0, p0, Lcom/xiaomi/push/ag;->a:[B

    iget v2, p0, Lcom/xiaomi/push/ag;->d:I

    invoke-static {v0, v2, v1}, Lcom/xiaomi/push/a;->a([BII)Lcom/xiaomi/push/a;

    move-result-object v0

    iget v2, p0, Lcom/xiaomi/push/ag;->d:I

    add-int/2addr v1, v2

    iput v1, p0, Lcom/xiaomi/push/ag;->d:I

    :goto_1a
    return-object v0

    :cond_1b
    invoke-virtual {p0, v1}, Lcom/xiaomi/push/ag;->e(I)[B

    move-result-object v0

    invoke-static {v0}, Lcom/xiaomi/push/a;->a([B)Lcom/xiaomi/push/a;

    move-result-object v0

    goto :goto_1a
.end method

.method public i()I
    .registers 2

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->j()I

    move-result v0

    return v0
.end method

.method public j()I
    .registers 4

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v0

    if-ltz v0, :cond_7

    :cond_6
    :goto_6
    return v0

    :cond_7
    and-int/lit8 v0, v0, 0x7f

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v1

    if-ltz v1, :cond_13

    shl-int/lit8 v1, v1, 0x7

    or-int/2addr v0, v1

    goto :goto_6

    :cond_13
    and-int/lit8 v1, v1, 0x7f

    shl-int/lit8 v1, v1, 0x7

    or-int/2addr v0, v1

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v1

    if-ltz v1, :cond_22

    shl-int/lit8 v1, v1, 0xe

    or-int/2addr v0, v1

    goto :goto_6

    :cond_22
    and-int/lit8 v1, v1, 0x7f

    shl-int/lit8 v1, v1, 0xe

    or-int/2addr v0, v1

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v1

    if-ltz v1, :cond_31

    shl-int/lit8 v1, v1, 0x15

    or-int/2addr v0, v1

    goto :goto_6

    :cond_31
    and-int/lit8 v1, v1, 0x7f

    shl-int/lit8 v1, v1, 0x15

    or-int/2addr v0, v1

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v1

    shl-int/lit8 v2, v1, 0x1c

    or-int/2addr v0, v2

    if-gez v1, :cond_6

    const/4 v1, 0x0

    :goto_40
    const/4 v2, 0x5

    if-ge v1, v2, :cond_4c

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v2

    if-gez v2, :cond_6

    add-int/lit8 v1, v1, 0x1

    goto :goto_40

    :cond_4c
    invoke-static {}, Lcom/xiaomi/push/d;->c()Lcom/xiaomi/push/d;

    move-result-object v0

    throw v0
.end method

.method public k()J
    .registers 7

    const/4 v2, 0x0

    const-wide/16 v0, 0x0

    :goto_3
    const/16 v3, 0x40

    if-ge v2, v3, :cond_18

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v3

    and-int/lit8 v4, v3, 0x7f

    int-to-long v4, v4

    shl-long/2addr v4, v2

    or-long/2addr v0, v4

    and-int/lit16 v3, v3, 0x80

    if-nez v3, :cond_15

    return-wide v0

    :cond_15
    add-int/lit8 v2, v2, 0x7

    goto :goto_3

    :cond_18
    invoke-static {}, Lcom/xiaomi/push/d;->c()Lcom/xiaomi/push/d;

    move-result-object v0

    throw v0
.end method

.method public l()I
    .registers 5

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v0

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v1

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v2

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v3

    and-int/lit16 v0, v0, 0xff

    and-int/lit16 v1, v1, 0xff

    shl-int/lit8 v1, v1, 0x8

    or-int/2addr v0, v1

    and-int/lit16 v1, v2, 0xff

    shl-int/lit8 v1, v1, 0x10

    or-int/2addr v0, v1

    and-int/lit16 v1, v3, 0xff

    shl-int/lit8 v1, v1, 0x18

    or-int/2addr v0, v1

    return v0
.end method

.method public m()J
    .registers 15

    const-wide/16 v12, 0xff

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v0

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v1

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v2

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v3

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v4

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v5

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v6

    invoke-virtual {p0}, Lcom/xiaomi/push/ag;->o()B

    move-result v7

    int-to-long v8, v0

    and-long/2addr v8, v12

    int-to-long v0, v1

    and-long/2addr v0, v12

    const/16 v10, 0x8

    shl-long/2addr v0, v10

    or-long/2addr v0, v8

    int-to-long v8, v2

    and-long/2addr v8, v12

    const/16 v2, 0x10

    shl-long/2addr v8, v2

    or-long/2addr v0, v8

    int-to-long v2, v3

    and-long/2addr v2, v12

    const/16 v8, 0x18

    shl-long/2addr v2, v8

    or-long/2addr v0, v2

    int-to-long v2, v4

    and-long/2addr v2, v12

    const/16 v4, 0x20

    shl-long/2addr v2, v4

    or-long/2addr v0, v2

    int-to-long v2, v5

    and-long/2addr v2, v12

    const/16 v4, 0x28

    shl-long/2addr v2, v4

    or-long/2addr v0, v2

    int-to-long v2, v6

    and-long/2addr v2, v12

    const/16 v4, 0x30

    shl-long/2addr v2, v4

    or-long/2addr v0, v2

    int-to-long v2, v7

    and-long/2addr v2, v12

    const/16 v4, 0x38

    shl-long/2addr v2, v4

    or-long/2addr v0, v2

    return-wide v0
.end method

.method public n()Z
    .registers 4

    const/4 v0, 0x0

    iget v1, p0, Lcom/xiaomi/push/ag;->d:I

    iget v2, p0, Lcom/xiaomi/push/ag;->b:I

    if-ne v1, v2, :cond_e

    invoke-direct {p0, v0}, Lcom/xiaomi/push/ag;->a(Z)Z

    move-result v1

    if-nez v1, :cond_e

    const/4 v0, 0x1

    :cond_e
    return v0
.end method

.method public o()B
    .registers 4

    iget v0, p0, Lcom/xiaomi/push/ag;->d:I

    iget v1, p0, Lcom/xiaomi/push/ag;->b:I

    if-ne v0, v1, :cond_a

    const/4 v0, 0x1

    invoke-direct {p0, v0}, Lcom/xiaomi/push/ag;->a(Z)Z

    :cond_a
    iget-object v0, p0, Lcom/xiaomi/push/ag;->a:[B

    iget v1, p0, Lcom/xiaomi/push/ag;->d:I

    add-int/lit8 v2, v1, 0x1

    iput v2, p0, Lcom/xiaomi/push/ag;->d:I

    aget-byte v0, v0, v1

    return v0
.end method