FlixOlé v4.4.0版本的 MD5 值为:50e7f767ca3e8715936523e9ef089581

以下内容为反编译后的 l0.java 源代码,内容仅作参考


package i.d.a.b.m4;

import android.net.Uri;
import android.text.TextUtils;
import i.d.a.b.k2;
import i.d.a.b.m4.i0;
import i.d.a.b.w4.d0;
import i.d.a.b.w4.r;
import i.d.a.b.w4.v;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
public final class l0 implements o0 {
    public final r.a a;
    public final String b;
    public final boolean c;
    public final Map<String, String> d;

    public l0(String str, boolean z, r.a aVar) {
        i.d.a.b.x4.e.a((z && TextUtils.isEmpty(str)) ? false : true);
        this.a = aVar;
        this.b = str;
        this.c = z;
        this.d = new HashMap();
    }

    public static byte[] c(r.a aVar, String str, byte[] bArr, Map<String, String> map) throws p0 {
        i.d.a.b.w4.m0 m0Var = new i.d.a.b.w4.m0(aVar.a());
        v.b bVar = new v.b();
        bVar.j(str);
        bVar.e(map);
        bVar.d(2);
        bVar.c(bArr);
        bVar.b(1);
        i.d.a.b.w4.v a = bVar.a();
        int i2 = 0;
        i.d.a.b.w4.v vVar = a;
        while (true) {
            try {
                i.d.a.b.w4.t tVar = new i.d.a.b.w4.t(m0Var, vVar);
                try {
                    byte[] K0 = i.d.a.b.x4.p0.K0(tVar);
                    i.d.a.b.x4.p0.k(tVar);
                    return K0;
                } catch (d0.d e) {
                    String d = d(e, i2);
                    if (d == null) {
                        throw e;
                    }
                    i2++;
                    v.b a2 = vVar.a();
                    a2.j(d);
                    vVar = a2.a();
                    i.d.a.b.x4.p0.k(tVar);
                }
            } catch (Exception e2) {
                Uri k2 = m0Var.k();
                i.d.a.b.x4.e.e(k2);
                throw new p0(a, k2, m0Var.e(), m0Var.j(), e2);
            }
        }
    }

    public static String d(d0.d dVar, int i2) {
        Map<String, List<String>> map;
        List<String> list;
        int i3 = dVar.f5263p;
        if (!((i3 == 307 || i3 == 308) && i2 < 5) || (map = dVar.f5264q) == null || (list = map.get("Location")) == null || list.isEmpty()) {
            return null;
        }
        return list.get(0);
    }

    @Override
    public byte[] a(UUID uuid, i0.a aVar) throws p0 {
        String b = aVar.b();
        if (this.c || TextUtils.isEmpty(b)) {
            b = this.b;
        }
        if (TextUtils.isEmpty(b)) {
            v.b bVar = new v.b();
            bVar.i(Uri.EMPTY);
            throw new p0(bVar.a(), Uri.EMPTY, i.d.b.b.r.j(), 0L, new IllegalStateException("No license URL"));
        }
        HashMap hashMap = new HashMap();
        UUID uuid2 = k2.e;
        hashMap.put("Content-Type", uuid2.equals(uuid) ? "text/xml" : k2.c.equals(uuid) ? "application/json" : "application/octet-stream");
        if (uuid2.equals(uuid)) {
            hashMap.put("SOAPAction", "http://schemas.microsoft.com/DRM/2007/03/protocols/AcquireLicense");
        }
        synchronized (this.d) {
            hashMap.putAll(this.d);
        }
        return c(this.a, b, aVar.a(), hashMap);
    }

    @Override
    public byte[] b(UUID uuid, i0.d dVar) throws p0 {
        return c(this.a, dVar.b() + "&signedRequest=" + i.d.a.b.x4.p0.w(dVar.a()), null, Collections.emptyMap());
    }

    public void e(String str, String str2) {
        i.d.a.b.x4.e.e(str);
        i.d.a.b.x4.e.e(str2);
        synchronized (this.d) {
            this.d.put(str, str2);
        }
    }
}