discord-jadx/app/src/main/java/c/e/b/c.java

539 lines
18 KiB
Java

package c.e.b;
import c.d.b.a.a;
import h0.a.a.f;
import h0.a.a.p;
import h0.a.a.q;
import h0.a.a.w;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.util.ArrayList;
/* compiled from: FieldAccess */
public abstract class c {
public String[] a;
public static c a(Class cls) {
Class<?> cls2;
ArrayList arrayList = new ArrayList();
Class cls3 = cls;
while (true) {
if (cls3 == Object.class) {
break;
}
Field[] declaredFields = cls3.getDeclaredFields();
for (Field field : declaredFields) {
int modifiers = field.getModifiers();
if (!Modifier.isStatic(modifiers) && !Modifier.isPrivate(modifiers)) {
arrayList.add(field);
}
}
cls3 = cls3.getSuperclass();
}
int size = arrayList.size();
String[] strArr = new String[size];
Class[] clsArr = new Class[arrayList.size()];
for (int i = 0; i < size; i++) {
strArr[i] = ((Field) arrayList.get(i)).getName();
clsArr[i] = ((Field) arrayList.get(i)).getType();
}
String name = cls.getName();
String u = a.u(name, "FieldAccess");
if (u.startsWith("java.")) {
u = a.u("reflectasm.", u);
}
a b = a.b(cls);
try {
cls2 = b.loadClass(u);
} catch (ClassNotFoundException unused) {
synchronized (b) {
try {
cls2 = b.loadClass(u);
} catch (ClassNotFoundException unused2) {
String replace = u.replace('.', '/');
String replace2 = name.replace('.', '/');
f fVar = new f(0);
fVar.c(196653, 33, replace, null, "com/esotericsoftware/reflectasm/FieldAccess", null);
q e = fVar.e(1, "<init>", "()V", null, null);
e.t(25, 0);
e.o(183, "com/esotericsoftware/reflectasm/FieldAccess", "<init>", "()V");
e.e(177);
e.n(1, 1);
m(fVar, replace2, arrayList);
p(fVar, replace2, arrayList);
n(fVar, replace2, arrayList, w.b);
q(fVar, replace2, arrayList, w.b);
n(fVar, replace2, arrayList, w.d);
q(fVar, replace2, arrayList, w.d);
n(fVar, replace2, arrayList, w.e);
q(fVar, replace2, arrayList, w.e);
n(fVar, replace2, arrayList, w.f);
q(fVar, replace2, arrayList, w.f);
n(fVar, replace2, arrayList, w.h);
q(fVar, replace2, arrayList, w.h);
n(fVar, replace2, arrayList, w.i);
q(fVar, replace2, arrayList, w.i);
n(fVar, replace2, arrayList, w.g);
q(fVar, replace2, arrayList, w.g);
n(fVar, replace2, arrayList, w.f2806c);
q(fVar, replace2, arrayList, w.f2806c);
o(fVar, replace2, arrayList);
cls2 = b.a(u, fVar.b());
}
}
}
try {
c cVar = (c) cls2.newInstance();
cVar.a = strArr;
return cVar;
} catch (Throwable th) {
throw new RuntimeException(a.u("Error constructing field access class: ", u), th);
}
}
public static void m(f fVar, String str, ArrayList<Field> arrayList) {
int i;
q e = fVar.e(1, "get", "(Ljava/lang/Object;I)Ljava/lang/Object;", null, null);
e.t(21, 2);
if (!arrayList.isEmpty()) {
i = 5;
int size = arrayList.size();
p[] pVarArr = new p[size];
for (int i2 = 0; i2 < size; i2++) {
pVarArr[i2] = new p();
}
p pVar = new p();
e.q(0, size - 1, pVar, pVarArr);
for (int i3 = 0; i3 < size; i3++) {
Field field = arrayList.get(i3);
e.i(pVarArr[i3]);
e.c(3, 0, null, 0, null);
e.t(25, 1);
e.s(192, str);
e.b(180, str, field.getName(), w.e(field.getType()));
switch (w.j(field.getType()).i()) {
case 1:
e.o(184, "java/lang/Boolean", "valueOf", "(Z)Ljava/lang/Boolean;");
break;
case 2:
e.o(184, "java/lang/Character", "valueOf", "(C)Ljava/lang/Character;");
break;
case 3:
e.o(184, "java/lang/Byte", "valueOf", "(B)Ljava/lang/Byte;");
break;
case 4:
e.o(184, "java/lang/Short", "valueOf", "(S)Ljava/lang/Short;");
break;
case 5:
e.o(184, "java/lang/Integer", "valueOf", "(I)Ljava/lang/Integer;");
break;
case 6:
e.o(184, "java/lang/Float", "valueOf", "(F)Ljava/lang/Float;");
break;
case 7:
e.o(184, "java/lang/Long", "valueOf", "(J)Ljava/lang/Long;");
break;
case 8:
e.o(184, "java/lang/Double", "valueOf", "(D)Ljava/lang/Double;");
break;
}
e.e(176);
}
e.i(pVar);
e.c(3, 0, null, 0, null);
} else {
i = 6;
}
r(e);
e.n(i, 3);
}
public static void n(f fVar, String str, ArrayList<Field> arrayList, w wVar) {
String str2;
int i;
String d = wVar.d();
int i2 = 172;
switch (wVar.i()) {
case 1:
str2 = "getBoolean";
break;
case 2:
str2 = "getChar";
break;
case 3:
str2 = "getByte";
break;
case 4:
str2 = "getShort";
break;
case 5:
str2 = "getInt";
break;
case 6:
i2 = 174;
str2 = "getFloat";
break;
case 7:
i2 = 173;
str2 = "getLong";
break;
case 8:
i2 = 175;
str2 = "getDouble";
break;
default:
i2 = 176;
str2 = "get";
break;
}
q e = fVar.e(1, str2, a.u("(Ljava/lang/Object;I)", d), null, null);
e.t(21, 2);
if (!arrayList.isEmpty()) {
int size = arrayList.size();
p[] pVarArr = new p[size];
p pVar = new p();
boolean z2 = false;
for (int i3 = 0; i3 < size; i3++) {
if (w.j(arrayList.get(i3).getType()).equals(wVar)) {
pVarArr[i3] = new p();
} else {
pVarArr[i3] = pVar;
z2 = true;
}
}
p pVar2 = new p();
e.q(0, size - 1, pVar2, pVarArr);
for (int i4 = 0; i4 < size; i4++) {
Field field = arrayList.get(i4);
if (!pVarArr[i4].equals(pVar)) {
e.i(pVarArr[i4]);
e.c(3, 0, null, 0, null);
e.t(25, 1);
e.s(192, str);
e.b(180, str, field.getName(), d);
e.e(i2);
}
}
if (z2) {
e.i(pVar);
e.c(3, 0, null, 0, null);
s(e, wVar.c());
}
e.i(pVar2);
e.c(3, 0, null, 0, null);
i = 5;
} else {
i = 6;
}
r(e);
e.n(i, 3);
}
public static void o(f fVar, String str, ArrayList<Field> arrayList) {
int i;
q e = fVar.e(1, "getString", "(Ljava/lang/Object;I)Ljava/lang/String;", null, null);
e.t(21, 2);
if (!arrayList.isEmpty()) {
int size = arrayList.size();
p[] pVarArr = new p[size];
p pVar = new p();
boolean z2 = false;
for (int i2 = 0; i2 < size; i2++) {
if (arrayList.get(i2).getType().equals(String.class)) {
pVarArr[i2] = new p();
} else {
pVarArr[i2] = pVar;
z2 = true;
}
}
p pVar2 = new p();
e.q(0, size - 1, pVar2, pVarArr);
for (int i3 = 0; i3 < size; i3++) {
if (!pVarArr[i3].equals(pVar)) {
e.i(pVarArr[i3]);
e.c(3, 0, null, 0, null);
e.t(25, 1);
e.s(192, str);
e.b(180, str, arrayList.get(i3).getName(), "Ljava/lang/String;");
e.e(176);
}
}
if (z2) {
e.i(pVar);
e.c(3, 0, null, 0, null);
s(e, "String");
}
e.i(pVar2);
e.c(3, 0, null, 0, null);
i = 5;
} else {
i = 6;
}
r(e);
e.n(i, 3);
}
public static void p(f fVar, String str, ArrayList<Field> arrayList) {
int i;
q e = fVar.e(1, "set", "(Ljava/lang/Object;ILjava/lang/Object;)V", null, null);
e.t(21, 2);
if (!arrayList.isEmpty()) {
i = 5;
int size = arrayList.size();
p[] pVarArr = new p[size];
for (int i2 = 0; i2 < size; i2++) {
pVarArr[i2] = new p();
}
p pVar = new p();
e.q(0, size - 1, pVar, pVarArr);
for (int i3 = 0; i3 < size; i3++) {
Field field = arrayList.get(i3);
w j = w.j(field.getType());
e.i(pVarArr[i3]);
e.c(3, 0, null, 0, null);
e.t(25, 1);
e.s(192, str);
e.t(25, 3);
switch (j.i()) {
case 1:
e.s(192, "java/lang/Boolean");
e.o(182, "java/lang/Boolean", "booleanValue", "()Z");
break;
case 2:
e.s(192, "java/lang/Character");
e.o(182, "java/lang/Character", "charValue", "()C");
break;
case 3:
e.s(192, "java/lang/Byte");
e.o(182, "java/lang/Byte", "byteValue", "()B");
break;
case 4:
e.s(192, "java/lang/Short");
e.o(182, "java/lang/Short", "shortValue", "()S");
break;
case 5:
e.s(192, "java/lang/Integer");
e.o(182, "java/lang/Integer", "intValue", "()I");
break;
case 6:
e.s(192, "java/lang/Float");
e.o(182, "java/lang/Float", "floatValue", "()F");
break;
case 7:
e.s(192, "java/lang/Long");
e.o(182, "java/lang/Long", "longValue", "()J");
break;
case 8:
e.s(192, "java/lang/Double");
e.o(182, "java/lang/Double", "doubleValue", "()D");
break;
case 9:
e.s(192, j.d());
break;
case 10:
e.s(192, j.g());
break;
}
e.b(181, str, field.getName(), j.d());
e.e(177);
}
e.i(pVar);
e.c(3, 0, null, 0, null);
} else {
i = 6;
}
r(e);
e.n(i, 4);
}
public static void q(f fVar, String str, ArrayList<Field> arrayList, w wVar) {
int i;
String str2;
int i2;
int i3;
String str3;
String str4;
String str5;
String d = wVar.d();
switch (wVar.i()) {
case 1:
str4 = "setBoolean";
str3 = str4;
i2 = 21;
str2 = str3;
i = 4;
break;
case 2:
str4 = "setChar";
str3 = str4;
i2 = 21;
str2 = str3;
i = 4;
break;
case 3:
str4 = "setByte";
str3 = str4;
i2 = 21;
str2 = str3;
i = 4;
break;
case 4:
str4 = "setShort";
str3 = str4;
i2 = 21;
str2 = str3;
i = 4;
break;
case 5:
str4 = "setInt";
str3 = str4;
i2 = 21;
str2 = str3;
i = 4;
break;
case 6:
i2 = 23;
str3 = "setFloat";
str2 = str3;
i = 4;
break;
case 7:
i2 = 22;
str5 = "setLong";
str2 = str5;
i = 5;
break;
case 8:
i2 = 24;
str5 = "setDouble";
str2 = str5;
i = 5;
break;
default:
str3 = "set";
i2 = 25;
str2 = str3;
i = 4;
break;
}
q e = fVar.e(1, str2, a.v("(Ljava/lang/Object;I", d, ")V"), null, null);
e.t(21, 2);
if (!arrayList.isEmpty()) {
int size = arrayList.size();
p[] pVarArr = new p[size];
p pVar = new p();
boolean z2 = false;
for (int i4 = 0; i4 < size; i4++) {
if (w.j(arrayList.get(i4).getType()).equals(wVar)) {
pVarArr[i4] = new p();
} else {
pVarArr[i4] = pVar;
z2 = true;
}
}
p pVar2 = new p();
e.q(0, size - 1, pVar2, pVarArr);
for (int i5 = 0; i5 < size; i5++) {
if (!pVarArr[i5].equals(pVar)) {
e.i(pVarArr[i5]);
e.c(3, 0, null, 0, null);
e.t(25, 1);
e.s(192, str);
e.t(i2, 3);
e.b(181, str, arrayList.get(i5).getName(), d);
e.e(177);
}
}
if (z2) {
e.i(pVar);
e.c(3, 0, null, 0, null);
s(e, wVar.c());
}
e.i(pVar2);
e.c(3, 0, null, 0, null);
i3 = 5;
} else {
i3 = 6;
}
r(e);
e.n(i3, i);
}
public static q r(q qVar) {
qVar.s(187, "java/lang/IllegalArgumentException");
qVar.e(89);
qVar.s(187, "java/lang/StringBuilder");
qVar.e(89);
qVar.j("Field not found: ");
qVar.o(183, "java/lang/StringBuilder", "<init>", "(Ljava/lang/String;)V");
qVar.t(21, 2);
qVar.o(182, "java/lang/StringBuilder", "append", "(I)Ljava/lang/StringBuilder;");
qVar.o(182, "java/lang/StringBuilder", "toString", "()Ljava/lang/String;");
qVar.o(183, "java/lang/IllegalArgumentException", "<init>", "(Ljava/lang/String;)V");
qVar.e(191);
return qVar;
}
public static q s(q qVar, String str) {
qVar.s(187, "java/lang/IllegalArgumentException");
qVar.e(89);
qVar.s(187, "java/lang/StringBuilder");
qVar.e(89);
qVar.j("Field not declared as " + str + ": ");
qVar.o(183, "java/lang/StringBuilder", "<init>", "(Ljava/lang/String;)V");
qVar.t(21, 2);
qVar.o(182, "java/lang/StringBuilder", "append", "(I)Ljava/lang/StringBuilder;");
qVar.o(182, "java/lang/StringBuilder", "toString", "()Ljava/lang/String;");
qVar.o(183, "java/lang/IllegalArgumentException", "<init>", "(Ljava/lang/String;)V");
qVar.e(191);
return qVar;
}
public abstract void A(Object obj, int i, long j);
public abstract void B(Object obj, int i, short s2);
public abstract Object b(Object obj, int i);
public abstract boolean c(Object obj, int i);
public abstract byte d(Object obj, int i);
public abstract char e(Object obj, int i);
public abstract double f(Object obj, int i);
public abstract float g(Object obj, int i);
public int h(String str) {
int length = this.a.length;
for (int i = 0; i < length; i++) {
if (this.a[i].equals(str)) {
return i;
}
}
throw new IllegalArgumentException(a.u("Unable to find non-private field: ", str));
}
public abstract int i(Object obj, int i);
public abstract long j(Object obj, int i);
public abstract short k(Object obj, int i);
public abstract String l(Object obj, int i);
public abstract void t(Object obj, int i, Object obj2);
public abstract void u(Object obj, int i, boolean z2);
public abstract void v(Object obj, int i, byte b);
public abstract void w(Object obj, int i, char c2);
public abstract void x(Object obj, int i, double d);
public abstract void y(Object obj, int i, float f);
public abstract void z(Object obj, int i, int i2);
}