c.smali

.class public Lcom/pgl/sys/ces/a/c;
.super Ljava/lang/Object;


# static fields
.field private static final a:Ljava/io/FileFilter;


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

    new-instance v0, Lcom/pgl/sys/ces/a/b;

    invoke-direct {v0}, Lcom/pgl/sys/ces/a/b;-><init>()V

    sput-object v0, Lcom/pgl/sys/ces/a/c;->a:Ljava/io/FileFilter;

    return-void
.end method

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

    new-instance v0, Lorg/json/JSONObject;

    invoke-direct {v0}, Lorg/json/JSONObject;-><init>()V

    :try_start_5
    invoke-static {}, Lcom/pgl/sys/ces/a/c;->b()Ljava/util/HashMap;

    move-result-object v1

    const-string v2, "core"

    invoke-static {}, Lcom/pgl/sys/ces/a/c;->c()I

    move-result v3

    invoke-virtual {v0, v2, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;

    const-string v2, "Hardware"

    invoke-static {v1, v2}, Lcom/pgl/sys/ces/a/c;->a(Ljava/util/HashMap;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v2

    const-string v3, "hw"

    invoke-virtual {v0, v3, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "max"

    const-string v3, "/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq"

    invoke-static {v3}, Lcom/pgl/sys/ces/a/c;->a(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v0, v2, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "min"

    const-string v3, "/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq"

    invoke-static {v3}, Lcom/pgl/sys/ces/a/c;->a(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v0, v2, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "Features"

    invoke-static {v1, v2}, Lcom/pgl/sys/ces/a/c;->a(Ljava/util/HashMap;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v1

    const-string v2, "ft"

    invoke-virtual {v0, v2, v1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
    :try_end_3e
    .catch Ljava/lang/Throwable; {:try_start_5 .. :try_end_3e} :catch_3e

    :catch_3e
    invoke-virtual {v0}, Lorg/json/JSONObject;->toString()Ljava/lang/String;

    move-result-object v0

    if-nez v0, :cond_47

    const-string v0, "{}"

    goto :goto_4b

    :cond_47
    invoke-virtual {v0}, Ljava/lang/String;->trim()Ljava/lang/String;

    move-result-object v0

    :goto_4b
    return-object v0
.end method

.method private static a(Ljava/lang/String;)Ljava/lang/String;
    .registers 4

    const/4 v0, 0x0

    :try_start_1
    new-instance v1, Ljava/io/FileReader;

    invoke-direct {v1, p0}, Ljava/io/FileReader;-><init>(Ljava/lang/String;)V
    :try_end_6
    .catch Ljava/lang/Throwable; {:try_start_1 .. :try_end_6} :catch_30
    .catchall {:try_start_1 .. :try_end_6} :catchall_21

    :try_start_6
    new-instance p0, Ljava/io/BufferedReader;

    invoke-direct {p0, v1}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;)V
    :try_end_b
    .catch Ljava/lang/Throwable; {:try_start_6 .. :try_end_b} :catch_1f
    .catchall {:try_start_6 .. :try_end_b} :catchall_1d

    :try_start_b
    invoke-virtual {p0}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;

    move-result-object v0
    :try_end_f
    .catch Ljava/lang/Throwable; {:try_start_b .. :try_end_f} :catch_1b
    .catchall {:try_start_b .. :try_end_f} :catchall_16

    :try_start_f
    invoke-virtual {p0}, Ljava/io/BufferedReader;->close()V
    :try_end_12
    .catch Ljava/lang/Throwable; {:try_start_f .. :try_end_12} :catch_12

    :catch_12
    :goto_12
    :try_start_12
    invoke-virtual {v1}, Ljava/io/FileReader;->close()V
    :try_end_15
    .catch Ljava/lang/Throwable; {:try_start_12 .. :try_end_15} :catch_3c

    goto :goto_3c

    :catchall_16
    move-exception v0

    move-object v2, v0

    move-object v0, p0

    move-object p0, v2

    goto :goto_23

    :catch_1b
    nop

    goto :goto_32

    :catchall_1d
    move-exception p0

    goto :goto_23

    :catch_1f
    move-object p0, v0

    goto :goto_32

    :catchall_21
    move-exception p0

    move-object v1, v0

    :goto_23
    if-eqz v0, :cond_2a

    :try_start_25
    invoke-virtual {v0}, Ljava/io/BufferedReader;->close()V
    :try_end_28
    .catch Ljava/lang/Throwable; {:try_start_25 .. :try_end_28} :catch_29

    goto :goto_2a

    :catch_29
    nop

    :cond_2a
    :goto_2a
    if-eqz v1, :cond_2f

    :try_start_2c
    invoke-virtual {v1}, Ljava/io/FileReader;->close()V
    :try_end_2f
    .catch Ljava/lang/Throwable; {:try_start_2c .. :try_end_2f} :catch_2f

    :catch_2f
    :cond_2f
    throw p0

    :catch_30
    move-object p0, v0

    move-object v1, p0

    :goto_32
    if-eqz p0, :cond_39

    :try_start_34
    invoke-virtual {p0}, Ljava/io/BufferedReader;->close()V
    :try_end_37
    .catch Ljava/lang/Throwable; {:try_start_34 .. :try_end_37} :catch_38

    goto :goto_39

    :catch_38
    nop

    :cond_39
    :goto_39
    if-eqz v1, :cond_3c

    goto :goto_12

    :catch_3c
    :cond_3c
    :goto_3c
    if-nez v0, :cond_41

    const-string p0, "0"

    goto :goto_45

    :cond_41
    invoke-virtual {v0}, Ljava/lang/String;->trim()Ljava/lang/String;

    move-result-object p0

    :goto_45
    return-object p0
.end method

.method private static a(Ljava/util/HashMap;Ljava/lang/String;)Ljava/lang/String;
    .registers 2
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/HashMap<",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            ">;",
            "Ljava/lang/String;",
            ")",
            "Ljava/lang/String;"
        }
    .end annotation

    :try_start_0
    invoke-virtual {p0, p1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p0

    check-cast p0, Ljava/lang/String;
    :try_end_6
    .catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_6} :catch_7

    goto :goto_8

    :catch_7
    const/4 p0, 0x0

    :goto_8
    if-nez p0, :cond_d

    const-string p0, ""

    goto :goto_11

    :cond_d
    invoke-virtual {p0}, Ljava/lang/String;->trim()Ljava/lang/String;

    move-result-object p0

    :goto_11
    return-object p0
.end method

.method private static b()Ljava/util/HashMap;
    .registers 6
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "()",
            "Ljava/util/HashMap<",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            ">;"
        }
    .end annotation

    new-instance v0, Ljava/util/HashMap;

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

    const/4 v1, 0x0

    :try_start_6
    new-instance v2, Ljava/io/FileReader;

    const-string v3, "/proc/cpuinfo"

    invoke-direct {v2, v3}, Ljava/io/FileReader;-><init>(Ljava/lang/String;)V
    :try_end_d
    .catch Ljava/lang/Throwable; {:try_start_6 .. :try_end_d} :catch_5c
    .catchall {:try_start_6 .. :try_end_d} :catchall_4c

    :try_start_d
    new-instance v3, Ljava/io/BufferedReader;

    invoke-direct {v3, v2}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;)V
    :try_end_12
    .catch Ljava/lang/Throwable; {:try_start_d .. :try_end_12} :catch_4a
    .catchall {:try_start_d .. :try_end_12} :catchall_47

    :goto_12
    :try_start_12
    invoke-virtual {v3}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;

    move-result-object v1
    :try_end_16
    .catch Ljava/lang/Throwable; {:try_start_12 .. :try_end_16} :catch_45
    .catchall {:try_start_12 .. :try_end_16} :catchall_43

    if-nez v1, :cond_1f

    :try_start_18
    invoke-virtual {v3}, Ljava/io/BufferedReader;->close()V
    :try_end_1b
    .catch Ljava/lang/Throwable; {:try_start_18 .. :try_end_1b} :catch_1b

    :catch_1b
    :goto_1b
    :try_start_1b
    invoke-virtual {v2}, Ljava/io/FileReader;->close()V
    :try_end_1e
    .catch Ljava/lang/Throwable; {:try_start_1b .. :try_end_1e} :catch_68

    goto :goto_68

    :cond_1f
    :try_start_1f
    const-string v4, ":"

    const/4 v5, 0x2

    invoke-virtual {v1, v4, v5}, Ljava/lang/String;->split(Ljava/lang/String;I)[Ljava/lang/String;

    move-result-object v1

    array-length v4, v1

    if-ge v4, v5, :cond_2a

    goto :goto_12

    :cond_2a
    const/4 v4, 0x0

    aget-object v4, v1, v4

    invoke-virtual {v4}, Ljava/lang/String;->trim()Ljava/lang/String;

    move-result-object v4

    const/4 v5, 0x1

    aget-object v1, v1, v5

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

    move-result-object v1

    invoke-virtual {v0, v4}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v5

    if-eqz v5, :cond_3f

    goto :goto_12

    :cond_3f
    invoke-virtual {v0, v4, v1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    :try_end_42
    .catch Ljava/lang/Throwable; {:try_start_1f .. :try_end_42} :catch_45
    .catchall {:try_start_1f .. :try_end_42} :catchall_43

    goto :goto_12

    :catchall_43
    move-exception v0

    goto :goto_4f

    :catch_45
    nop

    goto :goto_5e

    :catchall_47
    move-exception v0

    move-object v3, v1

    goto :goto_4f

    :catch_4a
    move-object v3, v1

    goto :goto_5e

    :catchall_4c
    move-exception v0

    move-object v2, v1

    move-object v3, v2

    :goto_4f
    if-eqz v3, :cond_56

    :try_start_51
    invoke-virtual {v3}, Ljava/io/BufferedReader;->close()V
    :try_end_54
    .catch Ljava/lang/Throwable; {:try_start_51 .. :try_end_54} :catch_55

    goto :goto_56

    :catch_55
    nop

    :cond_56
    :goto_56
    if-eqz v2, :cond_5b

    :try_start_58
    invoke-virtual {v2}, Ljava/io/FileReader;->close()V
    :try_end_5b
    .catch Ljava/lang/Throwable; {:try_start_58 .. :try_end_5b} :catch_5b

    :catch_5b
    :cond_5b
    throw v0

    :catch_5c
    move-object v2, v1

    move-object v3, v2

    :goto_5e
    if-eqz v3, :cond_65

    :try_start_60
    invoke-virtual {v3}, Ljava/io/BufferedReader;->close()V
    :try_end_63
    .catch Ljava/lang/Throwable; {:try_start_60 .. :try_end_63} :catch_64

    goto :goto_65

    :catch_64
    nop

    :cond_65
    :goto_65
    if-eqz v2, :cond_68

    goto :goto_1b

    :catch_68
    :cond_68
    :goto_68
    return-object v0
.end method

.method private static c()I
    .registers 2

    :try_start_0
    new-instance v0, Ljava/io/File;

    const-string v1, "/sys/devices/system/cpu/"

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

    sget-object v1, Lcom/pgl/sys/ces/a/c;->a:Ljava/io/FileFilter;

    invoke-virtual {v0, v1}, Ljava/io/File;->listFiles(Ljava/io/FileFilter;)[Ljava/io/File;

    move-result-object v0

    array-length v0, v0
    :try_end_e
    .catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_e} :catch_f

    goto :goto_10

    :catch_f
    const/4 v0, -0x1

    :goto_10
    return v0
.end method