Info Call to External Storage API

Description

List of all external storage API calls. Insecure storage of sensitive information by setting insecure permissions or storing data without encryption might expose this information to an attacker.

Recommendation

This entry is informative, no recommendations applicable.

Technical details

Method io.fabric.sdk.android.services.events.QueueFileEventStorage.rollOver() calling method java.io.File.<init>()


    public void rollOver(String p4)
    {
        this.queueFile.close();
        this.move(this.workingFile, new java.io.File(this.targetDirectory, p4));
        this.queueFile = new io.fabric.sdk.android.services.common.QueueFile(this.workingFile);
        return;
    }

Method android.support.v4.content.FileProvider.buildPath() calling method java.io.File.<init>()


    private static varargs java.io.File buildPath(java.io.File p5, String[] p6)
    {
        int v4 = p6.length;
        int v3 = 0;
        java.io.File v1 = p5;
        while (v3 < v4) {
            java.io.File v0_1;
            String v2 = p6[v3];
            if (v2 == null) {
                v0_1 = v1;
            } else {
                v0_1 = new java.io.File(v1, v2);
            }
            v3++;
            v1 = v0_1;
        }
        return v1;
    }

Method com.crashlytics.android.core.BinaryImagesConverter.getLibraryFile() calling method java.io.File.<init>()


    private java.io.File getLibraryFile(String p3)
    {
        java.io.File v0_1 = new java.io.File(p3);
        if (!v0_1.exists()) {
            v0_1 = this.correctDataPath(v0_1);
        }
        return v0_1;
    }

Method com.crashlytics.android.core.ClsFileOutputStream.<init>() calling method java.io.File.<init>()


    public ClsFileOutputStream(java.io.File p4, String p5)
    {
        super(new java.io.File(p4, new StringBuilder().append(p5).append(".cls_temp").toString()));
        super.closed = 0;
        super.root = new StringBuilder().append(p4).append(java.io.File.separator).append(p5).toString();
        super.inProgress = new java.io.File(new StringBuilder().append(super.root).append(".cls_temp").toString());
        return;
    }

Method android.support.v4.graphics.TypefaceCompatUtil.mmap() calling method java.io.FileInputStream.<init>()


    private static java.nio.ByteBuffer mmap(java.io.File p10)
    {
        java.io.FileInputStream v7_1 = new java.io.FileInputStream(p10);
        try {
            java.nio.channels.FileChannel v0 = v7_1.getChannel();
            Throwable v1_0 = v0.map(java.nio.channels.FileChannel$MapMode.READ_ONLY, 0, v0.size());
        } catch (Throwable v1_2) {
            Throwable v2_0 = v1_2;
            Throwable v3 = 0;
            if (v7_1 != null) {
                if (v3 == null) {
                    v7_1.close();
                } else {
                    v7_1.close();
                }
            }
            throw v2_0;
        } catch (Throwable v1_1) {
            try {
                throw v1_1;
            } catch (Throwable v2_0) {
                v3 = v1_1;
            }
        }
        if (v7_1 == null) {
            return v1_0;
        } else {
            if (0 == 0) {
                v7_1.close();
                return v1_0;
            } else {
                try {
                    v7_1.close();
                } catch (Throwable v2_1) {
                    0.addSuppressed(v2_1);
                }
                return v1_0;
            }
        }
    }

Method com.crashlytics.android.core.MetaDataStore.getKeysFileForSession() calling method java.io.File.<init>()


    public java.io.File getKeysFileForSession(String p5)
    {
        return new java.io.File(this.filesDir, new StringBuilder().append(p5).append("keys").append(".meta").toString());
    }

Method com.google.android.gms.internal.zzahg.zze() calling method android.content.Context.openFileOutput()


    public static void zze(android.content.Context p2, String p3, String p4)
    {
        try {
            Exception v0_1 = p2.openFileOutput(p3, 0);
            v0_1.write(p4.getBytes("UTF-8"));
            v0_1.close();
        } catch (Exception v0_2) {
            com.google.android.gms.internal.zzafy.zzb("Error writing to file in internal storage.", v0_2);
        }
        return;
    }

Method android.support.v4.content.FileProvider.<clinit>() calling method java.io.File.<init>()


    static FileProvider()
    {
        java.util.HashMap v0_1 = new String[2];
        v0_1[0] = "_display_name";
        v0_1[1] = "_size";
        android.support.v4.content.FileProvider.COLUMNS = v0_1;
        android.support.v4.content.FileProvider.DEVICE_ROOT = new java.io.File("/");
        android.support.v4.content.FileProvider.sCache = new java.util.HashMap();
        return;
    }

Method com.crashlytics.android.core.CrashlyticsController.readFile() calling method java.io.File.<init>()


    private byte[] readFile(String p4, String p5)
    {
        return com.crashlytics.android.core.NativeFileUtils.readFile(new java.io.File(this.getFilesDir(), new StringBuilder().append(p4).append(p5).toString()));
    }

Method io.fabric.sdk.android.FabricContext.getFilesDir() calling method java.io.File.<init>()


    public java.io.File getFilesDir()
    {
        return new java.io.File(super.getFilesDir(), this.componentPath);
    }

Method com.crashlytics.android.core.MetaDataStore.getUserDataFileForSession() calling method java.io.File.<init>()


    public java.io.File getUserDataFileForSession(String p5)
    {
        return new java.io.File(this.filesDir, new StringBuilder().append(p5).append("user").append(".meta").toString());
    }

Method com.google.android.gms.internal.zzami.zzdl() calling method android.content.Context.openFileOutput()


    private final boolean zzdl(String p6)
    {
        try {
            java.io.IOException v1_1 = com.google.android.gms.internal.zzami.zzdk(p6);
            this.zzdm("Storing hashed adid.");
            String v2_0 = this.getContext().openFileOutput("gaClientIdData", 0);
            v2_0.write(v1_1.getBytes());
            v2_0.close();
            this.zzdns = v1_1;
        } catch (java.io.IOException v1_0) {
            this.zze("Error creating hash file", v1_0);
        }
        return 1;
    }

Method com.google.android.gms.internal.zzanm.zzu() calling method android.content.Context.openFileOutput()


    private final boolean zzu(android.content.Context p5, String p6)
    {
        java.io.IOException v0_0 = 0;
        com.google.android.gms.common.internal.zzbp.zzgg(p6);
        com.google.android.gms.common.internal.zzbp.zzgh("ClientId should be saved from worker thread");
        try {
            this.zza("Storing clientId", p6);
            String v2_0 = p5.openFileOutput("gaClientId", 0);
            v2_0.write(p6.getBytes());
        } catch (java.io.IOException v1_4) {
            this.zze("Error creating clientId file", v1_4);
            if (v2_0 == null) {
                return v0_0;
            } else {
                try {
                    v2_0.close();
                } catch (java.io.IOException v1_5) {
                    this.zze("Failed to close clientId writing stream", v1_5);
                }
                return v0_0;
            }
        } catch (java.io.IOException v1_1) {
            this.zze("Error writing to clientId file", v1_1);
            if (v2_0 == null) {
                return v0_0;
            } else {
                try {
                    v2_0.close();
                } catch (java.io.IOException v1_3) {
                    this.zze("Failed to close clientId writing stream", v1_3);
                }
                return v0_0;
            }
        } catch (java.io.IOException v0_1) {
            if (v2_0 != null) {
                try {
                    v2_0.close();
                } catch (java.io.IOException v1_6) {
                    this.zze("Failed to close clientId writing stream", v1_6);
                }
            }
            throw v0_1;
        }
        if (v2_0 != null) {
            try {
                v2_0.close();
            } catch (java.io.IOException v0_2) {
                this.zze("Failed to close clientId writing stream", v0_2);
            }
        }
        v0_0 = 1;
        return v0_0;
    }

Method com.google.android.gms.internal.zzccw.zzazd() calling method java.io.RandomAccessFile.<init>()


    private final boolean zzazd()
    {
        this.zzauk().zzuj();
        try {
            int v0_11;
            this.zzits = new java.io.RandomAccessFile(new java.io.File(this.mContext.getFilesDir(), com.google.android.gms.internal.zzcax.zzawi()), "rw").getChannel();
            this.zzitr = this.zzits.tryLock();
        } catch (int v0_14) {
            this.zzaul().zzayd().zzj("Failed to acquire storage lock", v0_14);
            v0_11 = 0;
            return v0_11;
        } catch (int v0_12) {
            this.zzaul().zzayd().zzj("Failed to access storage lock file", v0_12);
        }
        if (this.zzitr == null) {
            this.zzaul().zzayd().log("Storage concurrent data access panic");
        } else {
            this.zzaul().zzayj().log("Storage concurrent access okay");
            v0_11 = 1;
            return v0_11;
        }
    }

Method io.fabric.sdk.android.services.common.QueueFile.open() calling method java.io.RandomAccessFile.<init>()


    private static java.io.RandomAccessFile open(java.io.File p2)
    {
        return new java.io.RandomAccessFile(p2, "rwd");
    }

Method android.support.v4.content.ContextCompat.buildPath() calling method java.io.File.<init>()


    private static varargs java.io.File buildPath(java.io.File p5, String[] p6)
    {
        int v4 = p6.length;
        int v3 = 0;
        java.io.File v1 = p5;
        while (v3 < v4) {
            java.io.File v0_2;
            String v2 = p6[v3];
            if (v1 != null) {
                if (v2 == null) {
                    v0_2 = v1;
                } else {
                    v0_2 = new java.io.File(v1, v2);
                }
            } else {
                v0_2 = new java.io.File(v2);
            }
            v3++;
            v1 = v0_2;
        }
        return v1;
    }

Method android.support.v4.content.ContextCompat.getCodeCacheDir() calling method java.io.File.<init>()


    public static java.io.File getCodeCacheDir(android.content.Context p4)
    {
        java.io.File v1_1;
        if (android.os.Build$VERSION.SDK_INT < 21) {
            v1_1 = android.support.v4.content.ContextCompat.createFilesDir(new java.io.File(p4.getApplicationInfo().dataDir, "code_cache"));
        } else {
            v1_1 = p4.getCodeCacheDir();
        }
        return v1_1;
    }

Method android.support.v4.content.ContextCompat.getDataDir() calling method java.io.File.<init>()


    public static java.io.File getDataDir(android.content.Context p3)
    {
        int v1_1;
        if (android.os.Build$VERSION.SDK_INT < 24) {
            String v0 = p3.getApplicationInfo().dataDir;
            if (v0 == null) {
                v1_1 = 0;
            } else {
                v1_1 = new java.io.File(v0);
            }
        } else {
            v1_1 = p3.getDataDir();
        }
        return v1_1;
    }

Method android.support.v4.content.ContextCompat.getNoBackupFilesDir() calling method java.io.File.<init>()


    public static final java.io.File getNoBackupFilesDir(android.content.Context p4)
    {
        java.io.File v1_1;
        if (android.os.Build$VERSION.SDK_INT < 21) {
            v1_1 = android.support.v4.content.ContextCompat.createFilesDir(new java.io.File(p4.getApplicationInfo().dataDir, "no_backup"));
        } else {
            v1_1 = p4.getNoBackupFilesDir();
        }
        return v1_1;
    }

Method android.support.v4.content.FileProvider$SimplePathStrategy.getFileForUri() calling method java.io.File.<init>()


    public java.io.File getFileForUri(android.net.Uri p10)
    {
        String v2_1 = p10.getEncodedPath();
        int v4 = v2_1.indexOf(47, 1);
        String v5 = android.net.Uri.decode(v2_1.substring(1, v4));
        String vtmp6 = android.net.Uri.decode(v2_1.substring((v4 + 1)));
        java.io.File v3_1 = ((java.io.File) this.mRoots.get(v5));
        if (v3_1 != null) {
            try {
                java.io.File v1_2 = new java.io.File(v3_1, vtmp6).getCanonicalFile();
            } catch (java.io.IOException v0) {
                throw new IllegalArgumentException(new StringBuilder().append("Failed to resolve canonical path for ").append(v1_2).toString());
            }
            if (v1_2.getPath().startsWith(v3_1.getPath())) {
                return v1_2;
            } else {
                throw new SecurityException("Resolved path jumped beyond configured root");
            }
        } else {
            throw new IllegalArgumentException(new StringBuilder().append("Unable to find configured root for ").append(p10).toString());
        }
    }

Method android.support.v4.graphics.TypefaceCompatApi21Impl.getFile() calling method java.io.File.<init>()


    private java.io.File getFile(android.os.ParcelFileDescriptor p6)
    {
        try {
            int v2_6;
            String v1 = android.system.Os.readlink(new StringBuilder().append("/proc/self/fd/").append(p6.getFd()).toString());
        } catch (android.system.ErrnoException v0) {
            v2_6 = 0;
            return v2_6;
        }
        if (!android.system.OsConstants.S_ISREG(android.system.Os.stat(v1).st_mode)) {
            v2_6 = 0;
            return v2_6;
        } else {
            v2_6 = new java.io.File(v1);
            return v2_6;
        }
    }

Method android.support.v4.graphics.TypefaceCompatUtil.getTempFile() calling method java.io.File.<init>()


    public static java.io.File getTempFile(android.content.Context p5)
    {
        String v2 = new StringBuilder().append(".font").append(android.os.Process.myPid()).append("-").append(android.os.Process.myTid()).append("-").toString();
        int v1 = 0;
        while (v1 < 100) {
            int v0_0 = new java.io.File(p5.getCacheDir(), new StringBuilder().append(v2).append(v1).toString());
            try {
                if (v0_0.createNewFile()) {
                    return v0_0;
                }
                v1++;
            } catch (java.io.IOException v3) {
            }
        }
        v0_0 = 0;
        return v0_0;
    }

Method android.support.v4.provider.RawDocumentFile.createDirectory() calling method java.io.File.<init>()


    public android.support.v4.provider.DocumentFile createDirectory(String p3)
    {
        int v1_2;
        java.io.File v0_1 = new java.io.File(this.mFile, p3);
        if ((!v0_1.isDirectory()) && (!v0_1.mkdir())) {
            v1_2 = 0;
        } else {
            v1_2 = new android.support.v4.provider.RawDocumentFile(this, v0_1);
        }
        return v1_2;
    }

Method android.support.v4.provider.RawDocumentFile.createFile() calling method java.io.File.<init>()


    public android.support.v4.provider.DocumentFile createFile(String p7, String p8)
    {
        String v1 = android.webkit.MimeTypeMap.getSingleton().getExtensionFromMimeType(p7);
        if (v1 != null) {
            p8 = new StringBuilder().append(p8).append(".").append(v1).toString();
        }
        java.io.File v2_1 = new java.io.File(this.mFile, p8);
        try {
            v2_1.createNewFile();
            int v3_5 = new android.support.v4.provider.RawDocumentFile(this, v2_1);
        } catch (java.io.IOException v0) {
            android.util.Log.w("DocumentFile", new StringBuilder().append("Failed to createFile: ").append(v0).toString());
            v3_5 = 0;
        }
        return v3_5;
    }

Method android.support.v4.provider.RawDocumentFile.renameTo() calling method java.io.File.<init>()


    public boolean renameTo(String p3)
    {
        int v1_1;
        java.io.File v0_1 = new java.io.File(this.mFile.getParentFile(), p3);
        if (!this.mFile.renameTo(v0_1)) {
            v1_1 = 0;
        } else {
            this.mFile = v0_1;
            v1_1 = 1;
        }
        return v1_1;
    }

Method android.support.v4.util.AtomicFile.<init>() calling method java.io.File.<init>()


    public AtomicFile(java.io.File p4)
    {
        this.mBaseName = p4;
        this.mBackupName = new java.io.File(new StringBuilder().append(p4.getPath()).append(".bak").toString());
        return;
    }

Method io.fabric.sdk.android.services.common.CommonUtils.getTotalRamInBytes() calling method java.io.File.<init>()


    public static declared_synchronized long getTotalRamInBytes()
    {
        try {
            if (io.fabric.sdk.android.services.common.CommonUtils.totalRamInBytes == -1) {
                long v0 = 0;
                String v3_0 = io.fabric.sdk.android.services.common.CommonUtils.extractFieldFromSystemFile(new java.io.File("/proc/meminfo"), "MemTotal");
                if (!android.text.TextUtils.isEmpty(v3_0)) {
                    String v3_1 = v3_0.toUpperCase(java.util.Locale.US);
                    try {
                        if (!v3_1.endsWith("KB")) {
                            if (!v3_1.endsWith("MB")) {
                                if (!v3_1.endsWith("GB")) {
                                    io.fabric.sdk.android.Fabric.getLogger().d("Fabric", new StringBuilder().append("Unexpected meminfo format while computing RAM: ").append(v3_1).toString());
                                } else {
                                    v0 = io.fabric.sdk.android.services.common.CommonUtils.convertMemInfoToBytes(v3_1, "GB", 1073741824);
                                }
                            } else {
                                v0 = io.fabric.sdk.android.services.common.CommonUtils.convertMemInfoToBytes(v3_1, "MB", 1048576);
                            }
                        } else {
                            v0 = io.fabric.sdk.android.services.common.CommonUtils.convertMemInfoToBytes(v3_1, "KB", 1024);
                        }
                    } catch (NumberFormatException v2) {
                        io.fabric.sdk.android.Fabric.getLogger().e("Fabric", new StringBuilder().append("Unexpected meminfo format while computing RAM: ").append(v3_1).toString(), v2);
                    }
                }
                io.fabric.sdk.android.services.common.CommonUtils.totalRamInBytes = v0;
            }
        } catch (io.fabric.sdk.android.Logger v4_15) {
            throw v4_15;
        }
        return io.fabric.sdk.android.services.common.CommonUtils.totalRamInBytes;
    }

Method com.crashlytics.android.answers.Answers.onPreExecute() calling method java.io.File.<init>()


    protected boolean onPreExecute()
    {
        try {
            String v5;
            android.content.Context v2 = this.getContext();
            android.content.pm.PackageManager v11 = v2.getPackageManager();
            String v12 = v2.getPackageName();
            android.content.pm.PackageInfo v10 = v11.getPackageInfo(v12, 0);
            String v4 = Integer.toString(v10.versionCode);
        } catch (Exception v8) {
            io.fabric.sdk.android.Fabric.getLogger().e("Answers", "Error retrieving app properties", v8);
            int v1_12 = 0;
            return v1_12;
        }
        if (v10.versionName != null) {
            v5 = v10.versionName;
        } else {
            v5 = "0.0";
        }
        long v6;
        if (android.os.Build$VERSION.SDK_INT < 9) {
            v6 = new java.io.File(v11.getApplicationInfo(v12, 0).sourceDir).lastModified();
        } else {
            v6 = v10.firstInstallTime;
        }
        this.analyticsManager = com.crashlytics.android.answers.SessionAnalyticsManager.build(this, v2, this.getIdManager(), v4, v5, v6);
        this.analyticsManager.enable();
        this.firebaseEnabled = new io.fabric.sdk.android.services.common.FirebaseInfo().isFirebaseCrashlyticsEnabled(v2);
        v1_12 = 1;
        return v1_12;
    }

Method com.crashlytics.android.core.BinaryImagesConverter.correctDataPath() calling method java.io.File.<init>()


    private java.io.File correctDataPath(java.io.File p8)
    {
        java.io.File v3;
        if (android.os.Build$VERSION.SDK_INT >= 9) {
            if (p8.getAbsolutePath().startsWith("/data")) {
                try {
                    p8 = new java.io.File(this.context.getPackageManager().getApplicationInfo(this.context.getPackageName(), 0).nativeLibraryDir, p8.getName());
                } catch (android.content.pm.PackageManager$NameNotFoundException v1) {
                    io.fabric.sdk.android.Fabric.getLogger().e("CrashlyticsCore", "Error getting ApplicationInfo", v1);
                }
            }
            v3 = p8;
        } else {
            v3 = p8;
        }
        return v3;
    }

Method com.crashlytics.android.core.ClsFileOutputStream.<init>() calling method java.io.File.<init>()


    public ClsFileOutputStream(String p2, String p3)
    {
        this(new java.io.File(p2), p3);
        return;
    }

Method com.crashlytics.android.core.ClsFileOutputStream.close() calling method java.io.File.<init>()


    public declared_synchronized void close()
    {
        try {
            if (!this.closed) {
                this.closed = 1;
                super.flush();
                super.close();
                java.io.File v0_0 = new java.io.File(new StringBuilder().append(this.root).append(".cls").toString());
                if (!this.inProgress.renameTo(v0_0)) {
                    String v1 = "";
                    if (!v0_0.exists()) {
                        if (!this.inProgress.exists()) {
                            v1 = " (source does not exist)";
                        }
                    } else {
                        v1 = " (target already exists)";
                    }
                    throw new java.io.IOException(new StringBuilder().append("Could not rename temp file: ").append(this.inProgress).append(" -> ").append(v0_0).append(v1).toString());
                } else {
                    this.inProgress = 0;
                    this.complete = v0_0;
                }
            }
        } catch (java.io.IOException v2_12) {
            throw v2_12;
        }
        return;
    }

