package org.jmrtd.lds.icao; import com.airbnb.deeplinkdispatch.UrlTreeKt; import com.google.common.base.Ascii; import java.io.ByteArrayInputStream; import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.UnsupportedEncodingException; import java.util.logging.Logger; import net.sf.scuba.data.Gender; import org.jmrtd.lds.AbstractLDSInfo; /* loaded from: classes6.dex */ public class MRZInfo extends AbstractLDSInfo { public static final int DOC_TYPE_ID1 = 1; public static final int DOC_TYPE_ID2 = 2; public static final int DOC_TYPE_ID3 = 3; public static final int DOC_TYPE_UNSPECIFIED = 0; private static final Logger LOGGER; private static final String MRZ_CHARS = "<0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"; private static int a = 0; private static short[] b = null; private static byte[] c = null; private static int d = 0; private static int e = 0; private static int j = 0; private static final long serialVersionUID = 7054965914471297804L; private char compositeCheckDigit; private String dateOfBirth; private char dateOfBirthCheckDigit; private String dateOfExpiry; private char dateOfExpiryCheckDigit; private String documentCode; private String documentNumber; private char documentNumberCheckDigit; private int documentType; private Gender gender; private String issuingState; private String nationality; private String optionalData1; private String optionalData2; private String primaryIdentifier; private String secondaryIdentifier; private static final byte[] $$a = {76, 73, -112, -126}; private static final int $$b = 57; private static int $10 = 0; private static int $11 = 1; private static int i = 1; /* JADX WARN: Removed duplicated region for block: B:10:0x002a */ /* JADX WARN: Removed duplicated region for block: B:7:0x0022 */ /* JADX WARN: Unsupported multi-entry loop pattern (BACK_EDGE: B:10:0x002a -> B:4:0x002e). Please report as a decompilation issue!!! */ /* Code decompiled incorrectly, please refer to instructions dump. To view partially-correct add '--show-bad-code' argument */ private static void g(int r6, byte r7, short r8, java.lang.Object[] r9) { /* int r6 = r6 * 4 int r6 = 4 - r6 int r8 = r8 * 4 int r0 = 1 - r8 int r7 = r7 * 2 int r7 = r7 + 108 byte[] r1 = org.jmrtd.lds.icao.MRZInfo.$$a byte[] r0 = new byte[r0] r2 = 0 int r8 = 0 - r8 if (r1 != 0) goto L19 r4 = r7 r3 = r2 r7 = r6 goto L2e L19: r3 = r2 r5 = r7 r7 = r6 r6 = r5 L1d: byte r4 = (byte) r6 r0[r3] = r4 if (r3 != r8) goto L2a java.lang.String r6 = new java.lang.String r6.(r0, r2) r9[r2] = r6 return L2a: int r3 = r3 + 1 r4 = r1[r7] L2e: int r6 = r6 + r4 int r7 = r7 + 1 goto L1d */ throw new UnsupportedOperationException("Method not decompiled: org.jmrtd.lds.icao.MRZInfo.g(int, byte, short, java.lang.Object[]):void"); } static { j = 0; a(); LOGGER = Logger.getLogger("org.jmrtd"); int i2 = i + 9; j = i2 % 128; int i3 = i2 % 2; } /* JADX WARN: Code restructure failed: missing block: B:12:0x0031, code lost: if ((!r5.startsWith("V")) == false) goto L17; */ /* JADX WARN: Code restructure failed: missing block: B:14:0x0039, code lost: if ((!r5.startsWith("V")) == false) goto L17; */ /* JADX WARN: Code restructure failed: missing block: B:22:0x0078, code lost: if ((r5 % 2) == 0) goto L33; */ /* Code decompiled incorrectly, please refer to instructions dump. To view partially-correct add '--show-bad-code' argument */ public MRZInfo(java.lang.String r5, java.lang.String r6, java.lang.String r7, java.lang.String r8, java.lang.String r9, java.lang.String r10, java.lang.String r11, net.sf.scuba.data.Gender r12, java.lang.String r13, java.lang.String r14) { /* r4 = this; r4.() if (r5 == 0) goto Lb4 int r0 = r5.length() if (r0 <= 0) goto Lb4 int r0 = r5.length() r1 = 2 if (r0 > r1) goto Lb4 java.lang.String r0 = "P" boolean r0 = r5.startsWith(r0) r2 = 1 if (r0 != 0) goto L3b int r0 = org.jmrtd.lds.icao.MRZInfo.i int r0 = r0 + 33 int r3 = r0 % 128 org.jmrtd.lds.icao.MRZInfo.j = r3 int r0 = r0 % r1 java.lang.String r3 = "V" if (r0 == 0) goto L34 boolean r0 = r5.startsWith(r3) r3 = 13 int r3 = r3 / 0 r0 = r0 ^ r2 if (r0 != 0) goto Lb4 goto L3b L34: boolean r0 = r5.startsWith(r3) r0 = r0 ^ r2 if (r0 != 0) goto Lb4 L3b: int r0 = getDocumentTypeFromDocumentCode(r5) r4.documentType = r0 java.lang.String r5 = trimFillerChars(r5) r4.documentCode = r5 r4.issuingState = r6 r4.primaryIdentifier = r7 r4.secondaryIdentifier = r8 java.lang.String r5 = trimFillerChars(r9) r4.documentNumber = r5 r4.nationality = r10 r4.dateOfBirth = r11 r4.gender = r12 r4.dateOfExpiry = r13 java.lang.String r5 = "" if (r14 == 0) goto Lae boolean r6 = equalsModuloFillerChars(r14, r5) if (r6 != 0) goto Lae int r5 = r14.length() r6 = 15 if (r5 != r6) goto L7b r4.optionalData1 = r14 int r5 = org.jmrtd.lds.icao.MRZInfo.j int r5 = r5 + 85 int r6 = r5 % 128 org.jmrtd.lds.icao.MRZInfo.i = r6 int r5 = r5 % r1 if (r5 != 0) goto L9c goto Lb0 L7b: int r5 = r14.length() r6 = 14 if (r5 > r6) goto L9e java.lang.StringBuilder r5 = new java.lang.StringBuilder r5.() java.lang.String r6 = mrzFormat(r14, r6) r5.append(r6) char r6 = checkDigit(r14, r2) r5.append(r6) java.lang.String r5 = r5.toString() r4.optionalData1 = r5 L9c: int r1 = r1 % r1 goto Lb0 L9e: java.lang.IllegalArgumentException r5 = new java.lang.IllegalArgumentException java.lang.String r6 = "Wrong personal number: " java.lang.String r7 = java.lang.String.valueOf(r14) java.lang.String r6 = r6.concat(r7) r5.(r6) throw r5 Lae: r4.optionalData1 = r5 Lb0: r4.checkDigit() return Lb4: java.lang.IllegalArgumentException r6 = new java.lang.IllegalArgumentException java.lang.String r7 = "Wrong document code: " java.lang.String r5 = java.lang.String.valueOf(r5) java.lang.String r5 = r7.concat(r5) r6.(r5) throw r6 */ throw new UnsupportedOperationException("Method not decompiled: org.jmrtd.lds.icao.MRZInfo.(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, net.sf.scuba.data.Gender, java.lang.String, java.lang.String):void"); } /* JADX WARN: Code restructure failed: missing block: B:14:0x003c, code lost: if (r14.startsWith("A") != false) goto L19; */ /* JADX WARN: Code restructure failed: missing block: B:16:0x0043, code lost: if (r14.startsWith("A") != false) goto L19; */ /* Code decompiled incorrectly, please refer to instructions dump. To view partially-correct add '--show-bad-code' argument */ public MRZInfo(java.lang.String r14, java.lang.String r15, java.lang.String r16, java.lang.String r17, java.lang.String r18, net.sf.scuba.data.Gender r19, java.lang.String r20, java.lang.String r21, java.lang.String r22, java.lang.String r23, java.lang.String r24) { /* Method dump skipped, instructions count: 280 To view this dump add '--comments-level debug' option */ throw new UnsupportedOperationException("Method not decompiled: org.jmrtd.lds.icao.MRZInfo.(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, net.sf.scuba.data.Gender, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String):void"); } public MRZInfo(InputStream inputStream, int i2) { try { readObject(inputStream, i2); } catch (IOException e2) { Logger logger = LOGGER; StringBuilder sb = new StringBuilder("Exception: "); sb.append(e2.getMessage()); logger.severe(sb.toString()); throw new IllegalArgumentException(e2.getMessage()); } } public MRZInfo(String str) { if (str == null) { throw new IllegalArgumentException("Null string"); } String replace = str.trim().replace("\n", ""); try { readObject(new ByteArrayInputStream(replace.getBytes("UTF-8")), replace.length()); int i2 = j + 9; i = i2 % 128; if (i2 % 2 == 0) { throw null; } } catch (UnsupportedEncodingException e2) { Logger logger = LOGGER; StringBuilder sb = new StringBuilder("Exception: "); sb.append(e2.getMessage()); logger.severe(sb.toString()); throw new IllegalStateException(e2.getMessage()); } catch (IOException e3) { Logger logger2 = LOGGER; StringBuilder sb2 = new StringBuilder("Exception: "); sb2.append(e3.getMessage()); logger2.severe(sb2.toString()); throw new IllegalArgumentException(e3.getMessage()); } catch (Exception e4) { throw e4; } } /* JADX WARN: Code restructure failed: missing block: B:45:0x01d2, code lost: if ((!r4) != false) goto L45; */ /* JADX WARN: Code restructure failed: missing block: B:46:0x01e6, code lost: r4 = 1; */ /* JADX WARN: Code restructure failed: missing block: B:84:0x01e8, code lost: r4 = 0; */ /* JADX WARN: Code restructure failed: missing block: B:86:0x01e4, code lost: if (r4 != false) goto L44; */ /* Code decompiled incorrectly, please refer to instructions dump. To view partially-correct add '--show-bad-code' argument */ private static void f(short r19, byte r20, int r21, int r22, int r23, java.lang.Object[] r24) { /* Method dump skipped, instructions count: 809 To view this dump add '--comments-level debug' option */ throw new UnsupportedOperationException("Method not decompiled: org.jmrtd.lds.icao.MRZInfo.f(short, byte, int, int, int, java.lang.Object[]):void"); } /* JADX WARN: Removed duplicated region for block: B:10:0x0054 */ /* JADX WARN: Removed duplicated region for block: B:16:0x00f4 */ /* Code decompiled incorrectly, please refer to instructions dump. To view partially-correct add '--show-bad-code' argument */ private void readObject(java.io.InputStream r5, int r6) throws java.io.IOException { /* Method dump skipped, instructions count: 354 To view this dump add '--comments-level debug' option */ throw new UnsupportedOperationException("Method not decompiled: org.jmrtd.lds.icao.MRZInfo.readObject(java.io.InputStream, int):void"); } @Override // org.jmrtd.lds.AbstractLDSInfo public void writeObject(OutputStream outputStream) throws IOException { int i2 = 2 % 2; DataOutputStream dataOutputStream = new DataOutputStream(outputStream); writeDocumentType(dataOutputStream); if (this.documentType != 1) { writeIssuingState(dataOutputStream); writeName(dataOutputStream, 39); writeString(this.documentNumber, dataOutputStream, 9); dataOutputStream.write(this.documentNumberCheckDigit); writeNationality(dataOutputStream); writeDateOfBirth(dataOutputStream); dataOutputStream.write(this.dateOfBirthCheckDigit); writeGender(dataOutputStream); writeDateOfExpiry(dataOutputStream); dataOutputStream.write(this.dateOfExpiryCheckDigit); writeString(this.optionalData1, dataOutputStream, 15); dataOutputStream.write(this.compositeCheckDigit); return; } int i3 = i + 31; j = i3 % 128; int i4 = i3 % 2; writeIssuingState(dataOutputStream); if (this.documentNumber.length() > 9) { int i5 = i + 43; j = i5 % 128; if (i5 % 2 != 0) { equalsModuloFillerChars(this.optionalData1, ""); Object obj = null; obj.hashCode(); throw null; } if (equalsModuloFillerChars(this.optionalData1, "")) { writeString(this.documentNumber.substring(0, 9), dataOutputStream, 9); dataOutputStream.write(60); StringBuilder sb = new StringBuilder(); String str = this.documentNumber; sb.append(str.substring(9, str.length())); sb.append(this.documentNumberCheckDigit); sb.append(UrlTreeKt.configurablePathSegmentPrefix); writeString(sb.toString(), dataOutputStream, 15); writeDateOfBirth(dataOutputStream); dataOutputStream.write(this.dateOfBirthCheckDigit); writeGender(dataOutputStream); writeDateOfExpiry(dataOutputStream); dataOutputStream.write(this.dateOfExpiryCheckDigit); writeNationality(dataOutputStream); writeString(this.optionalData2, dataOutputStream, 11); dataOutputStream.write(this.compositeCheckDigit); writeName(dataOutputStream, 30); } } writeString(this.documentNumber, dataOutputStream, 9); dataOutputStream.write(this.documentNumberCheckDigit); writeString(this.optionalData1, dataOutputStream, 15); writeDateOfBirth(dataOutputStream); dataOutputStream.write(this.dateOfBirthCheckDigit); writeGender(dataOutputStream); writeDateOfExpiry(dataOutputStream); dataOutputStream.write(this.dateOfExpiryCheckDigit); writeNationality(dataOutputStream); writeString(this.optionalData2, dataOutputStream, 11); dataOutputStream.write(this.compositeCheckDigit); writeName(dataOutputStream, 30); } public void setDateOfBirth(String str) { int i2 = 2 % 2; int i3 = j + 11; i = i3 % 128; if (i3 % 2 != 0) { this.dateOfBirth = str; checkDigit(); } else { this.dateOfBirth = str; checkDigit(); throw null; } } public void setDateOfExpiry(String str) { int i2 = 2 % 2; int i3 = i + 29; j = i3 % 128; if (i3 % 2 == 0) { this.dateOfExpiry = str; checkDigit(); } else { this.dateOfExpiry = str; checkDigit(); int i4 = 55 / 0; } } public void setDocumentNumber(String str) { int i2 = 2 % 2; int i3 = j + 113; i = i3 % 128; int i4 = i3 % 2; this.documentNumber = str.trim(); checkDigit(); int i5 = i + 37; j = i5 % 128; int i6 = i5 % 2; } /* JADX WARN: Code restructure failed: missing block: B:10:0x0028, code lost: r3.optionalData2 = ""; */ /* JADX WARN: Code restructure failed: missing block: B:12:0x0022, code lost: if (r4 == 1) goto L9; */ /* JADX WARN: Code restructure failed: missing block: B:4:0x0016, code lost: if (r4 == 0) goto L9; */ /* JADX WARN: Code restructure failed: missing block: B:9:0x0026, code lost: if (r3.optionalData2 != null) goto L12; */ /* Code decompiled incorrectly, please refer to instructions dump. To view partially-correct add '--show-bad-code' argument */ public void setDocumentCode(java.lang.String r4) { /* r3 = this; r0 = 2 int r1 = r0 % r0 int r1 = org.jmrtd.lds.icao.MRZInfo.i int r1 = r1 + 3 int r2 = r1 % 128 org.jmrtd.lds.icao.MRZInfo.j = r2 int r1 = r1 % r0 if (r1 == 0) goto L19 r3.documentCode = r4 int r4 = getDocumentTypeFromDocumentCode(r4) r3.documentType = r4 if (r4 != 0) goto L2c goto L24 L19: r3.documentCode = r4 int r4 = getDocumentTypeFromDocumentCode(r4) r3.documentType = r4 r1 = 1 if (r4 != r1) goto L2c L24: java.lang.String r4 = r3.optionalData2 if (r4 != 0) goto L2c java.lang.String r4 = "" r3.optionalData2 = r4 L2c: int r4 = org.jmrtd.lds.icao.MRZInfo.j int r4 = r4 + 95 int r1 = r4 % 128 org.jmrtd.lds.icao.MRZInfo.i = r1 int r4 = r4 % r0 return */ throw new UnsupportedOperationException("Method not decompiled: org.jmrtd.lds.icao.MRZInfo.setDocumentCode(java.lang.String):void"); } public void setIssuingState(String str) { int i2 = 2 % 2; int i3 = i + 23; j = i3 % 128; int i4 = i3 % 2; this.issuingState = str; checkDigit(); int i5 = i + 107; j = i5 % 128; int i6 = i5 % 2; } public void setPrimaryIdentifier(String str) { int i2 = 2 % 2; int i3 = i + 115; j = i3 % 128; int i4 = i3 % 2; this.primaryIdentifier = str.trim(); checkDigit(); int i5 = j + 45; i = i5 % 128; if (i5 % 2 == 0) { throw null; } } public String[] getSecondaryIdentifierComponents() { int i2 = 2 % 2; int i3 = j + 71; i = i3 % 128; int i4 = i3 % 2; String[] split = this.secondaryIdentifier.split(" |<"); int i5 = j + 71; i = i5 % 128; if (i5 % 2 != 0) { return split; } throw null; } public void setSecondaryIdentifierComponents(String[] strArr) { int i2 = 2 % 2; if (strArr == null) { int i3 = j + 51; i = i3 % 128; int i4 = i3 % 2; this.secondaryIdentifier = null; } else { int i5 = i + 13; j = i5 % 128; int i6 = i5 % 2; int i7 = 0; while (i7 < strArr.length) { String str = strArr[i7]; int length = strArr.length; i7++; int i8 = j + 77; i = i8 % 128; if (i8 % 2 == 0) { int i9 = 3 % 4; } } } checkDigit(); } public void setSecondaryIdentifiers(String str) { int i2 = 2 % 2; int i3 = j + 5; i = i3 % 128; int i4 = i3 % 2; readSecondaryIdentifiers(str.trim()); checkDigit(); int i5 = i + 7; j = i5 % 128; int i6 = i5 % 2; } public void setNationality(String str) { int i2 = 2 % 2; int i3 = i + 53; j = i3 % 128; int i4 = i3 % 2; this.nationality = str; checkDigit(); int i5 = i + 33; j = i5 % 128; if (i5 % 2 == 0) { return; } Object obj = null; obj.hashCode(); throw null; } public String getPersonalNumber() { int i2 = 2 % 2; int i3 = j + 121; i = i3 % 128; if (i3 % 2 != 0 ? this.optionalData1.length() > 14 : this.optionalData1.length() > 16) { String trimFillerChars = trimFillerChars(this.optionalData1.substring(0, 14)); int i4 = j + 101; i = i4 % 128; int i5 = i4 % 2; return trimFillerChars; } return trimFillerChars(this.optionalData1); } public void setPersonalNumber(String str) { int i2 = 2 % 2; if (str != null) { int i3 = i + 45; j = i3 % 128; int i4 = i3 % 2; if (str.length() <= 14) { StringBuilder sb = new StringBuilder(); sb.append(mrzFormat(str, 14)); sb.append(checkDigit(str, true)); this.optionalData1 = sb.toString(); int i5 = j + 11; i = i5 % 128; int i6 = i5 % 2; return; } } throw new IllegalArgumentException("Wrong personal number"); } public void setOptionalData2(String str) { int i2 = 2 % 2; int i3 = i + 73; j = i3 % 128; int i4 = i3 % 2; this.optionalData2 = trimFillerChars(str); checkDigit(); int i5 = i + 29; j = i5 % 128; if (i5 % 2 == 0) { return; } Object obj = null; obj.hashCode(); throw null; } public void setGender(Gender gender) { int i2 = 2 % 2; int i3 = i + 29; j = i3 % 128; int i4 = i3 % 2; this.gender = gender; checkDigit(); int i5 = j + 31; i = i5 % 128; if (i5 % 2 != 0) { return; } Object obj = null; obj.hashCode(); throw null; } public String toString() { int i2 = 2 % 2; try { String str = new String(getEncoded(), "UTF-8"); int length = str.length(); if (length == 88) { StringBuilder sb = new StringBuilder(); sb.append(str.substring(0, 44)); sb.append("\n"); sb.append(str.substring(44, 88)); sb.append("\n"); String obj = sb.toString(); int i3 = i + 111; j = i3 % 128; int i4 = i3 % 2; return obj; } if (length != 90) { int i5 = i + 109; j = i5 % 128; int i6 = i5 % 2; return str; } StringBuilder sb2 = new StringBuilder(); sb2.append(str.substring(0, 30)); sb2.append("\n"); sb2.append(str.substring(30, 60)); sb2.append("\n"); sb2.append(str.substring(60, 90)); sb2.append("\n"); return sb2.toString(); } catch (UnsupportedEncodingException e2) { Logger logger = LOGGER; StringBuilder sb3 = new StringBuilder("Exception: "); sb3.append(e2.getMessage()); logger.severe(sb3.toString()); throw new IllegalStateException(e2.getMessage()); } } public int hashCode() { int i2 = 2 % 2; int i3 = j + 57; i = i3 % 128; int i4 = i3 % 2; int hashCode = (toString().hashCode() << 1) + 53; int i5 = j + 19; i = i5 % 128; if (i5 % 2 != 0) { return hashCode; } Object obj = null; obj.hashCode(); throw null; } /* JADX WARN: Code restructure failed: missing block: B:28:0x0076, code lost: if (r7.nationality != null) goto L40; */ /* JADX WARN: Code restructure failed: missing block: B:44:0x00f5, code lost: if (r7.gender != null) goto L76; */ /* JADX WARN: Code restructure failed: missing block: B:74:0x00d9, code lost: if (r2.equals(r7.dateOfBirth) != false) goto L72; */ /* Code decompiled incorrectly, please refer to instructions dump. To view partially-correct add '--show-bad-code' argument */ public boolean equals(java.lang.Object r7) { /* Method dump skipped, instructions count: 296 To view this dump add '--comments-level debug' option */ throw new UnsupportedOperationException("Method not decompiled: org.jmrtd.lds.icao.MRZInfo.equals(java.lang.Object):boolean"); } public static char checkDigit(String str) { int i2 = 2 % 2; int i3 = i + 29; j = i3 % 128; int i4 = i3 % 2; char checkDigit = checkDigit(str, false); int i5 = j + 123; i = i5 % 128; if (i5 % 2 != 0) { return checkDigit; } throw null; } private void readNameIdentifiers(String str) { int i2 = 2 % 2; int indexOf = str.indexOf("<<"); if (indexOf < 0) { throw new IllegalArgumentException("Input does not contain primary identifier!"); } int i3 = j + 77; i = i3 % 128; int i4 = i3 % 2; this.primaryIdentifier = trimFillerChars(str.substring(0, indexOf)); readSecondaryIdentifiers(str.substring(str.indexOf("<<") + 2)); int i5 = i + 109; j = i5 % 128; if (i5 % 2 == 0) { return; } Object obj = null; obj.hashCode(); throw null; } private void writeString(String str, DataOutputStream dataOutputStream, int i2) throws IOException { int i3 = 2 % 2; int i4 = j + 63; i = i4 % 128; int i5 = i4 % 2; dataOutputStream.write(mrzFormat(str, i2).getBytes("UTF-8")); int i6 = i + 9; j = i6 % 128; int i7 = i6 % 2; } private void writeIssuingState(DataOutputStream dataOutputStream) throws IOException { int i2 = 2 % 2; int i3 = i + 77; j = i3 % 128; if (i3 % 2 != 0) { dataOutputStream.write(this.issuingState.getBytes("UTF-8")); int i4 = 41 / 0; } else { dataOutputStream.write(this.issuingState.getBytes("UTF-8")); } int i5 = i + 55; j = i5 % 128; int i6 = i5 % 2; } private void writeDateOfExpiry(DataOutputStream dataOutputStream) throws IOException { int i2 = 2 % 2; int i3 = j + 13; i = i3 % 128; if (i3 % 2 == 0) { dataOutputStream.write(this.dateOfExpiry.getBytes("UTF-8")); throw null; } dataOutputStream.write(this.dateOfExpiry.getBytes("UTF-8")); int i4 = j + 119; i = i4 % 128; int i5 = i4 % 2; } private void writeGender(DataOutputStream dataOutputStream) throws IOException { int i2 = 2 % 2; int i3 = j + 93; i = i3 % 128; int i4 = i3 % 2; dataOutputStream.write(genderToString().getBytes("UTF-8")); int i5 = i + 101; j = i5 % 128; int i6 = i5 % 2; } private void writeDateOfBirth(DataOutputStream dataOutputStream) throws IOException { int i2 = 2 % 2; int i3 = i + 11; j = i3 % 128; int i4 = i3 % 2; dataOutputStream.write(this.dateOfBirth.getBytes("UTF-8")); int i5 = j + 117; i = i5 % 128; int i6 = i5 % 2; } private void writeNationality(DataOutputStream dataOutputStream) throws IOException { int i2 = 2 % 2; int i3 = j + 41; i = i3 % 128; if (i3 % 2 != 0) { dataOutputStream.write(this.nationality.getBytes("UTF-8")); } else { dataOutputStream.write(this.nationality.getBytes("UTF-8")); int i4 = 10 / 0; } } private void writeName(DataOutputStream dataOutputStream, int i2) throws IOException { int i3 = 2 % 2; int i4 = j + 123; i = i4 % 128; int i5 = i4 % 2; dataOutputStream.write(nameToString(i2).getBytes("UTF-8")); int i6 = j + 97; i = i6 % 128; if (i6 % 2 == 0) { int i7 = 97 / 0; } } private void writeDocumentType(DataOutputStream dataOutputStream) throws IOException { int i2 = 2 % 2; int i3 = i + 99; j = i3 % 128; int i4 = i3 % 2; writeString(this.documentCode, dataOutputStream, 2); int i5 = i + 17; j = i5 % 128; int i6 = i5 % 2; } /* JADX INFO: Access modifiers changed from: package-private */ /* renamed from: org.jmrtd.lds.icao.MRZInfo$1, reason: invalid class name */ /* loaded from: classes6.dex */ public static /* synthetic */ class AnonymousClass1 { static final int[] $SwitchMap$net$sf$scuba$data$Gender; static { int[] iArr = new int[Gender.values().length]; $SwitchMap$net$sf$scuba$data$Gender = iArr; try { iArr[Gender.MALE.ordinal()] = 1; } catch (NoSuchFieldError unused) { } try { $SwitchMap$net$sf$scuba$data$Gender[Gender.FEMALE.ordinal()] = 2; } catch (NoSuchFieldError unused2) { } } } private String genderToString() { int i2 = 2 % 2; int i3 = AnonymousClass1.$SwitchMap$net$sf$scuba$data$Gender[this.gender.ordinal()]; if (i3 == 1) { return "M"; } int i4 = j + 77; int i5 = i4 % 128; i = i5; if (i4 % 2 == 0) { if (i3 != 3) { return UrlTreeKt.configurablePathSegmentPrefix; } } else if (i3 != 2) { return UrlTreeKt.configurablePathSegmentPrefix; } int i6 = i5 + 49; j = i6 % 128; int i7 = i6 % 2; return "F"; } private String nameToString(int i2) { int i3 = 2 % 2; String[] split = this.primaryIdentifier.split(" |<"); String[] split2 = this.secondaryIdentifier.split(" |<"); StringBuffer stringBuffer = new StringBuffer(); int i4 = 0; while (i4 < split.length) { int i5 = i + 103; j = i5 % 128; int i6 = i5 % 2; stringBuffer.append(split[i4]); stringBuffer.append(UrlTreeKt.configurablePathSegmentPrefixChar); i4++; int i7 = i + 63; j = i7 % 128; if (i7 % 2 != 0) { int i8 = 4 % 4; } } for (String str : split2) { int i9 = j + 125; i = i9 % 128; int i10 = i9 % 2; stringBuffer.append(UrlTreeKt.configurablePathSegmentPrefixChar); stringBuffer.append(str); } return mrzFormat(stringBuffer.toString(), i2); } private String readString(DataInputStream dataInputStream, int i2) throws IOException { int i3 = 2 % 2; byte[] bArr = new byte[i2]; dataInputStream.readFully(bArr); String trim = new String(bArr).trim(); int i4 = j + 73; i = i4 % 128; int i5 = i4 % 2; return trim; } private String readStringWithFillers(DataInputStream dataInputStream, int i2) throws IOException { int i3 = 2 % 2; int i4 = i + 17; j = i4 % 128; int i5 = i4 % 2; String trimFillerChars = trimFillerChars(readString(dataInputStream, i2)); int i6 = i + 43; j = i6 % 128; int i7 = i6 % 2; return trimFillerChars; } private String readCountry(DataInputStream dataInputStream) throws IOException { int i2 = 2 % 2; int i3 = i + 3; j = i3 % 128; return i3 % 2 != 0 ? readString(dataInputStream, 2) : readString(dataInputStream, 3); } /* JADX ERROR: JadxRuntimeException in pass: IfRegionVisitor jadx.core.utils.exceptions.JadxRuntimeException: Can't remove SSA var: r5v15 java.lang.String, still in use, count: 2, list: (r5v15 java.lang.String) from 0x0015: INVOKE (r5v15 java.lang.String), ("M") VIRTUAL call: java.lang.String.equalsIgnoreCase(java.lang.String):boolean A[MD:(java.lang.String):boolean (c), WRAPPED] (LINE:815) (r5v15 java.lang.String) from 0x003a: PHI (r5v7 java.lang.String) = (r5v1 java.lang.String), (r5v15 java.lang.String) binds: [B:25:0x0025, B:4:0x0019] A[DONT_GENERATE, DONT_INLINE] at jadx.core.utils.InsnRemover.removeSsaVar(InsnRemover.java:151) at jadx.core.utils.InsnRemover.unbindResult(InsnRemover.java:116) at jadx.core.dex.visitors.regions.TernaryMod.makeTernaryInsn(TernaryMod.java:114) at jadx.core.dex.visitors.regions.TernaryMod.processRegion(TernaryMod.java:62) at jadx.core.dex.visitors.regions.TernaryMod.enterRegion(TernaryMod.java:45) at jadx.core.dex.visitors.regions.DepthRegionTraversal.traverseInternal(DepthRegionTraversal.java:67) at jadx.core.dex.visitors.regions.DepthRegionTraversal.lambda$traverseInternal$0(DepthRegionTraversal.java:68) at java.base/java.util.ArrayList.forEach(ArrayList.java:1597) at jadx.core.dex.visitors.regions.DepthRegionTraversal.traverseInternal(DepthRegionTraversal.java:68) at jadx.core.dex.visitors.regions.DepthRegionTraversal.traverse(DepthRegionTraversal.java:19) at jadx.core.dex.visitors.regions.TernaryMod.process(TernaryMod.java:35) at jadx.core.dex.visitors.regions.IfRegionVisitor.process(IfRegionVisitor.java:34) at jadx.core.dex.visitors.regions.IfRegionVisitor.visit(IfRegionVisitor.java:30) */ private net.sf.scuba.data.Gender readGender(java.io.DataInputStream r5) throws java.io.IOException { /* r4 = this; r0 = 2 int r1 = r0 % r0 int r1 = org.jmrtd.lds.icao.MRZInfo.j int r1 = r1 + 95 int r2 = r1 % 128 org.jmrtd.lds.icao.MRZInfo.i = r2 int r1 = r1 % r0 java.lang.String r2 = "M" r3 = 0 if (r1 != 0) goto L1c java.lang.String r5 = r4.readString(r5, r3) boolean r1 = r5.equalsIgnoreCase(r2) if (r1 == 0) goto L3a goto L27 L1c: r1 = 1 java.lang.String r5 = r4.readString(r5, r1) boolean r1 = r5.equalsIgnoreCase(r2) if (r1 == 0) goto L3a L27: int r5 = org.jmrtd.lds.icao.MRZInfo.i int r5 = r5 + 21 int r1 = r5 % 128 org.jmrtd.lds.icao.MRZInfo.j = r1 int r5 = r5 % r0 if (r5 == 0) goto L37 net.sf.scuba.data.Gender r5 = net.sf.scuba.data.Gender.MALE r0 = 6 int r0 = r0 / r3 return r5 L37: net.sf.scuba.data.Gender r5 = net.sf.scuba.data.Gender.MALE return r5 L3a: java.lang.String r1 = "F" boolean r5 = r5.equalsIgnoreCase(r1) r1 = 0 if (r5 == 0) goto L57 int r5 = org.jmrtd.lds.icao.MRZInfo.i int r5 = r5 + 53 int r2 = r5 % 128 org.jmrtd.lds.icao.MRZInfo.j = r2 int r5 = r5 % r0 if (r5 != 0) goto L51 net.sf.scuba.data.Gender r5 = net.sf.scuba.data.Gender.FEMALE return r5 L51: net.sf.scuba.data.Gender r5 = net.sf.scuba.data.Gender.FEMALE r1.hashCode() throw r1 L57: net.sf.scuba.data.Gender r5 = net.sf.scuba.data.Gender.UNKNOWN int r2 = org.jmrtd.lds.icao.MRZInfo.i int r2 = r2 + 83 int r3 = r2 % 128 org.jmrtd.lds.icao.MRZInfo.j = r3 int r2 = r2 % r0 if (r2 != 0) goto L65 return r5 L65: throw r1 */ throw new UnsupportedOperationException("Method not decompiled: org.jmrtd.lds.icao.MRZInfo.readGender(java.io.DataInputStream):net.sf.scuba.data.Gender"); } private String readDateOfBirth(DataInputStream dataInputStream) throws IOException, NumberFormatException { int i2 = 2 % 2; int i3 = i + 91; j = i3 % 128; int i4 = i3 % 2; String readString = readString(dataInputStream, 6); int i5 = j + 119; i = i5 % 128; if (i5 % 2 != 0) { return readString; } throw null; } private String readDateOfExpiry(DataInputStream dataInputStream) throws IOException, NumberFormatException { int i2 = 2 % 2; int i3 = j + 5; i = i3 % 128; String readString = readString(dataInputStream, i3 % 2 == 0 ? 112 : 6); int i4 = j + 95; i = i4 % 128; if (i4 % 2 != 0) { return readString; } throw null; } private static String mrzFormat(String str, int i2) { int i3 = 2 % 2; if (str == null) { throw new IllegalArgumentException("Attempting to MRZ format null"); } if (str.length() > i2) { StringBuilder sb = new StringBuilder("Argument too wide ("); sb.append(str.length()); sb.append(" > "); sb.append(i2); sb.append(")"); throw new IllegalArgumentException(sb.toString()); } String trim = str.toUpperCase().trim(); StringBuffer stringBuffer = new StringBuffer(); for (int i4 = 0; i4 < trim.length(); i4++) { int i5 = i + 5; j = i5 % 128; int i6 = i5 % 2; char charAt = trim.charAt(i4); if (MRZ_CHARS.indexOf(charAt) == -1) { stringBuffer.append(UrlTreeKt.configurablePathSegmentPrefixChar); } else { stringBuffer.append(charAt); } } while (stringBuffer.length() < i2) { int i7 = j + 73; i = i7 % 128; int i8 = i7 % 2; stringBuffer.append(UrlTreeKt.configurablePathSegmentPrefix); } return stringBuffer.toString(); } public static boolean equalsModuloFillerChars(String str, String str2) { int i2 = 2 % 2; int i3 = i; int i4 = i3 + 21; int i5 = i4 % 128; j = i5; int i6 = i4 % 2; if (str == str2) { int i7 = i5 + 55; i = i7 % 128; return i7 % 2 != 0; } if (str == null) { int i8 = i3 + 51; j = i8 % 128; if (i8 % 2 != 0) { int i9 = 4 % 2; } str = ""; } if (str2 == null) { str2 = ""; } int max = Math.max(str.length(), str2.length()); return mrzFormat(str, max).equals(mrzFormat(str2, max)); } /* JADX WARN: Code restructure failed: missing block: B:16:0x004b, code lost: if (r5.startsWith("I") == false) goto L21; */ /* JADX WARN: Code restructure failed: missing block: B:18:0x005a, code lost: if (r5.startsWith("V") == false) goto L25; */ /* JADX WARN: Code restructure failed: missing block: B:19:0x005c, code lost: r5 = org.jmrtd.lds.icao.MRZInfo.i + 19; org.jmrtd.lds.icao.MRZInfo.j = r5 % 128; r5 = r5 % 2; */ /* JADX WARN: Code restructure failed: missing block: B:20:0x0065, code lost: return 1; */ /* JADX WARN: Code restructure failed: missing block: B:23:0x006d, code lost: if ((!r5.startsWith("P")) == false) goto L28; */ /* JADX WARN: Code restructure failed: missing block: B:24:0x006f, code lost: return 0; */ /* JADX WARN: Code restructure failed: missing block: B:25:0x0070, code lost: return 3; */ /* JADX WARN: Code restructure failed: missing block: B:27:0x0052, code lost: if (r5.startsWith("I") != true) goto L21; */ /* Code decompiled incorrectly, please refer to instructions dump. To view partially-correct add '--show-bad-code' argument */ private static int getDocumentTypeFromDocumentCode(java.lang.String r5) { /* r0 = 2 int r1 = r0 % r0 if (r5 == 0) goto L7b int r1 = r5.length() if (r1 <= 0) goto L7b int r1 = org.jmrtd.lds.icao.MRZInfo.j int r1 = r1 + 23 int r2 = r1 % 128 org.jmrtd.lds.icao.MRZInfo.i = r2 int r1 = r1 % r0 int r1 = r5.length() if (r1 > r0) goto L7b int r1 = org.jmrtd.lds.icao.MRZInfo.i int r1 = r1 + 113 int r2 = r1 % 128 org.jmrtd.lds.icao.MRZInfo.j = r2 int r1 = r1 % r0 java.lang.String r2 = "A" if (r1 != 0) goto L73 boolean r1 = r5.startsWith(r2) r2 = 1 if (r1 != 0) goto L72 java.lang.String r1 = "C" boolean r1 = r5.startsWith(r1) if (r1 != 0) goto L72 int r1 = org.jmrtd.lds.icao.MRZInfo.j int r1 = r1 + 119 int r3 = r1 % 128 org.jmrtd.lds.icao.MRZInfo.i = r3 int r1 = r1 % r0 r3 = 0 java.lang.String r4 = "I" if (r1 != 0) goto L4e boolean r1 = r5.startsWith(r4) r4 = 19 int r4 = r4 / r3 if (r1 != 0) goto L72 goto L54 L4e: boolean r1 = r5.startsWith(r4) if (r1 == r2) goto L72 L54: java.lang.String r1 = "V" boolean r1 = r5.startsWith(r1) if (r1 == 0) goto L66 int r5 = org.jmrtd.lds.icao.MRZInfo.i int r5 = r5 + 19 int r1 = r5 % 128 org.jmrtd.lds.icao.MRZInfo.j = r1 int r5 = r5 % r0 return r2 L66: java.lang.String r0 = "P" boolean r5 = r5.startsWith(r0) r5 = r5 ^ r2 if (r5 == 0) goto L70 return r3 L70: r5 = 3 return r5 L72: return r2 L73: r5.startsWith(r2) r5 = 0 r5.hashCode() throw r5 L7b: java.lang.IllegalArgumentException r0 = new java.lang.IllegalArgumentException java.lang.String r1 = "Was expecting 1 or 2 digit document code, got " java.lang.String r5 = java.lang.String.valueOf(r5) java.lang.String r5 = r1.concat(r5) r0.(r5) throw r0 */ throw new UnsupportedOperationException("Method not decompiled: org.jmrtd.lds.icao.MRZInfo.getDocumentTypeFromDocumentCode(java.lang.String):int"); } private static String trimFillerChars(String str) { byte[] bytes; int i2; int i3 = 2 % 2; int i4 = j + 119; i = i4 % 128; if (i4 % 2 == 0) { bytes = str.trim().getBytes(); i2 = 1; } else { bytes = str.trim().getBytes(); i2 = 0; } int i5 = i + 7; j = i5 % 128; int i6 = i5 % 2; while (i2 < bytes.length) { if (bytes[i2] == 60) { int i7 = i + 125; j = i7 % 128; int i8 = i7 % 2; bytes[i2] = 32; } i2++; } return new String(bytes).trim(); } private void checkDigit() { int i2 = 2 % 2; int i3 = j + 71; i = i3 % 128; int i4 = i3 % 2; this.documentNumberCheckDigit = checkDigit(this.documentNumber); this.dateOfBirthCheckDigit = checkDigit(this.dateOfBirth); this.dateOfExpiryCheckDigit = checkDigit(this.dateOfExpiry); if (this.optionalData1.length() < 15) { String mrzFormat = mrzFormat(this.optionalData1, 14); char checkDigit = checkDigit(mrzFormat(this.optionalData1, 14), true); StringBuilder sb = new StringBuilder(); sb.append(mrzFormat); sb.append(checkDigit); this.optionalData1 = sb.toString(); } StringBuffer stringBuffer = new StringBuffer(); if (this.documentType == 1) { stringBuffer.append(this.documentNumber); stringBuffer.append(this.documentNumberCheckDigit); stringBuffer.append(mrzFormat(this.optionalData1, 15)); stringBuffer.append(this.dateOfBirth); stringBuffer.append(this.dateOfBirthCheckDigit); stringBuffer.append(this.dateOfExpiry); stringBuffer.append(this.dateOfExpiryCheckDigit); stringBuffer.append(mrzFormat(this.optionalData2, 11)); int i5 = j + 23; i = i5 % 128; if (i5 % 2 == 0) { int i6 = 5 / 3; } } else { stringBuffer.append(this.documentNumber); stringBuffer.append(this.documentNumberCheckDigit); stringBuffer.append(this.dateOfBirth); stringBuffer.append(this.dateOfBirthCheckDigit); stringBuffer.append(this.dateOfExpiry); stringBuffer.append(this.dateOfExpiryCheckDigit); stringBuffer.append(mrzFormat(this.optionalData1, 15)); } this.compositeCheckDigit = checkDigit(stringBuffer.toString()); } private static char checkDigit(String str, boolean z) { byte[] bytes; int i2 = 2 % 2; try { if (str == null) { bytes = new byte[0]; int i3 = i + 23; j = i3 % 128; int i4 = i3 % 2; } else { bytes = str.getBytes("UTF-8"); } int[] iArr = {7, 3, 1}; int i5 = 0; int i6 = 0; while (i5 < bytes.length) { int i7 = i + 121; j = i7 % 128; if (i7 % 2 != 0) { i6 = (i6 >> (iArr[i5 * 4] * decodeMRZDigit(bytes[i5]))) >>> 71; i5 += 29; } else { i6 = (i6 + (iArr[i5 % 3] * decodeMRZDigit(bytes[i5]))) % 10; i5++; } } String num = Integer.toString(i6); if (num.length() != 1) { throw new IllegalStateException("Error in computing check digit."); } char c2 = (char) num.getBytes("UTF-8")[0]; return (z && c2 == '0') ? UrlTreeKt.configurablePathSegmentPrefixChar : c2; } catch (UnsupportedEncodingException e2) { Logger logger = LOGGER; StringBuilder sb = new StringBuilder("Exception: "); sb.append(e2.getMessage()); logger.severe(sb.toString()); throw new IllegalStateException("Error in computing check digit."); } catch (NumberFormatException e3) { Logger logger2 = LOGGER; StringBuilder sb2 = new StringBuilder("Exception: "); sb2.append(e3.getMessage()); logger2.severe(sb2.toString()); throw new IllegalStateException("Error in computing check digit."); } catch (Exception e4) { Logger logger3 = LOGGER; StringBuilder sb3 = new StringBuilder("Exception: "); sb3.append(e4.getMessage()); logger3.severe(sb3.toString()); throw new IllegalArgumentException(e4.toString()); } } private static int decodeMRZDigit(byte b2) throws NumberFormatException { int i2 = 2 % 2; int i3 = i + 59; int i4 = i3 % 128; j = i4; if (i3 % 2 != 0) { if (b2 == 68) { return 0; } } else if (b2 == 60) { return 0; } int i5 = i4 + 37; int i6 = i5 % 128; i = i6; int i7 = i5 % 2; switch (b2) { case 48: return 0; case 49: return 1; case 50: return 2; case 51: return 3; case 52: return 4; case 53: return 5; case 54: return 6; case 55: return 7; case 56: return 8; case 57: return 9; default: switch (b2) { case 65: return 10; case 66: return 11; case 67: return 12; case 68: return 13; case 69: return 14; case 70: break; case 71: return 16; case 72: return 17; case 73: return 18; case 74: return 19; case 75: return 20; case 76: return 21; case 77: return 22; case 78: return 23; case 79: return 24; case 80: return 25; case 81: return 26; case 82: return 27; case 83: return 28; case 84: return 29; case 85: return 30; case 86: return 31; case 87: return 32; case 88: return 33; case 89: return 34; case 90: return 35; default: switch (b2) { case 97: return 10; case 98: return 11; case 99: return 12; case 100: return 13; case 101: return 14; case 102: break; case 103: return 16; case 104: return 17; case 105: return 18; case 106: return 19; case 107: return 20; case 108: return 21; case 109: return 22; case 110: return 23; case 111: return 24; case 112: return 25; case 113: return 26; case 114: return 27; case 115: return 28; case 116: return 29; case 117: return 30; case 118: return 31; case 119: return 32; case 120: return 33; case 121: return 34; case 122: return 35; default: StringBuilder sb = new StringBuilder("Could not decode MRZ character "); sb.append((int) b2); sb.append(" ('"); sb.append(Character.toString((char) b2)); sb.append("')"); throw new NumberFormatException(sb.toString()); } } int i8 = i6 + 47; j = i8 % 128; if (i8 % 2 == 0) { return 15; } Object obj = null; obj.hashCode(); throw null; } } static void a() { a = 1632603122; d = 1406017149; e = 384434584; c = new byte[]{-119, Ascii.SUB, -19, 29}; } public String getSecondaryIdentifier() { int i2 = 2 % 2; int i3 = i; int i4 = i3 + 25; j = i4 % 128; if (i4 % 2 != 0) { throw null; } String str = this.secondaryIdentifier; int i5 = i3 + 3; j = i5 % 128; int i6 = i5 % 2; return str; } public String getPrimaryIdentifier() { int i2 = 2 % 2; int i3 = i + 113; j = i3 % 128; if (i3 % 2 == 0) { return this.primaryIdentifier; } Object obj = null; obj.hashCode(); throw null; } public String getOptionalData2() { int i2 = 2 % 2; int i3 = i + 69; int i4 = i3 % 128; j = i4; int i5 = i3 % 2; String str = this.optionalData2; int i6 = i4 + 65; i = i6 % 128; if (i6 % 2 == 0) { int i7 = 44 / 0; } return str; } public String getOptionalData1() { int i2 = 2 % 2; int i3 = i + 91; int i4 = i3 % 128; j = i4; Object obj = null; if (i3 % 2 != 0) { obj.hashCode(); throw null; } String str = this.optionalData1; int i5 = i4 + 103; i = i5 % 128; if (i5 % 2 != 0) { return str; } obj.hashCode(); throw null; } public String getNationality() { int i2 = 2 % 2; int i3 = i; int i4 = i3 + 39; j = i4 % 128; int i5 = i4 % 2; String str = this.nationality; int i6 = i3 + 75; j = i6 % 128; if (i6 % 2 == 0) { return str; } throw null; } public String getIssuingState() { int i2 = 2 % 2; int i3 = j + 83; int i4 = i3 % 128; i = i4; int i5 = i3 % 2; String str = this.issuingState; int i6 = i4 + 55; j = i6 % 128; int i7 = i6 % 2; return str; } public Gender getGender() { int i2 = 2 % 2; int i3 = j + 61; int i4 = i3 % 128; i = i4; if (i3 % 2 == 0) { throw null; } Gender gender = this.gender; int i5 = i4 + 89; j = i5 % 128; if (i5 % 2 != 0) { int i6 = 27 / 0; } return gender; } public int getDocumentType() { int i2 = 2 % 2; int i3 = i + 53; int i4 = i3 % 128; j = i4; Object obj = null; if (i3 % 2 != 0) { throw null; } int i5 = this.documentType; int i6 = i4 + 95; i = i6 % 128; if (i6 % 2 != 0) { return i5; } obj.hashCode(); throw null; } public String getDocumentNumber() { int i2 = 2 % 2; int i3 = i + 107; int i4 = i3 % 128; j = i4; if (i3 % 2 != 0) { throw null; } String str = this.documentNumber; int i5 = i4 + 105; i = i5 % 128; if (i5 % 2 == 0) { int i6 = 40 / 0; } return str; } public String getDocumentCode() { int i2 = 2 % 2; int i3 = j + 93; int i4 = i3 % 128; i = i4; if (i3 % 2 == 0) { throw null; } String str = this.documentCode; int i5 = i4 + 105; j = i5 % 128; int i6 = i5 % 2; return str; } public String getDateOfExpiry() { int i2 = 2 % 2; int i3 = j; int i4 = i3 + 1; i = i4 % 128; int i5 = i4 % 2; String str = this.dateOfExpiry; int i6 = i3 + 115; i = i6 % 128; int i7 = i6 % 2; return str; } public String getDateOfBirth() { int i2 = 2 % 2; int i3 = i; int i4 = i3 + 27; j = i4 % 128; int i5 = i4 % 2; String str = this.dateOfBirth; int i6 = i3 + 101; j = i6 % 128; int i7 = i6 % 2; return str; } private void readSecondaryIdentifiers(String str) { int i2 = 2 % 2; int i3 = i; int i4 = i3 + 85; j = i4 % 128; int i5 = i4 % 2; this.secondaryIdentifier = str; if (i5 != 0) { Object obj = null; obj.hashCode(); throw null; } int i6 = i3 + 17; j = i6 % 128; int i7 = i6 % 2; } }