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 'com.facebook.katana.platform.TokenRefreshService' ==>>> Sink '['Landroid/content/Context;', 'bindService', '(Landroid/content/Intent; Landroid/content/ServiceConnection; I)Z', '0', 'IPC_SINK']' [[('Lcom/facebook/Request;', 'g', '()Lcom/facebook/bw;'), ('Lcom/facebook/Request;', 'a', '(Lcom/facebook/Request;)Lcom/facebook/bw;'), ('Lcom/facebook/Request;', 'a', '([Lcom/facebook/Request;)Ljava/util/List;'), ('Lcom/facebook/Request;', 'a', '(Ljava/util/Collection;)Ljava/util/List;'), ('Lcom/facebook/Request;', 'b', '(Lcom/facebook/bq;)Ljava/util/List;'), ('Lcom/facebook/Request;', 'a', '(Ljava/net/HttpURLConnection; Lcom/facebook/bq;)Ljava/util/List;'), ('Lcom/facebook/bx;', 'l', '()V'), ('Lcom/facebook/bx;', 'm', '()V'), ('Lcom/facebook/cl;', 'a', '()V'), ('Landroid/content/Context;', 'bindService', '(Landroid/content/Intent; Landroid/content/ServiceConnection; I)Z')]]

Use of a string value com.facebook.katana.platform.TokenRefreshService to construct an Intent

Method com.facebook.Request.g():


    public final com.facebook.bw g()
    {
        return com.facebook.Request.a(this);
    }

Method com.facebook.Request.a():


    public static com.facebook.bw a(com.facebook.Request p4)
    {
        com.facebook.bw v0_4 = new com.facebook.Request[1];
        v0_4[0] = p4;
        com.facebook.bw v0_5 = com.facebook.Request.a(v0_4);
        if ((v0_5 != null) && (v0_5.size() == 1)) {
            return ((com.facebook.bw) v0_5.get(0));
        } else {
            throw new com.facebook.ao("invalid state: expected a single response");
        }
    }

Method com.facebook.Request.a():


    public static varargs java.util.List a(com.facebook.Request[] p1)
    {
        com.facebook.b.as.a(p1, "requests");
        return com.facebook.Request.a(java.util.Arrays.asList(p1));
    }

Method com.facebook.Request.a():


    public static java.util.List a(java.util.Collection p1)
    {
        return com.facebook.Request.b(new com.facebook.bq(p1));
    }

Method com.facebook.Request.b():


    public static java.util.List b(com.facebook.bq p4)
    {
        com.facebook.b.as.c(p4, "requests");
        try {
            java.util.List v0_1 = com.facebook.Request.a(com.facebook.Request.a(p4), p4);
        } catch (java.util.List v0_3) {
            v0_1 = com.facebook.bw.a(p4.d(), 0, new com.facebook.ao(v0_3));
            com.facebook.Request.a(p4, v0_1);
        }
        return v0_1;
    }

Method com.facebook.Request.a():


    public static java.util.List a(java.net.HttpURLConnection p6, com.facebook.bq p7)
    {
        int v1_0 = com.facebook.bw.a(p6, p7);
        com.facebook.b.aq.a(p6);
        com.facebook.bx v0_7 = p7.size();
        if (v0_7 == v1_0.size()) {
            com.facebook.Request.a(p7, v1_0);
            java.util.Iterator v2_0 = new java.util.HashSet();
            java.util.Iterator v3_0 = p7.iterator();
            while (v3_0.hasNext()) {
                com.facebook.bx v0_2 = ((com.facebook.Request) v3_0.next());
                if (v0_2.d != null) {
                    v2_0.add(v0_2.d);
                }
            }
            java.util.Iterator v2_1 = v2_0.iterator();
            while (v2_1.hasNext()) {
                ((com.facebook.bx) v2_1.next()).l();
            }
            return v1_0;
        } else {
            com.facebook.bx v4_2 = new Object[2];
            v4_2[0] = Integer.valueOf(v1_0.size());
            v4_2[1] = Integer.valueOf(v0_7);
            throw new com.facebook.ao(String.format("Received %d responses while expecting %d", v4_2));
        }
    }