Method com.crashlytics.android.core.CrashlyticsController$LogFileDirectoryProvider.getLogFileDir() calling method java.io.File.<init>()


    public java.io.File getLogFileDir()
    {
        java.io.File v0_1 = new java.io.File(this.rootFileStore.getFilesDir(), "log-files");
        if (!v0_1.exists()) {
            v0_1.mkdirs();
        }
        return v0_1;
    }

Method com.crashlytics.android.core.CrashlyticsController.finalizeMostRecentNativeCrash() calling method java.io.File.<init>()


    private void finalizeMostRecentNativeCrash(android.content.Context p19, java.io.File p20, String p21)
    {
        byte[] v8 = com.crashlytics.android.core.NativeFileUtils.minidumpFromDirectory(p20);
        byte[] v7 = com.crashlytics.android.core.NativeFileUtils.metadataJsonFromDirectory(p20);
        byte[] v3 = com.crashlytics.android.core.NativeFileUtils.binaryImagesJsonFromDirectory(p20, p19);
        if ((v8 != null) && (v8.length != 0)) {
            com.crashlytics.android.core.CrashlyticsController.recordFatalExceptionAnswersEvent(p21, "<native-crash: minidump>");
            byte[] v12 = this.readFile(p21, "BeginSession.json");
            byte[] v2 = this.readFile(p21, "SessionApp.json");
            byte[] v4 = this.readFile(p21, "SessionDevice.json");
            byte[] v10 = this.readFile(p21, "SessionOS.json");
            byte[] v13 = com.crashlytics.android.core.NativeFileUtils.readFile(new com.crashlytics.android.core.MetaDataStore(this.getFilesDir()).getUserDataFileForSession(p21));
            com.crashlytics.android.core.LogFileManager v11_1 = new com.crashlytics.android.core.LogFileManager(this.crashlyticsCore.getContext(), this.logFileDirectoryProvider, p21);
            byte[] v6 = v11_1.getBytesForLog();
            v11_1.clearLog();
            byte[] v5 = com.crashlytics.android.core.NativeFileUtils.readFile(new com.crashlytics.android.core.MetaDataStore(this.getFilesDir()).getKeysFileForSession(p21));
            java.io.File v9_1 = new java.io.File(this.fileStore.getFilesDir(), p21);
            if (v9_1.mkdir()) {
                this.gzipIfNotEmpty(v8, new java.io.File(v9_1, "minidump"));
                this.gzipIfNotEmpty(v7, new java.io.File(v9_1, "metadata"));
                this.gzipIfNotEmpty(v3, new java.io.File(v9_1, "binaryImages"));
                this.gzipIfNotEmpty(v12, new java.io.File(v9_1, "session"));
                this.gzipIfNotEmpty(v2, new java.io.File(v9_1, "app"));
                this.gzipIfNotEmpty(v4, new java.io.File(v9_1, "device"));
                this.gzipIfNotEmpty(v10, new java.io.File(v9_1, "os"));
                this.gzipIfNotEmpty(v13, new java.io.File(v9_1, "user"));
                this.gzipIfNotEmpty(v6, new java.io.File(v9_1, "logs"));
                this.gzipIfNotEmpty(v5, new java.io.File(v9_1, "keys"));
            } else {
                io.fabric.sdk.android.Fabric.getLogger().d("CrashlyticsCore", "Couldn\'t create native sessions directory");
            }
        } else {
            io.fabric.sdk.android.Fabric.getLogger().w("CrashlyticsCore", new StringBuilder().append("No minidump data found in directory ").append(p20).toString());
        }
        return;
    }

Method com.google.android.gms.common.util.zzu.getNoBackupFilesDir() calling method java.io.File.<init>()


    public static java.io.File getNoBackupFilesDir(android.content.Context p3)
    {
        java.io.File v0_1;
        if (!com.google.android.gms.common.util.zzq.zzalj()) {
            v0_1 = com.google.android.gms.common.util.zzu.zzd(new java.io.File(p3.getApplicationInfo().dataDir, "no_backup"));
        } else {
            v0_1 = p3.getNoBackupFilesDir();
        }
        return v0_1;
    }

Method com.google.android.gms.internal.zzag.zze() calling method java.io.File.<init>()


    private final java.io.File zze(String p4)
    {
        return new java.io.File(this.zzbx, com.google.android.gms.internal.zzag.zzd(p4));
    }

Method com.crashlytics.android.core.CrashlyticsController.writeFile() calling method java.io.File.<init>()


    private void writeFile(String p6, String p7, com.crashlytics.android.core.CrashlyticsController$FileOutputStreamWriteAction p8)
    {
        java.io.FileOutputStream v0 = 0;
        try {
            java.io.FileOutputStream v1_1 = new java.io.FileOutputStream(new java.io.File(this.getFilesDir(), new StringBuilder().append(p6).append(p7).toString()));
            try {
                p8.writeTo(v1_1);
                io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v1_1, new StringBuilder().append("Failed to close ").append(p7).append(" file.").toString());
                return;
            } catch (Throwable v2_1) {
                v0 = v1_1;
                io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v0, new StringBuilder().append("Failed to close ").append(p7).append(" file.").toString());
                throw v2_1;
            }
        } catch (Throwable v2_1) {
        }
        p8.writeTo(v1_1);
        io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v1_1, new StringBuilder().append("Failed to close ").append(p7).append(" file.").toString());
        return;
    }

Method com.crashlytics.android.core.CrashlyticsController.doCleanInvalidTempFiles() calling method java.io.File.<init>()


    void doCleanInvalidTempFiles(java.io.File[] p13)
    {
        int v5 = 0;
        java.util.HashSet v3_1 = new java.util.HashSet();
        int v7_1 = p13.length;
        java.io.File[] v6_2 = 0;
        while (v6_2 < v7_1) {
            java.io.File v0 = p13[v6_2];
            io.fabric.sdk.android.Fabric.getLogger().d("CrashlyticsCore", new StringBuilder().append("Found invalid session part file: ").append(v0).toString());
            v3_1.add(com.crashlytics.android.core.CrashlyticsController.getSessionIdFromSessionFile(v0));
            v6_2++;
        }
        if (!v3_1.isEmpty()) {
            java.io.File v1 = this.getInvalidFilesDir();
            if (!v1.exists()) {
                v1.mkdir();
            }
            java.io.File[] v6_1 = this.listFilesMatching(new com.crashlytics.android.core.CrashlyticsController$15(this, v3_1));
            int v7_0 = v6_1.length;
            while (v5 < v7_0) {
                java.io.File v4 = v6_1[v5];
                io.fabric.sdk.android.Fabric.getLogger().d("CrashlyticsCore", new StringBuilder().append("Moving session file: ").append(v4).toString());
                if (!v4.renameTo(new java.io.File(v1, v4.getName()))) {
                    io.fabric.sdk.android.Fabric.getLogger().d("CrashlyticsCore", new StringBuilder().append("Could not move session file. Deleting ").append(v4).toString());
                    v4.delete();
                }
                v5++;
            }
            this.trimInvalidSessionFiles();
        }
        return;
    }

Method com.crashlytics.android.core.CrashlyticsController.getFatalSessionFilesDir() calling method java.io.File.<init>()


    java.io.File getFatalSessionFilesDir()
    {
        return new java.io.File(this.getFilesDir(), "fatal-sessions");
    }

Method com.crashlytics.android.core.CrashlyticsController.getInvalidFilesDir() calling method java.io.File.<init>()


    java.io.File getInvalidFilesDir()
    {
        return new java.io.File(this.getFilesDir(), "invalidClsFiles");
    }

Method com.crashlytics.android.core.CrashlyticsController.getNonFatalSessionFilesDir() calling method java.io.File.<init>()


    java.io.File getNonFatalSessionFilesDir()
    {
        return new java.io.File(this.getFilesDir(), "nonfatal-sessions");
    }

Method com.crashlytics.android.core.CrashlyticsFileMarker.getMarkerFile() calling method java.io.File.<init>()


    private java.io.File getMarkerFile()
    {
        return new java.io.File(this.fileStore.getFilesDir(), this.markerName);
    }

Method com.crashlytics.android.core.LogFileManager.getWorkingFileForSession() calling method java.io.File.<init>()


    private java.io.File getWorkingFileForSession(String p4)
    {
        return new java.io.File(this.directoryProvider.getLogFileDir(), new StringBuilder().append("crashlytics-userlog-").append(p4).append(".temp").toString());
    }

Method com.google.android.gms.internal.zzahr.zzat() calling method java.io.File.<init>()


    public final void zzat(android.content.Context p10)
    {
        com.google.android.gms.internal.zzafo v0_0 = com.google.android.gms.internal.zzajb.zzrn();
        com.google.android.gms.internal.zzafy.v("Updating user agent.");
        String v1_1 = android.webkit.WebSettings.getDefaultUserAgent(p10);
        if (!v1_1.equals(v0_0.zzbwi)) {
            String v2_1 = com.google.android.gms.common.zzo.getRemoteContext(p10);
            if (v2_1 == null) {
                java.io.File v3_1 = p10.getSharedPreferences("admob_user_agent", 0).edit().putString("user_agent", android.webkit.WebSettings.getDefaultUserAgent(p10));
                if (v2_1 != null) {
                    java.io.File v4_4 = new java.io.File(p10.getApplicationInfo().dataDir, "shared_prefs");
                    String v5_3 = v4_4.getParentFile();
                    if (v5_3 != null) {
                        v5_3.setExecutable(1, 0);
                    }
                    v4_4.setExecutable(1, 0);
                    v3_1.commit();
                    new java.io.File(v4_4, String.valueOf("admob_user_agent").concat(".xml")).setReadable(1, 0);
                } else {
                    v3_1.apply();
                }
            }
            v0_0.zzbwi = v1_1;
        }
        com.google.android.gms.internal.zzafy.v("User agent is updated.");
        com.google.android.gms.ads.internal.zzbv.zzee().zzqo();
        return;
    }

Method io.fabric.sdk.android.services.common.CommonUtils.isRooted() calling method java.io.File.<init>()


    public static boolean isRooted(android.content.Context p5)
    {
        int v3 = 1;
        boolean v2 = io.fabric.sdk.android.services.common.CommonUtils.isEmulator(p5);
        String v0 = android.os.Build.TAGS;
        if (((v2) || ((v0 == null) || (!v0.contains("test-keys")))) && (!new java.io.File("/system/app/Superuser.apk").exists())) {
            java.io.File v1_3 = new java.io.File("/system/xbin/su");
            if ((v2) || (!v1_3.exists())) {
                v3 = 0;
            }
        }
        return v3;
    }

Method com.google.android.gms.internal.zzalr.zza() calling method java.io.File.<init>()


    protected final android.webkit.WebResourceResponse zza(android.webkit.WebView p8, String p9, java.util.Map p10)
    {
        int v0_2;
        if ((p8 instanceof com.google.android.gms.internal.zzakl)) {
            if (this.zzank != null) {
                this.zzank.zza(p9, p10, 1);
            }
            if ("mraid.js".equalsIgnoreCase(new java.io.File(p9).getName())) {
                if (((com.google.android.gms.internal.zzakl) p8).zzse() != null) {
                    ((com.google.android.gms.internal.zzakl) p8).zzse().zzmr();
                }
                String v1_11;
                if (!((com.google.android.gms.internal.zzakl) p8).zzbk().zzbcx) {
                    if (!((com.google.android.gms.internal.zzakl) p8).zzsi()) {
                        v1_11 = ((String) com.google.android.gms.ads.internal.zzbv.zzen().zzd(com.google.android.gms.internal.zzmn.zzbhk));
                    } else {
                        v1_11 = ((String) com.google.android.gms.ads.internal.zzbv.zzen().zzd(com.google.android.gms.internal.zzmn.zzbhl));
                    }
                } else {
                    v1_11 = ((String) com.google.android.gms.ads.internal.zzbv.zzen().zzd(com.google.android.gms.internal.zzmn.zzbhm));
                }
                try {
                    int v3_4 = ((com.google.android.gms.internal.zzakl) p8).getContext();
                    int v0_7 = ((com.google.android.gms.internal.zzakl) p8).zzsh().zzcq;
                    String v4_1 = new java.util.HashMap();
                    v4_1.put("User-Agent", com.google.android.gms.ads.internal.zzbv.zzea().zzr(v3_4, v0_7));
                    v4_1.put("Cache-Control", "max-stale=3600");
                    int v0_14 = ((String) new com.google.android.gms.internal.zzail(v3_4).zzb(v1_11, v4_1).get(60, java.util.concurrent.TimeUnit.SECONDS));
                } catch (int v0_16) {
                    int v0_18 = String.valueOf(v0_16.getMessage());
                    if (v0_18.length() == 0) {
                        int v0_1 = new String("Could not fetch MRAID JS. ");
                    } else {
                        v0_1 = "Could not fetch MRAID JS. ".concat(v0_18);
                    }
                    com.google.android.gms.internal.zzafy.zzcr(v0_1);
                    v0_2 = 0;
                } catch (int v0_16) {
                } catch (int v0_16) {
                } catch (int v0_16) {
                }
                if (v0_14 != 0) {
                    v0_2 = new android.webkit.WebResourceResponse("application/javascript", "UTF-8", new java.io.ByteArrayInputStream(v0_14.getBytes("UTF-8")));
                } else {
                    v0_2 = 0;
                }
            } else {
                v0_2 = super.shouldInterceptRequest(p8, p9);
            }
        } else {
            com.google.android.gms.internal.zzafy.zzcr("Tried to intercept request from a WebView that wasn\'t an AdWebView.");
            v0_2 = 0;
        }
        return v0_2;
    }

Method com.google.android.gms.internal.zzane.onCreate() calling method java.io.File.<init>()


    public final void onCreate(android.database.sqlite.SQLiteDatabase p6)
    {
        String v0 = p6.getPath();
        if (com.google.android.gms.internal.zzaoc.version() >= 9) {
            java.io.File v1_2 = new java.io.File(v0);
            v1_2.setReadable(0, 0);
            v1_2.setWritable(0, 0);
            v1_2.setReadable(1, 1);
            v1_2.setWritable(1, 1);
        }
        return;
    }

Method com.google.android.gms.internal.zzas.zza() calling method java.io.File.<init>()


    public static com.google.android.gms.internal.zzs zza(android.content.Context p6, com.google.android.gms.internal.zzan p7)
    {
        java.io.File v2_1 = new java.io.File(p6.getCacheDir(), "volley");
        try {
            com.google.android.gms.internal.zzad v1_9 = p6.getPackageName();
            com.google.android.gms.internal.zzs v0_1 = new StringBuilder((String.valueOf(v1_9).length() + 12)).append(v1_9).append("/").append(p6.getPackageManager().getPackageInfo(v1_9, 0).versionCode).toString();
        } catch (com.google.android.gms.internal.zzad v1) {
        }
        com.google.android.gms.internal.zzs v0_3;
        if (android.os.Build$VERSION.SDK_INT < 9) {
            v0_3 = new com.google.android.gms.internal.zzak(android.net.http.AndroidHttpClient.newInstance(v0_1));
        } else {
            v0_3 = new com.google.android.gms.internal.zzao();
        }
        com.google.android.gms.internal.zzs v0_6 = new com.google.android.gms.internal.zzs(new com.google.android.gms.internal.zzag(v2_1), new com.google.android.gms.internal.zzad(v0_3));
        v0_6.start();
        return v0_6;
    }

Method android.support.v4.util.AtomicFile.openRead() calling method java.io.FileInputStream.<init>()


    public java.io.FileInputStream openRead()
    {
        if (this.mBackupName.exists()) {
            this.mBaseName.delete();
            this.mBackupName.renameTo(this.mBaseName);
        }
        return new java.io.FileInputStream(this.mBaseName);
    }

Method com.google.android.gms.internal.zzcay.zza() calling method java.io.File.<init>()


    static void zza(com.google.android.gms.internal.zzcbw p5, android.database.sqlite.SQLiteDatabase p6)
    {
        if (p5 != null) {
            com.google.android.gms.internal.zzcby v0_5 = new java.io.File(p6.getPath());
            if (!v0_5.setReadable(0, 0)) {
                p5.zzayf().log("Failed to turn off database read permission");
            }
            if (!v0_5.setWritable(0, 0)) {
                p5.zzayf().log("Failed to turn off database write permission");
            }
            if (!v0_5.setReadable(1, 1)) {
                p5.zzayf().log("Failed to turn on database read permission for owner");
            }
            if (!v0_5.setWritable(1, 1)) {
                p5.zzayf().log("Failed to turn on database write permission for owner");
            }
            return;
        } else {
            throw new IllegalArgumentException("Monitor must not be null");
        }
    }

Method com.google.android.gms.internal.zzccw.zzazd() calling method java.io.File.<init>()


    private final boolean zzazd()
    {
        this.zzauk().zzuj();
        try {
            int v0_11;
            this.zzits = new java.io.RandomAccessFile(new java.io.File(this.mContext.getFilesDir(), com.google.android.gms.internal.zzcax.zzawi()), "rw").getChannel();
            this.zzitr = this.zzits.tryLock();
        } catch (int v0_14) {
            this.zzaul().zzayd().zzj("Failed to acquire storage lock", v0_14);
            v0_11 = 0;
            return v0_11;
        } catch (int v0_12) {
            this.zzaul().zzayd().zzj("Failed to access storage lock file", v0_12);
        }
        if (this.zzitr == null) {
            this.zzaul().zzayd().log("Storage concurrent data access panic");
        } else {
            this.zzaul().zzayj().log("Storage concurrent access okay");
            v0_11 = 1;
            return v0_11;
        }
    }

Method io.fabric.sdk.android.services.common.QueueFile.initialize() calling method java.io.File.<init>()


    private static void initialize(java.io.File p6)
    {
        java.io.File v2_1 = new java.io.File(new StringBuilder().append(p6.getPath()).append(".tmp").toString());
        java.io.RandomAccessFile v1 = io.fabric.sdk.android.services.common.QueueFile.open(v2_1);
        try {
            v1.setLength(4096);
            v1.seek(0);
            byte[] v0 = new byte[16];
            java.io.IOException v3_5 = new int[4];
            v3_5 = {4096, 0, 0, 0};
            io.fabric.sdk.android.services.common.QueueFile.writeInts(v0, v3_5);
            v1.write(v0);
            v1.close();
        } catch (java.io.IOException v3_7) {
            v1.close();
            throw v3_7;
        }
        if (v2_1.renameTo(p6)) {
            return;
        } else {
            throw new java.io.IOException("Rename failed!");
        }
    }

Method com.google.android.gms.internal.zzcz.zza() calling method java.io.File.<init>()


    public static com.google.android.gms.internal.zzcz zza(android.content.Context p9, String p10, String p11, boolean p12)
    {
        int v0_0 = 1;
        void v3_0 = new com.google.android.gms.internal.zzcz(p9);
        v3_0.zzaib = java.util.concurrent.Executors.newCachedThreadPool();
        v3_0.zzahg = p12;
        if (p12) {
            v3_0.zzaig = v3_0.zzaib.submit(new com.google.android.gms.internal.zzda(v3_0));
        }
        v3_0.zzaib.execute(new com.google.android.gms.internal.zzdc(v3_0));
        try {
            String v2_5;
            com.google.android.gms.internal.zzcz.zzain = com.google.android.gms.common.zze.zzaex();
        } catch (int v0) {
            v3_0.zza(0, 1);
            if ((!com.google.android.gms.internal.zzde.zzaq()) || (!((Boolean) com.google.android.gms.ads.internal.zzbv.zzen().zzd(com.google.android.gms.internal.zzmn.zzblx)).booleanValue())) {
                v3_0.zzaid = new com.google.android.gms.internal.zzcu(0);
                v3_0.zzaie = v3_0.zzaid.zzk(p10);
                try {
                    int v0_29 = v3_0.zzahz.getCacheDir();
                } catch (int v0_14) {
                    throw new com.google.android.gms.internal.zzcw(v0_14);
                } catch (int v0_13) {
                    throw new com.google.android.gms.internal.zzcw(v0_13);
                }
                if (v0_29 == 0) {
                    v0_29 = v3_0.zzahz.getDir("dex", 0);
                    if (v0_29 == 0) {
                        throw new com.google.android.gms.internal.zzcw();
                    }
                }
                String v1_19 = v0_29;
                Object[] v5_5 = new Object[2];
                v5_5[0] = v1_19;
                v5_5[1] = "1496809943795";
                String v4_9 = new java.io.File(String.format("%s/%s.jar", v5_5));
                if (!v4_9.exists()) {
                    int v0_35 = v3_0.zzaid.zzb(v3_0.zzaie, p11);
                    v4_9.createNewFile();
                    Object[] v5_8 = new java.io.FileOutputStream(v4_9);
                    v5_8.write(v0_35, 0, v0_35.length);
                    v5_8.close();
                }
                v3_0.zzb(v1_19, "1496809943795");
                try {
                    v3_0.zzaic = new dalvik.system.DexClassLoader(v4_9.getAbsolutePath(), v1_19.getAbsolutePath(), 0, v3_0.zzahz.getClassLoader());
                } catch (int v0_3) {
                    com.google.android.gms.internal.zzcz.zza(v4_9);
                    v3_0 = v3_0.zza(v1_19, "1496809943795");
                    Object[] v5_2 = new Object[2];
                    v5_2[0] = v1_19;
                    v5_2[1] = "1496809943795";
                    com.google.android.gms.internal.zzcz.zzl(String.format("%s/%s.dex", v5_2));
                    throw v0_3;
                }
                com.google.android.gms.internal.zzcz.zza(v4_9);
                v3_0 = v3_0.zza(v1_19, "1496809943795");
                String v4_4 = new Object[2];
                v4_4[0] = v1_19;
                v4_4[1] = "1496809943795";
                com.google.android.gms.internal.zzcz.zzl(String.format("%s/%s.dex", v4_4));
                v3_0.zzaij = new com.google.android.gms.internal.zzcm(v3_0);
                v3_0.zzaip = 1;
                return v3_0;
            } else {
                throw new IllegalStateException("Task Context initialization must not be called from the UI thread.");
            }
        }
        if (com.google.android.gms.common.zze.zzbw(v3_0.zzahz) <= 0) {
            v2_5 = 0;
        } else {
            v2_5 = 1;
        }
        v3_0.zzaik = v2_5;
        if (com.google.android.gms.internal.zzcz.zzain.isGooglePlayServicesAvailable(v3_0.zzahz) != 0) {
            v0_0 = 0;
        }
        v3_0.zzaim = v0_0;
    }

