s.smali
.class public Lcom/baidu/security/f/s;
.super Ljava/lang/Object;
.source "ZipUtil.java"
# static fields
.field private static a:Z
# direct methods
.method static constructor <clinit>()V
.registers 1
.prologue
.line 42
const/4 v0, 0x0
sput-boolean v0, Lcom/baidu/security/f/s;->a:Z
return-void
.end method
.method public static a(Landroid/content/Context;Ljava/io/File;)Ljava/util/List;
.registers 12
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Ljava/io/File;",
")",
"Ljava/util/List",
"<",
"Ljava/io/File;",
">;"
}
.end annotation
.prologue
const/4 v2, 0x0
.line 218
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
.line 223
:try_start_6
new-instance v5, Ljava/util/zip/ZipFile;
invoke-direct {v5, p1}, Ljava/util/zip/ZipFile;-><init>(Ljava/io/File;)V
:try_end_b
.catch Ljava/util/zip/ZipException; {:try_start_6 .. :try_end_b} :catch_c5
.catch Ljava/io/IOException; {:try_start_6 .. :try_end_b} :catch_7e
.catchall {:try_start_6 .. :try_end_b} :catchall_99
.line 224
:try_start_b
invoke-virtual {v5}, Ljava/util/zip/ZipFile;->entries()Ljava/util/Enumeration;
:try_end_e
.catch Ljava/util/zip/ZipException; {:try_start_b .. :try_end_e} :catch_ca
.catch Ljava/io/IOException; {:try_start_b .. :try_end_e} :catch_bc
.catchall {:try_start_b .. :try_end_e} :catchall_b2
move-result-object v6
move-object v3, v2
move-object v4, v2
.line 225
:goto_11
:try_start_11
invoke-interface {v6}, Ljava/util/Enumeration;->hasMoreElements()Z
move-result v0
if-eqz v0, :cond_61
.line 226
invoke-interface {v6}, Ljava/util/Enumeration;->nextElement()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/util/zip/ZipEntry;
.line 227
invoke-virtual {v5, v0}, Ljava/util/zip/ZipFile;->getInputStream(Ljava/util/zip/ZipEntry;)Ljava/io/InputStream;
move-result-object v4
.line 228
invoke-virtual {v0}, Ljava/util/zip/ZipEntry;->getName()Ljava/lang/String;
move-result-object v0
const-string v7, ".out"
sget-object v8, Lcom/baidu/security/a/a;->a:Ljava/lang/String;
const/4 v9, 0x0
.line 229
invoke-virtual {p0, v8, v9}, Landroid/content/Context;->getDir(Ljava/lang/String;I)Ljava/io/File;
move-result-object v8
.line 228
invoke-static {v0, v7, v8}, Ljava/io/File;->createTempFile(Ljava/lang/String;Ljava/lang/String;Ljava/io/File;)Ljava/io/File;
move-result-object v7
.line 230
new-instance v0, Ljava/io/FileOutputStream;
invoke-direct {v0, v7}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
:try_end_37
.catch Ljava/util/zip/ZipException; {:try_start_11 .. :try_end_37} :catch_d0
.catch Ljava/io/IOException; {:try_start_11 .. :try_end_37} :catch_c3
.catchall {:try_start_11 .. :try_end_37} :catchall_ba
.line 231
const/16 v3, 0x400
:try_start_39
new-array v3, v3, [B
.line 233
:goto_3b
if-eqz v4, :cond_5c
invoke-virtual {v4, v3}, Ljava/io/InputStream;->read([B)I
move-result v8
if-lez v8, :cond_5c
.line 234
const/4 v9, 0x0
invoke-virtual {v0, v3, v9, v8}, Ljava/io/FileOutputStream;->write([BII)V
:try_end_47
.catch Ljava/util/zip/ZipException; {:try_start_39 .. :try_end_47} :catch_48
.catch Ljava/io/IOException; {:try_start_39 .. :try_end_47} :catch_c0
.catchall {:try_start_39 .. :try_end_47} :catchall_b6
goto :goto_3b
.line 238
:catch_48
move-exception v1
move-object v1, v4
move-object v3, v5
.line 244
:goto_4b
if-eqz v3, :cond_50
.line 245
:try_start_4d
invoke-virtual {v3}, Ljava/util/zip/ZipFile;->close()V
.line 247
:cond_50
if-eqz v1, :cond_55
.line 248
invoke-virtual {v1}, Ljava/io/InputStream;->close()V
.line 250
:cond_55
if-eqz v0, :cond_5a
.line 251
invoke-virtual {v0}, Ljava/io/FileOutputStream;->close()V
:try_end_5a
.catch Ljava/io/IOException; {:try_start_4d .. :try_end_5a} :catch_78
:cond_5a
move-object v0, v2
.line 257
:goto_5b
return-object v0
.line 236
:cond_5c
:try_start_5c
invoke-interface {v1, v7}, Ljava/util/List;->add(Ljava/lang/Object;)Z
:try_end_5f
.catch Ljava/util/zip/ZipException; {:try_start_5c .. :try_end_5f} :catch_48
.catch Ljava/io/IOException; {:try_start_5c .. :try_end_5f} :catch_c0
.catchall {:try_start_5c .. :try_end_5f} :catchall_b6
move-object v3, v0
.line 237
goto :goto_11
.line 244
:cond_61
if-eqz v5, :cond_66
.line 245
:try_start_63
invoke-virtual {v5}, Ljava/util/zip/ZipFile;->close()V
.line 247
:cond_66
if-eqz v4, :cond_6b
.line 248
invoke-virtual {v4}, Ljava/io/InputStream;->close()V
.line 250
:cond_6b
if-eqz v3, :cond_70
.line 251
invoke-virtual {v3}, Ljava/io/FileOutputStream;->close()V
:try_end_70
.catch Ljava/io/IOException; {:try_start_63 .. :try_end_70} :catch_72
:cond_70
move-object v0, v1
.line 255
goto :goto_5b
.line 253
:catch_72
move-exception v0
.line 254
invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V
move-object v0, v1
.line 256
goto :goto_5b
.line 253
:catch_78
move-exception v0
.line 254
invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V
move-object v0, v2
.line 256
goto :goto_5b
.line 240
:catch_7e
move-exception v0
move-object v3, v2
move-object v4, v2
move-object v5, v2
.line 244
:goto_82
if-eqz v5, :cond_87
.line 245
:try_start_84
invoke-virtual {v5}, Ljava/util/zip/ZipFile;->close()V
.line 247
:cond_87
if-eqz v4, :cond_8c
.line 248
invoke-virtual {v4}, Ljava/io/InputStream;->close()V
.line 250
:cond_8c
if-eqz v3, :cond_91
.line 251
invoke-virtual {v3}, Ljava/io/FileOutputStream;->close()V
:try_end_91
.catch Ljava/io/IOException; {:try_start_84 .. :try_end_91} :catch_93
:cond_91
move-object v0, v2
.line 255
goto :goto_5b
.line 253
:catch_93
move-exception v0
.line 254
invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V
move-object v0, v2
.line 256
goto :goto_5b
.line 243
:catchall_99
move-exception v0
move-object v3, v2
move-object v4, v2
move-object v5, v2
.line 244
:goto_9d
if-eqz v5, :cond_a2
.line 245
:try_start_9f
invoke-virtual {v5}, Ljava/util/zip/ZipFile;->close()V
.line 247
:cond_a2
if-eqz v4, :cond_a7
.line 248
invoke-virtual {v4}, Ljava/io/InputStream;->close()V
.line 250
:cond_a7
if-eqz v3, :cond_ac
.line 251
invoke-virtual {v3}, Ljava/io/FileOutputStream;->close()V
:try_end_ac
.catch Ljava/io/IOException; {:try_start_9f .. :try_end_ac} :catch_ad
.line 255
:cond_ac
:goto_ac
throw v0
.line 253
:catch_ad
move-exception v1
.line 254
invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V
goto :goto_ac
.line 243
:catchall_b2
move-exception v0
move-object v3, v2
move-object v4, v2
goto :goto_9d
:catchall_b6
move-exception v1
move-object v3, v0
move-object v0, v1
goto :goto_9d
:catchall_ba
move-exception v0
goto :goto_9d
.line 240
:catch_bc
move-exception v0
move-object v3, v2
move-object v4, v2
goto :goto_82
:catch_c0
move-exception v1
move-object v3, v0
goto :goto_82
:catch_c3
move-exception v0
goto :goto_82
.line 238
:catch_c5
move-exception v0
move-object v0, v2
move-object v1, v2
move-object v3, v2
goto :goto_4b
:catch_ca
move-exception v0
move-object v0, v2
move-object v1, v2
move-object v3, v5
goto/16 :goto_4b
:catch_d0
move-exception v0
move-object v0, v3
move-object v1, v4
move-object v3, v5
goto/16 :goto_4b
.end method