CrackMe.apk

Download file
    package com.google.thirdparty.publicsuffix;

import com.google.common.base.Joiner;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Queues;

final class TrieParser {
    private static final Joiner PREFIX_JOINER = Joiner.on("");

    TrieParser() {
    }

    static ImmutableMap<String, PublicSuffixType> parseTrie(CharSequence charSequence) {
        ImmutableMap.Builder builder = ImmutableMap.builder();
        int length = charSequence.length();
        int i = 0;
        while (i < length) {
            i += doParseTrieToBuilder(Queues.newArrayDeque(), charSequence, i, builder);
        }
        return builder.build();
    }

    /* JADX WARNING: Removed duplicated region for block: B:22:0x0052  */
    /* JADX WARNING: Removed duplicated region for block: B:35:0x0065 A[EDGE_INSN: B:35:0x0065->B:27:0x0065 ?: BREAK  , SYNTHETIC] */
    /* Code decompiled incorrectly, please refer to instructions dump. */
    private static int doParseTrieToBuilder(java.util.Deque<java.lang.CharSequence> r8, java.lang.CharSequence r9, int r10, com.google.common.collect.ImmutableMap.Builder<java.lang.String, com.google.thirdparty.publicsuffix.PublicSuffixType> r11) {
        /*
            int r0 = r9.length()
            r1 = 0
            r2 = r10
        L_0x0006:
            r3 = 58
            r4 = 33
            r5 = 44
            r6 = 63
            if (r2 >= r0) goto L_0x0024
            char r1 = r9.charAt(r2)
            r7 = 38
            if (r1 == r7) goto L_0x0024
            if (r1 == r6) goto L_0x0024
            if (r1 == r4) goto L_0x0024
            if (r1 == r3) goto L_0x0024
            if (r1 != r5) goto L_0x0021
            goto L_0x0024
        L_0x0021:
            int r2 = r2 + 1
            goto L_0x0006
        L_0x0024:
            java.lang.CharSequence r7 = r9.subSequence(r10, r2)
            java.lang.CharSequence r7 = reverse(r7)
            r8.push(r7)
            if (r1 == r4) goto L_0x0037
            if (r1 == r6) goto L_0x0037
            if (r1 == r3) goto L_0x0037
            if (r1 != r5) goto L_0x004a
        L_0x0037:
            com.google.common.base.Joiner r3 = PREFIX_JOINER
            java.lang.String r3 = r3.join((java.lang.Iterable<? extends java.lang.Object>) r8)
            int r4 = r3.length()
            if (r4 <= 0) goto L_0x004a
            com.google.thirdparty.publicsuffix.PublicSuffixType r4 = com.google.thirdparty.publicsuffix.PublicSuffixType.fromCode(r1)
            r11.put(r3, r4)
        L_0x004a:
            int r2 = r2 + 1
            if (r1 == r6) goto L_0x0065
            if (r1 == r5) goto L_0x0065
        L_0x0050:
            if (r2 >= r0) goto L_0x0065
            int r1 = doParseTrieToBuilder(r8, r9, r2, r11)
            int r2 = r2 + r1
            char r1 = r9.charAt(r2)
            if (r1 == r6) goto L_0x0063
            char r1 = r9.charAt(r2)
            if (r1 != r5) goto L_0x0050
        L_0x0063:
            int r2 = r2 + 1
        L_0x0065:
            r8.pop()
            int r2 = r2 - r10
            return r2
        */
        throw new UnsupportedOperationException("Method not decompiled: com.google.thirdparty.publicsuffix.TrieParser.doParseTrieToBuilder(java.util.Deque, java.lang.CharSequence, int, com.google.common.collect.ImmutableMap$Builder):int");
    }

    private static CharSequence reverse(CharSequence charSequence) {
        return new StringBuilder(charSequence).reverse();
    }
}
    
Download file