Velasquez_V4 v3.0.0版本的 MD5 值为:f925d3b85f8d5849bcc8f37caec6acf7
以下内容为反编译后的 XposedHelpers.java 源代码,内容仅作参考
package andhook.lib.xposed;
import android.content.res.Resources;
import android.util.Log;
import com.swift.sandhook.utils.FileUtils$FileMode;
import dalvik.system.DexFile;
import java.io.BufferedReader;
import java.io.ByteArrayOutputStream;
import java.io.Closeable;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
import java.lang.reflect.Constructor;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Member;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.WeakHashMap;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.zip.ZipFile;
import obfuse4.obfuse.NPStringFog4;
public final class XposedHelpers {
private static final String f16 = "XposedHelpers";
private static final HashMap<String, Field> f19 = new HashMap<>();
private static final HashMap<String, Method> f20 = new HashMap<>();
private static final HashMap<String, Constructor<?>> f18 = new HashMap<>();
private static final WeakHashMap<Object, HashMap<String, Object>> f17 = new WeakHashMap<>();
private static final HashMap<String, ThreadLocal<AtomicInteger>> f21 = new HashMap<>();
public static Class<?> m90(String className, ClassLoader classLoader) {
if (classLoader == null) {
classLoader = ClassLoader.getSystemClassLoader();
}
try {
return classLoader.loadClass(className);
} catch (ClassNotFoundException e) {
throw new C0010(e);
}
}
public static Class<?> m91(String className, ClassLoader classLoader) {
try {
return m90(className, classLoader);
} catch (ClassNotFoundError e) {
return null;
}
}
public static Field m100(Class<?> clazz, String fieldName) {
String fullFieldName = clazz.getName() + '#' + fieldName;
if (f19.containsKey(fullFieldName)) {
Field field = f19.get(fullFieldName);
if (field == null) {
throw new NoSuchFieldError(fullFieldName);
}
return field;
}
try {
Field field2 = m102(clazz, fieldName);
field2.setAccessible(true);
f19.put(fullFieldName, field2);
return field2;
} catch (NoSuchFieldException e) {
f19.put(fullFieldName, null);
throw new NoSuchFieldError(fullFieldName);
}
}
public static Field m101(Class<?> clazz, String fieldName) {
try {
return m100(clazz, fieldName);
} catch (NoSuchFieldError e) {
return null;
}
}
private static Field m102(Class<?> clazz, String fieldName) throws NoSuchFieldException {
try {
return clazz.getDeclaredField(fieldName);
} catch (NoSuchFieldException e) {
while (true) {
clazz = clazz.getSuperclass();
if (clazz == null || clazz.equals(Object.class)) {
break;
}
try {
return clazz.getDeclaredField(fieldName);
} catch (NoSuchFieldException e2) {
}
}
throw e;
}
}
public static Field m103(Class<?> clazz, Class<?> type) {
Field[] declaredFields;
Class<? super Object> superclass;
Class<?> clz = clazz;
do {
for (Field field : clz.getDeclaredFields()) {
if (field.getType() == type) {
field.setAccessible(true);
return field;
}
}
superclass = clz.getSuperclass();
clz = superclass;
} while (superclass != null);
throw new NoSuchFieldError(NPStringFog4.decode("220D500A56155B03124449465412") + type.getName() + NPStringFog4.decode("440D5B46515955164110") + clazz.getName());
}
public static C0003 m88(Class<?> clazz, String methodName, Object... parameterTypesAndCallback) {
if (parameterTypesAndCallback.length == 0 || !(parameterTypesAndCallback[parameterTypesAndCallback.length - 1] instanceof XC_MethodHook)) {
throw new IllegalArgumentException(NPStringFog4.decode("0A0B15055359580753535B16555704590F5C00"));
}
XC_MethodHook callback = (XC_MethodHook) parameterTypesAndCallback[parameterTypesAndCallback.length - 1];
Method m = m107(clazz, methodName, m131(clazz.getClassLoader(), parameterTypesAndCallback));
return XposedBridge.m69(m, callback);
}
public static C0003 m89(String className, ClassLoader classLoader, String methodName, Object... parameterTypesAndCallback) {
return m88(m90(className, classLoader), methodName, parameterTypesAndCallback);
}
public static Method m108(Class<?> clazz, String methodName, Object... parameterTypes) {
return m107(clazz, methodName, m131(clazz.getClassLoader(), parameterTypes));
}
public static Method m110(Class<?> clazz, String methodName, Object... parameterTypes) {
try {
return m108(clazz, methodName, parameterTypes);
} catch (NoSuchMethodError | ClassNotFoundError e) {
return null;
}
}
public static Method m109(String className, ClassLoader classLoader, String methodName, Object... parameterTypes) {
return m107(m90(className, classLoader), methodName, m131(classLoader, parameterTypes));
}
public static Method m111(String className, ClassLoader classLoader, String methodName, Object... parameterTypes) {
try {
return m109(className, classLoader, methodName, parameterTypes);
} catch (NoSuchMethodError | ClassNotFoundError e) {
return null;
}
}
public static Method m107(Class<?> clazz, String methodName, Class<?>... parameterTypes) {
String fullMethodName = clazz.getName() + '#' + methodName + m134(parameterTypes) + NPStringFog4.decode("47014D075141");
if (f20.containsKey(fullMethodName)) {
Method method = f20.get(fullMethodName);
if (method == null) {
throw new NoSuchMethodError(fullMethodName);
}
return method;
}
try {
Method method2 = clazz.getDeclaredMethod(methodName, parameterTypes);
method2.setAccessible(true);
f20.put(fullMethodName, method2);
return method2;
} catch (NoSuchMethodException e) {
f20.put(fullMethodName, null);
throw new NoSuchMethodError(fullMethodName);
}
}
public static Method[] m112(Class<?> clazz, Class<?> returnType, Class<?>... parameterTypes) {
Method[] declaredMethods;
LinkedList<Method> result = new LinkedList<>();
for (Method method : clazz.getDeclaredMethods()) {
if (returnType == null || returnType == method.getReturnType()) {
Class<?>[] methodParameterTypes = method.getParameterTypes();
if (parameterTypes.length == methodParameterTypes.length) {
boolean match = true;
int i = 0;
while (true) {
if (i < parameterTypes.length) {
if (parameterTypes[i] == methodParameterTypes[i]) {
i++;
} else {
match = false;
break;
}
} else {
break;
}
}
if (match) {
method.setAccessible(true);
result.add(method);
}
}
}
}
return (Method[]) result.toArray(new Method[result.size()]);
}
public static Method m104(Class<?> clazz, String methodName, Class<?>... parameterTypes) {
Method[] declaredMethods;
Class<? super Object> superclass;
String fullMethodName = clazz.getName() + '#' + methodName + m134(parameterTypes) + NPStringFog4.decode("47065015465855115158");
if (f20.containsKey(fullMethodName)) {
Method method = f20.get(fullMethodName);
if (method == null) {
throw new NoSuchMethodError(fullMethodName);
}
return method;
}
try {
Method method2 = m107(clazz, methodName, parameterTypes);
f20.put(fullMethodName, method2);
return method2;
} catch (NoSuchMethodError e) {
Method bestMatch = null;
Class<?> clz = clazz;
boolean considerPrivateMethods = true;
do {
for (Method method3 : clz.getDeclaredMethods()) {
if ((considerPrivateMethods || !Modifier.isPrivate(method3.getModifiers())) && method3.getName().equals(methodName) && ClassUtils.m51(parameterTypes, method3.getParameterTypes(), true) && (bestMatch == null || MemberUtils.compareParameterTypes(method3.getParameterTypes(), bestMatch.getParameterTypes(), parameterTypes) < 0)) {
bestMatch = method3;
}
}
considerPrivateMethods = false;
superclass = clz.getSuperclass();
clz = superclass;
} while (superclass != null);
if (bestMatch != null) {
bestMatch.setAccessible(true);
f20.put(fullMethodName, bestMatch);
return bestMatch;
}
NoSuchMethodError e2 = new NoSuchMethodError(fullMethodName);
f20.put(fullMethodName, null);
throw e2;
}
}
public static Method m106(Class<?> clazz, String methodName, Object... args) {
return m104(clazz, methodName, m133(args));
}
public static Method m105(Class<?> clazz, String methodName, Class<?>[] parameterTypes, Object[] args) {
Class<?>[] argsClasses = null;
for (int i = 0; i < parameterTypes.length; i++) {
if (parameterTypes[i] == null) {
if (argsClasses == null) {
argsClasses = m133(args);
}
parameterTypes[i] = argsClasses[i];
}
}
return m104(clazz, methodName, parameterTypes);
}
public static Class<?>[] m133(Object... args) {
Class<?>[] clazzes = new Class[args.length];
for (int i = 0; i < args.length; i++) {
clazzes[i] = args[i] != null ? args[i].getClass() : null;
}
return clazzes;
}
private static Class<?>[] m131(ClassLoader classLoader, Object[] parameterTypesAndCallback) {
Class<?>[] parameterClasses = null;
for (int i = parameterTypesAndCallback.length - 1; i >= 0; i--) {
Object type = parameterTypesAndCallback[i];
if (type == null) {
throw new C0010(NPStringFog4.decode("140547075F5040004010444F4157425D144A10445F5C10125352185F43555B"), null);
}
if (!(type instanceof XC_MethodHook)) {
if (parameterClasses == null) {
parameterClasses = new Class[i + 1];
}
if (type instanceof Class) {
parameterClasses[i] = (Class) type;
} else if (type instanceof String) {
parameterClasses[i] = m90((String) type, classLoader);
} else {
throw new C0010(NPStringFog4.decode("140547075F5040004010444F4157425D144A1044545A105A544518535319444201075C005B505045534310755D531143415616446247165B5F50"), null);
}
}
}
if (parameterClasses == null) {
return new Class[0];
}
return parameterClasses;
}
public static Class<?>[] m119(Class<?>... clazzes) {
return clazzes;
}
private static String m134(Class<?>... clazzes) {
StringBuilder sb = new StringBuilder(NPStringFog4.decode("4C"));
boolean first = true;
for (Class<?> clazz : clazzes) {
if (first) {
first = false;
} else {
sb.append(NPStringFog4.decode("48"));
}
if (clazz != null) {
sb.append(clazz.getCanonicalName());
} else {
sb.append(NPStringFog4.decode("0A11590A"));
}
}
sb.append(NPStringFog4.decode("4D"));
return sb.toString();
}
public static Constructor<?> m96(Class<?> clazz, Object... parameterTypes) {
return m95(clazz, m131(clazz.getClassLoader(), parameterTypes));
}
public static Constructor<?> m98(Class<?> clazz, Object... parameterTypes) {
try {
return m96(clazz, parameterTypes);
} catch (NoSuchMethodError | ClassNotFoundError e) {
return null;
}
}
public static Constructor<?> m97(String className, ClassLoader classLoader, Object... parameterTypes) {
return m95(m90(className, classLoader), m131(classLoader, parameterTypes));
}
public static Constructor<?> m99(String className, ClassLoader classLoader, Object... parameterTypes) {
try {
return m97(className, classLoader, parameterTypes);
} catch (NoSuchMethodError | ClassNotFoundError e) {
return null;
}
}
public static Constructor<?> m95(Class<?> clazz, Class<?>... parameterTypes) {
String fullConstructorName = clazz.getName() + m134(parameterTypes) + NPStringFog4.decode("47014D075141");
if (f18.containsKey(fullConstructorName)) {
Constructor<?> constructor = f18.get(fullConstructorName);
if (constructor == null) {
throw new NoSuchMethodError(fullConstructorName);
}
return constructor;
}
try {
Constructor<?> constructor2 = clazz.getDeclaredConstructor(parameterTypes);
constructor2.setAccessible(true);
f18.put(fullConstructorName, constructor2);
return constructor2;
} catch (NoSuchMethodException e) {
f18.put(fullConstructorName, null);
throw new NoSuchMethodError(fullConstructorName);
}
}
public static C0003 m86(Class<?> clazz, Object... parameterTypesAndCallback) {
if (parameterTypesAndCallback.length == 0 || !(parameterTypesAndCallback[parameterTypesAndCallback.length - 1] instanceof XC_MethodHook)) {
throw new IllegalArgumentException(NPStringFog4.decode("0A0B15055359580753535B16555704590F5C00"));
}
XC_MethodHook callback = (XC_MethodHook) parameterTypesAndCallback[parameterTypesAndCallback.length - 1];
Constructor<?> m = m95(clazz, m131(clazz.getClassLoader(), parameterTypesAndCallback));
return XposedBridge.m69(m, callback);
}
public static C0003 m87(String className, ClassLoader classLoader, Object... parameterTypesAndCallback) {
return m86(m90(className, classLoader), parameterTypesAndCallback);
}
public static Constructor<?> m92(Class<?> clazz, Class<?>... parameterTypes) {
String fullConstructorName = clazz.getName() + m134(parameterTypes) + NPStringFog4.decode("47065015465855115158");
if (f18.containsKey(fullConstructorName)) {
Constructor<?> constructor = f18.get(fullConstructorName);
if (constructor == null) {
throw new NoSuchMethodError(fullConstructorName);
}
return constructor;
}
try {
Constructor<?> constructor2 = m95(clazz, parameterTypes);
f18.put(fullConstructorName, constructor2);
return constructor2;
} catch (NoSuchMethodError e) {
Constructor<?> bestMatch = null;
Constructor<?>[] constructors = clazz.getDeclaredConstructors();
for (Constructor<?> constructor3 : constructors) {
if (ClassUtils.m51(parameterTypes, constructor3.getParameterTypes(), true) && (bestMatch == null || MemberUtils.compareParameterTypes(constructor3.getParameterTypes(), bestMatch.getParameterTypes(), parameterTypes) < 0)) {
bestMatch = constructor3;
}
}
if (bestMatch != null) {
bestMatch.setAccessible(true);
f18.put(fullConstructorName, bestMatch);
return bestMatch;
}
f18.put(fullConstructorName, null);
throw new NoSuchMethodError(fullConstructorName);
}
}
public static Constructor<?> m94(Class<?> clazz, Object... args) {
return m92(clazz, m133(args));
}
public static Constructor<?> m93(Class<?> clazz, Class<?>[] parameterTypes, Object[] args) {
Class<?>[] argsClasses = null;
for (int i = 0; i < parameterTypes.length; i++) {
if (parameterTypes[i] == null) {
if (argsClasses == null) {
argsClasses = m133(args);
}
parameterTypes[i] = argsClasses[i];
}
}
return m92(clazz, parameterTypes);
}
public static int m121(Member method, Class<?> type) {
Class<?>[] classes = method instanceof Method ? ((Method) method).getParameterTypes() : ((Constructor) method).getParameterTypes();
for (int i = 0; i < classes.length; i++) {
if (classes[i] == type) {
return i;
}
}
throw new NoSuchFieldError(NPStringFog4.decode("2A0B15165347550857445544115D04101540140111") + type + NPStringFog4.decode("44025A135C51140C5C10") + method);
}
public static int m132(Member method, Class<?> type) {
Class<?>[] classes = method instanceof Method ? ((Method) method).getParameterTypes() : ((Constructor) method).getParameterTypes();
int idx = -1;
int i = 0;
while (true) {
int length = classes.length;
String decode = NPStringFog4.decode("44025A135C51140C5C10");
if (i < length) {
if (classes[i] == type) {
if (idx == -1) {
idx = i;
} else {
throw new NoSuchFieldError(NPStringFog4.decode("290B470312415C045C105F585412125113580901455616125E5118454F495212") + type + decode + method);
}
}
i++;
} else if (idx != -1) {
return idx;
} else {
throw new NoSuchFieldError(NPStringFog4.decode("2A0B15165347550857445544115D04101540140111") + type + decode + method);
}
}
}
public static void m163(Object obj, String fieldName, Object value) {
try {
m100(obj.getClass(), fieldName).set(obj, value);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static void m156(Object obj, String fieldName, boolean value) {
try {
m100(obj.getClass(), fieldName).setBoolean(obj, value);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static void m157(Object obj, String fieldName, byte value) {
try {
m100(obj.getClass(), fieldName).setByte(obj, value);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static void m158(Object obj, String fieldName, char value) {
try {
m100(obj.getClass(), fieldName).setChar(obj, value);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static void m159(Object obj, String fieldName, double value) {
try {
m100(obj.getClass(), fieldName).setDouble(obj, value);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static void m160(Object obj, String fieldName, float value) {
try {
m100(obj.getClass(), fieldName).setFloat(obj, value);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static void m161(Object obj, String fieldName, int value) {
try {
m100(obj.getClass(), fieldName).setInt(obj, value);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static void m162(Object obj, String fieldName, long value) {
try {
m100(obj.getClass(), fieldName).setLong(obj, value);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static void m164(Object obj, String fieldName, short value) {
try {
m100(obj.getClass(), fieldName).setShort(obj, value);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static Object m128(Object obj, String fieldName) {
try {
return m100(obj.getClass(), fieldName).get(obj);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static Object m145(Object obj) {
return m128(obj, NPStringFog4.decode("100C5C151605"));
}
public static boolean m116(Object obj, String fieldName) {
try {
return m100(obj.getClass(), fieldName).getBoolean(obj);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static byte m117(Object obj, String fieldName) {
try {
return m100(obj.getClass(), fieldName).getByte(obj);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static char m118(Object obj, String fieldName) {
try {
return m100(obj.getClass(), fieldName).getChar(obj);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static double m120(Object obj, String fieldName) {
try {
return m100(obj.getClass(), fieldName).getDouble(obj);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static float m122(Object obj, String fieldName) {
try {
return m100(obj.getClass(), fieldName).getFloat(obj);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static int m123(Object obj, String fieldName) {
try {
return m100(obj.getClass(), fieldName).getInt(obj);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static long m124(Object obj, String fieldName) {
try {
return m100(obj.getClass(), fieldName).getLong(obj);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static short m135(Object obj, String fieldName) {
try {
return m100(obj.getClass(), fieldName).getShort(obj);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static void m172(Class<?> clazz, String fieldName, Object value) {
try {
m100(clazz, fieldName).set(null, value);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static void m165(Class<?> clazz, String fieldName, boolean value) {
try {
m100(clazz, fieldName).setBoolean(null, value);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static void m166(Class<?> clazz, String fieldName, byte value) {
try {
m100(clazz, fieldName).setByte(null, value);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static void m167(Class<?> clazz, String fieldName, char value) {
try {
m100(clazz, fieldName).setChar(null, value);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static void m168(Class<?> clazz, String fieldName, double value) {
try {
m100(clazz, fieldName).setDouble(null, value);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static void m169(Class<?> clazz, String fieldName, float value) {
try {
m100(clazz, fieldName).setFloat(null, value);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static void m170(Class<?> clazz, String fieldName, int value) {
try {
m100(clazz, fieldName).setInt(null, value);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static void m171(Class<?> clazz, String fieldName, long value) {
try {
m100(clazz, fieldName).setLong(null, value);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static void m173(Class<?> clazz, String fieldName, short value) {
try {
m100(clazz, fieldName).setShort(null, value);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static Object m143(Class<?> clazz, String fieldName) {
try {
return m100(clazz, fieldName).get(null);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static boolean m136(Class<?> clazz, String fieldName) {
try {
return m100(clazz, fieldName).getBoolean(null);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static byte m137(Class<?> clazz, String fieldName) {
try {
return m100(clazz, fieldName).getByte(null);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static char m138(Class<?> clazz, String fieldName) {
try {
return m100(clazz, fieldName).getChar(null);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static double m139(Class<?> clazz, String fieldName) {
try {
return m100(clazz, fieldName).getDouble(null);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static float m140(Class<?> clazz, String fieldName) {
try {
return m100(clazz, fieldName).getFloat(null);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static int m141(Class<?> clazz, String fieldName) {
try {
return m100(clazz, fieldName).getInt(null);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static long m142(Class<?> clazz, String fieldName) {
try {
return m100(clazz, fieldName).getLong(null);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static short m144(Class<?> clazz, String fieldName) {
try {
return m100(clazz, fieldName).getShort(null);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
}
}
public static Object m78(Object obj, String methodName, Object... args) {
try {
return m106(obj.getClass(), methodName, args).invoke(obj, args);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
} catch (InvocationTargetException e3) {
throw new C0011(e3.getCause());
}
}
public static Object m77(Object obj, String methodName, Class<?>[] parameterTypes, Object... args) {
try {
return m105(obj.getClass(), methodName, parameterTypes, args).invoke(obj, args);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
} catch (InvocationTargetException e3) {
throw new C0011(e3.getCause());
}
}
public static Object m80(Class<?> clazz, String methodName, Object... args) {
try {
return m106(clazz, methodName, args).invoke(null, args);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
} catch (InvocationTargetException e3) {
throw new C0011(e3.getCause());
}
}
public static Object m79(Class<?> clazz, String methodName, Class<?>[] parameterTypes, Object... args) {
try {
return m105(clazz, methodName, parameterTypes, args).invoke(null, args);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
} catch (InvocationTargetException e3) {
throw new C0011(e3.getCause());
}
}
public static Object m149(Class<?> clazz, Object... args) {
try {
return m94(clazz, args).newInstance(args);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
} catch (InstantiationException e3) {
throw new InstantiationError(e3.getMessage());
} catch (InvocationTargetException e4) {
throw new C0011(e4.getCause());
}
}
public static Object m148(Class<?> clazz, Class<?>[] parameterTypes, Object... args) {
try {
return m93(clazz, parameterTypes, args).newInstance(args);
} catch (IllegalAccessException e) {
Log.w(NPStringFog4.decode("3C145A1557517C005E40554442"), e);
throw new IllegalAccessError(e.getMessage());
} catch (IllegalArgumentException e2) {
throw e2;
} catch (InstantiationException e3) {
throw new InstantiationError(e3.getMessage());
} catch (InvocationTargetException e4) {
throw new C0011(e4.getCause());
}
}
public static Object m153(Object obj, String key, Object value) {
HashMap<String, Object> objectFields;
Object put;
if (obj == null) {
throw new NullPointerException(NPStringFog4.decode("0B065F0351411408474344165F5D1610035C440A445F08"));
}
if (key == null) {
throw new NullPointerException(NPStringFog4.decode("0F014C465F404711125E5F42115007100F4C0808"));
}
synchronized (f17) {
objectFields = f17.get(obj);
if (objectFields == null) {
objectFields = new HashMap<>();
f17.put(obj, objectFields);
}
}
synchronized (objectFields) {
put = objectFields.put(key, value);
}
return put;
}
public static Object m113(Object obj, String key) {
Object obj2;
if (obj == null) {
throw new NullPointerException(NPStringFog4.decode("0B065F0351411408474344165F5D1610035C440A445F08"));
}
if (key == null) {
throw new NullPointerException(NPStringFog4.decode("0F014C465F404711125E5F42115007100F4C0808"));
}
synchronized (f17) {
HashMap<String, Object> objectFields = f17.get(obj);
if (objectFields == null) {
return null;
}
synchronized (objectFields) {
obj2 = objectFields.get(key);
}
return obj2;
}
}
public static Object m150(Object obj, String key) {
Object remove;
if (obj == null) {
throw new NullPointerException(NPStringFog4.decode("0B065F0351411408474344165F5D1610035C440A445F08"));
}
if (key == null) {
throw new NullPointerException(NPStringFog4.decode("0F014C465F404711125E5F42115007100F4C0808"));
}
synchronized (f17) {
HashMap<String, Object> objectFields = f17.get(obj);
if (objectFields == null) {
return null;
}
synchronized (objectFields) {
remove = objectFields.remove(key);
}
return remove;
}
}
public static Object m155(Object obj, String key, Object value) {
return m153(obj.getClass(), key, value);
}
public static Object m115(Object obj, String key) {
return m113(obj.getClass(), key);
}
public static Object m152(Object obj, String key) {
return m150(obj.getClass(), key);
}
public static Object m154(Class<?> clazz, String key, Object value) {
return m153(clazz, key, value);
}
public static Object m114(Class<?> clazz, String key) {
return m113(clazz, key);
}
public static Object m151(Class<?> clazz, String key) {
return m150(clazz, key);
}
public static byte[] m76(Resources res, String path) throws IOException {
return m147(res.getAssets().open(path));
}
static byte[] m147(InputStream is) throws IOException {
ByteArrayOutputStream buf = new ByteArrayOutputStream();
byte[] temp = new byte[FileUtils$FileMode.MODE_ISGID];
while (true) {
int read = is.read(temp);
if (read > 0) {
buf.write(temp, 0, read);
} else {
is.close();
return buf.toByteArray();
}
}
}
static void m82(Closeable c) {
if (c != null) {
try {
c.close();
} catch (IOException e) {
}
}
}
static void m81(DexFile dexFile) {
if (dexFile != null) {
try {
dexFile.close();
} catch (IOException e) {
}
}
}
static void m83(ZipFile zipFile) {
if (zipFile != null) {
try {
zipFile.close();
} catch (IOException e) {
}
}
}
public static String m125(String file) throws IOException {
try {
MessageDigest digest = MessageDigest.getInstance(NPStringFog4.decode("292000"));
InputStream is = new FileInputStream(file);
byte[] buffer = new byte[8192];
while (true) {
int read = is.read(buffer);
if (read > 0) {
digest.update(buffer, 0, read);
} else {
is.close();
byte[] md5sum = digest.digest();
BigInteger bigInt = new BigInteger(1, md5sum);
return bigInt.toString(16);
}
}
} catch (NoSuchAlgorithmException e) {
return "";
}
}
public static int m146(String method) {
return m127(method).get().incrementAndGet();
}
public static int m84(String method) {
return m127(method).get().decrementAndGet();
}
public static int m126(String method) {
return m127(method).get().get();
}
private static ThreadLocal<AtomicInteger> m127(String method) {
ThreadLocal<AtomicInteger> counter;
synchronized (f21) {
counter = f21.get(method);
if (counter == null) {
counter = new C0009();
f21.put(method, counter);
}
}
return counter;
}
static boolean m85(File file, String str) throws IOException {
String line;
BufferedReader in = null;
try {
in = new BufferedReader(new FileReader(file));
do {
line = in.readLine();
if (line == null) {
return false;
}
} while (!line.contains(str));
return true;
} finally {
m82(in);
}
}
static Method m129(Method method) {
int modifiers = method.getModifiers();
if (Modifier.isStatic(modifiers) || Modifier.isPrivate(modifiers)) {
return null;
}
String name = method.getName();
Class<?>[] parameters = method.getParameterTypes();
for (Class<?> clazz = method.getDeclaringClass().getSuperclass(); clazz != null; clazz = clazz.getSuperclass()) {
try {
Method superMethod = clazz.getDeclaredMethod(name, parameters);
int modifiers2 = superMethod.getModifiers();
if (!Modifier.isPrivate(modifiers2)) {
if (!Modifier.isAbstract(modifiers2)) {
return superMethod;
}
}
return null;
} catch (NoSuchMethodException e) {
}
}
return null;
}
static HashSet<Method> m130(Class<?> clazz) {
Method[] declaredMethods;
HashSet<Method> methods = new HashSet<>();
for (Method method : clazz.getDeclaredMethods()) {
Method overridden = m129(method);
if (overridden != null) {
methods.add(overridden);
}
}
return methods;
}
}