e.smali

.class public Lcn/jiguang/v/e;
.super Ljava/lang/Object;


# direct methods
.method public static a([Ljava/lang/String;I)Ljava/util/List;
    .registers 11
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "([",
            "Ljava/lang/String;",
            "I)",
            "Ljava/util/List",
            "<",
            "Ljava/lang/String;",
            ">;"
        }
    .end annotation

    const/4 v1, 0x0

    if-eqz p1, :cond_1a6

    new-instance v0, Ljava/util/ArrayList;

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

    :goto_8
    :try_start_8
    invoke-static {}, Ljava/lang/Runtime;->getRuntime()Ljava/lang/Runtime;

    move-result-object v2

    invoke-virtual {v2, p0}, Ljava/lang/Runtime;->exec([Ljava/lang/String;)Ljava/lang/Process;
    :try_end_f
    .catch Ljava/lang/Throwable; {:try_start_8 .. :try_end_f} :catch_69
    .catch Ljava/io/IOException; {:try_start_8 .. :try_end_f} :catch_18e
    .catchall {:try_start_8 .. :try_end_f} :catchall_13e

    move-result-object v3

    :goto_10
    if-eqz p1, :cond_91

    :try_start_12
    new-instance v4, Ljava/io/InputStreamReader;

    invoke-virtual {v3}, Ljava/lang/Process;->getInputStream()Ljava/io/InputStream;

    move-result-object v2

    invoke-direct {v4, v2}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;)V
    :try_end_1b
    .catch Ljava/io/IOException; {:try_start_12 .. :try_end_1b} :catch_196
    .catch Ljava/lang/Throwable; {:try_start_12 .. :try_end_1b} :catch_17e
    .catchall {:try_start_12 .. :try_end_1b} :catchall_16f

    :try_start_1b
    new-instance v2, Ljava/io/BufferedReader;

    invoke-direct {v2, v4}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;)V
    :try_end_20
    .catch Ljava/io/IOException; {:try_start_1b .. :try_end_20} :catch_19e
    .catch Ljava/lang/Throwable; {:try_start_1b .. :try_end_20} :catch_185
    .catchall {:try_start_1b .. :try_end_20} :catchall_172

    :goto_20
    :try_start_20
    invoke-virtual {v2}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;

    move-result-object v1

    if-eqz v1, :cond_93

    invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
    :try_end_29
    .catch Ljava/io/IOException; {:try_start_20 .. :try_end_29} :catch_2a
    .catch Ljava/lang/Throwable; {:try_start_20 .. :try_end_29} :catch_18b
    .catchall {:try_start_20 .. :try_end_29} :catchall_176

    goto :goto_20

    :catch_2a
    move-exception v1

    move-object v8, v3

    move-object v3, v4

    move-object v4, v2

    move-object v2, v8

    :goto_2f
    :try_start_2f
    const-string v5, "JCommonShellHelper"

    new-instance v6, Ljava/lang/StringBuilder;

    invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V

    const-string v7, "executeCommand "

    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v6

    invoke-static {p0}, Ljava/util/Arrays;->toString([Ljava/lang/Object;)Ljava/lang/String;

    move-result-object v7

    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v6

    const-string v7, " exception:"

    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v6

    invoke-virtual {v1}, Ljava/io/IOException;->getMessage()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-static {v5, v1}, Lcn/jiguang/an/a;->d(Ljava/lang/String;Ljava/lang/String;)V
    :try_end_59
    .catchall {:try_start_2f .. :try_end_59} :catchall_179

    if-eqz v4, :cond_5e

    :try_start_5b
    invoke-virtual {v4}, Ljava/io/BufferedReader;->close()V

    :cond_5e
    if-eqz v3, :cond_63

    invoke-virtual {v3}, Ljava/io/InputStreamReader;->close()V
    :try_end_63
    .catch Ljava/io/IOException; {:try_start_5b .. :try_end_63} :catch_c1

    :cond_63
    :goto_63
    if-eqz v2, :cond_68

    invoke-virtual {v2}, Ljava/lang/Process;->destroy()V

    :cond_68
    :goto_68
    return-object v0

    :catch_69
    move-exception v2

    :try_start_6a
    array-length v2, p0

    add-int/lit8 v2, v2, 0x2

    new-array v2, v2, [Ljava/lang/String;

    const/4 v3, 0x2

    new-array v3, v3, [Ljava/lang/String;

    const/4 v4, 0x0

    const-string v5, "/system/bin/sh"

    aput-object v5, v3, v4

    const/4 v4, 0x1

    const-string v5, "-c"

    aput-object v5, v3, v4

    const/4 v4, 0x0

    const/4 v5, 0x0

    array-length v6, v3

    invoke-static {v3, v4, v2, v5, v6}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    const/4 v4, 0x0

    array-length v3, v3

    array-length v5, p0

    invoke-static {p0, v4, v2, v3, v5}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    invoke-static {}, Ljava/lang/Runtime;->getRuntime()Ljava/lang/Runtime;

    move-result-object v3

    invoke-virtual {v3, v2}, Ljava/lang/Runtime;->exec([Ljava/lang/String;)Ljava/lang/Process;
    :try_end_8f
    .catch Ljava/io/IOException; {:try_start_6a .. :try_end_8f} :catch_18e
    .catch Ljava/lang/Throwable; {:try_start_6a .. :try_end_8f} :catch_df
    .catchall {:try_start_6a .. :try_end_8f} :catchall_13e

    move-result-object v3

    goto :goto_10

    :cond_91
    move-object v4, v1

    move-object v2, v1

    :cond_93
    if-eqz v2, :cond_98

    :try_start_95
    invoke-virtual {v2}, Ljava/io/BufferedReader;->close()V

    :cond_98
    if-eqz v4, :cond_9d

    invoke-virtual {v4}, Ljava/io/InputStreamReader;->close()V
    :try_end_9d
    .catch Ljava/io/IOException; {:try_start_95 .. :try_end_9d} :catch_a3

    :cond_9d
    :goto_9d
    if-eqz v3, :cond_68

    invoke-virtual {v3}, Ljava/lang/Process;->destroy()V

    goto :goto_68

    :catch_a3
    move-exception v1

    const-string v2, "JCommonShellHelper"

    new-instance v4, Ljava/lang/StringBuilder;

    invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V

    const-string v5, "executeCommand  exception:"

    invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v4

    invoke-virtual {v1}, Ljava/io/IOException;->getMessage()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-static {v2, v1}, Lcn/jiguang/an/a;->d(Ljava/lang/String;Ljava/lang/String;)V

    goto :goto_9d

    :catch_c1
    move-exception v1

    const-string v3, "JCommonShellHelper"

    new-instance v4, Ljava/lang/StringBuilder;

    invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V

    const-string v5, "executeCommand  exception:"

    invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v4

    invoke-virtual {v1}, Ljava/io/IOException;->getMessage()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-static {v3, v1}, Lcn/jiguang/an/a;->d(Ljava/lang/String;Ljava/lang/String;)V

    goto :goto_63

    :catch_df
    move-exception v2

    move-object v3, v1

    move-object v4, v1

    move-object v8, v2

    move-object v2, v1

    move-object v1, v8

    :goto_e5
    :try_start_e5
    const-string v5, "JCommonShellHelper"

    new-instance v6, Ljava/lang/StringBuilder;

    invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V

    const-string v7, "executeCommand "

    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v6

    invoke-static {p0}, Ljava/util/Arrays;->toString([Ljava/lang/Object;)Ljava/lang/String;

    move-result-object v7

    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v6

    const-string v7, " throwable:"

    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v6

    invoke-virtual {v1}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-static {v5, v1}, Lcn/jiguang/an/a;->d(Ljava/lang/String;Ljava/lang/String;)V
    :try_end_10f
    .catchall {:try_start_e5 .. :try_end_10f} :catchall_176

    if-eqz v2, :cond_114

    :try_start_111
    invoke-virtual {v2}, Ljava/io/BufferedReader;->close()V

    :cond_114
    if-eqz v4, :cond_119

    invoke-virtual {v4}, Ljava/io/InputStreamReader;->close()V
    :try_end_119
    .catch Ljava/io/IOException; {:try_start_111 .. :try_end_119} :catch_120

    :cond_119
    :goto_119
    if-eqz v3, :cond_68

    invoke-virtual {v3}, Ljava/lang/Process;->destroy()V

    goto/16 :goto_68

    :catch_120
    move-exception v1

    const-string v2, "JCommonShellHelper"

    new-instance v4, Ljava/lang/StringBuilder;

    invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V

    const-string v5, "executeCommand  exception:"

    invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v4

    invoke-virtual {v1}, Ljava/io/IOException;->getMessage()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-static {v2, v1}, Lcn/jiguang/an/a;->d(Ljava/lang/String;Ljava/lang/String;)V

    goto :goto_119

    :catchall_13e
    move-exception v0

    move-object v3, v1

    move-object v2, v1

    :goto_141
    if-eqz v2, :cond_146

    :try_start_143
    invoke-virtual {v2}, Ljava/io/BufferedReader;->close()V

    :cond_146
    if-eqz v1, :cond_14b

    invoke-virtual {v1}, Ljava/io/InputStreamReader;->close()V
    :try_end_14b
    .catch Ljava/io/IOException; {:try_start_143 .. :try_end_14b} :catch_151

    :cond_14b
    :goto_14b
    if-eqz v3, :cond_150

    invoke-virtual {v3}, Ljava/lang/Process;->destroy()V

    :cond_150
    throw v0

    :catch_151
    move-exception v1

    const-string v2, "JCommonShellHelper"

    new-instance v4, Ljava/lang/StringBuilder;

    invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V

    const-string v5, "executeCommand  exception:"

    invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v4

    invoke-virtual {v1}, Ljava/io/IOException;->getMessage()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-static {v2, v1}, Lcn/jiguang/an/a;->d(Ljava/lang/String;Ljava/lang/String;)V

    goto :goto_14b

    :catchall_16f
    move-exception v0

    move-object v2, v1

    goto :goto_141

    :catchall_172
    move-exception v0

    move-object v2, v1

    move-object v1, v4

    goto :goto_141

    :catchall_176
    move-exception v0

    move-object v1, v4

    goto :goto_141

    :catchall_179
    move-exception v0

    move-object v1, v3

    move-object v3, v2

    move-object v2, v4

    goto :goto_141

    :catch_17e
    move-exception v2

    move-object v4, v1

    move-object v8, v2

    move-object v2, v1

    move-object v1, v8

    goto/16 :goto_e5

    :catch_185
    move-exception v2

    move-object v8, v2

    move-object v2, v1

    move-object v1, v8

    goto/16 :goto_e5

    :catch_18b
    move-exception v1

    goto/16 :goto_e5

    :catch_18e
    move-exception v2

    move-object v3, v1

    move-object v4, v1

    move-object v8, v2

    move-object v2, v1

    move-object v1, v8

    goto/16 :goto_2f

    :catch_196
    move-exception v2

    move-object v4, v1

    move-object v8, v3

    move-object v3, v1

    move-object v1, v2

    move-object v2, v8

    goto/16 :goto_2f

    :catch_19e
    move-exception v2

    move-object v8, v2

    move-object v2, v3

    move-object v3, v4

    move-object v4, v1

    move-object v1, v8

    goto/16 :goto_2f

    :cond_1a6
    move-object v0, v1

    goto/16 :goto_8
.end method