Method com.google.android.gms.internal.zzcz.zza() calling method java.io.File.<init>()


    private final void zza(java.io.File p9, String p10)
    {
        java.io.IOException v1_3 = new Object[2];
        v1_3[0] = p9;
        v1_3[1] = p10;
        Throwable v3_0 = new java.io.File(String.format("%s/%s.tmp", v1_3));
        if (!v3_0.exists()) {
            java.io.IOException v1_0 = new Object[2];
            v1_0[0] = p9;
            v1_0[1] = p10;
            java.io.File v5_1 = new java.io.File(String.format("%s/%s.dex", v1_0));
            if (v5_1.exists()) {
                java.io.IOException v0_5 = v5_1.length();
                if (v0_5 > 0) {
                    java.io.IOException v0_7 = new byte[((int) v0_5)];
                    try {
                        java.io.IOException v1_2 = new java.io.FileInputStream(v5_1);
                        try {
                            if (v1_2.read(v0_7) > 0) {
                                java.io.IOException v4_5 = new com.google.android.gms.internal.zzba();
                                v4_5.zzgc = android.os.Build$VERSION.SDK.getBytes();
                                v4_5.zzgb = p10.getBytes();
                                java.io.IOException v0_12 = this.zzaid.zzc(this.zzaie, v0_7).getBytes();
                                v4_5.data = v0_12;
                                v4_5.zzga = com.google.android.gms.internal.zzbt.zzb(v0_12);
                                v3_0.createNewFile();
                                java.io.IOException v0_8 = new java.io.FileOutputStream(v3_0);
                                try {
                                    com.google.android.gms.internal.zzcv v2_1 = com.google.android.gms.internal.zzeyn.zzc(v4_5);
                                    v0_8.write(v2_1, 0, v2_1.length);
                                    v0_8.close();
                                    try {
                                        v1_2.close();
                                        try {
                                            v0_8.close();
                                        } catch (java.io.IOException v0) {
                                        }
                                        com.google.android.gms.internal.zzcz.zza(v5_1);
                                    } catch (java.io.IOException v1) {
                                    }
                                } catch (com.google.android.gms.internal.zzcv v2_2) {
                                    Throwable v3_2 = v2_2;
                                    java.io.IOException v4_0 = v0_8;
                                    if (v1_2 != null) {
                                        try {
                                            v1_2.close();
                                        } catch (java.io.IOException v0) {
                                        }
                                    }
                                    if (v4_0 != null) {
                                        try {
                                            v4_0.close();
                                        } catch (java.io.IOException v0) {
                                        }
                                    }
                                    com.google.android.gms.internal.zzcz.zza(v5_1);
                                    throw v3_2;
                                } catch (com.google.android.gms.internal.zzcv v2) {
                                    if (v1_2 != null) {
                                        try {
                                            v1_2.close();
                                        } catch (java.io.IOException v1) {
                                        }
                                    }
                                    if (v0_8 != null) {
                                        try {
                                            v0_8.close();
                                        } catch (java.io.IOException v0) {
                                        }
                                    }
                                    com.google.android.gms.internal.zzcz.zza(v5_1);
                                } catch (com.google.android.gms.internal.zzcv v2) {
                                } catch (com.google.android.gms.internal.zzcv v2) {
                                }
                            } else {
                                try {
                                    v1_2.close();
                                } catch (java.io.IOException v0) {
                                }
                                com.google.android.gms.internal.zzcz.zza(v5_1);
                            }
                        } catch (java.io.IOException v0_15) {
                            v3_2 = v0_15;
                            v4_0 = 0;
                        } catch (java.io.IOException v0) {
                            v0_8 = 0;
                        } catch (java.io.IOException v0) {
                            v0_8 = 0;
                        } catch (java.io.IOException v0) {
                            v0_8 = 0;
                        }
                    } catch (java.io.IOException v0_9) {
                        v3_2 = v0_9;
                        v4_0 = 0;
                        v1_2 = 0;
                    } catch (java.io.IOException v0) {
                        v0_8 = 0;
                        v1_2 = 0;
                    } catch (java.io.IOException v0) {
                        v0_8 = 0;
                        v1_2 = 0;
                    } catch (java.io.IOException v0) {
                        v0_8 = 0;
                        v1_2 = 0;
                    }
                }
            }
        }
        return;
    }

Method com.google.android.gms.internal.zzcz.zzb() calling method java.io.File.<init>()


    private final boolean zzb(java.io.File p13, String p14)
    {
        java.io.FileInputStream v0_3;
        int v3 = 0;
        java.io.FileInputStream v4_3 = new Object[2];
        v4_3[0] = p13;
        v4_3[1] = p14;
        byte[] v5_0 = new java.io.File(String.format("%s/%s.tmp", v4_3));
        if (v5_0.exists()) {
            java.io.FileInputStream v4_1 = new Object[2];
            v4_1[0] = p13;
            v4_1[1] = p14;
            int v6_1 = new java.io.File(String.format("%s/%s.dex", v4_1));
            if (!v6_1.exists()) {
                try {
                    String v8_0 = v5_0.length();
                } catch (java.io.FileInputStream v0_5) {
                    java.io.FileInputStream v1_1 = v0_5;
                    java.io.IOException v2_0 = 0;
                    java.io.FileInputStream v4_0 = 0;
                    if (v4_0 != null) {
                        try {
                            v4_0.close();
                        } catch (java.io.FileInputStream v0) {
                        }
                    }
                    if (v2_0 != null) {
                        try {
                            v2_0.close();
                        } catch (java.io.FileInputStream v0) {
                        }
                    }
                    throw v1_1;
                } catch (java.io.FileInputStream v0) {
                    java.io.FileInputStream v0_1 = 0;
                    java.io.FileInputStream v1_0 = 0;
                    if (v1_0 != null) {
                        try {
                            v1_0.close();
                        } catch (java.io.FileInputStream v1) {
                        }
                    }
                    if (v0_1 != null) {
                        try {
                            v0_1.close();
                        } catch (java.io.FileInputStream v0) {
                        }
                    }
                    v0_3 = 0;
                } catch (java.io.FileInputStream v0) {
                    v0_1 = 0;
                    v1_0 = 0;
                } catch (java.io.FileInputStream v0) {
                    v0_1 = 0;
                    v1_0 = 0;
                }
                if (v8_0 > 0) {
                    java.io.FileInputStream v0_11 = new byte[((int) v8_0)];
                    v4_0 = new java.io.FileInputStream(v5_0);
                    try {
                        if (v4_0.read(v0_11) > 0) {
                            java.io.FileInputStream v0_13 = ((com.google.android.gms.internal.zzba) com.google.android.gms.internal.zzeyn.zza(new com.google.android.gms.internal.zzba(), v0_11));
                            if ((p14.equals(new String(v0_13.zzgb))) && ((java.util.Arrays.equals(v0_13.zzga, com.google.android.gms.internal.zzbt.zzb(v0_13.data))) && (java.util.Arrays.equals(v0_13.zzgc, android.os.Build$VERSION.SDK.getBytes())))) {
                                byte[] v5_3 = this.zzaid.zzb(this.zzaie, new String(v0_13.data));
                                v6_1.createNewFile();
                                v0_1 = new java.io.FileOutputStream(v6_1);
                                v3 = 0;
                                try {
                                    v0_1.write(v5_3, 0, v5_3.length);
                                    try {
                                        v4_0.close();
                                        try {
                                            v0_1.close();
                                        } catch (java.io.FileInputStream v0) {
                                        }
                                        v0_3 = 1;
                                    } catch (java.io.IOException v2) {
                                    }
                                } catch (java.io.FileInputStream v1_1) {
                                    v2_0 = v0_1;
                                } catch (java.io.FileInputStream v1) {
                                    v1_0 = v4_0;
                                } catch (java.io.FileInputStream v1) {
                                    v1_0 = v4_0;
                                } catch (java.io.FileInputStream v1) {
                                    v1_0 = v4_0;
                                }
                            } else {
                                com.google.android.gms.internal.zzcz.zza(v5_0);
                                try {
                                    v4_0.close();
                                } catch (java.io.FileInputStream v0) {
                                }
                                v0_3 = 0;
                            }
                        } else {
                            android.util.Log.d(com.google.android.gms.internal.zzcz.TAG, "Cannot read the cache data.");
                            com.google.android.gms.internal.zzcz.zza(v5_0);
                            try {
                                v4_0.close();
                            } catch (java.io.FileInputStream v0) {
                            }
                            v0_3 = 0;
                        }
                    } catch (java.io.FileInputStream v0_2) {
                        v1_1 = v0_2;
                        v2_0 = v3;
                    } catch (java.io.FileInputStream v0) {
                        v0_1 = v3;
                        v1_0 = v4_0;
                    } catch (java.io.FileInputStream v0) {
                        v0_1 = v3;
                        v1_0 = v4_0;
                    } catch (java.io.FileInputStream v0) {
                        v0_1 = v3;
                        v1_0 = v4_0;
                    }
                } else {
                    com.google.android.gms.internal.zzcz.zza(v5_0);
                    v0_3 = 0;
                }
            } else {
                v0_3 = 0;
            }
        } else {
            v0_3 = 0;
        }
        return v0_3;
    }

Method com.google.android.gms.internal.zzcz.zzl() calling method java.io.File.<init>()


    private static void zzl(String p1)
    {
        com.google.android.gms.internal.zzcz.zza(new java.io.File(p1));
        return;
    }

Method com.google.android.gms.internal.zzmq.<init>() calling method java.io.File.<init>()


    public zzmq(android.content.Context p5, String p6, String p7, java.util.Map p8)
    {
        this.zzbpz = new java.util.LinkedHashMap();
        this.zzbqa = new java.util.HashMap();
        this.mContext = p5;
        this.zzauo = p6;
        this.zzbpv = p7;
        this.zzbqb = new java.util.concurrent.atomic.AtomicBoolean(0);
        this.zzbqb.set(((Boolean) com.google.android.gms.ads.internal.zzbv.zzen().zzd(com.google.android.gms.internal.zzmn.zzbhp)).booleanValue());
        if (this.zzbqb.get()) {
            java.util.Map v0_10 = android.os.Environment.getExternalStorageDirectory();
            if (v0_10 != null) {
                this.zzbqc = new java.io.File(v0_10, "sdk_csi_data.txt");
            }
        }
        com.google.android.gms.internal.zzmu v2_2 = p8.entrySet().iterator();
        while (v2_2.hasNext()) {
            java.util.Map v0_23 = ((java.util.Map$Entry) v2_2.next());
            this.zzbpz.put(((String) v0_23.getKey()), ((String) v0_23.getValue()));
        }
        this.zzbpx = new java.util.concurrent.ArrayBlockingQueue(30);
        this.zzbpy = java.util.concurrent.Executors.newSingleThreadExecutor();
        this.zzbpy.execute(new com.google.android.gms.internal.zzmr(this));
        this.zzbqa.put("action", com.google.android.gms.internal.zzmu.zzbqf);
        this.zzbqa.put("ad_format", com.google.android.gms.internal.zzmu.zzbqf);
        this.zzbqa.put("e", com.google.android.gms.internal.zzmu.zzbqg);
        return;
    }

Method io.fabric.sdk.android.services.events.QueueFileEventStorage.<init>() calling method java.io.File.<init>()


    public QueueFileEventStorage(android.content.Context p3, java.io.File p4, String p5, String p6)
    {
        this.context = p3;
        this.workingDirectory = p4;
        this.targetDirectoryName = p6;
        this.workingFile = new java.io.File(this.workingDirectory, p5);
        this.queueFile = new io.fabric.sdk.android.services.common.QueueFile(this.workingFile);
        this.createTargetDirectory();
        return;
    }

Method io.fabric.sdk.android.services.events.QueueFileEventStorage.createTargetDirectory() calling method java.io.File.<init>()


    private void createTargetDirectory()
    {
        this.targetDirectory = new java.io.File(this.workingDirectory, this.targetDirectoryName);
        if (!this.targetDirectory.exists()) {
            this.targetDirectory.mkdirs();
        }
        return;
    }

Method com.google.android.gms.internal.zzsk.<init>() calling method java.io.File.<init>()


    public zzsk(com.google.android.gms.internal.zzakl p7)
    {
        super(p7);
        String v0_20 = super.mContext.getCacheDir();
        if (v0_20 != null) {
            super.zzbwu = new java.io.File(v0_20, "admobVideoStreams");
            if ((super.zzbwu.isDirectory()) || (super.zzbwu.mkdirs())) {
                if ((!super.zzbwu.setReadable(1, 0)) || (!super.zzbwu.setExecutable(1, 0))) {
                    String v0_12;
                    String v0_10 = String.valueOf(super.zzbwu.getAbsolutePath());
                    if (v0_10.length() == 0) {
                        v0_12 = new String("Could not set cache file permissions at ");
                    } else {
                        v0_12 = "Could not set cache file permissions at ".concat(v0_10);
                    }
                    com.google.android.gms.internal.zzafy.zzcr(v0_12);
                    super.zzbwu = 0;
                }
            } else {
                String v0_18;
                String v0_16 = String.valueOf(super.zzbwu.getAbsolutePath());
                if (v0_16.length() == 0) {
                    v0_18 = new String("Could not create preload cache directory at ");
                } else {
                    v0_18 = "Could not create preload cache directory at ".concat(v0_16);
                }
                com.google.android.gms.internal.zzafy.zzcr(v0_18);
                super.zzbwu = 0;
            }
        } else {
            com.google.android.gms.internal.zzafy.zzcr("Context.getCacheDir() returned null");
        }
        return;
    }

Method com.google.android.gms.internal.zzsk.zzb() calling method java.io.File.<init>()


    private final java.io.File zzb(java.io.File p5)
    {
        return new java.io.File(this.zzbwu, String.valueOf(p5.getName()).concat(".done"));
    }

