package e.a.q;

import java.lang.reflect.Array;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.Arrays;

/* JADX INFO: compiled from: Platform.kt */
/* JADX INFO: loaded from: classes.dex */
@d.n
public final class z0 {
    private static final Object a(Class<?> cls) {
        try {
            Field declaredField = cls.getDeclaredField("Companion");
            declaredField.setAccessible(true);
            return declaredField.get(null);
        } catch (Throwable unused) {
            return null;
        }
    }

    public static final <T> e.a.b<T> b(Class<T> cls, e.a.b<Object>... bVarArr) throws IllegalAccessException, InvocationTargetException {
        Object obj;
        Field field;
        e.a.b<T> bVarE;
        d.n0.c.s.e(cls, "<this>");
        d.n0.c.s.e(bVarArr, "args");
        if (cls.isEnum() && h(cls)) {
            return c(cls);
        }
        if (cls.isInterface() && (bVarE = e(cls)) != null) {
            return bVarE;
        }
        e.a.b<T> bVarF = f(cls, (e.a.b[]) Arrays.copyOf(bVarArr, bVarArr.length));
        if (bVarF != null) {
            return bVarF;
        }
        e.a.b<T> bVarD = d(cls);
        if (bVarD != null) {
            return bVarD;
        }
        try {
            Class<?>[] declaredClasses = cls.getDeclaredClasses();
            d.n0.c.s.d(declaredClasses, "declaredClasses");
            int length = declaredClasses.length;
            int i = 0;
            Class<?> cls2 = null;
            boolean z = false;
            while (true) {
                if (i >= length) {
                    if (!z) {
                        break;
                    }
                } else {
                    Class<?> cls3 = declaredClasses[i];
                    if (d.n0.c.s.a(cls3.getSimpleName(), "$serializer")) {
                        if (z) {
                            break;
                        }
                        z = true;
                        cls2 = cls3;
                    }
                    i++;
                }
            }
            cls2 = null;
            Class<?> cls4 = cls2;
            obj = (cls4 == null || (field = cls4.getField("INSTANCE")) == null) ? null : field.get(null);
        } catch (NoSuchFieldException unused) {
        }
        e.a.b<T> bVar = obj instanceof e.a.b ? (e.a.b) obj : null;
        if (bVar != null) {
            return bVar;
        }
        if (i(cls)) {
            return new e.a.e(d.n0.a.c(cls));
        }
        return null;
    }

    private static final <T> e.a.b<T> c(Class<T> cls) {
        T[] enumConstants = cls.getEnumConstants();
        String canonicalName = cls.getCanonicalName();
        d.n0.c.s.d(canonicalName, "canonicalName");
        d.n0.c.s.c(enumConstants, "null cannot be cast to non-null type kotlin.Array<out kotlin.Enum<*>>");
        return new y(canonicalName, (Enum[]) enumConstants);
    }

    /* JADX WARN: Code restructure failed: missing block: B:42:0x0096, code lost:
    
        r6 = null;
     */
    /* JADX WARN: Removed duplicated region for block: B:35:0x0089  */
    /*
        Code decompiled incorrectly, please refer to instructions dump.
        To view partially-correct add '--show-bad-code' argument
    */
    private static final <T> e.a.b<T> d(java.lang.Class<T> r11) throws java.lang.IllegalAccessException, java.lang.reflect.InvocationTargetException {
        /*
            java.lang.reflect.Field[] r0 = r11.getDeclaredFields()
            java.lang.String r1 = "declaredFields"
            d.n0.c.s.d(r0, r1)
            int r1 = r0.length
            r2 = 0
            r3 = 0
            r4 = r2
            r5 = r4
            r6 = r3
        Lf:
            r7 = 1
            if (r4 >= r1) goto L41
            r8 = r0[r4]
            java.lang.String r9 = r8.getName()
            java.lang.String r10 = "INSTANCE"
            boolean r9 = d.n0.c.s.a(r9, r10)
            if (r9 == 0) goto L36
            java.lang.Class r9 = r8.getType()
            boolean r9 = d.n0.c.s.a(r9, r11)
            if (r9 == 0) goto L36
            int r9 = r8.getModifiers()
            boolean r9 = java.lang.reflect.Modifier.isStatic(r9)
            if (r9 == 0) goto L36
            r9 = r7
            goto L37
        L36:
            r9 = r2
        L37:
            if (r9 == 0) goto L3e
            if (r5 == 0) goto L3c
            goto L43
        L3c:
            r5 = r7
            r6 = r8
        L3e:
            int r4 = r4 + 1
            goto Lf
        L41:
            if (r5 != 0) goto L44
        L43:
            r6 = r3
        L44:
            java.lang.reflect.Field r6 = (java.lang.reflect.Field) r6
            if (r6 != 0) goto L49
            return r3
        L49:
            java.lang.Object r0 = r6.get(r3)
            java.lang.reflect.Method[] r11 = r11.getMethods()
            java.lang.String r1 = "methods"
            d.n0.c.s.d(r11, r1)
            int r1 = r11.length
            r4 = r2
            r5 = r4
            r6 = r3
        L5a:
            if (r4 >= r1) goto L94
            r8 = r11[r4]
            java.lang.String r9 = r8.getName()
            java.lang.String r10 = "serializer"
            boolean r9 = d.n0.c.s.a(r9, r10)
            if (r9 == 0) goto L89
            java.lang.Class[] r9 = r8.getParameterTypes()
            java.lang.String r10 = "it.parameterTypes"
            d.n0.c.s.d(r9, r10)
            int r9 = r9.length
            if (r9 != 0) goto L78
            r9 = r7
            goto L79
        L78:
            r9 = r2
        L79:
            if (r9 == 0) goto L89
            java.lang.Class r9 = r8.getReturnType()
            java.lang.Class<e.a.b> r10 = e.a.b.class
            boolean r9 = d.n0.c.s.a(r9, r10)
            if (r9 == 0) goto L89
            r9 = r7
            goto L8a
        L89:
            r9 = r2
        L8a:
            if (r9 == 0) goto L91
            if (r5 == 0) goto L8f
            goto L96
        L8f:
            r5 = r7
            r6 = r8
        L91:
            int r4 = r4 + 1
            goto L5a
        L94:
            if (r5 != 0) goto L97
        L96:
            r6 = r3
        L97:
            java.lang.reflect.Method r6 = (java.lang.reflect.Method) r6
            if (r6 != 0) goto L9c
            return r3
        L9c:
            java.lang.Object[] r11 = new java.lang.Object[r2]
            java.lang.Object r11 = r6.invoke(r0, r11)
            boolean r0 = r11 instanceof e.a.b
            if (r0 == 0) goto La9
            r3 = r11
            e.a.b r3 = (e.a.b) r3
        La9:
            return r3
        */
        throw new UnsupportedOperationException("Method not decompiled: e.a.q.z0.d(java.lang.Class):e.a.b");
    }

