j.smali

.class public final Lb/a/a/a/a/j;
.super Lb/a/a/a/a/ag;

# interfaces
.implements Ljava/lang/Runnable;
.implements Ljava/util/Comparator;


# static fields
.field public static a:Z

.field private static c:J

.field private static d:Z


# instance fields
.field public b:J

.field private e:Landroid/os/Handler;

.field private f:I

.field private i:J

.field private j:Landroid/content/BroadcastReceiver;


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

    const/4 v2, 0x0

    sput-boolean v2, Lb/a/a/a/a/j;->a:Z

    const-wide/16 v0, 0x0

    sput-wide v0, Lb/a/a/a/a/j;->c:J

    sput-boolean v2, Lb/a/a/a/a/j;->d:Z

    return-void
.end method

.method public constructor <init>(Lb/a/a/a/a/w;Lb/a/a/a/a/y;)V
    .registers 5

    invoke-direct {p0, p1, p2}, Lb/a/a/a/a/ag;-><init>(Lb/a/a/a/a/w;Lb/a/a/a/a/y;)V

    const/4 v0, 0x0

    iput-object v0, p0, Lb/a/a/a/a/j;->e:Landroid/os/Handler;

    const/4 v0, 0x4

    iput v0, p0, Lb/a/a/a/a/j;->f:I

    const-wide/16 v0, 0x7530

    iput-wide v0, p0, Lb/a/a/a/a/j;->b:J

    const-wide/16 v0, 0x0

    iput-wide v0, p0, Lb/a/a/a/a/j;->i:J

    new-instance v0, Lb/a/a/a/a/k;

    invoke-direct {v0, p0}, Lb/a/a/a/a/k;-><init>(Lb/a/a/a/a/j;)V

    iput-object v0, p0, Lb/a/a/a/a/j;->j:Landroid/content/BroadcastReceiver;

    return-void
.end method

