l.smali

.class public Lcn/jiguang/ah/l;
.super Ljava/lang/Object;


# static fields
.field private static a:Lcn/jiguang/ah/l;

.field private static e:I


# instance fields
.field private final b:Ljava/util/concurrent/atomic/AtomicBoolean;

.field private final c:Ljava/util/Map;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/Map",
            "<",
            "Lcn/jiguang/af/h;",
            "Landroid/util/Pair",
            "<",
            "Ljava/lang/Integer;",
            "Lcn/jiguang/an/a;",
            ">;>;"
        }
    .end annotation
.end field

.field private final d:Ljava/util/Map;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/Map",
            "<",
            "Lcn/jiguang/af/h;",
            "Landroid/util/SparseArray",
            "<",
            "Lcn/jiguang/ah/n;",
            ">;>;"
        }
    .end annotation
.end field

.field private f:Ljava/util/Map;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/Map",
            "<",
            "Ljava/lang/String;",
            "Ljava/util/Set",
            "<",
            "Lcn/jiguang/af/h;",
            ">;>;"
        }
    .end annotation
.end field


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

    const/4 v0, 0x0

    sput v0, Lcn/jiguang/ah/l;->e:I

    return-void
.end method

.method private constructor <init>()V
    .registers 3

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

    new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean;

    const/4 v1, 0x0

    invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;-><init>(Z)V

    iput-object v0, p0, Lcn/jiguang/ah/l;->b:Ljava/util/concurrent/atomic/AtomicBoolean;

    new-instance v0, Ljava/util/HashMap;

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

    iput-object v0, p0, Lcn/jiguang/ah/l;->c:Ljava/util/Map;

    new-instance v0, Ljava/util/concurrent/ConcurrentHashMap;

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

    iput-object v0, p0, Lcn/jiguang/ah/l;->d:Ljava/util/Map;

    new-instance v0, Ljava/util/HashMap;

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

    iput-object v0, p0, Lcn/jiguang/ah/l;->f:Ljava/util/Map;

    return-void
.end method

