Base64$Encoder.smali

.class Lcom/alivc/rtc/device/utils/Base64$Encoder;
.super Lcom/alivc/rtc/device/utils/Base64$Coder;
.source "Base64.java"


# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
    value = Lcom/alivc/rtc/device/utils/Base64;
.end annotation

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


# static fields
.field static final synthetic $assertionsDisabled:Z = false

.field private static final ENCODE:[B

.field private static final ENCODE_WEBSAFE:[B

.field public static final LINE_GROUPS:I = 0x13


# instance fields
.field private final alphabet:[B

.field private count:I

.field public final do_cr:Z

.field public final do_newline:Z

.field public final do_padding:Z

.field private final tail:[B

.field tailLen:I


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

    .line 92
    const-class v0, Lcom/alivc/rtc/device/utils/Base64;

    .line 94
    const/16 v0, 0x40

    new-array v1, v0, [B

    fill-array-data v1, :array_14

    sput-object v1, Lcom/alivc/rtc/device/utils/Base64$Encoder;->ENCODE:[B

    .line 95
    new-array v0, v0, [B

    fill-array-data v0, :array_38

    sput-object v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->ENCODE_WEBSAFE:[B

    return-void

    nop

    :array_14
    .array-data 1
        0x41t
        0x42t
        0x43t
        0x44t
        0x45t
        0x46t
        0x47t
        0x48t
        0x49t
        0x4at
        0x4bt
        0x4ct
        0x4dt
        0x4et
        0x4ft
        0x50t
        0x51t
        0x52t
        0x53t
        0x54t
        0x55t
        0x56t
        0x57t
        0x58t
        0x59t
        0x5at
        0x61t
        0x62t
        0x63t
        0x64t
        0x65t
        0x66t
        0x67t
        0x68t
        0x69t
        0x6at
        0x6bt
        0x6ct
        0x6dt
        0x6et
        0x6ft
        0x70t
        0x71t
        0x72t
        0x73t
        0x74t
        0x75t
        0x76t
        0x77t
        0x78t
        0x79t
        0x7at
        0x30t
        0x31t
        0x32t
        0x33t
        0x34t
        0x35t
        0x36t
        0x37t
        0x38t
        0x39t
        0x2bt
        0x2ft
    .end array-data

    :array_38
    .array-data 1
        0x41t
        0x42t
        0x43t
        0x44t
        0x45t
        0x46t
        0x47t
        0x48t
        0x49t
        0x4at
        0x4bt
        0x4ct
        0x4dt
        0x4et
        0x4ft
        0x50t
        0x51t
        0x52t
        0x53t
        0x54t
        0x55t
        0x56t
        0x57t
        0x58t
        0x59t
        0x5at
        0x61t
        0x62t
        0x63t
        0x64t
        0x65t
        0x66t
        0x67t
        0x68t
        0x69t
        0x6at
        0x6bt
        0x6ct
        0x6dt
        0x6et
        0x6ft
        0x70t
        0x71t
        0x72t
        0x73t
        0x74t
        0x75t
        0x76t
        0x77t
        0x78t
        0x79t
        0x7at
        0x30t
        0x31t
        0x32t
        0x33t
        0x34t
        0x35t
        0x36t
        0x37t
        0x38t
        0x39t
        0x2dt
        0x5ft
    .end array-data
.end method

.method public constructor <init>(I[B)V
    .registers 6
    .param p1, "flags"    # I
    .param p2, "output"    # [B

    .line 104
    invoke-direct {p0}, Lcom/alivc/rtc/device/utils/Base64$Coder;-><init>()V

    .line 105
    iput-object p2, p0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->output:[B

    .line 106
    and-int/lit8 v0, p1, 0x1

    const/4 v1, 0x0

    const/4 v2, 0x1

    if-nez v0, :cond_d

    const/4 v0, 0x1

    goto :goto_e

    :cond_d
    const/4 v0, 0x0

    :goto_e
    iput-boolean v0, p0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->do_padding:Z

    .line 107
    and-int/lit8 v0, p1, 0x2

    if-nez v0, :cond_16

    const/4 v0, 0x1

    goto :goto_17

    :cond_16
    const/4 v0, 0x0

    :goto_17
    iput-boolean v0, p0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->do_newline:Z

    .line 108
    and-int/lit8 v0, p1, 0x4

    if-eqz v0, :cond_1e

    goto :goto_1f

    :cond_1e
    const/4 v2, 0x0

    :goto_1f
    iput-boolean v2, p0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->do_cr:Z

    .line 109
    and-int/lit8 v0, p1, 0x8

    if-nez v0, :cond_28

    sget-object v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->ENCODE:[B

    goto :goto_2a

    :cond_28
    sget-object v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->ENCODE_WEBSAFE:[B

    :goto_2a
    iput-object v0, p0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->alphabet:[B

    .line 110
    const/4 v0, 0x2

    new-array v0, v0, [B

    iput-object v0, p0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tail:[B

    .line 111
    iput v1, p0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tailLen:I

    .line 112
    iget-boolean v0, p0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->do_newline:Z

    if-eqz v0, :cond_3a

    const/16 v0, 0x13

    goto :goto_3b

    :cond_3a
    const/4 v0, -0x1

    :goto_3b
    iput v0, p0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->count:I

    .line 113
    return-void
.end method


# virtual methods
.method public maxOutputSize(I)I
    .registers 3
    .param p1, "len"    # I

    .line 116
    mul-int/lit8 v0, p1, 0x8

    div-int/lit8 v0, v0, 0x5

    add-int/lit8 v0, v0, 0xa

    return v0
.end method

.method public process([BIIZ)Z
    .registers 23
    .param p1, "input"    # [B
    .param p2, "offset"    # I
    .param p3, "len"    # I
    .param p4, "finish"    # Z

    .line 120
    move-object/from16 v0, p0

    iget-object v1, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->alphabet:[B

    .line 121
    .local v1, "alphabet":[B
    iget-object v2, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->output:[B

    .line 122
    .local v2, "output":[B
    const/4 v3, 0x0

    .line 123
    .local v3, "op":I
    iget v4, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->count:I

    .line 124
    .local v4, "count":I
    move/from16 v5, p2

    .line 125
    .local v5, "p":I
    add-int v6, p3, p2

    .line 126
    .end local p3    # "len":I
    .local v6, "len":I
    const/4 v7, -0x1

    .line 128
    .local v7, "v":I
    iget v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tailLen:I

    const/4 v9, 0x0

    const/4 v10, 0x2

    const/4 v11, 0x1

    if-eq v8, v11, :cond_36

    if-eq v8, v10, :cond_18

    .line 131
    goto :goto_56

    .line 141
    :cond_18
    add-int/lit8 v8, p2, 0x1

    if-gt v8, v6, :cond_56

    .line 142
    iget-object v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tail:[B

    aget-byte v12, v8, v9

    and-int/lit16 v12, v12, 0xff

    shl-int/lit8 v12, v12, 0x10

    aget-byte v8, v8, v11

    and-int/lit16 v8, v8, 0xff

    shl-int/lit8 v8, v8, 0x8

    or-int/2addr v8, v12

    .line 143
    .local v8, "var10000":I
    add-int/lit8 v5, p2, 0x1

    .line 144
    aget-byte v12, p1, p2

    and-int/lit16 v12, v12, 0xff

    or-int v7, v8, v12

    .line 145
    iput v9, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tailLen:I

    goto :goto_56

    .line 133
    .end local v8    # "var10000":I
    :cond_36
    add-int/lit8 v8, p2, 0x2

    if-gt v8, v6, :cond_56

    .line 134
    iget-object v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tail:[B

    aget-byte v8, v8, v9

    and-int/lit16 v8, v8, 0xff

    shl-int/lit8 v8, v8, 0x10

    .line 135
    .restart local v8    # "var10000":I
    add-int/lit8 v5, p2, 0x1

    .line 136
    aget-byte v12, p1, p2

    and-int/lit16 v12, v12, 0xff

    shl-int/lit8 v12, v12, 0x8

    or-int/2addr v12, v8

    add-int/lit8 v13, v5, 0x1

    .end local v5    # "p":I
    .local v13, "p":I
    aget-byte v5, p1, v5

    and-int/lit16 v5, v5, 0xff

    or-int v7, v12, v5

    .line 137
    iput v9, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tailLen:I

    move v5, v13

    .line 149
    .end local v8    # "var10000":I
    .end local v13    # "p":I
    .restart local v5    # "p":I
    :cond_56
    :goto_56
    const/4 v8, -0x1

    const/16 v9, 0xd

    const/16 v12, 0xa

    if-eq v7, v8, :cond_97

    .line 150
    add-int/lit8 v8, v3, 0x1

    .end local v3    # "op":I
    .local v8, "op":I
    shr-int/lit8 v13, v7, 0x12

    and-int/lit8 v13, v13, 0x3f

    aget-byte v13, v1, v13

    aput-byte v13, v2, v3

    .line 151
    add-int/lit8 v3, v8, 0x1

    .end local v8    # "op":I
    .restart local v3    # "op":I
    shr-int/lit8 v13, v7, 0xc

    and-int/lit8 v13, v13, 0x3f

    aget-byte v13, v1, v13

    aput-byte v13, v2, v8

    .line 152
    add-int/lit8 v8, v3, 0x1

    .end local v3    # "op":I
    .restart local v8    # "op":I
    shr-int/lit8 v13, v7, 0x6

    and-int/lit8 v13, v13, 0x3f

    aget-byte v13, v1, v13

    aput-byte v13, v2, v3

    .line 153
    add-int/lit8 v3, v8, 0x1

    .end local v8    # "op":I
    .restart local v3    # "op":I
    and-int/lit8 v13, v7, 0x3f

    aget-byte v13, v1, v13

    aput-byte v13, v2, v8

    .line 154
    add-int/lit8 v4, v4, -0x1

    .line 155
    if-nez v4, :cond_97

    .line 156
    iget-boolean v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->do_cr:Z

    if-eqz v8, :cond_90

    .line 157
    add-int/lit8 v8, v3, 0x1

    .end local v3    # "op":I
    .restart local v8    # "op":I
    aput-byte v9, v2, v3

    move v3, v8

    .line 160
    .end local v8    # "op":I
    .restart local v3    # "op":I
    :cond_90
    add-int/lit8 v8, v3, 0x1

    .end local v3    # "op":I
    .restart local v8    # "op":I
    aput-byte v12, v2, v3

    .line 161
    const/16 v4, 0x13

    move v3, v8

    .line 165
    .end local v8    # "op":I
    .restart local v3    # "op":I
    :cond_97
    :goto_97
    add-int/lit8 v8, v5, 0x3

    if-gt v8, v6, :cond_ef

    .line 166
    aget-byte v8, p1, v5

    and-int/lit16 v8, v8, 0xff

    shl-int/lit8 v8, v8, 0x10

    add-int/lit8 v13, v5, 0x1

    aget-byte v13, p1, v13

    and-int/lit16 v13, v13, 0xff

    shl-int/lit8 v13, v13, 0x8

    or-int/2addr v8, v13

    add-int/lit8 v13, v5, 0x2

    aget-byte v13, p1, v13

    and-int/lit16 v13, v13, 0xff

    or-int v7, v8, v13

    .line 167
    shr-int/lit8 v8, v7, 0x12

    and-int/lit8 v8, v8, 0x3f

    aget-byte v8, v1, v8

    aput-byte v8, v2, v3

    .line 168
    add-int/lit8 v8, v3, 0x1

    shr-int/lit8 v13, v7, 0xc

    and-int/lit8 v13, v13, 0x3f

    aget-byte v13, v1, v13

    aput-byte v13, v2, v8

    .line 169
    add-int/lit8 v8, v3, 0x2

    shr-int/lit8 v13, v7, 0x6

    and-int/lit8 v13, v13, 0x3f

    aget-byte v13, v1, v13

    aput-byte v13, v2, v8

    .line 170
    add-int/lit8 v8, v3, 0x3

    and-int/lit8 v13, v7, 0x3f

    aget-byte v13, v1, v13

    aput-byte v13, v2, v8

    .line 171
    add-int/lit8 v5, v5, 0x3

    .line 172
    add-int/lit8 v3, v3, 0x4

    .line 173
    add-int/lit8 v4, v4, -0x1

    .line 174
    if-nez v4, :cond_97

    .line 175
    iget-boolean v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->do_cr:Z

    if-eqz v8, :cond_e7

    .line 176
    add-int/lit8 v8, v3, 0x1

    .end local v3    # "op":I
    .restart local v8    # "op":I
    aput-byte v9, v2, v3

    move v3, v8

    .line 179
    .end local v8    # "op":I
    .restart local v3    # "op":I
    :cond_e7
    add-int/lit8 v8, v3, 0x1

    .end local v3    # "op":I
    .restart local v8    # "op":I
    aput-byte v12, v2, v3

    .line 180
    const/16 v4, 0x13

    move v3, v8

    goto :goto_97

    .line 184
    .end local v8    # "op":I
    .restart local v3    # "op":I
    :cond_ef
    if-eqz p4, :cond_1d9

    .line 186
    iget v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tailLen:I

    sub-int v13, v5, v8

    add-int/lit8 v14, v6, -0x1

    const/16 v15, 0x3d

    if-ne v13, v14, :cond_14a

    .line 187
    const/4 v10, 0x0

    .line 188
    .local v10, "t":I
    if-lez v8, :cond_106

    iget-object v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tail:[B

    add-int/lit8 v13, v10, 0x1

    .end local v10    # "t":I
    .local v13, "t":I
    aget-byte v8, v8, v10

    move v10, v13

    goto :goto_10f

    .end local v13    # "t":I
    .restart local v10    # "t":I
    :cond_106
    add-int/lit8 v8, v5, 0x1

    .end local v5    # "p":I
    .local v8, "p":I
    aget-byte v5, p1, v5

    move/from16 v17, v8

    move v8, v5

    move/from16 v5, v17

    .end local v8    # "p":I
    .restart local v5    # "p":I
    :goto_10f
    and-int/lit16 v8, v8, 0xff

    shl-int/lit8 v7, v8, 0x4

    .line 189
    iget v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tailLen:I

    sub-int/2addr v8, v10

    iput v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tailLen:I

    .line 190
    add-int/lit8 v8, v3, 0x1

    .end local v3    # "op":I
    .local v8, "op":I
    shr-int/lit8 v13, v7, 0x6

    and-int/lit8 v13, v13, 0x3f

    aget-byte v13, v1, v13

    aput-byte v13, v2, v3

    .line 191
    add-int/lit8 v3, v8, 0x1

    .end local v8    # "op":I
    .restart local v3    # "op":I
    and-int/lit8 v13, v7, 0x3f

    aget-byte v13, v1, v13

    aput-byte v13, v2, v8

    .line 192
    iget-boolean v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->do_padding:Z

    if-eqz v8, :cond_136

    .line 193
    add-int/lit8 v8, v3, 0x1

    .end local v3    # "op":I
    .restart local v8    # "op":I
    aput-byte v15, v2, v3

    .line 194
    add-int/lit8 v3, v8, 0x1

    .end local v8    # "op":I
    .restart local v3    # "op":I
    aput-byte v15, v2, v8

    .line 197
    :cond_136
    iget-boolean v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->do_newline:Z

    if-eqz v8, :cond_1d7

    .line 198
    iget-boolean v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->do_cr:Z

    if-eqz v8, :cond_143

    .line 199
    add-int/lit8 v8, v3, 0x1

    .end local v3    # "op":I
    .restart local v8    # "op":I
    aput-byte v9, v2, v3

    move v3, v8

    .line 202
    .end local v8    # "op":I
    .restart local v3    # "op":I
    :cond_143
    add-int/lit8 v8, v3, 0x1

    .end local v3    # "op":I
    .restart local v8    # "op":I
    aput-byte v12, v2, v3

    move v3, v8

    goto/16 :goto_1d7

    .line 204
    .end local v8    # "op":I
    .end local v10    # "t":I
    .restart local v3    # "op":I
    :cond_14a
    sub-int v13, v5, v8

    add-int/lit8 v14, v6, -0x2

    if-ne v13, v14, :cond_1bf

    .line 205
    const/4 v13, 0x0

    .line 206
    .restart local v13    # "t":I
    if-le v8, v11, :cond_15b

    iget-object v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tail:[B

    add-int/lit8 v14, v13, 0x1

    .end local v13    # "t":I
    .local v14, "t":I
    aget-byte v8, v8, v13

    move v13, v14

    goto :goto_164

    .end local v14    # "t":I
    .restart local v13    # "t":I
    :cond_15b
    add-int/lit8 v8, v5, 0x1

    .end local v5    # "p":I
    .local v8, "p":I
    aget-byte v5, p1, v5

    move/from16 v17, v8

    move v8, v5

    move/from16 v5, v17

    .end local v8    # "p":I
    .restart local v5    # "p":I
    :goto_164
    and-int/lit16 v8, v8, 0xff

    shl-int/2addr v8, v12

    iget v14, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tailLen:I

    if-lez v14, :cond_172

    iget-object v14, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tail:[B

    add-int/lit8 v16, v13, 0x1

    .end local v13    # "t":I
    .local v16, "t":I
    aget-byte v13, v14, v13

    goto :goto_17a

    .end local v16    # "t":I
    .restart local v13    # "t":I
    :cond_172
    add-int/lit8 v14, v5, 0x1

    .end local v5    # "p":I
    .local v14, "p":I
    aget-byte v5, p1, v5

    move/from16 v16, v13

    move v13, v5

    move v5, v14

    .end local v13    # "t":I
    .end local v14    # "p":I
    .restart local v5    # "p":I
    .restart local v16    # "t":I
    :goto_17a
    and-int/lit16 v13, v13, 0xff

    shl-int/lit8 v10, v13, 0x2

    or-int v7, v8, v10

    .line 207
    iget v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tailLen:I

    sub-int v8, v8, v16

    iput v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tailLen:I

    .line 208
    add-int/lit8 v8, v3, 0x1

    .end local v3    # "op":I
    .local v8, "op":I
    shr-int/lit8 v10, v7, 0xc

    and-int/lit8 v10, v10, 0x3f

    aget-byte v10, v1, v10

    aput-byte v10, v2, v3

    .line 209
    add-int/lit8 v3, v8, 0x1

    .end local v8    # "op":I
    .restart local v3    # "op":I
    shr-int/lit8 v10, v7, 0x6

    and-int/lit8 v10, v10, 0x3f

    aget-byte v10, v1, v10

    aput-byte v10, v2, v8

    .line 210
    add-int/lit8 v8, v3, 0x1

    .end local v3    # "op":I
    .restart local v8    # "op":I
    and-int/lit8 v10, v7, 0x3f

    aget-byte v10, v1, v10

    aput-byte v10, v2, v3

    .line 211
    iget-boolean v3, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->do_padding:Z

    if-eqz v3, :cond_1ab

    .line 212
    add-int/lit8 v3, v8, 0x1

    .end local v8    # "op":I
    .restart local v3    # "op":I
    aput-byte v15, v2, v8

    move v8, v3

    .line 215
    .end local v3    # "op":I
    .restart local v8    # "op":I
    :cond_1ab
    iget-boolean v3, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->do_newline:Z

    if-eqz v3, :cond_1bd

    .line 216
    iget-boolean v3, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->do_cr:Z

    if-eqz v3, :cond_1b8

    .line 217
    add-int/lit8 v3, v8, 0x1

    .end local v8    # "op":I
    .restart local v3    # "op":I
    aput-byte v9, v2, v8

    move v8, v3

    .line 220
    .end local v3    # "op":I
    .restart local v8    # "op":I
    :cond_1b8
    add-int/lit8 v3, v8, 0x1

    .end local v8    # "op":I
    .restart local v3    # "op":I
    aput-byte v12, v2, v8

    goto :goto_1d7

    .line 215
    .end local v3    # "op":I
    .restart local v8    # "op":I
    :cond_1bd
    move v3, v8

    goto :goto_1d7

    .line 222
    .end local v8    # "op":I
    .end local v16    # "t":I
    .restart local v3    # "op":I
    :cond_1bf
    iget-boolean v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->do_newline:Z

    if-eqz v8, :cond_1d7

    if-lez v3, :cond_1d7

    const/16 v8, 0x13

    if-eq v4, v8, :cond_1d7

    .line 223
    iget-boolean v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->do_cr:Z

    if-eqz v8, :cond_1d2

    .line 224
    add-int/lit8 v8, v3, 0x1

    .end local v3    # "op":I
    .restart local v8    # "op":I
    aput-byte v9, v2, v3

    move v3, v8

    .line 227
    .end local v8    # "op":I
    .restart local v3    # "op":I
    :cond_1d2
    add-int/lit8 v8, v3, 0x1

    .end local v3    # "op":I
    .restart local v8    # "op":I
    aput-byte v12, v2, v3

    move v3, v8

    .line 230
    .end local v8    # "op":I
    .restart local v3    # "op":I
    :cond_1d7
    :goto_1d7
    nop

    .line 232
    goto :goto_204

    .line 233
    :cond_1d9
    add-int/lit8 v8, v6, -0x1

    if-ne v5, v8, :cond_1ea

    .line 234
    iget-object v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tail:[B

    iget v9, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tailLen:I

    add-int/lit8 v10, v9, 0x1

    iput v10, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tailLen:I

    aget-byte v10, p1, v5

    aput-byte v10, v8, v9

    goto :goto_204

    .line 235
    :cond_1ea
    add-int/lit8 v8, v6, -0x2

    if-ne v5, v8, :cond_204

    .line 236
    iget-object v8, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tail:[B

    iget v9, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tailLen:I

    add-int/lit8 v10, v9, 0x1

    iput v10, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tailLen:I

    aget-byte v12, p1, v5

    aput-byte v12, v8, v9

    .line 237
    add-int/lit8 v9, v10, 0x1

    iput v9, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->tailLen:I

    add-int/lit8 v9, v5, 0x1

    aget-byte v9, p1, v9

    aput-byte v9, v8, v10

    .line 240
    :cond_204
    :goto_204
    iput v3, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->op:I

    .line 241
    iput v4, v0, Lcom/alivc/rtc/device/utils/Base64$Encoder;->count:I

    .line 242
    return v11
.end method