Potentially Intent Spoofing

Description

The application is vulnerable to intent spoofing which could result in the access and exploitation of unauthorized components.

Recommendation

It is recommended to apply proper input validation and parameter filtering on intent action.

Technical details
[TAINT] String '.RNPushNotificationRemoteFetch' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V', '0', 'IPC_SINK']' [[('Lcom/dieam/reactnativepushnotification/modules/RNPushNotificationListenerService;', 'onMessageReceived', '(Ljava/lang/String; Landroid/os/Bundle;)V'), ('Lcom/dieam/reactnativepushnotification/modules/RNPushNotificationListenerService;', 'sendNotification', '(Landroid/os/Bundle;)V'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V')]]

Use of a string value .RNPushNotificationRemoteFetch to construct an Intent

Method com.dieam.reactnativepushnotification.modules.RNPushNotificationListenerService.onMessageReceived():


    public void onMessageReceived(String p6, android.os.Bundle p7)
    {
        org.json.JSONObject v1 = this.getPushData(p7.getString("data"));
        if (v1 != null) {
            if (!p7.containsKey("message")) {
                p7.putString("message", v1.optString("alert", "Notification received"));
            }
            if (!p7.containsKey("title")) {
                p7.putString("title", v1.optString("title", 0));
            }
            int v0 = v1.optInt("badge", -1);
            if (v0 >= 0) {
                com.dieam.reactnativepushnotification.helpers.ApplicationBadgeHelper.INSTANCE.setApplicationIconBadgeNumber(this, v0);
            }
        }
        this.sendNotification(p7);
        return;
    }

Method com.dieam.reactnativepushnotification.modules.RNPushNotificationListenerService.sendNotification():


    private void sendNotification(android.os.Bundle p7)
    {
        if (p7.getString("id") == null) {
            p7.putString("id", String.valueOf(new java.util.Random(System.currentTimeMillis()).nextInt()));
        }
        Boolean v1 = Boolean.valueOf(this.isApplicationRunning());
        android.content.Intent v0_1 = new android.content.Intent(new StringBuilder().append(this.getPackageName()).append(".RNPushNotificationReceiveNotification").toString());
        p7.putBoolean("foreground", v1.booleanValue());
        p7.putBoolean("userInteraction", 0);
        v0_1.putExtra("notification", p7);
        this.sendBroadcast(v0_1);
        if (p7.getString("contentAvailable", "false").equalsIgnoreCase("true")) {
            android.util.Log.d("RNPushNotification", "Received a notification with remote fetch enabled");
            android.content.Intent v3_1 = new android.content.Intent(new StringBuilder().append(this.getPackageName()).append(".RNPushNotificationRemoteFetch").toString());
            v3_1.putExtra("notification", p7);
            this.sendBroadcast(v3_1);
        }
        if (!v1.booleanValue()) {
            new com.dieam.reactnativepushnotification.modules.RNPushNotificationHelper(this.getApplication()).sendNotification(p7);
        }
        return;
    }

Method android.content.Intent.<init>() not found.

[TAINT] String '.RNPushNotificationReceiveNotification' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V', '0', 'IPC_SINK']' [[('Lcom/dieam/reactnativepushnotification/modules/RNPushNotificationListenerService;', 'onMessageReceived', '(Ljava/lang/String; Landroid/os/Bundle;)V'), ('Lcom/dieam/reactnativepushnotification/modules/RNPushNotificationListenerService;', 'sendNotification', '(Landroid/os/Bundle;)V'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V')]]

Use of a string value .RNPushNotificationReceiveNotification to construct an Intent

Method com.dieam.reactnativepushnotification.modules.RNPushNotificationListenerService.onMessageReceived():


    public void onMessageReceived(String p6, android.os.Bundle p7)
    {
        org.json.JSONObject v1 = this.getPushData(p7.getString("data"));
        if (v1 != null) {
            if (!p7.containsKey("message")) {
                p7.putString("message", v1.optString("alert", "Notification received"));
            }
            if (!p7.containsKey("title")) {
                p7.putString("title", v1.optString("title", 0));
            }
            int v0 = v1.optInt("badge", -1);
            if (v0 >= 0) {
                com.dieam.reactnativepushnotification.helpers.ApplicationBadgeHelper.INSTANCE.setApplicationIconBadgeNumber(this, v0);
            }
        }
        this.sendNotification(p7);
        return;
    }

Method com.dieam.reactnativepushnotification.modules.RNPushNotificationListenerService.sendNotification():


    private void sendNotification(android.os.Bundle p7)
    {
        if (p7.getString("id") == null) {
            p7.putString("id", String.valueOf(new java.util.Random(System.currentTimeMillis()).nextInt()));
        }
        Boolean v1 = Boolean.valueOf(this.isApplicationRunning());
        android.content.Intent v0_1 = new android.content.Intent(new StringBuilder().append(this.getPackageName()).append(".RNPushNotificationReceiveNotification").toString());
        p7.putBoolean("foreground", v1.booleanValue());
        p7.putBoolean("userInteraction", 0);
        v0_1.putExtra("notification", p7);
        this.sendBroadcast(v0_1);
        if (p7.getString("contentAvailable", "false").equalsIgnoreCase("true")) {
            android.util.Log.d("RNPushNotification", "Received a notification with remote fetch enabled");
            android.content.Intent v3_1 = new android.content.Intent(new StringBuilder().append(this.getPackageName()).append(".RNPushNotificationRemoteFetch").toString());
            v3_1.putExtra("notification", p7);
            this.sendBroadcast(v3_1);
        }
        if (!v1.booleanValue()) {
            new com.dieam.reactnativepushnotification.modules.RNPushNotificationHelper(this.getApplication()).sendNotification(p7);
        }
        return;
    }

Method android.content.Intent.<init>() not found.

[TAINT] String '.RNPushNotificationRemoteFetch' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V', '0', 'IPC_SINK']' [[('Lcom/dieam/reactnativepushnotification/modules/RNPushNotificationListenerService;', 'sendNotification', '(Landroid/os/Bundle;)V'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V')]]

Use of a string value .RNPushNotificationRemoteFetch to construct an Intent

Method com.dieam.reactnativepushnotification.modules.RNPushNotificationListenerService.sendNotification():


    private void sendNotification(android.os.Bundle p7)
    {
        if (p7.getString("id") == null) {
            p7.putString("id", String.valueOf(new java.util.Random(System.currentTimeMillis()).nextInt()));
        }
        Boolean v1 = Boolean.valueOf(this.isApplicationRunning());
        android.content.Intent v0_1 = new android.content.Intent(new StringBuilder().append(this.getPackageName()).append(".RNPushNotificationReceiveNotification").toString());
        p7.putBoolean("foreground", v1.booleanValue());
        p7.putBoolean("userInteraction", 0);
        v0_1.putExtra("notification", p7);
        this.sendBroadcast(v0_1);
        if (p7.getString("contentAvailable", "false").equalsIgnoreCase("true")) {
            android.util.Log.d("RNPushNotification", "Received a notification with remote fetch enabled");
            android.content.Intent v3_1 = new android.content.Intent(new StringBuilder().append(this.getPackageName()).append(".RNPushNotificationRemoteFetch").toString());
            v3_1.putExtra("notification", p7);
            this.sendBroadcast(v3_1);
        }
        if (!v1.booleanValue()) {
            new com.dieam.reactnativepushnotification.modules.RNPushNotificationHelper(this.getApplication()).sendNotification(p7);
        }
        return;
    }

Method android.content.Intent.<init>() not found.

[TAINT] String '.RNPushNotificationReceiveNotification' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V', '0', 'IPC_SINK']' [[('Lcom/dieam/reactnativepushnotification/modules/RNPushNotificationListenerService;', 'sendNotification', '(Landroid/os/Bundle;)V'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V')]]

Use of a string value .RNPushNotificationReceiveNotification to construct an Intent

Method com.dieam.reactnativepushnotification.modules.RNPushNotificationListenerService.sendNotification():


    private void sendNotification(android.os.Bundle p7)
    {
        if (p7.getString("id") == null) {
            p7.putString("id", String.valueOf(new java.util.Random(System.currentTimeMillis()).nextInt()));
        }
        Boolean v1 = Boolean.valueOf(this.isApplicationRunning());
        android.content.Intent v0_1 = new android.content.Intent(new StringBuilder().append(this.getPackageName()).append(".RNPushNotificationReceiveNotification").toString());
        p7.putBoolean("foreground", v1.booleanValue());
        p7.putBoolean("userInteraction", 0);
        v0_1.putExtra("notification", p7);
        this.sendBroadcast(v0_1);
        if (p7.getString("contentAvailable", "false").equalsIgnoreCase("true")) {
            android.util.Log.d("RNPushNotification", "Received a notification with remote fetch enabled");
            android.content.Intent v3_1 = new android.content.Intent(new StringBuilder().append(this.getPackageName()).append(".RNPushNotificationRemoteFetch").toString());
            v3_1.putExtra("notification", p7);
            this.sendBroadcast(v3_1);
        }
        if (!v1.booleanValue()) {
            new com.dieam.reactnativepushnotification.modules.RNPushNotificationHelper(this.getApplication()).sendNotification(p7);
        }
        return;
    }

Method android.content.Intent.<init>() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzg;', 'zzkf', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.zzg.zzkf():


    private void zzkf(String p5)
    {
        String v1_5 = new java.io.File(com.google.android.gms.common.util.zzx.getNoBackupFilesDir(this.zzagf), p5);
        try {
            if ((!v1_5.exists()) && ((v1_5.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzagf, this);
            }
        } catch (String v0_2) {
            if (!android.util.Log.isLoggable("InstanceID/Store", 3)) {
            } else {
                String v0_5 = String.valueOf(v0_2.getMessage());
                if (v0_5.length() == 0) {
                    String v0_7 = new String("Error creating file in no backup dir: ");
                    android.util.Log.d("InstanceID/Store", v0_7);
                } else {
                    v0_7 = "Error creating file in no backup dir: ".concat(v0_5);
                }
            }
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzg;', 'zzkf', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p4, String p5)
    {
        String v0_2;
        this.zzagf = p4;
        this.aaT = p4.getSharedPreferences(p5, 4);
        String v1 = String.valueOf(p5);
        String v0_0 = String.valueOf("-no-backup");
        if (v0_0.length() == 0) {
            v0_2 = new String(v1);
        } else {
            v0_2 = v1.concat(v0_0);
        }
        this.zzkf(v0_2);
        return;
    }

Method com.google.firebase.iid.zzg.zzkf():


    private void zzkf(String p5)
    {
        String v1_5 = new java.io.File(com.google.android.gms.common.util.zzx.getNoBackupFilesDir(this.zzagf), p5);
        try {
            if ((!v1_5.exists()) && ((v1_5.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzagf, this);
            }
        } catch (String v0_2) {
            if (!android.util.Log.isLoggable("InstanceID/Store", 3)) {
            } else {
                String v0_5 = String.valueOf(v0_2.getMessage());
                if (v0_5.length() == 0) {
                    String v0_7 = new String("Error creating file in no backup dir: ");
                    android.util.Log.d("InstanceID/Store", v0_7);
                } else {
                    v0_7 = "Error creating file in no backup dir: ".concat(v0_5);
                }
            }
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context;)V'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzg;', 'zzkf', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p2)
    {
        this(p2, "com.google.android.gms.appid");
        return;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p4, String p5)
    {
        String v0_2;
        this.zzagf = p4;
        this.aaT = p4.getSharedPreferences(p5, 4);
        String v1 = String.valueOf(p5);
        String v0_0 = String.valueOf("-no-backup");
        if (v0_0.length() == 0) {
            v0_2 = new String(v1);
        } else {
            v0_2 = v1.concat(v0_0);
        }
        this.zzkf(v0_2);
        return;
    }

Method com.google.firebase.iid.zzg.zzkf():


    private void zzkf(String p5)
    {
        String v1_5 = new java.io.File(com.google.android.gms.common.util.zzx.getNoBackupFilesDir(this.zzagf), p5);
        try {
            if ((!v1_5.exists()) && ((v1_5.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzagf, this);
            }
        } catch (String v0_2) {
            if (!android.util.Log.isLoggable("InstanceID/Store", 3)) {
            } else {
                String v0_5 = String.valueOf(v0_2.getMessage());
                if (v0_5.length() == 0) {
                    String v0_7 = new String("Error creating file in no backup dir: ");
                    android.util.Log.d("InstanceID/Store", v0_7);
                } else {
                    v0_7 = "Error creating file in no backup dir: ".concat(v0_5);
                }
            }
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.example.invalidpackage' ==>>> Sink '['Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzf;', 'zzs', '(Landroid/content/Intent;)V'), ('Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;')]]

Use of a string value com.google.example.invalidpackage to construct an Intent

Method com.google.firebase.iid.zzf.zzs():


    declared_synchronized void zzs(android.content.Intent p5)
    {
        try {
            if (this.Zq == null) {
                String v0_5 = new android.content.Intent();
                v0_5.setPackage("com.google.example.invalidpackage");
                this.Zq = android.app.PendingIntent.getBroadcast(this.zzagf, 0, v0_5, 0);
            }
        } catch (String v0_2) {
            throw v0_2;
        }
        p5.putExtra("app", this.Zq);
        return;
    }

Method android.content.Intent.setPackage() not found.

[TAINT] String 'google.messenger' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/content/Intent; Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value google.messenger to construct an Intent

Method com.google.firebase.iid.zzf.zzb():


    protected void zzb(android.content.Intent p7, String p8)
    {
        this.aaN = android.os.SystemClock.elapsedRealtime();
        p7.putExtra("kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        p7.putExtra("X-kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        String v0_4 = "com.google.android.gsf".equals(com.google.firebase.iid.zzf.aaG);
        if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
            String v2_9 = String.valueOf(p7.getExtras());
            android.util.Log.d("InstanceID/Rpc", new StringBuilder((String.valueOf(v2_9).length() + 8)).append("Sending ").append(v2_9).toString());
        }
        if (v0_4 == null) {
            p7.putExtra("google.messenger", this.Zu);
            if ((this.aaL != null) || (this.aaM != null)) {
                String v0_8 = android.os.Message.obtain();
                v0_8.obj = p7;
                try {
                    if (this.aaL == null) {
                        this.aaM.send(v0_8);
                        return;
                    } else {
                        this.aaL.send(v0_8);
                        return;
                    }
                } catch (String v0) {
                    if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
                        android.util.Log.d("InstanceID/Rpc", "Messenger failed, fallback to startService");
                    }
                }
            }
            this.zzagf.startService(p7);
        } else {
            this.zzagf.startService(p7);
        }
        return;
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzem', '(Landroid/content/Context;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '()Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '(Lcom/google/firebase/FirebaseApp;)Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Landroid/content/Context; Landroid/os/Bundle;)Lcom/google/firebase/iid/zzd;'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context;)V'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzg;', 'zzkf', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.FirebaseInstanceId.zzem():


    static String zzem(android.content.Context p1)
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance().bau.getOptions().getApplicationId();
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static com.google.firebase.iid.FirebaseInstanceId getInstance()
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance(com.google.firebase.FirebaseApp.getInstance());
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static declared_synchronized com.google.firebase.iid.FirebaseInstanceId getInstance(com.google.firebase.FirebaseApp p4)
    {
        try {
            com.google.firebase.iid.FirebaseInstanceId v0_6 = ((com.google.firebase.iid.FirebaseInstanceId) com.google.firebase.iid.FirebaseInstanceId.aap.get(p4.getOptions().getApplicationId()));
        } catch (com.google.firebase.iid.FirebaseInstanceId v0_7) {
            throw v0_7;
        }
        if (v0_6 == null) {
            java.util.Map v2_1 = com.google.firebase.iid.zzd.zzb(p4.getApplicationContext(), 0);
            if (com.google.firebase.iid.FirebaseInstanceId.bat == null) {
                com.google.firebase.iid.FirebaseInstanceId.bat = new com.google.firebase.iid.zze(v2_1.zzcwy());
            }
            v0_6 = new com.google.firebase.iid.FirebaseInstanceId(p4, v2_1);
            com.google.firebase.iid.FirebaseInstanceId.aap.put(p4.getOptions().getApplicationId(), v0_6);
        }
        return v0_6;
    }

Method com.google.firebase.iid.zzd.zzb():


    public static declared_synchronized com.google.firebase.iid.zzd zzb(android.content.Context p4, android.os.Bundle p5)
    {
        try {
            com.google.firebase.iid.zzd v0_13;
            if (p5 != null) {
                v0_13 = p5.getString("subtype");
            } else {
                v0_13 = "";
            }
        } catch (com.google.firebase.iid.zzd v0_12) {
            throw v0_12;
        }
        String v1;
        if (v0_13 != null) {
            v1 = v0_13;
        } else {
            v1 = "";
        }
        java.util.Map v3_0 = p4.getApplicationContext();
        if (com.google.firebase.iid.zzd.baF == null) {
            com.google.firebase.iid.zzd.baF = new com.google.firebase.iid.zzg(v3_0);
            com.google.firebase.iid.zzd.baG = new com.google.firebase.iid.zzf(v3_0);
        }
        com.google.firebase.iid.zzd.aav = Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(v3_0));
        com.google.firebase.iid.zzd v0_10 = ((com.google.firebase.iid.zzd) com.google.firebase.iid.zzd.aap.get(v1));
        if (v0_10 == null) {
            v0_10 = new com.google.firebase.iid.zzd(v3_0, v1, p5);
            com.google.firebase.iid.zzd.aap.put(v1, v0_10);
        }
        return v0_10;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p2)
    {
        this(p2, "com.google.android.gms.appid");
        return;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p4, String p5)
    {
        String v0_2;
        this.zzagf = p4;
        this.aaT = p4.getSharedPreferences(p5, 4);
        String v1 = String.valueOf(p5);
        String v0_0 = String.valueOf("-no-backup");
        if (v0_0.length() == 0) {
            v0_2 = new String(v1);
        } else {
            v0_2 = v1.concat(v0_0);
        }
        this.zzkf(v0_2);
        return;
    }

Method com.google.firebase.iid.zzg.zzkf():


    private void zzkf(String p5)
    {
        String v1_5 = new java.io.File(com.google.android.gms.common.util.zzx.getNoBackupFilesDir(this.zzagf), p5);
        try {
            if ((!v1_5.exists()) && ((v1_5.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzagf, this);
            }
        } catch (String v0_2) {
            if (!android.util.Log.isLoggable("InstanceID/Store", 3)) {
            } else {
                String v0_5 = String.valueOf(v0_2.getMessage());
                if (v0_5.length() == 0) {
                    String v0_7 = new String("Error creating file in no backup dir: ");
                    android.util.Log.d("InstanceID/Store", v0_7);
                } else {
                    v0_7 = "Error creating file in no backup dir: ".concat(v0_5);
                }
            }
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.example.invalidpackage' ==>>> Sink '['Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzs', '(Landroid/content/Intent;)V'), ('Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;')]]

Use of a string value com.google.example.invalidpackage to construct an Intent

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzs():


    declared_synchronized void zzs(android.content.Intent p5)
    {
        try {
            if (this.Zq == null) {
                String v0_5 = new android.content.Intent();
                v0_5.setPackage("com.google.example.invalidpackage");
                this.Zq = android.app.PendingIntent.getBroadcast(this.zzagf, 0, v0_5, 0);
            }
        } catch (String v0_2) {
            throw v0_2;
        }
        p5.putExtra("app", this.Zq);
        return;
    }

Method android.content.Intent.setPackage() not found.

[TAINT] String 'google.messenger' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/content/Intent; Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value google.messenger to construct an Intent

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzb():


    protected void zzb(android.content.Intent p7, String p8)
    {
        this.aaN = android.os.SystemClock.elapsedRealtime();
        p7.putExtra("kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        p7.putExtra("X-kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        String v0_4 = "com.google.android.gsf".equals(com.google.firebase.iid.zzf.aaG);
        if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
            String v2_9 = String.valueOf(p7.getExtras());
            android.util.Log.d("InstanceID/Rpc", new StringBuilder((String.valueOf(v2_9).length() + 8)).append("Sending ").append(v2_9).toString());
        }
        if (v0_4 == null) {
            p7.putExtra("google.messenger", this.Zu);
            if ((this.aaL != null) || (this.aaM != null)) {
                String v0_8 = android.os.Message.obtain();
                v0_8.obj = p7;
                try {
                    if (this.aaL == null) {
                        this.aaM.send(v0_8);
                        return;
                    } else {
                        this.aaL.send(v0_8);
                        return;
                    }
                } catch (String v0) {
                    if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
                        android.util.Log.d("InstanceID/Rpc", "Messenger failed, fallback to startService");
                    }
                }
            }
            this.zzagf.startService(p7);
        } else {
            this.zzagf.startService(p7);
        }
        return;
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzem', '(Landroid/content/Context;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '()Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '(Lcom/google/firebase/FirebaseApp;)Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Landroid/content/Context; Landroid/os/Bundle;)Lcom/google/firebase/iid/zzd;'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context;)V'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzg;', 'zzkf', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.FirebaseInstanceId.zzem():


    static String zzem(android.content.Context p1)
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance().bau.getOptions().getApplicationId();
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static com.google.firebase.iid.FirebaseInstanceId getInstance()
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance(com.google.firebase.FirebaseApp.getInstance());
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static declared_synchronized com.google.firebase.iid.FirebaseInstanceId getInstance(com.google.firebase.FirebaseApp p4)
    {
        try {
            com.google.firebase.iid.FirebaseInstanceId v0_6 = ((com.google.firebase.iid.FirebaseInstanceId) com.google.firebase.iid.FirebaseInstanceId.aap.get(p4.getOptions().getApplicationId()));
        } catch (com.google.firebase.iid.FirebaseInstanceId v0_7) {
            throw v0_7;
        }
        if (v0_6 == null) {
            java.util.Map v2_1 = com.google.firebase.iid.zzd.zzb(p4.getApplicationContext(), 0);
            if (com.google.firebase.iid.FirebaseInstanceId.bat == null) {
                com.google.firebase.iid.FirebaseInstanceId.bat = new com.google.firebase.iid.zze(v2_1.zzcwy());
            }
            v0_6 = new com.google.firebase.iid.FirebaseInstanceId(p4, v2_1);
            com.google.firebase.iid.FirebaseInstanceId.aap.put(p4.getOptions().getApplicationId(), v0_6);
        }
        return v0_6;
    }

Method com.google.firebase.iid.zzd.zzb():


    public static declared_synchronized com.google.firebase.iid.zzd zzb(android.content.Context p4, android.os.Bundle p5)
    {
        try {
            com.google.firebase.iid.zzd v0_13;
            if (p5 != null) {
                v0_13 = p5.getString("subtype");
            } else {
                v0_13 = "";
            }
        } catch (com.google.firebase.iid.zzd v0_12) {
            throw v0_12;
        }
        String v1;
        if (v0_13 != null) {
            v1 = v0_13;
        } else {
            v1 = "";
        }
        java.util.Map v3_0 = p4.getApplicationContext();
        if (com.google.firebase.iid.zzd.baF == null) {
            com.google.firebase.iid.zzd.baF = new com.google.firebase.iid.zzg(v3_0);
            com.google.firebase.iid.zzd.baG = new com.google.firebase.iid.zzf(v3_0);
        }
        com.google.firebase.iid.zzd.aav = Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(v3_0));
        com.google.firebase.iid.zzd v0_10 = ((com.google.firebase.iid.zzd) com.google.firebase.iid.zzd.aap.get(v1));
        if (v0_10 == null) {
            v0_10 = new com.google.firebase.iid.zzd(v3_0, v1, p5);
            com.google.firebase.iid.zzd.aap.put(v1, v0_10);
        }
        return v0_10;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p2)
    {
        this(p2, "com.google.android.gms.appid");
        return;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p4, String p5)
    {
        String v0_2;
        this.zzagf = p4;
        this.aaT = p4.getSharedPreferences(p5, 4);
        String v1 = String.valueOf(p5);
        String v0_0 = String.valueOf("-no-backup");
        if (v0_0.length() == 0) {
            v0_2 = new String(v1);
        } else {
            v0_2 = v1.concat(v0_0);
        }
        this.zzkf(v0_2);
        return;
    }

Method com.google.firebase.iid.zzg.zzkf():


    private void zzkf(String p5)
    {
        String v1_5 = new java.io.File(com.google.android.gms.common.util.zzx.getNoBackupFilesDir(this.zzagf), p5);
        try {
            if ((!v1_5.exists()) && ((v1_5.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzagf, this);
            }
        } catch (String v0_2) {
            if (!android.util.Log.isLoggable("InstanceID/Store", 3)) {
            } else {
                String v0_5 = String.valueOf(v0_2.getMessage());
                if (v0_5.length() == 0) {
                    String v0_7 = new String("Error creating file in no backup dir: ");
                    android.util.Log.d("InstanceID/Store", v0_7);
                } else {
                    v0_7 = "Error creating file in no backup dir: ".concat(v0_5);
                }
            }
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'google.messenger' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/content/Intent; Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value google.messenger to construct an Intent

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzb():


    protected void zzb(android.content.Intent p7, String p8)
    {
        this.aaN = android.os.SystemClock.elapsedRealtime();
        p7.putExtra("kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        p7.putExtra("X-kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        String v0_4 = "com.google.android.gsf".equals(com.google.firebase.iid.zzf.aaG);
        if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
            String v2_9 = String.valueOf(p7.getExtras());
            android.util.Log.d("InstanceID/Rpc", new StringBuilder((String.valueOf(v2_9).length() + 8)).append("Sending ").append(v2_9).toString());
        }
        if (v0_4 == null) {
            p7.putExtra("google.messenger", this.Zu);
            if ((this.aaL != null) || (this.aaM != null)) {
                String v0_8 = android.os.Message.obtain();
                v0_8.obj = p7;
                try {
                    if (this.aaL == null) {
                        this.aaM.send(v0_8);
                        return;
                    } else {
                        this.aaL.send(v0_8);
                        return;
                    }
                } catch (String v0) {
                    if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
                        android.util.Log.d("InstanceID/Rpc", "Messenger failed, fallback to startService");
                    }
                }
            }
            this.zzagf.startService(p7);
        } else {
            this.zzagf.startService(p7);
        }
        return;
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'com.google.example.invalidpackage' ==>>> Sink '['Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzs', '(Landroid/content/Intent;)V'), ('Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;')]]

Use of a string value com.google.example.invalidpackage to construct an Intent

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzs():


    declared_synchronized void zzs(android.content.Intent p5)
    {
        try {
            if (this.Zq == null) {
                String v0_5 = new android.content.Intent();
                v0_5.setPackage("com.google.example.invalidpackage");
                this.Zq = android.app.PendingIntent.getBroadcast(this.zzagf, 0, v0_5, 0);
            }
        } catch (String v0_2) {
            throw v0_2;
        }
        p5.putExtra("app", this.Zq);
        return;
    }

Method android.content.Intent.setPackage() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzem', '(Landroid/content/Context;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '()Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '(Lcom/google/firebase/FirebaseApp;)Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Landroid/content/Context; Landroid/os/Bundle;)Lcom/google/firebase/iid/zzd;'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context;)V'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzg;', 'zzkf', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.FirebaseInstanceId.zzem():


    static String zzem(android.content.Context p1)
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance().bau.getOptions().getApplicationId();
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static com.google.firebase.iid.FirebaseInstanceId getInstance()
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance(com.google.firebase.FirebaseApp.getInstance());
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static declared_synchronized com.google.firebase.iid.FirebaseInstanceId getInstance(com.google.firebase.FirebaseApp p4)
    {
        try {
            com.google.firebase.iid.FirebaseInstanceId v0_6 = ((com.google.firebase.iid.FirebaseInstanceId) com.google.firebase.iid.FirebaseInstanceId.aap.get(p4.getOptions().getApplicationId()));
        } catch (com.google.firebase.iid.FirebaseInstanceId v0_7) {
            throw v0_7;
        }
        if (v0_6 == null) {
            java.util.Map v2_1 = com.google.firebase.iid.zzd.zzb(p4.getApplicationContext(), 0);
            if (com.google.firebase.iid.FirebaseInstanceId.bat == null) {
                com.google.firebase.iid.FirebaseInstanceId.bat = new com.google.firebase.iid.zze(v2_1.zzcwy());
            }
            v0_6 = new com.google.firebase.iid.FirebaseInstanceId(p4, v2_1);
            com.google.firebase.iid.FirebaseInstanceId.aap.put(p4.getOptions().getApplicationId(), v0_6);
        }
        return v0_6;
    }

Method com.google.firebase.iid.zzd.zzb():


    public static declared_synchronized com.google.firebase.iid.zzd zzb(android.content.Context p4, android.os.Bundle p5)
    {
        try {
            com.google.firebase.iid.zzd v0_13;
            if (p5 != null) {
                v0_13 = p5.getString("subtype");
            } else {
                v0_13 = "";
            }
        } catch (com.google.firebase.iid.zzd v0_12) {
            throw v0_12;
        }
        String v1;
        if (v0_13 != null) {
            v1 = v0_13;
        } else {
            v1 = "";
        }
        java.util.Map v3_0 = p4.getApplicationContext();
        if (com.google.firebase.iid.zzd.baF == null) {
            com.google.firebase.iid.zzd.baF = new com.google.firebase.iid.zzg(v3_0);
            com.google.firebase.iid.zzd.baG = new com.google.firebase.iid.zzf(v3_0);
        }
        com.google.firebase.iid.zzd.aav = Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(v3_0));
        com.google.firebase.iid.zzd v0_10 = ((com.google.firebase.iid.zzd) com.google.firebase.iid.zzd.aap.get(v1));
        if (v0_10 == null) {
            v0_10 = new com.google.firebase.iid.zzd(v3_0, v1, p5);
            com.google.firebase.iid.zzd.aap.put(v1, v0_10);
        }
        return v0_10;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p2)
    {
        this(p2, "com.google.android.gms.appid");
        return;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p4, String p5)
    {
        String v0_2;
        this.zzagf = p4;
        this.aaT = p4.getSharedPreferences(p5, 4);
        String v1 = String.valueOf(p5);
        String v0_0 = String.valueOf("-no-backup");
        if (v0_0.length() == 0) {
            v0_2 = new String(v1);
        } else {
            v0_2 = v1.concat(v0_0);
        }
        this.zzkf(v0_2);
        return;
    }

Method com.google.firebase.iid.zzg.zzkf():


    private void zzkf(String p5)
    {
        String v1_5 = new java.io.File(com.google.android.gms.common.util.zzx.getNoBackupFilesDir(this.zzagf), p5);
        try {
            if ((!v1_5.exists()) && ((v1_5.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzagf, this);
            }
        } catch (String v0_2) {
            if (!android.util.Log.isLoggable("InstanceID/Store", 3)) {
            } else {
                String v0_5 = String.valueOf(v0_2.getMessage());
                if (v0_5.length() == 0) {
                    String v0_7 = new String("Error creating file in no backup dir: ");
                    android.util.Log.d("InstanceID/Store", v0_7);
                } else {
                    v0_7 = "Error creating file in no backup dir: ".concat(v0_5);
                }
            }
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'google.messenger' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/content/Intent; Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value google.messenger to construct an Intent

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzb():


    protected void zzb(android.content.Intent p7, String p8)
    {
        this.aaN = android.os.SystemClock.elapsedRealtime();
        p7.putExtra("kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        p7.putExtra("X-kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        String v0_4 = "com.google.android.gsf".equals(com.google.firebase.iid.zzf.aaG);
        if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
            String v2_9 = String.valueOf(p7.getExtras());
            android.util.Log.d("InstanceID/Rpc", new StringBuilder((String.valueOf(v2_9).length() + 8)).append("Sending ").append(v2_9).toString());
        }
        if (v0_4 == null) {
            p7.putExtra("google.messenger", this.Zu);
            if ((this.aaL != null) || (this.aaM != null)) {
                String v0_8 = android.os.Message.obtain();
                v0_8.obj = p7;
                try {
                    if (this.aaL == null) {
                        this.aaM.send(v0_8);
                        return;
                    } else {
                        this.aaL.send(v0_8);
                        return;
                    }
                } catch (String v0) {
                    if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
                        android.util.Log.d("InstanceID/Rpc", "Messenger failed, fallback to startService");
                    }
                }
            }
            this.zzagf.startService(p7);
        } else {
            this.zzagf.startService(p7);
        }
        return;
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'com.google.example.invalidpackage' ==>>> Sink '['Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzs', '(Landroid/content/Intent;)V'), ('Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;')]]

Use of a string value com.google.example.invalidpackage to construct an Intent

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzs():


    declared_synchronized void zzs(android.content.Intent p5)
    {
        try {
            if (this.Zq == null) {
                String v0_5 = new android.content.Intent();
                v0_5.setPackage("com.google.example.invalidpackage");
                this.Zq = android.app.PendingIntent.getBroadcast(this.zzagf, 0, v0_5, 0);
            }
        } catch (String v0_2) {
            throw v0_2;
        }
        p5.putExtra("app", this.Zq);
        return;
    }

Method android.content.Intent.setPackage() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzd;', 'zzc', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzem', '(Landroid/content/Context;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '()Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '(Lcom/google/firebase/FirebaseApp;)Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Landroid/content/Context; Landroid/os/Bundle;)Lcom/google/firebase/iid/zzd;'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context;)V'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzg;', 'zzkf', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.zzd.zzc():


    public String zzc(String p3, String p4, android.os.Bundle p5)
    {
        if (p4 != null) {
            p5.putString("scope", p4);
        }
        String v0_1;
        p5.putString("sender", p3);
        if (!"".equals(this.aat)) {
            v0_1 = this.aat;
        } else {
            v0_1 = p3;
        }
        if (!p5.containsKey("legacy.register")) {
            p5.putString("subscription", p3);
            p5.putString("subtype", v0_1);
            p5.putString("X-subscription", p3);
            p5.putString("X-subtype", v0_1);
        }
        return com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p5, this.zzblw()));
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.FirebaseInstanceId.zzem():


    static String zzem(android.content.Context p1)
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance().bau.getOptions().getApplicationId();
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static com.google.firebase.iid.FirebaseInstanceId getInstance()
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance(com.google.firebase.FirebaseApp.getInstance());
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static declared_synchronized com.google.firebase.iid.FirebaseInstanceId getInstance(com.google.firebase.FirebaseApp p4)
    {
        try {
            com.google.firebase.iid.FirebaseInstanceId v0_6 = ((com.google.firebase.iid.FirebaseInstanceId) com.google.firebase.iid.FirebaseInstanceId.aap.get(p4.getOptions().getApplicationId()));
        } catch (com.google.firebase.iid.FirebaseInstanceId v0_7) {
            throw v0_7;
        }
        if (v0_6 == null) {
            java.util.Map v2_1 = com.google.firebase.iid.zzd.zzb(p4.getApplicationContext(), 0);
            if (com.google.firebase.iid.FirebaseInstanceId.bat == null) {
                com.google.firebase.iid.FirebaseInstanceId.bat = new com.google.firebase.iid.zze(v2_1.zzcwy());
            }
            v0_6 = new com.google.firebase.iid.FirebaseInstanceId(p4, v2_1);
            com.google.firebase.iid.FirebaseInstanceId.aap.put(p4.getOptions().getApplicationId(), v0_6);
        }
        return v0_6;
    }

Method com.google.firebase.iid.zzd.zzb():


    public static declared_synchronized com.google.firebase.iid.zzd zzb(android.content.Context p4, android.os.Bundle p5)
    {
        try {
            com.google.firebase.iid.zzd v0_13;
            if (p5 != null) {
                v0_13 = p5.getString("subtype");
            } else {
                v0_13 = "";
            }
        } catch (com.google.firebase.iid.zzd v0_12) {
            throw v0_12;
        }
        String v1;
        if (v0_13 != null) {
            v1 = v0_13;
        } else {
            v1 = "";
        }
        java.util.Map v3_0 = p4.getApplicationContext();
        if (com.google.firebase.iid.zzd.baF == null) {
            com.google.firebase.iid.zzd.baF = new com.google.firebase.iid.zzg(v3_0);
            com.google.firebase.iid.zzd.baG = new com.google.firebase.iid.zzf(v3_0);
        }
        com.google.firebase.iid.zzd.aav = Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(v3_0));
        com.google.firebase.iid.zzd v0_10 = ((com.google.firebase.iid.zzd) com.google.firebase.iid.zzd.aap.get(v1));
        if (v0_10 == null) {
            v0_10 = new com.google.firebase.iid.zzd(v3_0, v1, p5);
            com.google.firebase.iid.zzd.aap.put(v1, v0_10);
        }
        return v0_10;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p2)
    {
        this(p2, "com.google.android.gms.appid");
        return;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p4, String p5)
    {
        String v0_2;
        this.zzagf = p4;
        this.aaT = p4.getSharedPreferences(p5, 4);
        String v1 = String.valueOf(p5);
        String v0_0 = String.valueOf("-no-backup");
        if (v0_0.length() == 0) {
            v0_2 = new String(v1);
        } else {
            v0_2 = v1.concat(v0_0);
        }
        this.zzkf(v0_2);
        return;
    }

Method com.google.firebase.iid.zzg.zzkf():


    private void zzkf(String p5)
    {
        String v1_5 = new java.io.File(com.google.android.gms.common.util.zzx.getNoBackupFilesDir(this.zzagf), p5);
        try {
            if ((!v1_5.exists()) && ((v1_5.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzagf, this);
            }
        } catch (String v0_2) {
            if (!android.util.Log.isLoggable("InstanceID/Store", 3)) {
            } else {
                String v0_5 = String.valueOf(v0_2.getMessage());
                if (v0_5.length() == 0) {
                    String v0_7 = new String("Error creating file in no backup dir: ");
                    android.util.Log.d("InstanceID/Store", v0_7);
                } else {
                    v0_7 = "Error creating file in no backup dir: ".concat(v0_5);
                }
            }
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'google.messenger' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzd;', 'zzc', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/content/Intent; Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value google.messenger to construct an Intent

Method com.google.firebase.iid.zzd.zzc():


    public String zzc(String p3, String p4, android.os.Bundle p5)
    {
        if (p4 != null) {
            p5.putString("scope", p4);
        }
        String v0_1;
        p5.putString("sender", p3);
        if (!"".equals(this.aat)) {
            v0_1 = this.aat;
        } else {
            v0_1 = p3;
        }
        if (!p5.containsKey("legacy.register")) {
            p5.putString("subscription", p3);
            p5.putString("subtype", v0_1);
            p5.putString("X-subscription", p3);
            p5.putString("X-subtype", v0_1);
        }
        return com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p5, this.zzblw()));
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzb():


    protected void zzb(android.content.Intent p7, String p8)
    {
        this.aaN = android.os.SystemClock.elapsedRealtime();
        p7.putExtra("kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        p7.putExtra("X-kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        String v0_4 = "com.google.android.gsf".equals(com.google.firebase.iid.zzf.aaG);
        if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
            String v2_9 = String.valueOf(p7.getExtras());
            android.util.Log.d("InstanceID/Rpc", new StringBuilder((String.valueOf(v2_9).length() + 8)).append("Sending ").append(v2_9).toString());
        }
        if (v0_4 == null) {
            p7.putExtra("google.messenger", this.Zu);
            if ((this.aaL != null) || (this.aaM != null)) {
                String v0_8 = android.os.Message.obtain();
                v0_8.obj = p7;
                try {
                    if (this.aaL == null) {
                        this.aaM.send(v0_8);
                        return;
                    } else {
                        this.aaL.send(v0_8);
                        return;
                    }
                } catch (String v0) {
                    if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
                        android.util.Log.d("InstanceID/Rpc", "Messenger failed, fallback to startService");
                    }
                }
            }
            this.zzagf.startService(p7);
        } else {
            this.zzagf.startService(p7);
        }
        return;
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'com.google.example.invalidpackage' ==>>> Sink '['Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzd;', 'zzc', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzs', '(Landroid/content/Intent;)V'), ('Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;')]]

Use of a string value com.google.example.invalidpackage to construct an Intent

Method com.google.firebase.iid.zzd.zzc():


    public String zzc(String p3, String p4, android.os.Bundle p5)
    {
        if (p4 != null) {
            p5.putString("scope", p4);
        }
        String v0_1;
        p5.putString("sender", p3);
        if (!"".equals(this.aat)) {
            v0_1 = this.aat;
        } else {
            v0_1 = p3;
        }
        if (!p5.containsKey("legacy.register")) {
            p5.putString("subscription", p3);
            p5.putString("subtype", v0_1);
            p5.putString("X-subscription", p3);
            p5.putString("X-subtype", v0_1);
        }
        return com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p5, this.zzblw()));
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzs():


    declared_synchronized void zzs(android.content.Intent p5)
    {
        try {
            if (this.Zq == null) {
                String v0_5 = new android.content.Intent();
                v0_5.setPackage("com.google.example.invalidpackage");
                this.Zq = android.app.PendingIntent.getBroadcast(this.zzagf, 0, v0_5, 0);
            }
        } catch (String v0_2) {
            throw v0_2;
        }
        p5.putExtra("app", this.Zq);
        return;
    }

Method android.content.Intent.setPackage() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzd;', 'zzb', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)V'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzem', '(Landroid/content/Context;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '()Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '(Lcom/google/firebase/FirebaseApp;)Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Landroid/content/Context; Landroid/os/Bundle;)Lcom/google/firebase/iid/zzd;'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context;)V'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzg;', 'zzkf', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.zzd.zzb():


    public void zzb(String p4, String p5, android.os.Bundle p6)
    {
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            com.google.firebase.iid.zzd.baF.zzj(this.aat, p4, p5);
            if (p6 == null) {
                p6 = new android.os.Bundle();
            }
            p6.putString("sender", p4);
            if (p5 != null) {
                p6.putString("scope", p5);
            }
            android.content.Intent v0_8;
            p6.putString("subscription", p4);
            p6.putString("delete", "1");
            p6.putString("X-delete", "1");
            if (!"".equals(this.aat)) {
                v0_8 = this.aat;
            } else {
                v0_8 = p4;
            }
            p6.putString("subtype", v0_8);
            if (!"".equals(this.aat)) {
                p4 = this.aat;
            }
            p6.putString("X-subtype", p4);
            com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p6, this.zzblw()));
            return;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.FirebaseInstanceId.zzem():


    static String zzem(android.content.Context p1)
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance().bau.getOptions().getApplicationId();
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static com.google.firebase.iid.FirebaseInstanceId getInstance()
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance(com.google.firebase.FirebaseApp.getInstance());
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static declared_synchronized com.google.firebase.iid.FirebaseInstanceId getInstance(com.google.firebase.FirebaseApp p4)
    {
        try {
            com.google.firebase.iid.FirebaseInstanceId v0_6 = ((com.google.firebase.iid.FirebaseInstanceId) com.google.firebase.iid.FirebaseInstanceId.aap.get(p4.getOptions().getApplicationId()));
        } catch (com.google.firebase.iid.FirebaseInstanceId v0_7) {
            throw v0_7;
        }
        if (v0_6 == null) {
            java.util.Map v2_1 = com.google.firebase.iid.zzd.zzb(p4.getApplicationContext(), 0);
            if (com.google.firebase.iid.FirebaseInstanceId.bat == null) {
                com.google.firebase.iid.FirebaseInstanceId.bat = new com.google.firebase.iid.zze(v2_1.zzcwy());
            }
            v0_6 = new com.google.firebase.iid.FirebaseInstanceId(p4, v2_1);
            com.google.firebase.iid.FirebaseInstanceId.aap.put(p4.getOptions().getApplicationId(), v0_6);
        }
        return v0_6;
    }

Method com.google.firebase.iid.zzd.zzb():


    public static declared_synchronized com.google.firebase.iid.zzd zzb(android.content.Context p4, android.os.Bundle p5)
    {
        try {
            com.google.firebase.iid.zzd v0_13;
            if (p5 != null) {
                v0_13 = p5.getString("subtype");
            } else {
                v0_13 = "";
            }
        } catch (com.google.firebase.iid.zzd v0_12) {
            throw v0_12;
        }
        String v1;
        if (v0_13 != null) {
            v1 = v0_13;
        } else {
            v1 = "";
        }
        java.util.Map v3_0 = p4.getApplicationContext();
        if (com.google.firebase.iid.zzd.baF == null) {
            com.google.firebase.iid.zzd.baF = new com.google.firebase.iid.zzg(v3_0);
            com.google.firebase.iid.zzd.baG = new com.google.firebase.iid.zzf(v3_0);
        }
        com.google.firebase.iid.zzd.aav = Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(v3_0));
        com.google.firebase.iid.zzd v0_10 = ((com.google.firebase.iid.zzd) com.google.firebase.iid.zzd.aap.get(v1));
        if (v0_10 == null) {
            v0_10 = new com.google.firebase.iid.zzd(v3_0, v1, p5);
            com.google.firebase.iid.zzd.aap.put(v1, v0_10);
        }
        return v0_10;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p2)
    {
        this(p2, "com.google.android.gms.appid");
        return;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p4, String p5)
    {
        String v0_2;
        this.zzagf = p4;
        this.aaT = p4.getSharedPreferences(p5, 4);
        String v1 = String.valueOf(p5);
        String v0_0 = String.valueOf("-no-backup");
        if (v0_0.length() == 0) {
            v0_2 = new String(v1);
        } else {
            v0_2 = v1.concat(v0_0);
        }
        this.zzkf(v0_2);
        return;
    }

Method com.google.firebase.iid.zzg.zzkf():


    private void zzkf(String p5)
    {
        String v1_5 = new java.io.File(com.google.android.gms.common.util.zzx.getNoBackupFilesDir(this.zzagf), p5);
        try {
            if ((!v1_5.exists()) && ((v1_5.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzagf, this);
            }
        } catch (String v0_2) {
            if (!android.util.Log.isLoggable("InstanceID/Store", 3)) {
            } else {
                String v0_5 = String.valueOf(v0_2.getMessage());
                if (v0_5.length() == 0) {
                    String v0_7 = new String("Error creating file in no backup dir: ");
                    android.util.Log.d("InstanceID/Store", v0_7);
                } else {
                    v0_7 = "Error creating file in no backup dir: ".concat(v0_5);
                }
            }
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'google.messenger' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzd;', 'zzb', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)V'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/content/Intent; Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value google.messenger to construct an Intent

Method com.google.firebase.iid.zzd.zzb():


    public void zzb(String p4, String p5, android.os.Bundle p6)
    {
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            com.google.firebase.iid.zzd.baF.zzj(this.aat, p4, p5);
            if (p6 == null) {
                p6 = new android.os.Bundle();
            }
            p6.putString("sender", p4);
            if (p5 != null) {
                p6.putString("scope", p5);
            }
            android.content.Intent v0_8;
            p6.putString("subscription", p4);
            p6.putString("delete", "1");
            p6.putString("X-delete", "1");
            if (!"".equals(this.aat)) {
                v0_8 = this.aat;
            } else {
                v0_8 = p4;
            }
            p6.putString("subtype", v0_8);
            if (!"".equals(this.aat)) {
                p4 = this.aat;
            }
            p6.putString("X-subtype", p4);
            com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p6, this.zzblw()));
            return;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzb():


    protected void zzb(android.content.Intent p7, String p8)
    {
        this.aaN = android.os.SystemClock.elapsedRealtime();
        p7.putExtra("kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        p7.putExtra("X-kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        String v0_4 = "com.google.android.gsf".equals(com.google.firebase.iid.zzf.aaG);
        if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
            String v2_9 = String.valueOf(p7.getExtras());
            android.util.Log.d("InstanceID/Rpc", new StringBuilder((String.valueOf(v2_9).length() + 8)).append("Sending ").append(v2_9).toString());
        }
        if (v0_4 == null) {
            p7.putExtra("google.messenger", this.Zu);
            if ((this.aaL != null) || (this.aaM != null)) {
                String v0_8 = android.os.Message.obtain();
                v0_8.obj = p7;
                try {
                    if (this.aaL == null) {
                        this.aaM.send(v0_8);
                        return;
                    } else {
                        this.aaL.send(v0_8);
                        return;
                    }
                } catch (String v0) {
                    if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
                        android.util.Log.d("InstanceID/Rpc", "Messenger failed, fallback to startService");
                    }
                }
            }
            this.zzagf.startService(p7);
        } else {
            this.zzagf.startService(p7);
        }
        return;
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'com.google.example.invalidpackage' ==>>> Sink '['Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzd;', 'zzb', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)V'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzs', '(Landroid/content/Intent;)V'), ('Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;')]]

Use of a string value com.google.example.invalidpackage to construct an Intent

Method com.google.firebase.iid.zzd.zzb():


    public void zzb(String p4, String p5, android.os.Bundle p6)
    {
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            com.google.firebase.iid.zzd.baF.zzj(this.aat, p4, p5);
            if (p6 == null) {
                p6 = new android.os.Bundle();
            }
            p6.putString("sender", p4);
            if (p5 != null) {
                p6.putString("scope", p5);
            }
            android.content.Intent v0_8;
            p6.putString("subscription", p4);
            p6.putString("delete", "1");
            p6.putString("X-delete", "1");
            if (!"".equals(this.aat)) {
                v0_8 = this.aat;
            } else {
                v0_8 = p4;
            }
            p6.putString("subtype", v0_8);
            if (!"".equals(this.aat)) {
                p4 = this.aat;
            }
            p6.putString("X-subtype", p4);
            com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p6, this.zzblw()));
            return;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzs():


    declared_synchronized void zzs(android.content.Intent p5)
    {
        try {
            if (this.Zq == null) {
                String v0_5 = new android.content.Intent();
                v0_5.setPackage("com.google.example.invalidpackage");
                this.Zq = android.app.PendingIntent.getBroadcast(this.zzagf, 0, v0_5, 0);
            }
        } catch (String v0_2) {
            throw v0_2;
        }
        p5.putExtra("app", this.Zq);
        return;
    }

Method android.content.Intent.setPackage() not found.

[TAINT] String 'com.google.example.invalidpackage' ==>>> Sink '['Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzd;', 'getToken', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzd;', 'zzc', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzs', '(Landroid/content/Intent;)V'), ('Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;')]]

Use of a string value com.google.example.invalidpackage to construct an Intent

Method com.google.firebase.iid.zzd.getToken():


    public String getToken(String p7, String p8, android.os.Bundle p9)
    {
        String v1_0 = 0;
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            String v4;
            com.google.firebase.iid.zzg v0_1 = 1;
            if (!this.zzbma()) {
                v4 = com.google.firebase.iid.zzd.baF.zzi(this.aat, p7, p8);
            } else {
                v4 = 0;
            }
            if (v4 == null) {
                if (p9 == null) {
                    p9 = new android.os.Bundle();
                }
                if (p9.getString("ttl") != null) {
                    v0_1 = 0;
                }
                if (!"jwt".equals(p9.getString("type"))) {
                    v1_0 = v0_1;
                }
                v4 = this.zzc(p7, p8, p9);
                if ((v4 != null) && (v1_0 != null)) {
                    com.google.firebase.iid.zzd.baF.zza(this.aat, p7, p8, v4, com.google.firebase.iid.zzd.aav);
                }
            }
            return v4;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzd.zzc():


    public String zzc(String p3, String p4, android.os.Bundle p5)
    {
        if (p4 != null) {
            p5.putString("scope", p4);
        }
        String v0_1;
        p5.putString("sender", p3);
        if (!"".equals(this.aat)) {
            v0_1 = this.aat;
        } else {
            v0_1 = p3;
        }
        if (!p5.containsKey("legacy.register")) {
            p5.putString("subscription", p3);
            p5.putString("subtype", v0_1);
            p5.putString("X-subscription", p3);
            p5.putString("X-subtype", v0_1);
        }
        return com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p5, this.zzblw()));
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzs():


    declared_synchronized void zzs(android.content.Intent p5)
    {
        try {
            if (this.Zq == null) {
                String v0_5 = new android.content.Intent();
                v0_5.setPackage("com.google.example.invalidpackage");
                this.Zq = android.app.PendingIntent.getBroadcast(this.zzagf, 0, v0_5, 0);
            }
        } catch (String v0_2) {
            throw v0_2;
        }
        p5.putExtra("app", this.Zq);
        return;
    }

Method android.content.Intent.setPackage() not found.

[TAINT] String 'google.messenger' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzd;', 'getToken', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzd;', 'zzc', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/content/Intent; Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value google.messenger to construct an Intent

Method com.google.firebase.iid.zzd.getToken():


    public String getToken(String p7, String p8, android.os.Bundle p9)
    {
        String v1_0 = 0;
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            String v4;
            com.google.firebase.iid.zzg v0_1 = 1;
            if (!this.zzbma()) {
                v4 = com.google.firebase.iid.zzd.baF.zzi(this.aat, p7, p8);
            } else {
                v4 = 0;
            }
            if (v4 == null) {
                if (p9 == null) {
                    p9 = new android.os.Bundle();
                }
                if (p9.getString("ttl") != null) {
                    v0_1 = 0;
                }
                if (!"jwt".equals(p9.getString("type"))) {
                    v1_0 = v0_1;
                }
                v4 = this.zzc(p7, p8, p9);
                if ((v4 != null) && (v1_0 != null)) {
                    com.google.firebase.iid.zzd.baF.zza(this.aat, p7, p8, v4, com.google.firebase.iid.zzd.aav);
                }
            }
            return v4;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzd.zzc():


    public String zzc(String p3, String p4, android.os.Bundle p5)
    {
        if (p4 != null) {
            p5.putString("scope", p4);
        }
        String v0_1;
        p5.putString("sender", p3);
        if (!"".equals(this.aat)) {
            v0_1 = this.aat;
        } else {
            v0_1 = p3;
        }
        if (!p5.containsKey("legacy.register")) {
            p5.putString("subscription", p3);
            p5.putString("subtype", v0_1);
            p5.putString("X-subscription", p3);
            p5.putString("X-subtype", v0_1);
        }
        return com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p5, this.zzblw()));
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzb():


    protected void zzb(android.content.Intent p7, String p8)
    {
        this.aaN = android.os.SystemClock.elapsedRealtime();
        p7.putExtra("kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        p7.putExtra("X-kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        String v0_4 = "com.google.android.gsf".equals(com.google.firebase.iid.zzf.aaG);
        if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
            String v2_9 = String.valueOf(p7.getExtras());
            android.util.Log.d("InstanceID/Rpc", new StringBuilder((String.valueOf(v2_9).length() + 8)).append("Sending ").append(v2_9).toString());
        }
        if (v0_4 == null) {
            p7.putExtra("google.messenger", this.Zu);
            if ((this.aaL != null) || (this.aaM != null)) {
                String v0_8 = android.os.Message.obtain();
                v0_8.obj = p7;
                try {
                    if (this.aaL == null) {
                        this.aaM.send(v0_8);
                        return;
                    } else {
                        this.aaL.send(v0_8);
                        return;
                    }
                } catch (String v0) {
                    if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
                        android.util.Log.d("InstanceID/Rpc", "Messenger failed, fallback to startService");
                    }
                }
            }
            this.zzagf.startService(p7);
        } else {
            this.zzagf.startService(p7);
        }
        return;
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzd;', 'getToken', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzd;', 'zzc', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzem', '(Landroid/content/Context;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '()Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '(Lcom/google/firebase/FirebaseApp;)Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Landroid/content/Context; Landroid/os/Bundle;)Lcom/google/firebase/iid/zzd;'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context;)V'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzg;', 'zzkf', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.zzd.getToken():


    public String getToken(String p7, String p8, android.os.Bundle p9)
    {
        String v1_0 = 0;
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            String v4;
            com.google.firebase.iid.zzg v0_1 = 1;
            if (!this.zzbma()) {
                v4 = com.google.firebase.iid.zzd.baF.zzi(this.aat, p7, p8);
            } else {
                v4 = 0;
            }
            if (v4 == null) {
                if (p9 == null) {
                    p9 = new android.os.Bundle();
                }
                if (p9.getString("ttl") != null) {
                    v0_1 = 0;
                }
                if (!"jwt".equals(p9.getString("type"))) {
                    v1_0 = v0_1;
                }
                v4 = this.zzc(p7, p8, p9);
                if ((v4 != null) && (v1_0 != null)) {
                    com.google.firebase.iid.zzd.baF.zza(this.aat, p7, p8, v4, com.google.firebase.iid.zzd.aav);
                }
            }
            return v4;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzd.zzc():


    public String zzc(String p3, String p4, android.os.Bundle p5)
    {
        if (p4 != null) {
            p5.putString("scope", p4);
        }
        String v0_1;
        p5.putString("sender", p3);
        if (!"".equals(this.aat)) {
            v0_1 = this.aat;
        } else {
            v0_1 = p3;
        }
        if (!p5.containsKey("legacy.register")) {
            p5.putString("subscription", p3);
            p5.putString("subtype", v0_1);
            p5.putString("X-subscription", p3);
            p5.putString("X-subtype", v0_1);
        }
        return com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p5, this.zzblw()));
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.FirebaseInstanceId.zzem():


    static String zzem(android.content.Context p1)
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance().bau.getOptions().getApplicationId();
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static com.google.firebase.iid.FirebaseInstanceId getInstance()
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance(com.google.firebase.FirebaseApp.getInstance());
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static declared_synchronized com.google.firebase.iid.FirebaseInstanceId getInstance(com.google.firebase.FirebaseApp p4)
    {
        try {
            com.google.firebase.iid.FirebaseInstanceId v0_6 = ((com.google.firebase.iid.FirebaseInstanceId) com.google.firebase.iid.FirebaseInstanceId.aap.get(p4.getOptions().getApplicationId()));
        } catch (com.google.firebase.iid.FirebaseInstanceId v0_7) {
            throw v0_7;
        }
        if (v0_6 == null) {
            java.util.Map v2_1 = com.google.firebase.iid.zzd.zzb(p4.getApplicationContext(), 0);
            if (com.google.firebase.iid.FirebaseInstanceId.bat == null) {
                com.google.firebase.iid.FirebaseInstanceId.bat = new com.google.firebase.iid.zze(v2_1.zzcwy());
            }
            v0_6 = new com.google.firebase.iid.FirebaseInstanceId(p4, v2_1);
            com.google.firebase.iid.FirebaseInstanceId.aap.put(p4.getOptions().getApplicationId(), v0_6);
        }
        return v0_6;
    }

Method com.google.firebase.iid.zzd.zzb():


    public static declared_synchronized com.google.firebase.iid.zzd zzb(android.content.Context p4, android.os.Bundle p5)
    {
        try {
            com.google.firebase.iid.zzd v0_13;
            if (p5 != null) {
                v0_13 = p5.getString("subtype");
            } else {
                v0_13 = "";
            }
        } catch (com.google.firebase.iid.zzd v0_12) {
            throw v0_12;
        }
        String v1;
        if (v0_13 != null) {
            v1 = v0_13;
        } else {
            v1 = "";
        }
        java.util.Map v3_0 = p4.getApplicationContext();
        if (com.google.firebase.iid.zzd.baF == null) {
            com.google.firebase.iid.zzd.baF = new com.google.firebase.iid.zzg(v3_0);
            com.google.firebase.iid.zzd.baG = new com.google.firebase.iid.zzf(v3_0);
        }
        com.google.firebase.iid.zzd.aav = Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(v3_0));
        com.google.firebase.iid.zzd v0_10 = ((com.google.firebase.iid.zzd) com.google.firebase.iid.zzd.aap.get(v1));
        if (v0_10 == null) {
            v0_10 = new com.google.firebase.iid.zzd(v3_0, v1, p5);
            com.google.firebase.iid.zzd.aap.put(v1, v0_10);
        }
        return v0_10;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p2)
    {
        this(p2, "com.google.android.gms.appid");
        return;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p4, String p5)
    {
        String v0_2;
        this.zzagf = p4;
        this.aaT = p4.getSharedPreferences(p5, 4);
        String v1 = String.valueOf(p5);
        String v0_0 = String.valueOf("-no-backup");
        if (v0_0.length() == 0) {
            v0_2 = new String(v1);
        } else {
            v0_2 = v1.concat(v0_0);
        }
        this.zzkf(v0_2);
        return;
    }

Method com.google.firebase.iid.zzg.zzkf():


    private void zzkf(String p5)
    {
        String v1_5 = new java.io.File(com.google.android.gms.common.util.zzx.getNoBackupFilesDir(this.zzagf), p5);
        try {
            if ((!v1_5.exists()) && ((v1_5.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzagf, this);
            }
        } catch (String v0_2) {
            if (!android.util.Log.isLoggable("InstanceID/Store", 3)) {
            } else {
                String v0_5 = String.valueOf(v0_2.getMessage());
                if (v0_5.length() == 0) {
                    String v0_7 = new String("Error creating file in no backup dir: ");
                    android.util.Log.d("InstanceID/Store", v0_7);
                } else {
                    v0_7 = "Error creating file in no backup dir: ".concat(v0_5);
                }
            }
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzd;', 'zzb', '(Landroid/content/Context; Landroid/os/Bundle;)Lcom/google/firebase/iid/zzd;'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context;)V'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzg;', 'zzkf', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.zzd.zzb():


    public static declared_synchronized com.google.firebase.iid.zzd zzb(android.content.Context p4, android.os.Bundle p5)
    {
        try {
            com.google.firebase.iid.zzd v0_13;
            if (p5 != null) {
                v0_13 = p5.getString("subtype");
            } else {
                v0_13 = "";
            }
        } catch (com.google.firebase.iid.zzd v0_12) {
            throw v0_12;
        }
        String v1;
        if (v0_13 != null) {
            v1 = v0_13;
        } else {
            v1 = "";
        }
        java.util.Map v3_0 = p4.getApplicationContext();
        if (com.google.firebase.iid.zzd.baF == null) {
            com.google.firebase.iid.zzd.baF = new com.google.firebase.iid.zzg(v3_0);
            com.google.firebase.iid.zzd.baG = new com.google.firebase.iid.zzf(v3_0);
        }
        com.google.firebase.iid.zzd.aav = Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(v3_0));
        com.google.firebase.iid.zzd v0_10 = ((com.google.firebase.iid.zzd) com.google.firebase.iid.zzd.aap.get(v1));
        if (v0_10 == null) {
            v0_10 = new com.google.firebase.iid.zzd(v3_0, v1, p5);
            com.google.firebase.iid.zzd.aap.put(v1, v0_10);
        }
        return v0_10;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p2)
    {
        this(p2, "com.google.android.gms.appid");
        return;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p4, String p5)
    {
        String v0_2;
        this.zzagf = p4;
        this.aaT = p4.getSharedPreferences(p5, 4);
        String v1 = String.valueOf(p5);
        String v0_0 = String.valueOf("-no-backup");
        if (v0_0.length() == 0) {
            v0_2 = new String(v1);
        } else {
            v0_2 = v1.concat(v0_0);
        }
        this.zzkf(v0_2);
        return;
    }

Method com.google.firebase.iid.zzg.zzkf():


    private void zzkf(String p5)
    {
        String v1_5 = new java.io.File(com.google.android.gms.common.util.zzx.getNoBackupFilesDir(this.zzagf), p5);
        try {
            if ((!v1_5.exists()) && ((v1_5.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzagf, this);
            }
        } catch (String v0_2) {
            if (!android.util.Log.isLoggable("InstanceID/Store", 3)) {
            } else {
                String v0_5 = String.valueOf(v0_2.getMessage());
                if (v0_5.length() == 0) {
                    String v0_7 = new String("Error creating file in no backup dir: ");
                    android.util.Log.d("InstanceID/Store", v0_7);
                } else {
                    v0_7 = "Error creating file in no backup dir: ".concat(v0_5);
                }
            }
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzc;', 'getToken', '()Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getToken', '()Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceIdService;', 'zzen', '(Landroid/content/Context;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.zzc.getToken():


    public String getToken()
    {
        return this.bas.getToken();
    }

Method com.google.firebase.iid.FirebaseInstanceId.getToken():


    public String getToken()
    {
        String v0 = this.zzcwt();
        if (v0 == null) {
            com.google.firebase.iid.FirebaseInstanceIdService.zzen(this.bau.getApplicationContext());
        }
        return v0;
    }

Method com.google.firebase.iid.FirebaseInstanceIdService.zzen():


    static void zzen(android.content.Context p2)
    {
        if (com.google.firebase.iid.zzf.zzdi(p2) != null) {
            try {
                if (!com.google.firebase.iid.FirebaseInstanceIdService.baB) {
                    p2.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdService.zzafa(0));
                    com.google.firebase.iid.FirebaseInstanceIdService.baB = 1;
                }
            } catch (int v0_2) {
                throw v0_2;
            }
        }
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/zzc;', 'zzcwr', '()Lcom/google/firebase/iid/zzc;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '()Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '(Lcom/google/firebase/FirebaseApp;)Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Landroid/content/Context; Landroid/os/Bundle;)Lcom/google/firebase/iid/zzd;'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context;)V'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzg;', 'zzkf', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.zzc.zzcwr():


    public static com.google.firebase.iid.zzc zzcwr()
    {
        return new com.google.firebase.iid.zzc(com.google.firebase.iid.FirebaseInstanceId.getInstance());
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static com.google.firebase.iid.FirebaseInstanceId getInstance()
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance(com.google.firebase.FirebaseApp.getInstance());
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static declared_synchronized com.google.firebase.iid.FirebaseInstanceId getInstance(com.google.firebase.FirebaseApp p4)
    {
        try {
            com.google.firebase.iid.FirebaseInstanceId v0_6 = ((com.google.firebase.iid.FirebaseInstanceId) com.google.firebase.iid.FirebaseInstanceId.aap.get(p4.getOptions().getApplicationId()));
        } catch (com.google.firebase.iid.FirebaseInstanceId v0_7) {
            throw v0_7;
        }
        if (v0_6 == null) {
            java.util.Map v2_1 = com.google.firebase.iid.zzd.zzb(p4.getApplicationContext(), 0);
            if (com.google.firebase.iid.FirebaseInstanceId.bat == null) {
                com.google.firebase.iid.FirebaseInstanceId.bat = new com.google.firebase.iid.zze(v2_1.zzcwy());
            }
            v0_6 = new com.google.firebase.iid.FirebaseInstanceId(p4, v2_1);
            com.google.firebase.iid.FirebaseInstanceId.aap.put(p4.getOptions().getApplicationId(), v0_6);
        }
        return v0_6;
    }

Method com.google.firebase.iid.zzd.zzb():


    public static declared_synchronized com.google.firebase.iid.zzd zzb(android.content.Context p4, android.os.Bundle p5)
    {
        try {
            com.google.firebase.iid.zzd v0_13;
            if (p5 != null) {
                v0_13 = p5.getString("subtype");
            } else {
                v0_13 = "";
            }
        } catch (com.google.firebase.iid.zzd v0_12) {
            throw v0_12;
        }
        String v1;
        if (v0_13 != null) {
            v1 = v0_13;
        } else {
            v1 = "";
        }
        java.util.Map v3_0 = p4.getApplicationContext();
        if (com.google.firebase.iid.zzd.baF == null) {
            com.google.firebase.iid.zzd.baF = new com.google.firebase.iid.zzg(v3_0);
            com.google.firebase.iid.zzd.baG = new com.google.firebase.iid.zzf(v3_0);
        }
        com.google.firebase.iid.zzd.aav = Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(v3_0));
        com.google.firebase.iid.zzd v0_10 = ((com.google.firebase.iid.zzd) com.google.firebase.iid.zzd.aap.get(v1));
        if (v0_10 == null) {
            v0_10 = new com.google.firebase.iid.zzd(v3_0, v1, p5);
            com.google.firebase.iid.zzd.aap.put(v1, v0_10);
        }
        return v0_10;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p2)
    {
        this(p2, "com.google.android.gms.appid");
        return;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p4, String p5)
    {
        String v0_2;
        this.zzagf = p4;
        this.aaT = p4.getSharedPreferences(p5, 4);
        String v1 = String.valueOf(p5);
        String v0_0 = String.valueOf("-no-backup");
        if (v0_0.length() == 0) {
            v0_2 = new String(v1);
        } else {
            v0_2 = v1.concat(v0_0);
        }
        this.zzkf(v0_2);
        return;
    }

Method com.google.firebase.iid.zzg.zzkf():


    private void zzkf(String p5)
    {
        String v1_5 = new java.io.File(com.google.android.gms.common.util.zzx.getNoBackupFilesDir(this.zzagf), p5);
        try {
            if ((!v1_5.exists()) && ((v1_5.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzagf, this);
            }
        } catch (String v0_2) {
            if (!android.util.Log.isLoggable("InstanceID/Store", 3)) {
            } else {
                String v0_5 = String.valueOf(v0_2.getMessage());
                if (v0_5.length() == 0) {
                    String v0_7 = new String("Error creating file in no backup dir: ");
                    android.util.Log.d("InstanceID/Store", v0_7);
                } else {
                    v0_7 = "Error creating file in no backup dir: ".concat(v0_5);
                }
            }
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'google.messenger' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzsx', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)V'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/content/Intent; Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value google.messenger to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.zzsx():


    void zzsx(String p7)
    {
        if (this.getToken() != null) {
            String v0_3;
            android.os.Bundle v1_2 = new android.os.Bundle();
            String v3_1 = String.valueOf("/topics/");
            String v0_1 = String.valueOf(p7);
            if (v0_1.length() == 0) {
                v0_3 = new String(v3_1);
            } else {
                v0_3 = v3_1.concat(v0_1);
            }
            String v0_7;
            v1_2.putString("gcm.topic", v0_3);
            com.google.firebase.iid.zzd v2_0 = this.bav;
            String v3_0 = this.getToken();
            String v4_1 = String.valueOf("/topics/");
            String v0_5 = String.valueOf(p7);
            if (v0_5.length() == 0) {
                v0_7 = new String(v4_1);
            } else {
                v0_7 = v4_1.concat(v0_5);
            }
            v2_0.zzb(v3_0, v0_7, v1_2);
            return;
        } else {
            throw new java.io.IOException("token not available");
        }
    }

Method com.google.firebase.iid.zzd.zzb():


    public void zzb(String p4, String p5, android.os.Bundle p6)
    {
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            com.google.firebase.iid.zzd.baF.zzj(this.aat, p4, p5);
            if (p6 == null) {
                p6 = new android.os.Bundle();
            }
            p6.putString("sender", p4);
            if (p5 != null) {
                p6.putString("scope", p5);
            }
            android.content.Intent v0_8;
            p6.putString("subscription", p4);
            p6.putString("delete", "1");
            p6.putString("X-delete", "1");
            if (!"".equals(this.aat)) {
                v0_8 = this.aat;
            } else {
                v0_8 = p4;
            }
            p6.putString("subtype", v0_8);
            if (!"".equals(this.aat)) {
                p4 = this.aat;
            }
            p6.putString("X-subtype", p4);
            com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p6, this.zzblw()));
            return;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzb():


    protected void zzb(android.content.Intent p7, String p8)
    {
        this.aaN = android.os.SystemClock.elapsedRealtime();
        p7.putExtra("kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        p7.putExtra("X-kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        String v0_4 = "com.google.android.gsf".equals(com.google.firebase.iid.zzf.aaG);
        if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
            String v2_9 = String.valueOf(p7.getExtras());
            android.util.Log.d("InstanceID/Rpc", new StringBuilder((String.valueOf(v2_9).length() + 8)).append("Sending ").append(v2_9).toString());
        }
        if (v0_4 == null) {
            p7.putExtra("google.messenger", this.Zu);
            if ((this.aaL != null) || (this.aaM != null)) {
                String v0_8 = android.os.Message.obtain();
                v0_8.obj = p7;
                try {
                    if (this.aaL == null) {
                        this.aaM.send(v0_8);
                        return;
                    } else {
                        this.aaL.send(v0_8);
                        return;
                    }
                } catch (String v0) {
                    if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
                        android.util.Log.d("InstanceID/Rpc", "Messenger failed, fallback to startService");
                    }
                }
            }
            this.zzagf.startService(p7);
        } else {
            this.zzagf.startService(p7);
        }
        return;
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzsx', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getToken', '()Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceIdService;', 'zzen', '(Landroid/content/Context;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.zzsx():


    void zzsx(String p7)
    {
        if (this.getToken() != null) {
            String v0_3;
            android.os.Bundle v1_2 = new android.os.Bundle();
            String v3_1 = String.valueOf("/topics/");
            String v0_1 = String.valueOf(p7);
            if (v0_1.length() == 0) {
                v0_3 = new String(v3_1);
            } else {
                v0_3 = v3_1.concat(v0_1);
            }
            String v0_7;
            v1_2.putString("gcm.topic", v0_3);
            com.google.firebase.iid.zzd v2_0 = this.bav;
            String v3_0 = this.getToken();
            String v4_1 = String.valueOf("/topics/");
            String v0_5 = String.valueOf(p7);
            if (v0_5.length() == 0) {
                v0_7 = new String(v4_1);
            } else {
                v0_7 = v4_1.concat(v0_5);
            }
            v2_0.zzb(v3_0, v0_7, v1_2);
            return;
        } else {
            throw new java.io.IOException("token not available");
        }
    }

Method com.google.firebase.iid.FirebaseInstanceId.getToken():


    public String getToken()
    {
        String v0 = this.zzcwt();
        if (v0 == null) {
            com.google.firebase.iid.FirebaseInstanceIdService.zzen(this.bau.getApplicationContext());
        }
        return v0;
    }

Method com.google.firebase.iid.FirebaseInstanceIdService.zzen():


    static void zzen(android.content.Context p2)
    {
        if (com.google.firebase.iid.zzf.zzdi(p2) != null) {
            try {
                if (!com.google.firebase.iid.FirebaseInstanceIdService.baB) {
                    p2.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdService.zzafa(0));
                    com.google.firebase.iid.FirebaseInstanceIdService.baB = 1;
                }
            } catch (int v0_2) {
                throw v0_2;
            }
        }
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.example.invalidpackage' ==>>> Sink '['Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzsx', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)V'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzs', '(Landroid/content/Intent;)V'), ('Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;')]]

Use of a string value com.google.example.invalidpackage to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.zzsx():


    void zzsx(String p7)
    {
        if (this.getToken() != null) {
            String v0_3;
            android.os.Bundle v1_2 = new android.os.Bundle();
            String v3_1 = String.valueOf("/topics/");
            String v0_1 = String.valueOf(p7);
            if (v0_1.length() == 0) {
                v0_3 = new String(v3_1);
            } else {
                v0_3 = v3_1.concat(v0_1);
            }
            String v0_7;
            v1_2.putString("gcm.topic", v0_3);
            com.google.firebase.iid.zzd v2_0 = this.bav;
            String v3_0 = this.getToken();
            String v4_1 = String.valueOf("/topics/");
            String v0_5 = String.valueOf(p7);
            if (v0_5.length() == 0) {
                v0_7 = new String(v4_1);
            } else {
                v0_7 = v4_1.concat(v0_5);
            }
            v2_0.zzb(v3_0, v0_7, v1_2);
            return;
        } else {
            throw new java.io.IOException("token not available");
        }
    }

Method com.google.firebase.iid.zzd.zzb():


    public void zzb(String p4, String p5, android.os.Bundle p6)
    {
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            com.google.firebase.iid.zzd.baF.zzj(this.aat, p4, p5);
            if (p6 == null) {
                p6 = new android.os.Bundle();
            }
            p6.putString("sender", p4);
            if (p5 != null) {
                p6.putString("scope", p5);
            }
            android.content.Intent v0_8;
            p6.putString("subscription", p4);
            p6.putString("delete", "1");
            p6.putString("X-delete", "1");
            if (!"".equals(this.aat)) {
                v0_8 = this.aat;
            } else {
                v0_8 = p4;
            }
            p6.putString("subtype", v0_8);
            if (!"".equals(this.aat)) {
                p4 = this.aat;
            }
            p6.putString("X-subtype", p4);
            com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p6, this.zzblw()));
            return;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzs():


    declared_synchronized void zzs(android.content.Intent p5)
    {
        try {
            if (this.Zq == null) {
                String v0_5 = new android.content.Intent();
                v0_5.setPackage("com.google.example.invalidpackage");
                this.Zq = android.app.PendingIntent.getBroadcast(this.zzagf, 0, v0_5, 0);
            }
        } catch (String v0_2) {
            throw v0_2;
        }
        p5.putExtra("app", this.Zq);
        return;
    }

Method android.content.Intent.setPackage() not found.

[TAINT] String 'google.messenger' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzsw', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzd;', 'getToken', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzd;', 'zzc', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/content/Intent; Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value google.messenger to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.zzsw():


    void zzsw(String p7)
    {
        if (this.getToken() != null) {
            String v0_3;
            android.os.Bundle v1_2 = new android.os.Bundle();
            String v3_1 = String.valueOf("/topics/");
            String v0_1 = String.valueOf(p7);
            if (v0_1.length() == 0) {
                v0_3 = new String(v3_1);
            } else {
                v0_3 = v3_1.concat(v0_1);
            }
            String v0_7;
            v1_2.putString("gcm.topic", v0_3);
            com.google.firebase.iid.zzd v2_0 = this.bav;
            String v3_0 = this.getToken();
            String v4_1 = String.valueOf("/topics/");
            String v0_5 = String.valueOf(p7);
            if (v0_5.length() == 0) {
                v0_7 = new String(v4_1);
            } else {
                v0_7 = v4_1.concat(v0_5);
            }
            v2_0.getToken(v3_0, v0_7, v1_2);
            return;
        } else {
            throw new java.io.IOException("token not available");
        }
    }

Method com.google.firebase.iid.zzd.getToken():


    public String getToken(String p7, String p8, android.os.Bundle p9)
    {
        String v1_0 = 0;
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            String v4;
            com.google.firebase.iid.zzg v0_1 = 1;
            if (!this.zzbma()) {
                v4 = com.google.firebase.iid.zzd.baF.zzi(this.aat, p7, p8);
            } else {
                v4 = 0;
            }
            if (v4 == null) {
                if (p9 == null) {
                    p9 = new android.os.Bundle();
                }
                if (p9.getString("ttl") != null) {
                    v0_1 = 0;
                }
                if (!"jwt".equals(p9.getString("type"))) {
                    v1_0 = v0_1;
                }
                v4 = this.zzc(p7, p8, p9);
                if ((v4 != null) && (v1_0 != null)) {
                    com.google.firebase.iid.zzd.baF.zza(this.aat, p7, p8, v4, com.google.firebase.iid.zzd.aav);
                }
            }
            return v4;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzd.zzc():


    public String zzc(String p3, String p4, android.os.Bundle p5)
    {
        if (p4 != null) {
            p5.putString("scope", p4);
        }
        String v0_1;
        p5.putString("sender", p3);
        if (!"".equals(this.aat)) {
            v0_1 = this.aat;
        } else {
            v0_1 = p3;
        }
        if (!p5.containsKey("legacy.register")) {
            p5.putString("subscription", p3);
            p5.putString("subtype", v0_1);
            p5.putString("X-subscription", p3);
            p5.putString("X-subtype", v0_1);
        }
        return com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p5, this.zzblw()));
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzb():


    protected void zzb(android.content.Intent p7, String p8)
    {
        this.aaN = android.os.SystemClock.elapsedRealtime();
        p7.putExtra("kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        p7.putExtra("X-kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        String v0_4 = "com.google.android.gsf".equals(com.google.firebase.iid.zzf.aaG);
        if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
            String v2_9 = String.valueOf(p7.getExtras());
            android.util.Log.d("InstanceID/Rpc", new StringBuilder((String.valueOf(v2_9).length() + 8)).append("Sending ").append(v2_9).toString());
        }
        if (v0_4 == null) {
            p7.putExtra("google.messenger", this.Zu);
            if ((this.aaL != null) || (this.aaM != null)) {
                String v0_8 = android.os.Message.obtain();
                v0_8.obj = p7;
                try {
                    if (this.aaL == null) {
                        this.aaM.send(v0_8);
                        return;
                    } else {
                        this.aaL.send(v0_8);
                        return;
                    }
                } catch (String v0) {
                    if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
                        android.util.Log.d("InstanceID/Rpc", "Messenger failed, fallback to startService");
                    }
                }
            }
            this.zzagf.startService(p7);
        } else {
            this.zzagf.startService(p7);
        }
        return;
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzsw', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getToken', '()Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceIdService;', 'zzen', '(Landroid/content/Context;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.zzsw():


    void zzsw(String p7)
    {
        if (this.getToken() != null) {
            String v0_3;
            android.os.Bundle v1_2 = new android.os.Bundle();
            String v3_1 = String.valueOf("/topics/");
            String v0_1 = String.valueOf(p7);
            if (v0_1.length() == 0) {
                v0_3 = new String(v3_1);
            } else {
                v0_3 = v3_1.concat(v0_1);
            }
            String v0_7;
            v1_2.putString("gcm.topic", v0_3);
            com.google.firebase.iid.zzd v2_0 = this.bav;
            String v3_0 = this.getToken();
            String v4_1 = String.valueOf("/topics/");
            String v0_5 = String.valueOf(p7);
            if (v0_5.length() == 0) {
                v0_7 = new String(v4_1);
            } else {
                v0_7 = v4_1.concat(v0_5);
            }
            v2_0.getToken(v3_0, v0_7, v1_2);
            return;
        } else {
            throw new java.io.IOException("token not available");
        }
    }

Method com.google.firebase.iid.FirebaseInstanceId.getToken():


    public String getToken()
    {
        String v0 = this.zzcwt();
        if (v0 == null) {
            com.google.firebase.iid.FirebaseInstanceIdService.zzen(this.bau.getApplicationContext());
        }
        return v0;
    }

Method com.google.firebase.iid.FirebaseInstanceIdService.zzen():


    static void zzen(android.content.Context p2)
    {
        if (com.google.firebase.iid.zzf.zzdi(p2) != null) {
            try {
                if (!com.google.firebase.iid.FirebaseInstanceIdService.baB) {
                    p2.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdService.zzafa(0));
                    com.google.firebase.iid.FirebaseInstanceIdService.baB = 1;
                }
            } catch (int v0_2) {
                throw v0_2;
            }
        }
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.example.invalidpackage' ==>>> Sink '['Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzsw', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzd;', 'getToken', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzd;', 'zzc', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzs', '(Landroid/content/Intent;)V'), ('Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;')]]

Use of a string value com.google.example.invalidpackage to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.zzsw():


    void zzsw(String p7)
    {
        if (this.getToken() != null) {
            String v0_3;
            android.os.Bundle v1_2 = new android.os.Bundle();
            String v3_1 = String.valueOf("/topics/");
            String v0_1 = String.valueOf(p7);
            if (v0_1.length() == 0) {
                v0_3 = new String(v3_1);
            } else {
                v0_3 = v3_1.concat(v0_1);
            }
            String v0_7;
            v1_2.putString("gcm.topic", v0_3);
            com.google.firebase.iid.zzd v2_0 = this.bav;
            String v3_0 = this.getToken();
            String v4_1 = String.valueOf("/topics/");
            String v0_5 = String.valueOf(p7);
            if (v0_5.length() == 0) {
                v0_7 = new String(v4_1);
            } else {
                v0_7 = v4_1.concat(v0_5);
            }
            v2_0.getToken(v3_0, v0_7, v1_2);
            return;
        } else {
            throw new java.io.IOException("token not available");
        }
    }

Method com.google.firebase.iid.zzd.getToken():


    public String getToken(String p7, String p8, android.os.Bundle p9)
    {
        String v1_0 = 0;
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            String v4;
            com.google.firebase.iid.zzg v0_1 = 1;
            if (!this.zzbma()) {
                v4 = com.google.firebase.iid.zzd.baF.zzi(this.aat, p7, p8);
            } else {
                v4 = 0;
            }
            if (v4 == null) {
                if (p9 == null) {
                    p9 = new android.os.Bundle();
                }
                if (p9.getString("ttl") != null) {
                    v0_1 = 0;
                }
                if (!"jwt".equals(p9.getString("type"))) {
                    v1_0 = v0_1;
                }
                v4 = this.zzc(p7, p8, p9);
                if ((v4 != null) && (v1_0 != null)) {
                    com.google.firebase.iid.zzd.baF.zza(this.aat, p7, p8, v4, com.google.firebase.iid.zzd.aav);
                }
            }
            return v4;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzd.zzc():


    public String zzc(String p3, String p4, android.os.Bundle p5)
    {
        if (p4 != null) {
            p5.putString("scope", p4);
        }
        String v0_1;
        p5.putString("sender", p3);
        if (!"".equals(this.aat)) {
            v0_1 = this.aat;
        } else {
            v0_1 = p3;
        }
        if (!p5.containsKey("legacy.register")) {
            p5.putString("subscription", p3);
            p5.putString("subtype", v0_1);
            p5.putString("X-subscription", p3);
            p5.putString("X-subtype", v0_1);
        }
        return com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p5, this.zzblw()));
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzs():


    declared_synchronized void zzs(android.content.Intent p5)
    {
        try {
            if (this.Zq == null) {
                String v0_5 = new android.content.Intent();
                v0_5.setPackage("com.google.example.invalidpackage");
                this.Zq = android.app.PendingIntent.getBroadcast(this.zzagf, 0, v0_5, 0);
            }
        } catch (String v0_2) {
            throw v0_2;
        }
        p5.putExtra("app", this.Zq);
        return;
    }

Method android.content.Intent.setPackage() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzsv', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceIdService;', 'zzen', '(Landroid/content/Context;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.zzsv():


    public void zzsv(String p2)
    {
        com.google.firebase.iid.FirebaseInstanceId.bat.zzsv(p2);
        com.google.firebase.iid.FirebaseInstanceIdService.zzen(this.bau.getApplicationContext());
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceIdService.zzen():


    static void zzen(android.content.Context p2)
    {
        if (com.google.firebase.iid.zzf.zzdi(p2) != null) {
            try {
                if (!com.google.firebase.iid.FirebaseInstanceIdService.baB) {
                    p2.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdService.zzafa(0));
                    com.google.firebase.iid.FirebaseInstanceIdService.baB = 1;
                }
            } catch (int v0_2) {
                throw v0_2;
            }
        }
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzcwu', '()Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getToken', '(Ljava/lang/String; Ljava/lang/String;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzd;', 'getToken', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzd;', 'zzc', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzem', '(Landroid/content/Context;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '()Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '(Lcom/google/firebase/FirebaseApp;)Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Landroid/content/Context; Landroid/os/Bundle;)Lcom/google/firebase/iid/zzd;'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context;)V'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzg;', 'zzkf', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.zzcwu():


    String zzcwu()
    {
        return this.getToken(this.baw, "*");
    }

Method com.google.firebase.iid.FirebaseInstanceId.getToken():


    public String getToken(String p3, String p4)
    {
        return this.bav.getToken(p3, p4, 0);
    }

Method com.google.firebase.iid.zzd.getToken():


    public String getToken(String p7, String p8, android.os.Bundle p9)
    {
        String v1_0 = 0;
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            String v4;
            com.google.firebase.iid.zzg v0_1 = 1;
            if (!this.zzbma()) {
                v4 = com.google.firebase.iid.zzd.baF.zzi(this.aat, p7, p8);
            } else {
                v4 = 0;
            }
            if (v4 == null) {
                if (p9 == null) {
                    p9 = new android.os.Bundle();
                }
                if (p9.getString("ttl") != null) {
                    v0_1 = 0;
                }
                if (!"jwt".equals(p9.getString("type"))) {
                    v1_0 = v0_1;
                }
                v4 = this.zzc(p7, p8, p9);
                if ((v4 != null) && (v1_0 != null)) {
                    com.google.firebase.iid.zzd.baF.zza(this.aat, p7, p8, v4, com.google.firebase.iid.zzd.aav);
                }
            }
            return v4;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzd.zzc():


    public String zzc(String p3, String p4, android.os.Bundle p5)
    {
        if (p4 != null) {
            p5.putString("scope", p4);
        }
        String v0_1;
        p5.putString("sender", p3);
        if (!"".equals(this.aat)) {
            v0_1 = this.aat;
        } else {
            v0_1 = p3;
        }
        if (!p5.containsKey("legacy.register")) {
            p5.putString("subscription", p3);
            p5.putString("subtype", v0_1);
            p5.putString("X-subscription", p3);
            p5.putString("X-subtype", v0_1);
        }
        return com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p5, this.zzblw()));
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.FirebaseInstanceId.zzem():


    static String zzem(android.content.Context p1)
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance().bau.getOptions().getApplicationId();
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static com.google.firebase.iid.FirebaseInstanceId getInstance()
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance(com.google.firebase.FirebaseApp.getInstance());
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static declared_synchronized com.google.firebase.iid.FirebaseInstanceId getInstance(com.google.firebase.FirebaseApp p4)
    {
        try {
            com.google.firebase.iid.FirebaseInstanceId v0_6 = ((com.google.firebase.iid.FirebaseInstanceId) com.google.firebase.iid.FirebaseInstanceId.aap.get(p4.getOptions().getApplicationId()));
        } catch (com.google.firebase.iid.FirebaseInstanceId v0_7) {
            throw v0_7;
        }
        if (v0_6 == null) {
            java.util.Map v2_1 = com.google.firebase.iid.zzd.zzb(p4.getApplicationContext(), 0);
            if (com.google.firebase.iid.FirebaseInstanceId.bat == null) {
                com.google.firebase.iid.FirebaseInstanceId.bat = new com.google.firebase.iid.zze(v2_1.zzcwy());
            }
            v0_6 = new com.google.firebase.iid.FirebaseInstanceId(p4, v2_1);
            com.google.firebase.iid.FirebaseInstanceId.aap.put(p4.getOptions().getApplicationId(), v0_6);
        }
        return v0_6;
    }

Method com.google.firebase.iid.zzd.zzb():


    public static declared_synchronized com.google.firebase.iid.zzd zzb(android.content.Context p4, android.os.Bundle p5)
    {
        try {
            com.google.firebase.iid.zzd v0_13;
            if (p5 != null) {
                v0_13 = p5.getString("subtype");
            } else {
                v0_13 = "";
            }
        } catch (com.google.firebase.iid.zzd v0_12) {
            throw v0_12;
        }
        String v1;
        if (v0_13 != null) {
            v1 = v0_13;
        } else {
            v1 = "";
        }
        java.util.Map v3_0 = p4.getApplicationContext();
        if (com.google.firebase.iid.zzd.baF == null) {
            com.google.firebase.iid.zzd.baF = new com.google.firebase.iid.zzg(v3_0);
            com.google.firebase.iid.zzd.baG = new com.google.firebase.iid.zzf(v3_0);
        }
        com.google.firebase.iid.zzd.aav = Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(v3_0));
        com.google.firebase.iid.zzd v0_10 = ((com.google.firebase.iid.zzd) com.google.firebase.iid.zzd.aap.get(v1));
        if (v0_10 == null) {
            v0_10 = new com.google.firebase.iid.zzd(v3_0, v1, p5);
            com.google.firebase.iid.zzd.aap.put(v1, v0_10);
        }
        return v0_10;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p2)
    {
        this(p2, "com.google.android.gms.appid");
        return;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p4, String p5)
    {
        String v0_2;
        this.zzagf = p4;
        this.aaT = p4.getSharedPreferences(p5, 4);
        String v1 = String.valueOf(p5);
        String v0_0 = String.valueOf("-no-backup");
        if (v0_0.length() == 0) {
            v0_2 = new String(v1);
        } else {
            v0_2 = v1.concat(v0_0);
        }
        this.zzkf(v0_2);
        return;
    }

Method com.google.firebase.iid.zzg.zzkf():


    private void zzkf(String p5)
    {
        String v1_5 = new java.io.File(com.google.android.gms.common.util.zzx.getNoBackupFilesDir(this.zzagf), p5);
        try {
            if ((!v1_5.exists()) && ((v1_5.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzagf, this);
            }
        } catch (String v0_2) {
            if (!android.util.Log.isLoggable("InstanceID/Store", 3)) {
            } else {
                String v0_5 = String.valueOf(v0_2.getMessage());
                if (v0_5.length() == 0) {
                    String v0_7 = new String("Error creating file in no backup dir: ");
                    android.util.Log.d("InstanceID/Store", v0_7);
                } else {
                    v0_7 = "Error creating file in no backup dir: ".concat(v0_5);
                }
            }
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.example.invalidpackage' ==>>> Sink '['Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzcwu', '()Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getToken', '(Ljava/lang/String; Ljava/lang/String;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzd;', 'getToken', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzd;', 'zzc', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzs', '(Landroid/content/Intent;)V'), ('Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;')]]

Use of a string value com.google.example.invalidpackage to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.zzcwu():


    String zzcwu()
    {
        return this.getToken(this.baw, "*");
    }

Method com.google.firebase.iid.FirebaseInstanceId.getToken():


    public String getToken(String p3, String p4)
    {
        return this.bav.getToken(p3, p4, 0);
    }

Method com.google.firebase.iid.zzd.getToken():


    public String getToken(String p7, String p8, android.os.Bundle p9)
    {
        String v1_0 = 0;
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            String v4;
            com.google.firebase.iid.zzg v0_1 = 1;
            if (!this.zzbma()) {
                v4 = com.google.firebase.iid.zzd.baF.zzi(this.aat, p7, p8);
            } else {
                v4 = 0;
            }
            if (v4 == null) {
                if (p9 == null) {
                    p9 = new android.os.Bundle();
                }
                if (p9.getString("ttl") != null) {
                    v0_1 = 0;
                }
                if (!"jwt".equals(p9.getString("type"))) {
                    v1_0 = v0_1;
                }
                v4 = this.zzc(p7, p8, p9);
                if ((v4 != null) && (v1_0 != null)) {
                    com.google.firebase.iid.zzd.baF.zza(this.aat, p7, p8, v4, com.google.firebase.iid.zzd.aav);
                }
            }
            return v4;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzd.zzc():


    public String zzc(String p3, String p4, android.os.Bundle p5)
    {
        if (p4 != null) {
            p5.putString("scope", p4);
        }
        String v0_1;
        p5.putString("sender", p3);
        if (!"".equals(this.aat)) {
            v0_1 = this.aat;
        } else {
            v0_1 = p3;
        }
        if (!p5.containsKey("legacy.register")) {
            p5.putString("subscription", p3);
            p5.putString("subtype", v0_1);
            p5.putString("X-subscription", p3);
            p5.putString("X-subtype", v0_1);
        }
        return com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p5, this.zzblw()));
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzs():


    declared_synchronized void zzs(android.content.Intent p5)
    {
        try {
            if (this.Zq == null) {
                String v0_5 = new android.content.Intent();
                v0_5.setPackage("com.google.example.invalidpackage");
                this.Zq = android.app.PendingIntent.getBroadcast(this.zzagf, 0, v0_5, 0);
            }
        } catch (String v0_2) {
            throw v0_2;
        }
        p5.putExtra("app", this.Zq);
        return;
    }

Method android.content.Intent.setPackage() not found.

[TAINT] String 'google.messenger' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzcwu', '()Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getToken', '(Ljava/lang/String; Ljava/lang/String;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzd;', 'getToken', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzd;', 'zzc', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/content/Intent; Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value google.messenger to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.zzcwu():


    String zzcwu()
    {
        return this.getToken(this.baw, "*");
    }

Method com.google.firebase.iid.FirebaseInstanceId.getToken():


    public String getToken(String p3, String p4)
    {
        return this.bav.getToken(p3, p4, 0);
    }

Method com.google.firebase.iid.zzd.getToken():


    public String getToken(String p7, String p8, android.os.Bundle p9)
    {
        String v1_0 = 0;
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            String v4;
            com.google.firebase.iid.zzg v0_1 = 1;
            if (!this.zzbma()) {
                v4 = com.google.firebase.iid.zzd.baF.zzi(this.aat, p7, p8);
            } else {
                v4 = 0;
            }
            if (v4 == null) {
                if (p9 == null) {
                    p9 = new android.os.Bundle();
                }
                if (p9.getString("ttl") != null) {
                    v0_1 = 0;
                }
                if (!"jwt".equals(p9.getString("type"))) {
                    v1_0 = v0_1;
                }
                v4 = this.zzc(p7, p8, p9);
                if ((v4 != null) && (v1_0 != null)) {
                    com.google.firebase.iid.zzd.baF.zza(this.aat, p7, p8, v4, com.google.firebase.iid.zzd.aav);
                }
            }
            return v4;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzd.zzc():


    public String zzc(String p3, String p4, android.os.Bundle p5)
    {
        if (p4 != null) {
            p5.putString("scope", p4);
        }
        String v0_1;
        p5.putString("sender", p3);
        if (!"".equals(this.aat)) {
            v0_1 = this.aat;
        } else {
            v0_1 = p3;
        }
        if (!p5.containsKey("legacy.register")) {
            p5.putString("subscription", p3);
            p5.putString("subtype", v0_1);
            p5.putString("X-subscription", p3);
            p5.putString("X-subtype", v0_1);
        }
        return com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p5, this.zzblw()));
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzb():


    protected void zzb(android.content.Intent p7, String p8)
    {
        this.aaN = android.os.SystemClock.elapsedRealtime();
        p7.putExtra("kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        p7.putExtra("X-kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        String v0_4 = "com.google.android.gsf".equals(com.google.firebase.iid.zzf.aaG);
        if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
            String v2_9 = String.valueOf(p7.getExtras());
            android.util.Log.d("InstanceID/Rpc", new StringBuilder((String.valueOf(v2_9).length() + 8)).append("Sending ").append(v2_9).toString());
        }
        if (v0_4 == null) {
            p7.putExtra("google.messenger", this.Zu);
            if ((this.aaL != null) || (this.aaM != null)) {
                String v0_8 = android.os.Message.obtain();
                v0_8.obj = p7;
                try {
                    if (this.aaL == null) {
                        this.aaM.send(v0_8);
                        return;
                    } else {
                        this.aaL.send(v0_8);
                        return;
                    }
                } catch (String v0) {
                    if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
                        android.util.Log.d("InstanceID/Rpc", "Messenger failed, fallback to startService");
                    }
                }
            }
            this.zzagf.startService(p7);
        } else {
            this.zzagf.startService(p7);
        }
        return;
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'google.messenger' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getToken', '(Ljava/lang/String; Ljava/lang/String;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzd;', 'getToken', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzd;', 'zzc', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/content/Intent; Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value google.messenger to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.getToken():


    public String getToken(String p3, String p4)
    {
        return this.bav.getToken(p3, p4, 0);
    }

Method com.google.firebase.iid.zzd.getToken():


    public String getToken(String p7, String p8, android.os.Bundle p9)
    {
        String v1_0 = 0;
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            String v4;
            com.google.firebase.iid.zzg v0_1 = 1;
            if (!this.zzbma()) {
                v4 = com.google.firebase.iid.zzd.baF.zzi(this.aat, p7, p8);
            } else {
                v4 = 0;
            }
            if (v4 == null) {
                if (p9 == null) {
                    p9 = new android.os.Bundle();
                }
                if (p9.getString("ttl") != null) {
                    v0_1 = 0;
                }
                if (!"jwt".equals(p9.getString("type"))) {
                    v1_0 = v0_1;
                }
                v4 = this.zzc(p7, p8, p9);
                if ((v4 != null) && (v1_0 != null)) {
                    com.google.firebase.iid.zzd.baF.zza(this.aat, p7, p8, v4, com.google.firebase.iid.zzd.aav);
                }
            }
            return v4;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzd.zzc():


    public String zzc(String p3, String p4, android.os.Bundle p5)
    {
        if (p4 != null) {
            p5.putString("scope", p4);
        }
        String v0_1;
        p5.putString("sender", p3);
        if (!"".equals(this.aat)) {
            v0_1 = this.aat;
        } else {
            v0_1 = p3;
        }
        if (!p5.containsKey("legacy.register")) {
            p5.putString("subscription", p3);
            p5.putString("subtype", v0_1);
            p5.putString("X-subscription", p3);
            p5.putString("X-subtype", v0_1);
        }
        return com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p5, this.zzblw()));
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzb():


    protected void zzb(android.content.Intent p7, String p8)
    {
        this.aaN = android.os.SystemClock.elapsedRealtime();
        p7.putExtra("kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        p7.putExtra("X-kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        String v0_4 = "com.google.android.gsf".equals(com.google.firebase.iid.zzf.aaG);
        if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
            String v2_9 = String.valueOf(p7.getExtras());
            android.util.Log.d("InstanceID/Rpc", new StringBuilder((String.valueOf(v2_9).length() + 8)).append("Sending ").append(v2_9).toString());
        }
        if (v0_4 == null) {
            p7.putExtra("google.messenger", this.Zu);
            if ((this.aaL != null) || (this.aaM != null)) {
                String v0_8 = android.os.Message.obtain();
                v0_8.obj = p7;
                try {
                    if (this.aaL == null) {
                        this.aaM.send(v0_8);
                        return;
                    } else {
                        this.aaL.send(v0_8);
                        return;
                    }
                } catch (String v0) {
                    if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
                        android.util.Log.d("InstanceID/Rpc", "Messenger failed, fallback to startService");
                    }
                }
            }
            this.zzagf.startService(p7);
        } else {
            this.zzagf.startService(p7);
        }
        return;
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getToken', '(Ljava/lang/String; Ljava/lang/String;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzd;', 'getToken', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzd;', 'zzc', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzem', '(Landroid/content/Context;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '()Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '(Lcom/google/firebase/FirebaseApp;)Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Landroid/content/Context; Landroid/os/Bundle;)Lcom/google/firebase/iid/zzd;'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context;)V'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzg;', 'zzkf', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.getToken():


    public String getToken(String p3, String p4)
    {
        return this.bav.getToken(p3, p4, 0);
    }

Method com.google.firebase.iid.zzd.getToken():


    public String getToken(String p7, String p8, android.os.Bundle p9)
    {
        String v1_0 = 0;
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            String v4;
            com.google.firebase.iid.zzg v0_1 = 1;
            if (!this.zzbma()) {
                v4 = com.google.firebase.iid.zzd.baF.zzi(this.aat, p7, p8);
            } else {
                v4 = 0;
            }
            if (v4 == null) {
                if (p9 == null) {
                    p9 = new android.os.Bundle();
                }
                if (p9.getString("ttl") != null) {
                    v0_1 = 0;
                }
                if (!"jwt".equals(p9.getString("type"))) {
                    v1_0 = v0_1;
                }
                v4 = this.zzc(p7, p8, p9);
                if ((v4 != null) && (v1_0 != null)) {
                    com.google.firebase.iid.zzd.baF.zza(this.aat, p7, p8, v4, com.google.firebase.iid.zzd.aav);
                }
            }
            return v4;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzd.zzc():


    public String zzc(String p3, String p4, android.os.Bundle p5)
    {
        if (p4 != null) {
            p5.putString("scope", p4);
        }
        String v0_1;
        p5.putString("sender", p3);
        if (!"".equals(this.aat)) {
            v0_1 = this.aat;
        } else {
            v0_1 = p3;
        }
        if (!p5.containsKey("legacy.register")) {
            p5.putString("subscription", p3);
            p5.putString("subtype", v0_1);
            p5.putString("X-subscription", p3);
            p5.putString("X-subtype", v0_1);
        }
        return com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p5, this.zzblw()));
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.FirebaseInstanceId.zzem():


    static String zzem(android.content.Context p1)
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance().bau.getOptions().getApplicationId();
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static com.google.firebase.iid.FirebaseInstanceId getInstance()
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance(com.google.firebase.FirebaseApp.getInstance());
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static declared_synchronized com.google.firebase.iid.FirebaseInstanceId getInstance(com.google.firebase.FirebaseApp p4)
    {
        try {
            com.google.firebase.iid.FirebaseInstanceId v0_6 = ((com.google.firebase.iid.FirebaseInstanceId) com.google.firebase.iid.FirebaseInstanceId.aap.get(p4.getOptions().getApplicationId()));
        } catch (com.google.firebase.iid.FirebaseInstanceId v0_7) {
            throw v0_7;
        }
        if (v0_6 == null) {
            java.util.Map v2_1 = com.google.firebase.iid.zzd.zzb(p4.getApplicationContext(), 0);
            if (com.google.firebase.iid.FirebaseInstanceId.bat == null) {
                com.google.firebase.iid.FirebaseInstanceId.bat = new com.google.firebase.iid.zze(v2_1.zzcwy());
            }
            v0_6 = new com.google.firebase.iid.FirebaseInstanceId(p4, v2_1);
            com.google.firebase.iid.FirebaseInstanceId.aap.put(p4.getOptions().getApplicationId(), v0_6);
        }
        return v0_6;
    }

Method com.google.firebase.iid.zzd.zzb():


    public static declared_synchronized com.google.firebase.iid.zzd zzb(android.content.Context p4, android.os.Bundle p5)
    {
        try {
            com.google.firebase.iid.zzd v0_13;
            if (p5 != null) {
                v0_13 = p5.getString("subtype");
            } else {
                v0_13 = "";
            }
        } catch (com.google.firebase.iid.zzd v0_12) {
            throw v0_12;
        }
        String v1;
        if (v0_13 != null) {
            v1 = v0_13;
        } else {
            v1 = "";
        }
        java.util.Map v3_0 = p4.getApplicationContext();
        if (com.google.firebase.iid.zzd.baF == null) {
            com.google.firebase.iid.zzd.baF = new com.google.firebase.iid.zzg(v3_0);
            com.google.firebase.iid.zzd.baG = new com.google.firebase.iid.zzf(v3_0);
        }
        com.google.firebase.iid.zzd.aav = Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(v3_0));
        com.google.firebase.iid.zzd v0_10 = ((com.google.firebase.iid.zzd) com.google.firebase.iid.zzd.aap.get(v1));
        if (v0_10 == null) {
            v0_10 = new com.google.firebase.iid.zzd(v3_0, v1, p5);
            com.google.firebase.iid.zzd.aap.put(v1, v0_10);
        }
        return v0_10;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p2)
    {
        this(p2, "com.google.android.gms.appid");
        return;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p4, String p5)
    {
        String v0_2;
        this.zzagf = p4;
        this.aaT = p4.getSharedPreferences(p5, 4);
        String v1 = String.valueOf(p5);
        String v0_0 = String.valueOf("-no-backup");
        if (v0_0.length() == 0) {
            v0_2 = new String(v1);
        } else {
            v0_2 = v1.concat(v0_0);
        }
        this.zzkf(v0_2);
        return;
    }

Method com.google.firebase.iid.zzg.zzkf():


    private void zzkf(String p5)
    {
        String v1_5 = new java.io.File(com.google.android.gms.common.util.zzx.getNoBackupFilesDir(this.zzagf), p5);
        try {
            if ((!v1_5.exists()) && ((v1_5.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzagf, this);
            }
        } catch (String v0_2) {
            if (!android.util.Log.isLoggable("InstanceID/Store", 3)) {
            } else {
                String v0_5 = String.valueOf(v0_2.getMessage());
                if (v0_5.length() == 0) {
                    String v0_7 = new String("Error creating file in no backup dir: ");
                    android.util.Log.d("InstanceID/Store", v0_7);
                } else {
                    v0_7 = "Error creating file in no backup dir: ".concat(v0_5);
                }
            }
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.example.invalidpackage' ==>>> Sink '['Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getToken', '(Ljava/lang/String; Ljava/lang/String;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzd;', 'getToken', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzd;', 'zzc', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzs', '(Landroid/content/Intent;)V'), ('Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;')]]

Use of a string value com.google.example.invalidpackage to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.getToken():


    public String getToken(String p3, String p4)
    {
        return this.bav.getToken(p3, p4, 0);
    }

Method com.google.firebase.iid.zzd.getToken():


    public String getToken(String p7, String p8, android.os.Bundle p9)
    {
        String v1_0 = 0;
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            String v4;
            com.google.firebase.iid.zzg v0_1 = 1;
            if (!this.zzbma()) {
                v4 = com.google.firebase.iid.zzd.baF.zzi(this.aat, p7, p8);
            } else {
                v4 = 0;
            }
            if (v4 == null) {
                if (p9 == null) {
                    p9 = new android.os.Bundle();
                }
                if (p9.getString("ttl") != null) {
                    v0_1 = 0;
                }
                if (!"jwt".equals(p9.getString("type"))) {
                    v1_0 = v0_1;
                }
                v4 = this.zzc(p7, p8, p9);
                if ((v4 != null) && (v1_0 != null)) {
                    com.google.firebase.iid.zzd.baF.zza(this.aat, p7, p8, v4, com.google.firebase.iid.zzd.aav);
                }
            }
            return v4;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzd.zzc():


    public String zzc(String p3, String p4, android.os.Bundle p5)
    {
        if (p4 != null) {
            p5.putString("scope", p4);
        }
        String v0_1;
        p5.putString("sender", p3);
        if (!"".equals(this.aat)) {
            v0_1 = this.aat;
        } else {
            v0_1 = p3;
        }
        if (!p5.containsKey("legacy.register")) {
            p5.putString("subscription", p3);
            p5.putString("subtype", v0_1);
            p5.putString("X-subscription", p3);
            p5.putString("X-subtype", v0_1);
        }
        return com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p5, this.zzblw()));
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzs():


    declared_synchronized void zzs(android.content.Intent p5)
    {
        try {
            if (this.Zq == null) {
                String v0_5 = new android.content.Intent();
                v0_5.setPackage("com.google.example.invalidpackage");
                this.Zq = android.app.PendingIntent.getBroadcast(this.zzagf, 0, v0_5, 0);
            }
        } catch (String v0_2) {
            throw v0_2;
        }
        p5.putExtra("app", this.Zq);
        return;
    }

Method android.content.Intent.setPackage() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getToken', '()Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceIdService;', 'zzen', '(Landroid/content/Context;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.getToken():


    public String getToken()
    {
        String v0 = this.zzcwt();
        if (v0 == null) {
            com.google.firebase.iid.FirebaseInstanceIdService.zzen(this.bau.getApplicationContext());
        }
        return v0;
    }

Method com.google.firebase.iid.FirebaseInstanceIdService.zzen():


    static void zzen(android.content.Context p2)
    {
        if (com.google.firebase.iid.zzf.zzdi(p2) != null) {
            try {
                if (!com.google.firebase.iid.FirebaseInstanceIdService.baB) {
                    p2.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdService.zzafa(0));
                    com.google.firebase.iid.FirebaseInstanceIdService.baB = 1;
                }
            } catch (int v0_2) {
                throw v0_2;
            }
        }
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'google.messenger' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'deleteToken', '(Ljava/lang/String; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)V'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/content/Intent; Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value google.messenger to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.deleteToken():


    public void deleteToken(String p3, String p4)
    {
        this.bav.zzb(p3, p4, 0);
        return;
    }

Method com.google.firebase.iid.zzd.zzb():


    public void zzb(String p4, String p5, android.os.Bundle p6)
    {
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            com.google.firebase.iid.zzd.baF.zzj(this.aat, p4, p5);
            if (p6 == null) {
                p6 = new android.os.Bundle();
            }
            p6.putString("sender", p4);
            if (p5 != null) {
                p6.putString("scope", p5);
            }
            android.content.Intent v0_8;
            p6.putString("subscription", p4);
            p6.putString("delete", "1");
            p6.putString("X-delete", "1");
            if (!"".equals(this.aat)) {
                v0_8 = this.aat;
            } else {
                v0_8 = p4;
            }
            p6.putString("subtype", v0_8);
            if (!"".equals(this.aat)) {
                p4 = this.aat;
            }
            p6.putString("X-subtype", p4);
            com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p6, this.zzblw()));
            return;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzb():


    protected void zzb(android.content.Intent p7, String p8)
    {
        this.aaN = android.os.SystemClock.elapsedRealtime();
        p7.putExtra("kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        p7.putExtra("X-kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        String v0_4 = "com.google.android.gsf".equals(com.google.firebase.iid.zzf.aaG);
        if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
            String v2_9 = String.valueOf(p7.getExtras());
            android.util.Log.d("InstanceID/Rpc", new StringBuilder((String.valueOf(v2_9).length() + 8)).append("Sending ").append(v2_9).toString());
        }
        if (v0_4 == null) {
            p7.putExtra("google.messenger", this.Zu);
            if ((this.aaL != null) || (this.aaM != null)) {
                String v0_8 = android.os.Message.obtain();
                v0_8.obj = p7;
                try {
                    if (this.aaL == null) {
                        this.aaM.send(v0_8);
                        return;
                    } else {
                        this.aaL.send(v0_8);
                        return;
                    }
                } catch (String v0) {
                    if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
                        android.util.Log.d("InstanceID/Rpc", "Messenger failed, fallback to startService");
                    }
                }
            }
            this.zzagf.startService(p7);
        } else {
            this.zzagf.startService(p7);
        }
        return;
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'com.google.example.invalidpackage' ==>>> Sink '['Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'deleteToken', '(Ljava/lang/String; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)V'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzs', '(Landroid/content/Intent;)V'), ('Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;')]]

Use of a string value com.google.example.invalidpackage to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.deleteToken():


    public void deleteToken(String p3, String p4)
    {
        this.bav.zzb(p3, p4, 0);
        return;
    }

Method com.google.firebase.iid.zzd.zzb():


    public void zzb(String p4, String p5, android.os.Bundle p6)
    {
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            com.google.firebase.iid.zzd.baF.zzj(this.aat, p4, p5);
            if (p6 == null) {
                p6 = new android.os.Bundle();
            }
            p6.putString("sender", p4);
            if (p5 != null) {
                p6.putString("scope", p5);
            }
            android.content.Intent v0_8;
            p6.putString("subscription", p4);
            p6.putString("delete", "1");
            p6.putString("X-delete", "1");
            if (!"".equals(this.aat)) {
                v0_8 = this.aat;
            } else {
                v0_8 = p4;
            }
            p6.putString("subtype", v0_8);
            if (!"".equals(this.aat)) {
                p4 = this.aat;
            }
            p6.putString("X-subtype", p4);
            com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p6, this.zzblw()));
            return;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzs():


    declared_synchronized void zzs(android.content.Intent p5)
    {
        try {
            if (this.Zq == null) {
                String v0_5 = new android.content.Intent();
                v0_5.setPackage("com.google.example.invalidpackage");
                this.Zq = android.app.PendingIntent.getBroadcast(this.zzagf, 0, v0_5, 0);
            }
        } catch (String v0_2) {
            throw v0_2;
        }
        p5.putExtra("app", this.Zq);
        return;
    }

Method android.content.Intent.setPackage() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'deleteToken', '(Ljava/lang/String; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)V'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzem', '(Landroid/content/Context;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '()Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '(Lcom/google/firebase/FirebaseApp;)Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Landroid/content/Context; Landroid/os/Bundle;)Lcom/google/firebase/iid/zzd;'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context;)V'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzg;', 'zzkf', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.deleteToken():


    public void deleteToken(String p3, String p4)
    {
        this.bav.zzb(p3, p4, 0);
        return;
    }

Method com.google.firebase.iid.zzd.zzb():


    public void zzb(String p4, String p5, android.os.Bundle p6)
    {
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            com.google.firebase.iid.zzd.baF.zzj(this.aat, p4, p5);
            if (p6 == null) {
                p6 = new android.os.Bundle();
            }
            p6.putString("sender", p4);
            if (p5 != null) {
                p6.putString("scope", p5);
            }
            android.content.Intent v0_8;
            p6.putString("subscription", p4);
            p6.putString("delete", "1");
            p6.putString("X-delete", "1");
            if (!"".equals(this.aat)) {
                v0_8 = this.aat;
            } else {
                v0_8 = p4;
            }
            p6.putString("subtype", v0_8);
            if (!"".equals(this.aat)) {
                p4 = this.aat;
            }
            p6.putString("X-subtype", p4);
            com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p6, this.zzblw()));
            return;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.FirebaseInstanceId.zzem():


    static String zzem(android.content.Context p1)
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance().bau.getOptions().getApplicationId();
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static com.google.firebase.iid.FirebaseInstanceId getInstance()
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance(com.google.firebase.FirebaseApp.getInstance());
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static declared_synchronized com.google.firebase.iid.FirebaseInstanceId getInstance(com.google.firebase.FirebaseApp p4)
    {
        try {
            com.google.firebase.iid.FirebaseInstanceId v0_6 = ((com.google.firebase.iid.FirebaseInstanceId) com.google.firebase.iid.FirebaseInstanceId.aap.get(p4.getOptions().getApplicationId()));
        } catch (com.google.firebase.iid.FirebaseInstanceId v0_7) {
            throw v0_7;
        }
        if (v0_6 == null) {
            java.util.Map v2_1 = com.google.firebase.iid.zzd.zzb(p4.getApplicationContext(), 0);
            if (com.google.firebase.iid.FirebaseInstanceId.bat == null) {
                com.google.firebase.iid.FirebaseInstanceId.bat = new com.google.firebase.iid.zze(v2_1.zzcwy());
            }
            v0_6 = new com.google.firebase.iid.FirebaseInstanceId(p4, v2_1);
            com.google.firebase.iid.FirebaseInstanceId.aap.put(p4.getOptions().getApplicationId(), v0_6);
        }
        return v0_6;
    }

Method com.google.firebase.iid.zzd.zzb():


    public static declared_synchronized com.google.firebase.iid.zzd zzb(android.content.Context p4, android.os.Bundle p5)
    {
        try {
            com.google.firebase.iid.zzd v0_13;
            if (p5 != null) {
                v0_13 = p5.getString("subtype");
            } else {
                v0_13 = "";
            }
        } catch (com.google.firebase.iid.zzd v0_12) {
            throw v0_12;
        }
        String v1;
        if (v0_13 != null) {
            v1 = v0_13;
        } else {
            v1 = "";
        }
        java.util.Map v3_0 = p4.getApplicationContext();
        if (com.google.firebase.iid.zzd.baF == null) {
            com.google.firebase.iid.zzd.baF = new com.google.firebase.iid.zzg(v3_0);
            com.google.firebase.iid.zzd.baG = new com.google.firebase.iid.zzf(v3_0);
        }
        com.google.firebase.iid.zzd.aav = Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(v3_0));
        com.google.firebase.iid.zzd v0_10 = ((com.google.firebase.iid.zzd) com.google.firebase.iid.zzd.aap.get(v1));
        if (v0_10 == null) {
            v0_10 = new com.google.firebase.iid.zzd(v3_0, v1, p5);
            com.google.firebase.iid.zzd.aap.put(v1, v0_10);
        }
        return v0_10;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p2)
    {
        this(p2, "com.google.android.gms.appid");
        return;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p4, String p5)
    {
        String v0_2;
        this.zzagf = p4;
        this.aaT = p4.getSharedPreferences(p5, 4);
        String v1 = String.valueOf(p5);
        String v0_0 = String.valueOf("-no-backup");
        if (v0_0.length() == 0) {
            v0_2 = new String(v1);
        } else {
            v0_2 = v1.concat(v0_0);
        }
        this.zzkf(v0_2);
        return;
    }

Method com.google.firebase.iid.zzg.zzkf():


    private void zzkf(String p5)
    {
        String v1_5 = new java.io.File(com.google.android.gms.common.util.zzx.getNoBackupFilesDir(this.zzagf), p5);
        try {
            if ((!v1_5.exists()) && ((v1_5.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzagf, this);
            }
        } catch (String v0_2) {
            if (!android.util.Log.isLoggable("InstanceID/Store", 3)) {
            } else {
                String v0_5 = String.valueOf(v0_2.getMessage());
                if (v0_5.length() == 0) {
                    String v0_7 = new String("Error creating file in no backup dir: ");
                    android.util.Log.d("InstanceID/Store", v0_7);
                } else {
                    v0_7 = "Error creating file in no backup dir: ".concat(v0_5);
                }
            }
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.example.invalidpackage' ==>>> Sink '['Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'deleteInstanceId', '()V'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)V'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzs', '(Landroid/content/Intent;)V'), ('Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;')]]

Use of a string value com.google.example.invalidpackage to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.deleteInstanceId():


    public void deleteInstanceId()
    {
        this.bav.zzb("*", "*", 0);
        this.bav.zzblx();
        return;
    }

Method com.google.firebase.iid.zzd.zzb():


    public void zzb(String p4, String p5, android.os.Bundle p6)
    {
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            com.google.firebase.iid.zzd.baF.zzj(this.aat, p4, p5);
            if (p6 == null) {
                p6 = new android.os.Bundle();
            }
            p6.putString("sender", p4);
            if (p5 != null) {
                p6.putString("scope", p5);
            }
            android.content.Intent v0_8;
            p6.putString("subscription", p4);
            p6.putString("delete", "1");
            p6.putString("X-delete", "1");
            if (!"".equals(this.aat)) {
                v0_8 = this.aat;
            } else {
                v0_8 = p4;
            }
            p6.putString("subtype", v0_8);
            if (!"".equals(this.aat)) {
                p4 = this.aat;
            }
            p6.putString("X-subtype", p4);
            com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p6, this.zzblw()));
            return;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzs():


    declared_synchronized void zzs(android.content.Intent p5)
    {
        try {
            if (this.Zq == null) {
                String v0_5 = new android.content.Intent();
                v0_5.setPackage("com.google.example.invalidpackage");
                this.Zq = android.app.PendingIntent.getBroadcast(this.zzagf, 0, v0_5, 0);
            }
        } catch (String v0_2) {
            throw v0_2;
        }
        p5.putExtra("app", this.Zq);
        return;
    }

Method android.content.Intent.setPackage() not found.

[TAINT] String 'google.messenger' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'deleteInstanceId', '()V'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)V'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/content/Intent; Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value google.messenger to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.deleteInstanceId():


    public void deleteInstanceId()
    {
        this.bav.zzb("*", "*", 0);
        this.bav.zzblx();
        return;
    }

Method com.google.firebase.iid.zzd.zzb():


    public void zzb(String p4, String p5, android.os.Bundle p6)
    {
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            com.google.firebase.iid.zzd.baF.zzj(this.aat, p4, p5);
            if (p6 == null) {
                p6 = new android.os.Bundle();
            }
            p6.putString("sender", p4);
            if (p5 != null) {
                p6.putString("scope", p5);
            }
            android.content.Intent v0_8;
            p6.putString("subscription", p4);
            p6.putString("delete", "1");
            p6.putString("X-delete", "1");
            if (!"".equals(this.aat)) {
                v0_8 = this.aat;
            } else {
                v0_8 = p4;
            }
            p6.putString("subtype", v0_8);
            if (!"".equals(this.aat)) {
                p4 = this.aat;
            }
            p6.putString("X-subtype", p4);
            com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p6, this.zzblw()));
            return;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.zzf.zzb():


    protected void zzb(android.content.Intent p7, String p8)
    {
        this.aaN = android.os.SystemClock.elapsedRealtime();
        p7.putExtra("kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        p7.putExtra("X-kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        String v0_4 = "com.google.android.gsf".equals(com.google.firebase.iid.zzf.aaG);
        if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
            String v2_9 = String.valueOf(p7.getExtras());
            android.util.Log.d("InstanceID/Rpc", new StringBuilder((String.valueOf(v2_9).length() + 8)).append("Sending ").append(v2_9).toString());
        }
        if (v0_4 == null) {
            p7.putExtra("google.messenger", this.Zu);
            if ((this.aaL != null) || (this.aaM != null)) {
                String v0_8 = android.os.Message.obtain();
                v0_8.obj = p7;
                try {
                    if (this.aaL == null) {
                        this.aaM.send(v0_8);
                        return;
                    } else {
                        this.aaL.send(v0_8);
                        return;
                    }
                } catch (String v0) {
                    if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
                        android.util.Log.d("InstanceID/Rpc", "Messenger failed, fallback to startService");
                    }
                }
            }
            this.zzagf.startService(p7);
        } else {
            this.zzagf.startService(p7);
        }
        return;
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'deleteInstanceId', '()V'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)V'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/firebase/iid/zzf;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzem', '(Landroid/content/Context;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '()Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '(Lcom/google/firebase/FirebaseApp;)Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Landroid/content/Context; Landroid/os/Bundle;)Lcom/google/firebase/iid/zzd;'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context;)V'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzg;', 'zzkf', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.deleteInstanceId():


    public void deleteInstanceId()
    {
        this.bav.zzb("*", "*", 0);
        this.bav.zzblx();
        return;
    }

Method com.google.firebase.iid.zzd.zzb():


    public void zzb(String p4, String p5, android.os.Bundle p6)
    {
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            com.google.firebase.iid.zzd.baF.zzj(this.aat, p4, p5);
            if (p6 == null) {
                p6 = new android.os.Bundle();
            }
            p6.putString("sender", p4);
            if (p5 != null) {
                p6.putString("scope", p5);
            }
            android.content.Intent v0_8;
            p6.putString("subscription", p4);
            p6.putString("delete", "1");
            p6.putString("X-delete", "1");
            if (!"".equals(this.aat)) {
                v0_8 = this.aat;
            } else {
                v0_8 = p4;
            }
            p6.putString("subtype", v0_8);
            if (!"".equals(this.aat)) {
                p4 = this.aat;
            }
            p6.putString("X-subtype", p4);
            com.google.firebase.iid.zzd.baG.zzt(com.google.firebase.iid.zzd.baG.zza(p6, this.zzblw()));
            return;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.firebase.iid.zzf.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.firebase.iid.zzf.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.firebase.iid.zzf.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.firebase.iid.zzf.zza():


    public void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.firebase.iid.zzf.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_9 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_9.setPackage(com.google.firebase.iid.zzf.aaG);
                p7.putString("gmsv", Integer.toString(com.google.firebase.iid.zzf.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.firebase.iid.FirebaseInstanceId.zzdg(this.zzagf));
                p7.putString("cliv", "fiid-9452000");
                p7.putString("appid", com.google.firebase.iid.FirebaseInstanceId.zza(p8));
                String v1_12 = com.google.firebase.iid.FirebaseInstanceId.zzem(this.zzagf);
                if (v1_12 != null) {
                    p7.putString("gmp_app_id", v1_12);
                }
                String v1_15 = com.google.firebase.iid.FirebaseInstanceId.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_15);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_15;
                p7.putString("sig", com.google.firebase.iid.zzf.zza(p8, v3_1));
                v0_9.putExtras(p7);
                this.zzs(v0_9);
                this.zzb(v0_9, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.firebase.iid.FirebaseInstanceId.zzem():


    static String zzem(android.content.Context p1)
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance().bau.getOptions().getApplicationId();
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static com.google.firebase.iid.FirebaseInstanceId getInstance()
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance(com.google.firebase.FirebaseApp.getInstance());
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static declared_synchronized com.google.firebase.iid.FirebaseInstanceId getInstance(com.google.firebase.FirebaseApp p4)
    {
        try {
            com.google.firebase.iid.FirebaseInstanceId v0_6 = ((com.google.firebase.iid.FirebaseInstanceId) com.google.firebase.iid.FirebaseInstanceId.aap.get(p4.getOptions().getApplicationId()));
        } catch (com.google.firebase.iid.FirebaseInstanceId v0_7) {
            throw v0_7;
        }
        if (v0_6 == null) {
            java.util.Map v2_1 = com.google.firebase.iid.zzd.zzb(p4.getApplicationContext(), 0);
            if (com.google.firebase.iid.FirebaseInstanceId.bat == null) {
                com.google.firebase.iid.FirebaseInstanceId.bat = new com.google.firebase.iid.zze(v2_1.zzcwy());
            }
            v0_6 = new com.google.firebase.iid.FirebaseInstanceId(p4, v2_1);
            com.google.firebase.iid.FirebaseInstanceId.aap.put(p4.getOptions().getApplicationId(), v0_6);
        }
        return v0_6;
    }

Method com.google.firebase.iid.zzd.zzb():


    public static declared_synchronized com.google.firebase.iid.zzd zzb(android.content.Context p4, android.os.Bundle p5)
    {
        try {
            com.google.firebase.iid.zzd v0_13;
            if (p5 != null) {
                v0_13 = p5.getString("subtype");
            } else {
                v0_13 = "";
            }
        } catch (com.google.firebase.iid.zzd v0_12) {
            throw v0_12;
        }
        String v1;
        if (v0_13 != null) {
            v1 = v0_13;
        } else {
            v1 = "";
        }
        java.util.Map v3_0 = p4.getApplicationContext();
        if (com.google.firebase.iid.zzd.baF == null) {
            com.google.firebase.iid.zzd.baF = new com.google.firebase.iid.zzg(v3_0);
            com.google.firebase.iid.zzd.baG = new com.google.firebase.iid.zzf(v3_0);
        }
        com.google.firebase.iid.zzd.aav = Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(v3_0));
        com.google.firebase.iid.zzd v0_10 = ((com.google.firebase.iid.zzd) com.google.firebase.iid.zzd.aap.get(v1));
        if (v0_10 == null) {
            v0_10 = new com.google.firebase.iid.zzd(v3_0, v1, p5);
            com.google.firebase.iid.zzd.aap.put(v1, v0_10);
        }
        return v0_10;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p2)
    {
        this(p2, "com.google.android.gms.appid");
        return;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p4, String p5)
    {
        String v0_2;
        this.zzagf = p4;
        this.aaT = p4.getSharedPreferences(p5, 4);
        String v1 = String.valueOf(p5);
        String v0_0 = String.valueOf("-no-backup");
        if (v0_0.length() == 0) {
            v0_2 = new String(v1);
        } else {
            v0_2 = v1.concat(v0_0);
        }
        this.zzkf(v0_2);
        return;
    }

Method com.google.firebase.iid.zzg.zzkf():


    private void zzkf(String p5)
    {
        String v1_5 = new java.io.File(com.google.android.gms.common.util.zzx.getNoBackupFilesDir(this.zzagf), p5);
        try {
            if ((!v1_5.exists()) && ((v1_5.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzagf, this);
            }
        } catch (String v0_2) {
            if (!android.util.Log.isLoggable("InstanceID/Store", 3)) {
            } else {
                String v0_5 = String.valueOf(v0_2.getMessage());
                if (v0_5.length() == 0) {
                    String v0_7 = new String("Error creating file in no backup dir: ");
                    android.util.Log.d("InstanceID/Store", v0_7);
                } else {
                    v0_7 = "Error creating file in no backup dir: ".concat(v0_5);
                }
            }
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzem', '(Landroid/content/Context;)Ljava/lang/String;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '()Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '(Lcom/google/firebase/FirebaseApp;)Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Landroid/content/Context; Landroid/os/Bundle;)Lcom/google/firebase/iid/zzd;'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context;)V'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzg;', 'zzkf', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.zzem():


    static String zzem(android.content.Context p1)
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance().bau.getOptions().getApplicationId();
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static com.google.firebase.iid.FirebaseInstanceId getInstance()
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance(com.google.firebase.FirebaseApp.getInstance());
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static declared_synchronized com.google.firebase.iid.FirebaseInstanceId getInstance(com.google.firebase.FirebaseApp p4)
    {
        try {
            com.google.firebase.iid.FirebaseInstanceId v0_6 = ((com.google.firebase.iid.FirebaseInstanceId) com.google.firebase.iid.FirebaseInstanceId.aap.get(p4.getOptions().getApplicationId()));
        } catch (com.google.firebase.iid.FirebaseInstanceId v0_7) {
            throw v0_7;
        }
        if (v0_6 == null) {
            java.util.Map v2_1 = com.google.firebase.iid.zzd.zzb(p4.getApplicationContext(), 0);
            if (com.google.firebase.iid.FirebaseInstanceId.bat == null) {
                com.google.firebase.iid.FirebaseInstanceId.bat = new com.google.firebase.iid.zze(v2_1.zzcwy());
            }
            v0_6 = new com.google.firebase.iid.FirebaseInstanceId(p4, v2_1);
            com.google.firebase.iid.FirebaseInstanceId.aap.put(p4.getOptions().getApplicationId(), v0_6);
        }
        return v0_6;
    }

Method com.google.firebase.iid.zzd.zzb():


    public static declared_synchronized com.google.firebase.iid.zzd zzb(android.content.Context p4, android.os.Bundle p5)
    {
        try {
            com.google.firebase.iid.zzd v0_13;
            if (p5 != null) {
                v0_13 = p5.getString("subtype");
            } else {
                v0_13 = "";
            }
        } catch (com.google.firebase.iid.zzd v0_12) {
            throw v0_12;
        }
        String v1;
        if (v0_13 != null) {
            v1 = v0_13;
        } else {
            v1 = "";
        }
        java.util.Map v3_0 = p4.getApplicationContext();
        if (com.google.firebase.iid.zzd.baF == null) {
            com.google.firebase.iid.zzd.baF = new com.google.firebase.iid.zzg(v3_0);
            com.google.firebase.iid.zzd.baG = new com.google.firebase.iid.zzf(v3_0);
        }
        com.google.firebase.iid.zzd.aav = Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(v3_0));
        com.google.firebase.iid.zzd v0_10 = ((com.google.firebase.iid.zzd) com.google.firebase.iid.zzd.aap.get(v1));
        if (v0_10 == null) {
            v0_10 = new com.google.firebase.iid.zzd(v3_0, v1, p5);
            com.google.firebase.iid.zzd.aap.put(v1, v0_10);
        }
        return v0_10;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p2)
    {
        this(p2, "com.google.android.gms.appid");
        return;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p4, String p5)
    {
        String v0_2;
        this.zzagf = p4;
        this.aaT = p4.getSharedPreferences(p5, 4);
        String v1 = String.valueOf(p5);
        String v0_0 = String.valueOf("-no-backup");
        if (v0_0.length() == 0) {
            v0_2 = new String(v1);
        } else {
            v0_2 = v1.concat(v0_0);
        }
        this.zzkf(v0_2);
        return;
    }

Method com.google.firebase.iid.zzg.zzkf():


    private void zzkf(String p5)
    {
        String v1_5 = new java.io.File(com.google.android.gms.common.util.zzx.getNoBackupFilesDir(this.zzagf), p5);
        try {
            if ((!v1_5.exists()) && ((v1_5.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzagf, this);
            }
        } catch (String v0_2) {
            if (!android.util.Log.isLoggable("InstanceID/Store", 3)) {
            } else {
                String v0_5 = String.valueOf(v0_2.getMessage());
                if (v0_5.length() == 0) {
                    String v0_7 = new String("Error creating file in no backup dir: ");
                    android.util.Log.d("InstanceID/Store", v0_7);
                } else {
                    v0_7 = "Error creating file in no backup dir: ".concat(v0_5);
                }
            }
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zzdh', '(Landroid/content/Context;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.zzdh():


    static void zzdh(android.content.Context p3)
    {
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.setPackage(p3.getPackageName());
        v0_1.putExtra("CMD", "SYNC");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '(Lcom/google/firebase/FirebaseApp;)Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Landroid/content/Context; Landroid/os/Bundle;)Lcom/google/firebase/iid/zzd;'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context;)V'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzg;', 'zzkf', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static declared_synchronized com.google.firebase.iid.FirebaseInstanceId getInstance(com.google.firebase.FirebaseApp p4)
    {
        try {
            com.google.firebase.iid.FirebaseInstanceId v0_6 = ((com.google.firebase.iid.FirebaseInstanceId) com.google.firebase.iid.FirebaseInstanceId.aap.get(p4.getOptions().getApplicationId()));
        } catch (com.google.firebase.iid.FirebaseInstanceId v0_7) {
            throw v0_7;
        }
        if (v0_6 == null) {
            java.util.Map v2_1 = com.google.firebase.iid.zzd.zzb(p4.getApplicationContext(), 0);
            if (com.google.firebase.iid.FirebaseInstanceId.bat == null) {
                com.google.firebase.iid.FirebaseInstanceId.bat = new com.google.firebase.iid.zze(v2_1.zzcwy());
            }
            v0_6 = new com.google.firebase.iid.FirebaseInstanceId(p4, v2_1);
            com.google.firebase.iid.FirebaseInstanceId.aap.put(p4.getOptions().getApplicationId(), v0_6);
        }
        return v0_6;
    }

Method com.google.firebase.iid.zzd.zzb():


    public static declared_synchronized com.google.firebase.iid.zzd zzb(android.content.Context p4, android.os.Bundle p5)
    {
        try {
            com.google.firebase.iid.zzd v0_13;
            if (p5 != null) {
                v0_13 = p5.getString("subtype");
            } else {
                v0_13 = "";
            }
        } catch (com.google.firebase.iid.zzd v0_12) {
            throw v0_12;
        }
        String v1;
        if (v0_13 != null) {
            v1 = v0_13;
        } else {
            v1 = "";
        }
        java.util.Map v3_0 = p4.getApplicationContext();
        if (com.google.firebase.iid.zzd.baF == null) {
            com.google.firebase.iid.zzd.baF = new com.google.firebase.iid.zzg(v3_0);
            com.google.firebase.iid.zzd.baG = new com.google.firebase.iid.zzf(v3_0);
        }
        com.google.firebase.iid.zzd.aav = Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(v3_0));
        com.google.firebase.iid.zzd v0_10 = ((com.google.firebase.iid.zzd) com.google.firebase.iid.zzd.aap.get(v1));
        if (v0_10 == null) {
            v0_10 = new com.google.firebase.iid.zzd(v3_0, v1, p5);
            com.google.firebase.iid.zzd.aap.put(v1, v0_10);
        }
        return v0_10;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p2)
    {
        this(p2, "com.google.android.gms.appid");
        return;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p4, String p5)
    {
        String v0_2;
        this.zzagf = p4;
        this.aaT = p4.getSharedPreferences(p5, 4);
        String v1 = String.valueOf(p5);
        String v0_0 = String.valueOf("-no-backup");
        if (v0_0.length() == 0) {
            v0_2 = new String(v1);
        } else {
            v0_2 = v1.concat(v0_0);
        }
        this.zzkf(v0_2);
        return;
    }

Method com.google.firebase.iid.zzg.zzkf():


    private void zzkf(String p5)
    {
        String v1_5 = new java.io.File(com.google.android.gms.common.util.zzx.getNoBackupFilesDir(this.zzagf), p5);
        try {
            if ((!v1_5.exists()) && ((v1_5.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzagf, this);
            }
        } catch (String v0_2) {
            if (!android.util.Log.isLoggable("InstanceID/Store", 3)) {
            } else {
                String v0_5 = String.valueOf(v0_2.getMessage());
                if (v0_5.length() == 0) {
                    String v0_7 = new String("Error creating file in no backup dir: ");
                    android.util.Log.d("InstanceID/Store", v0_7);
                } else {
                    v0_7 = "Error creating file in no backup dir: ".concat(v0_5);
                }
            }
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '()Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'getInstance', '(Lcom/google/firebase/FirebaseApp;)Lcom/google/firebase/iid/FirebaseInstanceId;'), ('Lcom/google/firebase/iid/zzd;', 'zzb', '(Landroid/content/Context; Landroid/os/Bundle;)Lcom/google/firebase/iid/zzd;'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context;)V'), ('Lcom/google/firebase/iid/zzg;', '<init>', '(Landroid/content/Context; Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/zzg;', 'zzkf', '(Ljava/lang/String;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceId;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/zzg;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static com.google.firebase.iid.FirebaseInstanceId getInstance()
    {
        return com.google.firebase.iid.FirebaseInstanceId.getInstance(com.google.firebase.FirebaseApp.getInstance());
    }

Method com.google.firebase.iid.FirebaseInstanceId.getInstance():


    public static declared_synchronized com.google.firebase.iid.FirebaseInstanceId getInstance(com.google.firebase.FirebaseApp p4)
    {
        try {
            com.google.firebase.iid.FirebaseInstanceId v0_6 = ((com.google.firebase.iid.FirebaseInstanceId) com.google.firebase.iid.FirebaseInstanceId.aap.get(p4.getOptions().getApplicationId()));
        } catch (com.google.firebase.iid.FirebaseInstanceId v0_7) {
            throw v0_7;
        }
        if (v0_6 == null) {
            java.util.Map v2_1 = com.google.firebase.iid.zzd.zzb(p4.getApplicationContext(), 0);
            if (com.google.firebase.iid.FirebaseInstanceId.bat == null) {
                com.google.firebase.iid.FirebaseInstanceId.bat = new com.google.firebase.iid.zze(v2_1.zzcwy());
            }
            v0_6 = new com.google.firebase.iid.FirebaseInstanceId(p4, v2_1);
            com.google.firebase.iid.FirebaseInstanceId.aap.put(p4.getOptions().getApplicationId(), v0_6);
        }
        return v0_6;
    }

Method com.google.firebase.iid.zzd.zzb():


    public static declared_synchronized com.google.firebase.iid.zzd zzb(android.content.Context p4, android.os.Bundle p5)
    {
        try {
            com.google.firebase.iid.zzd v0_13;
            if (p5 != null) {
                v0_13 = p5.getString("subtype");
            } else {
                v0_13 = "";
            }
        } catch (com.google.firebase.iid.zzd v0_12) {
            throw v0_12;
        }
        String v1;
        if (v0_13 != null) {
            v1 = v0_13;
        } else {
            v1 = "";
        }
        java.util.Map v3_0 = p4.getApplicationContext();
        if (com.google.firebase.iid.zzd.baF == null) {
            com.google.firebase.iid.zzd.baF = new com.google.firebase.iid.zzg(v3_0);
            com.google.firebase.iid.zzd.baG = new com.google.firebase.iid.zzf(v3_0);
        }
        com.google.firebase.iid.zzd.aav = Integer.toString(com.google.firebase.iid.FirebaseInstanceId.zzdf(v3_0));
        com.google.firebase.iid.zzd v0_10 = ((com.google.firebase.iid.zzd) com.google.firebase.iid.zzd.aap.get(v1));
        if (v0_10 == null) {
            v0_10 = new com.google.firebase.iid.zzd(v3_0, v1, p5);
            com.google.firebase.iid.zzd.aap.put(v1, v0_10);
        }
        return v0_10;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p2)
    {
        this(p2, "com.google.android.gms.appid");
        return;
    }

Method com.google.firebase.iid.zzg.<init>():


    public zzg(android.content.Context p4, String p5)
    {
        String v0_2;
        this.zzagf = p4;
        this.aaT = p4.getSharedPreferences(p5, 4);
        String v1 = String.valueOf(p5);
        String v0_0 = String.valueOf("-no-backup");
        if (v0_0.length() == 0) {
            v0_2 = new String(v1);
        } else {
            v0_2 = v1.concat(v0_0);
        }
        this.zzkf(v0_2);
        return;
    }

Method com.google.firebase.iid.zzg.zzkf():


    private void zzkf(String p5)
    {
        String v1_5 = new java.io.File(com.google.android.gms.common.util.zzx.getNoBackupFilesDir(this.zzagf), p5);
        try {
            if ((!v1_5.exists()) && ((v1_5.createNewFile()) && (!this.isEmpty()))) {
                android.util.Log.i("InstanceID/Store", "App restored, clearing state");
                com.google.firebase.iid.FirebaseInstanceId.zza(this.zzagf, this);
            }
        } catch (String v0_2) {
            if (!android.util.Log.isLoggable("InstanceID/Store", 3)) {
            } else {
                String v0_5 = String.valueOf(v0_2.getMessage());
                if (v0_5.length() == 0) {
                    String v0_7 = new String("Error creating file in no backup dir: ");
                    android.util.Log.d("InstanceID/Store", v0_7);
                } else {
                    v0_7 = "Error creating file in no backup dir: ".concat(v0_5);
                }
            }
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceId.zza():


    static void zza(android.content.Context p3, com.google.firebase.iid.zzg p4)
    {
        p4.zzbmd();
        android.content.Intent v0_1 = new android.content.Intent();
        v0_1.putExtra("CMD", "RST");
        p3.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdInternalReceiver.zzh(p3, v0_1));
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'com.google.firebase.INSTANCE_ID_EVENT' ==>>> Sink '['Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V', '0', 'IPC_SINK']' [[('Lcom/google/firebase/iid/FirebaseInstanceId;', '<init>', '(Lcom/google/firebase/FirebaseApp; Lcom/google/firebase/iid/zzd;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceIdService;', 'zza', '(Landroid/content/Context; Lcom/google/firebase/iid/FirebaseInstanceId;)V'), ('Lcom/google/firebase/iid/FirebaseInstanceIdService;', 'zzen', '(Landroid/content/Context;)V'), ('Landroid/content/Context;', 'sendBroadcast', '(Landroid/content/Intent;)V')]]

Use of a string value com.google.firebase.INSTANCE_ID_EVENT to construct an Intent

Method com.google.firebase.iid.FirebaseInstanceId.<init>():


    private FirebaseInstanceId(com.google.firebase.FirebaseApp p3, com.google.firebase.iid.zzd p4)
    {
        this.bau = p3;
        this.bav = p4;
        this.baw = this.zzcws();
        if (this.baw != null) {
            com.google.firebase.iid.FirebaseInstanceIdService.zza(this.bau.getApplicationContext(), this);
            return;
        } else {
            throw new IllegalStateException("IID failing to initialize, FirebaseApp is missing project ID");
        }
    }

Method com.google.firebase.iid.FirebaseInstanceIdService.zza():


    static void zza(android.content.Context p2, com.google.firebase.iid.FirebaseInstanceId p3)
    {
        if (!com.google.firebase.iid.FirebaseInstanceIdService.baB) {
            if ((p3.zzcwt() == null) || (p3.zzcwv().zzcxa() != null)) {
                com.google.firebase.iid.FirebaseInstanceIdService.zzen(p2);
            }
        } else {
        }
        return;
    }

Method com.google.firebase.iid.FirebaseInstanceIdService.zzen():


    static void zzen(android.content.Context p2)
    {
        if (com.google.firebase.iid.zzf.zzdi(p2) != null) {
            try {
                if (!com.google.firebase.iid.FirebaseInstanceIdService.baB) {
                    p2.sendBroadcast(com.google.firebase.iid.FirebaseInstanceIdService.zzafa(0));
                    com.google.firebase.iid.FirebaseInstanceIdService.baB = 1;
                }
            } catch (int v0_2) {
                throw v0_2;
            }
        }
        return;
    }

Method android.content.Context.sendBroadcast() not found.

[TAINT] String 'google.messenger' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Ljava/lang/String;)Landroid/content/Intent;', '1', 'IPC_SINK']' [[('Lcom/dieam/reactnativepushnotification/modules/RNPushNotificationRegistrationService;', 'onHandleIntent', '(Landroid/content/Intent;)V'), ('Lcom/dieam/reactnativepushnotification/modules/RNPushNotificationRegistrationService;', 'sendRegistrationToken', '(Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Ljava/lang/String;)Landroid/content/Intent;')]]

Use of a string value google.messenger to construct an Intent

Method com.dieam.reactnativepushnotification.modules.RNPushNotificationRegistrationService.onHandleIntent():


    protected void onHandleIntent(android.content.Intent p7)
    {
        try {
            this.sendRegistrationToken(com.google.android.gms.iid.InstanceID.getInstance(this).getToken(p7.getStringExtra("senderID"), "GCM", 0));
        } catch (Exception v1) {
            v1.printStackTrace();
        }
        return;
    }

Method com.dieam.reactnativepushnotification.modules.RNPushNotificationRegistrationService.sendRegistrationToken():


    private void sendRegistrationToken(String p4)
    {
        android.content.Intent v0_1 = new android.content.Intent(new StringBuilder().append(this.getPackageName()).append(".RNPushNotificationRegisteredToken").toString());
        v0_1.putExtra("token", p4);
        this.sendBroadcast(v0_1);
        return;
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String '.RNPushNotificationRegisteredToken' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V', '0', 'IPC_SINK']' [[('Lcom/dieam/reactnativepushnotification/modules/RNPushNotificationRegistrationService;', 'onHandleIntent', '(Landroid/content/Intent;)V'), ('Lcom/dieam/reactnativepushnotification/modules/RNPushNotificationRegistrationService;', 'sendRegistrationToken', '(Ljava/lang/String;)V'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V')]]

Use of a string value .RNPushNotificationRegisteredToken to construct an Intent

Method com.dieam.reactnativepushnotification.modules.RNPushNotificationRegistrationService.onHandleIntent():


    protected void onHandleIntent(android.content.Intent p7)
    {
        try {
            this.sendRegistrationToken(com.google.android.gms.iid.InstanceID.getInstance(this).getToken(p7.getStringExtra("senderID"), "GCM", 0));
        } catch (Exception v1) {
            v1.printStackTrace();
        }
        return;
    }

Method com.dieam.reactnativepushnotification.modules.RNPushNotificationRegistrationService.sendRegistrationToken():


    private void sendRegistrationToken(String p4)
    {
        android.content.Intent v0_1 = new android.content.Intent(new StringBuilder().append(this.getPackageName()).append(".RNPushNotificationRegisteredToken").toString());
        v0_1.putExtra("token", p4);
        this.sendBroadcast(v0_1);
        return;
    }

Method android.content.Intent.<init>() not found.

[TAINT] String 'google.messenger' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/dieam/reactnativepushnotification/modules/RNPushNotificationRegistrationService;', 'onHandleIntent', '(Landroid/content/Intent;)V'), ('Lcom/google/android/gms/iid/InstanceID;', 'getToken', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/android/gms/iid/InstanceID;', 'zzc', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/android/gms/iid/zzc;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/android/gms/iid/zzc;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/android/gms/iid/zzc;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/android/gms/iid/zzc;', 'zzb', '(Landroid/content/Intent; Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value google.messenger to construct an Intent

Method com.dieam.reactnativepushnotification.modules.RNPushNotificationRegistrationService.onHandleIntent():


    protected void onHandleIntent(android.content.Intent p7)
    {
        try {
            this.sendRegistrationToken(com.google.android.gms.iid.InstanceID.getInstance(this).getToken(p7.getStringExtra("senderID"), "GCM", 0));
        } catch (Exception v1) {
            v1.printStackTrace();
        }
        return;
    }

Method com.google.android.gms.iid.InstanceID.getToken():


    public String getToken(String p7, String p8, android.os.Bundle p9)
    {
        String v1_0 = 0;
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            String v4;
            com.google.android.gms.iid.zzd v0_1 = 1;
            if (!this.zzbma()) {
                v4 = com.google.android.gms.iid.InstanceID.aaq.zzi(this.aat, p7, p8);
            } else {
                v4 = 0;
            }
            if (v4 == null) {
                if (p9 == null) {
                    p9 = new android.os.Bundle();
                }
                if (p9.getString("ttl") != null) {
                    v0_1 = 0;
                }
                if (!"jwt".equals(p9.getString("type"))) {
                    v1_0 = v0_1;
                }
                v4 = this.zzc(p7, p8, p9);
                if ((v4 != null) && (v1_0 != null)) {
                    com.google.android.gms.iid.InstanceID.aaq.zza(this.aat, p7, p8, v4, com.google.android.gms.iid.InstanceID.aav);
                }
            }
            return v4;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.android.gms.iid.InstanceID.zzc():


    public String zzc(String p3, String p4, android.os.Bundle p5)
    {
        if (p4 != null) {
            p5.putString("scope", p4);
        }
        String v0_1;
        p5.putString("sender", p3);
        if (!"".equals(this.aat)) {
            v0_1 = this.aat;
        } else {
            v0_1 = p3;
        }
        if (!p5.containsKey("legacy.register")) {
            p5.putString("subscription", p3);
            p5.putString("subtype", v0_1);
            p5.putString("X-subscription", p3);
            p5.putString("X-subtype", v0_1);
        }
        return com.google.android.gms.iid.InstanceID.aar.zzt(com.google.android.gms.iid.InstanceID.aar.zza(p5, this.zzblw()));
    }

Method com.google.android.gms.iid.zzc.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.android.gms.iid.zzc.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.android.gms.iid.zzc.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.android.gms.iid.zzc.zza():


    void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.android.gms.iid.zzc.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_6 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_6.setPackage(com.google.android.gms.iid.zzc.aaG);
                p7.putString("gmsv", Integer.toString(com.google.android.gms.iid.zzc.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.android.gms.iid.InstanceID.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.android.gms.iid.InstanceID.zzdg(this.zzagf));
                p7.putString("cliv", "iid-9452000");
                p7.putString("appid", com.google.android.gms.iid.InstanceID.zza(p8));
                String v1_13 = com.google.android.gms.iid.InstanceID.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_13);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_13;
                p7.putString("sig", com.google.android.gms.iid.zzc.zza(p8, v3_1));
                v0_6.putExtras(p7);
                this.zzs(v0_6);
                this.zzb(v0_6, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.android.gms.iid.zzc.zzb():


    protected void zzb(android.content.Intent p7, String p8)
    {
        this.aaN = android.os.SystemClock.elapsedRealtime();
        p7.putExtra("kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        p7.putExtra("X-kid", new StringBuilder((String.valueOf(p8).length() + 5)).append("|ID|").append(p8).append("|").toString());
        String v0_12 = "com.google.android.gsf".equals(com.google.android.gms.iid.zzc.aaG);
        String v1_21 = p7.getStringExtra("useGsf");
        if (v1_21 != null) {
            v0_12 = "1".equals(v1_21);
        }
        if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
            String v2_9 = String.valueOf(p7.getExtras());
            android.util.Log.d("InstanceID/Rpc", new StringBuilder((String.valueOf(v2_9).length() + 8)).append("Sending ").append(v2_9).toString());
        }
        if (this.aaL == null) {
            if (v0_12 == null) {
                p7.putExtra("google.messenger", this.Zu);
                p7.putExtra("messenger2", "1");
                if (this.aaM != null) {
                    String v0_1 = android.os.Message.obtain();
                    v0_1.obj = p7;
                    try {
                        this.aaM.send(v0_1);
                    } catch (String v0) {
                        if (android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
                            android.util.Log.d("InstanceID/Rpc", "Messenger failed, fallback to startService");
                        }
                    }
                    return;
                }
                this.zzagf.startService(p7);
            } else {
                String v0_7 = new android.content.Intent("com.google.android.gms.iid.InstanceID");
                v0_7.setPackage(this.zzagf.getPackageName());
                v0_7.putExtra("GSF", p7);
                this.zzagf.startService(v0_7);
            }
        } else {
            p7.putExtra("google.messenger", this.Zu);
            String v1_28 = android.os.Message.obtain();
            v1_28.obj = p7;
            try {
                this.aaL.send(v1_28);
            } catch (String v1) {
                if (!android.util.Log.isLoggable("InstanceID/Rpc", 3)) {
                } else {
                    android.util.Log.d("InstanceID/Rpc", "Messenger failed, fallback to startService");
                }
            }
        }
        return;
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'com.google.example.invalidpackage' ==>>> Sink '['Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/dieam/reactnativepushnotification/modules/RNPushNotificationRegistrationService;', 'onHandleIntent', '(Landroid/content/Intent;)V'), ('Lcom/google/android/gms/iid/InstanceID;', 'getToken', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/android/gms/iid/InstanceID;', 'zzc', '(Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Ljava/lang/String;'), ('Lcom/google/android/gms/iid/zzc;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/android/gms/iid/zzc;', 'zzb', '(Landroid/os/Bundle; Ljava/security/KeyPair;)Landroid/content/Intent;'), ('Lcom/google/android/gms/iid/zzc;', 'zza', '(Landroid/os/Bundle; Ljava/security/KeyPair; Ljava/lang/String;)V'), ('Lcom/google/android/gms/iid/zzc;', 'zzs', '(Landroid/content/Intent;)V'), ('Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;')]]

Use of a string value com.google.example.invalidpackage to construct an Intent

Method com.dieam.reactnativepushnotification.modules.RNPushNotificationRegistrationService.onHandleIntent():


    protected void onHandleIntent(android.content.Intent p7)
    {
        try {
            this.sendRegistrationToken(com.google.android.gms.iid.InstanceID.getInstance(this).getToken(p7.getStringExtra("senderID"), "GCM", 0));
        } catch (Exception v1) {
            v1.printStackTrace();
        }
        return;
    }

Method com.google.android.gms.iid.InstanceID.getToken():


    public String getToken(String p7, String p8, android.os.Bundle p9)
    {
        String v1_0 = 0;
        if (android.os.Looper.getMainLooper() != android.os.Looper.myLooper()) {
            String v4;
            com.google.android.gms.iid.zzd v0_1 = 1;
            if (!this.zzbma()) {
                v4 = com.google.android.gms.iid.InstanceID.aaq.zzi(this.aat, p7, p8);
            } else {
                v4 = 0;
            }
            if (v4 == null) {
                if (p9 == null) {
                    p9 = new android.os.Bundle();
                }
                if (p9.getString("ttl") != null) {
                    v0_1 = 0;
                }
                if (!"jwt".equals(p9.getString("type"))) {
                    v1_0 = v0_1;
                }
                v4 = this.zzc(p7, p8, p9);
                if ((v4 != null) && (v1_0 != null)) {
                    com.google.android.gms.iid.InstanceID.aaq.zza(this.aat, p7, p8, v4, com.google.android.gms.iid.InstanceID.aav);
                }
            }
            return v4;
        } else {
            throw new java.io.IOException("MAIN_THREAD");
        }
    }

Method com.google.android.gms.iid.InstanceID.zzc():


    public String zzc(String p3, String p4, android.os.Bundle p5)
    {
        if (p4 != null) {
            p5.putString("scope", p4);
        }
        String v0_1;
        p5.putString("sender", p3);
        if (!"".equals(this.aat)) {
            v0_1 = this.aat;
        } else {
            v0_1 = p3;
        }
        if (!p5.containsKey("legacy.register")) {
            p5.putString("subscription", p3);
            p5.putString("subtype", v0_1);
            p5.putString("X-subscription", p3);
            p5.putString("X-subtype", v0_1);
        }
        return com.google.android.gms.iid.InstanceID.aar.zzt(com.google.android.gms.iid.InstanceID.aar.zza(p5, this.zzblw()));
    }

Method com.google.android.gms.iid.zzc.zza():


    android.content.Intent zza(android.os.Bundle p3, java.security.KeyPair p4)
    {
        android.content.Intent v0 = this.zzb(p3, p4);
        if ((v0 != null) && (v0.hasExtra("google.messenger"))) {
            v0 = this.zzb(p3, p4);
        }
        return v0;
    }

Method com.google.android.gms.iid.zzc.zzb():


    private android.content.Intent zzb(android.os.Bundle p6, java.security.KeyPair p7)
    {
        java.io.IOException v0_1 = new android.os.ConditionVariable();
        String v1_3 = com.google.android.gms.iid.zzc.zzbmc();
        this.getClass();
        this.aaK.put(v1_3, v0_1);
        this.zza(p6, p7, v1_3);
        v0_1.block(30000);
        this.getClass();
        try {
            java.io.IOException v0_4 = this.aaK.remove(v1_3);
        } catch (java.io.IOException v0_11) {
            throw v0_11;
        }
        if (!(v0_4 instanceof android.content.Intent)) {
            if (!(v0_4 instanceof String)) {
                java.io.IOException v0_5 = String.valueOf(v0_4);
                android.util.Log.w("InstanceID/Rpc", new StringBuilder((String.valueOf(v0_5).length() + 12)).append("No response ").append(v0_5).toString());
                throw new java.io.IOException("TIMEOUT");
            } else {
                throw new java.io.IOException(((String) v0_4));
            }
        } else {
            return ((android.content.Intent) v0_4);
        }
    }

Method com.google.android.gms.iid.zzc.zza():


    void zza(android.os.Bundle p7, java.security.KeyPair p8, String p9)
    {
        android.content.Intent v0_0 = android.os.SystemClock.elapsedRealtime();
        if ((this.aaR == 0) || (v0_0 > this.aaR)) {
            this.zzbmb();
            if (com.google.android.gms.iid.zzc.aaG != null) {
                this.aaN = android.os.SystemClock.elapsedRealtime();
                android.content.Intent v0_6 = new android.content.Intent("com.google.android.c2dm.intent.REGISTER");
                v0_6.setPackage(com.google.android.gms.iid.zzc.aaG);
                p7.putString("gmsv", Integer.toString(com.google.android.gms.iid.zzc.zzdj(this.zzagf)));
                p7.putString("osv", Integer.toString(android.os.Build$VERSION.SDK_INT));
                p7.putString("app_ver", Integer.toString(com.google.android.gms.iid.InstanceID.zzdf(this.zzagf)));
                p7.putString("app_ver_name", com.google.android.gms.iid.InstanceID.zzdg(this.zzagf));
                p7.putString("cliv", "iid-9452000");
                p7.putString("appid", com.google.android.gms.iid.InstanceID.zza(p8));
                String v1_13 = com.google.android.gms.iid.InstanceID.zzu(p8.getPublic().getEncoded());
                p7.putString("pub2", v1_13);
                String[] v3_1 = new String[2];
                v3_1[0] = this.zzagf.getPackageName();
                v3_1[1] = v1_13;
                p7.putString("sig", com.google.android.gms.iid.zzc.zza(p8, v3_1));
                v0_6.putExtras(p7);
                this.zzs(v0_6);
                this.zzb(v0_6, p9);
                return;
            } else {
                throw new java.io.IOException("MISSING_INSTANCEID_SERVICE");
            }
        } else {
            android.util.Log.w("InstanceID/Rpc", new StringBuilder(78).append("Backoff mode, next request attempt: ").append((this.aaR - v0_0)).append(" interval: ").append(this.aaQ).toString());
            throw new java.io.IOException("RETRY_LATER");
        }
    }

Method com.google.android.gms.iid.zzc.zzs():


    declared_synchronized void zzs(android.content.Intent p5)
    {
        try {
            if (this.Zq == null) {
                String v0_5 = new android.content.Intent();
                v0_5.setPackage("com.google.example.invalidpackage");
                this.Zq = android.app.PendingIntent.getBroadcast(this.zzagf, 0, v0_5, 0);
            }
        } catch (String v0_2) {
            throw v0_2;
        }
        p5.putExtra("app", this.Zq);
        return;
    }

Method android.content.Intent.setPackage() not found.

[TAINT] String '.RNPushNotificationRegisteredToken' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V', '0', 'IPC_SINK']' [[('Lcom/dieam/reactnativepushnotification/modules/RNPushNotificationRegistrationService;', 'sendRegistrationToken', '(Ljava/lang/String;)V'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V')]]

Use of a string value .RNPushNotificationRegisteredToken to construct an Intent

Method com.dieam.reactnativepushnotification.modules.RNPushNotificationRegistrationService.sendRegistrationToken():


    private void sendRegistrationToken(String p4)
    {
        android.content.Intent v0_1 = new android.content.Intent(new StringBuilder().append(this.getPackageName()).append(".RNPushNotificationRegisteredToken").toString());
        v0_1.putExtra("token", p4);
        this.sendBroadcast(v0_1);
        return;
    }

Method android.content.Intent.<init>() not found.