Source/sources/gnu/kawa/slib/XStrings.java
public static java.lang.Object substring(java.lang.Object r13, java.lang.Object r14, java.lang.Object r15) {
        /*
            r9 = 1
            r10 = 0
            r12 = -2
            gnu.mapping.Values r11 = gnu.mapping.Values.empty
            if (r13 != r11) goto L_0x000f
            r8 = r9
        L_0x0008:
            if (r8 == 0) goto L_0x0011
            if (r8 == 0) goto L_0x001a
        L_0x000c:
            gnu.mapping.Values r9 = gnu.mapping.Values.empty
        L_0x000e:
            return r9
        L_0x000f:
            r8 = r10
            goto L_0x0008
        L_0x0011:
            gnu.mapping.Values r11 = gnu.mapping.Values.empty
            if (r14 != r11) goto L_0x0040
            r8 = r9
        L_0x0016:
            if (r8 == 0) goto L_0x0042
            if (r8 != 0) goto L_0x000c
        L_0x001a:
            r0 = r13
            java.lang.String r0 = (java.lang.String) r0     // Catch:{ ClassCastException -> 0x0049 }
            r5 = r0
            int r7 = r5.length()
            r0 = r14
            java.lang.Number r0 = (java.lang.Number) r0     // Catch:{ ClassCastException -> 0x0052 }
            r9 = r0
            int r6 = r9.intValue()     // Catch:{ ClassCastException -> 0x0052 }
            int r2 = r6 + -1
            r0 = r15
            java.lang.Number r0 = (java.lang.Number) r0     // Catch:{ ClassCastException -> 0x005b }
            r9 = r0
            int r3 = r9.intValue()     // Catch:{ ClassCastException -> 0x005b }
            int r1 = r7 - r2
            if (r3 <= r1) goto L_0x0047
            r4 = r1
        L_0x0039:
            int r9 = r2 + r4
            java.lang.String r9 = r5.substring(r2, r9)
            goto L_0x000e
        L_0x0040:
            r8 = r10
            goto L_0x0016
        L_0x0042:
            gnu.mapping.Values r9 = gnu.mapping.Values.empty
            if (r15 != r9) goto L_0x001a
            goto L_0x000c
        L_0x0047:
            r4 = r3
            goto L_0x0039
        L_0x0049:
            r9 = move-exception
            gnu.mapping.WrongType r10 = new gnu.mapping.WrongType
            java.lang.String r11 = "s"
            r10.<init>(r9, r11, r12, r13)
            throw r10
        L_0x0052:
            r9 = move-exception
            gnu.mapping.WrongType r10 = new gnu.mapping.WrongType
            java.lang.String r11 = "sindex"
            r10.<init>(r9, r11, r12, r14)
            throw r10
        L_0x005b:
            r9 = move-exception
            gnu.mapping.WrongType r10 = new gnu.mapping.WrongType
            java.lang.String r11 = "len"
            r10.<init>(r9, r11, r12, r15)
            throw r10
        */
        throw new UnsupportedOperationException("Method not decompiled: gnu.kawa.slib.XStrings.substring(java.lang.Object, java.lang.Object, java.lang.Object):java.lang.Object");
    }
/* Code decompiled incorrectly, please refer to instructions dump. */
Code decompiled incorrectly, please refer to instructions dump.
Code decompiled incorrectly please refer to instructions dump .
public static java.lang.Object substring(java.lang.Object r13, java.lang.Object r14, java.lang.Object r15) {
        /*
            r9 = 1
            r10 = 0
            r12 = -2
            gnu.mapping.Values r11 = gnu.mapping.Values.empty
            if (r13 != r11) goto L_0x000f
            r8 = r9
        L_0x0008:
            if (r8 == 0) goto L_0x0011
            if (r8 == 0) goto L_0x001a
        L_0x000c:
            gnu.mapping.Values r9 = gnu.mapping.Values.empty
        L_0x000e:
            return r9
        L_0x000f:
            r8 = r10
            goto L_0x0008
        L_0x0011:
            gnu.mapping.Values r11 = gnu.mapping.Values.empty
            if (r14 != r11) goto L_0x0040
            r8 = r9
        L_0x0016:
            if (r8 == 0) goto L_0x0042
            if (r8 != 0) goto L_0x000c
        L_0x001a:
            r0 = r13
            java.lang.String r0 = (java.lang.String) r0     // Catch:{ ClassCastException -> 0x0049 }
            r5 = r0
            int r7 = r5.length()
            r0 = r14
            java.lang.Number r0 = (java.lang.Number) r0     // Catch:{ ClassCastException -> 0x0052 }
            r9 = r0
            int r6 = r9.intValue()     // Catch:{ ClassCastException -> 0x0052 }
            int r2 = r6 + -1
            r0 = r15
            java.lang.Number r0 = (java.lang.Number) r0     // Catch:{ ClassCastException -> 0x005b }
            r9 = r0
            int r3 = r9.intValue()     // Catch:{ ClassCastException -> 0x005b }
            int r1 = r7 - r2
            if (r3 <= r1) goto L_0x0047
            r4 = r1
        L_0x0039:
            int r9 = r2 + r4
            java.lang.String r9 = r5.substring(r2, r9)
            goto L_0x000e
        L_0x0040:
            r8 = r10
            goto L_0x0016
        L_0x0042:
            gnu.mapping.Values r9 = gnu.mapping.Values.empty
            if (r15 != r9) goto L_0x001a
            goto L_0x000c
        L_0x0047:
            r4 = r3
            goto L_0x0039
        L_0x0049:
            r9 = move-exception
            gnu.mapping.WrongType r10 = new gnu.mapping.WrongType
            java.lang.String r11 = "s"
            r10.<init>(r9, r11, r12, r13)
            throw r10
        L_0x0052:
            r9 = move-exception
            gnu.mapping.WrongType r10 = new gnu.mapping.WrongType
            java.lang.String r11 = "sindex"
            r10.<init>(r9, r11, r12, r14)
            throw r10
        L_0x005b:
            r9 = move-exception
            gnu.mapping.WrongType r10 = new gnu.mapping.WrongType
            java.lang.String r11 = "len"
            r10.<init>(r9, r11, r12, r15)
            throw r10
        */
        throw new UnsupportedOperationException("Method not decompiled: gnu.kawa.slib.XStrings.substring(java.lang.Object, java.lang.Object, java.lang.Object):java.lang.Object");
    }