.method public static a(Landroid/content/Context;)Ljava/lang/String;
    .registers 6

    if-nez p0, :cond_6

    const-string/jumbo v0, "{}"

    :goto_5
    return-object v0

    :cond_6
    :try_start_6
    const-string/jumbo v0, "wifi"

    invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Landroid/net/wifi/WifiManager;

    const-string v1, "connectivity"

    invoke-virtual {p0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Landroid/net/ConnectivityManager;
    :try_end_17
    .catch Ljava/lang/Throwable; {:try_start_6 .. :try_end_17} :catch_ac

    if-eqz v0, :cond_1b

    if-nez v1, :cond_1f

    :cond_1b
    const-string/jumbo v0, "{}"

    goto :goto_5

    :cond_1f
    :try_start_1f
    invoke-virtual {v0}, Landroid/net/wifi/WifiManager;->getConnectionInfo()Landroid/net/wifi/WifiInfo;

    move-result-object v0

    const/4 v2, 0x1

    invoke-virtual {v1, v2}, Landroid/net/ConnectivityManager;->getNetworkInfo(I)Landroid/net/NetworkInfo;

    move-result-object v1

    if-eqz v0, :cond_a7

    if-eqz v1, :cond_a7

    invoke-virtual {v1}, Landroid/net/NetworkInfo;->isConnected()Z

    move-result v1

    if-eqz v1, :cond_a7

    invoke-virtual {v0}, Landroid/net/wifi/WifiInfo;->getBSSID()Ljava/lang/String;

    move-result-object v1

    if-eqz v1, :cond_50

    const-string v2, "000000000000"

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

    move-result v2

    if-nez v2, :cond_50

    const-string v2, "00-00-00-00-00-00"

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

    move-result v2

    if-nez v2, :cond_50

    const-string v2, "00:00:00:00:00:00"

    invoke-virtual {v1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
    :try_end_4d
    .catch Ljava/lang/Throwable; {:try_start_1f .. :try_end_4d} :catch_ac

    move-result v2

    if-eqz v2, :cond_54

    :cond_50
    const-string/jumbo v0, "{}"

    goto :goto_5

    :cond_54
    :try_start_54
    invoke-virtual {v0}, Landroid/net/wifi/WifiInfo;->getRssi()I
    :try_end_57
    .catch Ljava/lang/Throwable; {:try_start_54 .. :try_end_57} :catch_ac

    move-result v2

    const/16 v3, -0x64

    if-lt v2, v3, :cond_60

    const/16 v3, -0x14

    if-le v2, v3, :cond_64

    :cond_60
    const-string/jumbo v0, "{}"

    goto :goto_5

    :cond_64
    :try_start_64
    invoke-virtual {v0}, Landroid/net/wifi/WifiInfo;->getSSID()Ljava/lang/String;

    move-result-object v0

    const-string v3, "\""

    const-string v4, ""

    invoke-virtual {v0, v3, v4}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;

    move-result-object v0

    const-string/jumbo v3, "|"

    const-string v4, ""

    invoke-virtual {v0, v3, v4}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;

    move-result-object v0

    new-instance v3, Ljava/lang/StringBuilder;

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

    const-string/jumbo v4, "{"

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

    const-string v4, "\"mac\":\""

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

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

    const-string v1, "\",\"rssi\":"

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

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

    const-string v1, ",\"ssid\":\""

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

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

    const-string v0, "\"}"

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

    invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    :try_end_a4
    .catch Ljava/lang/Throwable; {:try_start_64 .. :try_end_a4} :catch_ac

    move-result-object v0

    goto/16 :goto_5

    :cond_a7
    const-string/jumbo v0, "{}"

    goto/16 :goto_5

    :catch_ac
    move-exception v0

    const-string/jumbo v0, "{}"

    goto/16 :goto_5
.end method

.method public static a(Landroid/net/wifi/WifiManager;)Ljava/util/List;
    .registers 3

    const/4 v0, 0x0

    if-eqz p0, :cond_a

    :try_start_3
    invoke-virtual {p0}, Landroid/net/wifi/WifiManager;->getScanResults()Ljava/util/List;

    move-result-object v0

    const/4 v1, 0x0

    sput-boolean v1, Lb/a/a/a/a/j;->a:Z
    :try_end_a
    .catch Ljava/lang/Throwable; {:try_start_3 .. :try_end_a} :catch_11

    :cond_a
    :goto_a
    if-nez v0, :cond_10

    invoke-static {}, Ljava/util/Collections;->emptyList()Ljava/util/List;

    move-result-object v0

    :cond_10
    return-object v0

    :catch_11
    move-exception v1

    const/4 v1, 0x1

    sput-boolean v1, Lb/a/a/a/a/j;->a:Z

    goto :goto_a
.end method

.method private a(J)V
    .registers 4

    iget-object v0, p0, Lb/a/a/a/a/j;->e:Landroid/os/Handler;

    if-eqz v0, :cond_a

    invoke-virtual {v0, p0}, Landroid/os/Handler;->removeCallbacks(Ljava/lang/Runnable;)V

    invoke-virtual {v0, p0, p1, p2}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z

    :cond_a
    return-void
.end method

.method static synthetic a(Lb/a/a/a/a/j;)V
    .registers 1

    invoke-direct {p0}, Lb/a/a/a/a/j;->d()V

    return-void
.end method

.method static synthetic a(Lb/a/a/a/a/j;Ljava/util/List;)V
    .registers 6

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

    move-result-wide v0

    iput-wide v0, p0, Lb/a/a/a/a/j;->i:J

    invoke-interface {p1}, Ljava/util/List;->size()I

    move-result v0

    if-nez v0, :cond_1c

    invoke-direct {p0}, Lb/a/a/a/a/j;->d()V

    :cond_f
    :goto_f
    new-instance v0, Lb/a/a/a/a/af;

    iget-wide v2, p0, Lb/a/a/a/a/j;->i:J

    iget v1, p0, Lb/a/a/a/a/j;->f:I

    invoke-direct {v0, p1, v2, v3, v1}, Lb/a/a/a/a/af;-><init>(Ljava/util/List;JI)V

    invoke-virtual {p0, v0}, Lb/a/a/a/a/j;->a(Lb/a/a/a/a/ac;)V

    return-void

    :cond_1c
    sget-boolean v0, Lb/a/a/a/a/j;->a:Z

    if-eqz v0, :cond_f

    const/4 v0, 0x0

    sput-boolean v0, Lb/a/a/a/a/j;->a:Z

    invoke-direct {p0}, Lb/a/a/a/a/j;->d()V

    goto :goto_f
.end method

.method private static a(Lb/a/a/a/a/w;)Z
    .registers 5

    const/4 v0, 0x0

    iget-object v1, p0, Lb/a/a/a/a/w;->f:Landroid/net/wifi/WifiManager;

    if-eqz v1, :cond_19

    :try_start_5
    sget v2, Landroid/os/Build$VERSION;->SDK_INT:I

    const/16 v3, 0x17

    if-lt v2, v3, :cond_1a

    iget-object v2, p0, Lb/a/a/a/a/w;->a:Landroid/content/Context;

    invoke-virtual {v2}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;

    move-result-object v2

    const-string v3, "location_mode"

    invoke-static {v2, v3}, Landroid/provider/Settings$Secure;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;)I

    move-result v2

    if-nez v2, :cond_1a

    :cond_19
    :goto_19
    return v0

    :cond_1a
    invoke-virtual {v1}, Landroid/net/wifi/WifiManager;->isWifiEnabled()Z

    move-result v0

    if-nez v0, :cond_19

    sget v2, Landroid/os/Build$VERSION;->SDK_INT:I

    const/16 v3, 0x12

    if-lt v2, v3, :cond_19

    invoke-virtual {v1}, Landroid/net/wifi/WifiManager;->isScanAlwaysAvailable()Z
    :try_end_29
    .catch Ljava/lang/Throwable; {:try_start_5 .. :try_end_29} :catch_2b

    move-result v0

    goto :goto_19

    :catch_2b
    move-exception v1

    instance-of v1, v1, Ljava/lang/SecurityException;

    if-eqz v1, :cond_19

    const/4 v1, 0x1

    sput-boolean v1, Lb/a/a/a/a/j;->a:Z

    goto :goto_19
.end method

.method private static b(Landroid/net/wifi/WifiManager;)Z
    .registers 7

    const/4 v0, 0x0

    const-class v1, Lb/a/a/a/a/j;

    monitor-enter v1

    if-eqz p0, :cond_1f

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

    move-result-wide v2

    sget-wide v4, Lb/a/a/a/a/j;->c:J

    sub-long/2addr v2, v4

    const-wide/16 v4, 0xbb8

    cmp-long v1, v2, v4

    if-lez v1, :cond_23

    invoke-virtual {p0}, Landroid/net/wifi/WifiManager;->startScan()Z

    move-result v0

    sput-boolean v0, Lb/a/a/a/a/j;->d:Z

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

    move-result-wide v2

    sput-wide v2, Lb/a/a/a/a/j;->c:J
    :try_end_1f
    .catch Ljava/lang/Throwable; {:try_start_6 .. :try_end_1f} :catch_26
    .catchall {:try_start_6 .. :try_end_1f} :catchall_2f

    :cond_1f
    :goto_1f
    const-class v1, Lb/a/a/a/a/j;

    monitor-exit v1

    return v0

    :cond_23
    :try_start_23
    sget-boolean v0, Lb/a/a/a/a/j;->d:Z
    :try_end_25
    .catch Ljava/lang/Throwable; {:try_start_23 .. :try_end_25} :catch_26
    .catchall {:try_start_23 .. :try_end_25} :catchall_2f

    goto :goto_1f

    :catch_26
    move-exception v1

    :try_start_27
    instance-of v1, v1, Ljava/lang/SecurityException;

    if-eqz v1, :cond_1f

    const/4 v1, 0x1

    sput-boolean v1, Lb/a/a/a/a/j;->a:Z
    :try_end_2e
    .catchall {:try_start_27 .. :try_end_2e} :catchall_2f

    goto :goto_1f

    :catchall_2f
    move-exception v0

    const-class v1, Lb/a/a/a/a/j;

    monitor-exit v1

    throw v0
.end method

.method private d()V
    .registers 5

    const/4 v2, 0x4

    const/4 v1, 0x1

    :try_start_2
    iget-object v0, p0, Lb/a/a/a/a/j;->g:Lb/a/a/a/a/w;

    invoke-virtual {v0}, Lb/a/a/a/a/w;->b()Z

    move-result v0

    if-eqz v0, :cond_3a

    iget-object v0, p0, Lb/a/a/a/a/j;->g:Lb/a/a/a/a/w;

    iget-object v0, v0, Lb/a/a/a/a/w;->f:Landroid/net/wifi/WifiManager;

    invoke-virtual {v0}, Landroid/net/wifi/WifiManager;->getWifiState()I

    move-result v0

    :goto_12
    iput v0, p0, Lb/a/a/a/a/j;->f:I
    :try_end_14
    .catch Ljava/lang/Throwable; {:try_start_2 .. :try_end_14} :catch_3c

    :goto_14
    iget v0, p0, Lb/a/a/a/a/j;->f:I

    const/4 v2, 0x3

    if-ne v0, v2, :cond_40

    const-wide/16 v2, 0x0

    invoke-direct {p0, v2, v3}, Lb/a/a/a/a/j;->a(J)V

    move v0, v1

    :cond_1f
    :goto_1f
    :try_start_1f
    sget v2, Landroid/os/Build$VERSION;->SDK_INT:I

    const/16 v3, 0x17

    if-lt v2, v3, :cond_36

    iget-object v2, p0, Lb/a/a/a/a/j;->g:Lb/a/a/a/a/w;

    iget-object v2, v2, Lb/a/a/a/a/w;->a:Landroid/content/Context;

    invoke-virtual {v2}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;

    move-result-object v2

    const-string v3, "location_mode"

    invoke-static {v2, v3}, Landroid/provider/Settings$Secure;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;)I
    :try_end_32
    .catch Ljava/lang/Throwable; {:try_start_1f .. :try_end_32} :catch_57

    move-result v2

    if-nez v2, :cond_36

    const/4 v0, 0x5

    :cond_36
    :goto_36
    invoke-virtual {p0, v1, v0}, Lb/a/a/a/a/j;->a(II)V

    return-void

    :cond_3a
    move v0, v2

    goto :goto_12

    :catch_3c
    move-exception v0

    iput v2, p0, Lb/a/a/a/a/j;->f:I

    goto :goto_14

    :cond_40
    iget v0, p0, Lb/a/a/a/a/j;->f:I

    if-ne v0, v1, :cond_55

    const/4 v0, 0x0

    iget-object v2, p0, Lb/a/a/a/a/j;->g:Lb/a/a/a/a/w;

    invoke-static {v2}, Lb/a/a/a/a/j;->a(Lb/a/a/a/a/w;)Z

    move-result v2

    if-nez v2, :cond_1f

    iget-object v2, p0, Lb/a/a/a/a/j;->e:Landroid/os/Handler;

    const/16 v3, 0x7d5

    invoke-virtual {v2, v3}, Landroid/os/Handler;->sendEmptyMessage(I)Z

    goto :goto_1f

    :cond_55
    const/4 v0, -0x1

    goto :goto_1f

    :catch_57
    move-exception v2

    goto :goto_36