.method private static declared-synchronized a(Landroid/content/Context;)I
    .registers 6

    const-class v1, Lcn/jiguang/ah/l;

    monitor-enter v1

    :try_start_3
    invoke-static {}, Lcn/jiguang/ae/b;->o()Lcn/jiguang/ae/b;

    move-result-object v0

    invoke-static {p0, v0}, Lcn/jiguang/ae/c;->b(Landroid/content/Context;Lcn/jiguang/ae/b;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/lang/Integer;

    if-nez v0, :cond_22

    new-instance v0, Ljava/security/SecureRandom;

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

    const/16 v2, 0x2710

    invoke-virtual {v0, v2}, Ljava/security/SecureRandom;->nextInt(I)I

    move-result v0

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

    move-result v0

    invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v0

    :cond_22
    invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I

    move-result v0

    add-int/lit8 v0, v0, 0x1

    rem-int/lit16 v0, v0, 0x2710

    invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v0

    const/4 v2, 0x1

    new-array v2, v2, [Lcn/jiguang/ae/b;

    const/4 v3, 0x0

    invoke-static {}, Lcn/jiguang/ae/b;->o()Lcn/jiguang/ae/b;

    move-result-object v4

    invoke-virtual {v4, v0}, Lcn/jiguang/ae/b;->a(Ljava/lang/Object;)Lcn/jiguang/ae/b;

    move-result-object v4

    aput-object v4, v2, v3

    invoke-static {p0, v2}, Lcn/jiguang/ae/c;->a(Landroid/content/Context;[Lcn/jiguang/ae/b;)V

    invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
    :try_end_42
    .catchall {:try_start_3 .. :try_end_42} :catchall_45

    move-result v0

    monitor-exit v1

    return v0

    :catchall_45
    move-exception v0

    monitor-exit v1

    throw v0
.end method

.method public static a()Lcn/jiguang/ah/l;
    .registers 2

    sget-object v0, Lcn/jiguang/ah/l;->a:Lcn/jiguang/ah/l;

    if-nez v0, :cond_13

    const-class v1, Lcn/jiguang/ah/l;

    monitor-enter v1

    :try_start_7
    sget-object v0, Lcn/jiguang/ah/l;->a:Lcn/jiguang/ah/l;

    if-nez v0, :cond_12

    new-instance v0, Lcn/jiguang/ah/l;

    invoke-direct {v0}, Lcn/jiguang/ah/l;-><init>()V

    sput-object v0, Lcn/jiguang/ah/l;->a:Lcn/jiguang/ah/l;

    :cond_12
    monitor-exit v1
    :try_end_13
    .catchall {:try_start_7 .. :try_end_13} :catchall_16

    :cond_13
    sget-object v0, Lcn/jiguang/ah/l;->a:Lcn/jiguang/ah/l;

    return-object v0

    :catchall_16
    move-exception v0

    :try_start_17
    monitor-exit v1
    :try_end_18
    .catchall {:try_start_17 .. :try_end_18} :catchall_16

    throw v0
.end method

.method public static a(Landroid/content/Context;Lorg/json/JSONObject;[BILjava/io/File;Ljava/util/Set;Lcn/jiguang/api/ReportCallBack;)Lcn/jiguang/ah/n;
    .registers 9
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Landroid/content/Context;",
            "Lorg/json/JSONObject;",
            "[BI",
            "Ljava/io/File;",
            "Ljava/util/Set",
            "<",
            "Ljava/lang/String;",
            ">;",
            "Lcn/jiguang/api/ReportCallBack;",
            ")",
            "Lcn/jiguang/ah/n;"
        }
    .end annotation

    new-instance v0, Lcn/jiguang/ah/n;

    invoke-direct {v0}, Lcn/jiguang/ah/n;-><init>()V

    iput-object p1, v0, Lcn/jiguang/ah/n;->b:Lorg/json/JSONObject;

    iput p3, v0, Lcn/jiguang/ah/n;->a:I

    iput-object p2, v0, Lcn/jiguang/ah/n;->c:[B

    iput-object p4, v0, Lcn/jiguang/ah/n;->d:Ljava/io/File;

    iput-object p5, v0, Lcn/jiguang/ah/n;->e:Ljava/util/Set;

    invoke-static {p0}, Lcn/jiguang/ah/l;->a(Landroid/content/Context;)I

    move-result v1

    iput v1, v0, Lcn/jiguang/ah/n;->f:I

    iput-object p6, v0, Lcn/jiguang/ah/n;->j:Lcn/jiguang/api/ReportCallBack;

    return-object v0
.end method

.method private a(Lcn/jiguang/af/h;I)Lcn/jiguang/ah/n;
    .registers 5

    const/4 v1, 0x0

    if-eqz p1, :cond_16

    iget-object v0, p0, Lcn/jiguang/ah/l;->d:Ljava/util/Map;

    invoke-interface {v0, p1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Landroid/util/SparseArray;

    if-eqz v0, :cond_16

    invoke-virtual {v0, p2}, Landroid/util/SparseArray;->get(I)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Lcn/jiguang/ah/n;

    invoke-virtual {v0, p2}, Landroid/util/SparseArray;->remove(I)V

    :cond_16
    return-object v1
.end method

.method static synthetic a(Lcn/jiguang/ah/l;Lcn/jiguang/af/h;I)Lcn/jiguang/ah/n;
    .registers 4

    invoke-direct {p0, p1, p2}, Lcn/jiguang/ah/l;->a(Lcn/jiguang/af/h;I)Lcn/jiguang/ah/n;

    move-result-object v0

    return-object v0
.end method

.method private a(Landroid/content/Context;Ljava/util/Set;)Ljava/util/Set;
    .registers 8
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Landroid/content/Context;",
            "Ljava/util/Set",
            "<",
            "Ljava/lang/String;",
            ">;)",
            "Ljava/util/Set",
            "<",
            "Lcn/jiguang/af/h;",
            ">;"
        }
    .end annotation

    iget-object v0, p0, Lcn/jiguang/ah/l;->f:Ljava/util/Map;

    if-eqz v0, :cond_c

    iget-object v0, p0, Lcn/jiguang/ah/l;->f:Ljava/util/Map;

    invoke-interface {v0}, Ljava/util/Map;->isEmpty()Z

    move-result v0

    if-eqz v0, :cond_24

    :cond_c
    invoke-static {}, Lcn/jiguang/ae/b;->x()Lcn/jiguang/ae/b;

    move-result-object v0

    invoke-static {p1, v0}, Lcn/jiguang/ae/c;->a(Landroid/content/Context;Lcn/jiguang/ae/b;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/lang/String;

    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-nez v1, :cond_24

    :try_start_1c
    new-instance v1, Lorg/json/JSONObject;

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

    invoke-direct {p0, v1}, Lcn/jiguang/ah/l;->a(Lorg/json/JSONObject;)V
    :try_end_24
    .catch Lorg/json/JSONException; {:try_start_1c .. :try_end_24} :catch_12d

    :cond_24
    :goto_24
    if-eqz p2, :cond_2c

    invoke-interface {p2}, Ljava/util/Set;->isEmpty()Z

    move-result v0

    if-eqz v0, :cond_37

    :cond_2c
    iget-object v0, p0, Lcn/jiguang/ah/l;->f:Ljava/util/Map;

    const-string v1, "normal"

    invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/util/Set;

    :goto_36
    return-object v0

    :cond_37
    const/4 v1, 0x0

    invoke-interface {p2}, Ljava/util/Set;->iterator()Ljava/util/Iterator;

    move-result-object v3

    :goto_3c
    invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z

    move-result v0

    if-eqz v0, :cond_12a

    invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/lang/String;

    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v2

    if-eqz v2, :cond_6b

    const-string v0, "normal"

    :cond_50
    :goto_50
    iget-object v2, p0, Lcn/jiguang/ah/l;->f:Ljava/util/Map;

    invoke-interface {v2, v0}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/util/Set;

    if-eqz v0, :cond_60

    invoke-interface {v0}, Ljava/util/Set;->isEmpty()Z

    move-result v2

    if-eqz v2, :cond_10e

    :cond_60
    iget-object v0, p0, Lcn/jiguang/ah/l;->f:Ljava/util/Map;

    const-string v1, "normal"

    invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/util/Set;

    goto :goto_36

    :cond_6b
    const/4 v2, -0x1

    invoke-virtual {v0}, Ljava/lang/String;->hashCode()I

    move-result v4

    sparse-switch v4, :sswitch_data_130

    :cond_73
    :goto_73
    packed-switch v2, :pswitch_data_162

    iget-object v2, p0, Lcn/jiguang/ah/l;->f:Ljava/util/Map;

    invoke-interface {v2, v0}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z

    move-result v2

    if-nez v2, :cond_50

    const-string v0, "normal"

    goto :goto_50

    :sswitch_81
    const-string v4, "android_awake2"

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

    move-result v4

    if-eqz v4, :cond_73

    const/4 v2, 0x0

    goto :goto_73

    :sswitch_8b
    const-string v4, "android_awake"

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

    move-result v4

    if-eqz v4, :cond_73

    const/4 v2, 0x1

    goto :goto_73

    :sswitch_95
    const-string v4, "android_awake_target2"

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

    move-result v4

    if-eqz v4, :cond_73

    const/4 v2, 0x2

    goto :goto_73

    :sswitch_9f
    const-string v4, "android_awake_target"

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

    move-result v4

    if-eqz v4, :cond_73

    const/4 v2, 0x3

    goto :goto_73

    :sswitch_a9
    const-string v4, "awake"

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

    move-result v4

    if-eqz v4, :cond_73

    const/4 v2, 0x4

    goto :goto_73

    :sswitch_b3
    const-string v4, "active_launch"

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

    move-result v4

    if-eqz v4, :cond_73

    const/4 v2, 0x5

    goto :goto_73

    :sswitch_bd
    const-string v4, "active_terminate"

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

    move-result v4

    if-eqz v4, :cond_73

    const/4 v2, 0x6

    goto :goto_73

    :sswitch_c7
    const-string v4, "active_user"

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

    move-result v4

    if-eqz v4, :cond_73

    const/4 v2, 0x7

    goto :goto_73

    :sswitch_d1
    const-string v4, "identify_account"

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

    move-result v4

    if-eqz v4, :cond_73

    const/16 v2, 0x8

    goto :goto_73

    :sswitch_dc
    const-string v4, "detach_account"

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

    move-result v4

    if-eqz v4, :cond_73

    const/16 v2, 0x9

    goto :goto_73

    :sswitch_e7
    const-string v4, "account"

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

    move-result v4

    if-eqz v4, :cond_73

    const/16 v2, 0xa

    goto :goto_73

    :sswitch_f2
    const-string v4, "normal"

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

    move-result v4

    if-eqz v4, :cond_73

    const/16 v2, 0xb

    goto/16 :goto_73

    :pswitch_fe
    const-string v0, "awake"

    goto/16 :goto_50

    :pswitch_102
    const-string v0, "active_user"

    goto/16 :goto_50

    :pswitch_106
    const-string v0, "account"

    goto/16 :goto_50

    :pswitch_10a
    const-string v0, "normal"

    goto/16 :goto_50

    :cond_10e
    if-nez v1, :cond_122

    :goto_110
    invoke-interface {v0}, Ljava/util/Set;->isEmpty()Z

    move-result v1

    if-eqz v1, :cond_127

    iget-object v0, p0, Lcn/jiguang/ah/l;->f:Ljava/util/Map;

    const-string v1, "normal"

    invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/util/Set;

    goto/16 :goto_36

    :cond_122
    invoke-interface {v1, v0}, Ljava/util/Set;->retainAll(Ljava/util/Collection;)Z

    move-object v0, v1

    goto :goto_110

    :cond_127
    move-object v1, v0

    goto/16 :goto_3c

    :cond_12a
    move-object v0, v1

    goto/16 :goto_36

    :catch_12d
    move-exception v0

    goto/16 :goto_24

    :sswitch_data_130
    .sparse-switch
        -0x4a3c30f4 -> :sswitch_b3
        -0x462c75d3 -> :sswitch_e7
        -0x410ad9c9 -> :sswitch_95
        -0x3ea9669c -> :sswitch_c7
        -0x3df94319 -> :sswitch_f2
        -0x30eb5798 -> :sswitch_bd
        -0x2959bc4b -> :sswitch_8b
        -0x1ddcce3 -> :sswitch_81
        0x58e7985 -> :sswitch_a9
        0x36120581 -> :sswitch_dc
        0x507b855b -> :sswitch_9f
        0x75a1d3fa -> :sswitch_d1
    .end sparse-switch

    :pswitch_data_162
    .packed-switch 0x0
        :pswitch_fe
        :pswitch_fe
        :pswitch_fe
        :pswitch_fe
        :pswitch_fe
        :pswitch_102
        :pswitch_102
        :pswitch_102
        :pswitch_106
        :pswitch_106
        :pswitch_106
        :pswitch_10a
    .end packed-switch
.end method

.method private a(Landroid/content/Context;ILcn/jiguang/an/a;Lcn/jiguang/af/h;Lcn/jiguang/ah/n;)V
    .registers 15

    iget-object v2, p5, Lcn/jiguang/ah/n;->c:[B

    iget v3, p5, Lcn/jiguang/ah/n;->a:I

    iget v4, p5, Lcn/jiguang/ah/n;->f:I

    if-eqz v2, :cond_10

    array-length v0, v2

    if-eqz v0, :cond_10

    array-length v0, v2

    const/16 v1, 0x77db

    if-le v0, v1, :cond_2f

    :cond_10
    const/4 v0, 0x0

    :goto_11
    if-eqz v0, :cond_16

    array-length v1, v0

    if-nez v1, :cond_be

    :cond_16
    const-string v0, "TcpReporter"

    new-instance v1, Ljava/lang/StringBuilder;

    const-string v2, "package data failed, give up, data="

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

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

    move-result-object v1

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

    move-result-object v1

    invoke-static {v0, v1}, Lcn/jiguang/ai/a;->c(Ljava/lang/String;Ljava/lang/String;)V

    const/4 v0, -0x1

    invoke-direct {p0, p1, p5, v0}, Lcn/jiguang/ah/l;->a(Landroid/content/Context;Lcn/jiguang/ah/n;I)V

    :goto_2e
    return-void

    :cond_2f
    new-instance v5, Lcn/jiguang/ap/e;

    array-length v0, v2

    add-int/lit8 v0, v0, 0x25

    invoke-direct {v5, v0}, Lcn/jiguang/ap/e;-><init>(I)V

    const/4 v0, 0x0

    invoke-virtual {v5, v0}, Lcn/jiguang/ap/e;->b(I)V

    const/4 v0, 0x1

    invoke-virtual {v5, v0}, Lcn/jiguang/ap/e;->a(I)V

    invoke-static {}, Lcn/jiguang/ah/b;->a()Lcn/jiguang/ah/b;

    invoke-static {}, Lcn/jiguang/ah/b;->b()S

    move-result v0

    int-to-long v0, v0

    invoke-virtual {v5, v0, v1}, Lcn/jiguang/ap/e;->a(J)V

    invoke-static {}, Lcn/jiguang/ae/b;->d()Lcn/jiguang/ae/b;

    move-result-object v0

    invoke-static {p1, v0}, Lcn/jiguang/ae/c;->a(Landroid/content/Context;Lcn/jiguang/ae/b;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/lang/Long;

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

    move-result-wide v6

    invoke-virtual {v5, v6, v7}, Lcn/jiguang/ap/e;->b(J)V

    invoke-static {}, Lcn/jiguang/ae/b;->f()Lcn/jiguang/ae/b;

    move-result-object v0

    invoke-static {p1, v0}, Lcn/jiguang/ae/c;->a(Landroid/content/Context;Lcn/jiguang/ae/b;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/lang/String;

    invoke-static {v0}, Lcn/jiguang/ap/h;->e(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    invoke-static {v2}, Lcn/jiguang/ap/h;->a([B)Ljava/lang/String;

    move-result-object v1

    new-instance v8, Ljava/lang/StringBuilder;

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

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

    move-result-object v6

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

    move-result-object v0

    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;

    move-result-object v0

    invoke-static {v0}, Lcn/jiguang/ap/h;->c(Ljava/lang/String;)[B

    move-result-object v0

    if-nez v0, :cond_a7

    const/16 v0, 0x10

    new-array v0, v0, [B

    :cond_8c
    :goto_8c
    invoke-virtual {v5, v0}, Lcn/jiguang/ap/e;->a([B)V

    int-to-long v0, v3

    invoke-virtual {v5, v0, v1}, Lcn/jiguang/ap/e;->a(J)V

    invoke-virtual {v5, v4}, Lcn/jiguang/ap/e;->b(I)V

    invoke-virtual {v5, v2}, Lcn/jiguang/ap/e;->a([B)V

    invoke-virtual {v5}, Lcn/jiguang/ap/e;->a()I

    move-result v0

    const/4 v1, 0x0

    invoke-virtual {v5, v0, v1}, Lcn/jiguang/ap/e;->b(II)V

    invoke-virtual {v5}, Lcn/jiguang/ap/e;->b()[B

    move-result-object v0

    goto/16 :goto_11

    :cond_a7
    array-length v1, v0

    const/16 v6, 0x10

    if-eq v1, v6, :cond_8c

    const/16 v1, 0x10

    new-array v1, v1, [B

    const/4 v6, 0x0

    const/4 v7, 0x0

    array-length v0, v0

    const/16 v8, 0x10

    invoke-static {v0, v8}, Ljava/lang/Math;->min(II)I

    move-result v0

    invoke-static {v2, v6, v1, v7, v0}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    move-object v0, v1

    goto :goto_8c

    :cond_be
    const-string v1, "TcpReporter"

    new-instance v2, Ljava/lang/StringBuilder;

    const-string v3, "send tcp data, len="

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

    array-length v3, v0

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

    move-result-object v2

    const-string v3, ", data="

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

    move-result-object v2

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

    move-result-object v2

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

    move-result-object v2

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

    const/4 v1, 0x1

    iput-boolean v1, p5, Lcn/jiguang/ah/n;->i:Z

    invoke-virtual {p3, v0}, Lcn/jiguang/an/a;->a([B)I

    invoke-static {}, Lcn/jiguang/ao/b;->a()Lcn/jiguang/ao/b;

    move-result-object v0

    const v1, 0xea60

    add-int/2addr v1, p2

    const-wide/16 v2, 0x7918

    new-instance v4, Lcn/jiguang/ah/m;

    invoke-direct {v4, p1, p4}, Lcn/jiguang/ah/m;-><init>(Landroid/content/Context;Ljava/lang/Object;)V

    invoke-virtual {v0, v1, v2, v3, v4}, Lcn/jiguang/ao/b;->b(IJLcn/jiguang/ao/a;)V

    invoke-static {}, Lcn/jiguang/ao/b;->a()Lcn/jiguang/ao/b;

    move-result-object v0

    const v1, 0xc350

    iget v2, p5, Lcn/jiguang/ah/n;->f:I

    add-int/2addr v1, v2

    const-wide/16 v2, 0x7530

    new-instance v4, Lcn/jiguang/ah/m;

    invoke-direct {v4, p1, p5}, Lcn/jiguang/ah/m;-><init>(Landroid/content/Context;Ljava/lang/Object;)V

    invoke-virtual {v0, v1, v2, v3, v4}, Lcn/jiguang/ao/b;->b(IJLcn/jiguang/ao/a;)V

    goto/16 :goto_2e
.end method

.method private a(Landroid/content/Context;Lcn/jiguang/af/h;I)V
    .registers 10

    const/4 v2, 0x0

    iget-object v0, p0, Lcn/jiguang/ah/l;->c:Ljava/util/Map;

    invoke-interface {v0, p2}, Ljava/util/Map;->remove(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Landroid/util/Pair;

    if-eqz v0, :cond_d7

    iget-object v1, v0, Landroid/util/Pair;->first:Ljava/lang/Object;

    check-cast v1, Ljava/lang/Integer;

    invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I

    move-result v1

    iget-object v0, v0, Landroid/util/Pair;->second:Ljava/lang/Object;

    check-cast v0, Ljava/io/Closeable;

    invoke-static {v0}, Lcn/jiguang/ap/k;->a(Ljava/io/Closeable;)V

    :goto_1a
    iget-object v0, p0, Lcn/jiguang/ah/l;->d:Ljava/util/Map;

    invoke-interface {v0, p2}, Ljava/util/Map;->remove(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Landroid/util/SparseArray;

    if-nez p3, :cond_2b

    invoke-static {p1}, Lcn/jiguang/ap/a;->c(Landroid/content/Context;)Z

    move-result v3

    if-nez v3, :cond_2b

    const/4 p3, -0x2

    :cond_2b
    if-eqz v0, :cond_b0

    invoke-virtual {v0}, Landroid/util/SparseArray;->size()I

    move-result v3

    if-lez v3, :cond_b0

    if-nez p3, :cond_7a

    const-string v3, "TcpReporter"

    new-instance v4, Ljava/lang/StringBuilder;

    const-string v5, "socket("

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

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

    move-result-object v1

    const-string v4, ") at "

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

    move-result-object v1

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

    move-result-object v1

    const-string v4, " is disconnected, go on send waiting request"

    invoke-virtual {v1, v4}, 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/ai/a;->c(Ljava/lang/String;Ljava/lang/String;)V

    :goto_59
    invoke-virtual {v0}, Landroid/util/SparseArray;->size()I

    move-result v1

    if-ge v2, v1, :cond_d6

    invoke-virtual {v0, v2}, Landroid/util/SparseArray;->valueAt(I)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Lcn/jiguang/ah/n;

    invoke-static {}, Lcn/jiguang/ao/b;->a()Lcn/jiguang/ao/b;

    move-result-object v3

    const v4, 0xc350

    iget v5, v1, Lcn/jiguang/ah/n;->f:I

    add-int/2addr v4, v5

    invoke-virtual {v3, v4}, Lcn/jiguang/ao/b;->b(I)V

    if-nez p3, :cond_a3

    invoke-virtual {p0, p1, v1}, Lcn/jiguang/ah/l;->a(Landroid/content/Context;Lcn/jiguang/ah/n;)V

    :goto_77
    add-int/lit8 v2, v2, 0x1

    goto :goto_59

    :cond_7a
    const-string v3, "TcpReporter"

    new-instance v4, Ljava/lang/StringBuilder;

    const-string v5, "socket("

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

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

    move-result-object v1

    const-string v4, ") at "

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

    move-result-object v1

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

    move-result-object v1

    const-string v4, " is disconnected, finish waiting request, code="

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

    move-result-object v1

    invoke-virtual {v1, p3}, Ljava/lang/StringBuilder;->append(I)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/ai/a;->c(Ljava/lang/String;Ljava/lang/String;)V

    goto :goto_59

    :cond_a3
    new-instance v3, Lcn/jiguang/ah/m;

    const/4 v4, 0x3

    invoke-direct {v3, p1, v4, v1}, Lcn/jiguang/ah/m;-><init>(Landroid/content/Context;ILjava/lang/Object;)V

    invoke-static {v3, p3}, Lcn/jiguang/ah/m;->a(Lcn/jiguang/ah/m;I)I

    invoke-static {v3}, Lcn/jiguang/sdk/impl/b;->a(Ljava/lang/Runnable;)V

    goto :goto_77

    :cond_b0
    if-lez v1, :cond_d6

    const-string v0, "TcpReporter"

    new-instance v2, Ljava/lang/StringBuilder;

    const-string v3, "socket("

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

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

    move-result-object v1

    const-string v2, ") at "

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

    move-result-object v1

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

    move-result-object v1

    const-string v2, " is disconnected, no task left"

    invoke-virtual {v1, v2}, 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 {v0, v1}, Lcn/jiguang/ai/a;->c(Ljava/lang/String;Ljava/lang/String;)V

    :cond_d6
    return-void

    :cond_d7
    move v1, v2

    goto/16 :goto_1a
.end method

.method private a(Landroid/content/Context;Lcn/jiguang/ah/n;I)V
    .registers 7

    iget-object v0, p2, Lcn/jiguang/ah/n;->g:Lcn/jiguang/af/h;

    if-eqz v0, :cond_15

    iget-object v0, p0, Lcn/jiguang/ah/l;->d:Ljava/util/Map;

    iget-object v1, p2, Lcn/jiguang/ah/n;->g:Lcn/jiguang/af/h;

    invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Landroid/util/SparseArray;

    if-eqz v0, :cond_15

    iget v1, p2, Lcn/jiguang/ah/n;->f:I

    invoke-virtual {v0, v1}, Landroid/util/SparseArray;->remove(I)V

    :cond_15
    invoke-static {}, Lcn/jiguang/ao/b;->a()Lcn/jiguang/ao/b;

    move-result-object v0

    const v1, 0xc350

    iget v2, p2, Lcn/jiguang/ah/n;->f:I

    add-int/2addr v1, v2

    invoke-virtual {v0, v1}, Lcn/jiguang/ao/b;->b(I)V

    new-instance v0, Lcn/jiguang/ah/m;

    const/4 v1, 0x3

    invoke-direct {v0, p1, v1, p2}, Lcn/jiguang/ah/m;-><init>(Landroid/content/Context;ILjava/lang/Object;)V

    invoke-static {v0, p3}, Lcn/jiguang/ah/m;->a(Lcn/jiguang/ah/m;I)I

    invoke-static {v0}, Lcn/jiguang/sdk/impl/b;->a(Ljava/lang/Runnable;)V

    return-void
.end method

.method static synthetic a(Lcn/jiguang/ah/l;Landroid/content/Context;Lcn/jiguang/af/h;)V
    .registers 11

    if-nez p2, :cond_3

    :cond_2
    :goto_2
    return-void

    :cond_3
    :try_start_3
    iget-object v0, p0, Lcn/jiguang/ah/l;->c:Ljava/util/Map;

    invoke-interface {v0, p2}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Landroid/util/Pair;

    if-eqz v0, :cond_2

    iget-object v1, v0, Landroid/util/Pair;->second:Ljava/lang/Object;

    check-cast v1, Lcn/jiguang/an/a;

    if-eqz v1, :cond_2

    invoke-virtual {v1}, Lcn/jiguang/an/a;->a()Z

    move-result v2

    if-nez v2, :cond_2

    const-string v2, "TcpReporter"

    new-instance v3, Ljava/lang/StringBuilder;

    const-string v4, "start tcp socket("

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

    iget-object v4, v0, Landroid/util/Pair;->first:Ljava/lang/Object;

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

    move-result-object v3

    const-string v4, "):"

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

    move-result-object v3

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

    move-result-object v3

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

    move-result-object v3

    invoke-static {v2, v3}, Lcn/jiguang/ai/a;->c(Ljava/lang/String;Ljava/lang/String;)V

    iget-object v2, p2, Lcn/jiguang/af/h;->a:Ljava/lang/String;

    iget v3, p2, Lcn/jiguang/af/h;->b:I

    invoke-virtual {v1, v2, v3}, Lcn/jiguang/an/a;->a(Ljava/lang/String;I)I

    move-result v2

    if-eqz v2, :cond_64

    const/4 v0, 0x0

    invoke-direct {p0, p1, p2, v0}, Lcn/jiguang/ah/l;->a(Landroid/content/Context;Lcn/jiguang/af/h;I)V

    :cond_47
    :goto_47
    const/4 v0, 0x0

    invoke-direct {p0, p1, p2, v0}, Lcn/jiguang/ah/l;->a(Landroid/content/Context;Lcn/jiguang/af/h;I)V

    iget-object v0, p0, Lcn/jiguang/ah/l;->b:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z

    move-result v0

    if-eqz v0, :cond_149

    const-string v0, "TcpReporter"

    const-string v1, "Break receiving by wantStop"

    invoke-static {v0, v1}, Lcn/jiguang/ai/a;->g(Ljava/lang/String;Ljava/lang/String;)V
    :try_end_5a
    .catch Ljava/lang/Throwable; {:try_start_3 .. :try_end_5a} :catch_5b

    goto :goto_2

    :catch_5b
    move-exception v0

    const-string v1, "TcpReporter"

    const-string v2, "socket exception"

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

    goto :goto_2

    :cond_64
    :try_start_64
    new-instance v2, Lcn/jiguang/ah/m;

    const/4 v3, 0x2

    invoke-direct {v2, p1, v3, p2}, Lcn/jiguang/ah/m;-><init>(Landroid/content/Context;ILjava/lang/Object;)V

    invoke-static {v2}, Lcn/jiguang/sdk/impl/b;->a(Ljava/lang/Runnable;)V

    new-instance v3, Lcn/jiguang/ah/m;

    invoke-direct {v3, p1, p2}, Lcn/jiguang/ah/m;-><init>(Landroid/content/Context;Ljava/lang/Object;)V

    :goto_72
    iget-object v2, p0, Lcn/jiguang/ah/l;->b:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z
    :try_end_77
    .catch Ljava/lang/Throwable; {:try_start_64 .. :try_end_77} :catch_5b

    move-result v2

    if-nez v2, :cond_47

    const/4 v2, 0x0

    :try_start_7b
    invoke-virtual {v1, v2}, Lcn/jiguang/an/a;->a(I)Ljava/nio/ByteBuffer;
    :try_end_7e
    .catch Lcn/jiguang/ah/f; {:try_start_7b .. :try_end_7e} :catch_102
    .catch Ljava/lang/Throwable; {:try_start_7b .. :try_end_7e} :catch_5b

    move-result-object v2

    :try_start_7f
    const-string v4, "TcpReporter"

    new-instance v5, Ljava/lang/StringBuilder;

    const-string v6, "Received bytes - len:"

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

    invoke-virtual {v2}, Ljava/nio/ByteBuffer;->array()[B

    move-result-object v6

    array-length v6, v6

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

    move-result-object v5

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

    move-result-object v5

    invoke-static {v4, v5}, Lcn/jiguang/ai/a;->c(Ljava/lang/String;Ljava/lang/String;)V

    const/4 v4, 0x2

    invoke-virtual {v2, v4}, Ljava/nio/ByteBuffer;->get(I)B

    move-result v4

    const/4 v5, 0x1

    if-eq v4, v5, :cond_a2

    if-nez v4, :cond_141

    :cond_a2
    const/16 v4, 0xf

    invoke-virtual {v2, v4}, Ljava/nio/ByteBuffer;->getShort(I)S

    move-result v4

    const/16 v5, 0x11

    invoke-virtual {v2, v5}, Ljava/nio/ByteBuffer;->getShort(I)S

    move-result v2

    const-string v5, "TcpReporter"

    new-instance v6, Ljava/lang/StringBuilder;

    const-string v7, "onResult seqId="

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

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

    move-result-object v6

    const-string v7, " code="

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

    move-result-object v6

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

    move-result-object v6

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

    move-result-object v6

    invoke-static {v5, v6}, Lcn/jiguang/ai/a;->c(Ljava/lang/String;Ljava/lang/String;)V

    invoke-static {}, Lcn/jiguang/ao/b;->a()Lcn/jiguang/ao/b;

    move-result-object v5

    const v6, 0xc350

    add-int/2addr v6, v4

    invoke-virtual {v5, v6}, Lcn/jiguang/ao/b;->b(I)V

    invoke-direct {p0, p2, v4}, Lcn/jiguang/ah/l;->a(Lcn/jiguang/af/h;I)Lcn/jiguang/ah/n;

    move-result-object v4

    if-eqz v4, :cond_eb

    if-nez v2, :cond_11f

    new-instance v5, Lcn/jiguang/ah/m;

    const/4 v6, 0x3

    invoke-direct {v5, p1, v6, v4}, Lcn/jiguang/ah/m;-><init>(Landroid/content/Context;ILjava/lang/Object;)V

    invoke-static {v5, v2}, Lcn/jiguang/ah/m;->a(Lcn/jiguang/ah/m;I)I

    invoke-static {v5}, Lcn/jiguang/sdk/impl/b;->a(Ljava/lang/Runnable;)V
    :try_end_eb
    .catch Ljava/lang/Throwable; {:try_start_7f .. :try_end_eb} :catch_127
    .catch Lcn/jiguang/ah/f; {:try_start_7f .. :try_end_eb} :catch_102

    :cond_eb
    :goto_eb
    :try_start_eb
    invoke-static {}, Lcn/jiguang/ao/b;->a()Lcn/jiguang/ao/b;

    move-result-object v4

    const v5, 0xea60

    iget-object v2, v0, Landroid/util/Pair;->first:Ljava/lang/Object;

    check-cast v2, Ljava/lang/Integer;

    invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I

    move-result v2

    add-int/2addr v2, v5

    const-wide/16 v6, 0x7918

    invoke-virtual {v4, v2, v6, v7, v3}, Lcn/jiguang/ao/b;->b(IJLcn/jiguang/ao/a;)V
    :try_end_100
    .catch Lcn/jiguang/ah/f; {:try_start_eb .. :try_end_100} :catch_102
    .catch Ljava/lang/Throwable; {:try_start_eb .. :try_end_100} :catch_5b

    goto/16 :goto_72

    :catch_102
    move-exception v0

    :try_start_103
    iget v1, v0, Lcn/jiguang/ah/f;->a:I

    const/16 v2, -0x3e5

    if-eq v1, v2, :cond_47

    const-string v1, "TcpReporter"

    new-instance v2, Ljava/lang/StringBuilder;

    const-string v3, "recv failed with error:"

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

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

    move-result-object v0

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

    move-result-object v0

    invoke-static {v1, v0}, Lcn/jiguang/ai/a;->g(Ljava/lang/String;Ljava/lang/String;)V
    :try_end_11d
    .catch Ljava/lang/Throwable; {:try_start_103 .. :try_end_11d} :catch_5b

    goto/16 :goto_47

    :cond_11f
    const/16 v5, 0x191

    if-ne v2, v5, :cond_13d

    :try_start_123
    invoke-direct {p0, p1, p2, v2}, Lcn/jiguang/ah/l;->a(Landroid/content/Context;Lcn/jiguang/af/h;I)V
    :try_end_126
    .catch Ljava/lang/Throwable; {:try_start_123 .. :try_end_126} :catch_127
    .catch Lcn/jiguang/ah/f; {:try_start_123 .. :try_end_126} :catch_102

    goto :goto_eb

    :catch_127
    move-exception v2

    :try_start_128
    const-string v4, "TcpReporter"

    new-instance v5, Ljava/lang/StringBuilder;

    const-string v6, "tcp reporter onReceive err:"

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

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

    move-result-object v2

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

    move-result-object v2

    invoke-static {v4, v2}, Lcn/jiguang/ai/a;->g(Ljava/lang/String;Ljava/lang/String;)V
    :try_end_13c
    .catch Lcn/jiguang/ah/f; {:try_start_128 .. :try_end_13c} :catch_102
    .catch Ljava/lang/Throwable; {:try_start_128 .. :try_end_13c} :catch_5b

    goto :goto_eb

    :cond_13d
    :try_start_13d
    invoke-virtual {p0, p1, v4}, Lcn/jiguang/ah/l;->a(Landroid/content/Context;Lcn/jiguang/ah/n;)V

    goto :goto_eb

    :cond_141
    const-string v2, "TcpReporter"

    const-string v4, "wrong version"

    invoke-static {v2, v4}, Lcn/jiguang/ai/a;->g(Ljava/lang/String;Ljava/lang/String;)V
    :try_end_148
    .catch Ljava/lang/Throwable; {:try_start_13d .. :try_end_148} :catch_127
    .catch Lcn/jiguang/ah/f; {:try_start_13d .. :try_end_148} :catch_102

    goto :goto_eb

    :cond_149
    :try_start_149
    const-string v0, "TcpReporter"

    const-string v1, "disconnected"

    invoke-static {v0, v1}, Lcn/jiguang/ai/a;->g(Ljava/lang/String;Ljava/lang/String;)V
    :try_end_150
    .catch Ljava/lang/Throwable; {:try_start_149 .. :try_end_150} :catch_5b

    goto/16 :goto_2
.end method

.method static synthetic a(Lcn/jiguang/ah/l;Landroid/content/Context;Lcn/jiguang/af/h;I)V
    .registers 5

    const/4 v0, 0x0

    invoke-direct {p0, p1, p2, v0}, Lcn/jiguang/ah/l;->a(Landroid/content/Context;Lcn/jiguang/af/h;I)V

    return-void
.end method

.method private a(Lorg/json/JSONObject;)V
    .registers 10

    invoke-virtual {p1}, Lorg/json/JSONObject;->length()I

    move-result v0

    if-nez v0, :cond_7

    :cond_6
    :goto_6
    return-void

    :cond_7
    :try_start_7
    new-instance v2, Ljava/util/HashMap;

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

    invoke-virtual {p1}, Lorg/json/JSONObject;->keys()Ljava/util/Iterator;

    move-result-object v3

    :goto_10
    invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z

    move-result v0

    if-eqz v0, :cond_4a

    invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/lang/String;

    invoke-virtual {p1, v0}, Lorg/json/JSONObject;->optJSONArray(Ljava/lang/String;)Lorg/json/JSONArray;

    move-result-object v4

    new-instance v5, Ljava/util/LinkedHashSet;

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

    if-eqz v4, :cond_44

    const/4 v1, 0x0

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

    move-result v6

    if-ge v1, v6, :cond_44

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

    move-result-object v6

    invoke-static {v6}, Lcn/jiguang/af/h;->a(Ljava/lang/String;)Lcn/jiguang/af/h;

    move-result-object v6

    if-eqz v6, :cond_41

    invoke-virtual {v6}, Lcn/jiguang/af/h;->a()Z

    move-result v7

    if-eqz v7, :cond_41

    invoke-interface {v5, v6}, Ljava/util/Set;->add(Ljava/lang/Object;)Z

    :cond_41
    add-int/lit8 v1, v1, 0x1

    goto :goto_28

    :cond_44
    invoke-interface {v2, v0, v5}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    goto :goto_10

    :catch_48
    move-exception v0

    goto :goto_6

    :cond_4a
    invoke-interface {v2}, Ljava/util/Map;->isEmpty()Z

    move-result v0

    if-nez v0, :cond_6

    iput-object v2, p0, Lcn/jiguang/ah/l;->f:Ljava/util/Map;
    :try_end_52
    .catch Lorg/json/JSONException; {:try_start_7 .. :try_end_52} :catch_48

    goto :goto_6
.end method

.method private static declared-synchronized b()I
    .registers 2

    const-class v1, Lcn/jiguang/ah/l;

    monitor-enter v1

    :try_start_3
    sget v0, Lcn/jiguang/ah/l;->e:I

    add-int/lit8 v0, v0, 0x1

    rem-int/lit16 v0, v0, 0x2710

    sput v0, Lcn/jiguang/ah/l;->e:I
    :try_end_b
    .catchall {:try_start_3 .. :try_end_b} :catchall_d

    monitor-exit v1

    return v0

    :catchall_d
    move-exception v0

    monitor-exit v1

    throw v0
.end method

.method static synthetic b(Lcn/jiguang/ah/l;Landroid/content/Context;Lcn/jiguang/af/h;)V
    .registers 12

    const-string v0, "TcpReporter"

    new-instance v1, Ljava/lang/StringBuilder;

    const-string v2, "socket at "

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

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

    move-result-object v1

    const-string v2, " is connected, deal with waiting request"

    invoke-virtual {v1, v2}, 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 {v0, v1}, Lcn/jiguang/ai/a;->c(Ljava/lang/String;Ljava/lang/String;)V

    iget-object v0, p0, Lcn/jiguang/ah/l;->d:Ljava/util/Map;

    invoke-interface {v0, p2}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    move-object v6, v0

    check-cast v6, Landroid/util/SparseArray;

    iget-object v0, p0, Lcn/jiguang/ah/l;->c:Ljava/util/Map;

    invoke-interface {v0, p2}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    move-object v7, v0

    check-cast v7, Landroid/util/Pair;

    if-eqz v7, :cond_7a

    if-eqz v6, :cond_60

    iget-object v3, v7, Landroid/util/Pair;->second:Ljava/lang/Object;

    check-cast v3, Lcn/jiguang/an/a;

    if-eqz v3, :cond_60

    invoke-virtual {v3}, Lcn/jiguang/an/a;->a()Z

    move-result v0

    if-eqz v0, :cond_60

    const/4 v0, 0x0

    move v8, v0

    :goto_3e
    invoke-virtual {v6}, Landroid/util/SparseArray;->size()I

    move-result v0

    if-ge v8, v0, :cond_60

    invoke-virtual {v6, v8}, Landroid/util/SparseArray;->valueAt(I)Ljava/lang/Object;

    move-result-object v5

    check-cast v5, Lcn/jiguang/ah/n;

    iget-boolean v0, v5, Lcn/jiguang/ah/n;->i:Z

    if-nez v0, :cond_5c

    iget-object v0, v7, Landroid/util/Pair;->first:Ljava/lang/Object;

    check-cast v0, Ljava/lang/Integer;

    invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I

    move-result v2

    move-object v0, p0

    move-object v1, p1

    move-object v4, p2

    invoke-direct/range {v0 .. v5}, Lcn/jiguang/ah/l;->a(Landroid/content/Context;ILcn/jiguang/an/a;Lcn/jiguang/af/h;Lcn/jiguang/ah/n;)V

    :cond_5c
    add-int/lit8 v0, v8, 0x1

    move v8, v0

    goto :goto_3e

    :cond_60
    invoke-static {}, Lcn/jiguang/ao/b;->a()Lcn/jiguang/ao/b;

    move-result-object v1

    const v2, 0xea60

    iget-object v0, v7, Landroid/util/Pair;->first:Ljava/lang/Object;

    check-cast v0, Ljava/lang/Integer;

    invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I

    move-result v0

    add-int/2addr v0, v2

    const-wide/16 v2, 0x7918

    new-instance v4, Lcn/jiguang/ah/m;

    invoke-direct {v4, p1, p2}, Lcn/jiguang/ah/m;-><init>(Landroid/content/Context;Ljava/lang/Object;)V

    invoke-virtual {v1, v0, v2, v3, v4}, Lcn/jiguang/ao/b;->b(IJLcn/jiguang/ao/a;)V

    :cond_7a
    return-void
.end method


# virtual methods
.method public final a(Landroid/content/Context;Lcn/jiguang/ah/n;)V
    .registers 9

    const/4 v0, 0x1

    const/4 v1, 0x0

    :try_start_2
    iget-object v2, p2, Lcn/jiguang/ah/n;->h:Ljava/util/LinkedHashSet;

    if-nez v2, :cond_7

    move v1, v0

    :cond_7
    if-eqz v1, :cond_54

    invoke-static {}, Lcn/jiguang/ao/b;->a()Lcn/jiguang/ao/b;

    move-result-object v0

    invoke-virtual {v0, p1}, Lcn/jiguang/ao/b;->a(Landroid/content/Context;)V

    iget-object v0, p2, Lcn/jiguang/ah/n;->e:Ljava/util/Set;

    new-instance v2, Ljava/util/LinkedHashSet;

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

    invoke-static {}, Lcn/jiguang/ae/a;->d()Ljava/lang/String;

    move-result-object v3

    invoke-static {v3}, Lcn/jiguang/af/h;->a(Ljava/lang/String;)Lcn/jiguang/af/h;

    move-result-object v3

    if-eqz v3, :cond_5f

    invoke-virtual {v3}, Lcn/jiguang/af/h;->a()Z

    move-result v4

    if-eqz v4, :cond_5f

    invoke-virtual {v2, v3}, Ljava/util/LinkedHashSet;->add(Ljava/lang/Object;)Z

    :cond_2a
    const-string v0, "TcpReporter"

    new-instance v3, Ljava/lang/StringBuilder;

    const-string v4, "tcp report find urls="

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

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

    move-result-object v3

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

    move-result-object v3

    invoke-static {v0, v3}, Lcn/jiguang/ai/a;->c(Ljava/lang/String;Ljava/lang/String;)V

    iput-object v2, p2, Lcn/jiguang/ah/n;->h:Ljava/util/LinkedHashSet;

    const-string v0, "TcpReporter"

    new-instance v2, Ljava/lang/StringBuilder;

    const-string v3, "tcp report begin="

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

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

    move-result-object v2

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

    move-result-object v2

    invoke-static {v0, v2}, Lcn/jiguang/ai/a;->c(Ljava/lang/String;Ljava/lang/String;)V

    :cond_54
    invoke-static {p1}, Lcn/jiguang/ap/a;->c(Landroid/content/Context;)Z

    move-result v0

    if-nez v0, :cond_97

    const/4 v0, -0x2

    invoke-direct {p0, p1, p2, v0}, Lcn/jiguang/ah/l;->a(Landroid/content/Context;Lcn/jiguang/ah/n;I)V

    :cond_5e
    :goto_5e
    return-void

    :cond_5f
    invoke-direct {p0, p1, v0}, Lcn/jiguang/ah/l;->a(Landroid/content/Context;Ljava/util/Set;)Ljava/util/Set;

    move-result-object v0

    if-eqz v0, :cond_2a

    invoke-interface {v0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;

    move-result-object v3

    :cond_69
    :goto_69
    invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z

    move-result v0

    if-eqz v0, :cond_2a

    invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lcn/jiguang/af/h;

    if-eqz v0, :cond_69

    invoke-virtual {v0}, Lcn/jiguang/af/h;->a()Z

    move-result v4

    if-eqz v4, :cond_69

    invoke-virtual {v2, v0}, Ljava/util/LinkedHashSet;->add(Ljava/lang/Object;)Z
    :try_end_80
    .catch Ljava/lang/Throwable; {:try_start_2 .. :try_end_80} :catch_81

    goto :goto_69

    :catch_81
    move-exception v0

    const-string v1, "TcpReporter"

    new-instance v2, Ljava/lang/StringBuilder;

    const-string v3, "tcp upload e:"

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

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

    move-result-object v0

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

    move-result-object v0

    invoke-static {v1, v0}, Lcn/jiguang/ai/a;->g(Ljava/lang/String;Ljava/lang/String;)V

    goto :goto_5e

    :cond_97
    :try_start_97
    iget-object v0, p2, Lcn/jiguang/ah/n;->h:Ljava/util/LinkedHashSet;

    if-eqz v0, :cond_a3

    iget-object v0, p2, Lcn/jiguang/ah/n;->h:Ljava/util/LinkedHashSet;

    invoke-virtual {v0}, Ljava/util/LinkedHashSet;->isEmpty()Z

    move-result v0

    if-eqz v0, :cond_a8

    :cond_a3
    const/4 v0, -0x1

    invoke-direct {p0, p1, p2, v0}, Lcn/jiguang/ah/l;->a(Landroid/content/Context;Lcn/jiguang/ah/n;I)V

    goto :goto_5e

    :cond_a8
    iget-object v0, p2, Lcn/jiguang/ah/n;->h:Ljava/util/LinkedHashSet;

    invoke-virtual {v0}, Ljava/util/LinkedHashSet;->iterator()Ljava/util/Iterator;

    move-result-object v0

    invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v4

    check-cast v4, Lcn/jiguang/af/h;

    iput-object v4, p2, Lcn/jiguang/ah/n;->g:Lcn/jiguang/af/h;

    iget-object v0, p2, Lcn/jiguang/ah/n;->h:Ljava/util/LinkedHashSet;

    invoke-virtual {v0, v4}, Ljava/util/LinkedHashSet;->remove(Ljava/lang/Object;)Z

    if-eqz v1, :cond_d1

    invoke-static {}, Lcn/jiguang/ao/b;->a()Lcn/jiguang/ao/b;

    move-result-object v0

    const v1, 0xc350

    iget v2, p2, Lcn/jiguang/ah/n;->f:I

    add-int/2addr v1, v2

    const-wide/16 v2, 0x7530

    new-instance v5, Lcn/jiguang/ah/m;

    invoke-direct {v5, p1, p2}, Lcn/jiguang/ah/m;-><init>(Landroid/content/Context;Ljava/lang/Object;)V

    invoke-virtual {v0, v1, v2, v3, v5}, Lcn/jiguang/ao/b;->b(IJLcn/jiguang/ao/a;)V

    :cond_d1
    iget-object v0, p0, Lcn/jiguang/ah/l;->c:Ljava/util/Map;

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

    move-result-object v0

    check-cast v0, Landroid/util/Pair;

    if-eqz v0, :cond_126

    iget-object v1, v0, Landroid/util/Pair;->second:Ljava/lang/Object;

    check-cast v1, Lcn/jiguang/an/a;

    move-object v3, v1

    :goto_e0
    iget-object v1, p0, Lcn/jiguang/ah/l;->d:Ljava/util/Map;

    invoke-interface {v1, v4}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Landroid/util/SparseArray;

    if-nez v1, :cond_f4

    new-instance v1, Landroid/util/SparseArray;

    invoke-direct {v1}, Landroid/util/SparseArray;-><init>()V

    iget-object v2, p0, Lcn/jiguang/ah/l;->d:Ljava/util/Map;

    invoke-interface {v2, v4, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_f4
    const/4 v2, 0x0

    iput-boolean v2, p2, Lcn/jiguang/ah/n;->i:Z

    iget v2, p2, Lcn/jiguang/ah/n;->f:I

    invoke-virtual {v1, v2, p2}, Landroid/util/SparseArray;->put(ILjava/lang/Object;)V

    if-nez v3, :cond_128

    new-instance v0, Lcn/jiguang/an/b;

    const/16 v1, 0x7800

    const/16 v2, 0x13

    invoke-direct {v0, v1, v2}, Lcn/jiguang/an/b;-><init>(II)V

    invoke-static {}, Lcn/jiguang/ah/l;->b()I

    move-result v1

    iget-object v2, p0, Lcn/jiguang/ah/l;->c:Ljava/util/Map;

    new-instance v3, Landroid/util/Pair;

    invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v1

    invoke-direct {v3, v1, v0}, Landroid/util/Pair;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V

    invoke-interface {v2, v4, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    new-instance v0, Lcn/jiguang/ah/m;

    const/4 v1, 0x1

    invoke-direct {v0, p1, v1, v4}, Lcn/jiguang/ah/m;-><init>(Landroid/content/Context;ILjava/lang/Object;)V

    const-string v1, "TCP_REPORT"

    invoke-static {v1, v0}, Lcn/jiguang/sdk/impl/b;->a(Ljava/lang/String;Ljava/lang/Runnable;)V

    goto/16 :goto_5e

    :cond_126
    const/4 v3, 0x0

    goto :goto_e0

    :cond_128
    invoke-virtual {v3}, Lcn/jiguang/an/a;->a()Z

    move-result v1

    if-eqz v1, :cond_5e

    iget-object v0, v0, Landroid/util/Pair;->first:Ljava/lang/Object;

    check-cast v0, Ljava/lang/Integer;

    invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I

    move-result v2

    move-object v0, p0

    move-object v1, p1

    move-object v5, p2

    invoke-direct/range {v0 .. v5}, Lcn/jiguang/ah/l;->a(Landroid/content/Context;ILcn/jiguang/an/a;Lcn/jiguang/af/h;Lcn/jiguang/ah/n;)V
    :try_end_13c
    .catch Ljava/lang/Throwable; {:try_start_97 .. :try_end_13c} :catch_81

    goto/16 :goto_5e
.end method