Method com.google.android.gms.internal.zzsk.zzat() calling method java.io.File.<init>()


    public final boolean zzat(String p27)
    {
        com.google.android.gms.internal.zzsf v2_39;
        if (this.zzbwu != null) {
            do {
                com.google.android.gms.internal.zzsk v3_1;
                if (this.zzbwu != null) {
                    com.google.android.gms.internal.zzsf v2_34 = 0;
                    String v4_0 = this.zzbwu.listFiles();
                    com.google.android.gms.internal.zzsk v3_0 = 0;
                    while (v3_0 < v4_0.length) {
                        if (!v4_0[v3_0].getName().endsWith(".done")) {
                            v2_34++;
                        }
                        v3_0++;
                    }
                    v3_1 = v2_34;
                } else {
                    v3_1 = 0;
                }
                if (v3_1 <= ((Integer) com.google.android.gms.ads.internal.zzbv.zzen().zzd(com.google.android.gms.internal.zzmn.zzbgh)).intValue()) {
                    com.google.android.gms.internal.zzjh.zzhu();
                    java.io.File v13_1 = new java.io.File(this.zzbwu, com.google.android.gms.internal.zzajf.zzcp(p27));
                    java.io.File v14 = this.zzb(v13_1);
                    if ((!v13_1.isFile()) || (!v14.isFile())) {
                        String v9_1;
                        com.google.android.gms.internal.zzsk v3_38 = String.valueOf(this.zzbwu.getAbsolutePath());
                        com.google.android.gms.internal.zzsf v2_123 = String.valueOf(p27);
                        if (v2_123.length() == 0) {
                            v9_1 = new String(v3_38);
                        } else {
                            v9_1 = v3_38.concat(v2_123);
                        }
                        try {
                            if (!com.google.android.gms.internal.zzsk.zzbws.contains(v9_1)) {
                                com.google.android.gms.internal.zzsk.zzbws.add(v9_1);
                                String v5_5 = 0;
                                String v4_11;
                                com.google.android.gms.internal.zzsk v3_20;
                                com.google.android.gms.ads.internal.zzbv.zzeo();
                                com.google.android.gms.internal.zzsk v3_46 = com.google.android.gms.internal.zzajz.zzb(p27, ((Integer) com.google.android.gms.ads.internal.zzbv.zzen().zzd(com.google.android.gms.internal.zzmn.zzbgm)).intValue());
                                if ((v3_46 instanceof java.net.HttpURLConnection)) {
                                    com.google.android.gms.internal.zzsf v2_142 = ((java.net.HttpURLConnection) v3_46).getResponseCode();
                                    if (v2_142 >= 400) {
                                        v4_11 = "badUrl";
                                        try {
                                            com.google.android.gms.internal.zzsk v3_35 = String.valueOf(Integer.toString(v2_142));
                                        } catch (com.google.android.gms.internal.zzsf v2_57) {
                                            v3_20 = 0;
                                            if ((v2_57 instanceof RuntimeException)) {
                                                com.google.android.gms.ads.internal.zzbv.zzee().zza(v2_57, "VideoStreamFullFileCache.preload");
                                            }
                                            try {
                                                v5_5.close();
                                            } catch (String v5) {
                                            } catch (String v5) {
                                            }
                                            if (!this.zzbwv) {
                                                com.google.android.gms.internal.zzafy.zzc(new StringBuilder((String.valueOf(p27).length() + 25)).append("Preload failed for URL \"").append(p27).append("\"").toString(), v2_57);
                                            } else {
                                                com.google.android.gms.internal.zzafy.zzcq(new StringBuilder((String.valueOf(p27).length() + 26)).append("Preload aborted for URL \"").append(p27).append("\"").toString());
                                            }
                                            if (v13_1.exists()) {
                                                if (!v13_1.delete()) {
                                                    com.google.android.gms.internal.zzsf v2_102 = String.valueOf(v13_1.getAbsolutePath());
                                                    if (v2_102.length() == 0) {
                                                        com.google.android.gms.internal.zzsf v2_104 = new String("Could not delete partial cache file at ");
                                                    } else {
                                                        v2_104 = "Could not delete partial cache file at ".concat(v2_102);
                                                    }
                                                    com.google.android.gms.internal.zzafy.zzcr(v2_104);
                                                }
                                            }
                                            this.zza(p27, v13_1.getAbsolutePath(), v4_11, v3_20);
                                            com.google.android.gms.internal.zzsk.zzbws.remove(v9_1);
                                            v2_39 = 0;
                                            return v2_39;
                                        } catch (com.google.android.gms.internal.zzsf v2_57) {
                                            v3_20 = 0;
                                        }
                                        if (v3_35.length() == 0) {
                                            v3_20 = new String("HTTP request failed. Code: ");
                                        } else {
                                            v3_20 = "HTTP request failed. Code: ".concat(v3_35);
                                        }
                                        try {
                                            throw new java.io.IOException(new StringBuilder((String.valueOf(p27).length() + 32)).append("HTTP status code ").append(v2_142).append(" at ").append(p27).toString());
                                        } catch (com.google.android.gms.internal.zzsf v2_57) {
                                        } catch (com.google.android.gms.internal.zzsf v2_57) {
                                        }
                                    }
                                }
                                String v7_0 = v3_46.getContentLength();
                                if (v7_0 >= null) {
                                    String v4_1 = com.google.android.gms.internal.zzsk.zzbwt.format(((long) v7_0));
                                    int v15 = ((Integer) com.google.android.gms.ads.internal.zzbv.zzen().zzd(com.google.android.gms.internal.zzmn.zzbgi)).intValue();
                                    if (v7_0 <= v15) {
                                        com.google.android.gms.internal.zzafy.zzca(new StringBuilder(((String.valueOf(v4_1).length() + 20) + String.valueOf(p27).length())).append("Caching ").append(v4_1).append(" bytes from ").append(p27).toString());
                                        java.nio.channels.ReadableByteChannel v16_1 = java.nio.channels.Channels.newChannel(v3_46.getInputStream());
                                        java.io.FileOutputStream v12_1 = new java.io.FileOutputStream(v13_1);
                                        try {
                                            java.nio.channels.FileChannel v17 = v12_1.getChannel();
                                            java.nio.ByteBuffer v18 = java.nio.ByteBuffer.allocate(1048576);
                                            com.google.android.gms.common.util.zzd v19 = com.google.android.gms.ads.internal.zzbv.zzeg();
                                            int v6_6 = 0;
                                            long v20 = v19.currentTimeMillis();
                                            com.google.android.gms.internal.zzaiy v22 = new com.google.android.gms.internal.zzaiy;
                                            v22(((Long) com.google.android.gms.ads.internal.zzbv.zzen().zzd(com.google.android.gms.internal.zzmn.zzbgl)).longValue());
                                            long v24 = ((Long) com.google.android.gms.ads.internal.zzbv.zzen().zzd(com.google.android.gms.internal.zzmn.zzbgk)).longValue();
                                        } catch (com.google.android.gms.internal.zzsf v2_57) {
                                            v3_20 = 0;
                                            v4_11 = "error";
                                            v5_5 = v12_1;
                                        }
                                        do {
                                            com.google.android.gms.internal.zzsf v2_24 = v16_1.read(v18);
                                            if (v2_24 < null) {
                                                v12_1.close();
                                                if (com.google.android.gms.internal.zzafy.zzad(3)) {
                                                    com.google.android.gms.internal.zzsf v2_28 = com.google.android.gms.internal.zzsk.zzbwt.format(((long) v6_6));
                                                    com.google.android.gms.internal.zzafy.zzca(new StringBuilder(((String.valueOf(v2_28).length() + 22) + String.valueOf(p27).length())).append("Preloaded ").append(v2_28).append(" bytes from ").append(p27).toString());
                                                }
                                                v13_1.setReadable(1, 0);
                                                if (!v14.isFile()) {
                                                    try {
                                                        v14.createNewFile();
                                                    } catch (com.google.android.gms.internal.zzsf v2) {
                                                    }
                                                } else {
                                                    v14.setLastModified(System.currentTimeMillis());
                                                }
                                                this.zza(p27, v13_1.getAbsolutePath(), v6_6);
                                                com.google.android.gms.internal.zzsk.zzbws.remove(v9_1);
                                                v2_39 = 1;
                                            } else {
                                                v6_6 += v2_24;
                                                try {
                                                    if (v6_6 <= v15) {
                                                        v18.flip();
                                                        while (v17.write(v18) > 0) {
                                                        }
                                                        v18.clear();
                                                        if ((v19.currentTimeMillis() - v20) <= (1000 * v24)) {
                                                            if (!this.zzbwv) {
                                                            } else {
                                                                v4_11 = "externalAbort";
                                                                throw new java.io.IOException("abort requested");
                                                            }
                                                        } else {
                                                            v4_11 = "downloadTimeout";
                                                            com.google.android.gms.internal.zzsf v2_52 = Long.toString(v24);
                                                            v3_20 = new StringBuilder((String.valueOf(v2_52).length() + 29)).append("Timeout exceeded. Limit: ").append(v2_52).append(" sec").toString();
                                                            throw new java.io.IOException("stream cache time limit exceeded");
                                                        }
                                                    } else {
                                                        v4_11 = "sizeExceeded";
                                                        com.google.android.gms.internal.zzsk v3_22 = String.valueOf(Integer.toString(v6_6));
                                                        if (v3_22.length() == 0) {
                                                            v3_20 = new String("File too big for full file cache. Size: ");
                                                        } else {
                                                            v3_20 = "File too big for full file cache. Size: ".concat(v3_22);
                                                        }
                                                        throw new java.io.IOException("stream cache file size limit exceeded");
                                                    }
                                                } catch (com.google.android.gms.internal.zzsf v2_57) {
                                                    v3_20 = 0;
                                                    v5_5 = v12_1;
                                                } catch (com.google.android.gms.internal.zzsf v2_57) {
                                                    v3_20 = 0;
                                                    v5_5 = v12_1;
                                                } catch (com.google.android.gms.internal.zzsf v2_57) {
                                                    v5_5 = v12_1;
                                                } catch (com.google.android.gms.internal.zzsf v2_57) {
                                                    v5_5 = v12_1;
                                                }
                                            }
                                        } while(!v22.tryAcquire());
                                        com.google.android.gms.internal.zzajf.zzdeq.post(new com.google.android.gms.internal.zzsf(this, p27, v13_1.getAbsolutePath(), v6_6, v7_0, 0));
                                    } else {
                                        com.google.android.gms.internal.zzsf v2_76;
                                        com.google.android.gms.internal.zzafy.zzcr(new StringBuilder(((String.valueOf(v4_1).length() + 33) + String.valueOf(p27).length())).append("Content length ").append(v4_1).append(" exceeds limit at ").append(p27).toString());
                                        com.google.android.gms.internal.zzsf v2_74 = String.valueOf(v4_1);
                                        if (v2_74.length() == 0) {
                                            v2_76 = new String("File too big for full file cache. Size: ");
                                        } else {
                                            v2_76 = "File too big for full file cache. Size: ".concat(v2_74);
                                        }
                                        this.zza(p27, v13_1.getAbsolutePath(), "sizeExceeded", v2_76);
                                        com.google.android.gms.internal.zzsk.zzbws.remove(v9_1);
                                        v2_39 = 0;
                                    }
                                } else {
                                    com.google.android.gms.internal.zzsf v2_81;
                                    com.google.android.gms.internal.zzsf v2_79 = String.valueOf(p27);
                                    if (v2_79.length() == 0) {
                                        v2_81 = new String("Stream cache aborted, missing content-length header at ");
                                    } else {
                                        v2_81 = "Stream cache aborted, missing content-length header at ".concat(v2_79);
                                    }
                                    com.google.android.gms.internal.zzafy.zzcr(v2_81);
                                    this.zza(p27, v13_1.getAbsolutePath(), "contentLengthMissing", 0);
                                    com.google.android.gms.internal.zzsk.zzbws.remove(v9_1);
                                    v2_39 = 0;
                                }
                            } else {
                                com.google.android.gms.internal.zzsf v2_110;
                                com.google.android.gms.internal.zzsf v2_108 = String.valueOf(p27);
                                if (v2_108.length() == 0) {
                                    v2_110 = new String("Stream cache already in progress at ");
                                } else {
                                    v2_110 = "Stream cache already in progress at ".concat(v2_108);
                                }
                                com.google.android.gms.internal.zzafy.zzcr(v2_110);
                                this.zza(p27, v13_1.getAbsolutePath(), "inProgress", 0);
                                v2_39 = 0;
                            }
                        } catch (com.google.android.gms.internal.zzsf v2_113) {
                            throw v2_113;
                        }
                    } else {
                        com.google.android.gms.internal.zzsf v2_117;
                        com.google.android.gms.internal.zzsk v3_37 = ((int) v13_1.length());
                        com.google.android.gms.internal.zzsf v2_115 = String.valueOf(p27);
                        if (v2_115.length() == 0) {
                            v2_117 = new String("Stream cache hit at ");
                        } else {
                            v2_117 = "Stream cache hit at ".concat(v2_115);
                        }
                        com.google.android.gms.internal.zzafy.zzca(v2_117);
                        this.zza(p27, v13_1.getAbsolutePath(), v3_37);
                        v2_39 = 1;
                    }
                } else {
                    com.google.android.gms.internal.zzsf v2_122;
                    if (this.zzbwu != null) {
                        String v7_10 = 0;
                        String v4_20 = nan;
                        String v9_0 = this.zzbwu.listFiles();
                        int v10_0 = v9_0.length;
                        int v8_3 = 0;
                        while (v8_3 < v10_0) {
                            com.google.android.gms.internal.zzsf v2_126;
                            int v6_18 = v9_0[v8_3];
                            if (v6_18.getName().endsWith(".done")) {
                                v2_126 = v4_20;
                                v6_18 = v7_10;
                            } else {
                                v2_126 = v6_18.lastModified();
                                if (v2_126 >= v4_20) {
                                }
                            }
                            v8_3++;
                            v4_20 = v2_126;
                            v7_10 = v6_18;
                        }
                        v2_122 = 0;
                        if (v7_10 != null) {
                            v2_122 = v7_10.delete();
                            com.google.android.gms.internal.zzsk v3_39 = this.zzb(v7_10);
                            if (v3_39.isFile()) {
                                v2_122 &= v3_39.delete();
                            }
                        }
                    } else {
                        v2_122 = 0;
                    }
                }
            } while(v2_122 != null);
            com.google.android.gms.internal.zzafy.zzcr("Unable to expire stream cache");
            this.zza(p27, 0, "expireFailed", 0);
            v2_39 = 0;
        } else {
            this.zza(p27, 0, "noCacheDir", 0);
            v2_39 = 0;
        }
        return v2_39;
    }

Method com.google.android.gms.tagmanager.zzbs.zzlr() calling method java.io.File.<init>()


    static boolean zzlr(String p4)
    {
        int v0 = 0;
        if (com.google.android.gms.tagmanager.zzbs.version() >= 9) {
            java.io.File v2_2 = new java.io.File(p4);
            v2_2.setReadable(0, 0);
            v2_2.setWritable(0, 0);
            v2_2.setReadable(1, 1);
            v2_2.setWritable(1, 1);
            v0 = 1;
        }
        return v0;
    }

Method com.google.android.gms.tagmanager.zzey.zzben() calling method java.io.File.<init>()


    private final java.io.File zzben()
    {
        String v0_1;
        java.io.File v1_2 = String.valueOf("resource_");
        String v0_3 = String.valueOf(this.zzjoz);
        if (v0_3.length() == 0) {
            v0_1 = new String(v1_2);
        } else {
            v0_1 = v1_2.concat(v0_3);
        }
        return new java.io.File(this.mContext.getDir("google_tagmanager", 0), v0_1);
    }

Method com.google.firebase.iid.zzr.<init>() calling method java.io.File.<init>()


    private zzr(android.content.Context p5, String p6)
    {
        String v0_2;
        this.zzahz = p5;
        this.zzhul = p5.getSharedPreferences(p6, 0);
        String v1_6 = String.valueOf(p6);
        String v0_0 = String.valueOf("-no-backup");
        if (v0_0.length() == 0) {
            v0_2 = new String(v1_6);
        } else {
            v0_2 = v1_6.concat(v0_0);
        }
        String v2_2 = new java.io.File(com.google.android.gms.common.util.zzu.getNoBackupFilesDir(this.zzahz), v0_2);
        try {
            if ((!v2_2.exists()) && ((v2_2.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzahz, this);
            }
        } catch (String v0_9) {
            if (android.util.Log.isLoggable("InstanceID/Store", 3)) {
                String v0_12 = String.valueOf(v0_9.getMessage());
                if (v0_12.length() == 0) {
                    String v0_14 = new String("Error creating file in no backup dir: ");
                } else {
                    v0_14 = "Error creating file in no backup dir: ".concat(v0_12);
                }
                android.util.Log.d("InstanceID/Store", v0_14);
            }
        }
        return;
    }

Method io.fabric.sdk.android.FabricContext.getCacheDir() calling method java.io.File.<init>()


    public java.io.File getCacheDir()
    {
        return new java.io.File(super.getCacheDir(), this.componentPath);
    }

Method io.fabric.sdk.android.FabricContext.getDatabasePath() calling method java.io.File.<init>()


    public java.io.File getDatabasePath(String p4)
    {
        java.io.File v0_1 = new java.io.File(super.getDatabasePath(p4).getParentFile(), this.componentPath);
        v0_1.mkdirs();
        return new java.io.File(v0_1, p4);
    }

Method io.fabric.sdk.android.FabricContext.getExternalCacheDir() calling method java.io.File.<init>()


    public java.io.File getExternalCacheDir()
    {
        return new java.io.File(super.getExternalCacheDir(), this.componentPath);
    }

Method io.fabric.sdk.android.FabricContext.getExternalFilesDir() calling method java.io.File.<init>()


    public java.io.File getExternalFilesDir(String p4)
    {
        return new java.io.File(super.getExternalFilesDir(p4), this.componentPath);
    }

Method io.fabric.sdk.android.services.persistence.FileStoreImpl.getExternalCacheDir() calling method java.io.File.<init>()


    public java.io.File getExternalCacheDir()
    {
        java.io.File v0_0 = 0;
        if (this.isExternalStorageAvailable()) {
            if (android.os.Build$VERSION.SDK_INT < 8) {
                v0_0 = new java.io.File(android.os.Environment.getExternalStorageDirectory(), new StringBuilder().append(this.legacySupport).append("/cache/").append(this.contentPath).toString());
            } else {
                v0_0 = this.context.getExternalCacheDir();
            }
        }
        return this.prepare(v0_0);
    }

Method io.fabric.sdk.android.services.persistence.FileStoreImpl.getExternalFilesDir() calling method java.io.File.<init>()


    public java.io.File getExternalFilesDir()
    {
        java.io.File v0_0 = 0;
        if (this.isExternalStorageAvailable()) {
            if (android.os.Build$VERSION.SDK_INT < 8) {
                v0_0 = new java.io.File(android.os.Environment.getExternalStorageDirectory(), new StringBuilder().append(this.legacySupport).append("/files/").append(this.contentPath).toString());
            } else {
                v0_0 = this.context.getExternalFilesDir(0);
            }
        }
        return this.prepare(v0_0);
    }

Method io.fabric.sdk.android.services.settings.DefaultCachedSettingsIo.readCachedSettings() calling method java.io.File.<init>()


    public org.json.JSONObject readCachedSettings()
    {
        io.fabric.sdk.android.Fabric.getLogger().d("Fabric", "Reading cached settings...");
        java.io.FileInputStream v1 = 0;
        org.json.JSONObject v5 = 0;
        try {
            java.io.File v3_0 = new java.io.File(new io.fabric.sdk.android.services.persistence.FileStoreImpl(this.kit).getFilesDir(), "com.crashlytics.settings.json");
        } catch (Throwable v7_7) {
            io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v1, "Error while closing settings cache file.");
            throw v7_7;
        } catch (Exception v0) {
            io.fabric.sdk.android.Fabric.getLogger().e("Fabric", "Failed to fetch cached settings", v0);
            io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v1, "Error while closing settings cache file.");
            return v5;
        }
        if (!v3_0.exists()) {
            io.fabric.sdk.android.Fabric.getLogger().d("Fabric", "No cached settings found.");
        } else {
            java.io.FileInputStream v2_1 = new java.io.FileInputStream(v3_0);
            try {
                v5 = new org.json.JSONObject(io.fabric.sdk.android.services.common.CommonUtils.streamToString(v2_1));
                v1 = v2_1;
            } catch (Throwable v7_7) {
                v1 = v2_1;
            } catch (Exception v0) {
                v1 = v2_1;
            }
        }
        io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v1, "Error while closing settings cache file.");
        return v5;
    }

Method io.fabric.sdk.android.services.settings.DefaultCachedSettingsIo.writeCachedSettings() calling method java.io.File.<init>()


    public void writeCachedSettings(long p8, org.json.JSONObject p10)
    {
        io.fabric.sdk.android.Fabric.getLogger().d("Fabric", "Writing settings to cache file...");
        if (p10 != null) {
            java.io.FileWriter v1 = 0;
            try {
                p10.put("expires_at", p8);
                java.io.FileWriter v2_0 = new java.io.FileWriter(new java.io.File(new io.fabric.sdk.android.services.persistence.FileStoreImpl(this.kit).getFilesDir(), "com.crashlytics.settings.json"));
                try {
                    v2_0.write(p10.toString());
                    v2_0.flush();
                    io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v2_0, "Failed to close settings writer.");
                } catch (Throwable v3_7) {
                    v1 = v2_0;
                    io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v1, "Failed to close settings writer.");
                    throw v3_7;
                } catch (Exception v0) {
                    v1 = v2_0;
                    io.fabric.sdk.android.Fabric.getLogger().e("Fabric", "Failed to cache settings", v0);
                    io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v1, "Failed to close settings writer.");
                }
            } catch (Throwable v3_7) {
            } catch (Exception v0) {
            }
        }
        return;
    }

Method mono.MonoPackageManager.LoadApplication() calling method java.io.File.<init>()


    public static void LoadApplication(android.content.Context p11, android.content.pm.ApplicationInfo p12, String[] p13)
    {
        try {
            if ((p11 instanceof android.app.Application)) {
                mono.MonoPackageManager.Context = p11;
            }
        } catch (int v0_2) {
            throw v0_2;
        }
        if (!mono.MonoPackageManager.initialized) {
            p11.registerReceiver(new mono.android.app.NotifyTimeZoneChanges(), new android.content.IntentFilter("android.intent.action.TIMEZONE_CHANGED"));
            int v0_3 = java.util.Locale.getDefault();
            int v0_6 = new StringBuilder().append(v0_3.getLanguage()).append("-").append(v0_3.getCountry()).toString();
            String[] v1_7 = p11.getFilesDir().getAbsolutePath();
            String[] v5_0 = p11.getCacheDir().getAbsolutePath();
            String[] v6_0 = mono.MonoPackageManager.getNativeLibraryPath(p11);
            ClassLoader v4 = p11.getClassLoader();
            String v2_3 = android.os.Environment.getExternalStorageDirectory();
            String v7_6 = new java.io.File(v2_3, new StringBuilder().append("Android/data/").append(p11.getPackageName()).append("/files/.__override__").toString()).getAbsolutePath();
            int v8_10 = new java.io.File(v2_3, new StringBuilder().append("../legacy/Android/data/").append(p11.getPackageName()).append("/files/.__override__").toString()).getAbsolutePath();
            System.loadLibrary("monodroid");
            String v2_5 = mono.MonoPackageManager.getNativeLibraryPath(p12);
            String[] v3_5 = new String[3];
            v3_5[0] = v1_7;
            v3_5[1] = v5_0;
            v3_5[2] = v6_0;
            String[] v5_1 = new String[2];
            v5_1[0] = v7_6;
            v5_1[1] = v8_10;
            mono.android.Runtime.init(v0_6, p13, v2_5, v3_5, v4, v5_1, mono.MonoPackageManager_Resources.Assemblies, p11.getPackageName(), android.os.Build$VERSION.SDK_INT, mono.android.app.XamarinAndroidEnvironmentVariables.Variables);
            mono.android.app.ApplicationRegistration.registerApplications();
            mono.MonoPackageManager.initialized = 1;
        }
        return;
    }

Method com.crashlytics.android.core.NativeFileUtils.binaryImagesJsonFromMapsFile() calling method java.io.FileReader.<init>()


    private static byte[] binaryImagesJsonFromMapsFile(java.io.File p4, android.content.Context p5)
    {
        Throwable v2_2;
        if (p4.exists()) {
            java.io.BufferedReader v0 = 0;
            try {
                java.io.BufferedReader v1_1 = new java.io.BufferedReader(new java.io.FileReader(p4));
                try {
                    v2_2 = new com.crashlytics.android.core.BinaryImagesConverter(p5, new com.crashlytics.android.core.Sha1FileIdStrategy()).convert(v1_1);
                    io.fabric.sdk.android.services.common.CommonUtils.closeQuietly(v1_1);
                } catch (Throwable v2_3) {
                    v0 = v1_1;
                    io.fabric.sdk.android.services.common.CommonUtils.closeQuietly(v0);
                    throw v2_3;
                }
            } catch (Throwable v2_3) {
            }
        } else {
            v2_2 = 0;
        }
        return v2_2;
    }

Method io.fabric.sdk.android.services.network.HttpRequest.receive() calling method java.io.FileOutputStream.<init>()


    public io.fabric.sdk.android.services.network.HttpRequest receive(java.io.File p5)
    {
        try {
            return ((io.fabric.sdk.android.services.network.HttpRequest) new io.fabric.sdk.android.services.network.HttpRequest$3(this, new java.io.BufferedOutputStream(new java.io.FileOutputStream(p5), this.bufferSize), this.ignoreCloseExceptions, new java.io.BufferedOutputStream(new java.io.FileOutputStream(p5), this.bufferSize)).call());
        } catch (java.io.FileNotFoundException v0) {
            throw new io.fabric.sdk.android.services.network.HttpRequest$HttpRequestException(v0);
        }
    }

