暗网解密 v2.0.4版本的 MD5 值为:d3a04548fef88e775cbe4c3c6e7d81ad
以下内容为反编译后的 j0.java 源代码,内容仅作参考
package c.g.a.a.s2;
import android.net.Uri;
import android.text.TextUtils;
import androidx.annotation.Nullable;
import c.g.a.a.d3.o;
import c.g.a.a.e3.r0;
import c.g.a.a.s2.g0;
import c.g.a.a.w0;
import com.google.android.exoplayer2.drm.MediaDrmCallbackException;
import com.google.android.exoplayer2.upstream.HttpDataSource;
import com.lzy.okgo.model.HttpHeaders;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
public final class j0 implements k0 {
public final HttpDataSource.a f2860a;
@Nullable
public final String f2861b;
public final boolean f2862c;
public final Map<String, String> f2863d;
public j0(@Nullable String str, boolean z, HttpDataSource.a aVar) {
c.g.a.a.e3.g.a((z && TextUtils.isEmpty(str)) ? false : true);
this.f2860a = aVar;
this.f2861b = str;
this.f2862c = z;
this.f2863d = new HashMap();
}
public static byte[] c(HttpDataSource.a aVar, String str, @Nullable byte[] bArr, Map<String, String> map) {
c.g.a.a.d3.c0 c0Var = new c.g.a.a.d3.c0(aVar.createDataSource());
c.g.a.a.d3.o a2 = new o.b().j(str).e(map).d(2).c(bArr).b(1).a();
int i = 0;
c.g.a.a.d3.o oVar = a2;
while (true) {
try {
c.g.a.a.d3.n nVar = new c.g.a.a.d3.n(c0Var, oVar);
try {
byte[] S0 = r0.S0(nVar);
r0.n(nVar);
return S0;
} catch (HttpDataSource.InvalidResponseCodeException e2) {
String d2 = d(e2, i);
if (d2 != null) {
i++;
oVar = oVar.a().j(d2).a();
r0.n(nVar);
} else {
throw e2;
}
}
} catch (Exception e3) {
throw new MediaDrmCallbackException(a2, (Uri) c.g.a.a.e3.g.e(c0Var.q()), c0Var.k(), c0Var.p(), e3);
}
}
}
@Nullable
public static String d(HttpDataSource.InvalidResponseCodeException invalidResponseCodeException, int i) {
Map<String, List<String>> map;
List<String> list;
int i2 = invalidResponseCodeException.responseCode;
if (!((i2 == 307 || i2 == 308) && i < 5) || (map = invalidResponseCodeException.headerFields) == null || (list = map.get(HttpHeaders.HEAD_KEY_LOCATION)) == null || list.isEmpty()) {
return null;
}
return list.get(0);
}
@Override
public byte[] a(UUID uuid, g0.a aVar) {
String str;
String b2 = aVar.b();
if (this.f2862c || TextUtils.isEmpty(b2)) {
b2 = this.f2861b;
}
if (!TextUtils.isEmpty(b2)) {
HashMap hashMap = new HashMap();
UUID uuid2 = w0.f3708e;
if (uuid2.equals(uuid)) {
str = "text/xml";
} else {
str = w0.f3706c.equals(uuid) ? "application/json" : "application/octet-stream";
}
hashMap.put(HttpHeaders.HEAD_KEY_CONTENT_TYPE, str);
if (uuid2.equals(uuid)) {
hashMap.put("SOAPAction", "http://schemas.microsoft.com/DRM/2007/03/protocols/AcquireLicense");
}
synchronized (this.f2863d) {
hashMap.putAll(this.f2863d);
}
return c(this.f2860a, b2, aVar.a(), hashMap);
}
throw new MediaDrmCallbackException(new o.b().i(Uri.EMPTY).a(), Uri.EMPTY, c.g.b.b.f0.of(), 0L, new IllegalStateException("No license URL"));
}
@Override
public byte[] b(UUID uuid, g0.g gVar) {
String b2 = gVar.b();
String D = r0.D(gVar.a());
StringBuilder sb = new StringBuilder(String.valueOf(b2).length() + 15 + String.valueOf(D).length());
sb.append(b2);
sb.append("&signedRequest=");
sb.append(D);
return c(this.f2860a, sb.toString(), null, Collections.emptyMap());
}
public void e(String str, String str2) {
c.g.a.a.e3.g.e(str);
c.g.a.a.e3.g.e(str2);
synchronized (this.f2863d) {
this.f2863d.put(str, str2);
}
}
}