Method com.facebook.bx.l():


    void l()
    {
        if (this.n()) {
            this.m();
        }
        return;
    }

Method com.facebook.bx.m():


    void m()
    {
        com.facebook.cl v0_0 = 0;
        if (this.s == null) {
            v0_0 = new com.facebook.cl(this);
            this.s = v0_0;
        }
        if (v0_0 != null) {
            v0_0.a();
        }
        return;
    }

Method com.facebook.cl.a():


    public void a()
    {
        com.facebook.bx v0_2 = com.facebook.b.ac.a(com.facebook.bx.k());
        if ((v0_2 == null) || (!com.facebook.bx.p().bindService(v0_2, this, 1))) {
            this.b();
        } else {
            this.c.a(new java.util.Date());
        }
        return;
    }

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

[TAINT] String 'com.facebook.platform.PLATFORM_SERVICE' ==>>> Sink '['Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/facebook/b/ah;', 'a', '()Z'), ('Lcom/facebook/b/ac;', 'b', '(Landroid/content/Context;)Landroid/content/Intent;'), ('Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;')]]

Use of a string value com.facebook.platform.PLATFORM_SERVICE to construct an Intent

Method com.facebook.b.ah.a():


    public boolean a()
    {
        int v0_0 = 0;
        if ((!this.d) && (com.facebook.b.ac.a(this.a, this.i) != -1)) {
            android.content.Intent v2_1 = com.facebook.b.ac.b(this.a);
            if (v2_1 != null) {
                this.d = 1;
                this.a.bindService(v2_1, this, 1);
                v0_0 = 1;
            }
        }
        return v0_0;
    }

Method com.facebook.b.ac.b():


    public static android.content.Intent b(android.content.Context p4)
    {
        java.util.Iterator v1 = com.facebook.b.ac.b.iterator();
        while (v1.hasNext()) {
            android.content.Intent v0_4 = ((com.facebook.b.af) v1.next());
            android.content.Intent v0_1 = com.facebook.b.ac.b(p4, new android.content.Intent("com.facebook.platform.PLATFORM_SERVICE").setPackage(v0_4.a()).addCategory("android.intent.category.DEFAULT"), v0_4);
            if (v0_1 != null) {
            }
            return v0_1;
        }
        v0_1 = 0;
        return v0_1;
    }

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