Method com.google.android.gms.common.util.zzr.zzch() calling method java.io.FileReader.<init>()


    private static String zzch(int p6)
    {
        Throwable v0_0 = 0;
        if (p6 > 0) {
            try {
                java.io.IOException v2_1 = android.os.StrictMode.allowThreadDiskReads();
                try {
                    Throwable v1_0 = new java.io.BufferedReader(new java.io.FileReader(new StringBuilder(25).append("/proc/").append(p6).append("/cmdline").toString()));
                    try {
                        android.os.StrictMode.setThreadPolicy(v2_1);
                        v0_0 = v1_0.readLine().trim();
                        com.google.android.gms.common.util.zzn.closeQuietly(v1_0);
                    } catch (Throwable v0_1) {
                        java.io.IOException v2_0 = v0_1;
                        Throwable v3_1 = v1_0;
                        com.google.android.gms.common.util.zzn.closeQuietly(v3_1);
                        throw v2_0;
                    } catch (java.io.IOException v2) {
                        com.google.android.gms.common.util.zzn.closeQuietly(v1_0);
                    }
                } catch (Throwable v1_1) {
                    android.os.StrictMode.setThreadPolicy(v2_1);
                    throw v1_1;
                }
            } catch (Throwable v1_2) {
                v2_0 = v1_2;
                v3_1 = 0;
            } catch (Throwable v1) {
                v1_0 = 0;
            }
        }
        return v0_0;
    }

Method io.fabric.sdk.android.services.common.CommonUtils.extractFieldFromSystemFile() calling method java.io.FileReader.<init>()


    public static String extractFieldFromSystemFile(java.io.File p11, String p12)
    {
        String v6 = 0;
        if (p11.exists()) {
            java.io.BufferedReader v0 = 0;
            try {
                java.io.BufferedReader v1_0 = new java.io.BufferedReader(new java.io.FileReader(p11), 1024);
                try {
                    do {
                        String v3 = v1_0.readLine();
                    } while((String[] v5.length <= 1) || (!v5[0].equals(p12)));
                    v6 = v5[1];
                    io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v1_0, "Failed to close system file reader.");
                } catch (int v7_10) {
                    v0 = v1_0;
                    io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v0, "Failed to close system file reader.");
                    throw v7_10;
                } catch (Exception v2) {
                    v0 = v1_0;
                    io.fabric.sdk.android.Fabric.getLogger().e("Fabric", new StringBuilder().append("Error parsing ").append(p11).toString(), v2);
                    io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v0, "Failed to close system file reader.");
                }
                if (v3 != null) {
                    v5 = java.util.regex.Pattern.compile("\\s*:\\s*").split(v3, 2);
                    if ((v5.length > 1) && (v5[0].equals(p12))) {
                    }
                }
            } catch (int v7_10) {
            } catch (Exception v2) {
            }
        }
        return v6;
    }

Method android.support.v4.graphics.TypefaceCompatApi21Impl.createFromFontInfo() calling method java.io.FileInputStream.<init>()


    public android.graphics.Typeface createFromFontInfo(android.content.Context p12, android.os.CancellationSignal p13, android.support.v4.provider.FontsContractCompat$FontInfo[] p14, int p15)
    {
        Throwable v6 = 0;
        if (p14.length >= 1) {
            try {
                android.os.ParcelFileDescriptor v4 = p12.getContentResolver().openFileDescriptor(this.findBestInfo(p14, p15).getUri(), "r", p13);
                try {
                    java.io.File v2 = this.getFile(v4);
                } catch (Throwable v7_7) {
                    Throwable v8_4 = v7_7;
                    Throwable v9_3 = 0;
                    if (v4 != null) {
                        if (v9_3 == null) {
                            v4.close();
                        } else {
                            v4.close();
                        }
                    }
                    throw v8_4;
                } catch (Throwable v7_6) {
                    try {
                        throw v7_6;
                    } catch (Throwable v8_4) {
                        v9_3 = v7_6;
                    }
                }
                if ((v2 != null) && (v2.canRead())) {
                    Throwable v7_2 = android.graphics.Typeface.createFromFile(v2);
                    if (v4 != null) {
                        if (0 == 0) {
                            v4.close();
                        } else {
                            try {
                                v4.close();
                            } catch (Throwable v9_0) {
                                0.addSuppressed(v9_0);
                            }
                        }
                    }
                    v6 = v7_2;
                } else {
                    java.io.FileInputStream v3_1 = new java.io.FileInputStream(v4.getFileDescriptor());
                    try {
                        Throwable v7_4 = super.createFromInputStream(p12, v3_1);
                    } catch (Throwable v7_5) {
                        Throwable v8_3 = 0;
                        if (v3_1 != null) {
                            if (v8_3 == null) {
                                v3_1.close();
                            } else {
                                v3_1.close();
                            }
                        }
                        throw v7_5;
                    } catch (Throwable v8_3) {
                        try {
                            throw v8_3;
                        } catch (Throwable v7_5) {
                        }
                    }
                    if (v3_1 != null) {
                        if (0 == 0) {
                            v3_1.close();
                        } else {
                            try {
                                v3_1.close();
                            } catch (Throwable v10) {
                                0.addSuppressed(v10);
                            }
                        }
                    }
                    if (v4 != null) {
                        if (0 == 0) {
                            v4.close();
                        } else {
                            try {
                                v4.close();
                            } catch (Throwable v9_4) {
                                0.addSuppressed(v9_4);
                            }
                        }
                    }
                    v6 = v7_4;
                }
            } catch (java.io.IOException v1) {
            }
        }
        return v6;
    }

Method android.support.v4.graphics.TypefaceCompatUtil.mmap() calling method java.io.FileInputStream.<init>()


    public static java.nio.ByteBuffer mmap(android.content.Context p13, android.os.CancellationSignal p14, android.net.Uri p15)
    {
        try {
            android.os.ParcelFileDescriptor v8 = p13.getContentResolver().openFileDescriptor(p15, "r", p14);
            try {
                java.io.FileInputStream v7_0 = new java.io.FileInputStream(v8.getFileDescriptor());
                try {
                    java.nio.channels.FileChannel v0 = v7_0.getChannel();
                    Throwable v1_1 = v0.map(java.nio.channels.FileChannel$MapMode.READ_ONLY, 0, v0.size());
                } catch (Throwable v1_3) {
                    Throwable v2_1 = v1_3;
                    Throwable v3_0 = 0;
                    if (v7_0 != null) {
                        if (v3_0 == null) {
                            v7_0.close();
                        } else {
                            v7_0.close();
                        }
                    }
                    throw v2_1;
                } catch (Throwable v1_2) {
                    try {
                        throw v1_2;
                    } catch (Throwable v2_1) {
                        v3_0 = v1_2;
                    }
                }
                if (v7_0 != null) {
                    if (0 == 0) {
                        v7_0.close();
                    } else {
                        try {
                            v7_0.close();
                        } catch (Throwable v2_2) {
                            0.addSuppressed(v2_2);
                        }
                    }
                }
                if (v8 == null) {
                    return v1_1;
                } else {
                    if (0 == 0) {
                        v8.close();
                        return v1_1;
                    } else {
                        try {
                            v8.close();
                        } catch (Throwable v2_4) {
                            0.addSuppressed(v2_4);
                        }
                        return v1_1;
                    }
                }
            } catch (Throwable v1_7) {
                Throwable v2_3 = v1_7;
                Throwable v3_1 = 0;
                if (v8 != null) {
                    if (v3_1 == null) {
                        v8.close();
                    } else {
                        try {
                            v8.close();
                        } catch (Throwable v1_8) {
                            v3_1.addSuppressed(v1_8);
                        }
                    }
                }
                throw v2_3;
            } catch (Throwable v1_6) {
                try {
                    throw v1_6;
                } catch (Throwable v2_3) {
                    v3_1 = v1_6;
                }
            }
        } catch (java.io.IOException v6) {
            v1_1 = 0;
            return v1_1;
        }
    }

Method com.crashlytics.android.core.CrashlyticsController.writeToCosFromFile() calling method java.io.FileInputStream.<init>()


    private static void writeToCosFromFile(com.crashlytics.android.core.CodedOutputStream p6, java.io.File p7)
    {
        if (p7.exists()) {
            java.io.FileInputStream v0 = 0;
            try {
                java.io.FileInputStream v1_1 = new java.io.FileInputStream(p7);
                try {
                    com.crashlytics.android.core.CrashlyticsController.copyToCodedOutputStream(v1_1, p6, ((int) p7.length()));
                    io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v1_1, "Failed to close file input stream.");
                } catch (Throwable v2_2) {
                    v0 = v1_1;
                    io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v0, "Failed to close file input stream.");
                    throw v2_2;
                }
            } catch (Throwable v2_2) {
            }
        } else {
            io.fabric.sdk.android.Fabric.getLogger().e("CrashlyticsCore", new StringBuilder().append("Tried to include a file that doesn\'t exist: ").append(p7.getName()).toString(), 0);
        }
        return;
    }

Method com.crashlytics.android.core.MetaDataStore.readKeyData() calling method java.io.FileInputStream.<init>()


    public java.util.Map readKeyData(String p8)
    {
        Throwable v4_1;
        java.io.File v1 = this.getKeysFileForSession(p8);
        if (v1.exists()) {
            java.io.FileInputStream v2 = 0;
            try {
                java.io.FileInputStream v3_1 = new java.io.FileInputStream(v1);
                try {
                    v4_1 = com.crashlytics.android.core.MetaDataStore.jsonToKeysData(io.fabric.sdk.android.services.common.CommonUtils.streamToString(v3_1));
                    io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v3_1, "Failed to close user metadata file.");
                } catch (Throwable v4_4) {
                    v2 = v3_1;
                    io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v2, "Failed to close user metadata file.");
                    throw v4_4;
                } catch (Exception v0) {
                    v2 = v3_1;
                    io.fabric.sdk.android.Fabric.getLogger().e("CrashlyticsCore", "Error deserializing user metadata.", v0);
                    io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v2, "Failed to close user metadata file.");
                    v4_1 = java.util.Collections.emptyMap();
                }
            } catch (Throwable v4_4) {
            } catch (Exception v0) {
            }
        } else {
            v4_1 = java.util.Collections.emptyMap();
        }
        return v4_1;
    }

Method com.google.android.gms.internal.zzcz.zzb() calling method java.io.FileInputStream.<init>()


    private final boolean zzb(java.io.File p13, String p14)
    {
        java.io.FileInputStream v0_3;
        int v3 = 0;
        java.io.FileInputStream v4_3 = new Object[2];
        v4_3[0] = p13;
        v4_3[1] = p14;
        byte[] v5_0 = new java.io.File(String.format("%s/%s.tmp", v4_3));
        if (v5_0.exists()) {
            java.io.FileInputStream v4_1 = new Object[2];
            v4_1[0] = p13;
            v4_1[1] = p14;
            int v6_1 = new java.io.File(String.format("%s/%s.dex", v4_1));
            if (!v6_1.exists()) {
                try {
                    String v8_0 = v5_0.length();
                } catch (java.io.FileInputStream v0_5) {
                    java.io.FileInputStream v1_1 = v0_5;
                    java.io.IOException v2_0 = 0;
                    java.io.FileInputStream v4_0 = 0;
                    if (v4_0 != null) {
                        try {
                            v4_0.close();
                        } catch (java.io.FileInputStream v0) {
                        }
                    }
                    if (v2_0 != null) {
                        try {
                            v2_0.close();
                        } catch (java.io.FileInputStream v0) {
                        }
                    }
                    throw v1_1;
                } catch (java.io.FileInputStream v0) {
                    java.io.FileInputStream v0_1 = 0;
                    java.io.FileInputStream v1_0 = 0;
                    if (v1_0 != null) {
                        try {
                            v1_0.close();
                        } catch (java.io.FileInputStream v1) {
                        }
                    }
                    if (v0_1 != null) {
                        try {
                            v0_1.close();
                        } catch (java.io.FileInputStream v0) {
                        }
                    }
                    v0_3 = 0;
                } catch (java.io.FileInputStream v0) {
                    v0_1 = 0;
                    v1_0 = 0;
                } catch (java.io.FileInputStream v0) {
                    v0_1 = 0;
                    v1_0 = 0;
                }
                if (v8_0 > 0) {
                    java.io.FileInputStream v0_11 = new byte[((int) v8_0)];
                    v4_0 = new java.io.FileInputStream(v5_0);
                    try {
                        if (v4_0.read(v0_11) > 0) {
                            java.io.FileInputStream v0_13 = ((com.google.android.gms.internal.zzba) com.google.android.gms.internal.zzeyn.zza(new com.google.android.gms.internal.zzba(), v0_11));
                            if ((p14.equals(new String(v0_13.zzgb))) && ((java.util.Arrays.equals(v0_13.zzga, com.google.android.gms.internal.zzbt.zzb(v0_13.data))) && (java.util.Arrays.equals(v0_13.zzgc, android.os.Build$VERSION.SDK.getBytes())))) {
                                byte[] v5_3 = this.zzaid.zzb(this.zzaie, new String(v0_13.data));
                                v6_1.createNewFile();
                                v0_1 = new java.io.FileOutputStream(v6_1);
                                v3 = 0;
                                try {
                                    v0_1.write(v5_3, 0, v5_3.length);
                                    try {
                                        v4_0.close();
                                        try {
                                            v0_1.close();
                                        } catch (java.io.FileInputStream v0) {
                                        }
                                        v0_3 = 1;
                                    } catch (java.io.IOException v2) {
                                    }
                                } catch (java.io.FileInputStream v1_1) {
                                    v2_0 = v0_1;
                                } catch (java.io.FileInputStream v1) {
                                    v1_0 = v4_0;
                                } catch (java.io.FileInputStream v1) {
                                    v1_0 = v4_0;
                                } catch (java.io.FileInputStream v1) {
                                    v1_0 = v4_0;
                                }
                            } else {
                                com.google.android.gms.internal.zzcz.zza(v5_0);
                                try {
                                    v4_0.close();
                                } catch (java.io.FileInputStream v0) {
                                }
                                v0_3 = 0;
                            }
                        } else {
                            android.util.Log.d(com.google.android.gms.internal.zzcz.TAG, "Cannot read the cache data.");
                            com.google.android.gms.internal.zzcz.zza(v5_0);
                            try {
                                v4_0.close();
                            } catch (java.io.FileInputStream v0) {
                            }
                            v0_3 = 0;
                        }
                    } catch (java.io.FileInputStream v0_2) {
                        v1_1 = v0_2;
                        v2_0 = v3;
                    } catch (java.io.FileInputStream v0) {
                        v0_1 = v3;
                        v1_0 = v4_0;
                    } catch (java.io.FileInputStream v0) {
                        v0_1 = v3;
                        v1_0 = v4_0;
                    } catch (java.io.FileInputStream v0) {
                        v0_1 = v3;
                        v1_0 = v4_0;
                    }
                } else {
                    com.google.android.gms.internal.zzcz.zza(v5_0);
                    v0_3 = 0;
                }
            } else {
                v0_3 = 0;
            }
        } else {
            v0_3 = 0;
        }
        return v0_3;
    }

Method com.crashlytics.android.core.MetaDataStore.readUserData() calling method java.io.FileInputStream.<init>()


    public com.crashlytics.android.core.UserMetaData readUserData(String p8)
    {
        Throwable v4_1;
        java.io.File v1 = this.getUserDataFileForSession(p8);
        if (v1.exists()) {
            java.io.FileInputStream v2 = 0;
            try {
                java.io.FileInputStream v3_1 = new java.io.FileInputStream(v1);
                try {
                    v4_1 = com.crashlytics.android.core.MetaDataStore.jsonToUserData(io.fabric.sdk.android.services.common.CommonUtils.streamToString(v3_1));
                    io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v3_1, "Failed to close user metadata file.");
                } catch (Throwable v4_4) {
                    v2 = v3_1;
                    io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v2, "Failed to close user metadata file.");
                    throw v4_4;
                } catch (Exception v0) {
                    v2 = v3_1;
                    io.fabric.sdk.android.Fabric.getLogger().e("CrashlyticsCore", "Error deserializing user metadata.", v0);
                    io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v2, "Failed to close user metadata file.");
                    v4_1 = com.crashlytics.android.core.UserMetaData.EMPTY;
                }
            } catch (Throwable v4_4) {
            } catch (Exception v0) {
            }
        } else {
            v4_1 = com.crashlytics.android.core.UserMetaData.EMPTY;
        }
        return v4_1;
    }

Method com.crashlytics.android.core.NativeFileUtils.readFile() calling method java.io.FileInputStream.<init>()


    static byte[] readFile(java.io.File p4)
    {
        Throwable v3_0 = 0;
        java.io.FileInputStream v1 = 0;
        try {
            java.io.FileInputStream v2_1 = new java.io.FileInputStream(p4);
            try {
                v3_0 = com.crashlytics.android.core.NativeFileUtils.readBytes(v2_1);
                io.fabric.sdk.android.services.common.CommonUtils.closeQuietly(v2_1);
            } catch (Throwable v3_1) {
                v1 = v2_1;
                io.fabric.sdk.android.services.common.CommonUtils.closeQuietly(v1);
                throw v3_1;
            } catch (java.io.IOException v0) {
                v1 = v2_1;
                io.fabric.sdk.android.services.common.CommonUtils.closeQuietly(v1);
            } catch (java.io.IOException v0) {
                v1 = v2_1;
                io.fabric.sdk.android.services.common.CommonUtils.closeQuietly(v1);
            }
            return v3_0;
        } catch (Throwable v3_1) {
        } catch (java.io.IOException v0) {
        } catch (java.io.IOException v0) {
        }
    }

Method com.crashlytics.android.core.Sha1FileIdStrategy.getFileSHA() calling method java.io.FileInputStream.<init>()


    private static String getFileSHA(String p4)
    {
        java.io.BufferedInputStream v0 = 0;
        try {
            java.io.BufferedInputStream v1_1 = new java.io.BufferedInputStream(new java.io.FileInputStream(p4));
            try {
                String v2 = io.fabric.sdk.android.services.common.CommonUtils.sha1(v1_1);
                io.fabric.sdk.android.services.common.CommonUtils.closeQuietly(v1_1);
                return v2;
            } catch (Throwable v3_0) {
                v0 = v1_1;
                io.fabric.sdk.android.services.common.CommonUtils.closeQuietly(v0);
                throw v3_0;
            }
        } catch (Throwable v3_0) {
        }
        v2 = io.fabric.sdk.android.services.common.CommonUtils.sha1(v1_1);
        io.fabric.sdk.android.services.common.CommonUtils.closeQuietly(v1_1);
        return v2;
    }

Method com.google.android.gms.internal.zzag.initialize() calling method java.io.FileInputStream.<init>()


    public final declared_synchronized void initialize()
    {
        try {
            if (this.zzbx.exists()) {
                int v3_3 = this.zzbx.listFiles();
                if (v3_3 != 0) {
                    int v4 = v3_3.length;
                    int v2_0 = 0;
                    while (v2_0 < v4) {
                        String v5 = v3_3[v2_0];
                        try {
                            java.io.IOException v0_2 = new java.io.BufferedInputStream(new java.io.FileInputStream(v5));
                            try {
                                java.io.IOException v1_2 = com.google.android.gms.internal.zzai.zzf(v0_2);
                                v1_2.zzbz = v5.length();
                                this.zza(v1_2.key, v1_2);
                                try {
                                    v0_2.close();
                                } catch (java.io.IOException v0) {
                                }
                                v2_0++;
                            } catch (java.io.IOException v1) {
                                if (v5 != null) {
                                    v5.delete();
                                }
                                if (v0_2 == null) {
                                } else {
                                    try {
                                        v0_2.close();
                                    } catch (java.io.IOException v0) {
                                    }
                                }
                            }
                        } catch (java.io.IOException v0_3) {
                            int v2_1 = v0_3;
                            int v3_0 = 0;
                            if (v3_0 != 0) {
                                try {
                                    v3_0.close();
                                } catch (java.io.IOException v0) {
                                }
                            }
                            throw v2_1;
                        } catch (java.io.IOException v0) {
                            v0_2 = 0;
                        } catch (java.io.IOException v1_4) {
                            v2_1 = v1_4;
                            v3_0 = v0_2;
                        }
                    }
                }
            } else {
                if (!this.zzbx.mkdirs()) {
                    java.io.IOException v1_7 = new Object[1];
                    v1_7[0] = this.zzbx.getAbsolutePath();
                    com.google.android.gms.internal.zzab.zzc("Unable to create cache dir %s", v1_7);
                }
            }
        } catch (java.io.IOException v0_8) {
            throw v0_8;
        }
        return;
    }