.end method


# virtual methods
.method public final a()V
    .registers 3

    const/4 v1, 0x0

    iget-object v0, p0, Lb/a/a/a/a/j;->e:Landroid/os/Handler;

    if-eqz v0, :cond_c

    iget-object v0, p0, Lb/a/a/a/a/j;->e:Landroid/os/Handler;

    invoke-virtual {v0, v1}, Landroid/os/Handler;->removeCallbacksAndMessages(Ljava/lang/Object;)V

    iput-object v1, p0, Lb/a/a/a/a/j;->e:Landroid/os/Handler;

    :cond_c
    :try_start_c
    iget-object v0, p0, Lb/a/a/a/a/j;->g:Lb/a/a/a/a/w;

    iget-object v0, v0, Lb/a/a/a/a/w;->a:Landroid/content/Context;

    iget-object v1, p0, Lb/a/a/a/a/j;->j:Landroid/content/BroadcastReceiver;

    invoke-virtual {v0, v1}, Landroid/content/Context;->unregisterReceiver(Landroid/content/BroadcastReceiver;)V
    :try_end_15
    .catch Ljava/lang/Throwable; {:try_start_c .. :try_end_15} :catch_1a

    :goto_15
    const-wide/16 v0, 0x0

    iput-wide v0, p0, Lb/a/a/a/a/j;->i:J

    return-void

    :catch_1a
    move-exception v0

    goto :goto_15
