package defpackage;

import androidx.media3.container.NalUnitUtil;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
import java.util.Arrays;
import kotlin.Metadata;
import kotlin.reflect.KClass;

/* JADX INFO: loaded from: classes3.dex */
@Metadata(d1 = {"\u0000\u0002\n\u0000¨\u0006\u0000"}, d2 = {"kotlinx-serialization-core"}, k = 2, mv = {2, 0, 0}, xi = NalUnitUtil.H265_NAL_UNIT_TYPE_UNSPECIFIED)
@vx8
public final class h87 {
    /* JADX WARN: Code restructure failed: missing block: B:35:0x00c1, code lost:
    
        r12 = null;
     */
    /* JADX WARN: Code restructure failed: missing block: B:83:0x0188, code lost:
    
        r10 = null;
     */
    /* JADX WARN: Removed duplicated region for block: B:107:0x01d0  */
    /* JADX WARN: Removed duplicated region for block: B:41:0x00cd  */
    /*
        Code decompiled incorrectly, please refer to instructions dump.
    */
    public static final n25 a(KClass kClass, n25... n25VarArr) throws IllegalAccessException, InvocationTargetException {
        Object obj;
        n25 n25Var;
        Class<?> cls;
        Object obj2;
        Object obj3;
        n25 n25VarB;
        Field field;
        cr4.g(kClass, "<this>");
        cr4.g(n25VarArr, "args");
        Class clsB = h15.b(kClass);
        n25[] n25VarArr2 = (n25[]) Arrays.copyOf(n25VarArr, n25VarArr.length);
        cr4.g(n25VarArr2, "args");
        if (clsB.isEnum() && clsB.getAnnotation(si8.class) == null && clsB.getAnnotation(dc7.class) == null) {
            Object[] enumConstants = clsB.getEnumConstants();
            String canonicalName = clsB.getCanonicalName();
            cr4.f(canonicalName, "getCanonicalName(...)");
            cr4.e(enumConstants, "null cannot be cast to non-null type kotlin.Array<out kotlin.Enum<*>>");
            return new sn2(canonicalName, (Enum[]) enumConstants);
        }
        n25[] n25VarArr3 = (n25[]) Arrays.copyOf(n25VarArr2, n25VarArr2.length);
        jc7 jc7Var = null;
        try {
            Field declaredField = clsB.getDeclaredField("Companion");
            declaredField.setAccessible(true);
            obj = declaredField.get(null);
        } catch (Throwable unused) {
            obj = null;
        }
        n25 n25VarB2 = obj == null ? null : b(obj, (n25[]) Arrays.copyOf(n25VarArr3, n25VarArr3.length));
        if (n25VarB2 != null) {
            return n25VarB2;
        }
        String canonicalName2 = clsB.getCanonicalName();
        if (canonicalName2 == null || n89.ar(canonicalName2, "java.", false) || n89.ar(canonicalName2, "kotlin.", false)) {
            n25Var = null;
        } else {
            Field[] declaredFields = clsB.getDeclaredFields();
            cr4.f(declaredFields, "getDeclaredFields(...)");
            int length = declaredFields.length;
            Field field2 = null;
            int i = 0;
            boolean z = false;
            while (true) {
                if (i >= length) {
                    if (!z) {
                        break;
                    }
                } else {
                    Field field3 = declaredFields[i];
                    if (cr4.b(field3.getName(), "INSTANCE") && cr4.b(field3.getType(), clsB) && Modifier.isStatic(field3.getModifiers())) {
                        if (z) {
                            break;
                        }
                        z = true;
                        field2 = field3;
                    }
                    i++;
                }
            }
            if (field2 != null) {
                Object obj4 = field2.get(null);
                Method[] methods = clsB.getMethods();
                cr4.f(methods, "getMethods(...)");
                int length2 = methods.length;
                Method method = null;
                int i2 = 0;
                boolean z2 = false;
                while (true) {
                    if (i2 >= length2) {
                        if (!z2) {
                            break;
                        }
                    } else {
                        Method method2 = methods[i2];
                        if (cr4.b(method2.getName(), "serializer")) {
                            Class<?>[] parameterTypes = method2.getParameterTypes();
                            cr4.f(parameterTypes, "getParameterTypes(...)");
                            if (parameterTypes.length == 0 && cr4.b(method2.getReturnType(), n25.class)) {
                                if (z2) {
                                    break;
                                }
                                z2 = true;
                                method = method2;
                            }
                        }
                        i2++;
                    }
                }
                method = null;
                if (method != null) {
                    Object objInvoke = method.invoke(obj4, null);
                    if (objInvoke instanceof n25) {
                        n25Var = (n25) objInvoke;
                    }
                }
            }
        }
        if (n25Var != null) {
            return n25Var;
        }
        n25[] n25VarArr4 = (n25[]) Arrays.copyOf(n25VarArr2, n25VarArr2.length);
        Class<?>[] declaredClasses = clsB.getDeclaredClasses();
        cr4.f(declaredClasses, "getDeclaredClasses(...)");
        int length3 = declaredClasses.length;
        int i3 = 0;
        while (true) {
            if (i3 >= length3) {
                cls = null;
                break;
            }
            cls = declaredClasses[i3];
            if (cls.getAnnotation(zg6.class) != null) {
                break;
            }
            i3++;
        }
        if (cls == null) {
            obj2 = null;
        } else {
            try {
                Field declaredField2 = clsB.getDeclaredField(cls.getSimpleName());
                declaredField2.setAccessible(true);
                obj2 = declaredField2.get(null);
            } catch (Throwable unused2) {
                obj2 = null;
            }
        }
        if (obj2 == null || (n25VarB = b(obj2, (n25[]) Arrays.copyOf(n25VarArr4, n25VarArr4.length))) == null) {
            try {
                Class<?>[] declaredClasses2 = clsB.getDeclaredClasses();
                cr4.f(declaredClasses2, "getDeclaredClasses(...)");
                int length4 = declaredClasses2.length;
                Class<?> cls2 = null;
                int i4 = 0;
                boolean z3 = false;
                while (true) {
                    if (i4 < length4) {
                        Class<?> cls3 = declaredClasses2[i4];
                        if (cls3.getSimpleName().equals("$serializer")) {
                            if (z3) {
                                break;
                            }
                            z3 = true;
                            cls2 = cls3;
                        }
                        i4++;
                    } else if (!z3) {
                    }
                }
                obj3 = (cls2 == null || (field = cls2.getField("INSTANCE")) == null) ? null : field.get(null);
            } catch (NoSuchFieldException unused3) {
            }
            n25VarB = obj3 instanceof n25 ? (n25) obj3 : null;
        }
        if (n25VarB != null) {
            return n25VarB;
        }
        if (clsB.getAnnotation(dc7.class) == null) {
            si8 si8Var = (si8) clsB.getAnnotation(si8.class);
            if (si8Var != null) {
                Class clsWith = si8Var.with();
                kw7 kw7Var = iw7.a;
                if (cr4.b(kw7Var.getOrCreateKotlinClass(clsWith), kw7Var.getOrCreateKotlinClass(jc7.class))) {
                    jc7Var = new jc7(h15.e(clsB));
                }
            }
        }
        return jc7Var;
    }

    public static final n25 b(Object obj, n25... n25VarArr) throws IllegalAccessException, InvocationTargetException {
        Class[] clsArr;
        try {
            if (n25VarArr.length == 0) {
                clsArr = new Class[0];
            } else {
                int length = n25VarArr.length;
                Class[] clsArr2 = new Class[length];
                for (int i = 0; i < length; i++) {
                    clsArr2[i] = n25.class;
                }
                clsArr = clsArr2;
            }
            Object objInvoke = obj.getClass().getDeclaredMethod("serializer", (Class[]) Arrays.copyOf(clsArr, clsArr.length)).invoke(obj, Arrays.copyOf(n25VarArr, n25VarArr.length));
            if (objInvoke instanceof n25) {
                return (n25) objInvoke;
            }
            return null;
        } catch (NoSuchMethodException unused) {
            return null;
        } catch (InvocationTargetException e) {
            Throwable cause = e.getCause();
            if (cause == null) {
                throw e;
            }
            String message = cause.getMessage();
            if (message == null) {
                message = e.getMessage();
            }
            throw new InvocationTargetException(cause, message);
        }
    }

    public static final boolean c(KClass kClass) {
        cr4.g(kClass, "<this>");
        return h15.b(kClass).isInterface();
    }
}