Method com.google.android.gms.internal.zzag.zza() calling method java.io.FileInputStream.<init>()


    public final declared_synchronized com.google.android.gms.internal.zzc zza(String p11)
    {
        try {
            int v0_8;
            int v0_5 = ((com.google.android.gms.internal.zzai) this.zzbv.get(p11));
        } catch (int v0_10) {
            throw v0_10;
        }
        if (v0_5 != 0) {
            int v4_2 = this.zze(p11);
            try {
                String v3_0 = new com.google.android.gms.internal.zzaj(new java.io.BufferedInputStream(new java.io.FileInputStream(v4_2)), 0);
                try {
                    com.google.android.gms.internal.zzai.zzf(v3_0);
                    Object[] v5_3 = com.google.android.gms.internal.zzag.zza(v3_0, ((int) (v4_2.length() - ((long) com.google.android.gms.internal.zzaj.zza(v3_0)))));
                    String v2_5 = new com.google.android.gms.internal.zzc();
                    v2_5.data = v5_3;
                    v2_5.zza = v0_5.zza;
                    v2_5.zzb = v0_5.zzb;
                    v2_5.zzc = v0_5.zzc;
                    v2_5.zzd = v0_5.zzd;
                    v2_5.zze = v0_5.zze;
                    v2_5.zzf = v0_5.zzf;
                    try {
                        v3_0.close();
                        v0_8 = v2_5;
                    } catch (int v0) {
                        v0_8 = 0;
                    }
                } catch (int v0_2) {
                    String v2_1 = v3_0;
                    try {
                        Object[] v5_8 = new Object[2];
                        v5_8[0] = v4_2.getAbsolutePath();
                        v5_8[1] = v0_2.toString();
                        com.google.android.gms.internal.zzab.zzb("%s: %s", v5_8);
                        this.remove(p11);
                    } catch (int v0_3) {
                        v3_0 = v2_1;
                        if (v3_0 != null) {
                            try {
                                v3_0.close();
                            } catch (int v0) {
                                v0_8 = 0;
                                return v0_8;
                            }
                        }
                        throw v0_3;
                    }
                    if (v2_1 != null) {
                        try {
                            v2_1.close();
                        } catch (int v0) {
                            v0_8 = 0;
                            return v0_8;
                        }
                    }
                    v0_8 = 0;
                } catch (int v0_1) {
                    Object[] v5_6 = new Object[2];
                    v5_6[0] = v4_2.getAbsolutePath();
                    v5_6[1] = v0_1.toString();
                    com.google.android.gms.internal.zzab.zzb("%s: %s", v5_6);
                    this.remove(p11);
                    if (v3_0 != null) {
                        try {
                            v3_0.close();
                        } catch (int v0) {
                            v0_8 = 0;
                            return v0_8;
                        }
                    }
                    v0_8 = 0;
                }
            } catch (int v0_3) {
                v3_0 = 0;
            } catch (int v0_2) {
                v2_1 = 0;
            } catch (int v0_1) {
                v3_0 = 0;
            } catch (int v0_3) {
            }
        } else {
            v0_8 = 0;
        }
        return v0_8;
    }

Method com.google.android.gms.internal.zzcz.zza() calling method java.io.FileInputStream.<init>()


    private final void zza(java.io.File p9, String p10)
    {
        java.io.IOException v1_3 = new Object[2];
        v1_3[0] = p9;
        v1_3[1] = p10;
        Throwable v3_0 = new java.io.File(String.format("%s/%s.tmp", v1_3));
        if (!v3_0.exists()) {
            java.io.IOException v1_0 = new Object[2];
            v1_0[0] = p9;
            v1_0[1] = p10;
            java.io.File v5_1 = new java.io.File(String.format("%s/%s.dex", v1_0));
            if (v5_1.exists()) {
                java.io.IOException v0_5 = v5_1.length();
                if (v0_5 > 0) {
                    java.io.IOException v0_7 = new byte[((int) v0_5)];
                    try {
                        java.io.IOException v1_2 = new java.io.FileInputStream(v5_1);
                        try {
                            if (v1_2.read(v0_7) > 0) {
                                java.io.IOException v4_5 = new com.google.android.gms.internal.zzba();
                                v4_5.zzgc = android.os.Build$VERSION.SDK.getBytes();
                                v4_5.zzgb = p10.getBytes();
                                java.io.IOException v0_12 = this.zzaid.zzc(this.zzaie, v0_7).getBytes();
                                v4_5.data = v0_12;
                                v4_5.zzga = com.google.android.gms.internal.zzbt.zzb(v0_12);
                                v3_0.createNewFile();
                                java.io.IOException v0_8 = new java.io.FileOutputStream(v3_0);
                                try {
                                    com.google.android.gms.internal.zzcv v2_1 = com.google.android.gms.internal.zzeyn.zzc(v4_5);
                                    v0_8.write(v2_1, 0, v2_1.length);
                                    v0_8.close();
                                    try {
                                        v1_2.close();
                                        try {
                                            v0_8.close();
                                        } catch (java.io.IOException v0) {
                                        }
                                        com.google.android.gms.internal.zzcz.zza(v5_1);
                                    } catch (java.io.IOException v1) {
                                    }
                                } catch (com.google.android.gms.internal.zzcv v2_2) {
                                    Throwable v3_2 = v2_2;
                                    java.io.IOException v4_0 = v0_8;
                                    if (v1_2 != null) {
                                        try {
                                            v1_2.close();
                                        } catch (java.io.IOException v0) {
                                        }
                                    }
                                    if (v4_0 != null) {
                                        try {
                                            v4_0.close();
                                        } catch (java.io.IOException v0) {
                                        }
                                    }
                                    com.google.android.gms.internal.zzcz.zza(v5_1);
                                    throw v3_2;
                                } catch (com.google.android.gms.internal.zzcv v2) {
                                    if (v1_2 != null) {
                                        try {
                                            v1_2.close();
                                        } catch (java.io.IOException v1) {
                                        }
                                    }
                                    if (v0_8 != null) {
                                        try {
                                            v0_8.close();
                                        } catch (java.io.IOException v0) {
                                        }
                                    }
                                    com.google.android.gms.internal.zzcz.zza(v5_1);
                                } catch (com.google.android.gms.internal.zzcv v2) {
                                } catch (com.google.android.gms.internal.zzcv v2) {
                                }
                            } else {
                                try {
                                    v1_2.close();
                                } catch (java.io.IOException v0) {
                                }
                                com.google.android.gms.internal.zzcz.zza(v5_1);
                            }
                        } catch (java.io.IOException v0_15) {
                            v3_2 = v0_15;
                            v4_0 = 0;
                        } catch (java.io.IOException v0) {
                            v0_8 = 0;
                        } catch (java.io.IOException v0) {
                            v0_8 = 0;
                        } catch (java.io.IOException v0) {
                            v0_8 = 0;
                        }
                    } catch (java.io.IOException v0_9) {
                        v3_2 = v0_9;
                        v4_0 = 0;
                        v1_2 = 0;
                    } catch (java.io.IOException v0) {
                        v0_8 = 0;
                        v1_2 = 0;
                    } catch (java.io.IOException v0) {
                        v0_8 = 0;
                        v1_2 = 0;
                    } catch (java.io.IOException v0) {
                        v0_8 = 0;
                        v1_2 = 0;
                    }
                }
            }
        }
        return;
    }

Method com.google.android.gms.tagmanager.zzey.zzbem() calling method java.io.FileInputStream.<init>()


    final void zzbem()
    {
        if (this.zzjty != null) {
            com.google.android.gms.tagmanager.zzdj.v("Attempting to load resource from disk");
            if (((com.google.android.gms.tagmanager.zzei.zzbeh().zzbei() != com.google.android.gms.tagmanager.zzei$zza.zzjtn) && (com.google.android.gms.tagmanager.zzei.zzbeh().zzbei() != com.google.android.gms.tagmanager.zzei$zza.zzjto)) || (!this.zzjoz.equals(com.google.android.gms.tagmanager.zzei.zzbeh().getContainerId()))) {
                try {
                    String v1_4 = new java.io.FileInputStream(this.zzben());
                    try {
                        String v0_10 = new java.io.ByteArrayOutputStream();
                        com.google.android.gms.internal.zzdbo.zzb(v1_4, v0_10);
                        String v0_13 = ((com.google.android.gms.internal.zzdbm) com.google.android.gms.internal.zzeyn.zza(new com.google.android.gms.internal.zzdbm(), v0_10.toByteArray()));
                    } catch (String v0_26) {
                        try {
                            v1_4.close();
                        } catch (String v1) {
                            com.google.android.gms.tagmanager.zzdj.zzcr("Error closing stream for reading resource from disk");
                        }
                        throw v0_26;
                    } catch (String v0) {
                        this.zzjty.zzed(com.google.android.gms.tagmanager.zzda.zzjsl);
                        com.google.android.gms.tagmanager.zzdj.zzcr("Failed to read the resource from disk");
                        try {
                            v1_4.close();
                        } catch (String v0) {
                            com.google.android.gms.tagmanager.zzdj.zzcr("Error closing stream for reading resource from disk");
                        }
                        com.google.android.gms.tagmanager.zzdj.v("The Disk resource was successfully read.");
                    } catch (String v0) {
                        this.zzjty.zzed(com.google.android.gms.tagmanager.zzda.zzjsl);
                        com.google.android.gms.tagmanager.zzdj.zzcr("Failed to read the resource from disk. The resource is inconsistent");
                        try {
                            v1_4.close();
                        } catch (String v0) {
                            com.google.android.gms.tagmanager.zzdj.zzcr("Error closing stream for reading resource from disk");
                        }
                    }
                    if ((v0_13.zzxx != null) || (v0_13.zzkfk != null)) {
                        this.zzjty.onSuccess(v0_13);
                        try {
                            v1_4.close();
                        } catch (String v0) {
                            com.google.android.gms.tagmanager.zzdj.zzcr("Error closing stream for reading resource from disk");
                        }
                    } else {
                        throw new IllegalArgumentException("Resource and SupplementedResource are NULL.");
                    }
                } catch (String v0) {
                    com.google.android.gms.tagmanager.zzdj.zzca("Failed to find the resource in the disk");
                    this.zzjty.zzed(com.google.android.gms.tagmanager.zzda.zzjsk);
                }
            } else {
                this.zzjty.zzed(com.google.android.gms.tagmanager.zzda.zzjsk);
            }
            return;
        } else {
            throw new IllegalStateException("Callback must be set before execute");
        }
    }

Method io.fabric.sdk.android.services.events.QueueFileEventStorage.move() calling method java.io.FileInputStream.<init>()


    private void move(java.io.File p6, java.io.File p7)
    {
        java.io.OutputStream v2 = 0;
        java.io.FileInputStream v0 = 0;
        try {
            java.io.FileInputStream v1_1 = new java.io.FileInputStream(p6);
            try {
                v2 = this.getMoveOutputStream(p7);
                Throwable v3_4 = new byte[1024];
                io.fabric.sdk.android.services.common.CommonUtils.copyStream(v1_1, v2, v3_4);
                io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v1_1, "Failed to close file input stream");
                io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v2, "Failed to close output stream");
                p6.delete();
                return;
            } catch (Throwable v3_2) {
                v0 = v1_1;
                io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v0, "Failed to close file input stream");
                io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v2, "Failed to close output stream");
                p6.delete();
                throw v3_2;
            }
        } catch (Throwable v3_2) {
        }
        v2 = this.getMoveOutputStream(p7);
        v3_4 = new byte[1024];
        io.fabric.sdk.android.services.common.CommonUtils.copyStream(v1_1, v2, v3_4);
        io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v1_1, "Failed to close file input stream");
        io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v2, "Failed to close output stream");
        p6.delete();
        return;
    }

Method io.fabric.sdk.android.services.network.HttpRequest.part() calling method java.io.FileInputStream.<init>()


    public io.fabric.sdk.android.services.network.HttpRequest part(String p6, String p7, String p8, java.io.File p9)
    {
        java.io.BufferedInputStream v1 = 0;
        try {
            java.io.BufferedInputStream v2_1 = new java.io.BufferedInputStream(new java.io.FileInputStream(p9));
            try {
                Throwable v3_5 = this.part(p6, p7, p8, v2_1);
            } catch (Throwable v3_2) {
                v1 = v2_1;
                if (v1 != null) {
                    try {
                        v1.close();
                    } catch (java.io.IOException v4) {
                    }
                }
                throw v3_2;
            } catch (java.io.IOException v0) {
                v1 = v2_1;
                throw new io.fabric.sdk.android.services.network.HttpRequest$HttpRequestException(v0);
            }
            if (v2_1 != null) {
                try {
                    v2_1.close();
                } catch (java.io.IOException v4) {
                }
            }
            return v3_5;
        } catch (Throwable v3_2) {
        } catch (java.io.IOException v0) {
        }
    }

Method io.fabric.sdk.android.services.network.HttpRequest.send() calling method java.io.FileInputStream.<init>()


    public io.fabric.sdk.android.services.network.HttpRequest send(java.io.File p4)
    {
        try {
            return this.send(new java.io.BufferedInputStream(new java.io.FileInputStream(p4)));
        } catch (java.io.FileNotFoundException v0) {
            throw new io.fabric.sdk.android.services.network.HttpRequest$HttpRequestException(v0);
        }
    }

Method io.fabric.sdk.android.services.settings.DefaultCachedSettingsIo.readCachedSettings() calling method java.io.FileInputStream.<init>()


    public org.json.JSONObject readCachedSettings()
    {
        io.fabric.sdk.android.Fabric.getLogger().d("Fabric", "Reading cached settings...");
        java.io.FileInputStream v1 = 0;
        org.json.JSONObject v5 = 0;
        try {
            java.io.File v3_0 = new java.io.File(new io.fabric.sdk.android.services.persistence.FileStoreImpl(this.kit).getFilesDir(), "com.crashlytics.settings.json");
        } catch (Throwable v7_7) {
            io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v1, "Error while closing settings cache file.");
            throw v7_7;
        } catch (Exception v0) {
            io.fabric.sdk.android.Fabric.getLogger().e("Fabric", "Failed to fetch cached settings", v0);
            io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v1, "Error while closing settings cache file.");
            return v5;
        }
        if (!v3_0.exists()) {
            io.fabric.sdk.android.Fabric.getLogger().d("Fabric", "No cached settings found.");
        } else {
            java.io.FileInputStream v2_1 = new java.io.FileInputStream(v3_0);
            try {
                v5 = new org.json.JSONObject(io.fabric.sdk.android.services.common.CommonUtils.streamToString(v2_1));
                v1 = v2_1;
            } catch (Throwable v7_7) {
                v1 = v2_1;
            } catch (Exception v0) {
                v1 = v2_1;
            }
        }
        io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v1, "Error while closing settings cache file.");
        return v5;
    }

Method io.fabric.sdk.android.services.settings.DefaultCachedSettingsIo.writeCachedSettings() calling method java.io.FileWriter.<init>()


    public void writeCachedSettings(long p8, org.json.JSONObject p10)
    {
        io.fabric.sdk.android.Fabric.getLogger().d("Fabric", "Writing settings to cache file...");
        if (p10 != null) {
            java.io.FileWriter v1 = 0;
            try {
                p10.put("expires_at", p8);
                java.io.FileWriter v2_0 = new java.io.FileWriter(new java.io.File(new io.fabric.sdk.android.services.persistence.FileStoreImpl(this.kit).getFilesDir(), "com.crashlytics.settings.json"));
                try {
                    v2_0.write(p10.toString());
                    v2_0.flush();
                    io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v2_0, "Failed to close settings writer.");
                } catch (Throwable v3_7) {
                    v1 = v2_0;
                    io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v1, "Failed to close settings writer.");
                    throw v3_7;
                } catch (Exception v0) {
                    v1 = v2_0;
                    io.fabric.sdk.android.Fabric.getLogger().e("Fabric", "Failed to cache settings", v0);
                    io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v1, "Failed to close settings writer.");
                }
            } catch (Throwable v3_7) {
            } catch (Exception v0) {
            }
        }
        return;
    }

Method android.support.v4.graphics.TypefaceCompatUtil.copyToFile() calling method java.io.FileOutputStream.<init>()


    public static boolean copyToFile(java.io.File p9, java.io.InputStream p10)
    {
        int v5_0 = 0;
        java.io.FileOutputStream v2 = 0;
        try {
            java.io.FileOutputStream v3_1 = new java.io.FileOutputStream(p9, 0);
            try {
                byte[] v0 = new byte[1024];
            } catch (int v5_1) {
                v2 = v3_1;
                android.support.v4.graphics.TypefaceCompatUtil.closeQuietly(v2);
                throw v5_1;
            } catch (java.io.IOException v1) {
                v2 = v3_1;
                android.util.Log.e("TypefaceCompatUtil", new StringBuilder().append("Error copying resource contents to temp file: ").append(v1.getMessage()).toString());
                android.support.v4.graphics.TypefaceCompatUtil.closeQuietly(v2);
                return v5_0;
            }
            while(true) {
                int v4 = p10.read(v0);
                if (v4 == -1) {
                    break;
                }
                v3_1.write(v0, 0, v4);
            }
            v5_0 = 1;
            android.support.v4.graphics.TypefaceCompatUtil.closeQuietly(v3_1);
            return v5_0;
        } catch (int v5_1) {
        } catch (java.io.IOException v1) {
        }
    }

Method android.support.v4.print.PrintHelper$PrintHelperApi19$2.doInBackground() calling method java.io.FileOutputStream.<init>()


    protected varargs Throwable doInBackground(Void[] p13)
    {
        Throwable v7 = 0;
        try {
            if (!this.val$cancellationSignal.isCanceled()) {
                android.print.pdf.PrintedPdfDocument v6_1 = new android.print.pdf.PrintedPdfDocument(this.this$0.mContext, this.val$pdfAttributes);
                android.graphics.Bitmap v4 = android.support.v4.print.PrintHelper$PrintHelperApi19.access$100(this.this$0, this.val$bitmap, this.val$pdfAttributes.getColorMode());
                if (!this.val$cancellationSignal.isCanceled()) {
                    try {
                        android.graphics.RectF v0_1;
                        android.graphics.pdf.PdfDocument$Page v5 = v6_1.startPage(1);
                    } catch (java.io.IOException v8_30) {
                        v6_1.close();
                        if (this.val$fileDescriptor != null) {
                            try {
                                this.val$fileDescriptor.close();
                            } catch (java.io.FileDescriptor v9) {
                            }
                        }
                        if (v4 != this.val$bitmap) {
                            v4.recycle();
                        }
                        throw v8_30;
                    }
                    if (!this.this$0.mIsMinMarginsHandlingCorrect) {
                        android.print.pdf.PrintedPdfDocument v1_1 = new android.print.pdf.PrintedPdfDocument(this.this$0.mContext, this.val$attributes);
                        android.graphics.pdf.PdfDocument$Page v2 = v1_1.startPage(1);
                        v0_1 = new android.graphics.RectF(v2.getInfo().getContentRect());
                        v1_1.finishPage(v2);
                        v1_1.close();
                    } else {
                        v0_1 = new android.graphics.RectF(v5.getInfo().getContentRect());
                    }
                    android.graphics.Matrix v3 = android.support.v4.print.PrintHelper$PrintHelperApi19.access$200(this.this$0, v4.getWidth(), v4.getHeight(), v0_1, this.val$fittingMode);
                    if (!this.this$0.mIsMinMarginsHandlingCorrect) {
                        v3.postTranslate(v0_1.left, v0_1.top);
                        v5.getCanvas().clipRect(v0_1);
                    }
                    v5.getCanvas().drawBitmap(v4, v3, 0);
                    v6_1.finishPage(v5);
                    if (!this.val$cancellationSignal.isCanceled()) {
                        v6_1.writeTo(new java.io.FileOutputStream(this.val$fileDescriptor.getFileDescriptor()));
                        v6_1.close();
                        if (this.val$fileDescriptor != null) {
                            try {
                                this.val$fileDescriptor.close();
                            } catch (java.io.IOException v8) {
                            }
                        }
                        if (v4 != this.val$bitmap) {
                            v4.recycle();
                        }
                    } else {
                        v6_1.close();
                        if (this.val$fileDescriptor != null) {
                            try {
                                this.val$fileDescriptor.close();
                            } catch (java.io.IOException v8) {
                            }
                        }
                        if (v4 != this.val$bitmap) {
                            v4.recycle();
                        }
                    }
                }
            }
        } catch (Throwable v7) {
        }
        return v7;
    }

Method android.support.v4.util.AtomicFile.startWrite() calling method java.io.FileOutputStream.<init>()


    public java.io.FileOutputStream startWrite()
    {
        if (this.mBaseName.exists()) {
            if (this.mBackupName.exists()) {
                this.mBaseName.delete();
            } else {
                if (!this.mBaseName.renameTo(this.mBackupName)) {
                    android.util.Log.w("AtomicFile", new StringBuilder().append("Couldn\'t rename file ").append(this.mBaseName).append(" to backup file ").append(this.mBackupName).toString());
                }
            }
        }
        try {
            java.io.FileOutputStream v3_1 = new java.io.FileOutputStream(this.mBaseName);
        } catch (java.io.FileNotFoundException v0) {
            if (this.mBaseName.getParentFile().mkdirs()) {
                try {
                    v3_1 = new java.io.FileOutputStream(this.mBaseName);
                } catch (java.io.FileNotFoundException v1) {
                    throw new java.io.IOException(new StringBuilder().append("Couldn\'t create ").append(this.mBaseName).toString());
                }
            } else {
                throw new java.io.IOException(new StringBuilder().append("Couldn\'t create directory ").append(this.mBaseName).toString());
            }
        }
        return v3_1;
    }

