Md5.smali 
.class public Lio/dcloud/common/util/Md5;
.super Ljava/lang/Object;
# static fields
.field public static final BUFFERSIZE:I = 0xc800
.field static final PADDING:[B
.field static final S11:I = 0x7
.field static final S12:I = 0xc
.field static final S13:I = 0x11
.field static final S14:I = 0x16
.field static final S21:I = 0x5
.field static final S22:I = 0x9
.field static final S23:I = 0xe
.field static final S24:I = 0x14
.field static final S31:I = 0x4
.field static final S32:I = 0xb
.field static final S33:I = 0x10
.field static final S34:I = 0x17
.field static final S41:I = 0x6
.field static final S42:I = 0xa
.field static final S43:I = 0xf
.field static final S44:I = 0x15
# instance fields
.field private buffer:[B
.field private count:[J
.field private digest:[B
.field public digestHexStr:Ljava/lang/String;
.field private state:[J
# direct methods
.method static constructor <clinit>()V
    .registers 1
    const/16 v0, 0x40
    new-array v0, v0, [B
    .line 1
    fill-array-data v0, :array_a
    sput-object v0, Lio/dcloud/common/util/Md5;->PADDING:[B
    return-void
    :array_a
    .array-data 1
        -0x80t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
        0x0t
    .end array-data
.end method
.method public constructor <init>()V
    .registers 2
    .line 1
    invoke-direct {p0}, Ljava/lang/Object;-><init>()V
    const/4 v0, 0x4
    new-array v0, v0, [J
    .line 2
    iput-object v0, p0, Lio/dcloud/common/util/Md5;->state:[J
    const/4 v0, 0x2
    new-array v0, v0, [J
    .line 3
    iput-object v0, p0, Lio/dcloud/common/util/Md5;->count:[J
    const/16 v0, 0x40
    new-array v0, v0, [B
    .line 4
    iput-object v0, p0, Lio/dcloud/common/util/Md5;->buffer:[B
    const/16 v0, 0x10
    new-array v0, v0, [B
    .line 13
    iput-object v0, p0, Lio/dcloud/common/util/Md5;->digest:[B
    .line 39
    invoke-direct {p0}, Lio/dcloud/common/util/Md5;->md5Init()V
    return-void
.end method
.method private Decode([J[BI)V
    .registers 11
    const/4 v0, 0x0
    move v1, v0
    :goto_2
    if-ge v0, p3, :cond_35
    .line 1
    aget-byte v2, p2, v0
    invoke-static {v2}, Lio/dcloud/common/util/Md5;->b2iu(B)J
    move-result-wide v2
    add-int/lit8 v4, v0, 0x1
    aget-byte v4, p2, v4
    .line 2
    invoke-static {v4}, Lio/dcloud/common/util/Md5;->b2iu(B)J
    move-result-wide v4
    const/16 v6, 0x8
    shl-long/2addr v4, v6
    or-long/2addr v2, v4
    add-int/lit8 v4, v0, 0x2
    aget-byte v4, p2, v4
    .line 3
    invoke-static {v4}, Lio/dcloud/common/util/Md5;->b2iu(B)J
    move-result-wide v4
    const/16 v6, 0x10
    shl-long/2addr v4, v6
    or-long/2addr v2, v4
    add-int/lit8 v4, v0, 0x3
    aget-byte v4, p2, v4
    .line 4
    invoke-static {v4}, Lio/dcloud/common/util/Md5;->b2iu(B)J
    move-result-wide v4
    const/16 v6, 0x18
    shl-long/2addr v4, v6
    or-long/2addr v2, v4
    aput-wide v2, p1, v1
    add-int/lit8 v1, v1, 0x1
    add-int/lit8 v0, v0, 0x4
    goto :goto_2
    :cond_35
    return-void
.end method
.method private Encode([B[JI)V
    .registers 12
    const/4 v0, 0x0
    move v1, v0
    :goto_2
    if-ge v0, p3, :cond_37
    .line 1
    aget-wide v2, p2, v1
    const-wide/16 v4, 0xff
    and-long/2addr v2, v4
    long-to-int v2, v2
    int-to-byte v2, v2
    aput-byte v2, p1, v0
    add-int/lit8 v2, v0, 0x1
    .line 2
    aget-wide v6, p2, v1
    const/16 v3, 0x8
    ushr-long/2addr v6, v3
    and-long/2addr v6, v4
    long-to-int v3, v6
    int-to-byte v3, v3
    aput-byte v3, p1, v2
    add-int/lit8 v2, v0, 0x2
    .line 3
    aget-wide v6, p2, v1
    const/16 v3, 0x10
    ushr-long/2addr v6, v3
    and-long/2addr v6, v4
    long-to-int v3, v6
    int-to-byte v3, v3
    aput-byte v3, p1, v2
    add-int/lit8 v2, v0, 0x3
    .line 4
    aget-wide v6, p2, v1
    const/16 v3, 0x18
    ushr-long/2addr v6, v3
    and-long v3, v6, v4
    long-to-int v3, v3
    int-to-byte v3, v3
    aput-byte v3, p1, v2
    add-int/lit8 v1, v1, 0x1
    add-int/lit8 v0, v0, 0x4
    goto :goto_2
    :cond_37
    return-void
.end method
.method private F(JJJ)J
    .registers 7
    and-long/2addr p3, p1
    not-long p1, p1
    and-long/2addr p1, p5
    or-long/2addr p1, p3
    return-wide p1
.end method
.method private FF(JJJJJJJ)J
    .registers 24
    move-wide/from16 v0, p11
    move-object v2, p0
    move-wide v3, p3
    move-wide v5, p5
    move-wide/from16 v7, p7
    .line 1
    invoke-direct/range {v2 .. v8}, Lio/dcloud/common/util/Md5;->F(JJJ)J
    move-result-wide v2
    add-long v2, v2, p9
    add-long v2, v2, p13
    add-long/2addr v2, p1
    long-to-int v2, v2
    long-to-int v3, v0
    shl-int v3, v2, v3
    const-wide/16 v4, 0x20
    sub-long/2addr v4, v0
    long-to-int v0, v4
    ushr-int v0, v2, v0
    or-int/2addr v0, v3
    int-to-long v0, v0
    add-long/2addr v0, p3
    return-wide v0
.end method
.method private G(JJJ)J
    .registers 7
    and-long/2addr p1, p5
    not-long p5, p5
    and-long/2addr p3, p5
    or-long/2addr p1, p3
    return-wide p1
.end method
.method private GG(JJJJJJJ)J
    .registers 24
    move-wide/from16 v0, p11
    move-object v2, p0
    move-wide v3, p3
    move-wide v5, p5
    move-wide/from16 v7, p7
    .line 1
    invoke-direct/range {v2 .. v8}, Lio/dcloud/common/util/Md5;->G(JJJ)J
    move-result-wide v2
    add-long v2, v2, p9
    add-long v2, v2, p13
    add-long/2addr v2, p1
    long-to-int v2, v2
    long-to-int v3, v0
    shl-int v3, v2, v3
    const-wide/16 v4, 0x20
    sub-long/2addr v4, v0
    long-to-int v0, v4
    ushr-int v0, v2, v0
    or-int/2addr v0, v3
    int-to-long v0, v0
    add-long/2addr v0, p3
    return-wide v0
.end method
.method private H(JJJ)J
    .registers 7
    xor-long/2addr p1, p3
    xor-long/2addr p1, p5
    return-wide p1
.end method
.method private HH(JJJJJJJ)J
    .registers 24
    move-wide/from16 v0, p11
    move-object v2, p0
    move-wide v3, p3
    move-wide v5, p5
    move-wide/from16 v7, p7
    .line 1
    invoke-direct/range {v2 .. v8}, Lio/dcloud/common/util/Md5;->H(JJJ)J
    move-result-wide v2
    add-long v2, v2, p9
    add-long v2, v2, p13
    add-long/2addr v2, p1
    long-to-int v2, v2
    long-to-int v3, v0
    shl-int v3, v2, v3
    const-wide/16 v4, 0x20
    sub-long/2addr v4, v0
    long-to-int v0, v4
    ushr-int v0, v2, v0
    or-int/2addr v0, v3
    int-to-long v0, v0
    add-long/2addr v0, p3
    return-wide v0
.end method
.method private I(JJJ)J
    .registers 7
    not-long p5, p5
    or-long/2addr p1, p5
    xor-long/2addr p1, p3
    return-wide p1
.end method
.method private II(JJJJJJJ)J
    .registers 24
    move-wide/from16 v0, p11
    move-object v2, p0
    move-wide v3, p3
    move-wide v5, p5
    move-wide/from16 v7, p7
    .line 1
    invoke-direct/range {v2 .. v8}, Lio/dcloud/common/util/Md5;->I(JJJ)J
    move-result-wide v2
    add-long v2, v2, p9
    add-long v2, v2, p13
    add-long/2addr v2, p1
    long-to-int v2, v2
    long-to-int v3, v0
    shl-int v3, v2, v3
    const-wide/16 v4, 0x20
    sub-long/2addr v4, v0
    long-to-int v0, v4
    ushr-int v0, v2, v0
    or-int/2addr v0, v3
    int-to-long v0, v0
    add-long/2addr v0, p3
    return-wide v0
.end method
.method public static b2iu(B)J
    .registers 3
    if-gez p0, :cond_4
    and-int/lit16 p0, p0, 0xff
    :cond_4
    int-to-long v0, p0
    return-wide v0
.end method
.method public static byteHEX(B)Ljava/lang/String;
    .registers 5
    const/16 v0, 0x10
    new-array v0, v0, [C
    .line 1
    fill-array-data v0, :array_20
    const/4 v1, 0x2
    new-array v1, v1, [C
    ushr-int/lit8 v2, p0, 0x4
    and-int/lit8 v2, v2, 0xf
    .line 5
    aget-char v2, v0, v2
    const/4 v3, 0x0
    aput-char v2, v1, v3
    and-int/lit8 p0, p0, 0xf
    .line 6
    aget-char p0, v0, p0
    const/4 v0, 0x1
    aput-char p0, v1, v0
    .line 7
    new-instance p0, Ljava/lang/String;
    invoke-direct {p0, v1}, Ljava/lang/String;-><init>([C)V
    return-object p0
    :array_20
    .array-data 2
        0x30s
        0x31s
        0x32s
        0x33s
        0x34s
        0x35s
        0x36s
        0x37s
        0x38s
        0x39s
        0x41s
        0x42s
        0x43s
        0x44s
        0x45s
        0x46s
    .end array-data
.end method
.method private md5Final()V
    .registers 6
    const/16 v0, 0x8
    new-array v1, v0, [B
    .line 5
    iget-object v2, p0, Lio/dcloud/common/util/Md5;->count:[J
    invoke-direct {p0, v1, v2, v0}, Lio/dcloud/common/util/Md5;->Encode([B[JI)V
    .line 8
    iget-object v2, p0, Lio/dcloud/common/util/Md5;->count:[J
    const/4 v3, 0x0
    aget-wide v3, v2, v3
    const/4 v2, 0x3
    ushr-long v2, v3, v2
    long-to-int v2, v2
    and-int/lit8 v2, v2, 0x3f
    const/16 v3, 0x38
    if-ge v2, v3, :cond_1a
    sub-int/2addr v3, v2
    goto :goto_1c
    :cond_1a
    rsub-int/lit8 v3, v2, 0x78
    .line 10
    :goto_1c
    sget-object v2, Lio/dcloud/common/util/Md5;->PADDING:[B
    invoke-direct {p0, v2, v3}, Lio/dcloud/common/util/Md5;->md5Update([BI)V
    .line 13
    invoke-direct {p0, v1, v0}, Lio/dcloud/common/util/Md5;->md5Update([BI)V
    .line 16
    iget-object v0, p0, Lio/dcloud/common/util/Md5;->digest:[B
    iget-object v1, p0, Lio/dcloud/common/util/Md5;->state:[J
    const/16 v2, 0x10
    invoke-direct {p0, v0, v1, v2}, Lio/dcloud/common/util/Md5;->Encode([B[JI)V
    return-void
.end method
.method private md5Init()V
    .registers 6
    .line 1
    iget-object v0, p0, Lio/dcloud/common/util/Md5;->count:[J
    const/4 v1, 0x0
    const-wide/16 v2, 0x0
    aput-wide v2, v0, v1
    const/4 v4, 0x1
    .line 2
    aput-wide v2, v0, v4
    .line 5
    iget-object v0, p0, Lio/dcloud/common/util/Md5;->state:[J
    const-wide/32 v2, 0x67452301
    aput-wide v2, v0, v1
    const-wide v1, 0xefcdab89L
    .line 6
    aput-wide v1, v0, v4
    const/4 v1, 0x2
    const-wide v2, 0x98badcfeL
    .line 7
    aput-wide v2, v0, v1
    const/4 v1, 0x3
    const-wide/32 v2, 0x10325476
    .line 8
    aput-wide v2, v0, v1
    return-void
.end method
.method private md5Memcpy([B[BIII)V
    .registers 9
    const/4 v0, 0x0
    :goto_1
    if-ge v0, p5, :cond_e
    add-int v1, p3, v0
    add-int v2, p4, v0
    .line 1
    aget-byte v2, p2, v2
    aput-byte v2, p1, v1
    add-int/lit8 v0, v0, 0x1
    goto :goto_1
    :cond_e
    return-void
.end method
.method private md5Transform([B)V
    .registers 43
    move-object/from16 v15, p0
    .line 1
    iget-object v0, v15, Lio/dcloud/common/util/Md5;->state:[J
    const/16 v16, 0x0
    aget-wide v1, v0, v16
    const/16 v17, 0x1
    aget-wide v18, v0, v17
    const/16 v20, 0x2
    aget-wide v21, v0, v20
    const/16 v23, 0x3
    aget-wide v24, v0, v23
    const/16 v0, 0x10
    new-array v13, v0, [J
    const/16 v0, 0x40
    move-object/from16 v3, p1
    .line 4
    invoke-direct {v15, v13, v3, v0}, Lio/dcloud/common/util/Md5;->Decode([J[BI)V
    .line 7
    aget-wide v9, v13, v16
    const-wide/16 v11, 0x7
    const-wide v26, 0xd76aa478L
    move-object/from16 v0, p0
    move-wide/from16 v3, v18
    move-wide/from16 v5, v21
    move-wide/from16 v7, v24
    move-object/from16 v28, v13
    move-wide/from16 v13, v26
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->FF(JJJJJJJ)J
    move-result-wide v26
    .line 8
    aget-wide v9, v28, v17
    const-wide/16 v11, 0xc
    const-wide v13, 0xe8c7b756L
    move-wide/from16 v1, v24
    move-wide/from16 v3, v26
    move-wide/from16 v5, v18
    move-wide/from16 v7, v21
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->FF(JJJJJJJ)J
    move-result-wide v24
    .line 9
    aget-wide v9, v28, v20
    const-wide/16 v11, 0x11
    const-wide/32 v13, 0x242070db
    move-wide/from16 v1, v21
    move-wide/from16 v3, v24
    move-wide/from16 v5, v26
    move-wide/from16 v7, v18
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->FF(JJJJJJJ)J
    move-result-wide v21
    .line 10
    aget-wide v9, v28, v23
    const-wide/16 v11, 0x16
    const-wide v13, 0xc1bdceeeL
    move-wide/from16 v1, v18
    move-wide/from16 v3, v21
    move-wide/from16 v5, v24
    move-wide/from16 v7, v26
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->FF(JJJJJJJ)J
    move-result-wide v18
    const/16 v29, 0x4
    .line 11
    aget-wide v9, v28, v29
    const-wide/16 v11, 0x7
    const-wide v13, 0xf57c0fafL
    move-wide/from16 v1, v26
    move-wide/from16 v3, v18
    move-wide/from16 v5, v21
    move-wide/from16 v7, v24
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->FF(JJJJJJJ)J
    move-result-wide v26
    const/16 v30, 0x5
    .line 12
    aget-wide v9, v28, v30
    const-wide/16 v11, 0xc
    const-wide/32 v13, 0x4787c62a
    move-wide/from16 v1, v24
    move-wide/from16 v3, v26
    move-wide/from16 v5, v18
    move-wide/from16 v7, v21
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->FF(JJJJJJJ)J
    move-result-wide v24
    const/16 v31, 0x6
    .line 13
    aget-wide v9, v28, v31
    const-wide/16 v11, 0x11
    const-wide v13, 0xa8304613L
    move-wide/from16 v1, v21
    move-wide/from16 v3, v24
    move-wide/from16 v5, v26
    move-wide/from16 v7, v18
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->FF(JJJJJJJ)J
    move-result-wide v21
    const/16 v32, 0x7
    .line 14
    aget-wide v9, v28, v32
    const-wide/16 v11, 0x16
    const-wide v13, 0xfd469501L
    move-wide/from16 v1, v18
    move-wide/from16 v3, v21
    move-wide/from16 v5, v24
    move-wide/from16 v7, v26
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->FF(JJJJJJJ)J
    move-result-wide v18
    const/16 v33, 0x8
    .line 15
    aget-wide v9, v28, v33
    const-wide/16 v11, 0x7
    const-wide/32 v13, 0x698098d8
    move-wide/from16 v1, v26
    move-wide/from16 v3, v18
    move-wide/from16 v5, v21
    move-wide/from16 v7, v24
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->FF(JJJJJJJ)J
    move-result-wide v26
    const/16 v34, 0x9
    .line 16
    aget-wide v9, v28, v34
    const-wide/16 v11, 0xc
    const-wide v13, 0x8b44f7afL
    move-wide/from16 v1, v24
    move-wide/from16 v3, v26
    move-wide/from16 v5, v18
    move-wide/from16 v7, v21
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->FF(JJJJJJJ)J
    move-result-wide v24
    const/16 v35, 0xa
    .line 17
    aget-wide v9, v28, v35
    const-wide/16 v11, 0x11
    const-wide v13, 0xffff5bb1L
    move-wide/from16 v1, v21
    move-wide/from16 v3, v24
    move-wide/from16 v5, v26
    move-wide/from16 v7, v18
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->FF(JJJJJJJ)J
    move-result-wide v21
    const/16 v36, 0xb
    .line 18
    aget-wide v9, v28, v36
    const-wide/16 v11, 0x16
    const-wide v13, 0x895cd7beL
    move-wide/from16 v1, v18
    move-wide/from16 v3, v21
    move-wide/from16 v5, v24
    move-wide/from16 v7, v26
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->FF(JJJJJJJ)J
    move-result-wide v18
    const/16 v37, 0xc
    .line 19
    aget-wide v9, v28, v37
    const-wide/16 v11, 0x7
    const-wide/32 v13, 0x6b901122
    move-wide/from16 v1, v26
    move-wide/from16 v3, v18
    move-wide/from16 v5, v21
    move-wide/from16 v7, v24
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->FF(JJJJJJJ)J
    move-result-wide v26
    const/16 v38, 0xd
    .line 20
    aget-wide v9, v28, v38
    const-wide/16 v11, 0xc
    const-wide v13, 0xfd987193L
    move-wide/from16 v1, v24
    move-wide/from16 v3, v26
    move-wide/from16 v5, v18
    move-wide/from16 v7, v21
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->FF(JJJJJJJ)J
    move-result-wide v24
    const/16 v39, 0xe
    .line 21
    aget-wide v9, v28, v39
    const-wide/16 v11, 0x11
    const-wide v13, 0xa679438eL
    move-wide/from16 v1, v21
    move-wide/from16 v3, v24
    move-wide/from16 v5, v26
    move-wide/from16 v7, v18
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->FF(JJJJJJJ)J
    move-result-wide v21
    const/16 v40, 0xf
    .line 22
    aget-wide v9, v28, v40
    const-wide/16 v11, 0x16
    const-wide/32 v13, 0x49b40821
    move-wide/from16 v1, v18
    move-wide/from16 v3, v21
    move-wide/from16 v5, v24
    move-wide/from16 v7, v26
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->FF(JJJJJJJ)J
    move-result-wide v18
    .line 25
    aget-wide v9, v28, v17
    const-wide/16 v11, 0x5
    const-wide v13, 0xf61e2562L
    move-wide/from16 v1, v26
    move-wide/from16 v3, v18
    move-wide/from16 v5, v21
    move-wide/from16 v7, v24
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->GG(JJJJJJJ)J
    move-result-wide v26
    .line 26
    aget-wide v9, v28, v31
    const-wide/16 v11, 0x9
    const-wide v13, 0xc040b340L
    move-wide/from16 v1, v24
    move-wide/from16 v3, v26
    move-wide/from16 v5, v18
    move-wide/from16 v7, v21
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->GG(JJJJJJJ)J
    move-result-wide v24
    .line 27
    aget-wide v9, v28, v36
    const-wide/16 v11, 0xe
    const-wide/32 v13, 0x265e5a51
    move-wide/from16 v1, v21
    move-wide/from16 v3, v24
    move-wide/from16 v5, v26
    move-wide/from16 v7, v18
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->GG(JJJJJJJ)J
    move-result-wide v21
    .line 28
    aget-wide v9, v28, v16
    const-wide/16 v11, 0x14
    const-wide v13, 0xe9b6c7aaL
    move-wide/from16 v1, v18
    move-wide/from16 v3, v21
    move-wide/from16 v5, v24
    move-wide/from16 v7, v26
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->GG(JJJJJJJ)J
    move-result-wide v18
    .line 29
    aget-wide v9, v28, v30
    const-wide/16 v11, 0x5
    const-wide v13, 0xd62f105dL
    move-wide/from16 v1, v26
    move-wide/from16 v3, v18
    move-wide/from16 v5, v21
    move-wide/from16 v7, v24
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->GG(JJJJJJJ)J
    move-result-wide v26
    .line 30
    aget-wide v9, v28, v35
    const-wide/16 v11, 0x9
    const-wide/32 v13, 0x2441453
    move-wide/from16 v1, v24
    move-wide/from16 v3, v26
    move-wide/from16 v5, v18
    move-wide/from16 v7, v21
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->GG(JJJJJJJ)J
    move-result-wide v24
    .line 31
    aget-wide v9, v28, v40
    const-wide/16 v11, 0xe
    const-wide v13, 0xd8a1e681L
    move-wide/from16 v1, v21
    move-wide/from16 v3, v24
    move-wide/from16 v5, v26
    move-wide/from16 v7, v18
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->GG(JJJJJJJ)J
    move-result-wide v21
    .line 32
    aget-wide v9, v28, v29
    const-wide/16 v11, 0x14
    const-wide v13, 0xe7d3fbc8L
    move-wide/from16 v1, v18
    move-wide/from16 v3, v21
    move-wide/from16 v5, v24
    move-wide/from16 v7, v26
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->GG(JJJJJJJ)J
    move-result-wide v18
    .line 33
    aget-wide v9, v28, v34
    const-wide/16 v11, 0x5
    const-wide/32 v13, 0x21e1cde6
    move-wide/from16 v1, v26
    move-wide/from16 v3, v18
    move-wide/from16 v5, v21
    move-wide/from16 v7, v24
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->GG(JJJJJJJ)J
    move-result-wide v26
    .line 34
    aget-wide v9, v28, v39
    const-wide/16 v11, 0x9
    const-wide v13, 0xc33707d6L
    move-wide/from16 v1, v24
    move-wide/from16 v3, v26
    move-wide/from16 v5, v18
    move-wide/from16 v7, v21
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->GG(JJJJJJJ)J
    move-result-wide v24
    .line 35
    aget-wide v9, v28, v23
    const-wide/16 v11, 0xe
    const-wide v13, 0xf4d50d87L
    move-wide/from16 v1, v21
    move-wide/from16 v3, v24
    move-wide/from16 v5, v26
    move-wide/from16 v7, v18
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->GG(JJJJJJJ)J
    move-result-wide v21
    .line 36
    aget-wide v9, v28, v33
    const-wide/16 v11, 0x14
    const-wide/32 v13, 0x455a14ed
    move-wide/from16 v1, v18
    move-wide/from16 v3, v21
    move-wide/from16 v5, v24
    move-wide/from16 v7, v26
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->GG(JJJJJJJ)J
    move-result-wide v18
    .line 37
    aget-wide v9, v28, v38
    const-wide/16 v11, 0x5
    const-wide v13, 0xa9e3e905L
    move-wide/from16 v1, v26
    move-wide/from16 v3, v18
    move-wide/from16 v5, v21
    move-wide/from16 v7, v24
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->GG(JJJJJJJ)J
    move-result-wide v26
    .line 38
    aget-wide v9, v28, v20
    const-wide/16 v11, 0x9
    const-wide v13, 0xfcefa3f8L
    move-wide/from16 v1, v24
    move-wide/from16 v3, v26
    move-wide/from16 v5, v18
    move-wide/from16 v7, v21
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->GG(JJJJJJJ)J
    move-result-wide v24
    .line 39
    aget-wide v9, v28, v32
    const-wide/16 v11, 0xe
    const-wide/32 v13, 0x676f02d9
    move-wide/from16 v1, v21
    move-wide/from16 v3, v24
    move-wide/from16 v5, v26
    move-wide/from16 v7, v18
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->GG(JJJJJJJ)J
    move-result-wide v21
    .line 40
    aget-wide v9, v28, v37
    const-wide/16 v11, 0x14
    const-wide v13, 0x8d2a4c8aL
    move-wide/from16 v1, v18
    move-wide/from16 v3, v21
    move-wide/from16 v5, v24
    move-wide/from16 v7, v26
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->GG(JJJJJJJ)J
    move-result-wide v18
    .line 43
    aget-wide v9, v28, v30
    const-wide/16 v11, 0x4
    const-wide v13, 0xfffa3942L
    move-wide/from16 v1, v26
    move-wide/from16 v3, v18
    move-wide/from16 v5, v21
    move-wide/from16 v7, v24
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->HH(JJJJJJJ)J
    move-result-wide v26
    .line 44
    aget-wide v9, v28, v33
    const-wide/16 v11, 0xb
    const-wide v13, 0x8771f681L
    move-wide/from16 v1, v24
    move-wide/from16 v3, v26
    move-wide/from16 v5, v18
    move-wide/from16 v7, v21
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->HH(JJJJJJJ)J
    move-result-wide v24
    .line 45
    aget-wide v9, v28, v36
    const-wide/16 v11, 0x10
    const-wide/32 v13, 0x6d9d6122
    move-wide/from16 v1, v21
    move-wide/from16 v3, v24
    move-wide/from16 v5, v26
    move-wide/from16 v7, v18
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->HH(JJJJJJJ)J
    move-result-wide v21
    .line 46
    aget-wide v9, v28, v39
    const-wide/16 v11, 0x17
    const-wide v13, 0xfde5380cL
    move-wide/from16 v1, v18
    move-wide/from16 v3, v21
    move-wide/from16 v5, v24
    move-wide/from16 v7, v26
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->HH(JJJJJJJ)J
    move-result-wide v18
    .line 47
    aget-wide v9, v28, v17
    const-wide/16 v11, 0x4
    const-wide v13, 0xa4beea44L
    move-wide/from16 v1, v26
    move-wide/from16 v3, v18
    move-wide/from16 v5, v21
    move-wide/from16 v7, v24
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->HH(JJJJJJJ)J
    move-result-wide v26
    .line 48
    aget-wide v9, v28, v29
    const-wide/16 v11, 0xb
    const-wide/32 v13, 0x4bdecfa9
    move-wide/from16 v1, v24
    move-wide/from16 v3, v26
    move-wide/from16 v5, v18
    move-wide/from16 v7, v21
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->HH(JJJJJJJ)J
    move-result-wide v24
    .line 49
    aget-wide v9, v28, v32
    const-wide/16 v11, 0x10
    const-wide v13, 0xf6bb4b60L
    move-wide/from16 v1, v21
    move-wide/from16 v3, v24
    move-wide/from16 v5, v26
    move-wide/from16 v7, v18
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->HH(JJJJJJJ)J
    move-result-wide v21
    .line 50
    aget-wide v9, v28, v35
    const-wide/16 v11, 0x17
    const-wide v13, 0xbebfbc70L
    move-wide/from16 v1, v18
    move-wide/from16 v3, v21
    move-wide/from16 v5, v24
    move-wide/from16 v7, v26
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->HH(JJJJJJJ)J
    move-result-wide v18
    .line 51
    aget-wide v9, v28, v38
    const-wide/16 v11, 0x4
    const-wide/32 v13, 0x289b7ec6
    move-wide/from16 v1, v26
    move-wide/from16 v3, v18
    move-wide/from16 v5, v21
    move-wide/from16 v7, v24
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->HH(JJJJJJJ)J
    move-result-wide v26
    .line 52
    aget-wide v9, v28, v16
    const-wide/16 v11, 0xb
    const-wide v13, 0xeaa127faL
    move-wide/from16 v1, v24
    move-wide/from16 v3, v26
    move-wide/from16 v5, v18
    move-wide/from16 v7, v21
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->HH(JJJJJJJ)J
    move-result-wide v24
    .line 53
    aget-wide v9, v28, v23
    const-wide/16 v11, 0x10
    const-wide v13, 0xd4ef3085L
    move-wide/from16 v1, v21
    move-wide/from16 v3, v24
    move-wide/from16 v5, v26
    move-wide/from16 v7, v18
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->HH(JJJJJJJ)J
    move-result-wide v21
    .line 54
    aget-wide v9, v28, v31
    const-wide/16 v11, 0x17
    const-wide/32 v13, 0x4881d05
    move-wide/from16 v1, v18
    move-wide/from16 v3, v21
    move-wide/from16 v5, v24
    move-wide/from16 v7, v26
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->HH(JJJJJJJ)J
    move-result-wide v18
    .line 55
    aget-wide v9, v28, v34
    const-wide/16 v11, 0x4
    const-wide v13, 0xd9d4d039L
    move-wide/from16 v1, v26
    move-wide/from16 v3, v18
    move-wide/from16 v5, v21
    move-wide/from16 v7, v24
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->HH(JJJJJJJ)J
    move-result-wide v26
    .line 56
    aget-wide v9, v28, v37
    const-wide/16 v11, 0xb
    const-wide v13, 0xe6db99e5L
    move-wide/from16 v1, v24
    move-wide/from16 v3, v26
    move-wide/from16 v5, v18
    move-wide/from16 v7, v21
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->HH(JJJJJJJ)J
    move-result-wide v24
    .line 57
    aget-wide v9, v28, v40
    const-wide/16 v11, 0x10
    const-wide/32 v13, 0x1fa27cf8
    move-wide/from16 v1, v21
    move-wide/from16 v3, v24
    move-wide/from16 v5, v26
    move-wide/from16 v7, v18
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->HH(JJJJJJJ)J
    move-result-wide v21
    .line 58
    aget-wide v9, v28, v20
    const-wide/16 v11, 0x17
    const-wide v13, 0xc4ac5665L
    move-wide/from16 v1, v18
    move-wide/from16 v3, v21
    move-wide/from16 v5, v24
    move-wide/from16 v7, v26
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->HH(JJJJJJJ)J
    move-result-wide v18
    .line 61
    aget-wide v9, v28, v16
    const-wide/16 v11, 0x6
    const-wide v13, 0xf4292244L
    move-wide/from16 v1, v26
    move-wide/from16 v3, v18
    move-wide/from16 v5, v21
    move-wide/from16 v7, v24
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->II(JJJJJJJ)J
    move-result-wide v26
    .line 62
    aget-wide v9, v28, v32
    const-wide/16 v11, 0xa
    const-wide/32 v13, 0x432aff97
    move-wide/from16 v1, v24
    move-wide/from16 v3, v26
    move-wide/from16 v5, v18
    move-wide/from16 v7, v21
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->II(JJJJJJJ)J
    move-result-wide v24
    .line 63
    aget-wide v9, v28, v39
    const-wide/16 v11, 0xf
    const-wide v13, 0xab9423a7L
    move-wide/from16 v1, v21
    move-wide/from16 v3, v24
    move-wide/from16 v5, v26
    move-wide/from16 v7, v18
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->II(JJJJJJJ)J
    move-result-wide v21
    .line 64
    aget-wide v9, v28, v30
    const-wide/16 v11, 0x15
    const-wide v13, 0xfc93a039L
    move-wide/from16 v1, v18
    move-wide/from16 v3, v21
    move-wide/from16 v5, v24
    move-wide/from16 v7, v26
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->II(JJJJJJJ)J
    move-result-wide v18
    .line 65
    aget-wide v9, v28, v37
    const-wide/16 v11, 0x6
    const-wide/32 v13, 0x655b59c3
    move-wide/from16 v1, v26
    move-wide/from16 v3, v18
    move-wide/from16 v5, v21
    move-wide/from16 v7, v24
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->II(JJJJJJJ)J
    move-result-wide v26
    .line 66
    aget-wide v9, v28, v23
    const-wide/16 v11, 0xa
    const-wide v13, 0x8f0ccc92L
    move-wide/from16 v1, v24
    move-wide/from16 v3, v26
    move-wide/from16 v5, v18
    move-wide/from16 v7, v21
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->II(JJJJJJJ)J
    move-result-wide v24
    .line 67
    aget-wide v9, v28, v35
    const-wide/16 v11, 0xf
    const-wide v13, 0xffeff47dL
    move-wide/from16 v1, v21
    move-wide/from16 v3, v24
    move-wide/from16 v5, v26
    move-wide/from16 v7, v18
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->II(JJJJJJJ)J
    move-result-wide v21
    .line 68
    aget-wide v9, v28, v17
    const-wide/16 v11, 0x15
    const-wide v13, 0x85845dd1L
    move-wide/from16 v1, v18
    move-wide/from16 v3, v21
    move-wide/from16 v5, v24
    move-wide/from16 v7, v26
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->II(JJJJJJJ)J
    move-result-wide v18
    .line 69
    aget-wide v9, v28, v33
    const-wide/16 v11, 0x6
    const-wide/32 v13, 0x6fa87e4f
    move-wide/from16 v1, v26
    move-wide/from16 v3, v18
    move-wide/from16 v5, v21
    move-wide/from16 v7, v24
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->II(JJJJJJJ)J
    move-result-wide v26
    .line 70
    aget-wide v9, v28, v40
    const-wide/16 v11, 0xa
    const-wide v13, 0xfe2ce6e0L
    move-wide/from16 v1, v24
    move-wide/from16 v3, v26
    move-wide/from16 v5, v18
    move-wide/from16 v7, v21
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->II(JJJJJJJ)J
    move-result-wide v24
    .line 71
    aget-wide v9, v28, v31
    const-wide/16 v11, 0xf
    const-wide v13, 0xa3014314L
    move-wide/from16 v1, v21
    move-wide/from16 v3, v24
    move-wide/from16 v5, v26
    move-wide/from16 v7, v18
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->II(JJJJJJJ)J
    move-result-wide v21
    .line 72
    aget-wide v9, v28, v38
    const-wide/16 v11, 0x15
    const-wide/32 v13, 0x4e0811a1
    move-wide/from16 v1, v18
    move-wide/from16 v3, v21
    move-wide/from16 v5, v24
    move-wide/from16 v7, v26
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->II(JJJJJJJ)J
    move-result-wide v18
    .line 73
    aget-wide v9, v28, v29
    const-wide/16 v11, 0x6
    const-wide v13, 0xf7537e82L
    move-wide/from16 v1, v26
    move-wide/from16 v3, v18
    move-wide/from16 v5, v21
    move-wide/from16 v7, v24
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->II(JJJJJJJ)J
    move-result-wide v26
    .line 74
    aget-wide v9, v28, v36
    const-wide/16 v11, 0xa
    const-wide v13, 0xbd3af235L
    move-wide/from16 v1, v24
    move-wide/from16 v3, v26
    move-wide/from16 v5, v18
    move-wide/from16 v7, v21
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->II(JJJJJJJ)J
    move-result-wide v24
    .line 75
    aget-wide v9, v28, v20
    const-wide/16 v11, 0xf
    const-wide/32 v13, 0x2ad7d2bb
    move-wide/from16 v1, v21
    move-wide/from16 v3, v24
    move-wide/from16 v5, v26
    move-wide/from16 v7, v18
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->II(JJJJJJJ)J
    move-result-wide v21
    .line 76
    aget-wide v9, v28, v34
    const-wide/16 v11, 0x15
    const-wide v13, 0xeb86d391L
    move-wide/from16 v1, v18
    move-wide/from16 v3, v21
    move-wide/from16 v5, v24
    move-wide/from16 v7, v26
    invoke-direct/range {v0 .. v14}, Lio/dcloud/common/util/Md5;->II(JJJJJJJ)J
    move-result-wide v0
    .line 78
    iget-object v2, v15, Lio/dcloud/common/util/Md5;->state:[J
    aget-wide v3, v2, v16
    add-long v3, v3, v26
    aput-wide v3, v2, v16
    .line 79
    aget-wide v3, v2, v17
    add-long/2addr v3, v0
    aput-wide v3, v2, v17
    .line 80
    aget-wide v0, v2, v20
    add-long v0, v0, v21
    aput-wide v0, v2, v20
    .line 81
    aget-wide v0, v2, v23
    add-long v0, v0, v24
    aput-wide v0, v2, v23
    return-void
.end method
.method private md5Update([BI)V
    .registers 13
    const/16 v0, 0x40
    new-array v6, v0, [B
    .line 2
    iget-object v0, p0, Lio/dcloud/common/util/Md5;->count:[J
    const/4 v7, 0x0
    aget-wide v1, v0, v7
    const/4 v3, 0x3
    ushr-long/2addr v1, v3
    long-to-int v1, v1
    and-int/lit8 v3, v1, 0x3f
    .line 4
    aget-wide v1, v0, v7
    shl-int/lit8 v4, p2, 0x3
    int-to-long v4, v4
    add-long/2addr v1, v4
    aput-wide v1, v0, v7
    cmp-long v1, v1, v4
    const/4 v2, 0x1
    if-gez v1, :cond_22
    .line 5
    aget-wide v4, v0, v2
    const-wide/16 v8, 0x1
    add-long/2addr v4, v8
    aput-wide v4, v0, v2
    .line 6
    :cond_22
    aget-wide v4, v0, v2
    ushr-int/lit8 v1, p2, 0x1d
    int-to-long v8, v1
    add-long/2addr v4, v8
    aput-wide v4, v0, v2
    rsub-int/lit8 v8, v3, 0x40
    if-lt p2, v8, :cond_53
    .line 12
    iget-object v1, p0, Lio/dcloud/common/util/Md5;->buffer:[B
    const/4 v4, 0x0
    move-object v0, p0
    move-object v2, p1
    move v5, v8
    invoke-direct/range {v0 .. v5}, Lio/dcloud/common/util/Md5;->md5Memcpy([B[BIII)V
    .line 13
    iget-object v0, p0, Lio/dcloud/common/util/Md5;->buffer:[B
    invoke-direct {p0, v0}, Lio/dcloud/common/util/Md5;->md5Transform([B)V
    :goto_3c
    add-int/lit8 v0, v8, 0x3f
    if-ge v0, p2, :cond_50
    const/4 v3, 0x0
    const/16 v5, 0x40
    move-object v0, p0
    move-object v1, v6
    move-object v2, p1
    move v4, v8
    .line 17
    invoke-direct/range {v0 .. v5}, Lio/dcloud/common/util/Md5;->md5Memcpy([B[BIII)V
    .line 18
    invoke-direct {p0, v6}, Lio/dcloud/common/util/Md5;->md5Transform([B)V
    add-int/lit8 v8, v8, 0x40
    goto :goto_3c
    :cond_50
    move v3, v7
    move v4, v8
    goto :goto_54
    :cond_53
    move v4, v7
    .line 28
    :goto_54
    iget-object v1, p0, Lio/dcloud/common/util/Md5;->buffer:[B
    sub-int v5, p2, v4
    move-object v0, p0
    move-object v2, p1
    invoke-direct/range {v0 .. v5}, Lio/dcloud/common/util/Md5;->md5Memcpy([B[BIII)V
    return-void
.end method
# virtual methods
.method public getMD5ofBytes(Ljava/lang/String;)[B
    .registers 3
    .line 1
    invoke-direct {p0}, Lio/dcloud/common/util/Md5;->md5Init()V
    .line 3
    invoke-virtual {p1}, Ljava/lang/String;->getBytes()[B
    move-result-object p1
    .line 4
    array-length v0, p1
    invoke-direct {p0, p1, v0}, Lio/dcloud/common/util/Md5;->md5Update([BI)V
    .line 5
    invoke-direct {p0}, Lio/dcloud/common/util/Md5;->md5Final()V
    .line 6
    iget-object p1, p0, Lio/dcloud/common/util/Md5;->digest:[B
    return-object p1
.end method
.method public getMD5ofStr(Ljava/lang/String;)Ljava/lang/String;
    .registers 4
    .line 1
    invoke-direct {p0}, Lio/dcloud/common/util/Md5;->md5Init()V
    .line 2
    invoke-virtual {p1}, Ljava/lang/String;->getBytes()[B
    move-result-object v0
    invoke-virtual {p1}, Ljava/lang/String;->length()I
    move-result p1
    invoke-direct {p0, v0, p1}, Lio/dcloud/common/util/Md5;->md5Update([BI)V
    .line 3
    invoke-direct {p0}, Lio/dcloud/common/util/Md5;->md5Final()V
    const-string p1, ""
    .line 4
    iput-object p1, p0, Lio/dcloud/common/util/Md5;->digestHexStr:Ljava/lang/String;
    const/4 p1, 0x0
    :goto_16
    const/16 v0, 0x10
    if-ge p1, v0, :cond_38
    .line 6
    new-instance v0, Ljava/lang/StringBuilder;
    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
    iget-object v1, p0, Lio/dcloud/common/util/Md5;->digestHexStr:Ljava/lang/String;
    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    iget-object v1, p0, Lio/dcloud/common/util/Md5;->digest:[B
    aget-byte v1, v1, p1
    invoke-static {v1}, Lio/dcloud/common/util/Md5;->byteHEX(B)Ljava/lang/String;
    move-result-object v1
    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    move-result-object v0
    iput-object v0, p0, Lio/dcloud/common/util/Md5;->digestHexStr:Ljava/lang/String;
    add-int/lit8 p1, p1, 0x1
    goto :goto_16
    .line 8
    :cond_38
    iget-object p1, p0, Lio/dcloud/common/util/Md5;->digestHexStr:Ljava/lang/String;
    return-object p1
.end method
.method public getMD5ofStream(Ljava/io/InputStream;)[B
    .registers 6
    .line 1
    invoke-direct {p0}, Lio/dcloud/common/util/Md5;->md5Init()V
    const v0, 0xc800
    new-array v1, v0, [B
    :goto_8
    const/4 v2, 0x0
    .line 5
    :try_start_9
    invoke-virtual {p1, v1, v2, v0}, Ljava/io/InputStream;->read([BII)I
    move-result v2
    const/4 v3, -0x1
    if-ne v2, v3, :cond_16
    .line 7
    invoke-direct {p0}, Lio/dcloud/common/util/Md5;->md5Final()V
    .line 8
    iget-object p1, p0, Lio/dcloud/common/util/Md5;->digest:[B
    return-object p1
    .line 11
    :cond_16
    invoke-direct {p0, v1, v2}, Lio/dcloud/common/util/Md5;->md5Update([BI)V
    :try_end_19
    .catch Ljava/io/IOException; {:try_start_9 .. :try_end_19} :catch_1a
    goto :goto_8
    :catch_1a
    move-exception p1
    .line 16
    invoke-virtual {p1}, Ljava/io/IOException;->printStackTrace()V
    const/4 p1, 0x0
    return-object p1
.end method