CompressUtil.smali

.class public Lcom/iwangding/basis/util/CompressUtil;
.super Ljava/lang/Object;
.source "CompressUtil.java"


# static fields
.field private static final TAG:Ljava/lang/String; = "CompressUtil"


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

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

    return-void
.end method

.method public static gunzip(Ljava/lang/String;)Ljava/lang/String;
    .registers 3

    .prologue
    .line 247
    if-nez p0, :cond_4

    .line 248
    const/4 v0, 0x0

    .line 250
    :goto_3
    return-object v0

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

    const/4 v1, 0x0

    invoke-static {p0, v1}, Landroid/util/Base64;->decode(Ljava/lang/String;I)[B

    move-result-object v1

    invoke-static {v1}, Lcom/iwangding/basis/util/CompressUtil;->gunzip([B)[B

    move-result-object v1

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

    goto :goto_3
.end method

.method public static gunzip([B)[B
    .registers 9

    .prologue
    const/4 v0, 0x0

    .line 202
    if-nez p0, :cond_4

    .line 237
    :cond_3
    :goto_3
    return-object v0

    .line 203
    :cond_4
    new-instance v3, Ljava/io/ByteArrayOutputStream;

    invoke-direct {v3}, Ljava/io/ByteArrayOutputStream;-><init>()V

    .line 207
    :try_start_9
    new-instance v2, Ljava/io/ByteArrayInputStream;

    invoke-direct {v2, p0}, Ljava/io/ByteArrayInputStream;-><init>([B)V
    :try_end_e
    .catch Ljava/io/IOException; {:try_start_9 .. :try_end_e} :catch_76
    .catchall {:try_start_9 .. :try_end_e} :catchall_4c

    .line 208
    :try_start_e
    new-instance v1, Ljava/util/zip/GZIPInputStream;

    invoke-direct {v1, v2}, Ljava/util/zip/GZIPInputStream;-><init>(Ljava/io/InputStream;)V
    :try_end_13
    .catch Ljava/io/IOException; {:try_start_e .. :try_end_13} :catch_7a
    .catchall {:try_start_e .. :try_end_13} :catchall_6f

    .line 209
    const/16 v4, 0x400

    :try_start_15
    new-array v4, v4, [B

    .line 211
    :goto_17
    invoke-virtual {v1, v4}, Ljava/util/zip/GZIPInputStream;->read([B)I

    move-result v5

    const/4 v6, -0x1

    if-eq v5, v6, :cond_36

    .line 212
    const/4 v6, 0x0

    invoke-virtual {v3, v4, v6, v5}, Ljava/io/ByteArrayOutputStream;->write([BII)V
    :try_end_22
    .catch Ljava/io/IOException; {:try_start_15 .. :try_end_22} :catch_23
    .catchall {:try_start_15 .. :try_end_22} :catchall_74

    goto :goto_17

    .line 215
    :catch_23
    move-exception v4

    .line 218
    :goto_24
    if-eqz v1, :cond_29

    .line 220
    :try_start_26
    invoke-virtual {v1}, Ljava/util/zip/GZIPInputStream;->close()V
    :try_end_29
    .catch Ljava/io/IOException; {:try_start_26 .. :try_end_29} :catch_65

    .line 224
    :cond_29
    :goto_29
    if-eqz v2, :cond_2e

    .line 226
    :try_start_2b
    invoke-virtual {v2}, Ljava/io/ByteArrayInputStream;->close()V
    :try_end_2e
    .catch Ljava/io/IOException; {:try_start_2b .. :try_end_2e} :catch_67

    .line 230
    :cond_2e
    :goto_2e
    if-eqz v3, :cond_3

    .line 232
    :try_start_30
    invoke-virtual {v3}, Ljava/io/ByteArrayOutputStream;->close()V
    :try_end_33
    .catch Ljava/io/IOException; {:try_start_30 .. :try_end_33} :catch_34

    goto :goto_3

    .line 233
    :catch_34
    move-exception v1

    goto :goto_3

    .line 214
    :cond_36
    :try_start_36
    invoke-virtual {v3}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
    :try_end_39
    .catch Ljava/io/IOException; {:try_start_36 .. :try_end_39} :catch_23
    .catchall {:try_start_36 .. :try_end_39} :catchall_74

    move-result-object v0

    .line 218
    if-eqz v1, :cond_3f

    .line 220
    :try_start_3c
    invoke-virtual {v1}, Ljava/util/zip/GZIPInputStream;->close()V
    :try_end_3f
    .catch Ljava/io/IOException; {:try_start_3c .. :try_end_3f} :catch_61

    .line 224
    :cond_3f
    :goto_3f
    if-eqz v2, :cond_44

    .line 226
    :try_start_41
    invoke-virtual {v2}, Ljava/io/ByteArrayInputStream;->close()V
    :try_end_44
    .catch Ljava/io/IOException; {:try_start_41 .. :try_end_44} :catch_63

    .line 230
    :cond_44
    :goto_44
    if-eqz v3, :cond_3

    .line 232
    :try_start_46
    invoke-virtual {v3}, Ljava/io/ByteArrayOutputStream;->close()V
    :try_end_49
    .catch Ljava/io/IOException; {:try_start_46 .. :try_end_49} :catch_4a

    goto :goto_3

    .line 233
    :catch_4a
    move-exception v1

    goto :goto_3

    .line 218
    :catchall_4c
    move-exception v1

    move-object v2, v0

    move-object v7, v0

    move-object v0, v1

    move-object v1, v7

    :goto_51
    if-eqz v1, :cond_56

    .line 220
    :try_start_53
    invoke-virtual {v1}, Ljava/util/zip/GZIPInputStream;->close()V
    :try_end_56
    .catch Ljava/io/IOException; {:try_start_53 .. :try_end_56} :catch_69

    .line 224
    :cond_56
    :goto_56
    if-eqz v2, :cond_5b

    .line 226
    :try_start_58
    invoke-virtual {v2}, Ljava/io/ByteArrayInputStream;->close()V
    :try_end_5b
    .catch Ljava/io/IOException; {:try_start_58 .. :try_end_5b} :catch_6b

    .line 230
    :cond_5b
    :goto_5b
    if-eqz v3, :cond_60

    .line 232
    :try_start_5d
    invoke-virtual {v3}, Ljava/io/ByteArrayOutputStream;->close()V
    :try_end_60
    .catch Ljava/io/IOException; {:try_start_5d .. :try_end_60} :catch_6d

    .line 236
    :cond_60
    :goto_60
    throw v0

    .line 221
    :catch_61
    move-exception v1

    goto :goto_3f

    .line 227
    :catch_63
    move-exception v1

    goto :goto_44

    .line 221
    :catch_65
    move-exception v1

    goto :goto_29

    .line 227
    :catch_67
    move-exception v1

    goto :goto_2e

    .line 221
    :catch_69
    move-exception v1

    goto :goto_56

    .line 227
    :catch_6b
    move-exception v1

    goto :goto_5b

    .line 233
    :catch_6d
    move-exception v1

    goto :goto_60

    .line 218
    :catchall_6f
    move-exception v1

    move-object v7, v1

    move-object v1, v0

    move-object v0, v7

    goto :goto_51

    :catchall_74
    move-exception v0

    goto :goto_51

    .line 215
    :catch_76
    move-exception v1

    move-object v1, v0

    move-object v2, v0

    goto :goto_24

    :catch_7a
    move-exception v1

    move-object v1, v0

    goto :goto_24
.end method

.method public static gzip(Ljava/lang/String;)Ljava/lang/String;
    .registers 3

    .prologue
    .line 195
    if-eqz p0, :cond_8

    invoke-virtual {p0}, Ljava/lang/String;->length()I

    move-result v0

    if-nez v0, :cond_9

    .line 198
    :cond_8
    :goto_8
    return-object p0

    :cond_9
    invoke-virtual {p0}, Ljava/lang/String;->getBytes()[B

    move-result-object v0

    invoke-static {v0}, Lcom/iwangding/basis/util/CompressUtil;->gzip([B)[B

    move-result-object v0

    const/4 v1, 0x0

    invoke-static {v0, v1}, Landroid/util/Base64;->encodeToString([BI)Ljava/lang/String;

    move-result-object p0

    goto :goto_8
.end method

.method public static gzip([B)[B
    .registers 7

    .prologue
    const/4 v0, 0x0

    .line 162
    if-nez p0, :cond_4

    .line 188
    :cond_3
    :goto_3
    return-object v0

    .line 163
    :cond_4
    new-instance v2, Ljava/io/ByteArrayOutputStream;

    invoke-direct {v2}, Ljava/io/ByteArrayOutputStream;-><init>()V

    .line 166
    :try_start_9
    new-instance v1, Ljava/util/zip/GZIPOutputStream;

    const/16 v3, 0x2000

    invoke-direct {v1, v2, v3}, Ljava/util/zip/GZIPOutputStream;-><init>(Ljava/io/OutputStream;I)V
    :try_end_10
    .catch Ljava/lang/Exception; {:try_start_9 .. :try_end_10} :catch_29
    .catchall {:try_start_9 .. :try_end_10} :catchall_38

    .line 167
    const/4 v3, 0x0

    :try_start_11
    array-length v4, p0

    invoke-virtual {v1, p0, v3, v4}, Ljava/util/zip/GZIPOutputStream;->write([BII)V

    .line 168
    invoke-virtual {v1}, Ljava/util/zip/GZIPOutputStream;->flush()V

    .line 169
    invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
    :try_end_1b
    .catch Ljava/lang/Exception; {:try_start_11 .. :try_end_1b} :catch_51
    .catchall {:try_start_11 .. :try_end_1b} :catchall_4f

    move-result-object v0

    .line 173
    if-eqz v1, :cond_21

    .line 175
    :try_start_1e
    invoke-virtual {v1}, Ljava/util/zip/GZIPOutputStream;->close()V
    :try_end_21
    .catch Ljava/io/IOException; {:try_start_1e .. :try_end_21} :catch_47

    .line 180
    :cond_21
    :goto_21
    if-eqz v2, :cond_3

    .line 182
    :try_start_23
    invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
    :try_end_26
    .catch Ljava/io/IOException; {:try_start_23 .. :try_end_26} :catch_27

    goto :goto_3

    .line 183
    :catch_27
    move-exception v1

    goto :goto_3

    .line 170
    :catch_29
    move-exception v1

    move-object v1, v0

    .line 173
    :goto_2b
    if-eqz v1, :cond_30

    .line 175
    :try_start_2d
    invoke-virtual {v1}, Ljava/util/zip/GZIPOutputStream;->close()V
    :try_end_30
    .catch Ljava/io/IOException; {:try_start_2d .. :try_end_30} :catch_49

    .line 180
    :cond_30
    :goto_30
    if-eqz v2, :cond_3

    .line 182
    :try_start_32
    invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
    :try_end_35
    .catch Ljava/io/IOException; {:try_start_32 .. :try_end_35} :catch_36

    goto :goto_3

    .line 183
    :catch_36
    move-exception v1

    goto :goto_3

    .line 173
    :catchall_38
    move-exception v1

    move-object v5, v1

    move-object v1, v0

    move-object v0, v5

    :goto_3c
    if-eqz v1, :cond_41

    .line 175
    :try_start_3e
    invoke-virtual {v1}, Ljava/util/zip/GZIPOutputStream;->close()V
    :try_end_41
    .catch Ljava/io/IOException; {:try_start_3e .. :try_end_41} :catch_4b

    .line 180
    :cond_41
    :goto_41
    if-eqz v2, :cond_46

    .line 182
    :try_start_43
    invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
    :try_end_46
    .catch Ljava/io/IOException; {:try_start_43 .. :try_end_46} :catch_4d

    .line 187
    :cond_46
    :goto_46
    throw v0

    .line 176
    :catch_47
    move-exception v1

    goto :goto_21

    :catch_49
    move-exception v1

    goto :goto_30

    :catch_4b
    move-exception v1

    goto :goto_41

    .line 183
    :catch_4d
    move-exception v1

    goto :goto_46

    .line 173
    :catchall_4f
    move-exception v0

    goto :goto_3c

    .line 170
    :catch_51
    move-exception v3

    goto :goto_2b
.end method

.method public static unZip([BLjava/lang/String;)[B
    .registers 10

    .prologue
    const/4 v0, 0x0

    .line 71
    if-nez p0, :cond_4

    .line 120
    :cond_3
    :goto_3
    return-object v0

    .line 77
    :cond_4
    :try_start_4
    new-instance v4, Ljava/io/ByteArrayInputStream;

    invoke-direct {v4, p0}, Ljava/io/ByteArrayInputStream;-><init>([B)V
    :try_end_9
    .catch Ljava/lang/Exception; {:try_start_4 .. :try_end_9} :catch_a5
    .catchall {:try_start_4 .. :try_end_9} :catchall_76

    .line 78
    :try_start_9
    new-instance v3, Ljava/util/zip/ZipInputStream;

    invoke-direct {v3, v4}, Ljava/util/zip/ZipInputStream;-><init>(Ljava/io/InputStream;)V
    :try_end_e
    .catch Ljava/lang/Exception; {:try_start_9 .. :try_end_e} :catch_aa
    .catchall {:try_start_9 .. :try_end_e} :catchall_9a

    move-object v1, v0

    .line 80
    :cond_f
    :goto_f
    :try_start_f
    invoke-virtual {v3}, Ljava/util/zip/ZipInputStream;->getNextEntry()Ljava/util/zip/ZipEntry;

    move-result-object v2

    if-eqz v2, :cond_5e

    .line 81
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v5

    if-nez v5, :cond_25

    invoke-virtual {v2}, Ljava/util/zip/ZipEntry;->getName()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v2

    if-eqz v2, :cond_f

    .line 82
    :cond_25
    const/16 v2, 0x400

    new-array v5, v2, [B

    .line 84
    new-instance v2, Ljava/io/ByteArrayOutputStream;

    invoke-direct {v2}, Ljava/io/ByteArrayOutputStream;-><init>()V
    :try_end_2e
    .catch Ljava/lang/Exception; {:try_start_f .. :try_end_2e} :catch_af
    .catchall {:try_start_f .. :try_end_2e} :catchall_a3

    .line 85
    :goto_2e
    const/4 v1, 0x0

    :try_start_2f
    array-length v6, v5

    invoke-virtual {v3, v5, v1, v6}, Ljava/util/zip/ZipInputStream;->read([BII)I

    move-result v1

    const/4 v6, -0x1

    if-eq v1, v6, :cond_52

    .line 86
    const/4 v6, 0x0

    invoke-virtual {v2, v5, v6, v1}, Ljava/io/ByteArrayOutputStream;->write([BII)V
    :try_end_3b
    .catch Ljava/lang/Exception; {:try_start_2f .. :try_end_3b} :catch_3c
    .catchall {:try_start_2f .. :try_end_3b} :catchall_a0

    goto :goto_2e

    .line 95
    :catch_3c
    move-exception v1

    move-object v1, v2

    move-object v2, v3

    move-object v3, v4

    .line 98
    :goto_40
    if-eqz v3, :cond_45

    .line 100
    :try_start_42
    invoke-virtual {v3}, Ljava/io/ByteArrayInputStream;->close()V
    :try_end_45
    .catch Ljava/io/IOException; {:try_start_42 .. :try_end_45} :catch_90

    .line 105
    :cond_45
    :goto_45
    if-eqz v2, :cond_4a

    .line 107
    :try_start_47
    invoke-virtual {v2}, Ljava/util/zip/ZipInputStream;->close()V
    :try_end_4a
    .catch Ljava/io/IOException; {:try_start_47 .. :try_end_4a} :catch_92

    .line 112
    :cond_4a
    :goto_4a
    if-eqz v1, :cond_3

    .line 114
    :try_start_4c
    invoke-virtual {v1}, Ljava/io/ByteArrayOutputStream;->close()V
    :try_end_4f
    .catch Ljava/io/IOException; {:try_start_4c .. :try_end_4f} :catch_50

    goto :goto_3

    .line 115
    :catch_50
    move-exception v1

    goto :goto_3

    .line 88
    :cond_52
    :try_start_52
    invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B

    move-result-object v0

    .line 89
    invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->flush()V

    .line 90
    invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
    :try_end_5c
    .catch Ljava/lang/Exception; {:try_start_52 .. :try_end_5c} :catch_3c
    .catchall {:try_start_52 .. :try_end_5c} :catchall_a0

    move-object v1, v2

    .line 91
    goto :goto_f

    .line 93
    :cond_5e
    :try_start_5e
    invoke-virtual {v3}, Ljava/util/zip/ZipInputStream;->close()V

    .line 94
    invoke-virtual {v4}, Ljava/io/ByteArrayInputStream;->close()V
    :try_end_64
    .catch Ljava/lang/Exception; {:try_start_5e .. :try_end_64} :catch_af
    .catchall {:try_start_5e .. :try_end_64} :catchall_a3

    .line 98
    if-eqz v4, :cond_69

    .line 100
    :try_start_66
    invoke-virtual {v4}, Ljava/io/ByteArrayInputStream;->close()V
    :try_end_69
    .catch Ljava/io/IOException; {:try_start_66 .. :try_end_69} :catch_8c

    .line 105
    :cond_69
    :goto_69
    if-eqz v3, :cond_6e

    .line 107
    :try_start_6b
    invoke-virtual {v3}, Ljava/util/zip/ZipInputStream;->close()V
    :try_end_6e
    .catch Ljava/io/IOException; {:try_start_6b .. :try_end_6e} :catch_8e

    .line 112
    :cond_6e
    :goto_6e
    if-eqz v1, :cond_3

    .line 114
    :try_start_70
    invoke-virtual {v1}, Ljava/io/ByteArrayOutputStream;->close()V
    :try_end_73
    .catch Ljava/io/IOException; {:try_start_70 .. :try_end_73} :catch_74

    goto :goto_3

    .line 115
    :catch_74
    move-exception v1

    goto :goto_3

    .line 98
    :catchall_76
    move-exception v1

    move-object v3, v0

    move-object v4, v0

    move-object v7, v1

    move-object v1, v0

    move-object v0, v7

    :goto_7c
    if-eqz v4, :cond_81

    .line 100
    :try_start_7e
    invoke-virtual {v4}, Ljava/io/ByteArrayInputStream;->close()V
    :try_end_81
    .catch Ljava/io/IOException; {:try_start_7e .. :try_end_81} :catch_94

    .line 105
    :cond_81
    :goto_81
    if-eqz v3, :cond_86

    .line 107
    :try_start_83
    invoke-virtual {v3}, Ljava/util/zip/ZipInputStream;->close()V
    :try_end_86
    .catch Ljava/io/IOException; {:try_start_83 .. :try_end_86} :catch_96

    .line 112
    :cond_86
    :goto_86
    if-eqz v1, :cond_8b

    .line 114
    :try_start_88
    invoke-virtual {v1}, Ljava/io/ByteArrayOutputStream;->close()V
    :try_end_8b
    .catch Ljava/io/IOException; {:try_start_88 .. :try_end_8b} :catch_98

    .line 119
    :cond_8b
    :goto_8b
    throw v0

    .line 101
    :catch_8c
    move-exception v2

    goto :goto_69

    .line 108
    :catch_8e
    move-exception v2

    goto :goto_6e

    .line 101
    :catch_90
    move-exception v3

    goto :goto_45

    .line 108
    :catch_92
    move-exception v2

    goto :goto_4a

    .line 101
    :catch_94
    move-exception v2

    goto :goto_81

    .line 108
    :catch_96
    move-exception v2

    goto :goto_86

    .line 115
    :catch_98
    move-exception v1

    goto :goto_8b

    .line 98
    :catchall_9a
    move-exception v1

    move-object v3, v0

    move-object v7, v0

    move-object v0, v1

    move-object v1, v7

    goto :goto_7c

    :catchall_a0
    move-exception v0

    move-object v1, v2

    goto :goto_7c

    :catchall_a3
    move-exception v0

    goto :goto_7c

    .line 95
    :catch_a5
    move-exception v1

    move-object v1, v0

    move-object v2, v0

    move-object v3, v0

    goto :goto_40

    :catch_aa
    move-exception v1

    move-object v1, v0

    move-object v2, v0

    move-object v3, v4

    goto :goto_40

    :catch_af
    move-exception v2

    move-object v2, v3

    move-object v3, v4

    goto :goto_40
.end method

.method public static final unzip(Ljava/lang/String;)Ljava/lang/String;
    .registers 2

    .prologue
    .line 158
    const-string v0, "zip"

    invoke-static {p0, v0}, Lcom/iwangding/basis/util/CompressUtil;->unzip(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    return-object v0
.end method

.method public static final unzip(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    .registers 4

    .prologue
    const/4 v0, 0x0

    .line 149
    invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-eqz v1, :cond_8

    .line 154
    :cond_7
    :goto_7
    return-object v0

    .line 150
    :cond_8
    const/4 v1, 0x0

    invoke-static {p0, v1}, Landroid/util/Base64;->decode(Ljava/lang/String;I)[B

    move-result-object v1

    invoke-static {v1, p1}, Lcom/iwangding/basis/util/CompressUtil;->unZip([BLjava/lang/String;)[B

    move-result-object v1

    .line 151
    if-eqz v1, :cond_7

    .line 152
    new-instance v0, Ljava/lang/String;

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

    goto :goto_7
.end method

.method public static final zip(Ljava/lang/String;)Ljava/lang/String;
    .registers 2

    .prologue
    .line 139
    const-string v0, "zip"

    invoke-static {p0, v0}, Lcom/iwangding/basis/util/CompressUtil;->zip(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    return-object v0
.end method

.method public static final zip(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    .registers 4

    .prologue
    const/4 v0, 0x0

    .line 130
    invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-eqz v1, :cond_8

    .line 135
    :cond_7
    :goto_7
    return-object v0

    .line 131
    :cond_8
    invoke-virtual {p0}, Ljava/lang/String;->getBytes()[B

    move-result-object v1

    invoke-static {v1, p1}, Lcom/iwangding/basis/util/CompressUtil;->zip([BLjava/lang/String;)[B

    move-result-object v1

    .line 132
    if-eqz v1, :cond_7

    .line 133
    const/4 v0, 0x0

    invoke-static {v1, v0}, Landroid/util/Base64;->encodeToString([BI)Ljava/lang/String;

    move-result-object v0

    goto :goto_7
.end method

.method public static zip([BLjava/lang/String;)[B
    .registers 9

    .prologue
    const/4 v0, 0x0

    .line 27
    if-nez p0, :cond_4

    .line 61
    :cond_3
    :goto_3
    return-object v0

    .line 33
    :cond_4
    :try_start_4
    new-instance v2, Ljava/io/ByteArrayOutputStream;

    invoke-direct {v2}, Ljava/io/ByteArrayOutputStream;-><init>()V
    :try_end_9
    .catch Ljava/lang/Exception; {:try_start_4 .. :try_end_9} :catch_38
    .catchall {:try_start_4 .. :try_end_9} :catchall_48

    .line 34
    :try_start_9
    new-instance v1, Ljava/util/zip/ZipOutputStream;

    invoke-direct {v1, v2}, Ljava/util/zip/ZipOutputStream;-><init>(Ljava/io/OutputStream;)V
    :try_end_e
    .catch Ljava/lang/Exception; {:try_start_9 .. :try_end_e} :catch_67
    .catchall {:try_start_9 .. :try_end_e} :catchall_60

    .line 35
    :try_start_e
    new-instance v3, Ljava/util/zip/ZipEntry;

    invoke-direct {v3, p1}, Ljava/util/zip/ZipEntry;-><init>(Ljava/lang/String;)V

    .line 36
    array-length v4, p0

    int-to-long v4, v4

    invoke-virtual {v3, v4, v5}, Ljava/util/zip/ZipEntry;->setSize(J)V

    .line 37
    invoke-virtual {v1, v3}, Ljava/util/zip/ZipOutputStream;->putNextEntry(Ljava/util/zip/ZipEntry;)V

    .line 38
    invoke-virtual {v1, p0}, Ljava/util/zip/ZipOutputStream;->write([B)V

    .line 39
    invoke-virtual {v1}, Ljava/util/zip/ZipOutputStream;->closeEntry()V

    .line 40
    invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B

    move-result-object v0

    .line 41
    invoke-virtual {v1}, Ljava/util/zip/ZipOutputStream;->close()V

    .line 42
    invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
    :try_end_2b
    .catch Ljava/lang/Exception; {:try_start_e .. :try_end_2b} :catch_6a
    .catchall {:try_start_e .. :try_end_2b} :catchall_65

    .line 46
    if-eqz v2, :cond_30

    .line 48
    :try_start_2d
    invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
    :try_end_30
    .catch Ljava/io/IOException; {:try_start_2d .. :try_end_30} :catch_58

    .line 53
    :cond_30
    :goto_30
    if-eqz v1, :cond_3

    .line 55
    :try_start_32
    invoke-virtual {v1}, Ljava/util/zip/ZipOutputStream;->close()V
    :try_end_35
    .catch Ljava/io/IOException; {:try_start_32 .. :try_end_35} :catch_36

    goto :goto_3

    .line 56
    :catch_36
    move-exception v1

    goto :goto_3

    .line 43
    :catch_38
    move-exception v1

    move-object v1, v0

    move-object v2, v0

    .line 46
    :goto_3b
    if-eqz v2, :cond_40

    .line 48
    :try_start_3d
    invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
    :try_end_40
    .catch Ljava/io/IOException; {:try_start_3d .. :try_end_40} :catch_5a

    .line 53
    :cond_40
    :goto_40
    if-eqz v1, :cond_3

    .line 55
    :try_start_42
    invoke-virtual {v1}, Ljava/util/zip/ZipOutputStream;->close()V
    :try_end_45
    .catch Ljava/io/IOException; {:try_start_42 .. :try_end_45} :catch_46

    goto :goto_3

    .line 56
    :catch_46
    move-exception v1

    goto :goto_3

    .line 46
    :catchall_48
    move-exception v1

    move-object v2, v0

    move-object v6, v0

    move-object v0, v1

    move-object v1, v6

    :goto_4d
    if-eqz v2, :cond_52

    .line 48
    :try_start_4f
    invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
    :try_end_52
    .catch Ljava/io/IOException; {:try_start_4f .. :try_end_52} :catch_5c

    .line 53
    :cond_52
    :goto_52
    if-eqz v1, :cond_57

    .line 55
    :try_start_54
    invoke-virtual {v1}, Ljava/util/zip/ZipOutputStream;->close()V
    :try_end_57
    .catch Ljava/io/IOException; {:try_start_54 .. :try_end_57} :catch_5e

    .line 60
    :cond_57
    :goto_57
    throw v0

    .line 49
    :catch_58
    move-exception v2

    goto :goto_30

    :catch_5a
    move-exception v2

    goto :goto_40

    :catch_5c
    move-exception v2

    goto :goto_52

    .line 56
    :catch_5e
    move-exception v1

    goto :goto_57

    .line 46
    :catchall_60
    move-exception v1

    move-object v6, v1

    move-object v1, v0

    move-object v0, v6

    goto :goto_4d

    :catchall_65
    move-exception v0

    goto :goto_4d

    .line 43
    :catch_67
    move-exception v1

    move-object v1, v0

    goto :goto_3b

    :catch_6a
    move-exception v3

    goto :goto_3b
.end method