g.smali
.class public Lcom/uc/crashsdk/a/g;
.super Ljava/lang/Object;
.source "ProGuard"
# static fields
.field static final synthetic a:Z
.field private static b:Landroid/content/Context;
.field private static c:Ljava/lang/String;
.field private static d:Ljava/lang/String;
.field private static e:Ljava/lang/String;
.field private static f:Ljava/lang/String;
.field private static g:Ljava/lang/String;
.field private static h:Z
.field private static final i:Ljava/lang/Object;
.field private static final j:[C
# direct methods
.method static constructor <clinit>()V
.registers 3
.prologue
const/4 v1, 0x0
const/4 v2, 0x0
.line 25
const-class v0, Lcom/uc/crashsdk/a/g;
invoke-virtual {v0}, Ljava/lang/Class;->desiredAssertionStatus()Z
move-result v0
if-nez v0, :cond_2a
const/4 v0, 0x1
:goto_b
sput-boolean v0, Lcom/uc/crashsdk/a/g;->a:Z
.line 365
sput-object v2, Lcom/uc/crashsdk/a/g;->c:Ljava/lang/String;
.line 367
sput-object v2, Lcom/uc/crashsdk/a/g;->d:Ljava/lang/String;
.line 369
sput-object v2, Lcom/uc/crashsdk/a/g;->e:Ljava/lang/String;
.line 424
sput-object v2, Lcom/uc/crashsdk/a/g;->f:Ljava/lang/String;
.line 425
sput-object v2, Lcom/uc/crashsdk/a/g;->g:Ljava/lang/String;
.line 426
sput-boolean v1, Lcom/uc/crashsdk/a/g;->h:Z
.line 490
new-instance v0, Ljava/lang/Object;
invoke-direct {v0}, Ljava/lang/Object;-><init>()V
sput-object v0, Lcom/uc/crashsdk/a/g;->i:Ljava/lang/Object;
.line 590
const/16 v0, 0x10
new-array v0, v0, [C
fill-array-data v0, :array_2c
sput-object v0, Lcom/uc/crashsdk/a/g;->j:[C
return-void
:cond_2a
move v0, v1
.line 25
goto :goto_b
.line 590
:array_2c
.array-data 2
0x30s
0x31s
0x32s
0x33s
0x34s
0x35s
0x36s
0x37s
0x38s
0x39s
0x61s
0x62s
0x63s
0x64s
0x65s
0x66s
.end array-data
.end method
.method public constructor <init>()V
.registers 1
.prologue
.line 25
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static a()Landroid/content/Context;
.registers 1
.prologue
.line 394
sget-object v0, Lcom/uc/crashsdk/a/g;->b:Landroid/content/Context;
return-object v0
.end method
.method public static a(Ljava/io/File;IZ)Ljava/lang/String;
.registers 9
.prologue
const/4 v1, 0x0
.line 155
.line 157
:try_start_1
new-instance v2, Ljava/io/FileInputStream;
invoke-direct {v2, p0}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
:try_end_6
.catch Ljava/lang/Throwable; {:try_start_1 .. :try_end_6} :catch_18
.catchall {:try_start_1 .. :try_end_6} :catchall_25
.line 158
:try_start_6
new-array v3, p1, [B
.line 159
invoke-virtual {v2, v3}, Ljava/io/FileInputStream;->read([B)I
move-result v4
.line 160
if-lez v4, :cond_20
.line 161
new-instance v0, Ljava/lang/String;
const/4 v5, 0x0
invoke-direct {v0, v3, v5, v4}, Ljava/lang/String;-><init>([BII)V
:try_end_14
.catch Ljava/lang/Throwable; {:try_start_6 .. :try_end_14} :catch_2d
.catchall {:try_start_6 .. :try_end_14} :catchall_2b
.line 168
invoke-static {v2}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
.line 170
:goto_17
return-object v0
.line 163
:catch_18
move-exception v0
move-object v2, v1
.line 164
:goto_1a
if-eqz p2, :cond_20
.line 165
const/4 v3, 0x0
:try_start_1d
invoke-static {v0, v3}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/Throwable;Z)V
:try_end_20
.catchall {:try_start_1d .. :try_end_20} :catchall_2b
.line 168
:cond_20
invoke-static {v2}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
move-object v0, v1
.line 170
goto :goto_17
.line 168
:catchall_25
move-exception v0
move-object v2, v1
:goto_27
invoke-static {v2}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
.line 169
throw v0
.line 168
:catchall_2b
move-exception v0
goto :goto_27
.line 163
:catch_2d
move-exception v0
goto :goto_1a
.end method
.method public static a(Ljava/lang/String;Ljava/lang/String;Z)Ljava/lang/String;
.registers 7
.prologue
const/4 v1, 0x0
.line 266
.line 267
new-instance v0, Ljava/io/File;
invoke-direct {v0, p0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 268
invoke-virtual {v0}, Ljava/io/File;->exists()Z
move-result v0
if-eqz v0, :cond_2c
.line 269
invoke-static {p0}, Lcom/uc/crashsdk/a/b;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 270
invoke-static {v0}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/String;)Z
move-result v2
if-eqz v2, :cond_1a
move-object v0, v1
.line 282
:cond_17
:goto_17
if-nez v0, :cond_2e
.line 285
:goto_19
return-object p1
.line 272
:cond_1a
if-eqz p2, :cond_17
.line 273
invoke-virtual {v0}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object v0
.line 274
invoke-virtual {v0}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
move-result-object v2
const-string v3, "http"
invoke-virtual {v2, v3}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v2
if-nez v2, :cond_17
:cond_2c
move-object v0, v1
goto :goto_17
:cond_2e
move-object p1, v0
goto :goto_19
.end method
.method private static a([Ljava/lang/String;)Ljava/lang/String;
.registers 6
.prologue
const/4 v0, 0x0
.line 533
.line 537
:try_start_1
invoke-static {}, Ljava/lang/Runtime;->getRuntime()Ljava/lang/Runtime;
move-result-object v1
invoke-virtual {v1, p0}, Ljava/lang/Runtime;->exec([Ljava/lang/String;)Ljava/lang/Process;
move-result-object v1
.line 539
new-instance v2, Ljava/io/InputStreamReader;
invoke-virtual {v1}, Ljava/lang/Process;->getInputStream()Ljava/io/InputStream;
move-result-object v1
invoke-direct {v2, v1}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;)V
:try_end_12
.catch Ljava/lang/Throwable; {:try_start_1 .. :try_end_12} :catch_51
.catchall {:try_start_1 .. :try_end_12} :catchall_40
.line 540
:try_start_12
new-instance v3, Ljava/io/BufferedReader;
const/16 v1, 0x200
invoke-direct {v3, v2, v1}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;I)V
:try_end_19
.catch Ljava/lang/Throwable; {:try_start_12 .. :try_end_19} :catch_55
.catchall {:try_start_12 .. :try_end_19} :catchall_4b
.line 542
:try_start_19
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
.line 543
:goto_1e
invoke-virtual {v3}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;
move-result-object v4
if-eqz v4, :cond_34
.line 545
invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
:try_end_27
.catch Ljava/lang/Throwable; {:try_start_19 .. :try_end_27} :catch_28
.catchall {:try_start_19 .. :try_end_27} :catchall_4f
goto :goto_1e
.line 549
:catch_28
move-exception v1
:goto_29
const/4 v4, 0x0
:try_start_2a
invoke-static {v1, v4}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/Throwable;Z)V
:try_end_2d
.catchall {:try_start_2a .. :try_end_2d} :catchall_4f
.line 552
invoke-static {v3}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
.line 553
:goto_30
invoke-static {v2}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
.line 555
return-object v0
.line 548
:cond_34
:try_start_34
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/String;->trim()Ljava/lang/String;
:try_end_3b
.catch Ljava/lang/Throwable; {:try_start_34 .. :try_end_3b} :catch_28
.catchall {:try_start_34 .. :try_end_3b} :catchall_4f
move-result-object v0
.line 552
invoke-static {v3}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
goto :goto_30
:catchall_40
move-exception v1
move-object v2, v0
move-object v3, v0
move-object v0, v1
:goto_44
invoke-static {v3}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
.line 553
invoke-static {v2}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
.line 554
throw v0
.line 552
:catchall_4b
move-exception v1
move-object v3, v0
move-object v0, v1
goto :goto_44
:catchall_4f
move-exception v0
goto :goto_44
.line 549
:catch_51
move-exception v1
move-object v2, v0
move-object v3, v0
goto :goto_29
:catch_55
move-exception v1
move-object v3, v0
goto :goto_29
.end method
.method public static a(Ljava/io/File;I)Ljava/util/ArrayList;
.registers 8
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/io/File;",
"I)",
"Ljava/util/ArrayList",
"<",
"Ljava/lang/String;",
">;"
}
.end annotation
.prologue
const/4 v2, 0x0
const/4 v0, 0x0
.line 196
new-instance v4, Ljava/util/ArrayList;
invoke-direct {v4}, Ljava/util/ArrayList;-><init>()V
.line 200
:try_start_7
new-instance v3, Ljava/io/FileReader;
invoke-direct {v3, p0}, Ljava/io/FileReader;-><init>(Ljava/io/File;)V
:try_end_c
.catch Ljava/lang/Throwable; {:try_start_7 .. :try_end_c} :catch_29
.catchall {:try_start_7 .. :try_end_c} :catchall_33
.line 201
:try_start_c
new-instance v1, Ljava/io/BufferedReader;
const/16 v5, 0x200
invoke-direct {v1, v3, v5}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;I)V
:try_end_13
.catch Ljava/lang/Throwable; {:try_start_c .. :try_end_13} :catch_45
.catchall {:try_start_c .. :try_end_13} :catchall_3c
.line 204
:cond_13
:try_start_13
invoke-virtual {v1}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;
move-result-object v2
if-eqz v2, :cond_22
.line 205
invoke-virtual {v4, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
:try_end_1c
.catch Ljava/lang/Throwable; {:try_start_13 .. :try_end_1c} :catch_49
.catchall {:try_start_13 .. :try_end_1c} :catchall_3e
.line 206
add-int/lit8 v0, v0, 0x1
.line 207
if-lez p1, :cond_13
if-lt v0, p1, :cond_13
.line 214
:cond_22
invoke-static {v3}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
.line 215
:goto_25
invoke-static {v1}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
.line 217
return-object v4
.line 211
:catch_29
move-exception v0
move-object v1, v2
:goto_2b
const/4 v3, 0x0
:try_start_2c
invoke-static {v0, v3}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/Throwable;Z)V
:try_end_2f
.catchall {:try_start_2c .. :try_end_2f} :catchall_41
.line 214
invoke-static {v2}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
goto :goto_25
:catchall_33
move-exception v0
move-object v3, v2
:goto_35
invoke-static {v3}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
.line 215
invoke-static {v2}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
.line 216
throw v0
.line 214
:catchall_3c
move-exception v0
goto :goto_35
:catchall_3e
move-exception v0
move-object v2, v1
goto :goto_35
:catchall_41
move-exception v0
move-object v3, v2
move-object v2, v1
goto :goto_35
.line 211
:catch_45
move-exception v0
move-object v1, v2
move-object v2, v3
goto :goto_2b
:catch_49
move-exception v0
move-object v2, v3
goto :goto_2b
.end method
.method public static a(I)V
.registers 2
.prologue
.line 479
packed-switch p0, :pswitch_data_12
.line 485
sget-boolean v0, Lcom/uc/crashsdk/a/g;->a:Z
if-nez v0, :cond_10
new-instance v0, Ljava/lang/AssertionError;
invoke-direct {v0}, Ljava/lang/AssertionError;-><init>()V
throw v0
.line 481
:pswitch_d
invoke-static {}, Lcom/uc/crashsdk/a/g;->l()V
.line 488
:cond_10
return-void
.line 479
nop
:pswitch_data_12
.packed-switch 0x320
:pswitch_d
.end packed-switch
.end method
.method public static a(Landroid/content/Context;)V
.registers 4
.prologue
.line 372
sget-object v0, Lcom/uc/crashsdk/a/g;->b:Landroid/content/Context;
if-eqz v0, :cond_9
.line 373
const-string v0, "mContext is existed"
invoke-static {v0}, Lcom/uc/crashsdk/a/a;->b(Ljava/lang/String;)V
.line 375
:cond_9
sput-object p0, Lcom/uc/crashsdk/a/g;->b:Landroid/content/Context;
.line 376
invoke-virtual {p0}, Landroid/content/Context;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;
move-result-object v0
.line 377
iget-object v1, v0, Landroid/content/pm/ApplicationInfo;->dataDir:Ljava/lang/String;
sput-object v1, Lcom/uc/crashsdk/a/g;->c:Ljava/lang/String;
.line 378
iget-object v1, v0, Landroid/content/pm/ApplicationInfo;->sourceDir:Ljava/lang/String;
sput-object v1, Lcom/uc/crashsdk/a/g;->d:Ljava/lang/String;
.line 381
:try_start_17
const-class v1, Landroid/content/pm/ApplicationInfo;
const-string v2, "primaryCpuAbi"
.line 382
invoke-virtual {v1, v2}, Ljava/lang/Class;->getDeclaredField(Ljava/lang/String;)Ljava/lang/reflect/Field;
move-result-object v1
.line 383
const/4 v2, 0x1
invoke-virtual {v1, v2}, Ljava/lang/reflect/Field;->setAccessible(Z)V
.line 384
invoke-virtual {v1, v0}, Ljava/lang/reflect/Field;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
.line 385
if-eqz v0, :cond_31
instance-of v1, v0, Ljava/lang/String;
if-eqz v1, :cond_31
.line 386
check-cast v0, Ljava/lang/String;
sput-object v0, Lcom/uc/crashsdk/a/g;->e:Ljava/lang/String;
:try_end_31
.catch Ljava/lang/Throwable; {:try_start_17 .. :try_end_31} :catch_32
.line 391
:cond_31
:goto_31
return-void
.line 388
:catch_32
move-exception v0
const/4 v1, 0x0
invoke-static {v0, v1}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/Throwable;Z)V
goto :goto_31
.end method
.method public static a(Ljava/io/Closeable;)V
.registers 3
.prologue
.line 254
if-eqz p0, :cond_5
.line 256
:try_start_2
invoke-interface {p0}, Ljava/io/Closeable;->close()V
:try_end_5
.catch Ljava/lang/Throwable; {:try_start_2 .. :try_end_5} :catch_6
.line 261
:cond_5
:goto_5
return-void
.line 257
:catch_6
move-exception v0
const/4 v1, 0x1
invoke-static {v0, v1}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/Throwable;Z)V
goto :goto_5
.end method
.method public static a(Ljava/io/File;Ljava/io/File;)V
.registers 7
.prologue
const/4 v2, 0x0
.line 46
const/high16 v0, 0x80000
new-array v4, v0, [B
invoke-virtual {p1}, Ljava/io/File;->getParentFile()Ljava/io/File;
move-result-object v0
invoke-virtual {v0}, Ljava/io/File;->exists()Z
move-result v1
if-nez v1, :cond_12
invoke-virtual {v0}, Ljava/io/File;->mkdirs()Z
:cond_12
invoke-virtual {p1}, Ljava/io/File;->isDirectory()Z
move-result v0
if-eqz v0, :cond_22
new-instance v0, Ljava/io/File;
invoke-virtual {p0}, Ljava/io/File;->getName()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, p1, v1}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V
move-object p1, v0
:cond_22
:try_start_22
new-instance v3, Ljava/io/FileInputStream;
invoke-direct {v3, p0}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
:try_end_27
.catchall {:try_start_22 .. :try_end_27} :catchall_48
:try_start_27
new-instance v1, Ljava/io/FileOutputStream;
invoke-direct {v1, p1}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
:try_end_2c
.catchall {:try_start_27 .. :try_end_2c} :catchall_4b
:goto_2c
:try_start_2c
invoke-virtual {v3, v4}, Ljava/io/InputStream;->read([B)I
move-result v0
const/4 v2, -0x1
if-eq v0, v2, :cond_41
const/4 v2, 0x0
invoke-virtual {v1, v4, v2, v0}, Ljava/io/OutputStream;->write([BII)V
:try_end_37
.catchall {:try_start_2c .. :try_end_37} :catchall_38
goto :goto_2c
:catchall_38
move-exception v0
move-object v2, v3
:goto_3a
invoke-static {v2}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
invoke-static {v1}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
throw v0
:cond_41
invoke-static {v3}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
invoke-static {v1}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
return-void
:catchall_48
move-exception v0
move-object v1, v2
goto :goto_3a
:catchall_4b
move-exception v0
move-object v1, v2
move-object v2, v3
goto :goto_3a
.end method
.method public static a(Ljava/lang/Throwable;)V
.registers 2
.prologue
.line 334
const/4 v0, 0x0
invoke-static {p0, v0}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/Throwable;Z)V
.line 335
return-void
.end method
.method private static a(Ljava/lang/Throwable;Z)V
.registers 3
.prologue
.line 346
if-nez p1, :cond_8
:try_start_2
invoke-static {}, Lcom/uc/crashsdk/g;->M()Z
move-result v0
if-eqz v0, :cond_b
.line 347
:cond_8
invoke-virtual {p0}, Ljava/lang/Throwable;->printStackTrace()V
:try_end_b
.catch Ljava/lang/Throwable; {:try_start_2 .. :try_end_b} :catch_c
.line 351
:cond_b
:goto_b
return-void
:catch_c
move-exception v0
goto :goto_b
.end method
.method public static a(Ljava/io/File;)Z
.registers 7
.prologue
const/4 v0, 0x0
.line 99
invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z
move-result v1
if-eqz v1, :cond_22
.line 100
invoke-virtual {p0}, Ljava/io/File;->list()[Ljava/lang/String;
move-result-object v2
.line 101
if-eqz v2, :cond_22
.line 102
array-length v3, v2
move v1, v0
:goto_f
if-ge v1, v3, :cond_22
aget-object v4, v2, v1
.line 103
new-instance v5, Ljava/io/File;
invoke-direct {v5, p0, v4}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V
invoke-static {v5}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/File;)Z
move-result v4
.line 104
if-nez v4, :cond_1f
.line 111
:goto_1e
return v0
.line 102
:cond_1f
add-int/lit8 v1, v1, 0x1
goto :goto_f
.line 111
:cond_22
invoke-virtual {p0}, Ljava/io/File;->delete()Z
move-result v0
goto :goto_1e
.end method
.method public static a(Ljava/io/File;Ljava/lang/String;)Z
.registers 6
.prologue
const/4 v0, 0x0
.line 239
const/4 v3, 0x0
.line 242
:try_start_2
new-instance v2, Ljava/io/FileWriter;
invoke-direct {v2, p0}, Ljava/io/FileWriter;-><init>(Ljava/io/File;)V
:try_end_7
.catch Ljava/lang/Throwable; {:try_start_2 .. :try_end_7} :catch_14
.catchall {:try_start_2 .. :try_end_7} :catchall_20
.line 243
const/4 v1, 0x0
:try_start_8
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v3
invoke-virtual {v2, p1, v1, v3}, Ljava/io/FileWriter;->write(Ljava/lang/String;II)V
:try_end_f
.catch Ljava/lang/Throwable; {:try_start_8 .. :try_end_f} :catch_23
.catchall {:try_start_8 .. :try_end_f} :catchall_1b
.line 244
const/4 v0, 0x1
.line 248
:goto_10
invoke-static {v2}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
.line 250
return v0
.line 245
:catch_14
move-exception v1
move-object v2, v3
:goto_16
const/4 v3, 0x0
:try_start_17
invoke-static {v1, v3}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/Throwable;Z)V
:try_end_1a
.catchall {:try_start_17 .. :try_end_1a} :catchall_1b
goto :goto_10
.line 248
:catchall_1b
move-exception v0
:goto_1c
invoke-static {v2}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
.line 249
throw v0
.line 248
:catchall_20
move-exception v0
move-object v2, v3
goto :goto_1c
.line 245
:catch_23
move-exception v1
goto :goto_16
.end method
.method public static a(Ljava/io/File;[B)Z
.registers 6
.prologue
const/4 v0, 0x0
.line 221
const/4 v3, 0x0
.line 225
:try_start_2
new-instance v2, Ljava/io/FileOutputStream;
invoke-direct {v2, p0}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
:try_end_7
.catch Ljava/lang/Throwable; {:try_start_2 .. :try_end_7} :catch_12
.catchall {:try_start_2 .. :try_end_7} :catchall_1e
.line 226
:try_start_7
invoke-virtual {v2, p1}, Ljava/io/FileOutputStream;->write([B)V
.line 227
invoke-virtual {v2}, Ljava/io/FileOutputStream;->flush()V
:try_end_d
.catch Ljava/lang/Throwable; {:try_start_7 .. :try_end_d} :catch_21
.catchall {:try_start_7 .. :try_end_d} :catchall_19
.line 228
const/4 v0, 0x1
.line 232
:goto_e
invoke-static {v2}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
.line 235
return v0
.line 229
:catch_12
move-exception v1
move-object v2, v3
:goto_14
const/4 v3, 0x0
:try_start_15
invoke-static {v1, v3}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/Throwable;Z)V
:try_end_18
.catchall {:try_start_15 .. :try_end_18} :catchall_19
goto :goto_e
.line 232
:catchall_19
move-exception v0
:goto_1a
invoke-static {v2}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
.line 233
throw v0
.line 232
:catchall_1e
move-exception v0
move-object v2, v3
goto :goto_1a
.line 229
:catch_21
move-exception v1
goto :goto_14
.end method
.method public static a(Ljava/lang/String;)Z
.registers 2
.prologue
.line 295
if-eqz p0, :cond_c
invoke-virtual {p0}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/String;->length()I
move-result v0
if-nez v0, :cond_e
:cond_c
const/4 v0, 0x1
:goto_d
return v0
:cond_e
const/4 v0, 0x0
goto :goto_d
.end method
.method public static a(Ljava/lang/StringBuffer;)Z
.registers 2
.prologue
.line 299
if-eqz p0, :cond_8
invoke-virtual {p0}, Ljava/lang/StringBuffer;->length()I
move-result v0
if-nez v0, :cond_a
:cond_8
const/4 v0, 0x1
:goto_9
return v0
:cond_a
const/4 v0, 0x0
goto :goto_9
.end method
.method public static b()Ljava/lang/String;
.registers 1
.prologue
.line 398
sget-object v0, Lcom/uc/crashsdk/a/g;->c:Ljava/lang/String;
return-object v0
.end method
.method public static b(Ljava/io/File;)V
.registers 2
.prologue
.line 115
const-string v0, ""
invoke-static {p0, v0}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/File;Ljava/lang/String;)Z
.line 116
return-void
.end method
.method public static b(Ljava/lang/Throwable;)V
.registers 2
.prologue
.line 341
const/4 v0, 0x1
invoke-static {p0, v0}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/Throwable;Z)V
.line 342
return-void
.end method
.method public static b(Ljava/lang/String;)Z
.registers 2
.prologue
.line 303
invoke-static {p0}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/String;)Z
move-result v0
if-nez v0, :cond_8
const/4 v0, 0x1
:goto_7
return v0
:cond_8
const/4 v0, 0x0
goto :goto_7
.end method
.method public static c(Ljava/lang/String;)J
.registers 6
.prologue
const-wide/16 v0, 0x0
.line 308
invoke-static {p0}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/String;)Z
move-result v2
if-nez v2, :cond_14
.line 310
:try_start_8
invoke-virtual {p0}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object v2
invoke-static {v2}, Ljava/lang/Long;->parseLong(Ljava/lang/String;)J
:try_end_f
.catch Ljava/lang/NumberFormatException; {:try_start_8 .. :try_end_f} :catch_15
move-result-wide v2
.line 311
cmp-long v4, v2, v0
if-gez v4, :cond_17
.line 316
:cond_14
:goto_14
return-wide v0
:catch_15
move-exception v2
goto :goto_14
:cond_17
move-wide v0, v2
goto :goto_14
.end method
.method public static c()Ljava/lang/String;
.registers 1
.prologue
.line 402
sget-object v0, Lcom/uc/crashsdk/a/g;->d:Ljava/lang/String;
return-object v0
.end method
.method public static c(Ljava/io/File;)Ljava/lang/String;
.registers 8
.prologue
.line 123
const-string v0, ""
.line 124
invoke-virtual {p0}, Ljava/io/File;->exists()Z
move-result v1
if-nez v1, :cond_9
.line 144
:goto_8
return-object v0
.line 128
:cond_9
const/4 v3, 0x0
.line 130
:try_start_a
new-instance v2, Ljava/io/FileInputStream;
invoke-direct {v2, p0}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
:try_end_f
.catch Ljava/lang/Throwable; {:try_start_a .. :try_end_f} :catch_3e
.catchall {:try_start_a .. :try_end_f} :catchall_36
.line 131
const/16 v1, 0x100
:try_start_11
new-array v1, v1, [B
.line 133
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
.line 135
:goto_18
invoke-virtual {v2, v1}, Ljava/io/FileInputStream;->read([B)I
move-result v4
if-lez v4, :cond_31
.line 136
new-instance v5, Ljava/lang/String;
const/4 v6, 0x0
invoke-direct {v5, v1, v6, v4}, Ljava/lang/String;-><init>([BII)V
invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
:try_end_27
.catch Ljava/lang/Throwable; {:try_start_11 .. :try_end_27} :catch_28
.catchall {:try_start_11 .. :try_end_27} :catchall_3c
goto :goto_18
.line 139
:catch_28
move-exception v1
:goto_29
const/4 v3, 0x0
:try_start_2a
invoke-static {v1, v3}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/Throwable;Z)V
:try_end_2d
.catchall {:try_start_2a .. :try_end_2d} :catchall_3c
.line 142
:goto_2d
invoke-static {v2}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
goto :goto_8
.line 138
:cond_31
:try_start_31
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
:try_end_34
.catch Ljava/lang/Throwable; {:try_start_31 .. :try_end_34} :catch_28
.catchall {:try_start_31 .. :try_end_34} :catchall_3c
move-result-object v0
goto :goto_2d
.line 142
:catchall_36
move-exception v0
move-object v2, v3
:goto_38
invoke-static {v2}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
.line 143
throw v0
.line 142
:catchall_3c
move-exception v0
goto :goto_38
.line 139
:catch_3e
move-exception v1
move-object v2, v3
goto :goto_29
.end method
.method public static d()Ljava/lang/String;
.registers 1
.prologue
.line 406
sget-object v0, Lcom/uc/crashsdk/a/g;->e:Ljava/lang/String;
if-eqz v0, :cond_7
.line 407
sget-object v0, Lcom/uc/crashsdk/a/g;->e:Ljava/lang/String;
.line 409
:goto_6
return-object v0
:cond_7
const-string v0, ""
goto :goto_6
.end method
.method public static d(Ljava/io/File;)Ljava/lang/String;
.registers 3
.prologue
.line 150
const/16 v0, 0x40
const/4 v1, 0x1
invoke-static {p0, v0, v1}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/File;IZ)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public static d(Ljava/lang/String;)Ljava/lang/String;
.registers 9
.prologue
.line 562
const/4 v0, 0x0
.line 565
:try_start_1
const-string v1, "utf-8"
invoke-virtual {p0, v1}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B
move-result-object v1
.line 566
const-string v2, "MD5"
invoke-static {v2}, Ljava/security/MessageDigest;->getInstance(Ljava/lang/String;)Ljava/security/MessageDigest;
move-result-object v2
.line 567
invoke-virtual {v2, v1}, Ljava/security/MessageDigest;->update([B)V
.line 568
invoke-virtual {v2}, Ljava/security/MessageDigest;->digest()[B
move-result-object v2
.line 570
const/4 v1, 0x0
array-length v3, v2
new-instance v4, Ljava/lang/StringBuilder;
mul-int/lit8 v5, v3, 0x2
invoke-direct {v4, v5}, Ljava/lang/StringBuilder;-><init>(I)V
add-int/lit8 v3, v3, 0x0
:goto_1f
if-ge v1, v3, :cond_3a
aget-byte v5, v2, v1
sget-object v6, Lcom/uc/crashsdk/a/g;->j:[C
and-int/lit16 v7, v5, 0xf0
shr-int/lit8 v7, v7, 0x4
aget-char v6, v6, v7
sget-object v7, Lcom/uc/crashsdk/a/g;->j:[C
and-int/lit8 v5, v5, 0xf
aget-char v5, v7, v5
invoke-virtual {v4, v6}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
add-int/lit8 v1, v1, 0x1
goto :goto_1f
:cond_3a
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
:try_end_3d
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_3d} :catch_3f
move-result-object v0
.line 575
:goto_3e
return-object v0
.line 571
:catch_3f
move-exception v1
.line 572
const-string v2, "getMD5: "
const-string v3, "crashsdk"
invoke-static {v3, v2, v1}, Lcom/uc/crashsdk/a/a;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
goto :goto_3e
.end method
.method public static e()Z
.registers 1
.prologue
.line 429
invoke-static {}, Lcom/uc/crashsdk/a/g;->g()Z
move-result v0
if-eqz v0, :cond_8
.line 430
const/4 v0, 0x1
.line 432
:goto_7
return v0
:cond_8
invoke-static {}, Lcom/uc/crashsdk/a/g;->f()Z
move-result v0
goto :goto_7
.end method
.method public static e(Ljava/io/File;)[B
.registers 5
.prologue
const/4 v1, 0x0
.line 174
invoke-virtual {p0}, Ljava/io/File;->exists()Z
move-result v0
if-nez v0, :cond_8
.line 192
:goto_7
return-object v1
.line 182
:cond_8
:try_start_8
invoke-virtual {p0}, Ljava/io/File;->length()J
move-result-wide v2
long-to-int v0, v2
new-array v0, v0, [B
.line 183
new-instance v2, Ljava/io/FileInputStream;
invoke-direct {v2, p0}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
:try_end_14
.catch Ljava/lang/Throwable; {:try_start_8 .. :try_end_14} :catch_1c
.catchall {:try_start_8 .. :try_end_14} :catchall_27
.line 184
:try_start_14
invoke-virtual {v2, v0}, Ljava/io/FileInputStream;->read([B)I
:try_end_17
.catch Ljava/lang/Throwable; {:try_start_14 .. :try_end_17} :catch_2f
.catchall {:try_start_14 .. :try_end_17} :catchall_2c
.line 189
invoke-static {v2}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
:goto_1a
move-object v1, v0
.line 192
goto :goto_7
.line 186
:catch_1c
move-exception v0
move-object v2, v1
:goto_1e
const/4 v3, 0x0
:try_start_1f
invoke-static {v0, v3}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/Throwable;Z)V
:try_end_22
.catchall {:try_start_1f .. :try_end_22} :catchall_2c
.line 189
invoke-static {v2}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
move-object v0, v1
.line 190
goto :goto_1a
.line 189
:catchall_27
move-exception v0
:goto_28
invoke-static {v1}, Lcom/uc/crashsdk/a/g;->a(Ljava/io/Closeable;)V
.line 190
throw v0
.line 189
:catchall_2c
move-exception v0
move-object v1, v2
goto :goto_28
.line 186
:catch_2f
move-exception v0
goto :goto_1e
.end method
.method public static f()Z
.registers 2
.prologue
.line 437
sget-object v0, Landroid/os/Build;->TAGS:Ljava/lang/String;
if-eqz v0, :cond_10
sget-object v0, Landroid/os/Build;->TAGS:Ljava/lang/String;
const-string v1, "test-keys"
.line 438
invoke-virtual {v0, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_10
const/4 v0, 0x1
:goto_f
return v0
:cond_10
const/4 v0, 0x0
.line 437
goto :goto_f
.end method
.method public static g()Z
.registers 3
.prologue
const/4 v0, 0x0
.line 442
invoke-static {}, Lcom/uc/crashsdk/a/g;->i()Ljava/lang/String;
move-result-object v1
.line 443
invoke-static {v1}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/String;)Z
move-result v2
if-nez v2, :cond_28
.line 445
const-string v2, " root "
invoke-virtual {v1, v2}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I
move-result v2
.line 446
if-lez v2, :cond_28
.line 447
invoke-virtual {v1, v0, v2}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v1
.line 448
const-string v2, "x"
invoke-virtual {v1, v2}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v2
if-nez v2, :cond_27
const-string v2, "s"
invoke-virtual {v1, v2}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_28
.line 449
:cond_27
const/4 v0, 0x1
.line 453
:cond_28
return v0
.end method
.method public static h()Ljava/lang/String;
.registers 1
.prologue
.line 457
invoke-static {}, Lcom/uc/crashsdk/a/g;->l()V
.line 458
sget-object v0, Lcom/uc/crashsdk/a/g;->f:Ljava/lang/String;
invoke-static {v0}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_e
.line 459
const-string v0, ""
.line 461
:goto_d
return-object v0
:cond_e
sget-object v0, Lcom/uc/crashsdk/a/g;->f:Ljava/lang/String;
goto :goto_d
.end method
.method public static i()Ljava/lang/String;
.registers 1
.prologue
.line 465
invoke-static {}, Lcom/uc/crashsdk/a/g;->l()V
.line 466
sget-object v0, Lcom/uc/crashsdk/a/g;->g:Ljava/lang/String;
invoke-static {v0}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_e
.line 467
const-string v0, ""
.line 469
:goto_d
return-object v0
:cond_e
sget-object v0, Lcom/uc/crashsdk/a/g;->g:Ljava/lang/String;
goto :goto_d
.end method
.method public static j()V
.registers 4
.prologue
.line 473
const/4 v0, 0x0
new-instance v1, Lcom/uc/crashsdk/a/e;
const/16 v2, 0x320
invoke-direct {v1, v2}, Lcom/uc/crashsdk/a/e;-><init>(I)V
const-wide/16 v2, 0x3a98
invoke-static {v0, v1, v2, v3}, Lcom/uc/crashsdk/a/f;->a(ILjava/lang/Runnable;J)Z
.line 476
return-void
.end method
.method public static k()V
.registers 2
.prologue
.line 525
sget-boolean v0, Lcom/uc/crashsdk/b;->d:Z
if-eqz v0, :cond_8
sget-boolean v0, Lcom/uc/crashsdk/a/g;->h:Z
if-nez v0, :cond_9
.line 530
:cond_8
:goto_8
return-void
.line 528
:cond_9
const/16 v0, 0x7b
sget-object v1, Lcom/uc/crashsdk/a/g;->f:Ljava/lang/String;
invoke-static {v0, v1}, Lcom/uc/crashsdk/JNIBridge;->set(ILjava/lang/String;)J
.line 529
const/16 v0, 0x7c
sget-object v1, Lcom/uc/crashsdk/a/g;->g:Ljava/lang/String;
invoke-static {v0, v1}, Lcom/uc/crashsdk/JNIBridge;->set(ILjava/lang/String;)J
goto :goto_8
.end method
.method private static l()V
.registers 4
.prologue
.line 493
sget-boolean v0, Lcom/uc/crashsdk/a/g;->h:Z
if-eqz v0, :cond_5
.line 522
:goto_4
return-void
.line 497
:cond_5
sget-object v1, Lcom/uc/crashsdk/a/g;->i:Ljava/lang/Object;
monitor-enter v1
.line 498
:try_start_8
sget-boolean v0, Lcom/uc/crashsdk/a/g;->h:Z
if-eqz v0, :cond_11
.line 499
monitor-exit v1
goto :goto_4
.line 520
:catchall_e
move-exception v0
monitor-exit v1
:try_end_10
.catchall {:try_start_8 .. :try_end_10} :catchall_e
throw v0
.line 502
:cond_11
const/4 v0, 0x3
:try_start_12
new-array v0, v0, [Ljava/lang/String;
const/4 v2, 0x0
const-string v3, "sh"
aput-object v3, v0, v2
const/4 v2, 0x1
const-string v3, "-c"
aput-object v3, v0, v2
const/4 v2, 0x2
const-string v3, "type su"
aput-object v3, v0, v2
invoke-static {v0}, Lcom/uc/crashsdk/a/g;->a([Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 503
invoke-static {v0}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/String;)Z
move-result v2
if-nez v2, :cond_73
.line 504
invoke-virtual {v0}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object v0
.line 506
const/16 v2, 0x20
invoke-virtual {v0, v2}, Ljava/lang/String;->indexOf(I)I
move-result v2
.line 507
if-lez v2, :cond_73
const-string v3, "/su"
invoke-virtual {v0, v3}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v3
if-eqz v3, :cond_73
.line 508
const/16 v3, 0x2f
add-int/lit8 v2, v2, 0x1
invoke-virtual {v0, v3, v2}, Ljava/lang/String;->indexOf(II)I
move-result v2
.line 509
if-lez v2, :cond_73
.line 510
invoke-virtual {v0, v2}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object v0
sput-object v0, Lcom/uc/crashsdk/a/g;->f:Ljava/lang/String;
.line 511
const/4 v0, 0x3
new-array v0, v0, [Ljava/lang/String;
const/4 v2, 0x0
const-string v3, "ls"
aput-object v3, v0, v2
const/4 v2, 0x1
const-string v3, "-l"
aput-object v3, v0, v2
const/4 v2, 0x2
sget-object v3, Lcom/uc/crashsdk/a/g;->f:Ljava/lang/String;
aput-object v3, v0, v2
invoke-static {v0}, Lcom/uc/crashsdk/a/g;->a([Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 513
invoke-static {v0}, Lcom/uc/crashsdk/a/g;->a(Ljava/lang/String;)Z
move-result v2
if-nez v2, :cond_73
.line 514
invoke-virtual {v0}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object v0
sput-object v0, Lcom/uc/crashsdk/a/g;->g:Ljava/lang/String;
.line 519
:cond_73
const/4 v0, 0x1
sput-boolean v0, Lcom/uc/crashsdk/a/g;->h:Z
.line 520
monitor-exit v1
:try_end_77
.catchall {:try_start_12 .. :try_end_77} :catchall_e
.line 521
invoke-static {}, Lcom/uc/crashsdk/a/g;->k()V
goto :goto_4
.end method