public static java . lang . Object substring ( java . lang . Object r13 , java . lang . Object r14 , java . lang . Object r15 ) { /*
            r9 = 1
            r10 = 0
            r12 = -2
            gnu.mapping.Values r11 = gnu.mapping.Values.empty
            if (r13 != r11) goto L_0x000f
            r8 = r9
        L_0x0008:
            if (r8 == 0) goto L_0x0011
            if (r8 == 0) goto L_0x001a
        L_0x000c:
            gnu.mapping.Values r9 = gnu.mapping.Values.empty
        L_0x000e:
            return r9
        L_0x000f:
            r8 = r10
            goto L_0x0008
        L_0x0011:
            gnu.mapping.Values r11 = gnu.mapping.Values.empty
            if (r14 != r11) goto L_0x0040
            r8 = r9
        L_0x0016:
            if (r8 == 0) goto L_0x0042
            if (r8 != 0) goto L_0x000c
        L_0x001a:
            r0 = r13
            java.lang.String r0 = (java.lang.String) r0     // Catch:{ ClassCastException -> 0x0049 }
            r5 = r0
            int r7 = r5.length()
            r0 = r14
            java.lang.Number r0 = (java.lang.Number) r0     // Catch:{ ClassCastException -> 0x0052 }
            r9 = r0
            int r6 = r9.intValue()     // Catch:{ ClassCastException -> 0x0052 }
            int r2 = r6 + -1
            r0 = r15
            java.lang.Number r0 = (java.lang.Number) r0     // Catch:{ ClassCastException -> 0x005b }
            r9 = r0
            int r3 = r9.intValue()     // Catch:{ ClassCastException -> 0x005b }
            int r1 = r7 - r2
            if (r3 <= r1) goto L_0x0047
            r4 = r1
        L_0x0039:
            int r9 = r2 + r4
            java.lang.String r9 = r5.substring(r2, r9)
            goto L_0x000e
        L_0x0040:
            r8 = r10
            goto L_0x0016
        L_0x0042:
            gnu.mapping.Values r9 = gnu.mapping.Values.empty
            if (r15 != r9) goto L_0x001a
            goto L_0x000c
        L_0x0047:
            r4 = r3
            goto L_0x0039
        L_0x0049:
            r9 = move-exception
            gnu.mapping.WrongType r10 = new gnu.mapping.WrongType
            java.lang.String r11 = "s"
            r10.<init>(r9, r11, r12, r13)
            throw r10
        L_0x0052:
            r9 = move-exception
            gnu.mapping.WrongType r10 = new gnu.mapping.WrongType
            java.lang.String r11 = "sindex"
            r10.<init>(r9, r11, r12, r14)
            throw r10
        L_0x005b:
            r9 = move-exception
            gnu.mapping.WrongType r10 = new gnu.mapping.WrongType
            java.lang.String r11 = "len"
            r10.<init>(r9, r11, r12, r15)
            throw r10
        */ throw new UnsupportedOperationException ( "Method not decompiled: gnu.kawa.slib.XStrings.substring(java.lang.Object, java.lang.Object, java.lang.Object):java.lang.Object" ) ; }
Code decompiled incorrectly, please refer to instructions dump.
Code decompiled incorrectly please refer to instructions dump .