    private static final <T> e.a.b<T> e(Class<T> cls) {
        e.a.h hVar = (e.a.h) cls.getAnnotation(e.a.h.class);
        if (hVar == null || d.n0.c.s.a(d.n0.c.x.b(hVar.with()), d.n0.c.x.b(e.a.e.class))) {
            return new e.a.e(d.n0.a.c(cls));
        }
        return null;
    }

    private static final <T> e.a.b<T> f(Class<?> cls, e.a.b<Object>... bVarArr) throws IllegalAccessException, InvocationTargetException {
        Class[] clsArr;
        Object objA = a(cls);
        if (objA == null) {
            return null;
        }
        try {
            if (bVarArr.length == 0) {
                clsArr = new Class[0];
            } else {
                int length = bVarArr.length;
                Class[] clsArr2 = new Class[length];
                for (int i = 0; i < length; i++) {
                    clsArr2[i] = e.a.b.class;
                }
                clsArr = clsArr2;
            }
            Object objInvoke = objA.getClass().getDeclaredMethod("serializer", (Class[]) Arrays.copyOf(clsArr, clsArr.length)).invoke(objA, Arrays.copyOf(bVarArr, bVarArr.length));
            if (objInvoke instanceof e.a.b) {
                return (e.a.b) objInvoke;
            }
            return null;
        } catch (NoSuchMethodException unused) {
            return null;
        } catch (InvocationTargetException e2) {
            Throwable cause = e2.getCause();
            if (cause == null) {
                throw e2;
            }
            String message = cause.getMessage();
            if (message == null) {
                message = e2.getMessage();
            }
            throw new InvocationTargetException(cause, message);
        }
    }

    public static final boolean g(Object obj, d.q0.b<?> bVar) {
        d.n0.c.s.e(obj, "<this>");
        d.n0.c.s.e(bVar, "kclass");
        return d.n0.a.b(bVar).isInstance(obj);
    }

    private static final <T> boolean h(Class<T> cls) {
        return cls.getAnnotation(e.a.h.class) == null && cls.getAnnotation(e.a.d.class) == null;
    }

    private static final <T> boolean i(Class<T> cls) {
        if (cls.getAnnotation(e.a.d.class) != null) {
            return true;
        }
        e.a.h hVar = (e.a.h) cls.getAnnotation(e.a.h.class);
        return hVar != null && d.n0.c.s.a(d.n0.c.x.b(hVar.with()), d.n0.c.x.b(e.a.e.class));
    }

    public static final Void j(Class<?> cls) {
        d.n0.c.s.e(cls, "<this>");
        throw new e.a.i("Serializer for class '" + cls.getSimpleName() + "' is not found.\nMark the class as @Serializable or provide the serializer explicitly.");
    }

    public static final <T, E extends T> E[] k(ArrayList<E> arrayList, d.q0.b<T> bVar) {
        d.n0.c.s.e(arrayList, "<this>");
        d.n0.c.s.e(bVar, "eClass");
        Object objNewInstance = Array.newInstance((Class<?>) d.n0.a.a(bVar), arrayList.size());
        d.n0.c.s.c(objNewInstance, "null cannot be cast to non-null type kotlin.Array<E of kotlinx.serialization.internal.PlatformKt.toNativeArrayImpl>");
        E[] eArr = (E[]) arrayList.toArray((Object[]) objNewInstance);
        d.n0.c.s.d(eArr, "toArray(java.lang.reflec….java, size) as Array<E>)");
        return eArr;
    }
}
