FileUtils.smali
.class public Lcom/cleanmaster/filecloud/utils/FileUtils;
.super Ljava/lang/Object;
.source "FileUtils.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/cleanmaster/filecloud/utils/FileUtils$FileItem;
}
.end annotation
# static fields
.field private static final CHARSET:Ljava/lang/String; = "UTF-8"
.field private static final HEXES:[C
.field private static final LARGE_BUFFER_SIZE:I = 0x800
.field public static final LARGE_FILE_SIZE:J = 0xa00000L
.field private static final REGEX_SEPARATOR:Ljava/lang/String; = "//"
.field private static final REQUEST_HEADER_BYTES_LENGTH:I = 0xa
.field private static final UPLOAD_INFO_BYTES_LENGTH:I = 0x4
# direct methods
.method static constructor <clinit>()V
.registers 1
.prologue
.line 32
const/16 v0, 0x10
new-array v0, v0, [C
fill-array-data v0, :array_a
sput-object v0, Lcom/cleanmaster/filecloud/utils/FileUtils;->HEXES:[C
return-void
:array_a
.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 30
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static compressForGZip([B)[B
.registers 5
.prologue
const/4 v1, 0x0
.line 336
if-eqz p0, :cond_6
array-length v0, p0
if-nez v0, :cond_8
:cond_6
move-object v0, v1
.line 369
:cond_7
:goto_7
return-object v0
.line 344
:cond_8
:try_start_8
new-instance v2, Ljava/io/ByteArrayOutputStream;
invoke-direct {v2}, Ljava/io/ByteArrayOutputStream;-><init>()V
:try_end_d
.catch Ljava/io/IOException; {:try_start_8 .. :try_end_d} :catch_31
.catchall {:try_start_8 .. :try_end_d} :catchall_43
.line 345
:try_start_d
new-instance v3, Ljava/util/zip/GZIPOutputStream;
invoke-direct {v3, v2}, Ljava/util/zip/GZIPOutputStream;-><init>(Ljava/io/OutputStream;)V
:try_end_12
.catch Ljava/io/IOException; {:try_start_d .. :try_end_12} :catch_59
.catchall {:try_start_d .. :try_end_12} :catchall_52
.line 347
:try_start_12
invoke-virtual {v3, p0}, Ljava/util/zip/GZIPOutputStream;->write([B)V
.line 348
invoke-virtual {v3}, Ljava/util/zip/GZIPOutputStream;->close()V
:try_end_18
.catch Ljava/io/IOException; {:try_start_12 .. :try_end_18} :catch_5c
.catchall {:try_start_12 .. :try_end_18} :catchall_54
.line 349
const/4 v3, 0x0
.line 351
:try_start_19
invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
move-result-object v0
.line 352
invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->flush()V
.line 353
invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
:try_end_23
.catch Ljava/io/IOException; {:try_start_19 .. :try_end_23} :catch_59
.catchall {:try_start_19 .. :try_end_23} :catchall_52
.line 354
const/4 v2, 0x0
.line 361
if-eqz v1, :cond_29
.line 362
:try_start_26
invoke-virtual {v3}, Ljava/util/zip/GZIPOutputStream;->close()V
.line 364
:cond_29
if-eqz v1, :cond_7
.line 365
invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
:try_end_2e
.catch Ljava/io/IOException; {:try_start_26 .. :try_end_2e} :catch_2f
goto :goto_7
.line 367
:catch_2f
move-exception v1
goto :goto_7
.line 357
:catch_31
move-exception v0
move-object v2, v1
move-object v3, v1
.line 358
:goto_34
:try_start_34
invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V
:try_end_37
.catchall {:try_start_34 .. :try_end_37} :catchall_54
.line 361
if-eqz v3, :cond_3c
.line 362
:try_start_39
invoke-virtual {v3}, Ljava/util/zip/GZIPOutputStream;->close()V
.line 364
:cond_3c
if-eqz v2, :cond_41
.line 365
invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
:try_end_41
.catch Ljava/io/IOException; {:try_start_39 .. :try_end_41} :catch_57
:cond_41
:goto_41
move-object v0, v1
.line 369
goto :goto_7
.line 360
:catchall_43
move-exception v0
move-object v2, v1
.line 361
:goto_45
if-eqz v1, :cond_4a
.line 362
:try_start_47
invoke-virtual {v1}, Ljava/util/zip/GZIPOutputStream;->close()V
.line 364
:cond_4a
if-eqz v2, :cond_4f
.line 365
invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
:try_end_4f
.catch Ljava/io/IOException; {:try_start_47 .. :try_end_4f} :catch_50
.line 367
:cond_4f
:goto_4f
throw v0
:catch_50
move-exception v1
goto :goto_4f
.line 360
:catchall_52
move-exception v0
goto :goto_45
:catchall_54
move-exception v0
move-object v1, v3
goto :goto_45
.line 367
:catch_57
move-exception v0
goto :goto_41
.line 357
:catch_59
move-exception v0
move-object v3, v1
goto :goto_34
:catch_5c
move-exception v0
goto :goto_34
.end method
.method private static encodeHex([B)Ljava/lang/String;
.registers 6
.prologue
.line 263
if-nez p0, :cond_4
.line 264
const/4 v0, 0x0
.line 273
:goto_3
return-object v0
.line 266
:cond_4
array-length v1, p0
.line 267
new-instance v2, Ljava/lang/StringBuilder;
mul-int/lit8 v0, v1, 0x2
invoke-direct {v2, v0}, Ljava/lang/StringBuilder;-><init>(I)V
.line 269
const/4 v0, 0x0
:goto_d
if-ge v0, v1, :cond_2a
.line 270
sget-object v3, Lcom/cleanmaster/filecloud/utils/FileUtils;->HEXES:[C
aget-byte v4, p0, v0
and-int/lit16 v4, v4, 0xf0
ushr-int/lit8 v4, v4, 0x4
aget-char v3, v3, v4
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 271
sget-object v3, Lcom/cleanmaster/filecloud/utils/FileUtils;->HEXES:[C
aget-byte v4, p0, v0
and-int/lit8 v4, v4, 0xf
aget-char v3, v3, v4
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 269
add-int/lit8 v0, v0, 0x1
goto :goto_d
.line 273
:cond_2a
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
goto :goto_3
.end method
.method public static formatRequestData(ILjava/lang/String;Z)[B
.registers 7
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/UnsupportedEncodingException;
}
.end annotation
.prologue
.line 277
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_8
.line 278
const/4 v0, 0x0
.line 280
:goto_7
return-object v0
:cond_8
const-string v0, "UTF-8"
invoke-virtual {p1, v0}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B
move-result-object v0
const-wide/16 v2, 0x0
invoke-static {p0, v0, p2, v2, v3}, Lcom/cleanmaster/filecloud/utils/FileUtils;->formatRequestData(I[BZJ)[B
move-result-object v0
goto :goto_7
.end method
.method public static formatRequestData(I[BZJ)[B
.registers 14
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/UnsupportedEncodingException;
}
.end annotation
.prologue
.line 292
if-nez p1, :cond_4
.line 293
const/4 v0, 0x0
.line 327
:cond_3
:goto_3
return-object v0
.line 296
:cond_4
array-length v0, p1
add-int/lit8 v1, v0, 0xa
.line 297
new-array v0, v1, [B
.line 299
const/4 v2, 0x0
const/16 v3, 0xa
array-length v4, p1
invoke-static {p1, v2, v0, v3, v4}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
.line 301
int-to-long v2, v1
add-long/2addr v2, p3
.line 303
const/4 v4, 0x3
const/16 v5, 0x18
ushr-long v6, v2, v5
long-to-int v5, v6
int-to-byte v5, v5
aput-byte v5, v0, v4
.line 304
const/4 v4, 0x2
const/16 v5, 0x10
ushr-long v6, v2, v5
long-to-int v5, v6
int-to-byte v5, v5
aput-byte v5, v0, v4
.line 305
const/4 v4, 0x1
const/16 v5, 0x8
ushr-long v6, v2, v5
long-to-int v5, v6
int-to-byte v5, v5
aput-byte v5, v0, v4
.line 306
const/4 v4, 0x0
long-to-int v2, v2
int-to-byte v2, v2
aput-byte v2, v0, v4
.line 309
const/16 v2, 0x9
ushr-int/lit8 v3, p0, 0x8
int-to-byte v3, v3
aput-byte v3, v0, v2
.line 310
const/16 v2, 0x8
int-to-byte v3, p0
aput-byte v3, v0, v2
.line 312
new-instance v2, Ljava/util/zip/CRC32;
invoke-direct {v2}, Ljava/util/zip/CRC32;-><init>()V
.line 313
const/16 v3, 0x8
add-int/lit8 v1, v1, -0x8
invoke-virtual {v2, v0, v3, v1}, Ljava/util/zip/CRC32;->update([BII)V
.line 314
invoke-virtual {v2}, Ljava/util/zip/CRC32;->getValue()J
move-result-wide v2
.line 317
const/4 v1, 0x7
const/16 v4, 0x18
ushr-long v4, v2, v4
long-to-int v4, v4
int-to-byte v4, v4
aput-byte v4, v0, v1
.line 318
const/4 v1, 0x6
const/16 v4, 0x10
ushr-long v4, v2, v4
long-to-int v4, v4
int-to-byte v4, v4
aput-byte v4, v0, v1
.line 319
const/4 v1, 0x5
const/16 v4, 0x8
ushr-long v4, v2, v4
long-to-int v4, v4
int-to-byte v4, v4
aput-byte v4, v0, v1
.line 320
const/4 v1, 0x4
long-to-int v2, v2
int-to-byte v2, v2
aput-byte v2, v0, v1
.line 323
if-eqz p2, :cond_3
.line 324
invoke-static {v0}, Lcom/cleanmaster/filecloud/utils/FileUtils;->compressForGZip([B)[B
move-result-object v0
goto :goto_3
.end method
.method public static getCreateTime(Ljava/io/File;)J
.registers 3
.prologue
.line 158
const-wide/16 v0, 0x0
return-wide v0
.end method
.method public static getExtension(Ljava/lang/String;)Ljava/lang/String;
.registers 3
.prologue
.line 163
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-nez v0, :cond_14
const-string v0, "."
.line 164
invoke-virtual {p0, v0}, Ljava/lang/String;->lastIndexOf(Ljava/lang/String;)I
move-result v0
const/4 v1, -0x1
if-eq v0, v1, :cond_14
.line 165
invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object v0
.line 167
:goto_13
return-object v0
:cond_14
const-string v0, ""
goto :goto_13
.end method
.method public static getFileMD5(Ljava/io/File;)Ljava/lang/String;
.registers 8
.prologue
const/4 v0, 0x0
.line 171
invoke-virtual {p0}, Ljava/io/File;->isFile()Z
move-result v1
if-nez v1, :cond_8
.line 202
:cond_7
:goto_7
return-object v0
.line 175
:cond_8
invoke-virtual {p0}, Ljava/io/File;->length()J
move-result-wide v2
const-wide/32 v4, 0xa00000
cmp-long v1, v2, v4
if-lez v1, :cond_18
.line 176
invoke-static {p0}, Lcom/cleanmaster/filecloud/utils/FileUtils;->getLargeFileMD5(Ljava/io/File;)Ljava/lang/String;
move-result-object v0
goto :goto_7
.line 182
:cond_18
const/16 v1, 0x400
new-array v2, v1, [B
.line 185
:try_start_1c
const-string v1, "MD5"
invoke-static {v1}, Ljava/security/MessageDigest;->getInstance(Ljava/lang/String;)Ljava/security/MessageDigest;
move-result-object v3
.line 186
new-instance v1, Ljava/io/FileInputStream;
invoke-direct {v1, p0}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
:try_end_27
.catch Ljava/lang/Exception; {:try_start_1c .. :try_end_27} :catch_68
.catchall {:try_start_1c .. :try_end_27} :catchall_57
.line 187
:goto_27
const/4 v4, 0x0
:try_start_28
array-length v5, v2
invoke-virtual {v1, v2, v4, v5}, Ljava/io/FileInputStream;->read([BII)I
move-result v4
const/4 v5, -0x1
if-eq v4, v5, :cond_41
.line 188
const/4 v5, 0x0
invoke-virtual {v3, v2, v5, v4}, Ljava/security/MessageDigest;->update([BII)V
:try_end_34
.catch Ljava/lang/Exception; {:try_start_28 .. :try_end_34} :catch_35
.catchall {:try_start_28 .. :try_end_34} :catchall_66
goto :goto_27
.line 191
:catch_35
move-exception v2
.line 195
:goto_36
if-eqz v1, :cond_7
.line 196
:try_start_38
invoke-virtual {v1}, Ljava/io/FileInputStream;->close()V
:try_end_3b
.catch Ljava/io/IOException; {:try_start_38 .. :try_end_3b} :catch_3c
goto :goto_7
.line 198
:catch_3c
move-exception v1
.line 199
invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V
goto :goto_7
.line 190
:cond_41
:try_start_41
invoke-virtual {v1}, Ljava/io/FileInputStream;->close()V
:try_end_44
.catch Ljava/lang/Exception; {:try_start_41 .. :try_end_44} :catch_35
.catchall {:try_start_41 .. :try_end_44} :catchall_66
.line 195
if-eqz v1, :cond_49
.line 196
:try_start_46
invoke-virtual {v1}, Ljava/io/FileInputStream;->close()V
:try_end_49
.catch Ljava/io/IOException; {:try_start_46 .. :try_end_49} :catch_52
.line 202
:cond_49
:goto_49
invoke-virtual {v3}, Ljava/security/MessageDigest;->digest()[B
move-result-object v0
invoke-static {v0}, Lcom/cleanmaster/filecloud/utils/FileUtils;->encodeHex([B)Ljava/lang/String;
move-result-object v0
goto :goto_7
.line 198
:catch_52
move-exception v0
.line 199
invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V
goto :goto_49
.line 194
:catchall_57
move-exception v1
move-object v6, v1
move-object v1, v0
move-object v0, v6
.line 195
:goto_5b
if-eqz v1, :cond_60
.line 196
:try_start_5d
invoke-virtual {v1}, Ljava/io/FileInputStream;->close()V
:try_end_60
.catch Ljava/io/IOException; {:try_start_5d .. :try_end_60} :catch_61
.line 200
:cond_60
:goto_60
throw v0
.line 198
:catch_61
move-exception v1
.line 199
invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V
goto :goto_60
.line 194
:catchall_66
move-exception v0
goto :goto_5b
.line 191
:catch_68
move-exception v1
move-object v1, v0
goto :goto_36
.end method
.method public static getFileType(Ljava/io/File;)I
.registers 2
.prologue
.line 154
const/4 v0, 0x0
return v0
.end method
.method private static final getLargeFileMD5(Ljava/io/File;)Ljava/lang/String;
.registers 11
.prologue
const/4 v0, 0x0
const/4 v8, -0x1
const/16 v4, 0x800
.line 206
invoke-virtual {p0}, Ljava/io/File;->isFile()Z
move-result v1
if-nez v1, :cond_b
.line 243
:cond_a
:goto_a
return-object v0
.line 210
:cond_b
invoke-virtual {p0}, Ljava/io/File;->length()J
move-result-wide v2
.line 215
new-array v4, v4, [B
.line 218
:try_start_11
const-string v1, "MD5"
invoke-static {v1}, Ljava/security/MessageDigest;->getInstance(Ljava/lang/String;)Ljava/security/MessageDigest;
move-result-object v5
.line 219
new-instance v1, Ljava/io/RandomAccessFile;
const-string v6, "r"
invoke-direct {v1, p0, v6}, Ljava/io/RandomAccessFile;-><init>(Ljava/io/File;Ljava/lang/String;)V
:try_end_1e
.catch Ljava/lang/Exception; {:try_start_11 .. :try_end_1e} :catch_68
.catchall {:try_start_11 .. :try_end_1e} :catchall_75
.line 220
const/4 v6, 0x0
const/16 v7, 0x800
:try_start_21
invoke-virtual {v1, v4, v6, v7}, Ljava/io/RandomAccessFile;->read([BII)I
move-result v6
if-eq v6, v8, :cond_2b
.line 221
const/4 v7, 0x0
invoke-virtual {v5, v4, v7, v6}, Ljava/security/MessageDigest;->update([BII)V
.line 223
:cond_2b
const-wide/16 v6, 0x2
div-long v6, v2, v6
invoke-virtual {v1, v6, v7}, Ljava/io/RandomAccessFile;->seek(J)V
.line 224
const/4 v6, 0x0
const/16 v7, 0x800
invoke-virtual {v1, v4, v6, v7}, Ljava/io/RandomAccessFile;->read([BII)I
move-result v6
if-eq v6, v8, :cond_3f
.line 225
const/4 v7, 0x0
invoke-virtual {v5, v4, v7, v6}, Ljava/security/MessageDigest;->update([BII)V
.line 227
:cond_3f
const-wide/16 v6, 0x800
sub-long/2addr v2, v6
invoke-virtual {v1, v2, v3}, Ljava/io/RandomAccessFile;->seek(J)V
.line 228
const/4 v2, 0x0
const/16 v3, 0x800
invoke-virtual {v1, v4, v2, v3}, Ljava/io/RandomAccessFile;->read([BII)I
move-result v2
if-eq v2, v8, :cond_52
.line 229
const/4 v3, 0x0
invoke-virtual {v5, v4, v3, v2}, Ljava/security/MessageDigest;->update([BII)V
.line 231
:cond_52
invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
:try_end_55
.catch Ljava/lang/Exception; {:try_start_21 .. :try_end_55} :catch_86
.catchall {:try_start_21 .. :try_end_55} :catchall_84
.line 236
if-eqz v1, :cond_5a
.line 237
:try_start_57
invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
:try_end_5a
.catch Ljava/io/IOException; {:try_start_57 .. :try_end_5a} :catch_63
.line 243
:cond_5a
:goto_5a
invoke-virtual {v5}, Ljava/security/MessageDigest;->digest()[B
move-result-object v0
invoke-static {v0}, Lcom/cleanmaster/filecloud/utils/FileUtils;->encodeHex([B)Ljava/lang/String;
move-result-object v0
goto :goto_a
.line 239
:catch_63
move-exception v0
.line 240
invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V
goto :goto_5a
.line 232
:catch_68
move-exception v1
move-object v1, v0
.line 236
:goto_6a
if-eqz v1, :cond_a
.line 237
:try_start_6c
invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
:try_end_6f
.catch Ljava/io/IOException; {:try_start_6c .. :try_end_6f} :catch_70
goto :goto_a
.line 239
:catch_70
move-exception v1
.line 240
invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V
goto :goto_a
.line 235
:catchall_75
move-exception v1
move-object v9, v1
move-object v1, v0
move-object v0, v9
.line 236
:goto_79
if-eqz v1, :cond_7e
.line 237
:try_start_7b
invoke-virtual {v1}, Ljava/io/RandomAccessFile;->close()V
:try_end_7e
.catch Ljava/io/IOException; {:try_start_7b .. :try_end_7e} :catch_7f
.line 241
:cond_7e
:goto_7e
throw v0
.line 239
:catch_7f
move-exception v1
.line 240
invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V
goto :goto_7e
.line 235
:catchall_84
move-exception v0
goto :goto_79
.line 232
:catch_86
move-exception v2
goto :goto_6a
.end method
.method public static final getMD5(Ljava/lang/String;)Ljava/lang/String;
.registers 3
.prologue
.line 247
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_9
.line 248
const-string v0, ""
.line 259
:goto_8
return-object v0
.line 254
:cond_9
:try_start_9
const-string v0, "MD5"
invoke-static {v0}, Ljava/security/MessageDigest;->getInstance(Ljava/lang/String;)Ljava/security/MessageDigest;
move-result-object v0
.line 255
invoke-virtual {p0}, Ljava/lang/String;->getBytes()[B
move-result-object v1
invoke-virtual {v0, v1}, Ljava/security/MessageDigest;->update([B)V
:try_end_16
.catch Ljava/lang/Exception; {:try_start_9 .. :try_end_16} :catch_1f
.line 259
invoke-virtual {v0}, Ljava/security/MessageDigest;->digest()[B
move-result-object v0
invoke-static {v0}, Lcom/cleanmaster/filecloud/utils/FileUtils;->encodeHex([B)Ljava/lang/String;
move-result-object v0
goto :goto_8
.line 256
:catch_1f
move-exception v0
.line 257
const-string v0, ""
goto :goto_8
.end method
.method public static getUploadBasicData(Lcom/cleanmaster/filecloud/beans/ScanItem;Lcom/cleanmaster/filecloud/beans/FileInfo;J)[B
.registers 10
.prologue
.line 524
:try_start_0
new-instance v0, Lorg/json/JSONObject;
invoke-direct {v0}, Lorg/json/JSONObject;-><init>()V
.line 525
const-string v1, "scene_id"
invoke-virtual {p0}, Lcom/cleanmaster/filecloud/beans/ScanItem;->getSceneId()I
move-result v2
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;
.line 526
const-string v1, "uuid"
invoke-virtual {p0}, Lcom/cleanmaster/filecloud/beans/ScanItem;->getUuid()Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 527
const-string v1, "file_md5"
invoke-virtual {p1}, Lcom/cleanmaster/filecloud/beans/FileInfo;->getFileMD5()Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 528
const-string v1, "pak_md5"
invoke-virtual {p0}, Lcom/cleanmaster/filecloud/beans/ScanItem;->getPackageMD5()Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 529
const-string v1, "ticket"
invoke-virtual {p1}, Lcom/cleanmaster/filecloud/beans/FileInfo;->getTicket()Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 531
invoke-virtual {v0}, Lorg/json/JSONObject;->toString()Ljava/lang/String;
move-result-object v0
const-string v1, "UTF-8"
invoke-virtual {v0, v1}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B
move-result-object v0
.line 533
array-length v1, v0
.line 534
add-int/lit8 v2, v1, 0x4
new-array v2, v2, [B
.line 535
const/4 v3, 0x0
const/4 v4, 0x4
array-length v5, v0
invoke-static {v0, v3, v2, v4, v5}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
.line 538
const/4 v0, 0x3
ushr-int/lit8 v3, v1, 0x18
int-to-byte v3, v3
aput-byte v3, v2, v0
.line 539
const/4 v0, 0x2
ushr-int/lit8 v3, v1, 0x10
int-to-byte v3, v3
aput-byte v3, v2, v0
.line 540
const/4 v0, 0x1
ushr-int/lit8 v3, v1, 0x8
int-to-byte v3, v3
aput-byte v3, v2, v0
.line 541
const/4 v0, 0x0
int-to-byte v1, v1
aput-byte v1, v2, v0
.line 543
invoke-virtual {p0}, Lcom/cleanmaster/filecloud/beans/ScanItem;->getChannelId()I
move-result v0
const/4 v1, 0x0
invoke-static {v0, v2, v1, p2, p3}, Lcom/cleanmaster/filecloud/utils/FileUtils;->formatRequestData(I[BZJ)[B
:try_end_65
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_65} :catch_67
move-result-object v0
.line 545
:goto_66
return-object v0
.line 544
:catch_67
move-exception v0
.line 545
const/4 v0, 0x0
goto :goto_66
.end method
.method public static scan(Ljava/io/File;Lcom/cleanmaster/filecloud/interfaces/OnScanUpdateListener;)V
.registers 6
.prologue
.line 53
if-eqz p1, :cond_8
invoke-virtual {p0}, Ljava/io/File;->exists()Z
move-result v0
if-nez v0, :cond_9
.line 70
:cond_8
:goto_8
return-void
.line 57
:cond_9
invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z
move-result v0
if-nez v0, :cond_13
.line 58
invoke-interface {p1, p0}, Lcom/cleanmaster/filecloud/interfaces/OnScanUpdateListener;->onScanUpdated(Ljava/io/File;)V
goto :goto_8
.line 62
:cond_13
invoke-virtual {p0}, Ljava/io/File;->listFiles()[Ljava/io/File;
move-result-object v1
.line 63
if-eqz v1, :cond_8
.line 67
array-length v2, v1
const/4 v0, 0x0
:goto_1b
if-ge v0, v2, :cond_8
aget-object v3, v1, v0
.line 68
invoke-static {v3, p1}, Lcom/cleanmaster/filecloud/utils/FileUtils;->scan(Ljava/io/File;Lcom/cleanmaster/filecloud/interfaces/OnScanUpdateListener;)V
.line 67
add-int/lit8 v0, v0, 0x1
goto :goto_1b
.end method
.method public static scan(Ljava/lang/String;Lcom/cleanmaster/filecloud/interfaces/OnScanUpdateListener;)V
.registers 6
.prologue
const/4 v2, 0x1
.line 79
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_8
.line 97
:goto_7
return-void
.line 84
:cond_8
:try_start_8
const-string v0, "//"
invoke-virtual {p0, v0}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;
move-result-object v0
.line 85
array-length v1, v0
if-ne v1, v2, :cond_1f
.line 86
new-instance v1, Ljava/io/File;
const/4 v2, 0x0
aget-object v0, v0, v2
invoke-direct {v1, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
invoke-static {v1, p1}, Lcom/cleanmaster/filecloud/utils/FileUtils;->scan(Ljava/io/File;Lcom/cleanmaster/filecloud/interfaces/OnScanUpdateListener;)V
goto :goto_7
.line 96
:catch_1d
move-exception v0
goto :goto_7
.line 91
:cond_1f
const/4 v1, 0x1
aget-object v1, v0, v1
sget-object v2, Ljava/io/File;->separator:Ljava/lang/String;
invoke-virtual {v1, v2}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_35
.line 92
const/4 v1, 0x1
const/4 v2, 0x1
aget-object v2, v0, v2
const/4 v3, 0x1
invoke-virtual {v2, v3}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object v2
aput-object v2, v0, v1
.line 95
:cond_35
const/4 v1, 0x0
aget-object v1, v0, v1
const/4 v2, 0x1
aget-object v0, v0, v2
sget-object v2, Ljava/io/File;->separator:Ljava/lang/String;
invoke-virtual {v0, v2}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;
move-result-object v0
invoke-static {v1, v0, p1}, Lcom/cleanmaster/filecloud/utils/FileUtils;->scan(Ljava/lang/String;[Ljava/lang/String;Lcom/cleanmaster/filecloud/interfaces/OnScanUpdateListener;)V
:try_end_44
.catch Ljava/lang/Exception; {:try_start_8 .. :try_end_44} :catch_1d
goto :goto_7
.end method
.method public static scan(Ljava/lang/String;[Ljava/lang/String;Lcom/cleanmaster/filecloud/interfaces/OnScanUpdateListener;)V
.registers 12
.prologue
const/4 v2, 0x0
.line 105
if-nez p1, :cond_c
.line 106
new-instance v0, Ljava/io/File;
invoke-direct {v0, p0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
invoke-static {v0, p2}, Lcom/cleanmaster/filecloud/utils/FileUtils;->scan(Ljava/io/File;Lcom/cleanmaster/filecloud/interfaces/OnScanUpdateListener;)V
.line 141
:cond_b
return-void
.line 110
:cond_c
new-instance v3, Ljava/util/LinkedList;
invoke-direct {v3}, Ljava/util/LinkedList;-><init>()V
.line 111
new-instance v0, Lcom/cleanmaster/filecloud/utils/FileUtils$FileItem;
new-instance v1, Ljava/io/File;
invoke-direct {v1, p0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
invoke-direct {v0, v2, v1}, Lcom/cleanmaster/filecloud/utils/FileUtils$FileItem;-><init>(ILjava/io/File;)V
invoke-interface {v3, v0}, Ljava/util/Queue;->add(Ljava/lang/Object;)Z
.line 114
:cond_1e
:goto_1e
invoke-interface {v3}, Ljava/util/Queue;->isEmpty()Z
move-result v0
if-nez v0, :cond_b
.line 115
invoke-interface {v3}, Ljava/util/Queue;->poll()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/cleanmaster/filecloud/utils/FileUtils$FileItem;
.line 117
iget v1, v0, Lcom/cleanmaster/filecloud/utils/FileUtils$FileItem;->next:I
array-length v4, p1
if-ne v1, v4, :cond_35
.line 118
iget-object v0, v0, Lcom/cleanmaster/filecloud/utils/FileUtils$FileItem;->file:Ljava/io/File;
invoke-static {v0, p2}, Lcom/cleanmaster/filecloud/utils/FileUtils;->scan(Ljava/io/File;Lcom/cleanmaster/filecloud/interfaces/OnScanUpdateListener;)V
goto :goto_1e
.line 122
:cond_35
iget-object v1, v0, Lcom/cleanmaster/filecloud/utils/FileUtils$FileItem;->file:Ljava/io/File;
invoke-virtual {v1}, Ljava/io/File;->listFiles()[Ljava/io/File;
move-result-object v4
.line 123
if-eqz v4, :cond_1e
.line 128
array-length v5, v4
move v1, v2
:goto_3f
if-ge v1, v5, :cond_1e
aget-object v6, v4, v1
.line 129
invoke-virtual {v6}, Ljava/io/File;->getName()Ljava/lang/String;
move-result-object v7
.line 131
invoke-static {v7}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v8
if-eqz v8, :cond_50
.line 128
:cond_4d
:goto_4d
add-int/lit8 v1, v1, 0x1
goto :goto_3f
.line 135
:cond_50
iget v8, v0, Lcom/cleanmaster/filecloud/utils/FileUtils$FileItem;->next:I
aget-object v8, p1, v8
invoke-virtual {v7, v8}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v8
if-nez v8, :cond_64
iget v8, v0, Lcom/cleanmaster/filecloud/utils/FileUtils$FileItem;->next:I
aget-object v8, p1, v8
.line 136
invoke-virtual {v7, v8}, Ljava/lang/String;->matches(Ljava/lang/String;)Z
move-result v7
if-eqz v7, :cond_4d
.line 137
:cond_64
new-instance v7, Lcom/cleanmaster/filecloud/utils/FileUtils$FileItem;
iget v8, v0, Lcom/cleanmaster/filecloud/utils/FileUtils$FileItem;->next:I
add-int/lit8 v8, v8, 0x1
invoke-direct {v7, v8, v6}, Lcom/cleanmaster/filecloud/utils/FileUtils$FileItem;-><init>(ILjava/io/File;)V
invoke-interface {v3, v7}, Ljava/util/Queue;->add(Ljava/lang/Object;)Z
goto :goto_4d
.end method
.method public static stream2String(Ljava/io/InputStream;)Ljava/lang/String;
.registers 6
.prologue
const/4 v0, 0x0
.line 477
if-nez p0, :cond_4
.line 512
:cond_3
:goto_3
return-object v0
.line 484
:cond_4
:try_start_4
new-instance v2, Ljava/io/ByteArrayOutputStream;
invoke-direct {v2}, Ljava/io/ByteArrayOutputStream;-><init>()V
:try_end_9
.catch Ljava/io/IOException; {:try_start_4 .. :try_end_9} :catch_5b
.catchall {:try_start_4 .. :try_end_9} :catchall_49
.line 486
const/16 v1, 0x400
:try_start_b
new-array v1, v1, [B
.line 488
:goto_d
const/4 v3, 0x0
array-length v4, v1
invoke-virtual {p0, v1, v3, v4}, Ljava/io/InputStream;->read([BII)I
move-result v3
const/4 v4, -0x1
if-eq v3, v4, :cond_2c
.line 489
const/4 v4, 0x0
invoke-virtual {v2, v1, v4, v3}, Ljava/io/ByteArrayOutputStream;->write([BII)V
:try_end_1a
.catch Ljava/io/IOException; {:try_start_b .. :try_end_1a} :catch_1b
.catchall {:try_start_b .. :try_end_1a} :catchall_59
goto :goto_d
.line 500
:catch_1b
move-exception v1
.line 501
:goto_1c
:try_start_1c
invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V
:try_end_1f
.catchall {:try_start_1c .. :try_end_1f} :catchall_59
.line 504
if-eqz v2, :cond_24
.line 505
:try_start_21
invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
.line 507
:cond_24
if-eqz p0, :cond_3
.line 508
invoke-virtual {p0}, Ljava/io/InputStream;->close()V
:try_end_29
.catch Ljava/io/IOException; {:try_start_21 .. :try_end_29} :catch_2a
goto :goto_3
.line 510
:catch_2a
move-exception v1
goto :goto_3
.line 492
:cond_2c
:try_start_2c
const-string v1, "UTF-8"
invoke-virtual {v2, v1}, Ljava/io/ByteArrayOutputStream;->toString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
.line 493
invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->flush()V
.line 494
invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
:try_end_38
.catch Ljava/io/IOException; {:try_start_2c .. :try_end_38} :catch_1b
.catchall {:try_start_2c .. :try_end_38} :catchall_59
.line 495
const/4 v2, 0x0
.line 497
:try_start_39
invoke-virtual {p0}, Ljava/io/InputStream;->close()V
:try_end_3c
.catch Ljava/io/IOException; {:try_start_39 .. :try_end_3c} :catch_5b
.catchall {:try_start_39 .. :try_end_3c} :catchall_49
.line 498
const/4 v3, 0x0
.line 504
if-eqz v0, :cond_42
.line 505
:try_start_3f
invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
.line 507
:cond_42
if-eqz v0, :cond_47
.line 508
invoke-virtual {v3}, Ljava/io/InputStream;->close()V
:try_end_47
.catch Ljava/io/IOException; {:try_start_3f .. :try_end_47} :catch_5e
:cond_47
:goto_47
move-object v0, v1
.line 499
goto :goto_3
.line 503
:catchall_49
move-exception v1
move-object v2, v0
move-object v0, v1
.line 504
:goto_4c
if-eqz v2, :cond_51
.line 505
:try_start_4e
invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
.line 507
:cond_51
if-eqz p0, :cond_56
.line 508
invoke-virtual {p0}, Ljava/io/InputStream;->close()V
:try_end_56
.catch Ljava/io/IOException; {:try_start_4e .. :try_end_56} :catch_57
.line 510
:cond_56
:goto_56
throw v0
:catch_57
move-exception v1
goto :goto_56
.line 503
:catchall_59
move-exception v0
goto :goto_4c
.line 500
:catch_5b
move-exception v1
move-object v2, v0
goto :goto_1c
.line 510
:catch_5e
move-exception v0
goto :goto_47
.end method
.method public static uncompressForGZip(Ljava/io/InputStream;)Ljava/lang/String;
.registers 7
.prologue
const/4 v0, 0x0
.line 431
if-nez p0, :cond_4
.line 473
:cond_3
:goto_3
return-object v0
.line 438
:cond_4
:try_start_4
new-instance v3, Ljava/util/zip/GZIPInputStream;
invoke-direct {v3, p0}, Ljava/util/zip/GZIPInputStream;-><init>(Ljava/io/InputStream;)V
:try_end_9
.catch Ljava/io/IOException; {:try_start_4 .. :try_end_9} :catch_78
.catchall {:try_start_4 .. :try_end_9} :catchall_5c
.line 439
:try_start_9
new-instance v2, Ljava/io/ByteArrayOutputStream;
invoke-direct {v2}, Ljava/io/ByteArrayOutputStream;-><init>()V
:try_end_e
.catch Ljava/io/IOException; {:try_start_9 .. :try_end_e} :catch_7c
.catchall {:try_start_9 .. :try_end_e} :catchall_72
.line 441
const/16 v1, 0x100
:try_start_10
new-array v1, v1, [B
.line 443
:goto_12
const/4 v4, 0x0
array-length v5, v1
invoke-virtual {v3, v1, v4, v5}, Ljava/util/zip/GZIPInputStream;->read([BII)I
move-result v4
const/4 v5, -0x1
if-eq v4, v5, :cond_36
.line 444
const/4 v5, 0x0
invoke-virtual {v2, v1, v5, v4}, Ljava/io/ByteArrayOutputStream;->write([BII)V
:try_end_1f
.catch Ljava/io/IOException; {:try_start_10 .. :try_end_1f} :catch_20
.catchall {:try_start_10 .. :try_end_1f} :catchall_76
goto :goto_12
.line 458
:catch_20
move-exception v1
.line 459
:goto_21
:try_start_21
invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V
:try_end_24
.catchall {:try_start_21 .. :try_end_24} :catchall_76
.line 462
if-eqz v3, :cond_29
.line 463
:try_start_26
invoke-virtual {v3}, Ljava/util/zip/GZIPInputStream;->close()V
.line 465
:cond_29
if-eqz v2, :cond_2e
.line 466
invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
.line 468
:cond_2e
if-eqz p0, :cond_3
.line 469
invoke-virtual {p0}, Ljava/io/InputStream;->close()V
:try_end_33
.catch Ljava/io/IOException; {:try_start_26 .. :try_end_33} :catch_34
goto :goto_3
.line 471
:catch_34
move-exception v1
goto :goto_3
.line 447
:cond_36
:try_start_36
const-string v1, "UTF-8"
invoke-virtual {v2, v1}, Ljava/io/ByteArrayOutputStream;->toString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
.line 448
invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->flush()V
.line 449
invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
:try_end_42
.catch Ljava/io/IOException; {:try_start_36 .. :try_end_42} :catch_20
.catchall {:try_start_36 .. :try_end_42} :catchall_76
.line 450
const/4 v2, 0x0
.line 452
:try_start_43
invoke-virtual {v3}, Ljava/util/zip/GZIPInputStream;->close()V
:try_end_46
.catch Ljava/io/IOException; {:try_start_43 .. :try_end_46} :catch_7c
.catchall {:try_start_43 .. :try_end_46} :catchall_72
.line 453
const/4 v3, 0x0
.line 455
:try_start_47
invoke-virtual {p0}, Ljava/io/InputStream;->close()V
:try_end_4a
.catch Ljava/io/IOException; {:try_start_47 .. :try_end_4a} :catch_78
.catchall {:try_start_47 .. :try_end_4a} :catchall_5c
.line 456
const/4 v4, 0x0
.line 462
if-eqz v0, :cond_50
.line 463
:try_start_4d
invoke-virtual {v3}, Ljava/util/zip/GZIPInputStream;->close()V
.line 465
:cond_50
if-eqz v0, :cond_55
.line 466
invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
.line 468
:cond_55
if-eqz v0, :cond_5a
.line 469
invoke-virtual {v4}, Ljava/io/InputStream;->close()V
:try_end_5a
.catch Ljava/io/IOException; {:try_start_4d .. :try_end_5a} :catch_7f
:cond_5a
:goto_5a
move-object v0, v1
.line 457
goto :goto_3
.line 461
:catchall_5c
move-exception v1
move-object v2, v0
move-object v3, v0
move-object v0, v1
.line 462
:goto_60
if-eqz v3, :cond_65
.line 463
:try_start_62
invoke-virtual {v3}, Ljava/util/zip/GZIPInputStream;->close()V
.line 465
:cond_65
if-eqz v2, :cond_6a
.line 466
invoke-virtual {v2}, Ljava/io/ByteArrayOutputStream;->close()V
.line 468
:cond_6a
if-eqz p0, :cond_6f
.line 469
invoke-virtual {p0}, Ljava/io/InputStream;->close()V
:try_end_6f
.catch Ljava/io/IOException; {:try_start_62 .. :try_end_6f} :catch_70
.line 471
:cond_6f
:goto_6f
throw v0
:catch_70
move-exception v1
goto :goto_6f
.line 461
:catchall_72
move-exception v1
move-object v2, v0
move-object v0, v1
goto :goto_60
:catchall_76
move-exception v0
goto :goto_60
.line 458
:catch_78
move-exception v1
move-object v2, v0
move-object v3, v0
goto :goto_21
:catch_7c
move-exception v1
move-object v2, v0
goto :goto_21
.line 471
:catch_7f
move-exception v0
goto :goto_5a
.end method
.method public static uncompressForGZip([B)[B
.registers 8
.prologue
const/4 v1, 0x0
.line 378
if-eqz p0, :cond_6
array-length v0, p0
if-nez v0, :cond_8
:cond_6
move-object v0, v1
.line 423
:cond_7
:goto_7
return-object v0
.line 386
:cond_8
:try_start_8
new-instance v2, Ljava/io/ByteArrayInputStream;
invoke-direct {v2, p0}, Ljava/io/ByteArrayInputStream;-><init>([B)V
:try_end_d
.catch Ljava/io/IOException; {:try_start_8 .. :try_end_d} :catch_84
.catchall {:try_start_8 .. :try_end_d} :catchall_63
.line 387
:try_start_d
new-instance v4, Ljava/util/zip/GZIPInputStream;
invoke-direct {v4, v2}, Ljava/util/zip/GZIPInputStream;-><init>(Ljava/io/InputStream;)V
:try_end_12
.catch Ljava/io/IOException; {:try_start_d .. :try_end_12} :catch_89
.catchall {:try_start_d .. :try_end_12} :catchall_79
.line 388
:try_start_12
new-instance v3, Ljava/io/ByteArrayOutputStream;
invoke-direct {v3}, Ljava/io/ByteArrayOutputStream;-><init>()V
:try_end_17
.catch Ljava/io/IOException; {:try_start_12 .. :try_end_17} :catch_8d
.catchall {:try_start_12 .. :try_end_17} :catchall_7d
.line 390
const/16 v0, 0x100
:try_start_19
new-array v0, v0, [B
.line 392
:goto_1b
const/4 v5, 0x0
array-length v6, v0
invoke-virtual {v4, v0, v5, v6}, Ljava/util/zip/GZIPInputStream;->read([BII)I
move-result v5
const/4 v6, -0x1
if-eq v5, v6, :cond_3e
.line 393
const/4 v6, 0x0
invoke-virtual {v3, v0, v6, v5}, Ljava/io/ByteArrayOutputStream;->write([BII)V
:try_end_28
.catch Ljava/io/IOException; {:try_start_19 .. :try_end_28} :catch_29
.catchall {:try_start_19 .. :try_end_28} :catchall_80
goto :goto_1b
.line 408
:catch_29
move-exception v0
.line 409
:goto_2a
:try_start_2a
invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V
:try_end_2d
.catchall {:try_start_2a .. :try_end_2d} :catchall_80
.line 412
if-eqz v4, :cond_32
.line 413
:try_start_2f
invoke-virtual {v4}, Ljava/util/zip/GZIPInputStream;->close()V
.line 415
:cond_32
if-eqz v3, :cond_37
.line 416
invoke-virtual {v3}, Ljava/io/ByteArrayOutputStream;->close()V
.line 418
:cond_37
if-eqz v2, :cond_3c
.line 419
invoke-virtual {v2}, Ljava/io/ByteArrayInputStream;->close()V
:try_end_3c
.catch Ljava/io/IOException; {:try_start_2f .. :try_end_3c} :catch_82
:cond_3c
:goto_3c
move-object v0, v1
.line 423
goto :goto_7
.line 396
:cond_3e
:try_start_3e
invoke-virtual {v3}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
move-result-object v0
.line 397
invoke-virtual {v3}, Ljava/io/ByteArrayOutputStream;->flush()V
.line 398
invoke-virtual {v3}, Ljava/io/ByteArrayOutputStream;->close()V
:try_end_48
.catch Ljava/io/IOException; {:try_start_3e .. :try_end_48} :catch_29
.catchall {:try_start_3e .. :try_end_48} :catchall_80
.line 399
const/4 v3, 0x0
.line 401
:try_start_49
invoke-virtual {v4}, Ljava/util/zip/GZIPInputStream;->close()V
:try_end_4c
.catch Ljava/io/IOException; {:try_start_49 .. :try_end_4c} :catch_8d
.catchall {:try_start_49 .. :try_end_4c} :catchall_7d
.line 402
const/4 v4, 0x0
.line 404
:try_start_4d
invoke-virtual {v2}, Ljava/io/ByteArrayInputStream;->close()V
:try_end_50
.catch Ljava/io/IOException; {:try_start_4d .. :try_end_50} :catch_89
.catchall {:try_start_4d .. :try_end_50} :catchall_79
.line 405
const/4 v2, 0x0
.line 412
if-eqz v1, :cond_56
.line 413
:try_start_53
invoke-virtual {v4}, Ljava/util/zip/GZIPInputStream;->close()V
.line 415
:cond_56
if-eqz v1, :cond_5b
.line 416
invoke-virtual {v3}, Ljava/io/ByteArrayOutputStream;->close()V
.line 418
:cond_5b
if-eqz v1, :cond_7
.line 419
invoke-virtual {v2}, Ljava/io/ByteArrayInputStream;->close()V
:try_end_60
.catch Ljava/io/IOException; {:try_start_53 .. :try_end_60} :catch_61
goto :goto_7
.line 421
:catch_61
move-exception v1
goto :goto_7
.line 411
:catchall_63
move-exception v0
move-object v2, v1
move-object v3, v1
move-object v4, v1
.line 412
:goto_67
if-eqz v4, :cond_6c
.line 413
:try_start_69
invoke-virtual {v4}, Ljava/util/zip/GZIPInputStream;->close()V
.line 415
:cond_6c
if-eqz v3, :cond_71
.line 416
invoke-virtual {v3}, Ljava/io/ByteArrayOutputStream;->close()V
.line 418
:cond_71
if-eqz v2, :cond_76
.line 419
invoke-virtual {v2}, Ljava/io/ByteArrayInputStream;->close()V
:try_end_76
.catch Ljava/io/IOException; {:try_start_69 .. :try_end_76} :catch_77
.line 421
:cond_76
:goto_76
throw v0
:catch_77
move-exception v1
goto :goto_76
.line 411
:catchall_79
move-exception v0
move-object v3, v1
move-object v4, v1
goto :goto_67
:catchall_7d
move-exception v0
move-object v3, v1
goto :goto_67
:catchall_80
move-exception v0
goto :goto_67
.line 421
:catch_82
move-exception v0
goto :goto_3c
.line 408
:catch_84
move-exception v0
move-object v2, v1
move-object v3, v1
move-object v4, v1
goto :goto_2a
:catch_89
move-exception v0
move-object v3, v1
move-object v4, v1
goto :goto_2a
:catch_8d
move-exception v0
move-object v3, v1
goto :goto_2a
.end method