Method com.crashlytics.android.core.ClsFileOutputStream.<init>() calling method java.io.FileOutputStream.<init>()


    public ClsFileOutputStream(java.io.File p4, String p5)
    {
        super(new java.io.File(p4, new StringBuilder().append(p5).append(".cls_temp").toString()));
        super.closed = 0;
        super.root = new StringBuilder().append(p4).append(java.io.File.separator).append(p5).toString();
        super.inProgress = new java.io.File(new StringBuilder().append(super.root).append(".cls_temp").toString());
        return;
    }

Method com.crashlytics.android.core.CrashlyticsController.gzip() calling method java.io.FileOutputStream.<init>()


    private void gzip(byte[] p4, java.io.File p5)
    {
        java.util.zip.GZIPOutputStream v0 = 0;
        try {
            java.util.zip.GZIPOutputStream v1_1 = new java.util.zip.GZIPOutputStream(new java.io.FileOutputStream(p5));
            try {
                v1_1.write(p4);
                v1_1.finish();
                io.fabric.sdk.android.services.common.CommonUtils.closeQuietly(v1_1);
                return;
            } catch (Throwable v2_0) {
                v0 = v1_1;
                io.fabric.sdk.android.services.common.CommonUtils.closeQuietly(v0);
                throw v2_0;
            }
        } catch (Throwable v2_0) {
        }
        v1_1.write(p4);
        v1_1.finish();
        io.fabric.sdk.android.services.common.CommonUtils.closeQuietly(v1_1);
        return;
    }

Method com.crashlytics.android.core.CrashlyticsController.writeFile() calling method java.io.FileOutputStream.<init>()


    private void writeFile(String p6, String p7, com.crashlytics.android.core.CrashlyticsController$FileOutputStreamWriteAction p8)
    {
        java.io.FileOutputStream v0 = 0;
        try {
            java.io.FileOutputStream v1_1 = new java.io.FileOutputStream(new java.io.File(this.getFilesDir(), new StringBuilder().append(p6).append(p7).toString()));
            try {
                p8.writeTo(v1_1);
                io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v1_1, new StringBuilder().append("Failed to close ").append(p7).append(" file.").toString());
                return;
            } catch (Throwable v2_1) {
                v0 = v1_1;
                io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v0, new StringBuilder().append("Failed to close ").append(p7).append(" file.").toString());
                throw v2_1;
            }
        } catch (Throwable v2_1) {
        }
        p8.writeTo(v1_1);
        io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v1_1, new StringBuilder().append("Failed to close ").append(p7).append(" file.").toString());
        return;
    }

Method com.google.android.gms.internal.zzcz.zza() calling method java.io.FileOutputStream.<init>()


    private final void zza(java.io.File p9, String p10)
    {
        java.io.IOException v1_3 = new Object[2];
        v1_3[0] = p9;
        v1_3[1] = p10;
        Throwable v3_0 = new java.io.File(String.format("%s/%s.tmp", v1_3));
        if (!v3_0.exists()) {
            java.io.IOException v1_0 = new Object[2];
            v1_0[0] = p9;
            v1_0[1] = p10;
            java.io.File v5_1 = new java.io.File(String.format("%s/%s.dex", v1_0));
            if (v5_1.exists()) {
                java.io.IOException v0_5 = v5_1.length();
                if (v0_5 > 0) {
                    java.io.IOException v0_7 = new byte[((int) v0_5)];
                    try {
                        java.io.IOException v1_2 = new java.io.FileInputStream(v5_1);
                        try {
                            if (v1_2.read(v0_7) > 0) {
                                java.io.IOException v4_5 = new com.google.android.gms.internal.zzba();
                                v4_5.zzgc = android.os.Build$VERSION.SDK.getBytes();
                                v4_5.zzgb = p10.getBytes();
                                java.io.IOException v0_12 = this.zzaid.zzc(this.zzaie, v0_7).getBytes();
                                v4_5.data = v0_12;
                                v4_5.zzga = com.google.android.gms.internal.zzbt.zzb(v0_12);
                                v3_0.createNewFile();
                                java.io.IOException v0_8 = new java.io.FileOutputStream(v3_0);
                                try {
                                    com.google.android.gms.internal.zzcv v2_1 = com.google.android.gms.internal.zzeyn.zzc(v4_5);
                                    v0_8.write(v2_1, 0, v2_1.length);
                                    v0_8.close();
                                    try {
                                        v1_2.close();
                                        try {
                                            v0_8.close();
                                        } catch (java.io.IOException v0) {
                                        }
                                        com.google.android.gms.internal.zzcz.zza(v5_1);
                                    } catch (java.io.IOException v1) {
                                    }
                                } catch (com.google.android.gms.internal.zzcv v2_2) {
                                    Throwable v3_2 = v2_2;
                                    java.io.IOException v4_0 = v0_8;
                                    if (v1_2 != null) {
                                        try {
                                            v1_2.close();
                                        } catch (java.io.IOException v0) {
                                        }
                                    }
                                    if (v4_0 != null) {
                                        try {
                                            v4_0.close();
                                        } catch (java.io.IOException v0) {
                                        }
                                    }
                                    com.google.android.gms.internal.zzcz.zza(v5_1);
                                    throw v3_2;
                                } catch (com.google.android.gms.internal.zzcv v2) {
                                    if (v1_2 != null) {
                                        try {
                                            v1_2.close();
                                        } catch (java.io.IOException v1) {
                                        }
                                    }
                                    if (v0_8 != null) {
                                        try {
                                            v0_8.close();
                                        } catch (java.io.IOException v0) {
                                        }
                                    }
                                    com.google.android.gms.internal.zzcz.zza(v5_1);
                                } catch (com.google.android.gms.internal.zzcv v2) {
                                } catch (com.google.android.gms.internal.zzcv v2) {
                                }
                            } else {
                                try {
                                    v1_2.close();
                                } catch (java.io.IOException v0) {
                                }
                                com.google.android.gms.internal.zzcz.zza(v5_1);
                            }
                        } catch (java.io.IOException v0_15) {
                            v3_2 = v0_15;
                            v4_0 = 0;
                        } catch (java.io.IOException v0) {
                            v0_8 = 0;
                        } catch (java.io.IOException v0) {
                            v0_8 = 0;
                        } catch (java.io.IOException v0) {
                            v0_8 = 0;
                        }
                    } catch (java.io.IOException v0_9) {
                        v3_2 = v0_9;
                        v4_0 = 0;
                        v1_2 = 0;
                    } catch (java.io.IOException v0) {
                        v0_8 = 0;
                        v1_2 = 0;
                    } catch (java.io.IOException v0) {
                        v0_8 = 0;
                        v1_2 = 0;
                    } catch (java.io.IOException v0) {
                        v0_8 = 0;
                        v1_2 = 0;
                    }
                }
            }
        }
        return;
    }

Method com.crashlytics.android.core.MetaDataStore.writeKeyData() calling method java.io.FileOutputStream.<init>()


    public void writeKeyData(String p9, java.util.Map p10)
    {
        java.io.File v1 = this.getKeysFileForSession(p9);
        java.io.BufferedWriter v3 = 0;
        try {
            String v2 = com.crashlytics.android.core.MetaDataStore.keysDataToJson(p10);
            java.io.BufferedWriter v4_0 = new java.io.BufferedWriter(new java.io.OutputStreamWriter(new java.io.FileOutputStream(v1), com.crashlytics.android.core.MetaDataStore.UTF_8));
            try {
                v4_0.write(v2);
                v4_0.flush();
                io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v4_0, "Failed to close key/value metadata file.");
            } catch (Throwable v5_4) {
                v3 = v4_0;
                io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v3, "Failed to close key/value metadata file.");
                throw v5_4;
            } catch (Exception v0) {
                v3 = v4_0;
                io.fabric.sdk.android.Fabric.getLogger().e("CrashlyticsCore", "Error serializing key/value metadata.", v0);
                io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v3, "Failed to close key/value metadata file.");
            }
            return;
        } catch (Throwable v5_4) {
        } catch (Exception v0) {
        }
    }

Method com.crashlytics.android.core.MetaDataStore.writeUserData() calling method java.io.FileOutputStream.<init>()


    public void writeUserData(String p9, com.crashlytics.android.core.UserMetaData p10)
    {
        java.io.File v1 = this.getUserDataFileForSession(p9);
        java.io.BufferedWriter v3 = 0;
        try {
            String v2 = com.crashlytics.android.core.MetaDataStore.userDataToJson(p10);
            java.io.BufferedWriter v4_0 = new java.io.BufferedWriter(new java.io.OutputStreamWriter(new java.io.FileOutputStream(v1), com.crashlytics.android.core.MetaDataStore.UTF_8));
            try {
                v4_0.write(v2);
                v4_0.flush();
                io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v4_0, "Failed to close user metadata file.");
            } catch (Throwable v5_4) {
                v3 = v4_0;
                io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v3, "Failed to close user metadata file.");
                throw v5_4;
            } catch (Exception v0) {
                v3 = v4_0;
                io.fabric.sdk.android.Fabric.getLogger().e("CrashlyticsCore", "Error serializing user metadata.", v0);
                io.fabric.sdk.android.services.common.CommonUtils.closeOrLog(v3, "Failed to close user metadata file.");
            }
            return;
        } catch (Throwable v5_4) {
        } catch (Exception v0) {
        }
    }

Method com.google.android.gms.common.data.BitmapTeleporter.zzait() calling method java.io.FileOutputStream.<init>()


    private final java.io.FileOutputStream zzait()
    {
        if (this.zzfqd != null) {
            try {
                IllegalStateException v0_6 = java.io.File.createTempFile("teleporter", ".tmp", this.zzfqd);
                try {
                    String v1_2 = new java.io.FileOutputStream(v0_6);
                    this.zzcqz = android.os.ParcelFileDescriptor.open(v0_6, 268435456);
                    v0_6.delete();
                    return v1_2;
                } catch (IllegalStateException v0) {
                    throw new IllegalStateException("Temporary file is somehow already deleted");
                }
            } catch (IllegalStateException v0_7) {
                throw new IllegalStateException("Could not create temporary file", v0_7);
            }
            v1_2 = new java.io.FileOutputStream(v0_6);
            this.zzcqz = android.os.ParcelFileDescriptor.open(v0_6, 268435456);
            v0_6.delete();
            return v1_2;
        } else {
            throw new IllegalStateException("setTempDir() must be called before writing this object to a parcel");
        }
    }

Method com.google.android.gms.internal.zzag.zza() calling method java.io.FileOutputStream.<init>()


    public final declared_synchronized void zza(String p13, com.google.android.gms.internal.zzc p14)
    {
        int v1_0 = 0;
        try {
            Object[] v2_4 = p14.data.length;
        } catch (int v0_4) {
            throw v0_4;
        }
        if ((this.zzbw + ((long) v2_4)) >= ((long) this.zzby)) {
            if (com.google.android.gms.internal.zzab.DEBUG) {
                Long v3_5 = new Object[0];
                com.google.android.gms.internal.zzab.zza("Pruning old cache entries.", v3_5);
            }
            long v4_1 = this.zzbw;
            long v6_0 = android.os.SystemClock.elapsedRealtime();
            Long v3_6 = this.zzbv.entrySet().iterator();
            while (v3_6.hasNext()) {
                int v0_12 = ((com.google.android.gms.internal.zzai) ((java.util.Map$Entry) v3_6.next()).getValue());
                if (!this.zze(v0_12.key).delete()) {
                    int v9_1 = new Object[2];
                    v9_1[0] = v0_12.key;
                    v9_1[1] = com.google.android.gms.internal.zzag.zzd(v0_12.key);
                    com.google.android.gms.internal.zzab.zzb("Could not delete cache entry for key=%s, filename=%s", v9_1);
                } else {
                    this.zzbw = (this.zzbw - v0_12.zzbz);
                }
                v3_6.remove();
                int v0_8 = (v1_0 + 1);
                if (((float) (this.zzbw + ((long) v2_4))) >= (((float) this.zzby) * 1063675494)) {
                    v1_0 = v0_8;
                }
                if (com.google.android.gms.internal.zzab.DEBUG) {
                    Object[] v2_6 = new Object[3];
                    v2_6[0] = Integer.valueOf(v0_8);
                    v2_6[1] = Long.valueOf((this.zzbw - v4_1));
                    v2_6[2] = Long.valueOf((android.os.SystemClock.elapsedRealtime() - v6_0));
                    com.google.android.gms.internal.zzab.zza("pruned %d files, %d bytes, %d ms", v2_6);
                }
            }
            v0_8 = v1_0;
        }
        int v0_20 = this.zze(p13);
        try {
            int v1_11 = new java.io.BufferedOutputStream(new java.io.FileOutputStream(v0_20));
            Object[] v2_10 = new com.google.android.gms.internal.zzai(p13, p14);
        } catch (int v1) {
            if (v0_20.delete()) {
                return;
            } else {
                Object[] v2_3 = new Object[1];
                v2_3[0] = v0_20.getAbsolutePath();
                com.google.android.gms.internal.zzab.zzb("Could not clean up file %s", v2_3);
                return;
            }
        }
        if (v2_10.zza(v1_11)) {
            v1_11.write(p14.data);
            v1_11.close();
            this.zza(p13, v2_10);
            return;
        } else {
            v1_11.close();
            Object[] v2_1 = new Object[1];
            v2_1[0] = v0_20.getAbsolutePath();
            com.google.android.gms.internal.zzab.zzb("Failed to write header for %s", v2_1);
            throw new java.io.IOException();
        }
    }

Method com.google.android.gms.internal.zzcz.zza() calling method java.io.FileOutputStream.<init>()


    public static com.google.android.gms.internal.zzcz zza(android.content.Context p9, String p10, String p11, boolean p12)
    {
        int v0_0 = 1;
        void v3_0 = new com.google.android.gms.internal.zzcz(p9);
        v3_0.zzaib = java.util.concurrent.Executors.newCachedThreadPool();
        v3_0.zzahg = p12;
        if (p12) {
            v3_0.zzaig = v3_0.zzaib.submit(new com.google.android.gms.internal.zzda(v3_0));
        }
        v3_0.zzaib.execute(new com.google.android.gms.internal.zzdc(v3_0));
        try {
            String v2_5;
            com.google.android.gms.internal.zzcz.zzain = com.google.android.gms.common.zze.zzaex();
        } catch (int v0) {
            v3_0.zza(0, 1);
            if ((!com.google.android.gms.internal.zzde.zzaq()) || (!((Boolean) com.google.android.gms.ads.internal.zzbv.zzen().zzd(com.google.android.gms.internal.zzmn.zzblx)).booleanValue())) {
                v3_0.zzaid = new com.google.android.gms.internal.zzcu(0);
                v3_0.zzaie = v3_0.zzaid.zzk(p10);
                try {
                    int v0_29 = v3_0.zzahz.getCacheDir();
                } catch (int v0_14) {
                    throw new com.google.android.gms.internal.zzcw(v0_14);
                } catch (int v0_13) {
                    throw new com.google.android.gms.internal.zzcw(v0_13);
                }
                if (v0_29 == 0) {
                    v0_29 = v3_0.zzahz.getDir("dex", 0);
                    if (v0_29 == 0) {
                        throw new com.google.android.gms.internal.zzcw();
                    }
                }
                String v1_19 = v0_29;
                Object[] v5_5 = new Object[2];
                v5_5[0] = v1_19;
                v5_5[1] = "1496809943795";
                String v4_9 = new java.io.File(String.format("%s/%s.jar", v5_5));
                if (!v4_9.exists()) {
                    int v0_35 = v3_0.zzaid.zzb(v3_0.zzaie, p11);
                    v4_9.createNewFile();
                    Object[] v5_8 = new java.io.FileOutputStream(v4_9);
                    v5_8.write(v0_35, 0, v0_35.length);
                    v5_8.close();
                }
                v3_0.zzb(v1_19, "1496809943795");
                try {
                    v3_0.zzaic = new dalvik.system.DexClassLoader(v4_9.getAbsolutePath(), v1_19.getAbsolutePath(), 0, v3_0.zzahz.getClassLoader());
                } catch (int v0_3) {
                    com.google.android.gms.internal.zzcz.zza(v4_9);
                    v3_0 = v3_0.zza(v1_19, "1496809943795");
                    Object[] v5_2 = new Object[2];
                    v5_2[0] = v1_19;
                    v5_2[1] = "1496809943795";
                    com.google.android.gms.internal.zzcz.zzl(String.format("%s/%s.dex", v5_2));
                    throw v0_3;
                }
                com.google.android.gms.internal.zzcz.zza(v4_9);
                v3_0 = v3_0.zza(v1_19, "1496809943795");
                String v4_4 = new Object[2];
                v4_4[0] = v1_19;
                v4_4[1] = "1496809943795";
                com.google.android.gms.internal.zzcz.zzl(String.format("%s/%s.dex", v4_4));
                v3_0.zzaij = new com.google.android.gms.internal.zzcm(v3_0);
                v3_0.zzaip = 1;
                return v3_0;
            } else {
                throw new IllegalStateException("Task Context initialization must not be called from the UI thread.");
            }
        }
        if (com.google.android.gms.common.zze.zzbw(v3_0.zzahz) <= 0) {
            v2_5 = 0;
        } else {
            v2_5 = 1;
        }
        v3_0.zzaik = v2_5;
        if (com.google.android.gms.internal.zzcz.zzain.isGooglePlayServicesAvailable(v3_0.zzahz) != 0) {
            v0_0 = 0;
        }
        v3_0.zzaim = v0_0;
    }

Method com.google.android.gms.internal.zzcz.zzb() calling method java.io.FileOutputStream.<init>()


    private final boolean zzb(java.io.File p13, String p14)
    {
        java.io.FileInputStream v0_3;
        int v3 = 0;
        java.io.FileInputStream v4_3 = new Object[2];
        v4_3[0] = p13;
        v4_3[1] = p14;
        byte[] v5_0 = new java.io.File(String.format("%s/%s.tmp", v4_3));
        if (v5_0.exists()) {
            java.io.FileInputStream v4_1 = new Object[2];
            v4_1[0] = p13;
            v4_1[1] = p14;
            int v6_1 = new java.io.File(String.format("%s/%s.dex", v4_1));
            if (!v6_1.exists()) {
                try {
                    String v8_0 = v5_0.length();
                } catch (java.io.FileInputStream v0_5) {
                    java.io.FileInputStream v1_1 = v0_5;
                    java.io.IOException v2_0 = 0;
                    java.io.FileInputStream v4_0 = 0;
                    if (v4_0 != null) {
                        try {
                            v4_0.close();
                        } catch (java.io.FileInputStream v0) {
                        }
                    }
                    if (v2_0 != null) {
                        try {
                            v2_0.close();
                        } catch (java.io.FileInputStream v0) {
                        }
                    }
                    throw v1_1;
                } catch (java.io.FileInputStream v0) {
                    java.io.FileInputStream v0_1 = 0;
                    java.io.FileInputStream v1_0 = 0;
                    if (v1_0 != null) {
                        try {
                            v1_0.close();
                        } catch (java.io.FileInputStream v1) {
                        }
                    }
                    if (v0_1 != null) {
                        try {
                            v0_1.close();
                        } catch (java.io.FileInputStream v0) {
                        }
                    }
                    v0_3 = 0;
                } catch (java.io.FileInputStream v0) {
                    v0_1 = 0;
                    v1_0 = 0;
                } catch (java.io.FileInputStream v0) {
                    v0_1 = 0;
                    v1_0 = 0;
                }
                if (v8_0 > 0) {
                    java.io.FileInputStream v0_11 = new byte[((int) v8_0)];
                    v4_0 = new java.io.FileInputStream(v5_0);
                    try {
                        if (v4_0.read(v0_11) > 0) {
                            java.io.FileInputStream v0_13 = ((com.google.android.gms.internal.zzba) com.google.android.gms.internal.zzeyn.zza(new com.google.android.gms.internal.zzba(), v0_11));
                            if ((p14.equals(new String(v0_13.zzgb))) && ((java.util.Arrays.equals(v0_13.zzga, com.google.android.gms.internal.zzbt.zzb(v0_13.data))) && (java.util.Arrays.equals(v0_13.zzgc, android.os.Build$VERSION.SDK.getBytes())))) {
                                byte[] v5_3 = this.zzaid.zzb(this.zzaie, new String(v0_13.data));
                                v6_1.createNewFile();
                                v0_1 = new java.io.FileOutputStream(v6_1);
                                v3 = 0;
                                try {
                                    v0_1.write(v5_3, 0, v5_3.length);
                                    try {
                                        v4_0.close();
                                        try {
                                            v0_1.close();
                                        } catch (java.io.FileInputStream v0) {
                                        }
                                        v0_3 = 1;
                                    } catch (java.io.IOException v2) {
                                    }
                                } catch (java.io.FileInputStream v1_1) {
                                    v2_0 = v0_1;
                                } catch (java.io.FileInputStream v1) {
                                    v1_0 = v4_0;
                                } catch (java.io.FileInputStream v1) {
                                    v1_0 = v4_0;
                                } catch (java.io.FileInputStream v1) {
                                    v1_0 = v4_0;
                                }
                            } else {
                                com.google.android.gms.internal.zzcz.zza(v5_0);
                                try {
                                    v4_0.close();
                                } catch (java.io.FileInputStream v0) {
                                }
                                v0_3 = 0;
                            }
                        } else {
                            android.util.Log.d(com.google.android.gms.internal.zzcz.TAG, "Cannot read the cache data.");
                            com.google.android.gms.internal.zzcz.zza(v5_0);
                            try {
                                v4_0.close();
                            } catch (java.io.FileInputStream v0) {
                            }
                            v0_3 = 0;
                        }
                    } catch (java.io.FileInputStream v0_2) {
                        v1_1 = v0_2;
                        v2_0 = v3;
                    } catch (java.io.FileInputStream v0) {
                        v0_1 = v3;
                        v1_0 = v4_0;
                    } catch (java.io.FileInputStream v0) {
                        v0_1 = v3;
                        v1_0 = v4_0;
                    } catch (java.io.FileInputStream v0) {
                        v0_1 = v3;
                        v1_0 = v4_0;
                    }
                } else {
                    com.google.android.gms.internal.zzcz.zza(v5_0);
                    v0_3 = 0;
                }
            } else {
                v0_3 = 0;
            }
        } else {
            v0_3 = 0;
        }
        return v0_3;
    }

