c$b.smali

.class Lcom/alibaba/mtl/log/d/c$b;
.super Lcom/alibaba/mtl/log/d/c$a;
.source "Base64.java"


# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
    value = Lcom/alibaba/mtl/log/d/c;
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
    accessFlags = 0x8
    name = "b"
.end annotation


# static fields
.field private static final a:[I

.field private static final b:[I


# instance fields
.field private final c:[I

.field private state:I

.field private value:I


# direct methods
.method static constructor <clinit>()V
    .registers 2

    const/16 v0, 0x100

    .line 1
    new-array v1, v0, [I

    fill-array-data v1, :array_12

    sput-object v1, Lcom/alibaba/mtl/log/d/c$b;->a:[I

    .line 2
    new-array v0, v0, [I

    fill-array-data v0, :array_216

    sput-object v0, Lcom/alibaba/mtl/log/d/c$b;->b:[I

    return-void

    nop

    :array_12
    .array-data 4
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        0x3e
        -0x1
        -0x1
        -0x1
        0x3f
        0x34
        0x35
        0x36
        0x37
        0x38
        0x39
        0x3a
        0x3b
        0x3c
        0x3d
        -0x1
        -0x1
        -0x1
        -0x2
        -0x1
        -0x1
        -0x1
        0x0
        0x1
        0x2
        0x3
        0x4
        0x5
        0x6
        0x7
        0x8
        0x9
        0xa
        0xb
        0xc
        0xd
        0xe
        0xf
        0x10
        0x11
        0x12
        0x13
        0x14
        0x15
        0x16
        0x17
        0x18
        0x19
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        0x1a
        0x1b
        0x1c
        0x1d
        0x1e
        0x1f
        0x20
        0x21
        0x22
        0x23
        0x24
        0x25
        0x26
        0x27
        0x28
        0x29
        0x2a
        0x2b
        0x2c
        0x2d
        0x2e
        0x2f
        0x30
        0x31
        0x32
        0x33
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
    .end array-data

    :array_216
    .array-data 4
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        0x3e
        -0x1
        -0x1
        0x34
        0x35
        0x36
        0x37
        0x38
        0x39
        0x3a
        0x3b
        0x3c
        0x3d
        -0x1
        -0x1
        -0x1
        -0x2
        -0x1
        -0x1
        -0x1
        0x0
        0x1
        0x2
        0x3
        0x4
        0x5
        0x6
        0x7
        0x8
        0x9
        0xa
        0xb
        0xc
        0xd
        0xe
        0xf
        0x10
        0x11
        0x12
        0x13
        0x14
        0x15
        0x16
        0x17
        0x18
        0x19
        -0x1
        -0x1
        -0x1
        -0x1
        0x3f
        -0x1
        0x1a
        0x1b
        0x1c
        0x1d
        0x1e
        0x1f
        0x20
        0x21
        0x22
        0x23
        0x24
        0x25
        0x26
        0x27
        0x28
        0x29
        0x2a
        0x2b
        0x2c
        0x2d
        0x2e
        0x2f
        0x30
        0x31
        0x32
        0x33
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
        -0x1
    .end array-data
.end method

.method public constructor <init>(I[B)V
    .registers 3

    .line 1
    invoke-direct {p0}, Lcom/alibaba/mtl/log/d/c$a;-><init>()V

    .line 2
    iput-object p2, p0, Lcom/alibaba/mtl/log/d/c$a;->output:[B

    and-int/lit8 p1, p1, 0x8

    if-nez p1, :cond_c

    .line 3
    sget-object p1, Lcom/alibaba/mtl/log/d/c$b;->a:[I

    goto :goto_e

    :cond_c
    sget-object p1, Lcom/alibaba/mtl/log/d/c$b;->b:[I

    :goto_e
    iput-object p1, p0, Lcom/alibaba/mtl/log/d/c$b;->c:[I

    const/4 p1, 0x0

    .line 4
    iput p1, p0, Lcom/alibaba/mtl/log/d/c$b;->state:I

    .line 5
    iput p1, p0, Lcom/alibaba/mtl/log/d/c$b;->value:I

    return-void
.end method


# virtual methods
.method public process([BIIZ)Z
    .registers 21

    move-object/from16 v0, p0

    .line 1
    iget v1, v0, Lcom/alibaba/mtl/log/d/c$b;->state:I

    const/4 v2, 0x0

    const/4 v3, 0x6

    if-ne v1, v3, :cond_9

    return v2

    :cond_9
    add-int v4, p3, p2

    .line 2
    iget v5, v0, Lcom/alibaba/mtl/log/d/c$b;->value:I

    .line 3
    iget-object v6, v0, Lcom/alibaba/mtl/log/d/c$a;->output:[B

    .line 4
    iget-object v7, v0, Lcom/alibaba/mtl/log/d/c$b;->c:[I

    move v8, v5

    const/4 v9, 0x0

    move v5, v1

    move/from16 v1, p2

    :goto_16
    const/4 v10, 0x3

    const/4 v11, 0x4

    const/4 v12, 0x2

    const/4 v13, 0x1

    if-ge v1, v4, :cond_f1

    if-nez v5, :cond_63

    :goto_1e
    add-int/lit8 v14, v1, 0x4

    if-gt v14, v4, :cond_5f

    .line 5
    aget-byte v8, p1, v1

    and-int/lit16 v8, v8, 0xff

    aget v8, v7, v8

    shl-int/lit8 v8, v8, 0x12

    add-int/lit8 v15, v1, 0x1

    aget-byte v15, p1, v15

    and-int/lit16 v15, v15, 0xff

    aget v15, v7, v15

    shl-int/lit8 v15, v15, 0xc

    or-int/2addr v8, v15

    add-int/lit8 v15, v1, 0x2

    aget-byte v15, p1, v15

    and-int/lit16 v15, v15, 0xff

    aget v15, v7, v15

    shl-int/2addr v15, v3

    or-int/2addr v8, v15

    add-int/lit8 v15, v1, 0x3

    aget-byte v15, p1, v15

    and-int/lit16 v15, v15, 0xff

    aget v15, v7, v15

    or-int/2addr v8, v15

    if-ltz v8, :cond_5f

    add-int/lit8 v1, v9, 0x2

    int-to-byte v15, v8

    .line 6
    aput-byte v15, v6, v1

    add-int/lit8 v1, v9, 0x1

    shr-int/lit8 v15, v8, 0x8

    int-to-byte v15, v15

    .line 7
    aput-byte v15, v6, v1

    shr-int/lit8 v1, v8, 0x10

    int-to-byte v1, v1

    .line 8
    aput-byte v1, v6, v9

    add-int/lit8 v9, v9, 0x3

    move v1, v14

    goto :goto_1e

    :cond_5f
    if-lt v1, v4, :cond_63

    goto/16 :goto_f1

    :cond_63
    add-int/lit8 v14, v1, 0x1

    .line 9
    aget-byte v1, p1, v1

    and-int/lit16 v1, v1, 0xff

    aget v1, v7, v1

    const/4 v15, 0x5

    const/4 v2, -0x1

    if-eqz v5, :cond_e1

    if-eq v5, v13, :cond_d5

    const/4 v13, -0x2

    if-eq v5, v12, :cond_c1

    if-eq v5, v10, :cond_8e

    if-eq v5, v11, :cond_82

    if-eq v5, v15, :cond_7c

    goto/16 :goto_ed

    :cond_7c
    if-eq v1, v2, :cond_ed

    .line 10
    iput v3, v0, Lcom/alibaba/mtl/log/d/c$b;->state:I

    :goto_80
    const/4 v10, 0x0

    return v10

    :cond_82
    const/4 v10, 0x0

    if-ne v1, v13, :cond_89

    add-int/lit8 v5, v5, 0x1

    goto/16 :goto_ed

    :cond_89
    if-eq v1, v2, :cond_ed

    .line 11
    iput v3, v0, Lcom/alibaba/mtl/log/d/c$b;->state:I

    return v10

    :cond_8e
    if-ltz v1, :cond_a9

    shl-int/lit8 v2, v8, 0x6

    or-int/2addr v1, v2

    add-int/lit8 v2, v9, 0x2

    int-to-byte v5, v1

    .line 12
    aput-byte v5, v6, v2

    add-int/lit8 v2, v9, 0x1

    shr-int/lit8 v5, v1, 0x8

    int-to-byte v5, v5

    .line 13
    aput-byte v5, v6, v2

    shr-int/lit8 v2, v1, 0x10

    int-to-byte v2, v2

    .line 14
    aput-byte v2, v6, v9

    add-int/lit8 v9, v9, 0x3

    move v8, v1

    const/4 v5, 0x0

    goto :goto_ed

    :cond_a9
    if-ne v1, v13, :cond_bb

    add-int/lit8 v1, v9, 0x1

    shr-int/lit8 v2, v8, 0x2

    int-to-byte v2, v2

    .line 15
    aput-byte v2, v6, v1

    shr-int/lit8 v1, v8, 0xa

    int-to-byte v1, v1

    .line 16
    aput-byte v1, v6, v9

    add-int/lit8 v9, v9, 0x2

    const/4 v5, 0x5

    goto :goto_ed

    :cond_bb
    if-eq v1, v2, :cond_ed

    .line 17
    iput v3, v0, Lcom/alibaba/mtl/log/d/c$b;->state:I

    :goto_bf
    const/4 v1, 0x0

    return v1

    :cond_c1
    if-ltz v1, :cond_c4

    goto :goto_d8

    :cond_c4
    if-ne v1, v13, :cond_d0

    add-int/lit8 v1, v9, 0x1

    shr-int/lit8 v2, v8, 0x4

    int-to-byte v2, v2

    .line 18
    aput-byte v2, v6, v9

    move v9, v1

    const/4 v5, 0x4

    goto :goto_ed

    :cond_d0
    if-eq v1, v2, :cond_ed

    .line 19
    iput v3, v0, Lcom/alibaba/mtl/log/d/c$b;->state:I

    goto :goto_80

    :cond_d5
    const/4 v10, 0x0

    if-ltz v1, :cond_dc

    :goto_d8
    shl-int/lit8 v2, v8, 0x6

    or-int/2addr v1, v2

    goto :goto_e4

    :cond_dc
    if-eq v1, v2, :cond_ed

    .line 20
    iput v3, v0, Lcom/alibaba/mtl/log/d/c$b;->state:I

    return v10

    :cond_e1
    const/4 v10, 0x0

    if-ltz v1, :cond_e8

    :goto_e4
    add-int/lit8 v5, v5, 0x1

    move v8, v1

    goto :goto_ed

    :cond_e8
    if-eq v1, v2, :cond_ed

    .line 21
    iput v3, v0, Lcom/alibaba/mtl/log/d/c$b;->state:I

    return v10

    :cond_ed
    :goto_ed
    move v1, v14

    const/4 v2, 0x0

    goto/16 :goto_16

    :cond_f1
    :goto_f1
    if-nez p4, :cond_fa

    .line 22
    iput v5, v0, Lcom/alibaba/mtl/log/d/c$b;->state:I

    .line 23
    iput v8, v0, Lcom/alibaba/mtl/log/d/c$b;->value:I

    .line 24
    iput v9, v0, Lcom/alibaba/mtl/log/d/c$a;->op:I

    return v13

    :cond_fa
    if-eqz v5, :cond_123

    if-eq v5, v13, :cond_120

    if-eq v5, v12, :cond_117

    if-eq v5, v10, :cond_108

    if-eq v5, v11, :cond_105

    goto :goto_123

    .line 25
    :cond_105
    iput v3, v0, Lcom/alibaba/mtl/log/d/c$b;->state:I

    goto :goto_bf

    :cond_108
    add-int/lit8 v1, v9, 0x1

    shr-int/lit8 v2, v8, 0xa

    int-to-byte v2, v2

    .line 26
    aput-byte v2, v6, v9

    add-int/lit8 v9, v1, 0x1

    shr-int/lit8 v2, v8, 0x2

    int-to-byte v2, v2

    .line 27
    aput-byte v2, v6, v1

    goto :goto_123

    :cond_117
    add-int/lit8 v1, v9, 0x1

    shr-int/lit8 v2, v8, 0x4

    int-to-byte v2, v2

    .line 28
    aput-byte v2, v6, v9

    move v9, v1

    goto :goto_123

    .line 29
    :cond_120
    iput v3, v0, Lcom/alibaba/mtl/log/d/c$b;->state:I

    goto :goto_bf

    .line 30
    :cond_123
    :goto_123
    iput v5, v0, Lcom/alibaba/mtl/log/d/c$b;->state:I

    .line 31
    iput v9, v0, Lcom/alibaba/mtl/log/d/c$a;->op:I

    return v13
.end method