c.smali

.class public final Lcom/hianalytics/android/v1/c;
.super Ljava/lang/Object;

# interfaces
.implements Ljava/lang/Runnable;


# instance fields
.field a:Z

.field private b:Landroid/content/Context;

.field private c:Lorg/json/JSONObject;


# direct methods
.method public constructor <init>(Landroid/content/Context;Lorg/json/JSONObject;Z)V
    .registers 4

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

    iput-object p1, p0, Lcom/hianalytics/android/v1/c;->b:Landroid/content/Context;

    iput-object p2, p0, Lcom/hianalytics/android/v1/c;->c:Lorg/json/JSONObject;

    iput-boolean p3, p0, Lcom/hianalytics/android/v1/c;->a:Z

    return-void
.end method

.method private a([B)Ljava/lang/String;
    .registers 8

    const/4 v4, 0x1

    new-instance v0, Ljava/security/SecureRandom;

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

    invoke-virtual {v0}, Ljava/security/SecureRandom;->nextLong()J

    move-result-wide v0

    const-wide v2, 0x2386f26fc10000L

    rem-long/2addr v0, v2

    const-string v2, "%016d"

    new-array v3, v4, [Ljava/lang/Object;

    const/4 v4, 0x0

    invoke-static {v0, v1}, Ljava/lang/Math;->abs(J)J

    move-result-wide v0

    invoke-static {v0, v1}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;

    move-result-object v0

    aput-object v0, v3, v4

    invoke-static {v2, v3}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

    move-result-object v0

    :try_start_23
    invoke-static {v0, p1}, Lcom/hianalytics/android/b/a/b;->a(Ljava/lang/String;[B)[B

    move-result-object v1

    const-string v2, "UTF-8"

    invoke-virtual {v0, v2}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B

    move-result-object v2

    const-string v0, "24907259431961377209480304447420314675278854956424737688244507998454379688588314890162679979323703303509240796245532111474023047392580178709435281576624542294613207523485034492914828565153172773053351891188090398210811384185501117117991603774176386409127476628856566065613009756131651597266262540467980974946876675842468600552312158771248419700603327630677244315755445967726919102965015263135288381740211593751262078285738436597133664401598420056690274760726854877181978220226448211936820860496708860964018593025172845041095854180953040116559241637133730839837036910305932797451786785855051024967644159284784940216337"

    const-string v3, "65537"

    new-instance v4, Ljava/math/BigInteger;

    invoke-direct {v4, v0}, Ljava/math/BigInteger;-><init>(Ljava/lang/String;)V

    new-instance v0, Ljava/math/BigInteger;

    invoke-direct {v0, v3}, Ljava/math/BigInteger;-><init>(Ljava/lang/String;)V

    const-string v3, "RSA"

    invoke-static {v3}, Ljava/security/KeyFactory;->getInstance(Ljava/lang/String;)Ljava/security/KeyFactory;

    move-result-object v3

    new-instance v5, Ljava/security/spec/RSAPublicKeySpec;

    invoke-direct {v5, v4, v0}, Ljava/security/spec/RSAPublicKeySpec;-><init>(Ljava/math/BigInteger;Ljava/math/BigInteger;)V

    invoke-virtual {v3, v5}, Ljava/security/KeyFactory;->generatePublic(Ljava/security/spec/KeySpec;)Ljava/security/PublicKey;

    move-result-object v0

    check-cast v0, Ljava/security/interfaces/RSAPublicKey;

    if-nez v0, :cond_5a

    new-instance v0, Ljava/io/UnsupportedEncodingException;

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

    throw v0
    :try_end_54
    .catch Ljava/lang/Exception; {:try_start_23 .. :try_end_54} :catch_54

    :catch_54
    move-exception v0

    invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V

    const/4 v0, 0x0

    :goto_59
    return-object v0

    :cond_5a
    :try_start_5a
    const-string v3, "RSA/ECB/OAEPWITHSHA-1ANDMGF1PADDING"

    invoke-static {v3}, Ljavax/crypto/Cipher;->getInstance(Ljava/lang/String;)Ljavax/crypto/Cipher;

    move-result-object v3

    const/4 v4, 0x1

    invoke-virtual {v3, v4, v0}, Ljavax/crypto/Cipher;->init(ILjava/security/Key;)V

    invoke-virtual {v3, v2}, Ljavax/crypto/Cipher;->doFinal([B)[B

    move-result-object v0

    iget-object v2, p0, Lcom/hianalytics/android/v1/c;->b:Landroid/content/Context;

    invoke-static {v2}, Lcom/hianalytics/android/b/a/a;->e(Landroid/content/Context;)Ljava/lang/String;

    move-result-object v2

    new-instance v3, Ljava/lang/StringBuilder;

    const-string v4, "{\"vs\":\""

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

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

    move-result-object v2

    const-string v3, "\",\"ed\":\""

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

    move-result-object v2

    invoke-static {v1}, Lcom/hianalytics/android/b/a/a;->b([B)Ljava/lang/String;

    move-result-object v1

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

    move-result-object v1

    const-string v2, "\",\"ek\":\""

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

    move-result-object v1

    invoke-static {v0}, Lcom/hianalytics/android/b/a/a;->b([B)Ljava/lang/String;

    move-result-object v0

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

    move-result-object v0

    const-string v1, "\"}"

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

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    :try_end_9e
    .catch Ljava/lang/Exception; {:try_start_5a .. :try_end_9e} :catch_54

    move-result-object v0

    goto :goto_59
.end method

.method private a(Lorg/json/JSONObject;Ljava/lang/String;)Z
    .registers 7

    const/4 v0, 0x0

    invoke-virtual {p2}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;

    move-result-object v1

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

    move-result-object v2

    const-string v3, "UTF-8"

    invoke-virtual {v2, v3}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B

    move-result-object v2

    invoke-static {v2}, Lcom/hianalytics/android/b/a/a;->a([B)[B
    :try_end_12
    .catch Ljava/io/UnsupportedEncodingException; {:try_start_5 .. :try_end_12} :catch_16

    move-result-object v2

    if-nez v2, :cond_29

    :cond_15
    :goto_15
    return v0

    :catch_16
    move-exception v1

    new-instance v2, Ljava/lang/StringBuilder;

    const-string v3, "UnsupportedEncodingException:"

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

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

    move-result-object v1

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

    invoke-static {}, Lcom/hianalytics/android/b/a/a;->h()V

    goto :goto_15

    :cond_29
    invoke-direct {p0, v2}, Lcom/hianalytics/android/v1/c;->a([B)Ljava/lang/String;

    move-result-object v2

    if-eqz v2, :cond_15

    :try_start_2f
    const-string v3, "UTF-8"

    invoke-virtual {v2, v3}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B
    :try_end_34
    .catch Ljava/io/UnsupportedEncodingException; {:try_start_2f .. :try_end_34} :catch_45

    move-result-object v2

    const-string v3, "https"

    invoke-virtual {v1, v3}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I

    move-result v1

    if-gez v1, :cond_15

    invoke-static {}, Lcom/hianalytics/android/b/a/a;->h()V

    invoke-static {p2, v2}, Lcom/hianalytics/android/v1/b;->a(Ljava/lang/String;[B)Z

    move-result v0

    goto :goto_15

    :catch_45
    move-exception v1

    new-instance v2, Ljava/lang/StringBuilder;

    const-string v3, "UnsupportedEncodingException:"

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

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

    move-result-object v1

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

    invoke-static {}, Lcom/hianalytics/android/b/a/a;->h()V

    goto :goto_15
.end method


# virtual methods
.method public final run()V
    .registers 19

    :try_start_0
    move-object/from16 v0, p0

    iget-object v2, v0, Lcom/hianalytics/android/v1/c;->c:Lorg/json/JSONObject;

    const-string v3, "type"

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

    move-result-object v2

    if-nez v2, :cond_d

    :cond_c
    :goto_c
    return-void

    :cond_d
    move-object/from16 v0, p0

    iget-object v5, v0, Lcom/hianalytics/android/v1/c;->b:Landroid/content/Context;

    move-object/from16 v0, p0

    iget-object v6, v0, Lcom/hianalytics/android/v1/c;->c:Lorg/json/JSONObject;

    move-object/from16 v0, p0

    iget-boolean v7, v0, Lcom/hianalytics/android/v1/c;->a:Z

    invoke-static {v5}, Lcom/hianalytics/android/a/a/a;->a(Landroid/content/Context;)Ljava/lang/String;

    move-result-object v8

    if-nez v8, :cond_31

    invoke-static {}, Lcom/hianalytics/android/b/a/a;->h()V
    :try_end_22
    .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_22} :catch_23

    goto :goto_c

    :catch_23
    move-exception v2

    invoke-virtual {v2}, Ljava/lang/Exception;->printStackTrace()V

    move-object/from16 v0, p0

    iget-object v2, v0, Lcom/hianalytics/android/v1/c;->b:Landroid/content/Context;

    const-string v3, "cached"

    invoke-static {v2, v3}, Lcom/hianalytics/android/b/a/c;->c(Landroid/content/Context;Ljava/lang/String;)V

    goto :goto_c

    :cond_31
    :try_start_31
    const-string v2, "cached"

    invoke-static {v5, v2}, Lcom/hianalytics/android/b/a/c;->b(Landroid/content/Context;Ljava/lang/String;)Lorg/json/JSONObject;

    move-result-object v4

    new-instance v9, Lorg/json/JSONObject;

    invoke-direct {v9}, Lorg/json/JSONObject;-><init>()V
    :try_end_3c
    .catch Ljava/lang/Exception; {:try_start_31 .. :try_end_3c} :catch_23

    :try_start_3c
    const-string v2, "type"

    invoke-virtual {v6, v2}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v10

    if-eqz v10, :cond_c

    const-string v2, "type"

    invoke-virtual {v6, v2}, Lorg/json/JSONObject;->remove(Ljava/lang/String;)Ljava/lang/Object;

    const/4 v2, 0x1

    if-eqz v4, :cond_6f

    invoke-virtual {v4, v10}, Lorg/json/JSONObject;->isNull(Ljava/lang/String;)Z

    move-result v3

    if-eqz v3, :cond_69

    new-instance v3, Lorg/json/JSONArray;

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

    :goto_57
    if-eqz v7, :cond_7a

    if-eqz v2, :cond_7a

    invoke-static {}, Lcom/hianalytics/android/b/a/a;->h()V
    :try_end_5e
    .catch Lorg/json/JSONException; {:try_start_3c .. :try_end_5e} :catch_5f
    .catch Ljava/lang/Exception; {:try_start_3c .. :try_end_5e} :catch_23

    goto :goto_c

    :catch_5f
    move-exception v2

    :try_start_60
    invoke-virtual {v2}, Lorg/json/JSONException;->printStackTrace()V

    const-string v2, "cached"

    invoke-static {v5, v2}, Lcom/hianalytics/android/b/a/c;->c(Landroid/content/Context;Ljava/lang/String;)V
    :try_end_68
    .catch Ljava/lang/Exception; {:try_start_60 .. :try_end_68} :catch_23

    goto :goto_c

    :cond_69
    const/4 v2, 0x0

    :try_start_6a
    invoke-virtual {v4, v10}, Lorg/json/JSONObject;->getJSONArray(Ljava/lang/String;)Lorg/json/JSONArray;

    move-result-object v3

    goto :goto_57

    :cond_6f
    new-instance v4, Lorg/json/JSONObject;

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

    new-instance v3, Lorg/json/JSONArray;

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

    goto :goto_57

    :cond_7a
    if-nez v7, :cond_7f

    invoke-virtual {v3, v6}, Lorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray;

    :cond_7f
    new-instance v6, Lorg/json/JSONArray;

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

    invoke-virtual {v3}, Lorg/json/JSONArray;->length()I

    move-result v7

    const/4 v2, 0x0

    :goto_89
    add-int/lit8 v11, v7, -0x1

    if-le v2, v11, :cond_98

    invoke-virtual {v6}, Lorg/json/JSONArray;->length()I

    move-result v2

    if-gtz v2, :cond_13d

    invoke-static {}, Lcom/hianalytics/android/b/a/a;->h()V

    goto/16 :goto_c

    :cond_98
    invoke-virtual {v3, v2}, Lorg/json/JSONArray;->getJSONObject(I)Lorg/json/JSONObject;

    move-result-object v11

    const-string v12, "b"

    invoke-virtual {v11, v12}, Lorg/json/JSONObject;->has(Ljava/lang/String;)Z

    move-result v12

    if-eqz v12, :cond_f2

    const-string v12, "b"

    invoke-virtual {v11, v12}, Lorg/json/JSONObject;->getJSONArray(Ljava/lang/String;)Lorg/json/JSONArray;

    move-result-object v12

    if-eqz v12, :cond_eb

    invoke-virtual {v12}, Lorg/json/JSONArray;->length()I

    move-result v13

    if-lez v13, :cond_eb

    invoke-virtual {v12}, Lorg/json/JSONArray;->length()I

    move-result v13

    add-int/lit8 v13, v13, -0x1

    invoke-virtual {v12, v13}, Lorg/json/JSONArray;->getString(I)Ljava/lang/String;

    move-result-object v12

    const-string v13, ","

    invoke-virtual {v12, v13}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;

    move-result-object v12

    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v14

    const-wide/16 v16, 0x3e8

    div-long v14, v14, v16

    const/4 v13, 0x1

    aget-object v13, v12, v13

    invoke-static {v13}, Lcom/hianalytics/android/b/a/a;->a(Ljava/lang/String;)J

    move-result-wide v16

    sub-long v14, v14, v16

    const/4 v13, 0x2

    aget-object v12, v12, v13

    invoke-static {v12}, Ljava/lang/Long;->parseLong(Ljava/lang/String;)J

    move-result-wide v12

    sub-long v12, v14, v12

    invoke-static {}, Lcom/hianalytics/android/b/a/a;->b()Ljava/lang/Long;

    move-result-object v14

    invoke-virtual {v14}, Ljava/lang/Long;->longValue()J

    move-result-wide v14

    cmp-long v12, v12, v14

    if-gez v12, :cond_ee

    invoke-virtual {v6, v11}, Lorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray;

    :cond_eb
    :goto_eb
    add-int/lit8 v2, v2, 0x1

    goto :goto_89

    :cond_ee
    invoke-static {}, Lcom/hianalytics/android/b/a/a;->h()V

    goto :goto_eb

    :cond_f2
    const-string v12, "e"

    invoke-virtual {v11, v12}, Lorg/json/JSONObject;->has(Ljava/lang/String;)Z

    move-result v12

    if-eqz v12, :cond_eb

    const-string v12, "e"

    invoke-virtual {v11, v12}, Lorg/json/JSONObject;->getJSONArray(Ljava/lang/String;)Lorg/json/JSONArray;

    move-result-object v12

    if-eqz v12, :cond_eb

    invoke-virtual {v12}, Lorg/json/JSONArray;->length()I

    move-result v13

    if-lez v13, :cond_eb

    invoke-virtual {v12}, Lorg/json/JSONArray;->length()I

    move-result v13

    add-int/lit8 v13, v13, -0x1

    invoke-virtual {v12, v13}, Lorg/json/JSONArray;->getString(I)Ljava/lang/String;

    move-result-object v12

    const-string v13, ","

    invoke-virtual {v12, v13}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;

    move-result-object v12

    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v14

    const-wide/16 v16, 0x3e8

    div-long v14, v14, v16

    const/4 v13, 0x2

    aget-object v12, v12, v13

    invoke-static {v12}, Lcom/hianalytics/android/b/a/a;->a(Ljava/lang/String;)J

    move-result-wide v12

    sub-long v12, v14, v12

    invoke-static {}, Lcom/hianalytics/android/b/a/a;->b()Ljava/lang/Long;

    move-result-object v14

    invoke-virtual {v14}, Ljava/lang/Long;->longValue()J

    move-result-wide v14

    cmp-long v12, v12, v14

    if-gez v12, :cond_139

    invoke-virtual {v6, v11}, Lorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray;

    goto :goto_eb

    :cond_139
    invoke-static {}, Lcom/hianalytics/android/b/a/a;->h()V

    goto :goto_eb

    :cond_13d
    invoke-virtual {v4, v10}, Lorg/json/JSONObject;->remove(Ljava/lang/String;)Ljava/lang/Object;

    invoke-virtual {v4, v10, v6}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "g"

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

    const-string v2, "s"

    invoke-virtual {v9, v2, v6}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
    :try_end_14d
    .catch Lorg/json/JSONException; {:try_start_6a .. :try_end_14d} :catch_5f
    .catch Ljava/lang/Exception; {:try_start_6a .. :try_end_14d} :catch_23

    :try_start_14d
    new-instance v2, Ljava/lang/StringBuilder;

    const-string v3, "message="

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

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

    move-result-object v3

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

    invoke-static {}, Lcom/hianalytics/android/b/a/a;->h()V

    invoke-static {}, Lcom/hianalytics/android/b/a/a;->i()Ljava/lang/String;

    move-result-object v2

    move-object/from16 v0, p0

    invoke-direct {v0, v9, v2}, Lcom/hianalytics/android/v1/c;->a(Lorg/json/JSONObject;Ljava/lang/String;)Z

    move-result v2

    if-eqz v2, :cond_18e

    const-string v2, "flag"

    invoke-static {v5, v2}, Lcom/hianalytics/android/b/a/c;->a(Landroid/content/Context;Ljava/lang/String;)Landroid/content/SharedPreferences;

    move-result-object v2

    invoke-static {v5}, Lcom/hianalytics/android/b/a/a;->f(Landroid/content/Context;)Z

    move-result v3

    if-eqz v3, :cond_184

    invoke-interface {v2}, Landroid/content/SharedPreferences;->edit()Landroid/content/SharedPreferences$Editor;

    move-result-object v2

    const-string v3, "rom_version"

    sget-object v4, Landroid/os/Build;->DISPLAY:Ljava/lang/String;

    invoke-interface {v2, v3, v4}, Landroid/content/SharedPreferences$Editor;->putString(Ljava/lang/String;Ljava/lang/String;)Landroid/content/SharedPreferences$Editor;

    invoke-interface {v2}, Landroid/content/SharedPreferences$Editor;->commit()Z

    :cond_184
    const-string v2, "cached"

    invoke-static {v5, v2}, Lcom/hianalytics/android/b/a/c;->c(Landroid/content/Context;Ljava/lang/String;)V

    invoke-static {}, Lcom/hianalytics/android/b/a/a;->h()V

    goto/16 :goto_c

    :cond_18e
    const-string v2, "cached"

    invoke-static {v5, v4, v2}, Lcom/hianalytics/android/b/a/c;->a(Landroid/content/Context;Lorg/json/JSONObject;Ljava/lang/String;)V

    invoke-static {}, Lcom/hianalytics/android/b/a/a;->h()V
    :try_end_196
    .catch Ljava/lang/Exception; {:try_start_14d .. :try_end_196} :catch_23

    goto/16 :goto_c
.end method