.end method

.method public final a(Landroid/os/Handler;)V
    .registers 7

    iput-object p1, p0, Lb/a/a/a/a/j;->e:Landroid/os/Handler;

    iget-object v0, p0, Lb/a/a/a/a/j;->e:Landroid/os/Handler;

    if-eqz v0, :cond_1f

    new-instance v1, Landroid/content/IntentFilter;

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

    const-string v2, "android.net.wifi.WIFI_STATE_CHANGED"

    invoke-virtual {v1, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V

    const-string v2, "android.net.wifi.SCAN_RESULTS"

    invoke-virtual {v1, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V

    :try_start_15
    iget-object v2, p0, Lb/a/a/a/a/j;->g:Lb/a/a/a/a/w;

    iget-object v2, v2, Lb/a/a/a/a/w;->a:Landroid/content/Context;

    iget-object v3, p0, Lb/a/a/a/a/j;->j:Landroid/content/BroadcastReceiver;

    const/4 v4, 0x0

    invoke-virtual {v2, v3, v1, v4, v0}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;Ljava/lang/String;Landroid/os/Handler;)Landroid/content/Intent;
    :try_end_1f
    .catch Ljava/lang/Throwable; {:try_start_15 .. :try_end_1f} :catch_25

    :cond_1f
    :goto_1f
    const-wide/16 v0, 0x0

    invoke-direct {p0, v0, v1}, Lb/a/a/a/a/j;->a(J)V

    return-void

    :catch_25
    move-exception v0

    goto :goto_1f
.end method

.method public final b()Ljava/lang/String;
    .registers 2

    const-string v0, "WifiPro"

    return-object v0
.end method

.method public final c()Z
    .registers 2

    iget-object v0, p0, Lb/a/a/a/a/j;->g:Lb/a/a/a/a/w;

    invoke-static {v0}, Lb/a/a/a/a/j;->a(Lb/a/a/a/a/w;)Z

    move-result v0

    if-nez v0, :cond_a

    const/4 v0, 0x0

    :goto_9
    return v0

    :cond_a
    iget-object v0, p0, Lb/a/a/a/a/j;->g:Lb/a/a/a/a/w;

    iget-object v0, v0, Lb/a/a/a/a/w;->f:Landroid/net/wifi/WifiManager;

    invoke-static {v0}, Lb/a/a/a/a/j;->b(Landroid/net/wifi/WifiManager;)Z

    move-result v0

    goto :goto_9
.end method

.method public final bridge synthetic compare(Ljava/lang/Object;Ljava/lang/Object;)I
    .registers 5

    check-cast p1, Landroid/net/wifi/ScanResult;

    check-cast p2, Landroid/net/wifi/ScanResult;

    iget v0, p2, Landroid/net/wifi/ScanResult;->level:I

    iget v1, p1, Landroid/net/wifi/ScanResult;->level:I

    sub-int/2addr v0, v1

    return v0
.end method

.method public final run()V
    .registers 3

    invoke-virtual {p0}, Lb/a/a/a/a/j;->c()Z

    iget-wide v0, p0, Lb/a/a/a/a/j;->b:J

    invoke-direct {p0, v0, v1}, Lb/a/a/a/a/j;->a(J)V

    return-void
.end method