cdq.smali

.class public Ldxoptimizer/cdq;
.super Ljava/lang/Object;
.source "GZIPUtil.java"


# direct methods
.method public static a(Ljava/io/File;Ljava/io/File;)Z
    .registers 9

    .prologue
    const/4 v3, 0x0

    const/4 v1, 0x0

    const/4 v0, 0x1

    .line 77
    .line 78
    if-eqz p1, :cond_6f

    if-eqz p0, :cond_6f

    invoke-virtual {p0}, Ljava/io/File;->exists()Z

    move-result v2

    if-eqz v2, :cond_6f

    .line 79
    invoke-virtual {p1}, Ljava/io/File;->getParentFile()Ljava/io/File;

    move-result-object v2

    .line 81
    if-nez v2, :cond_42

    move v2, v0

    .line 88
    :goto_14
    if-eqz v2, :cond_6f

    .line 92
    :try_start_16
    new-instance v2, Ljava/io/FileInputStream;

    invoke-direct {v2, p0}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
    :try_end_1b
    .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_1b} :catch_6a
    .catchall {:try_start_16 .. :try_end_1b} :catchall_5c

    .line 93
    :try_start_1b
    new-instance v4, Ljava/util/zip/GZIPOutputStream;

    new-instance v5, Ljava/io/FileOutputStream;

    invoke-direct {v5, p1}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V

    invoke-direct {v4, v5}, Ljava/util/zip/GZIPOutputStream;-><init>(Ljava/io/OutputStream;)V
    :try_end_25
    .catch Ljava/lang/Exception; {:try_start_1b .. :try_end_25} :catch_6d
    .catchall {:try_start_1b .. :try_end_25} :catchall_65

    .line 94
    const/16 v3, 0x1000

    :try_start_27
    new-array v3, v3, [B

    .line 96
    :goto_29
    invoke-virtual {v2, v3}, Ljava/io/FileInputStream;->read([B)I

    move-result v5

    const/4 v6, -0x1

    if-eq v5, v6, :cond_52

    .line 97
    const/4 v6, 0x0

    invoke-virtual {v4, v3, v6, v5}, Ljava/util/zip/GZIPOutputStream;->write([BII)V
    :try_end_34
    .catch Ljava/lang/Exception; {:try_start_27 .. :try_end_34} :catch_35
    .catchall {:try_start_27 .. :try_end_34} :catchall_67

    goto :goto_29

    .line 101
    :catch_35
    move-exception v0

    move-object v3, v4

    .line 102
    :goto_37
    :try_start_37
    invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
    :try_end_3a
    .catchall {:try_start_37 .. :try_end_3a} :catchall_65

    .line 104
    invoke-static {v3}, Ldxoptimizer/cdp;->a(Ljava/io/Closeable;)V

    .line 105
    invoke-static {v2}, Ldxoptimizer/cdp;->a(Ljava/io/Closeable;)V

    move v0, v1

    .line 109
    :goto_41
    return v0

    .line 83
    :cond_42
    invoke-virtual {v2}, Ljava/io/File;->exists()Z

    move-result v4

    if-eqz v4, :cond_4a

    move v2, v0

    .line 84
    goto :goto_14

    .line 85
    :cond_4a
    invoke-virtual {v2}, Ljava/io/File;->mkdirs()Z

    move-result v2

    if-eqz v2, :cond_71

    move v2, v0

    .line 86
    goto :goto_14

    .line 99
    :cond_52
    :try_start_52
    invoke-virtual {v4}, Ljava/util/zip/GZIPOutputStream;->flush()V
    :try_end_55
    .catch Ljava/lang/Exception; {:try_start_52 .. :try_end_55} :catch_35
    .catchall {:try_start_52 .. :try_end_55} :catchall_67

    .line 104
    invoke-static {v4}, Ldxoptimizer/cdp;->a(Ljava/io/Closeable;)V

    .line 105
    invoke-static {v2}, Ldxoptimizer/cdp;->a(Ljava/io/Closeable;)V

    goto :goto_41

    .line 104
    :catchall_5c
    move-exception v0

    move-object v2, v3

    :goto_5e
    invoke-static {v3}, Ldxoptimizer/cdp;->a(Ljava/io/Closeable;)V

    .line 105
    invoke-static {v2}, Ldxoptimizer/cdp;->a(Ljava/io/Closeable;)V

    throw v0

    .line 104
    :catchall_65
    move-exception v0

    goto :goto_5e

    :catchall_67
    move-exception v0

    move-object v3, v4

    goto :goto_5e

    .line 101
    :catch_6a
    move-exception v0

    move-object v2, v3

    goto :goto_37

    :catch_6d
    move-exception v0

    goto :goto_37

    :cond_6f
    move v0, v1

    goto :goto_41

    :cond_71
    move v2, v1

    goto :goto_14
.end method

.method public static a([B)[B
    .registers 4
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    .prologue
    .line 17
    const/4 v2, 0x0

    .line 19
    :try_start_1
    new-instance v0, Ljava/io/ByteArrayOutputStream;

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

    .line 20
    new-instance v1, Ljava/util/zip/GZIPOutputStream;

    invoke-direct {v1, v0}, Ljava/util/zip/GZIPOutputStream;-><init>(Ljava/io/OutputStream;)V
    :try_end_b
    .catchall {:try_start_1 .. :try_end_b} :catchall_1c

    .line 21
    :try_start_b
    invoke-virtual {v1, p0}, Ljava/util/zip/GZIPOutputStream;->write([B)V

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

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

    .line 24
    invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
    :try_end_17
    .catchall {:try_start_b .. :try_end_17} :catchall_22

    move-result-object v0

    .line 26
    invoke-static {v1}, Ldxoptimizer/cdp;->a(Ljava/io/Closeable;)V

    .line 24
    return-object v0

    .line 26
    :catchall_1c
    move-exception v0

    move-object v1, v2

    :goto_1e
    invoke-static {v1}, Ldxoptimizer/cdp;->a(Ljava/io/Closeable;)V

    throw v0

    :catchall_22
    move-exception v0

    goto :goto_1e
.end method

.method public static b([B)[B
    .registers 6
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    .prologue
    .line 124
    new-instance v0, Ljava/util/zip/GZIPInputStream;

    new-instance v1, Ljava/io/ByteArrayInputStream;

    invoke-direct {v1, p0}, Ljava/io/ByteArrayInputStream;-><init>([B)V

    invoke-direct {v0, v1}, Ljava/util/zip/GZIPInputStream;-><init>(Ljava/io/InputStream;)V

    .line 125
    new-instance v1, Ljava/io/ByteArrayOutputStream;

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

    .line 127
    const/16 v2, 0x1000

    new-array v2, v2, [B

    .line 128
    :goto_13
    invoke-virtual {v0, v2}, Ljava/util/zip/GZIPInputStream;->read([B)I

    move-result v3

    const/4 v4, -0x1

    if-eq v3, v4, :cond_1f

    .line 129
    const/4 v4, 0x0

    invoke-virtual {v1, v2, v4, v3}, Ljava/io/ByteArrayOutputStream;->write([BII)V

    goto :goto_13

    .line 131
    :cond_1f
    invoke-virtual {v0}, Ljava/util/zip/GZIPInputStream;->close()V

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

    move-result-object v0

    .line 133
    invoke-virtual {v1}, Ljava/io/ByteArrayOutputStream;->close()V

    .line 134
    return-object v0
.end method