CrackMe.apk
Download file
package okhttp3.internal.tls;
import java.security.cert.X509Certificate;
import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
import java.util.Map;
import java.util.Set;
import javax.security.auth.x500.X500Principal;
import kotlin.Metadata;
import kotlin.jvm.internal.Intrinsics;
@Metadata(bv = {1, 0, 3}, d1 = {"\u00008\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u0011\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0010$\n\u0002\u0018\u0002\n\u0002\u0010\"\n\u0000\n\u0002\u0010\u000b\n\u0000\n\u0002\u0010\u0000\n\u0002\b\u0003\n\u0002\u0010\b\n\u0000\u0018\u00002\u00020\u0001B\u0019\u0012\u0012\u0010\u0002\u001a\n\u0012\u0006\b\u0001\u0012\u00020\u00040\u0003\"\u00020\u0004¢\u0006\u0002\u0010\u0005J\u0013\u0010\n\u001a\u00020\u000b2\b\u0010\f\u001a\u0004\u0018\u00010\rH\u0002J\u0012\u0010\u000e\u001a\u0004\u0018\u00010\u00042\u0006\u0010\u000f\u001a\u00020\u0004H\u0016J\b\u0010\u0010\u001a\u00020\u0011H\u0016R \u0010\u0006\u001a\u0014\u0012\u0004\u0012\u00020\b\u0012\n\u0012\b\u0012\u0004\u0012\u00020\u00040\t0\u0007X\u0004¢\u0006\u0002\n\u0000¨\u0006\u0012"}, d2 = {"Lokhttp3/internal/tls/BasicTrustRootIndex;", "Lokhttp3/internal/tls/TrustRootIndex;", "caCerts", "", "Ljava/security/cert/X509Certificate;", "([Ljava/security/cert/X509Certificate;)V", "subjectToCaCerts", "", "Ljavax/security/auth/x500/X500Principal;", "", "equals", "", "other", "", "findByIssuerAndSignature", "cert", "hashCode", "", "okhttp"}, k = 1, mv = {1, 4, 0})
/* compiled from: BasicTrustRootIndex.kt */
public final class BasicTrustRootIndex implements TrustRootIndex {
private final Map<X500Principal, Set<X509Certificate>> subjectToCaCerts;
public BasicTrustRootIndex(X509Certificate... x509CertificateArr) {
Intrinsics.checkNotNullParameter(x509CertificateArr, "caCerts");
Map<X500Principal, Set<X509Certificate>> linkedHashMap = new LinkedHashMap<>();
for (X509Certificate x509Certificate : x509CertificateArr) {
X500Principal subjectX500Principal = x509Certificate.getSubjectX500Principal();
Intrinsics.checkNotNullExpressionValue(subjectX500Principal, "caCert.subjectX500Principal");
Set<X509Certificate> set = linkedHashMap.get(subjectX500Principal);
if (set == null) {
set = new LinkedHashSet<>();
linkedHashMap.put(subjectX500Principal, set);
}
set.add(x509Certificate);
}
this.subjectToCaCerts = linkedHashMap;
}
/* JADX DEBUG: Multi-variable search result rejected for TypeSearchVarInfo{r1v1, resolved type: java.security.cert.X509Certificate} */
/* JADX DEBUG: Multi-variable search result rejected for TypeSearchVarInfo{r1v2, resolved type: java.security.cert.X509Certificate} */
/* JADX DEBUG: Multi-variable search result rejected for TypeSearchVarInfo{r2v1, resolved type: java.lang.Object} */
/* JADX DEBUG: Multi-variable search result rejected for TypeSearchVarInfo{r3v0, resolved type: java.security.cert.X509Certificate} */
/* JADX DEBUG: Multi-variable search result rejected for TypeSearchVarInfo{r1v4, resolved type: java.security.cert.X509Certificate} */
/* JADX WARNING: Multi-variable type inference failed */
/* Code decompiled incorrectly, please refer to instructions dump. */
public java.security.cert.X509Certificate findByIssuerAndSignature(java.security.cert.X509Certificate r5) {
/*
r4 = this;
java.lang.String r0 = "cert"
kotlin.jvm.internal.Intrinsics.checkNotNullParameter(r5, r0)
javax.security.auth.x500.X500Principal r0 = r5.getIssuerX500Principal()
java.util.Map<javax.security.auth.x500.X500Principal, java.util.Set<java.security.cert.X509Certificate>> r1 = r4.subjectToCaCerts
java.lang.Object r0 = r1.get(r0)
java.util.Set r0 = (java.util.Set) r0
r1 = 0
if (r0 == 0) goto L_0x0036
java.lang.Iterable r0 = (java.lang.Iterable) r0
java.util.Iterator r0 = r0.iterator()
L_0x001a:
boolean r2 = r0.hasNext()
if (r2 == 0) goto L_0x0034
java.lang.Object r2 = r0.next()
r3 = r2
java.security.cert.X509Certificate r3 = (java.security.cert.X509Certificate) r3
java.security.PublicKey r3 = r3.getPublicKey() // Catch:{ Exception -> 0x0030 }
r5.verify(r3) // Catch:{ Exception -> 0x0030 }
r3 = 1
goto L_0x0031
L_0x0030:
r3 = 0
L_0x0031:
if (r3 == 0) goto L_0x001a
r1 = r2
L_0x0034:
java.security.cert.X509Certificate r1 = (java.security.cert.X509Certificate) r1
L_0x0036:
return r1
*/
throw new UnsupportedOperationException("Method not decompiled: okhttp3.internal.tls.BasicTrustRootIndex.findByIssuerAndSignature(java.security.cert.X509Certificate):java.security.cert.X509Certificate");
}
public boolean equals(Object obj) {
BasicTrustRootIndex basicTrustRootIndex = this;
return obj == this || ((obj instanceof BasicTrustRootIndex) && Intrinsics.areEqual((Object) ((BasicTrustRootIndex) obj).subjectToCaCerts, (Object) this.subjectToCaCerts));
}
public int hashCode() {
return this.subjectToCaCerts.hashCode();
}
}
Download file