小白下载 v4.0版本的 MD5 值为:7dece071a9daf7f7f4f87ff1c058a020
以下内容为反编译后的 d.java 源代码,内容仅作参考
package com.uc.crashsdk.a;
import android.os.Process;
import com.taobao.weex.WXEnvironment;
import com.taobao.weex.common.RenderTypes;
import com.umeng.commonsdk.framework.UMModuleRegister;
import io.dcloud.common.constant.AbsoluteConst;
import io.dcloud.common.util.ExifInterface;
import java.util.Locale;
import org.cybergarage.http.HTTPStatus;
public class d {
static final boolean a = true;
private static boolean b = true;
private static boolean d = false;
private static String e = "hsdk";
private static String f = "alid ";
private static String g;
private static String i;
private static final Object c = new Object();
private static final Object h = new Object();
public static void a() {
f.a(0, new e(HTTPStatus.INTERNAL_SERVER_ERROR), com.uc.crashsdk.b.H() ? 900000L : 90000L);
}
public static void a(int i2) {
if (i2 == 500) {
synchronized (c) {
g = null;
a(!com.uc.crashsdk.b.F());
if (g.b(g)) {
h.a(g);
}
}
} else if (!a) {
throw new AssertionError();
}
}
public static String b() {
try {
return "inv" + f + "cras" + e;
} catch (Throwable th) {
g.b(th);
return "";
}
}
private static boolean a(boolean z) {
int i2;
boolean z2;
String str;
if (d) {
return false;
}
d = !z;
if (!(com.uc.crashsdk.a.b.equals("2.0") && com.uc.crashsdk.b.c(536870912)) && com.uc.crashsdk.b.A()) {
String n = com.uc.crashsdk.b.n();
String a2 = b.a(n);
String str2 = null;
long j = 0;
if (g.b(a2)) {
String[] split = a2.split(" ", 4);
if (split.length == 3) {
str2 = split[0];
j = g.c(split[1]);
i2 = (int) g.c(split[2]);
b = true;
if (System.currentTimeMillis() - j < 259200000) {
if (!"o".equals(str2)) {
if (ExifInterface.GPS_MEASUREMENT_2D.equals(str2)) {
b = false;
} else if ("1".equals(str2)) {
b = false;
}
}
z2 = false;
if (z2 || z) {
return true;
}
if (i2 == Process.myPid()) {
return false;
}
g = "per";
String g2 = g();
if (g2 == null || !g2.contains("retcode=")) {
if (g2 == null) {
g = "ner";
} else {
g = "ser";
}
return false;
}
if (g2.contains("retcode=0")) {
b = true;
str = "o";
g = "aus";
} else {
b = false;
if ("1".equals(str2)) {
str = ExifInterface.GPS_MEASUREMENT_2D;
g = "auf2";
} else {
str = "1";
g = "auf1";
}
}
b.a(n, String.format(Locale.US, "%s %d %d", str, Long.valueOf(System.currentTimeMillis()), Integer.valueOf(Process.myPid())));
if (g.b(g2)) {
for (String str3 : g2.split("`", 30)) {
String[] split2 = str3.split("=", 2);
if (split2.length == 2) {
String trim = split2[0].trim();
String trim2 = split2[1].trim();
boolean z3 = g.b(trim2) && trim2.startsWith("http");
if ("logurl".equals(trim)) {
if (z3) {
com.uc.crashsdk.e.b(trim2);
}
} else if ("staturl".equals(trim)) {
if (z3) {
h.b(trim2);
}
} else if ("policyurl".equals(trim)) {
if (z3) {
synchronized (h) {
i = trim2;
b.a(com.uc.crashsdk.b.j(), trim2 + "\n");
}
} else {
continue;
}
} else if ("logpolicy".equals(trim)) {
com.uc.crashsdk.e.c(trim2);
}
}
}
}
return true;
}
z2 = true;
if (z2) {
}
return true;
}
}
i2 = 0;
b = true;
if (System.currentTimeMillis() - j < 259200000) {
}
z2 = true;
if (z2) {
}
return true;
}
return false;
}
private static String f() {
String str = i;
if (g.a(str)) {
synchronized (h) {
String str2 = com.uc.crashsdk.g.R() ? "https://errlogos.umeng.com" : "https://errlog.umeng.com";
str = g.a(com.uc.crashsdk.b.j(), str2 + "/api/crashsdk/validate", true);
i = str;
}
}
return str;
}
public static void c() {
synchronized (h) {
i = null;
}
}
public static byte[] d() {
return new byte[]{6, 0, 23, 8};
}
private static String g() {
byte[] bArr;
String f2;
byte[] a2;
byte[] bArr2;
StringBuilder sb = new StringBuilder();
a(sb, RenderTypes.RENDER_TYPE_NATIVE, com.uc.crashsdk.g.e());
a(sb, "pkgname", com.uc.crashsdk.a.a);
a(sb, UMModuleRegister.PROCESS, com.uc.crashsdk.e.h());
a(sb, "version", com.uc.crashsdk.a.a());
a(sb, "cver", "3.3.2.2");
a(sb, "ctag", "release");
a(sb, "inter", com.uc.crashsdk.g.R() ? AbsoluteConst.TRUE : AbsoluteConst.FALSE);
a(sb, "os", WXEnvironment.OS);
String sb2 = sb.toString();
byte[] bArr3 = new byte[16];
c.a(bArr3, 0, h.j());
c.a(bArr3, 4, c.a());
c.a(bArr3, 8, d());
c.a(bArr3, 12, com.uc.crashsdk.a.f());
try {
bArr = c.a(sb2.getBytes(), bArr3, true);
} catch (Throwable th) {
g.a(th);
bArr = null;
}
if (bArr == null || (f2 = f()) == null || (a2 = c.a(f2, bArr)) == null) {
return null;
}
try {
bArr2 = c.a(a2, bArr3, false);
} catch (Throwable th2) {
g.a(th2);
bArr2 = null;
}
if (bArr2 != null) {
return new String(bArr2);
}
return null;
}
private static StringBuilder a(StringBuilder sb, String str, String str2) {
if (sb.length() > 0) {
sb.append("`");
}
sb.append(str);
sb.append("=");
sb.append(str2);
return sb;
}
public static boolean e() {
if (!com.uc.crashsdk.e.F() && !com.uc.crashsdk.b.L()) {
a(true);
return b;
}
return true;
}
}