[TAINT] String 'com.facebook.platform.PLATFORM_SERVICE' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V', '0', 'IPC_SINK']' [[('Lcom/facebook/b/ah;', 'a', '()Z'), ('Lcom/facebook/b/ac;', 'b', '(Landroid/content/Context;)Landroid/content/Intent;'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V')]]

Use of a string value com.facebook.platform.PLATFORM_SERVICE to construct an Intent

Method com.facebook.b.ah.a():


    public boolean a()
    {
        int v0_0 = 0;
        if ((!this.d) && (com.facebook.b.ac.a(this.a, this.i) != -1)) {
            android.content.Intent v2_1 = com.facebook.b.ac.b(this.a);
            if (v2_1 != null) {
                this.d = 1;
                this.a.bindService(v2_1, this, 1);
                v0_0 = 1;
            }
        }
        return v0_0;
    }

Method com.facebook.b.ac.b():


    public static android.content.Intent b(android.content.Context p4)
    {
        java.util.Iterator v1 = com.facebook.b.ac.b.iterator();
        while (v1.hasNext()) {
            android.content.Intent v0_4 = ((com.facebook.b.af) v1.next());
            android.content.Intent v0_1 = com.facebook.b.ac.b(p4, new android.content.Intent("com.facebook.platform.PLATFORM_SERVICE").setPackage(v0_4.a()).addCategory("android.intent.category.DEFAULT"), v0_4);
            if (v0_1 != null) {
            }
            return v0_1;
        }
        v0_1 = 0;
        return v0_1;
    }

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

[TAINT] String 'com.facebook.platform.PLATFORM_SERVICE' ==>>> Sink '['Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/facebook/b/ac;', 'b', '(Landroid/content/Context;)Landroid/content/Intent;'), ('Landroid/content/Intent;', 'setPackage', '(Ljava/lang/String;)Landroid/content/Intent;')]]

Use of a string value com.facebook.platform.PLATFORM_SERVICE to construct an Intent

Method com.facebook.b.ac.b():


    public static android.content.Intent b(android.content.Context p4)
    {
        java.util.Iterator v1 = com.facebook.b.ac.b.iterator();
        while (v1.hasNext()) {
            android.content.Intent v0_4 = ((com.facebook.b.af) v1.next());
            android.content.Intent v0_1 = com.facebook.b.ac.b(p4, new android.content.Intent("com.facebook.platform.PLATFORM_SERVICE").setPackage(v0_4.a()).addCategory("android.intent.category.DEFAULT"), v0_4);
            if (v0_1 != null) {
            }
            return v0_1;
        }
        v0_1 = 0;
        return v0_1;
    }

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

[TAINT] String 'com.facebook.platform.PLATFORM_SERVICE' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V', '0', 'IPC_SINK']' [[('Lcom/facebook/b/ac;', 'b', '(Landroid/content/Context;)Landroid/content/Intent;'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V')]]

Use of a string value com.facebook.platform.PLATFORM_SERVICE to construct an Intent

Method com.facebook.b.ac.b():


    public static android.content.Intent b(android.content.Context p4)
    {
        java.util.Iterator v1 = com.facebook.b.ac.b.iterator();
        while (v1.hasNext()) {
            android.content.Intent v0_4 = ((com.facebook.b.af) v1.next());
            android.content.Intent v0_1 = com.facebook.b.ac.b(p4, new android.content.Intent("com.facebook.platform.PLATFORM_SERVICE").setPackage(v0_4.a()).addCategory("android.intent.category.DEFAULT"), v0_4);
            if (v0_1 != null) {
            }
            return v0_1;
        }
        v0_1 = 0;
        return v0_1;
    }

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

[TAINT] String 'com.facebook.katana.platform.TokenRefreshService' ==>>> Sink '['Landroid/content/Context;', 'bindService', '(Landroid/content/Intent; Landroid/content/ServiceConnection; I)Z', '0', 'IPC_SINK']' [[('Lcom/facebook/Request;', 'a', '(Lcom/facebook/Request;)Lcom/facebook/bw;'), ('Lcom/facebook/Request;', 'a', '([Lcom/facebook/Request;)Ljava/util/List;'), ('Lcom/facebook/Request;', 'a', '(Ljava/util/Collection;)Ljava/util/List;'), ('Lcom/facebook/Request;', 'b', '(Lcom/facebook/bq;)Ljava/util/List;'), ('Lcom/facebook/Request;', 'a', '(Ljava/net/HttpURLConnection; Lcom/facebook/bq;)Ljava/util/List;'), ('Lcom/facebook/bx;', 'l', '()V'), ('Lcom/facebook/bx;', 'm', '()V'), ('Lcom/facebook/cl;', 'a', '()V'), ('Landroid/content/Context;', 'bindService', '(Landroid/content/Intent; Landroid/content/ServiceConnection; I)Z')]]

Use of a string value com.facebook.katana.platform.TokenRefreshService to construct an Intent

Method com.facebook.Request.a():


    public static com.facebook.bw a(com.facebook.Request p4)
    {
        com.facebook.bw v0_4 = new com.facebook.Request[1];
        v0_4[0] = p4;
        com.facebook.bw v0_5 = com.facebook.Request.a(v0_4);
        if ((v0_5 != null) && (v0_5.size() == 1)) {
            return ((com.facebook.bw) v0_5.get(0));
        } else {
            throw new com.facebook.ao("invalid state: expected a single response");
        }
    }

Method com.facebook.Request.a():


    public static varargs java.util.List a(com.facebook.Request[] p1)
    {
        com.facebook.b.as.a(p1, "requests");
        return com.facebook.Request.a(java.util.Arrays.asList(p1));
    }

Method com.facebook.Request.a():


    public static java.util.List a(java.util.Collection p1)
    {
        return com.facebook.Request.b(new com.facebook.bq(p1));
    }

Method com.facebook.Request.b():


    public static java.util.List b(com.facebook.bq p4)
    {
        com.facebook.b.as.c(p4, "requests");
        try {
            java.util.List v0_1 = com.facebook.Request.a(com.facebook.Request.a(p4), p4);
        } catch (java.util.List v0_3) {
            v0_1 = com.facebook.bw.a(p4.d(), 0, new com.facebook.ao(v0_3));
            com.facebook.Request.a(p4, v0_1);
        }
        return v0_1;
    }

Method com.facebook.Request.a():


    public static java.util.List a(java.net.HttpURLConnection p6, com.facebook.bq p7)
    {
        int v1_0 = com.facebook.bw.a(p6, p7);
        com.facebook.b.aq.a(p6);
        com.facebook.bx v0_7 = p7.size();
        if (v0_7 == v1_0.size()) {
            com.facebook.Request.a(p7, v1_0);
            java.util.Iterator v2_0 = new java.util.HashSet();
            java.util.Iterator v3_0 = p7.iterator();
            while (v3_0.hasNext()) {
                com.facebook.bx v0_2 = ((com.facebook.Request) v3_0.next());
                if (v0_2.d != null) {
                    v2_0.add(v0_2.d);
                }
            }
            java.util.Iterator v2_1 = v2_0.iterator();
            while (v2_1.hasNext()) {
                ((com.facebook.bx) v2_1.next()).l();
            }
            return v1_0;
        } else {
            com.facebook.bx v4_2 = new Object[2];
            v4_2[0] = Integer.valueOf(v1_0.size());
            v4_2[1] = Integer.valueOf(v0_7);
            throw new com.facebook.ao(String.format("Received %d responses while expecting %d", v4_2));
        }
    }

Method com.facebook.bx.l():


    void l()
    {
        if (this.n()) {
            this.m();
        }
        return;
    }

Method com.facebook.bx.m():


    void m()
    {
        com.facebook.cl v0_0 = 0;
        if (this.s == null) {
            v0_0 = new com.facebook.cl(this);
            this.s = v0_0;
        }
        if (v0_0 != null) {
            v0_0.a();
        }
        return;
    }

Method com.facebook.cl.a():


    public void a()
    {
        com.facebook.bx v0_2 = com.facebook.b.ac.a(com.facebook.bx.k());
        if ((v0_2 == null) || (!com.facebook.bx.p().bindService(v0_2, this, 1))) {
            this.b();
        } else {
            this.c.a(new java.util.Date());
        }
        return;
    }

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

[TAINT] String 'com.facebook.katana.platform.TokenRefreshService' ==>>> Sink '['Landroid/content/Context;', 'bindService', '(Landroid/content/Intent; Landroid/content/ServiceConnection; I)Z', '0', 'IPC_SINK']' [[('Lcom/facebook/Request;', 'a', '(Ljava/net/HttpURLConnection; Lcom/facebook/bq;)Ljava/util/List;'), ('Lcom/facebook/bx;', 'l', '()V'), ('Lcom/facebook/bx;', 'm', '()V'), ('Lcom/facebook/cl;', 'a', '()V'), ('Landroid/content/Context;', 'bindService', '(Landroid/content/Intent; Landroid/content/ServiceConnection; I)Z')]]

Use of a string value com.facebook.katana.platform.TokenRefreshService to construct an Intent

Method com.facebook.Request.a():


    public static java.util.List a(java.net.HttpURLConnection p6, com.facebook.bq p7)
    {
        int v1_0 = com.facebook.bw.a(p6, p7);
        com.facebook.b.aq.a(p6);
        com.facebook.bx v0_7 = p7.size();
        if (v0_7 == v1_0.size()) {
            com.facebook.Request.a(p7, v1_0);
            java.util.Iterator v2_0 = new java.util.HashSet();
            java.util.Iterator v3_0 = p7.iterator();
            while (v3_0.hasNext()) {
                com.facebook.bx v0_2 = ((com.facebook.Request) v3_0.next());
                if (v0_2.d != null) {
                    v2_0.add(v0_2.d);
                }
            }
            java.util.Iterator v2_1 = v2_0.iterator();
            while (v2_1.hasNext()) {
                ((com.facebook.bx) v2_1.next()).l();
            }
            return v1_0;
        } else {
            com.facebook.bx v4_2 = new Object[2];
            v4_2[0] = Integer.valueOf(v1_0.size());
            v4_2[1] = Integer.valueOf(v0_7);
            throw new com.facebook.ao(String.format("Received %d responses while expecting %d", v4_2));
        }
    }

Method com.facebook.bx.l():


    void l()
    {
        if (this.n()) {
            this.m();
        }
        return;
    }

Method com.facebook.bx.m():


    void m()
    {
        com.facebook.cl v0_0 = 0;
        if (this.s == null) {
            v0_0 = new com.facebook.cl(this);
            this.s = v0_0;
        }
        if (v0_0 != null) {
            v0_0.a();
        }
        return;
    }

Method com.facebook.cl.a():


    public void a()
    {
        com.facebook.bx v0_2 = com.facebook.b.ac.a(com.facebook.bx.k());
        if ((v0_2 == null) || (!com.facebook.bx.p().bindService(v0_2, this, 1))) {
            this.b();
        } else {
            this.c.a(new java.util.Date());
        }
        return;
    }

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

[TAINT] String 'com.facebook.katana.platform.TokenRefreshService' ==>>> Sink '['Landroid/content/Context;', 'bindService', '(Landroid/content/Intent; Landroid/content/ServiceConnection; I)Z', '0', 'IPC_SINK']' [[('Lcom/facebook/Request;', 'a', '(Ljava/util/Collection;)Ljava/util/List;'), ('Lcom/facebook/Request;', 'b', '(Lcom/facebook/bq;)Ljava/util/List;'), ('Lcom/facebook/Request;', 'a', '(Ljava/net/HttpURLConnection; Lcom/facebook/bq;)Ljava/util/List;'), ('Lcom/facebook/bx;', 'l', '()V'), ('Lcom/facebook/bx;', 'm', '()V'), ('Lcom/facebook/cl;', 'a', '()V'), ('Landroid/content/Context;', 'bindService', '(Landroid/content/Intent; Landroid/content/ServiceConnection; I)Z')]]

Use of a string value com.facebook.katana.platform.TokenRefreshService to construct an Intent

Method com.facebook.Request.a():


    public static java.util.List a(java.util.Collection p1)
    {
        return com.facebook.Request.b(new com.facebook.bq(p1));
    }

Method com.facebook.Request.b():


    public static java.util.List b(com.facebook.bq p4)
    {
        com.facebook.b.as.c(p4, "requests");
        try {
            java.util.List v0_1 = com.facebook.Request.a(com.facebook.Request.a(p4), p4);
        } catch (java.util.List v0_3) {
            v0_1 = com.facebook.bw.a(p4.d(), 0, new com.facebook.ao(v0_3));
            com.facebook.Request.a(p4, v0_1);
        }
        return v0_1;
    }

Method com.facebook.Request.a():


    public static java.util.List a(java.net.HttpURLConnection p6, com.facebook.bq p7)
    {
        int v1_0 = com.facebook.bw.a(p6, p7);
        com.facebook.b.aq.a(p6);
        com.facebook.bx v0_7 = p7.size();
        if (v0_7 == v1_0.size()) {
            com.facebook.Request.a(p7, v1_0);
            java.util.Iterator v2_0 = new java.util.HashSet();
            java.util.Iterator v3_0 = p7.iterator();
            while (v3_0.hasNext()) {
                com.facebook.bx v0_2 = ((com.facebook.Request) v3_0.next());
                if (v0_2.d != null) {
                    v2_0.add(v0_2.d);
                }
            }
            java.util.Iterator v2_1 = v2_0.iterator();
            while (v2_1.hasNext()) {
                ((com.facebook.bx) v2_1.next()).l();
            }
            return v1_0;
        } else {
            com.facebook.bx v4_2 = new Object[2];
            v4_2[0] = Integer.valueOf(v1_0.size());
            v4_2[1] = Integer.valueOf(v0_7);
            throw new com.facebook.ao(String.format("Received %d responses while expecting %d", v4_2));
        }
    }

Method com.facebook.bx.l():


    void l()
    {
        if (this.n()) {
            this.m();
        }
        return;
    }

Method com.facebook.bx.m():


    void m()
    {
        com.facebook.cl v0_0 = 0;
        if (this.s == null) {
            v0_0 = new com.facebook.cl(this);
            this.s = v0_0;
        }
        if (v0_0 != null) {
            v0_0.a();
        }
        return;
    }

Method com.facebook.cl.a():


    public void a()
    {
        com.facebook.bx v0_2 = com.facebook.b.ac.a(com.facebook.bx.k());
        if ((v0_2 == null) || (!com.facebook.bx.p().bindService(v0_2, this, 1))) {
            this.b();
        } else {
            this.c.a(new java.util.Date());
        }
        return;
    }

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

[TAINT] String 'com.facebook.katana.platform.TokenRefreshService' ==>>> Sink '['Landroid/content/Context;', 'bindService', '(Landroid/content/Intent; Landroid/content/ServiceConnection; I)Z', '0', 'IPC_SINK']' [[('Lcom/facebook/Request;', 'a', '([Lcom/facebook/Request;)Ljava/util/List;'), ('Lcom/facebook/Request;', 'a', '(Ljava/util/Collection;)Ljava/util/List;'), ('Lcom/facebook/Request;', 'b', '(Lcom/facebook/bq;)Ljava/util/List;'), ('Lcom/facebook/Request;', 'a', '(Ljava/net/HttpURLConnection; Lcom/facebook/bq;)Ljava/util/List;'), ('Lcom/facebook/bx;', 'l', '()V'), ('Lcom/facebook/bx;', 'm', '()V'), ('Lcom/facebook/cl;', 'a', '()V'), ('Landroid/content/Context;', 'bindService', '(Landroid/content/Intent; Landroid/content/ServiceConnection; I)Z')]]

Use of a string value com.facebook.katana.platform.TokenRefreshService to construct an Intent

Method com.facebook.Request.a():


    public static varargs java.util.List a(com.facebook.Request[] p1)
    {
        com.facebook.b.as.a(p1, "requests");
        return com.facebook.Request.a(java.util.Arrays.asList(p1));
    }

Method com.facebook.Request.a():


    public static java.util.List a(java.util.Collection p1)
    {
        return com.facebook.Request.b(new com.facebook.bq(p1));
    }

Method com.facebook.Request.b():


    public static java.util.List b(com.facebook.bq p4)
    {
        com.facebook.b.as.c(p4, "requests");
        try {
            java.util.List v0_1 = com.facebook.Request.a(com.facebook.Request.a(p4), p4);
        } catch (java.util.List v0_3) {
            v0_1 = com.facebook.bw.a(p4.d(), 0, new com.facebook.ao(v0_3));
            com.facebook.Request.a(p4, v0_1);
        }
        return v0_1;
    }

Method com.facebook.Request.a():


    public static java.util.List a(java.net.HttpURLConnection p6, com.facebook.bq p7)
    {
        int v1_0 = com.facebook.bw.a(p6, p7);
        com.facebook.b.aq.a(p6);
        com.facebook.bx v0_7 = p7.size();
        if (v0_7 == v1_0.size()) {
            com.facebook.Request.a(p7, v1_0);
            java.util.Iterator v2_0 = new java.util.HashSet();
            java.util.Iterator v3_0 = p7.iterator();
            while (v3_0.hasNext()) {
                com.facebook.bx v0_2 = ((com.facebook.Request) v3_0.next());
                if (v0_2.d != null) {
                    v2_0.add(v0_2.d);
                }
            }
            java.util.Iterator v2_1 = v2_0.iterator();
            while (v2_1.hasNext()) {
                ((com.facebook.bx) v2_1.next()).l();
            }
            return v1_0;
        } else {
            com.facebook.bx v4_2 = new Object[2];
            v4_2[0] = Integer.valueOf(v1_0.size());
            v4_2[1] = Integer.valueOf(v0_7);
            throw new com.facebook.ao(String.format("Received %d responses while expecting %d", v4_2));
        }
    }

Method com.facebook.bx.l():


    void l()
    {
        if (this.n()) {
            this.m();
        }
        return;
    }

Method com.facebook.bx.m():


    void m()
    {
        com.facebook.cl v0_0 = 0;
        if (this.s == null) {
            v0_0 = new com.facebook.cl(this);
            this.s = v0_0;
        }
        if (v0_0 != null) {
            v0_0.a();
        }
        return;
    }

Method com.facebook.cl.a():


    public void a()
    {
        com.facebook.bx v0_2 = com.facebook.b.ac.a(com.facebook.bx.k());
        if ((v0_2 == null) || (!com.facebook.bx.p().bindService(v0_2, this, 1))) {
            this.b();
        } else {
            this.c.a(new java.util.Date());
        }
        return;
    }

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

[TAINT] String 'com.facebook.katana.platform.TokenRefreshService' ==>>> Sink '['Landroid/content/Context;', 'bindService', '(Landroid/content/Intent; Landroid/content/ServiceConnection; I)Z', '0', 'IPC_SINK']' [[('Lcom/facebook/Request;', 'b', '(Lcom/facebook/bq;)Ljava/util/List;'), ('Lcom/facebook/Request;', 'a', '(Ljava/net/HttpURLConnection; Lcom/facebook/bq;)Ljava/util/List;'), ('Lcom/facebook/bx;', 'l', '()V'), ('Lcom/facebook/bx;', 'm', '()V'), ('Lcom/facebook/cl;', 'a', '()V'), ('Landroid/content/Context;', 'bindService', '(Landroid/content/Intent; Landroid/content/ServiceConnection; I)Z')]]

Use of a string value com.facebook.katana.platform.TokenRefreshService to construct an Intent

Method com.facebook.Request.b():


    public static java.util.List b(com.facebook.bq p4)
    {
        com.facebook.b.as.c(p4, "requests");
        try {
            java.util.List v0_1 = com.facebook.Request.a(com.facebook.Request.a(p4), p4);
        } catch (java.util.List v0_3) {
            v0_1 = com.facebook.bw.a(p4.d(), 0, new com.facebook.ao(v0_3));
            com.facebook.Request.a(p4, v0_1);
        }
        return v0_1;
    }

Method com.facebook.Request.a():


    public static java.util.List a(java.net.HttpURLConnection p6, com.facebook.bq p7)
    {
        int v1_0 = com.facebook.bw.a(p6, p7);
        com.facebook.b.aq.a(p6);
        com.facebook.bx v0_7 = p7.size();
        if (v0_7 == v1_0.size()) {
            com.facebook.Request.a(p7, v1_0);
            java.util.Iterator v2_0 = new java.util.HashSet();
            java.util.Iterator v3_0 = p7.iterator();
            while (v3_0.hasNext()) {
                com.facebook.bx v0_2 = ((com.facebook.Request) v3_0.next());
                if (v0_2.d != null) {
                    v2_0.add(v0_2.d);
                }
            }
            java.util.Iterator v2_1 = v2_0.iterator();
            while (v2_1.hasNext()) {
                ((com.facebook.bx) v2_1.next()).l();
            }
            return v1_0;
        } else {
            com.facebook.bx v4_2 = new Object[2];
            v4_2[0] = Integer.valueOf(v1_0.size());
            v4_2[1] = Integer.valueOf(v0_7);
            throw new com.facebook.ao(String.format("Received %d responses while expecting %d", v4_2));
        }
    }

Method com.facebook.bx.l():


    void l()
    {
        if (this.n()) {
            this.m();
        }
        return;
    }

Method com.facebook.bx.m():


    void m()
    {
        com.facebook.cl v0_0 = 0;
        if (this.s == null) {
            v0_0 = new com.facebook.cl(this);
            this.s = v0_0;
        }
        if (v0_0 != null) {
            v0_0.a();
        }
        return;
    }

Method com.facebook.cl.a():


    public void a()
    {
        com.facebook.bx v0_2 = com.facebook.b.ac.a(com.facebook.bx.k());
        if ((v0_2 == null) || (!com.facebook.bx.p().bindService(v0_2, this, 1))) {
            this.b();
        } else {
            this.c.a(new java.util.Date());
        }
        return;
    }

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