Method com.google.android.gms.internal.zzmq.zzir() calling method java.io.FileOutputStream.<init>()


    private final void zzir()
    {
        try {
            while(true) {
                java.io.IOException v0_6 = ((com.google.android.gms.internal.zzna) this.zzbpx.take());
                String v2_1 = v0_6.zzix();
                try {
                    String v1_12.close();
                } catch (java.io.IOException v0_15) {
                    com.google.android.gms.internal.zzafy.zzc("CsiReporter: Cannot close file: sdk_csi_data.txt.", v0_15);
                }
            }
            com.google.android.gms.internal.zzafy.zzcr("CsiReporter: File doesn\'t exists. Cannot write CSI data to file.");
        } catch (java.io.IOException v0_19) {
            com.google.android.gms.internal.zzafy.zzc("CsiReporter:reporter interrupted", v0_19);
            return;
        }
        if (!android.text.TextUtils.isEmpty(v2_1)) {
            java.io.IOException v0_2 = this.zza(this.zzbpz, v0_6.zziy());
            java.io.File v3_0 = android.net.Uri.parse(this.zzbpv).buildUpon();
            int v4_0 = v0_2.entrySet().iterator();
            while (v4_0.hasNext()) {
                java.io.IOException v0_18 = ((java.util.Map$Entry) v4_0.next());
                v3_0.appendQueryParameter(((String) v0_18.getKey()), ((String) v0_18.getValue()));
            }
            java.io.IOException v0_8 = new StringBuilder(v3_0.build().toString());
            v0_8.append("&it=").append(v2_1);
            java.io.IOException v0_9 = v0_8.toString();
            if (!this.zzbqb.get()) {
                com.google.android.gms.ads.internal.zzbv.zzea();
                com.google.android.gms.internal.zzahg.zzd(this.mContext, this.zzauo, v0_9);
            } else {
                java.io.File v3_1 = this.zzbqc;
                if (v3_1 != null) {
                    try {
                        v1_12 = new java.io.FileOutputStream(v3_1, 1);
                        try {
                            v1_12.write(v0_9.getBytes());
                            v1_12.write(10);
                            try {
                                v1_12.close();
                            } catch (java.io.IOException v0_16) {
                                com.google.android.gms.internal.zzafy.zzc("CsiReporter: Cannot close file: sdk_csi_data.txt.", v0_16);
                            }
                        } catch (java.io.IOException v0_11) {
                            com.google.android.gms.internal.zzafy.zzc("CsiReporter: Cannot write to file: sdk_csi_data.txt.", v0_11);
                            if (v1_12 != null) {
                            }
                        }
                    } catch (java.io.IOException v0_12) {
                        v1_12 = 0;
                        if (v1_12 != null) {
                            try {
                                v1_12.close();
                            } catch (String v1_15) {
                                com.google.android.gms.internal.zzafy.zzc("CsiReporter: Cannot close file: sdk_csi_data.txt.", v1_15);
                            }
                        }
                        throw v0_12;
                    } catch (java.io.IOException v0_11) {
                        v1_12 = 0;
                    } catch (java.io.IOException v0_12) {
                    }
                }
            }
        }
    }

Method com.google.android.gms.internal.zzsk.zzat() calling method java.io.FileOutputStream.<init>()


    public final boolean zzat(String p27)
    {
        com.google.android.gms.internal.zzsf v2_39;
        if (this.zzbwu != null) {
            while(true) {
                com.google.android.gms.internal.zzsk v3_1;
                if (this.zzbwu != null) {
                    com.google.android.gms.internal.zzsf v2_34 = 0;
                    String v4_0 = this.zzbwu.listFiles();
                    com.google.android.gms.internal.zzsk v3_0 = 0;
                    while (v3_0 < v4_0.length) {
                        if (!v4_0[v3_0].getName().endsWith(".done")) {
                            v2_34++;
                        }
                        v3_0++;
                    }
                    v3_1 = v2_34;
                } else {
                    v3_1 = 0;
                }
                if (v3_1 <= ((Integer) com.google.android.gms.ads.internal.zzbv.zzen().zzd(com.google.android.gms.internal.zzmn.zzbgh)).intValue()) {
                    break;
                }
                com.google.android.gms.internal.zzsf v2_122;
                if (this.zzbwu != null) {
                    String v7_10 = 0;
                    String v4_20 = nan;
                    String v9_0 = this.zzbwu.listFiles();
                    int v10_0 = v9_0.length;
                    int v8_3 = 0;
                    while (v8_3 < v10_0) {
                        com.google.android.gms.internal.zzsf v2_126;
                        int v6_18 = v9_0[v8_3];
                        if (v6_18.getName().endsWith(".done")) {
                            v2_126 = v4_20;
                            v6_18 = v7_10;
                        } else {
                            v2_126 = v6_18.lastModified();
                            if (v2_126 >= v4_20) {
                            }
                        }
                        v8_3++;
                        v4_20 = v2_126;
                        v7_10 = v6_18;
                    }
                    v2_122 = 0;
                    if (v7_10 != null) {
                        v2_122 = v7_10.delete();
                        com.google.android.gms.internal.zzsk v3_39 = this.zzb(v7_10);
                        if (v3_39.isFile()) {
                            v2_122 &= v3_39.delete();
                        }
                    }
                } else {
                    v2_122 = 0;
                }
                if (v2_122 == null) {
                    com.google.android.gms.internal.zzafy.zzcr("Unable to expire stream cache");
                    this.zza(p27, 0, "expireFailed", 0);
                    v2_39 = 0;
                }
            }
            com.google.android.gms.internal.zzjh.zzhu();
            java.io.File v13_1 = new java.io.File(this.zzbwu, com.google.android.gms.internal.zzajf.zzcp(p27));
            java.io.File v14 = this.zzb(v13_1);
            if ((!v13_1.isFile()) || (!v14.isFile())) {
                String v9_1;
                com.google.android.gms.internal.zzsk v3_38 = String.valueOf(this.zzbwu.getAbsolutePath());
                com.google.android.gms.internal.zzsf v2_123 = String.valueOf(p27);
                if (v2_123.length() == 0) {
                    v9_1 = new String(v3_38);
                } else {
                    v9_1 = v3_38.concat(v2_123);
                }
                try {
                    if (!com.google.android.gms.internal.zzsk.zzbws.contains(v9_1)) {
                        com.google.android.gms.internal.zzsk.zzbws.add(v9_1);
                        String v5_5 = 0;
                        String v4_11;
                        com.google.android.gms.internal.zzsk v3_20;
                        com.google.android.gms.ads.internal.zzbv.zzeo();
                        com.google.android.gms.internal.zzsk v3_46 = com.google.android.gms.internal.zzajz.zzb(p27, ((Integer) com.google.android.gms.ads.internal.zzbv.zzen().zzd(com.google.android.gms.internal.zzmn.zzbgm)).intValue());
                        if ((v3_46 instanceof java.net.HttpURLConnection)) {
                            com.google.android.gms.internal.zzsf v2_142 = ((java.net.HttpURLConnection) v3_46).getResponseCode();
                            if (v2_142 >= 400) {
                                v4_11 = "badUrl";
                                try {
                                    com.google.android.gms.internal.zzsk v3_35 = String.valueOf(Integer.toString(v2_142));
                                } catch (com.google.android.gms.internal.zzsf v2_57) {
                                    v3_20 = 0;
                                    if ((v2_57 instanceof RuntimeException)) {
                                        com.google.android.gms.ads.internal.zzbv.zzee().zza(v2_57, "VideoStreamFullFileCache.preload");
                                    }
                                    try {
                                        v5_5.close();
                                    } catch (String v5) {
                                    } catch (String v5) {
                                    }
                                    if (!this.zzbwv) {
                                        com.google.android.gms.internal.zzafy.zzc(new StringBuilder((String.valueOf(p27).length() + 25)).append("Preload failed for URL \"").append(p27).append("\"").toString(), v2_57);
                                    } else {
                                        com.google.android.gms.internal.zzafy.zzcq(new StringBuilder((String.valueOf(p27).length() + 26)).append("Preload aborted for URL \"").append(p27).append("\"").toString());
                                    }
                                    if (v13_1.exists()) {
                                        if (!v13_1.delete()) {
                                            com.google.android.gms.internal.zzsf v2_102 = String.valueOf(v13_1.getAbsolutePath());
                                            if (v2_102.length() == 0) {
                                                com.google.android.gms.internal.zzsf v2_104 = new String("Could not delete partial cache file at ");
                                            } else {
                                                v2_104 = "Could not delete partial cache file at ".concat(v2_102);
                                            }
                                            com.google.android.gms.internal.zzafy.zzcr(v2_104);
                                        }
                                    }
                                    this.zza(p27, v13_1.getAbsolutePath(), v4_11, v3_20);
                                    com.google.android.gms.internal.zzsk.zzbws.remove(v9_1);
                                    v2_39 = 0;
                                    return v2_39;
                                } catch (com.google.android.gms.internal.zzsf v2_57) {
                                    v3_20 = 0;
                                }
                                if (v3_35.length() == 0) {
                                    v3_20 = new String("HTTP request failed. Code: ");
                                } else {
                                    v3_20 = "HTTP request failed. Code: ".concat(v3_35);
                                }
                                try {
                                    throw new java.io.IOException(new StringBuilder((String.valueOf(p27).length() + 32)).append("HTTP status code ").append(v2_142).append(" at ").append(p27).toString());
                                } catch (com.google.android.gms.internal.zzsf v2_57) {
                                } catch (com.google.android.gms.internal.zzsf v2_57) {
                                }
                            }
                        }
                        String v7_0 = v3_46.getContentLength();
                        if (v7_0 >= null) {
                            String v4_1 = com.google.android.gms.internal.zzsk.zzbwt.format(((long) v7_0));
                            int v15 = ((Integer) com.google.android.gms.ads.internal.zzbv.zzen().zzd(com.google.android.gms.internal.zzmn.zzbgi)).intValue();
                            if (v7_0 <= v15) {
                                com.google.android.gms.internal.zzafy.zzca(new StringBuilder(((String.valueOf(v4_1).length() + 20) + String.valueOf(p27).length())).append("Caching ").append(v4_1).append(" bytes from ").append(p27).toString());
                                java.nio.channels.ReadableByteChannel v16_1 = java.nio.channels.Channels.newChannel(v3_46.getInputStream());
                                java.io.FileOutputStream v12_1 = new java.io.FileOutputStream(v13_1);
                                try {
                                    java.nio.channels.FileChannel v17 = v12_1.getChannel();
                                    java.nio.ByteBuffer v18 = java.nio.ByteBuffer.allocate(1048576);
                                    com.google.android.gms.common.util.zzd v19 = com.google.android.gms.ads.internal.zzbv.zzeg();
                                    int v6_6 = 0;
                                    long v20 = v19.currentTimeMillis();
                                    com.google.android.gms.internal.zzaiy v22 = new com.google.android.gms.internal.zzaiy;
                                    v22(((Long) com.google.android.gms.ads.internal.zzbv.zzen().zzd(com.google.android.gms.internal.zzmn.zzbgl)).longValue());
                                    long v24 = ((Long) com.google.android.gms.ads.internal.zzbv.zzen().zzd(com.google.android.gms.internal.zzmn.zzbgk)).longValue();
                                } catch (com.google.android.gms.internal.zzsf v2_57) {
                                    v3_20 = 0;
                                    v4_11 = "error";
                                    v5_5 = v12_1;
                                }
                                do {
                                    com.google.android.gms.internal.zzsf v2_24 = v16_1.read(v18);
                                    if (v2_24 < null) {
                                        v12_1.close();
                                        if (com.google.android.gms.internal.zzafy.zzad(3)) {
                                            com.google.android.gms.internal.zzsf v2_28 = com.google.android.gms.internal.zzsk.zzbwt.format(((long) v6_6));
                                            com.google.android.gms.internal.zzafy.zzca(new StringBuilder(((String.valueOf(v2_28).length() + 22) + String.valueOf(p27).length())).append("Preloaded ").append(v2_28).append(" bytes from ").append(p27).toString());
                                        }
                                        v13_1.setReadable(1, 0);
                                        if (!v14.isFile()) {
                                            try {
                                                v14.createNewFile();
                                            } catch (com.google.android.gms.internal.zzsf v2) {
                                            }
                                        } else {
                                            v14.setLastModified(System.currentTimeMillis());
                                        }
                                        this.zza(p27, v13_1.getAbsolutePath(), v6_6);
                                        com.google.android.gms.internal.zzsk.zzbws.remove(v9_1);
                                        v2_39 = 1;
                                    } else {
                                        v6_6 += v2_24;
                                        try {
                                            if (v6_6 <= v15) {
                                                v18.flip();
                                                while (v17.write(v18) > 0) {
                                                }
                                                v18.clear();
                                                if ((v19.currentTimeMillis() - v20) <= (1000 * v24)) {
                                                    if (!this.zzbwv) {
                                                    } else {
                                                        v4_11 = "externalAbort";
                                                        throw new java.io.IOException("abort requested");
                                                    }
                                                } else {
                                                    v4_11 = "downloadTimeout";
                                                    com.google.android.gms.internal.zzsf v2_52 = Long.toString(v24);
                                                    v3_20 = new StringBuilder((String.valueOf(v2_52).length() + 29)).append("Timeout exceeded. Limit: ").append(v2_52).append(" sec").toString();
                                                    throw new java.io.IOException("stream cache time limit exceeded");
                                                }
                                            } else {
                                                v4_11 = "sizeExceeded";
                                                com.google.android.gms.internal.zzsk v3_22 = String.valueOf(Integer.toString(v6_6));
                                                if (v3_22.length() == 0) {
                                                    v3_20 = new String("File too big for full file cache. Size: ");
                                                } else {
                                                    v3_20 = "File too big for full file cache. Size: ".concat(v3_22);
                                                }
                                                throw new java.io.IOException("stream cache file size limit exceeded");
                                            }
                                        } catch (com.google.android.gms.internal.zzsf v2_57) {
                                            v3_20 = 0;
                                            v5_5 = v12_1;
                                        } catch (com.google.android.gms.internal.zzsf v2_57) {
                                            v3_20 = 0;
                                            v5_5 = v12_1;
                                        } catch (com.google.android.gms.internal.zzsf v2_57) {
                                            v5_5 = v12_1;
                                        } catch (com.google.android.gms.internal.zzsf v2_57) {
                                            v5_5 = v12_1;
                                        }
                                    }
                                } while(!v22.tryAcquire());
                                com.google.android.gms.internal.zzajf.zzdeq.post(new com.google.android.gms.internal.zzsf(this, p27, v13_1.getAbsolutePath(), v6_6, v7_0, 0));
                            } else {
                                com.google.android.gms.internal.zzsf v2_76;
                                com.google.android.gms.internal.zzafy.zzcr(new StringBuilder(((String.valueOf(v4_1).length() + 33) + String.valueOf(p27).length())).append("Content length ").append(v4_1).append(" exceeds limit at ").append(p27).toString());
                                com.google.android.gms.internal.zzsf v2_74 = String.valueOf(v4_1);
                                if (v2_74.length() == 0) {
                                    v2_76 = new String("File too big for full file cache. Size: ");
                                } else {
                                    v2_76 = "File too big for full file cache. Size: ".concat(v2_74);
                                }
                                this.zza(p27, v13_1.getAbsolutePath(), "sizeExceeded", v2_76);
                                com.google.android.gms.internal.zzsk.zzbws.remove(v9_1);
                                v2_39 = 0;
                            }
                        } else {
                            com.google.android.gms.internal.zzsf v2_81;
                            com.google.android.gms.internal.zzsf v2_79 = String.valueOf(p27);
                            if (v2_79.length() == 0) {
                                v2_81 = new String("Stream cache aborted, missing content-length header at ");
                            } else {
                                v2_81 = "Stream cache aborted, missing content-length header at ".concat(v2_79);
                            }
                            com.google.android.gms.internal.zzafy.zzcr(v2_81);
                            this.zza(p27, v13_1.getAbsolutePath(), "contentLengthMissing", 0);
                            com.google.android.gms.internal.zzsk.zzbws.remove(v9_1);
                            v2_39 = 0;
                        }
                    } else {
                        com.google.android.gms.internal.zzsf v2_110;
                        com.google.android.gms.internal.zzsf v2_108 = String.valueOf(p27);
                        if (v2_108.length() == 0) {
                            v2_110 = new String("Stream cache already in progress at ");
                        } else {
                            v2_110 = "Stream cache already in progress at ".concat(v2_108);
                        }
                        com.google.android.gms.internal.zzafy.zzcr(v2_110);
                        this.zza(p27, v13_1.getAbsolutePath(), "inProgress", 0);
                        v2_39 = 0;
                    }
                } catch (com.google.android.gms.internal.zzsf v2_113) {
                    throw v2_113;
                }
            } else {
                com.google.android.gms.internal.zzsf v2_117;
                com.google.android.gms.internal.zzsk v3_37 = ((int) v13_1.length());
                com.google.android.gms.internal.zzsf v2_115 = String.valueOf(p27);
                if (v2_115.length() == 0) {
                    v2_117 = new String("Stream cache hit at ");
                } else {
                    v2_117 = "Stream cache hit at ".concat(v2_115);
                }
                com.google.android.gms.internal.zzafy.zzca(v2_117);
                this.zza(p27, v13_1.getAbsolutePath(), v3_37);
                v2_39 = 1;
            }
        } else {
            this.zza(p27, 0, "noCacheDir", 0);
            v2_39 = 0;
        }
        return v2_39;
    }

Method com.google.android.gms.tagmanager.zzey.zzb() calling method java.io.FileOutputStream.<init>()


    final boolean zzb(com.google.android.gms.internal.zzdbm p5)
    {
        int v0_0 = 0;
        String v1_1 = this.zzben();
        try {
            java.io.FileOutputStream v2_1 = new java.io.FileOutputStream(v1_1);
            try {
                v2_1.write(com.google.android.gms.internal.zzeyn.zzc(p5));
                try {
                    v2_1.close();
                } catch (int v0) {
                    com.google.android.gms.tagmanager.zzdj.zzcr("error closing stream for writing resource to disk");
                }
                v0_0 = 1;
                return v0_0;
            } catch (int v0_1) {
                try {
                    v2_1.close();
                } catch (String v1) {
                    com.google.android.gms.tagmanager.zzdj.zzcr("error closing stream for writing resource to disk");
                }
                throw v0_1;
            } catch (String v3) {
                com.google.android.gms.tagmanager.zzdj.zzcr("Error writing resource to disk. Removing resource from disk.");
                v1_1.delete();
                try {
                    v2_1.close();
                } catch (String v1) {
                    com.google.android.gms.tagmanager.zzdj.zzcr("error closing stream for writing resource to disk");
                }
                return v0_0;
            }
        } catch (String v1) {
            com.google.android.gms.tagmanager.zzdj.e("Error opening resource file for writing");
            return v0_0;
        }
    }

Method io.fabric.sdk.android.services.events.QueueFileEventStorage.getMoveOutputStream() calling method java.io.FileOutputStream.<init>()


    public java.io.OutputStream getMoveOutputStream(java.io.File p2)
    {
        return new java.io.FileOutputStream(p2);
    }

Method io.fabric.sdk.android.services.events.GZIPQueueFileEventStorage.getMoveOutputStream() calling method java.io.FileOutputStream.<init>()


    public java.io.OutputStream getMoveOutputStream(java.io.File p3)
    {
        return new java.util.zip.GZIPOutputStream(new java.io.FileOutputStream(p3));
    }