--- /home/fdroid/fdroiddata/tmp/org.purple.smoke_20230310.apk +++ /home/fdroid/fdroiddata/tmp/sigcp_org.purple.smoke_20230310.apk ├── /usr/lib/android-sdk/build-tools/debian/apksigner verify --verbose --print-certs {} │┄ error from `/usr/lib/android-sdk/build-tools/debian/apksigner verify --verbose --print-certs {}` (b): │┄ DOES NOT VERIFY │┄ ERROR: APK Signature Scheme v3 signer #1: APK integrity check failed. CHUNKED_SHA256 digest mismatch. Expected: <841afe17c2079bea335efd591c5fed1068b16166e4cdf74be08b851e97610ffa>, actual: <58ece5b8318af7ecc045feec14ced4e9fcc0dfc8ff393096190f31bb75126f4e> │┄ ERROR: APK Signature Scheme v3 signer #1: APK integrity check failed. VERITY_CHUNKED_SHA256 digest mismatch. Expected: , actual: <75e2e378df59f6d7a00e5de86f32ae37a979986e6b9917c734039b267c004c4d8e43380000000000> │ @@ -1,17 +0,0 @@ │ -Verifies │ -Verified using v1 scheme (JAR signing): true │ -Verified using v2 scheme (APK Signature Scheme v2): true │ -Verified using v3 scheme (APK Signature Scheme v3): true │ -Verified using v4 scheme (APK Signature Scheme v4): false │ -Verified for SourceStamp: false │ -Number of signers: 1 │ -Signer #1 certificate DN: CN=FDroid, OU=FDroid, O=fdroid.org, L=ORG, ST=ORG, C=UK │ -Signer #1 certificate SHA-256 digest: 8483a38ba820f47d73f633f4de54e8ba066a4e6d5c9a15405ede9aadaa9a5534 │ -Signer #1 certificate SHA-1 digest: 991d94a834638cb87ebb6eb557afedf1ebc36aa7 │ -Signer #1 certificate MD5 digest: 4cadd2405c712e2ce2b7fb21ce80ff66 │ -Signer #1 key algorithm: RSA │ -Signer #1 key size (bits): 2048 │ -Signer #1 public key SHA-256 digest: 7470dc9105a581fde2391b240e14522c9a0f23cfc8004afb7b3fd3292a60fc63 │ -Signer #1 public key SHA-1 digest: 4ddb1e5b2440d1ab76115bed11bffd0697316db9 │ -Signer #1 public key MD5 digest: f85321e9b453da9ee5b29f0149214bcf │ -WARNING: META-INF/com/android/build/gradle/app-metadata.properties not protected by signature. Unauthorized modifications to this JAR entry will not be detected. Delete or move the entry outside of META-INF/. ├── zipinfo {} │ @@ -1,10 +1,10 @@ │ Zip file size: 3691406 bytes, number of entries: 500 │ -rw-r--r-- 0.0 unx 56 b- defN 81-Jan-01 01:01 META-INF/com/android/build/gradle/app-metadata.properties │ --rw-r--r-- 0.0 unx 6471076 b- defN 81-Jan-01 01:01 classes.dex │ +-rw-r--r-- 0.0 unx 6471072 b- defN 81-Jan-01 01:01 classes.dex │ -rw---- 2.4 fat 42868 b- defN 81-Jan-01 01:01 org/bouncycastle/x509/CertPathReviewerMessages.properties │ -rw---- 2.4 fat 49608 b- defN 81-Jan-01 01:01 org/bouncycastle/x509/CertPathReviewerMessages_de.properties │ -rw---- 0.0 fat 4088 b- defN 81-Jan-01 01:01 AndroidManifest.xml │ -rw---- 0.0 fat 421 b- stor 81-Jan-01 01:01 res/-A.png │ -rw---- 0.0 fat 1396 b- defN 81-Jan-01 01:01 res/-Y.xml │ -rw---- 0.0 fat 520 b- defN 81-Jan-01 01:01 res/-c.xml │ -rw---- 0.0 fat 251 b- stor 81-Jan-01 01:01 res/-l.png │ @@ -495,8 +495,8 @@ │ -rw---- 0.0 fat 318 b- stor 81-Jan-01 01:01 res/zN.png │ -rw---- 0.0 fat 887 b- stor 81-Jan-01 01:01 res/zQ.png │ -rw---- 0.0 fat 840 b- defN 81-Jan-01 01:01 res/zq.xml │ -rw---- 0.0 fat 275904 b- stor 81-Jan-01 01:01 resources.arsc │ -rw---- 2.0 fat 42441 b- defN 81-Jan-01 01:01 META-INF/7E5011C4.SF │ -rw---- 2.0 fat 1342 b- defN 81-Jan-01 01:01 META-INF/7E5011C4.RSA │ -rw---- 2.0 fat 42314 b- defN 81-Jan-01 01:01 META-INF/MANIFEST.MF │ -500 files, 7756241 bytes uncompressed, 3633572 bytes compressed: 53.2% │ +500 files, 7756237 bytes uncompressed, 3633457 bytes compressed: 53.2% ├── classes.dex │ ├── dexdump -a -d -f -h {} │ │┄ Ignoring differences in offsets to keep diff size reasonable. │ │ @@ -1,13 +1,13 @@ │ │ DEX version '035' │ │ DEX file header: │ │ magic : 'dex\n035\0' │ │ -checksum : 5744b647 │ │ -signature : 4c28...49da │ │ -file_size : 6471076 │ │ +checksum : dd4e2ec0 │ │ +signature : e701...6161 │ │ +file_size : 6471072 │ │ header_size : 112 │ │ link_size : 0 │ │ link_off : 0 (0x000000) │ │ string_ids_size : 43654 │ │ string_ids_off : 112 (0x000070) │ │ type_ids_size : 7194 │ │ type_ids_off : 174728 (0x02aa88) │ │ @@ -15,15 +15,15 @@ │ │ proto_ids_off : 203504 (0x031af0) │ │ field_ids_size : 24665 │ │ field_ids_off : 304160 (0x04a420) │ │ method_ids_size : 48851 │ │ method_ids_off : 501480 (0x07a6e8) │ │ class_defs_size : 6082 │ │ class_defs_off : 892288 (0x0d9d80) │ │ -data_size : 5384164 │ │ +data_size : 5384160 │ │ data_off : 1086912 (0x1095c0) │ │ │ │ Class #0 header: │ │ class_idx : 267 │ │ access_flags : 9729 (0x2601) │ │ superclass_idx : 2790 │ │ source_file_idx : 3451 │ │ @@ -670441,15 +670441,15 @@ │ │ 404cd8: 6e20 f95c 3200 |002e: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ 404cde: 1a03 ad03 |0031: const-string v3, "(Release)" // string@03ad │ │ 404ce2: 6e20 f95c 3200 |0033: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ 404ce8: 1a03 0b00 |0036: const-string v3, " │ │ Build Date " // string@000b │ │ 404cec: 6e20 f95c 3200 |0038: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ 404cf2: 2203 b20b |003b: new-instance v3, Ljava/util/Date; // type@0bb2 │ │ -404cf6: 1804 fc0c 04d3 8601 0000 |003d: const-wide v4, #double 8.29327e-312 // #00000186d3040cfc │ │ +404cf6: 1804 a962 36dc 8601 0000 |003d: const-wide v4, #double 8.29404e-312 // #00000186dc3662a9 │ │ 404d00: 7030 f45f 4305 |0042: invoke-direct {v3, v4, v5}, Ljava/util/Date;.:(J)V // method@5ff4 │ │ 404d06: 6e20 965f 3100 |0045: invoke-virtual {v1, v3}, Ljava/text/SimpleDateFormat;.format:(Ljava/util/Date;)Ljava/lang/String; // method@5f96 │ │ 404d0c: 0c01 |0048: move-result-object v1 │ │ 404d0e: 6e20 f95c 1200 |0049: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ 404d14: 1a01 d500 |004c: const-string v1, " UTC │ │ Android " // string@00d5 │ │ 404d18: 6e20 f95c 1200 |004e: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ @@ -672216,15 +672216,15 @@ │ │ type : 'Ljava/lang/String;' │ │ access : 0x0019 (PUBLIC STATIC FINAL) │ │ value : "org.purple.smoke" │ │ #1 : (in Lorg/purple/smoke/BuildConfig;) │ │ name : 'BUILD_TIME' │ │ type : 'J' │ │ access : 0x0019 (PUBLIC STATIC FINAL) │ │ - value : 1678577503484 │ │ + value : 1678731797161 │ │ #2 : (in Lorg/purple/smoke/BuildConfig;) │ │ name : 'BUILD_TYPE' │ │ type : 'Ljava/lang/String;' │ │ access : 0x0019 (PUBLIC STATIC FINAL) │ │ value : "release" │ │ #3 : (in Lorg/purple/smoke/BuildConfig;) │ │ name : 'DEBUG' │ │ @@ -736682,52 +736682,51 @@ │ │ │ │ Virtual methods - │ │ #0 : (in Lorg/purple/smoke/Settings$38;) │ │ name : 'run' │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ - registers : 5 │ │ + registers : 4 │ │ ins : 1 │ │ outs : 3 │ │ - insns size : 45 16-bit code units │ │ + insns size : 43 16-bit code units │ │ 429ccc: |[429ccc] org.purple.smoke.Settings$38.run:()V │ │ -429cdc: 5440 c15e |0000: iget-object v0, v4, Lorg/purple/smoke/Settings$38;.this$0:Lorg/purple/smoke/Settings; // field@5ec1 │ │ +429cdc: 5430 c15e |0000: iget-object v0, v3, Lorg/purple/smoke/Settings$38;.this$0:Lorg/purple/smoke/Settings; // field@5ec1 │ │ 429ce0: 7110 dcbc 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ 429ce6: 0c00 |0005: move-result-object v0 │ │ 429ce8: 7100 dbbc 0000 |0006: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ 429cee: 0c01 |0009: move-result-object v1 │ │ 429cf0: 6e20 12ba 1000 |000a: invoke-virtual {v0, v1}, Lorg/purple/smoke/Database;.readNeighbors:(Lorg/purple/smoke/Cryptography;)Ljava/util/ArrayList; // method@ba12 │ │ 429cf6: 0c00 |000d: move-result-object v0 │ │ -429cf8: 5441 c15e |000e: iget-object v1, v4, Lorg/purple/smoke/Settings$38;.this$0:Lorg/purple/smoke/Settings; // field@5ec1 │ │ +429cf8: 5431 c15e |000e: iget-object v1, v3, Lorg/purple/smoke/Settings$38;.this$0:Lorg/purple/smoke/Settings; // field@5ec1 │ │ 429cfc: 2202 081b |0010: new-instance v2, Lorg/purple/smoke/Settings$PopulateNeighbors; // type@1b08 │ │ -429d00: 5443 c15e |0012: iget-object v3, v4, Lorg/purple/smoke/Settings$38;.this$0:Lorg/purple/smoke/Settings; // field@5ec1 │ │ -429d04: 7030 c3bc 3200 |0014: invoke-direct {v2, v3, v0}, Lorg/purple/smoke/Settings$PopulateNeighbors;.:(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V // method@bcc3 │ │ -429d0a: 6e20 06bd 2100 |0017: invoke-virtual {v1, v2}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd06 │ │ -429d10: 5440 c15e |001a: iget-object v0, v4, Lorg/purple/smoke/Settings$38;.this$0:Lorg/purple/smoke/Settings; // field@5ec1 │ │ -429d14: 7110 dcbc 0000 |001c: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -429d1a: 0c00 |001f: move-result-object v0 │ │ -429d1c: 6e10 dbb9 0000 |0020: invoke-virtual {v0}, Lorg/purple/smoke/Database;.cleanDanglingOutboundQueued:()V // method@b9db │ │ -429d22: 5440 c15e |0023: iget-object v0, v4, Lorg/purple/smoke/Settings$38;.this$0:Lorg/purple/smoke/Settings; // field@5ec1 │ │ -429d26: 7110 dcbc 0000 |0025: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -429d2c: 0c00 |0028: move-result-object v0 │ │ -429d2e: 6e10 dcb9 0000 |0029: invoke-virtual {v0}, Lorg/purple/smoke/Database;.cleanDanglingParticipants:()V // method@b9dc │ │ -429d34: 0e00 |002c: return-void │ │ +429d00: 7030 c3bc 1200 |0012: invoke-direct {v2, v1, v0}, Lorg/purple/smoke/Settings$PopulateNeighbors;.:(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V // method@bcc3 │ │ +429d06: 6e20 06bd 2100 |0015: invoke-virtual {v1, v2}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd06 │ │ +429d0c: 5430 c15e |0018: iget-object v0, v3, Lorg/purple/smoke/Settings$38;.this$0:Lorg/purple/smoke/Settings; // field@5ec1 │ │ +429d10: 7110 dcbc 0000 |001a: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +429d16: 0c00 |001d: move-result-object v0 │ │ +429d18: 6e10 dbb9 0000 |001e: invoke-virtual {v0}, Lorg/purple/smoke/Database;.cleanDanglingOutboundQueued:()V // method@b9db │ │ +429d1e: 5430 c15e |0021: iget-object v0, v3, Lorg/purple/smoke/Settings$38;.this$0:Lorg/purple/smoke/Settings; // field@5ec1 │ │ +429d22: 7110 dcbc 0000 |0023: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +429d28: 0c00 |0026: move-result-object v0 │ │ +429d2a: 6e10 dcb9 0000 |0027: invoke-virtual {v0}, Lorg/purple/smoke/Database;.cleanDanglingParticipants:()V // method@b9dc │ │ +429d30: 0e00 |002a: return-void │ │ catches : 1 │ │ - 0x0000 - 0x002c │ │ - Ljava/lang/Exception; -> 0x002c │ │ + 0x0000 - 0x002a │ │ + Ljava/lang/Exception; -> 0x002a │ │ positions : │ │ 0x0000 line=3191 │ │ 0x0002 line=3192 │ │ 0x000e line=3194 │ │ - 0x0017 line=3195 │ │ - 0x001a line=3196 │ │ - 0x0023 line=3197 │ │ + 0x0015 line=3195 │ │ + 0x0018 line=3196 │ │ + 0x0021 line=3197 │ │ locals : │ │ - 0x0000 - 0x002d reg=4 this Lorg/purple/smoke/Settings$38; │ │ + 0x0000 - 0x002b reg=3 this Lorg/purple/smoke/Settings$38; │ │ │ │ source_file_idx : 19282 (Settings.java) │ │ │ │ Class #2699 header: │ │ class_idx : 6900 │ │ access_flags : 0 (0x0000) │ │ superclass_idx : 2790 │ │ @@ -736760,18 +736759,18 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -429d48: |[429d48] org.purple.smoke.Settings$39.:(Lorg/purple/smoke/Settings;)V │ │ -429d58: 5b01 c25e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$39;.this$0:Lorg/purple/smoke/Settings; // field@5ec2 │ │ -429d5c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -429d62: 0e00 |0005: return-void │ │ +429d44: |[429d44] org.purple.smoke.Settings$39.:(Lorg/purple/smoke/Settings;)V │ │ +429d54: 5b01 c25e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$39;.this$0:Lorg/purple/smoke/Settings; // field@5ec2 │ │ +429d58: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +429d5e: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3491 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$39; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings; │ │ │ │ @@ -736781,42 +736780,42 @@ │ │ type : '(Landroid/widget/RadioGroup;I)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 6 │ │ ins : 3 │ │ outs : 2 │ │ insns size : 59 16-bit code units │ │ -429d64: |[429d64] org.purple.smoke.Settings$39.onCheckedChanged:(Landroid/widget/RadioGroup;I)V │ │ -429d74: 5434 c25e |0000: iget-object v4, v3, Lorg/purple/smoke/Settings$39;.this$0:Lorg/purple/smoke/Settings; // field@5ec2 │ │ -429d78: 1400 ad00 087f |0002: const v0, #float 1.80779e+38 // #7f0800ad │ │ -429d7e: 6e20 e5bc 0400 |0005: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -429d84: 0c04 |0008: move-result-object v4 │ │ -429d86: 1f04 970a |0009: check-cast v4, Landroid/widget/TextView; // type@0a97 │ │ -429d8a: 1401 ac00 087f |000b: const v1, #float 1.80778e+38 // #7f0800ac │ │ -429d90: 1402 a900 087f |000e: const v2, #float 1.80778e+38 // #7f0800a9 │ │ -429d96: 3325 1a00 |0011: if-ne v5, v2, 002b // +001a │ │ -429d9a: 1205 |0013: const/4 v5, #int 0 // #0 │ │ -429d9c: 6e20 335b 5400 |0014: invoke-virtual {v4, v5}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -429da2: 1a05 0000 |0017: const-string v5, "" // string@0000 │ │ -429da6: 6e20 495b 5400 |0019: invoke-virtual {v4, v5}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -429dac: 5434 c25e |001c: iget-object v4, v3, Lorg/purple/smoke/Settings$39;.this$0:Lorg/purple/smoke/Settings; // field@5ec2 │ │ -429db0: 6e20 e5bc 1400 |001e: invoke-virtual {v4, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -429db6: 0c04 |0021: move-result-object v4 │ │ -429db8: 1f04 970a |0022: check-cast v4, Landroid/widget/TextView; // type@0a97 │ │ -429dbc: 1405 d200 087f |0024: const v5, #float 1.80779e+38 // #7f0800d2 │ │ -429dc2: 6e20 3e5b 5400 |0027: invoke-virtual {v4, v5}, Landroid/widget/TextView;.setNextFocusDownId:(I)V // method@5b3e │ │ -429dc8: 2810 |002a: goto 003a // +0010 │ │ -429dca: 1215 |002b: const/4 v5, #int 1 // #1 │ │ -429dcc: 6e20 335b 5400 |002c: invoke-virtual {v4, v5}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -429dd2: 5434 c25e |002f: iget-object v4, v3, Lorg/purple/smoke/Settings$39;.this$0:Lorg/purple/smoke/Settings; // field@5ec2 │ │ -429dd6: 6e20 e5bc 1400 |0031: invoke-virtual {v4, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -429ddc: 0c04 |0034: move-result-object v4 │ │ -429dde: 1f04 970a |0035: check-cast v4, Landroid/widget/TextView; // type@0a97 │ │ -429de2: 6e20 3e5b 0400 |0037: invoke-virtual {v4, v0}, Landroid/widget/TextView;.setNextFocusDownId:(I)V // method@5b3e │ │ -429de8: 0e00 |003a: return-void │ │ +429d60: |[429d60] org.purple.smoke.Settings$39.onCheckedChanged:(Landroid/widget/RadioGroup;I)V │ │ +429d70: 5434 c25e |0000: iget-object v4, v3, Lorg/purple/smoke/Settings$39;.this$0:Lorg/purple/smoke/Settings; // field@5ec2 │ │ +429d74: 1400 ad00 087f |0002: const v0, #float 1.80779e+38 // #7f0800ad │ │ +429d7a: 6e20 e5bc 0400 |0005: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +429d80: 0c04 |0008: move-result-object v4 │ │ +429d82: 1f04 970a |0009: check-cast v4, Landroid/widget/TextView; // type@0a97 │ │ +429d86: 1401 ac00 087f |000b: const v1, #float 1.80778e+38 // #7f0800ac │ │ +429d8c: 1402 a900 087f |000e: const v2, #float 1.80778e+38 // #7f0800a9 │ │ +429d92: 3325 1a00 |0011: if-ne v5, v2, 002b // +001a │ │ +429d96: 1205 |0013: const/4 v5, #int 0 // #0 │ │ +429d98: 6e20 335b 5400 |0014: invoke-virtual {v4, v5}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +429d9e: 1a05 0000 |0017: const-string v5, "" // string@0000 │ │ +429da2: 6e20 495b 5400 |0019: invoke-virtual {v4, v5}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +429da8: 5434 c25e |001c: iget-object v4, v3, Lorg/purple/smoke/Settings$39;.this$0:Lorg/purple/smoke/Settings; // field@5ec2 │ │ +429dac: 6e20 e5bc 1400 |001e: invoke-virtual {v4, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +429db2: 0c04 |0021: move-result-object v4 │ │ +429db4: 1f04 970a |0022: check-cast v4, Landroid/widget/TextView; // type@0a97 │ │ +429db8: 1405 d200 087f |0024: const v5, #float 1.80779e+38 // #7f0800d2 │ │ +429dbe: 6e20 3e5b 5400 |0027: invoke-virtual {v4, v5}, Landroid/widget/TextView;.setNextFocusDownId:(I)V // method@5b3e │ │ +429dc4: 2810 |002a: goto 003a // +0010 │ │ +429dc6: 1215 |002b: const/4 v5, #int 1 // #1 │ │ +429dc8: 6e20 335b 5400 |002c: invoke-virtual {v4, v5}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +429dce: 5434 c25e |002f: iget-object v4, v3, Lorg/purple/smoke/Settings$39;.this$0:Lorg/purple/smoke/Settings; // field@5ec2 │ │ +429dd2: 6e20 e5bc 1400 |0031: invoke-virtual {v4, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +429dd8: 0c04 |0034: move-result-object v4 │ │ +429dda: 1f04 970a |0035: check-cast v4, Landroid/widget/TextView; // type@0a97 │ │ +429dde: 6e20 3e5b 0400 |0037: invoke-virtual {v4, v0}, Landroid/widget/TextView;.setNextFocusDownId:(I)V // method@5b3e │ │ +429de4: 0e00 |003a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3495 │ │ 0x0005 line=3496 │ │ 0x0014 line=3500 │ │ 0x0019 line=3501 │ │ 0x001c line=3502 │ │ @@ -736868,19 +736867,19 @@ │ │ type : '(Lorg/purple/smoke/Settings;I)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 1 │ │ insns size : 8 16-bit code units │ │ -42a548: |[42a548] org.purple.smoke.Settings$3.:(Lorg/purple/smoke/Settings;I)V │ │ -42a558: 5b01 c35e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$3;.this$0:Lorg/purple/smoke/Settings; // field@5ec3 │ │ -42a55c: 5902 c45e |0002: iput v2, v0, Lorg/purple/smoke/Settings$3;.val$oid:I // field@5ec4 │ │ -42a560: 7010 8f5c 0000 |0004: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42a566: 0e00 |0007: return-void │ │ +42a544: |[42a544] org.purple.smoke.Settings$3.:(Lorg/purple/smoke/Settings;I)V │ │ +42a554: 5b01 c35e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$3;.this$0:Lorg/purple/smoke/Settings; // field@5ec3 │ │ +42a558: 5902 c45e |0002: iput v2, v0, Lorg/purple/smoke/Settings$3;.val$oid:I // field@5ec4 │ │ +42a55c: 7010 8f5c 0000 |0004: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42a562: 0e00 |0007: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=500 │ │ locals : │ │ 0x0000 - 0x0008 reg=0 this Lorg/purple/smoke/Settings$3; │ │ 0x0000 - 0x0008 reg=1 (null) Lorg/purple/smoke/Settings; │ │ 0x0000 - 0x0008 reg=2 (null) I │ │ @@ -736891,52 +736890,52 @@ │ │ type : '(Landroid/content/DialogInterface;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 78 16-bit code units │ │ -42a568: |[42a568] org.purple.smoke.Settings$3.onCancel:(Landroid/content/DialogInterface;)V │ │ -42a578: 7100 6fbd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42a57e: 0c03 |0003: move-result-object v3 │ │ -42a580: 1a00 c463 |0004: const-string v0, "dialog_accepted" // string@63c4 │ │ -42a584: 6e20 70bd 0300 |0006: invoke-virtual {v3, v0}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd70 │ │ -42a58a: 0c03 |0009: move-result-object v3 │ │ -42a58c: 1a00 95a5 |000a: const-string v0, "true" // string@a595 │ │ -42a590: 6e20 b85c 0300 |000c: invoke-virtual {v3, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42a596: 0a03 |000f: move-result v3 │ │ -42a598: 3803 3d00 |0010: if-eqz v3, 004d // +003d │ │ -42a59c: 5423 c35e |0012: iget-object v3, v2, Lorg/purple/smoke/Settings$3;.this$0:Lorg/purple/smoke/Settings; // field@5ec3 │ │ -42a5a0: 7110 dcbc 0300 |0014: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a5a6: 0c03 |0017: move-result-object v3 │ │ -42a5a8: 5220 c45e |0018: iget v0, v2, Lorg/purple/smoke/Settings$3;.val$oid:I // field@5ec4 │ │ -42a5ac: 7110 d55c 0000 |001a: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42a5b2: 0c00 |001d: move-result-object v0 │ │ -42a5b4: 1a01 f18b |001e: const-string v1, "neighbors" // string@8bf1 │ │ -42a5b8: 6e30 e6b9 0301 |0020: invoke-virtual {v3, v0, v1}, Lorg/purple/smoke/Database;.deleteEntry:(Ljava/lang/String;Ljava/lang/String;)Z // method@b9e6 │ │ -42a5be: 0a03 |0023: move-result v3 │ │ -42a5c0: 3803 2900 |0024: if-eqz v3, 004d // +0029 │ │ -42a5c4: 2203 f40a |0026: new-instance v3, Ljava/lang/Thread; // type@0af4 │ │ -42a5c8: 2200 ea1a |0028: new-instance v0, Lorg/purple/smoke/Settings$3$1SingleShot; // type@1aea │ │ -42a5cc: 7020 7bbc 2000 |002a: invoke-direct {v0, v2}, Lorg/purple/smoke/Settings$3$1SingleShot;.:(Lorg/purple/smoke/Settings$3;)V // method@bc7b │ │ -42a5d2: 7020 0e5d 0300 |002d: invoke-direct {v3, v0}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ -42a5d8: 6e10 195d 0300 |0030: invoke-virtual {v3}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ -42a5de: 5423 c35e |0033: iget-object v3, v2, Lorg/purple/smoke/Settings$3;.this$0:Lorg/purple/smoke/Settings; // field@5ec3 │ │ -42a5e2: 1400 a700 087f |0035: const v0, #float 1.80778e+38 // #7f0800a7 │ │ -42a5e8: 6e20 e5bc 0300 |0038: invoke-virtual {v3, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42a5ee: 0c03 |003b: move-result-object v3 │ │ -42a5f0: 1f03 930a |003c: check-cast v3, Landroid/widget/TableLayout; // type@0a93 │ │ -42a5f4: 5420 c35e |003e: iget-object v0, v2, Lorg/purple/smoke/Settings$3;.this$0:Lorg/purple/smoke/Settings; // field@5ec3 │ │ -42a5f8: 5221 c45e |0040: iget v1, v2, Lorg/purple/smoke/Settings$3;.val$oid:I // field@5ec4 │ │ -42a5fc: 6e20 e5bc 1000 |0042: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42a602: 0c00 |0045: move-result-object v0 │ │ -42a604: 1f00 950a |0046: check-cast v0, Landroid/widget/TableRow; // type@0a95 │ │ -42a608: 3800 0500 |0048: if-eqz v0, 004d // +0005 │ │ -42a60c: 6e20 f75a 0300 |004a: invoke-virtual {v3, v0}, Landroid/widget/TableLayout;.removeView:(Landroid/view/View;)V // method@5af7 │ │ -42a612: 0e00 |004d: return-void │ │ +42a564: |[42a564] org.purple.smoke.Settings$3.onCancel:(Landroid/content/DialogInterface;)V │ │ +42a574: 7100 6fbd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42a57a: 0c03 |0003: move-result-object v3 │ │ +42a57c: 1a00 c463 |0004: const-string v0, "dialog_accepted" // string@63c4 │ │ +42a580: 6e20 70bd 0300 |0006: invoke-virtual {v3, v0}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd70 │ │ +42a586: 0c03 |0009: move-result-object v3 │ │ +42a588: 1a00 95a5 |000a: const-string v0, "true" // string@a595 │ │ +42a58c: 6e20 b85c 0300 |000c: invoke-virtual {v3, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42a592: 0a03 |000f: move-result v3 │ │ +42a594: 3803 3d00 |0010: if-eqz v3, 004d // +003d │ │ +42a598: 5423 c35e |0012: iget-object v3, v2, Lorg/purple/smoke/Settings$3;.this$0:Lorg/purple/smoke/Settings; // field@5ec3 │ │ +42a59c: 7110 dcbc 0300 |0014: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a5a2: 0c03 |0017: move-result-object v3 │ │ +42a5a4: 5220 c45e |0018: iget v0, v2, Lorg/purple/smoke/Settings$3;.val$oid:I // field@5ec4 │ │ +42a5a8: 7110 d55c 0000 |001a: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42a5ae: 0c00 |001d: move-result-object v0 │ │ +42a5b0: 1a01 f18b |001e: const-string v1, "neighbors" // string@8bf1 │ │ +42a5b4: 6e30 e6b9 0301 |0020: invoke-virtual {v3, v0, v1}, Lorg/purple/smoke/Database;.deleteEntry:(Ljava/lang/String;Ljava/lang/String;)Z // method@b9e6 │ │ +42a5ba: 0a03 |0023: move-result v3 │ │ +42a5bc: 3803 2900 |0024: if-eqz v3, 004d // +0029 │ │ +42a5c0: 2203 f40a |0026: new-instance v3, Ljava/lang/Thread; // type@0af4 │ │ +42a5c4: 2200 ea1a |0028: new-instance v0, Lorg/purple/smoke/Settings$3$1SingleShot; // type@1aea │ │ +42a5c8: 7020 7bbc 2000 |002a: invoke-direct {v0, v2}, Lorg/purple/smoke/Settings$3$1SingleShot;.:(Lorg/purple/smoke/Settings$3;)V // method@bc7b │ │ +42a5ce: 7020 0e5d 0300 |002d: invoke-direct {v3, v0}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ +42a5d4: 6e10 195d 0300 |0030: invoke-virtual {v3}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ +42a5da: 5423 c35e |0033: iget-object v3, v2, Lorg/purple/smoke/Settings$3;.this$0:Lorg/purple/smoke/Settings; // field@5ec3 │ │ +42a5de: 1400 a700 087f |0035: const v0, #float 1.80778e+38 // #7f0800a7 │ │ +42a5e4: 6e20 e5bc 0300 |0038: invoke-virtual {v3, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42a5ea: 0c03 |003b: move-result-object v3 │ │ +42a5ec: 1f03 930a |003c: check-cast v3, Landroid/widget/TableLayout; // type@0a93 │ │ +42a5f0: 5420 c35e |003e: iget-object v0, v2, Lorg/purple/smoke/Settings$3;.this$0:Lorg/purple/smoke/Settings; // field@5ec3 │ │ +42a5f4: 5221 c45e |0040: iget v1, v2, Lorg/purple/smoke/Settings$3;.val$oid:I // field@5ec4 │ │ +42a5f8: 6e20 e5bc 1000 |0042: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42a5fe: 0c00 |0045: move-result-object v0 │ │ +42a600: 1f00 950a |0046: check-cast v0, Landroid/widget/TableRow; // type@0a95 │ │ +42a604: 3800 0500 |0048: if-eqz v0, 004d // +0005 │ │ +42a608: 6e20 f75a 0300 |004a: invoke-virtual {v3, v0}, Landroid/widget/TableLayout;.removeView:(Landroid/view/View;)V // method@5af7 │ │ +42a60e: 0e00 |004d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=503 │ │ 0x000c line=504 │ │ 0x0012 line=505 │ │ 0x001a line=506 │ │ 0x0026 line=528 │ │ @@ -736983,18 +736982,18 @@ │ │ type : '(Lorg/purple/smoke/Settings$3SingleShot;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -429dec: |[429dec] org.purple.smoke.Settings$3SingleShot$1.:(Lorg/purple/smoke/Settings$3SingleShot;)V │ │ -429dfc: 5b01 c55e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429e00: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -429e06: 0e00 |0005: return-void │ │ +429de8: |[429de8] org.purple.smoke.Settings$3SingleShot$1.:(Lorg/purple/smoke/Settings$3SingleShot;)V │ │ +429df8: 5b01 c55e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429dfc: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +429e02: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1575 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$3SingleShot$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings$3SingleShot; │ │ │ │ @@ -737004,127 +737003,127 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 14 │ │ ins : 1 │ │ outs : 12 │ │ insns size : 244 16-bit code units │ │ -429e08: |[429e08] org.purple.smoke.Settings$3SingleShot$1.run:()V │ │ -429e18: 54d0 c55e |0000: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429e1c: 5400 cd5e |0002: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ecd │ │ -429e20: 1241 |0004: const/4 v1, #int 4 // #4 │ │ -429e22: 6e20 5f5a 1000 |0005: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -429e28: 54d0 c55e |0008: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429e2c: 5400 cc5e |000a: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -429e30: 6e10 edbc 0000 |000c: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ -429e36: 0c00 |000f: move-result-object v0 │ │ -429e38: 1302 1000 |0010: const/16 v2, #int 16 // #10 │ │ -429e3c: 6e20 8557 2000 |0012: invoke-virtual {v0, v2}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ -429e42: 54d0 c55e |0015: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429e46: 5400 cc5e |0017: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -429e4a: 1402 9200 087f |0019: const v2, #float 1.80778e+38 // #7f080092 │ │ -429e50: 6e20 e5bc 2000 |001c: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -429e56: 0c00 |001f: move-result-object v0 │ │ -429e58: 1212 |0020: const/4 v2, #int 1 // #1 │ │ -429e5a: 7120 e6bb 2000 |0021: invoke-static {v0, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ -429e60: 54d0 c55e |0024: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429e64: 7110 99bc 0000 |0026: invoke-static {v0}, Lorg/purple/smoke/Settings$3SingleShot;.access$900:(Lorg/purple/smoke/Settings$3SingleShot;)Ljava/lang/String; // method@bc99 │ │ -429e6a: 0c00 |0029: move-result-object v0 │ │ -429e6c: 6e10 c35c 0000 |002a: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -429e72: 0a00 |002d: move-result v0 │ │ -429e74: 3900 2700 |002e: if-nez v0, 0055 // +0027 │ │ -429e78: 54d0 c55e |0030: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429e7c: 5400 cc5e |0032: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -429e80: 2201 f10a |0034: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -429e84: 7010 ee5c 0100 |0036: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -429e8a: 1a02 6a0d |0039: const-string v2, "An error (" // string@0d6a │ │ -429e8e: 6e20 f95c 2100 |003b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -429e94: 54d2 c55e |003e: iget-object v2, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429e98: 7110 99bc 0200 |0040: invoke-static {v2}, Lorg/purple/smoke/Settings$3SingleShot;.access$900:(Lorg/purple/smoke/Settings$3SingleShot;)Ljava/lang/String; // method@bc99 │ │ -429e9e: 0c02 |0043: move-result-object v2 │ │ -429ea0: 6e20 f95c 2100 |0044: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -429ea6: 1a02 0004 |0047: const-string v2, ") occurred while generating the confidential data." // string@0400 │ │ -429eaa: 6e20 f95c 2100 |0049: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -429eb0: 6e10 035d 0100 |004c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -429eb6: 0c01 |004f: move-result-object v1 │ │ -429eb8: 7120 f5bb 1000 |0050: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ -429ebe: 2900 a000 |0053: goto/16 00f3 // +00a0 │ │ -429ec2: 7100 0bbb 0000 |0055: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -429ec8: 0c00 |0058: move-result-object v0 │ │ -429eca: 6e20 1ebb 2000 |0059: invoke-virtual {v0, v2}, Lorg/purple/smoke/Kernel;.setWakeLock:(Z)V // method@bb1e │ │ -429ed0: 54d0 c55e |005c: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429ed4: 5400 cc5e |005e: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -429ed8: 7120 cbbc 2000 |0060: invoke-static {v0, v2}, Lorg/purple/smoke/Settings;.access$1000:(Lorg/purple/smoke/Settings;Z)V // method@bccb │ │ -429ede: 54d0 c55e |0063: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429ee2: 5400 cc5e |0065: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -429ee6: 7110 ccbc 0000 |0067: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1100:(Lorg/purple/smoke/Settings;)V // method@bccc │ │ -429eec: 7100 6fbd 0000 |006a: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -429ef2: 0c00 |006d: move-result-object v0 │ │ -429ef4: 6e20 83bd 2000 |006e: invoke-virtual {v0, v2}, Lorg/purple/smoke/State;.setAuthenticated:(Z)V // method@bd83 │ │ -429efa: 54d0 c55e |0071: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429efe: 5400 ce5e |0073: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$spinner3:Landroid/widget/Spinner; // field@5ece │ │ -429f02: 6e20 cc5a 1000 |0075: invoke-virtual {v0, v1}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -429f08: 54d0 c55e |0078: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429f0c: 5400 cf5e |007a: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$spinner4:Landroid/widget/Spinner; // field@5ecf │ │ -429f10: 6e20 cc5a 2000 |007c: invoke-virtual {v0, v2}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -429f16: 54d0 c55e |007f: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429f1a: 5400 d05e |0081: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView1:Landroid/widget/TextView; // field@5ed0 │ │ -429f1e: 6e10 265b 0000 |0083: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ -429f24: 54d0 c55e |0086: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429f28: 5400 d05e |0088: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView1:Landroid/widget/TextView; // field@5ed0 │ │ -429f2c: 1a01 0000 |008a: const-string v1, "" // string@0000 │ │ -429f30: 6e20 495b 1000 |008c: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -429f36: 54d0 c55e |008f: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429f3a: 5400 d15e |0091: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView2:Landroid/widget/TextView; // field@5ed1 │ │ -429f3e: 6e20 495b 1000 |0093: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -429f44: 54d0 c55e |0096: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429f48: 5400 cc5e |0098: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -429f4c: 7110 dcbc 0000 |009a: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -429f52: 0c01 |009d: move-result-object v1 │ │ -429f54: 7100 dbbc 0000 |009e: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -429f5a: 0c02 |00a1: move-result-object v2 │ │ -429f5c: 1a03 2068 |00a2: const-string v3, "false" // string@6820 │ │ -429f60: 1a04 2068 |00a4: const-string v4, "false" // string@6820 │ │ -429f64: 1a05 0000 |00a6: const-string v5, "" // string@0000 │ │ -429f68: 1a06 0000 |00a8: const-string v6, "" // string@0000 │ │ -429f6c: 1a07 751c |00aa: const-string v7, "HTTP" // string@1c75 │ │ -429f70: 1a08 ea07 |00ac: const-string v8, "5.180.182.220" // string@07ea │ │ -429f74: 1a09 df07 |00ae: const-string v9, "4710" // string@07df │ │ -429f78: 1a0a 0000 |00b0: const-string v10, "" // string@0000 │ │ -429f7c: 1a0b 0a4d |00b2: const-string v11, "TCP" // string@4d0a │ │ -429f80: 1a0c a91d |00b4: const-string v12, "IPv4" // string@1da9 │ │ -429f84: 740c 34ba 0100 |00b6: invoke-virtual/range {v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12}, Lorg/purple/smoke/Database;.writeNeighbor:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z // method@ba34 │ │ -429f8a: 54d0 c55e |00b9: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429f8e: 5400 cc5e |00bb: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -429f92: 7110 cdbc 0000 |00bd: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1200:(Lorg/purple/smoke/Settings;)V // method@bccd │ │ -429f98: 54d0 c55e |00c0: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429f9c: 5400 cc5e |00c2: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -429fa0: 7110 cebc 0000 |00c4: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1300:(Lorg/purple/smoke/Settings;)V // method@bcce │ │ -429fa6: 54d0 c55e |00c7: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429faa: 5400 cc5e |00c9: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -429fae: 7110 d5bc 0000 |00cb: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcd5 │ │ -429fb4: 54d0 c55e |00ce: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429fb8: 5400 cc5e |00d0: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -429fbc: 7110 cfbc 0000 |00d2: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1400:(Lorg/purple/smoke/Settings;)V // method@bccf │ │ -429fc2: 54d0 c55e |00d5: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429fc6: 5400 cc5e |00d7: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -429fca: 7110 dcbc 0000 |00d9: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -429fd0: 0c00 |00dc: move-result-object v0 │ │ -429fd2: 1201 |00dd: const/4 v1, #int 0 // #0 │ │ -429fd4: 1a02 615b |00de: const-string v2, "automatic_neighbors_refresh" // string@5b61 │ │ -429fd8: 6e30 17ba 1002 |00e0: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -429fde: 0c00 |00e3: move-result-object v0 │ │ -429fe0: 1a01 95a5 |00e4: const-string v1, "true" // string@a595 │ │ -429fe4: 6e20 b85c 1000 |00e6: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -429fea: 0a00 |00e9: move-result v0 │ │ -429fec: 3800 0900 |00ea: if-eqz v0, 00f3 // +0009 │ │ -429ff0: 54d0 c55e |00ec: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429ff4: 5400 cc5e |00ee: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -429ff8: 7110 d0bc 0000 |00f0: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1500:(Lorg/purple/smoke/Settings;)V // method@bcd0 │ │ -429ffe: 0e00 |00f3: return-void │ │ +429e04: |[429e04] org.purple.smoke.Settings$3SingleShot$1.run:()V │ │ +429e14: 54d0 c55e |0000: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429e18: 5400 cd5e |0002: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ecd │ │ +429e1c: 1241 |0004: const/4 v1, #int 4 // #4 │ │ +429e1e: 6e20 5f5a 1000 |0005: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +429e24: 54d0 c55e |0008: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429e28: 5400 cc5e |000a: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +429e2c: 6e10 edbc 0000 |000c: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ +429e32: 0c00 |000f: move-result-object v0 │ │ +429e34: 1302 1000 |0010: const/16 v2, #int 16 // #10 │ │ +429e38: 6e20 8557 2000 |0012: invoke-virtual {v0, v2}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ +429e3e: 54d0 c55e |0015: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429e42: 5400 cc5e |0017: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +429e46: 1402 9200 087f |0019: const v2, #float 1.80778e+38 // #7f080092 │ │ +429e4c: 6e20 e5bc 2000 |001c: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +429e52: 0c00 |001f: move-result-object v0 │ │ +429e54: 1212 |0020: const/4 v2, #int 1 // #1 │ │ +429e56: 7120 e6bb 2000 |0021: invoke-static {v0, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ +429e5c: 54d0 c55e |0024: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429e60: 7110 99bc 0000 |0026: invoke-static {v0}, Lorg/purple/smoke/Settings$3SingleShot;.access$900:(Lorg/purple/smoke/Settings$3SingleShot;)Ljava/lang/String; // method@bc99 │ │ +429e66: 0c00 |0029: move-result-object v0 │ │ +429e68: 6e10 c35c 0000 |002a: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +429e6e: 0a00 |002d: move-result v0 │ │ +429e70: 3900 2700 |002e: if-nez v0, 0055 // +0027 │ │ +429e74: 54d0 c55e |0030: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429e78: 5400 cc5e |0032: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +429e7c: 2201 f10a |0034: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +429e80: 7010 ee5c 0100 |0036: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +429e86: 1a02 6a0d |0039: const-string v2, "An error (" // string@0d6a │ │ +429e8a: 6e20 f95c 2100 |003b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +429e90: 54d2 c55e |003e: iget-object v2, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429e94: 7110 99bc 0200 |0040: invoke-static {v2}, Lorg/purple/smoke/Settings$3SingleShot;.access$900:(Lorg/purple/smoke/Settings$3SingleShot;)Ljava/lang/String; // method@bc99 │ │ +429e9a: 0c02 |0043: move-result-object v2 │ │ +429e9c: 6e20 f95c 2100 |0044: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +429ea2: 1a02 0004 |0047: const-string v2, ") occurred while generating the confidential data." // string@0400 │ │ +429ea6: 6e20 f95c 2100 |0049: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +429eac: 6e10 035d 0100 |004c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +429eb2: 0c01 |004f: move-result-object v1 │ │ +429eb4: 7120 f5bb 1000 |0050: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ +429eba: 2900 a000 |0053: goto/16 00f3 // +00a0 │ │ +429ebe: 7100 0bbb 0000 |0055: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +429ec4: 0c00 |0058: move-result-object v0 │ │ +429ec6: 6e20 1ebb 2000 |0059: invoke-virtual {v0, v2}, Lorg/purple/smoke/Kernel;.setWakeLock:(Z)V // method@bb1e │ │ +429ecc: 54d0 c55e |005c: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429ed0: 5400 cc5e |005e: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +429ed4: 7120 cbbc 2000 |0060: invoke-static {v0, v2}, Lorg/purple/smoke/Settings;.access$1000:(Lorg/purple/smoke/Settings;Z)V // method@bccb │ │ +429eda: 54d0 c55e |0063: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429ede: 5400 cc5e |0065: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +429ee2: 7110 ccbc 0000 |0067: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1100:(Lorg/purple/smoke/Settings;)V // method@bccc │ │ +429ee8: 7100 6fbd 0000 |006a: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +429eee: 0c00 |006d: move-result-object v0 │ │ +429ef0: 6e20 83bd 2000 |006e: invoke-virtual {v0, v2}, Lorg/purple/smoke/State;.setAuthenticated:(Z)V // method@bd83 │ │ +429ef6: 54d0 c55e |0071: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429efa: 5400 ce5e |0073: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$spinner3:Landroid/widget/Spinner; // field@5ece │ │ +429efe: 6e20 cc5a 1000 |0075: invoke-virtual {v0, v1}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +429f04: 54d0 c55e |0078: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429f08: 5400 cf5e |007a: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$spinner4:Landroid/widget/Spinner; // field@5ecf │ │ +429f0c: 6e20 cc5a 2000 |007c: invoke-virtual {v0, v2}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +429f12: 54d0 c55e |007f: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429f16: 5400 d05e |0081: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView1:Landroid/widget/TextView; // field@5ed0 │ │ +429f1a: 6e10 265b 0000 |0083: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ +429f20: 54d0 c55e |0086: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429f24: 5400 d05e |0088: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView1:Landroid/widget/TextView; // field@5ed0 │ │ +429f28: 1a01 0000 |008a: const-string v1, "" // string@0000 │ │ +429f2c: 6e20 495b 1000 |008c: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +429f32: 54d0 c55e |008f: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429f36: 5400 d15e |0091: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView2:Landroid/widget/TextView; // field@5ed1 │ │ +429f3a: 6e20 495b 1000 |0093: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +429f40: 54d0 c55e |0096: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429f44: 5400 cc5e |0098: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +429f48: 7110 dcbc 0000 |009a: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +429f4e: 0c01 |009d: move-result-object v1 │ │ +429f50: 7100 dbbc 0000 |009e: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +429f56: 0c02 |00a1: move-result-object v2 │ │ +429f58: 1a03 2068 |00a2: const-string v3, "false" // string@6820 │ │ +429f5c: 1a04 2068 |00a4: const-string v4, "false" // string@6820 │ │ +429f60: 1a05 0000 |00a6: const-string v5, "" // string@0000 │ │ +429f64: 1a06 0000 |00a8: const-string v6, "" // string@0000 │ │ +429f68: 1a07 751c |00aa: const-string v7, "HTTP" // string@1c75 │ │ +429f6c: 1a08 ea07 |00ac: const-string v8, "5.180.182.220" // string@07ea │ │ +429f70: 1a09 df07 |00ae: const-string v9, "4710" // string@07df │ │ +429f74: 1a0a 0000 |00b0: const-string v10, "" // string@0000 │ │ +429f78: 1a0b 0a4d |00b2: const-string v11, "TCP" // string@4d0a │ │ +429f7c: 1a0c a91d |00b4: const-string v12, "IPv4" // string@1da9 │ │ +429f80: 740c 34ba 0100 |00b6: invoke-virtual/range {v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12}, Lorg/purple/smoke/Database;.writeNeighbor:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z // method@ba34 │ │ +429f86: 54d0 c55e |00b9: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429f8a: 5400 cc5e |00bb: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +429f8e: 7110 cdbc 0000 |00bd: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1200:(Lorg/purple/smoke/Settings;)V // method@bccd │ │ +429f94: 54d0 c55e |00c0: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429f98: 5400 cc5e |00c2: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +429f9c: 7110 cebc 0000 |00c4: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1300:(Lorg/purple/smoke/Settings;)V // method@bcce │ │ +429fa2: 54d0 c55e |00c7: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429fa6: 5400 cc5e |00c9: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +429faa: 7110 d5bc 0000 |00cb: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcd5 │ │ +429fb0: 54d0 c55e |00ce: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429fb4: 5400 cc5e |00d0: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +429fb8: 7110 cfbc 0000 |00d2: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1400:(Lorg/purple/smoke/Settings;)V // method@bccf │ │ +429fbe: 54d0 c55e |00d5: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429fc2: 5400 cc5e |00d7: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +429fc6: 7110 dcbc 0000 |00d9: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +429fcc: 0c00 |00dc: move-result-object v0 │ │ +429fce: 1201 |00dd: const/4 v1, #int 0 // #0 │ │ +429fd0: 1a02 615b |00de: const-string v2, "automatic_neighbors_refresh" // string@5b61 │ │ +429fd4: 6e30 17ba 1002 |00e0: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +429fda: 0c00 |00e3: move-result-object v0 │ │ +429fdc: 1a01 95a5 |00e4: const-string v1, "true" // string@a595 │ │ +429fe0: 6e20 b85c 1000 |00e6: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +429fe6: 0a00 |00e9: move-result v0 │ │ +429fe8: 3800 0900 |00ea: if-eqz v0, 00f3 // +0009 │ │ +429fec: 54d0 c55e |00ec: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429ff0: 5400 cc5e |00ee: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +429ff4: 7110 d0bc 0000 |00f0: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1500:(Lorg/purple/smoke/Settings;)V // method@bcd0 │ │ +429ffa: 0e00 |00f3: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1579 │ │ 0x0008 line=1580 │ │ 0x0012 line=1581 │ │ 0x0015 line=1583 │ │ 0x001c line=1584 │ │ @@ -737235,36 +737234,36 @@ │ │ type : '(Lorg/purple/smoke/Settings;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;IILandroid/widget/ProgressBar;Landroid/widget/Spinner;Landroid/widget/Spinner;Landroid/widget/TextView;Landroid/widget/TextView;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 12 │ │ ins : 12 │ │ outs : 2 │ │ insns size : 42 16-bit code units │ │ -42a018: |[42a018] org.purple.smoke.Settings$3SingleShot.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;IILandroid/widget/ProgressBar;Landroid/widget/Spinner;Landroid/widget/Spinner;Landroid/widget/TextView;Landroid/widget/TextView;)V │ │ -42a028: 5b01 cc5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a02c: 5b07 cd5e |0002: iput-object v7, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ecd │ │ -42a030: 5b08 ce5e |0004: iput-object v8, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$spinner3:Landroid/widget/Spinner; // field@5ece │ │ -42a034: 5b09 cf5e |0006: iput-object v9, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$spinner4:Landroid/widget/Spinner; // field@5ecf │ │ -42a038: 5b0a d05e |0008: iput-object v10, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView1:Landroid/widget/TextView; // field@5ed0 │ │ -42a03c: 5b0b d15e |000a: iput-object v11, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView2:Landroid/widget/TextView; // field@5ed1 │ │ -42a040: 7010 8f5c 0000 |000c: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42a046: 1a01 0000 |000f: const-string v1, "" // string@0000 │ │ -42a04a: 5b01 c75e |0011: iput-object v1, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a04e: 5b02 c65e |0013: iput-object v2, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ -42a052: 5905 c85e |0015: iput v5, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_iterationCount:I // field@5ec8 │ │ -42a056: 5906 c95e |0017: iput v6, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_keyDerivationFunction:I // field@5ec9 │ │ -42a05a: 5b03 ca5e |0019: iput-object v3, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ -42a05e: 5b04 cb5e |001b: iput-object v4, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ -42a062: 1a01 1a18 |001d: const-string v1, "ECDSA" // string@181a │ │ -42a066: 6e20 b85c 1400 |001f: invoke-virtual {v4, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42a06c: 0a01 |0022: move-result v1 │ │ -42a06e: 3801 0600 |0023: if-eqz v1, 0029 // +0006 │ │ -42a072: 1a01 e817 |0025: const-string v1, "EC" // string@17e8 │ │ -42a076: 5b01 cb5e |0027: iput-object v1, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ -42a07a: 0e00 |0029: return-void │ │ +42a014: |[42a014] org.purple.smoke.Settings$3SingleShot.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;IILandroid/widget/ProgressBar;Landroid/widget/Spinner;Landroid/widget/Spinner;Landroid/widget/TextView;Landroid/widget/TextView;)V │ │ +42a024: 5b01 cc5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a028: 5b07 cd5e |0002: iput-object v7, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ecd │ │ +42a02c: 5b08 ce5e |0004: iput-object v8, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$spinner3:Landroid/widget/Spinner; // field@5ece │ │ +42a030: 5b09 cf5e |0006: iput-object v9, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$spinner4:Landroid/widget/Spinner; // field@5ecf │ │ +42a034: 5b0a d05e |0008: iput-object v10, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView1:Landroid/widget/TextView; // field@5ed0 │ │ +42a038: 5b0b d15e |000a: iput-object v11, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView2:Landroid/widget/TextView; // field@5ed1 │ │ +42a03c: 7010 8f5c 0000 |000c: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42a042: 1a01 0000 |000f: const-string v1, "" // string@0000 │ │ +42a046: 5b01 c75e |0011: iput-object v1, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a04a: 5b02 c65e |0013: iput-object v2, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ +42a04e: 5905 c85e |0015: iput v5, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_iterationCount:I // field@5ec8 │ │ +42a052: 5906 c95e |0017: iput v6, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_keyDerivationFunction:I // field@5ec9 │ │ +42a056: 5b03 ca5e |0019: iput-object v3, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ +42a05a: 5b04 cb5e |001b: iput-object v4, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ +42a05e: 1a01 1a18 |001d: const-string v1, "ECDSA" // string@181a │ │ +42a062: 6e20 b85c 1400 |001f: invoke-virtual {v4, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42a068: 0a01 |0022: move-result v1 │ │ +42a06a: 3801 0600 |0023: if-eqz v1, 0029 // +0006 │ │ +42a06e: 1a01 e817 |0025: const-string v1, "EC" // string@17e8 │ │ +42a072: 5b01 cb5e |0027: iput-object v1, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ +42a076: 0e00 |0029: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1364 │ │ 0x0011 line=1353 │ │ 0x0013 line=1365 │ │ 0x0015 line=1366 │ │ 0x0017 line=1367 │ │ @@ -737291,17 +737290,17 @@ │ │ type : '(Lorg/purple/smoke/Settings$3SingleShot;)Ljava/lang/String;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -42a000: |[42a000] org.purple.smoke.Settings$3SingleShot.access$900:(Lorg/purple/smoke/Settings$3SingleShot;)Ljava/lang/String; │ │ -42a010: 5400 c75e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a014: 1100 |0002: return-object v0 │ │ +429ffc: |[429ffc] org.purple.smoke.Settings$3SingleShot.access$900:(Lorg/purple/smoke/Settings$3SingleShot;)Ljava/lang/String; │ │ +42a00c: 5400 c75e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a010: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1350 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings$3SingleShot; │ │ │ │ Virtual methods - │ │ @@ -737310,310 +737309,310 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 14 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 598 16-bit code units │ │ -42a07c: |[42a07c] org.purple.smoke.Settings$3SingleShot.run:()V │ │ -42a08c: 1a00 9946 |0000: const-string v0, "Rainbow" // string@4699 │ │ -42a090: 1a01 6c46 |0002: const-string v1, "RSA" // string@466c │ │ -42a094: 1a02 e817 |0004: const-string v2, "EC" // string@17e8 │ │ -42a098: 1303 2000 |0006: const/16 v3, #int 32 // #20 │ │ -42a09c: 7110 a9b9 0300 |0008: invoke-static {v3}, Lorg/purple/smoke/Cryptography;.randomBytes:(I)[B // method@b9a9 │ │ -42a0a2: 0c03 |000b: move-result-object v3 │ │ -42a0a4: 1304 4000 |000c: const/16 v4, #int 64 // #40 │ │ -42a0a8: 7110 a9b9 0400 |000e: invoke-static {v4}, Lorg/purple/smoke/Cryptography;.randomBytes:(I)[B // method@b9a9 │ │ -42a0ae: 0c04 |0011: move-result-object v4 │ │ -42a0b0: 54d5 cc5e |0012: iget-object v5, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a0b4: 7110 dcbc 0500 |0014: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a0ba: 0c05 |0017: move-result-object v5 │ │ -42a0bc: 6e10 1eba 0500 |0018: invoke-virtual {v5}, Lorg/purple/smoke/Database;.reset:()V // method@ba1e │ │ -42a0c2: 54d5 c65e |001b: iget-object v5, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ -42a0c6: 1a06 a506 |001d: const-string v6, "12, 68" // string@06a5 │ │ -42a0ca: 6e20 b65c 6500 |001f: invoke-virtual {v5, v6}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -42a0d0: 0a05 |0022: move-result v5 │ │ -42a0d2: 1226 |0023: const/4 v6, #int 2 // #2 │ │ -42a0d4: 1217 |0024: const/4 v7, #int 1 // #1 │ │ -42a0d6: 1208 |0025: const/4 v8, #int 0 // #0 │ │ -42a0d8: 3805 0400 |0026: if-eqz v5, 002a // +0004 │ │ -42a0dc: 1215 |0028: const/4 v5, #int 1 // #1 │ │ -42a0de: 280e |0029: goto 0037 // +000e │ │ -42a0e0: 54d5 c65e |002a: iget-object v5, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ -42a0e4: 1a09 af06 |002c: const-string v9, "13, 118" // string@06af │ │ -42a0e8: 6e20 b65c 9500 |002e: invoke-virtual {v5, v9}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -42a0ee: 0a05 |0031: move-result v5 │ │ -42a0f0: 3805 0400 |0032: if-eqz v5, 0036 // +0004 │ │ -42a0f4: 1225 |0034: const/4 v5, #int 2 // #2 │ │ -42a0f6: 2802 |0035: goto 0037 // +0002 │ │ -42a0f8: 1205 |0036: const/4 v5, #int 0 // #0 │ │ -42a0fa: 54d9 c65e |0037: iget-object v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ -42a0fe: 620a bb53 |0039: sget-object v10, Lorg/purple/smoke/Cryptography;.PKI_ENCRYPTION_KEY_SIZES:[I // field@53bb │ │ -42a102: 440a 0a08 |003b: aget v10, v10, v8 │ │ -42a106: 7130 8bb9 a905 |003d: invoke-static {v9, v10, v5}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ -42a10c: 0c05 |0040: move-result-object v5 │ │ -42a10e: 3805 dd01 |0041: if-eqz v5, 021e // +01dd │ │ -42a112: 54d9 cb5e |0043: iget-object v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ -42a116: 6e20 b85c 2900 |0045: invoke-virtual {v9, v2}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42a11c: 0a09 |0048: move-result v9 │ │ -42a11e: 123a |0049: const/4 v10, #int 3 // #3 │ │ -42a120: 3809 0b00 |004a: if-eqz v9, 0055 // +000b │ │ -42a124: 6200 bf53 |004c: sget-object v0, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ -42a128: 4400 0008 |004e: aget v0, v0, v8 │ │ -42a12c: 7130 8bb9 0208 |0050: invoke-static {v2, v0, v8}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ -42a132: 0c00 |0053: move-result-object v0 │ │ -42a134: 282d |0054: goto 0081 // +002d │ │ -42a136: 54d2 cb5e |0055: iget-object v2, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ -42a13a: 6e20 b85c 1200 |0057: invoke-virtual {v2, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42a140: 0a02 |005a: move-result v2 │ │ -42a142: 3802 0b00 |005b: if-eqz v2, 0066 // +000b │ │ -42a146: 6200 bf53 |005d: sget-object v0, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ -42a14a: 4400 0007 |005f: aget v0, v0, v7 │ │ -42a14e: 7130 8bb9 0108 |0061: invoke-static {v1, v0, v8}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ -42a154: 0c00 |0064: move-result-object v0 │ │ -42a156: 281c |0065: goto 0081 // +001c │ │ -42a158: 54d1 cb5e |0066: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ -42a15c: 6e20 b85c 0100 |0068: invoke-virtual {v1, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42a162: 0a01 |006b: move-result v1 │ │ -42a164: 3801 0b00 |006c: if-eqz v1, 0077 // +000b │ │ -42a168: 6201 bf53 |006e: sget-object v1, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ -42a16c: 4401 0106 |0070: aget v1, v1, v6 │ │ -42a170: 7130 8bb9 1008 |0072: invoke-static {v0, v1, v8}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ -42a176: 0c00 |0075: move-result-object v0 │ │ -42a178: 280b |0076: goto 0081 // +000b │ │ -42a17a: 54d0 cb5e |0077: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ -42a17e: 6201 bf53 |0079: sget-object v1, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ -42a182: 4401 010a |007b: aget v1, v1, v10 │ │ -42a186: 7130 8bb9 1008 |007d: invoke-static {v0, v1, v8}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ -42a18c: 0c00 |0080: move-result-object v0 │ │ -42a18e: 3800 8a01 |0081: if-eqz v0, 020b // +018a │ │ -42a192: 54d1 ca5e |0083: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ -42a196: 6e10 ce5c 0100 |0085: invoke-virtual {v1}, Ljava/lang/String;.toCharArray:()[C // method@5cce │ │ -42a19c: 0c01 |0088: move-result-object v1 │ │ -42a19e: 52d2 c85e |0089: iget v2, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_iterationCount:I // field@5ec8 │ │ -42a1a2: 52d9 c95e |008b: iget v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_keyDerivationFunction:I // field@5ec9 │ │ -42a1a6: 7140 87b9 1392 |008d: invoke-static {v3, v1, v2, v9}, Lorg/purple/smoke/Cryptography;.generateEncryptionKey:([B[CII)Ljavax/crypto/SecretKey; // method@b987 │ │ -42a1ac: 0c01 |0090: move-result-object v1 │ │ -42a1ae: 3803 6701 |0091: if-eqz v3, 01f8 // +0167 │ │ -42a1b2: 54d2 ca5e |0093: iget-object v2, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ -42a1b6: 6e10 ce5c 0200 |0095: invoke-virtual {v2}, Ljava/lang/String;.toCharArray:()[C // method@5cce │ │ -42a1bc: 0c02 |0098: move-result-object v2 │ │ -42a1be: 52d9 c85e |0099: iget v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_iterationCount:I // field@5ec8 │ │ -42a1c2: 52db c95e |009b: iget v11, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_keyDerivationFunction:I // field@5ec9 │ │ -42a1c6: 7140 8ab9 24b9 |009d: invoke-static {v4, v2, v9, v11}, Lorg/purple/smoke/Cryptography;.generateMacKey:([B[CII)Ljavax/crypto/SecretKey; // method@b98a │ │ -42a1cc: 0c02 |00a0: move-result-object v2 │ │ -42a1ce: 3802 4401 |00a1: if-eqz v2, 01e5 // +0144 │ │ -42a1d2: 7100 dbbc 0000 |00a3: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a1d8: 0c09 |00a6: move-result-object v9 │ │ -42a1da: 54db c65e |00a7: iget-object v11, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ -42a1de: 6e20 acb9 b900 |00a9: invoke-virtual {v9, v11}, Lorg/purple/smoke/Cryptography;.setChatEncryptionPublicKeyAlgorithm:(Ljava/lang/String;)V // method@b9ac │ │ -42a1e4: 7100 dbbc 0000 |00ac: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a1ea: 0c09 |00af: move-result-object v9 │ │ -42a1ec: 6e20 aeb9 5900 |00b0: invoke-virtual {v9, v5}, Lorg/purple/smoke/Cryptography;.setChatEncryptionPublicKeyPair:(Ljava/security/KeyPair;)V // method@b9ae │ │ -42a1f2: 7100 dbbc 0000 |00b3: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a1f8: 0c09 |00b6: move-result-object v9 │ │ -42a1fa: 6e20 b0b9 0900 |00b7: invoke-virtual {v9, v0}, Lorg/purple/smoke/Cryptography;.setChatSignaturePublicKeyPair:(Ljava/security/KeyPair;)V // method@b9b0 │ │ -42a200: 7100 dbbc 0000 |00ba: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a206: 0c09 |00bd: move-result-object v9 │ │ -42a208: 6e20 b1b9 1900 |00be: invoke-virtual {v9, v1}, Lorg/purple/smoke/Cryptography;.setEncryptionKey:(Ljavax/crypto/SecretKey;)V // method@b9b1 │ │ -42a20e: 7100 dbbc 0000 |00c1: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a214: 0c01 |00c4: move-result-object v1 │ │ -42a216: 6e20 b2b9 2100 |00c5: invoke-virtual {v1, v2}, Lorg/purple/smoke/Cryptography;.setMacKey:(Ljavax/crypto/SecretKey;)V // method@b9b2 │ │ -42a21c: 54d1 cc5e |00c8: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a220: 7110 dcbc 0100 |00ca: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a226: 0c01 |00cd: move-result-object v1 │ │ -42a228: 1a02 4666 |00ce: const-string v2, "encryptionSalt" // string@6646 │ │ -42a22c: 7120 c454 8300 |00d0: invoke-static {v3, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42a232: 0c09 |00d3: move-result-object v9 │ │ -42a234: 120b |00d4: const/4 v11, #int 0 // #0 │ │ -42a236: 6e40 39ba b192 |00d5: invoke-virtual {v1, v11, v2, v9}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42a23c: 54d1 cc5e |00d8: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a240: 7110 dcbc 0100 |00da: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a246: 0c01 |00dd: move-result-object v1 │ │ -42a248: 1a02 1d7c |00de: const-string v2, "iterationCount" // string@7c1d │ │ -42a24c: 52d9 c85e |00e0: iget v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_iterationCount:I // field@5ec8 │ │ -42a250: 7110 d55c 0900 |00e2: invoke-static {v9}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42a256: 0c09 |00e5: move-result-object v9 │ │ -42a258: 6e40 39ba b192 |00e6: invoke-virtual {v1, v11, v2, v9}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42a25e: 54d1 cc5e |00e9: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a262: 7110 dcbc 0100 |00eb: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a268: 0c01 |00ee: move-result-object v1 │ │ -42a26a: 1a02 9a7c |00ef: const-string v2, "keyDerivationFunction" // string@7c9a │ │ -42a26e: 52d9 c95e |00f1: iget v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_keyDerivationFunction:I // field@5ec9 │ │ -42a272: 7110 d55c 0900 |00f3: invoke-static {v9}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42a278: 0c09 |00f6: move-result-object v9 │ │ -42a27a: 6e40 39ba b192 |00f7: invoke-virtual {v1, v11, v2, v9}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42a280: 54d1 cc5e |00fa: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a284: 7110 dcbc 0100 |00fc: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a28a: 0c01 |00ff: move-result-object v1 │ │ -42a28c: 1a02 b889 |0100: const-string v2, "macSalt" // string@89b8 │ │ -42a290: 7120 c454 8400 |0102: invoke-static {v4, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42a296: 0c09 |0105: move-result-object v9 │ │ -42a298: 6e40 39ba b192 |0106: invoke-virtual {v1, v11, v2, v9}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42a29e: 54d1 cc5e |0109: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a2a2: 7110 dcbc 0100 |010b: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a2a8: 0c01 |010e: move-result-object v1 │ │ -42a2aa: 7100 dbbc 0000 |010f: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a2b0: 0c02 |0112: move-result-object v2 │ │ -42a2b2: 1a09 cd93 |0113: const-string v9, "pki_chat_encryption_algorithm" // string@93cd │ │ -42a2b6: 54dc c65e |0115: iget-object v12, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ -42a2ba: 6e40 39ba 21c9 |0117: invoke-virtual {v1, v2, v9, v12}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42a2c0: 54d1 cc5e |011a: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a2c4: 7110 dcbc 0100 |011c: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a2ca: 0c01 |011f: move-result-object v1 │ │ -42a2cc: 7100 dbbc 0000 |0120: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a2d2: 0c02 |0123: move-result-object v2 │ │ -42a2d4: 1a09 ce93 |0124: const-string v9, "pki_chat_encryption_private_key" // string@93ce │ │ -42a2d8: 6e10 fb5d 0500 |0126: invoke-virtual {v5}, Ljava/security/KeyPair;.getPrivate:()Ljava/security/PrivateKey; // method@5dfb │ │ -42a2de: 0c0c |0129: move-result-object v12 │ │ -42a2e0: 7210 355e 0c00 |012a: invoke-interface {v12}, Ljava/security/PrivateKey;.getEncoded:()[B // method@5e35 │ │ -42a2e6: 0c0c |012d: move-result-object v12 │ │ -42a2e8: 7120 c454 8c00 |012e: invoke-static {v12, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42a2ee: 0c0c |0131: move-result-object v12 │ │ -42a2f0: 6e40 39ba 21c9 |0132: invoke-virtual {v1, v2, v9, v12}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42a2f6: 54d1 cc5e |0135: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a2fa: 7110 dcbc 0100 |0137: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a300: 0c01 |013a: move-result-object v1 │ │ -42a302: 7100 dbbc 0000 |013b: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a308: 0c02 |013e: move-result-object v2 │ │ -42a30a: 1a09 cf93 |013f: const-string v9, "pki_chat_encryption_public_key" // string@93cf │ │ -42a30e: 6e10 fc5d 0500 |0141: invoke-virtual {v5}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfc │ │ -42a314: 0c05 |0144: move-result-object v5 │ │ -42a316: 7210 3c5e 0500 |0145: invoke-interface {v5}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3c │ │ -42a31c: 0c05 |0148: move-result-object v5 │ │ -42a31e: 7120 c454 8500 |0149: invoke-static {v5, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42a324: 0c05 |014c: move-result-object v5 │ │ -42a326: 6e40 39ba 2159 |014d: invoke-virtual {v1, v2, v9, v5}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42a32c: 54d1 cc5e |0150: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a330: 7110 dcbc 0100 |0152: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a336: 0c01 |0155: move-result-object v1 │ │ -42a338: 7100 dbbc 0000 |0156: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a33e: 0c02 |0159: move-result-object v2 │ │ -42a340: 1a05 d093 |015a: const-string v5, "pki_chat_signature_algorithm" // string@93d0 │ │ -42a344: 54d9 cb5e |015c: iget-object v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ -42a348: 6e40 39ba 2195 |015e: invoke-virtual {v1, v2, v5, v9}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42a34e: 54d1 cc5e |0161: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a352: 7110 dcbc 0100 |0163: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a358: 0c01 |0166: move-result-object v1 │ │ -42a35a: 7100 dbbc 0000 |0167: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a360: 0c02 |016a: move-result-object v2 │ │ -42a362: 1a05 d193 |016b: const-string v5, "pki_chat_signature_private_key" // string@93d1 │ │ -42a366: 6e10 fb5d 0000 |016d: invoke-virtual {v0}, Ljava/security/KeyPair;.getPrivate:()Ljava/security/PrivateKey; // method@5dfb │ │ -42a36c: 0c09 |0170: move-result-object v9 │ │ -42a36e: 7210 355e 0900 |0171: invoke-interface {v9}, Ljava/security/PrivateKey;.getEncoded:()[B // method@5e35 │ │ -42a374: 0c09 |0174: move-result-object v9 │ │ -42a376: 7120 c454 8900 |0175: invoke-static {v9, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42a37c: 0c09 |0178: move-result-object v9 │ │ -42a37e: 6e40 39ba 2195 |0179: invoke-virtual {v1, v2, v5, v9}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42a384: 54d1 cc5e |017c: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a388: 7110 dcbc 0100 |017e: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a38e: 0c01 |0181: move-result-object v1 │ │ -42a390: 7100 dbbc 0000 |0182: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a396: 0c02 |0185: move-result-object v2 │ │ -42a398: 1a05 d293 |0186: const-string v5, "pki_chat_signature_public_key" // string@93d2 │ │ -42a39c: 6e10 fc5d 0000 |0188: invoke-virtual {v0}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfc │ │ -42a3a2: 0c00 |018b: move-result-object v0 │ │ -42a3a4: 7210 3c5e 0000 |018c: invoke-interface {v0}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3c │ │ -42a3aa: 0c00 |018f: move-result-object v0 │ │ -42a3ac: 7120 c454 8000 |0190: invoke-static {v0, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42a3b2: 0c00 |0193: move-result-object v0 │ │ -42a3b4: 6e40 39ba 2105 |0194: invoke-virtual {v1, v2, v5, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42a3ba: 7100 dbbc 0000 |0197: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a3c0: 0c00 |019a: move-result-object v0 │ │ -42a3c2: 6e20 a1b9 b000 |019b: invoke-virtual {v0, v11}, Lorg/purple/smoke/Cryptography;.prepareSipHashIds:(Ljava/lang/String;)Z // method@b9a1 │ │ -42a3c8: 0a00 |019e: move-result v0 │ │ -42a3ca: 7100 dbbc 0000 |019f: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a3d0: 0c01 |01a2: move-result-object v1 │ │ -42a3d2: 6e10 a2b9 0100 |01a3: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.prepareSipHashKeys:()Z // method@b9a2 │ │ -42a3d8: 0a01 |01a6: move-result v1 │ │ -42a3da: 23a2 0f1c |01a7: new-array v2, v10, [[B // type@1c0f │ │ -42a3de: 54d5 ca5e |01a9: iget-object v5, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ -42a3e2: 6e10 bc5c 0500 |01ab: invoke-virtual {v5}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -42a3e8: 0c05 |01ae: move-result-object v5 │ │ -42a3ea: 4d05 0208 |01af: aput-object v5, v2, v8 │ │ -42a3ee: 4d03 0207 |01b1: aput-object v3, v2, v7 │ │ -42a3f2: 4d04 0206 |01b3: aput-object v4, v2, v6 │ │ -42a3f6: 7110 b8b9 0200 |01b5: invoke-static {v2}, Lorg/purple/smoke/Cryptography;.sha512:([[B)[B // method@b9b8 │ │ -42a3fc: 0c02 |01b8: move-result-object v2 │ │ -42a3fe: 3800 1700 |01b9: if-eqz v0, 01d0 // +0017 │ │ -42a402: 3801 1500 |01bb: if-eqz v1, 01d0 // +0015 │ │ -42a406: 3802 1300 |01bd: if-eqz v2, 01d0 // +0013 │ │ -42a40a: 54d0 cc5e |01bf: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a40e: 7110 dcbc 0000 |01c1: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a414: 0c00 |01c4: move-result-object v0 │ │ -42a416: 1a01 ae99 |01c5: const-string v1, "saltedPassword" // string@99ae │ │ -42a41a: 7120 c454 8200 |01c7: invoke-static {v2, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42a420: 0c02 |01ca: move-result-object v2 │ │ -42a422: 6e40 39ba b021 |01cb: invoke-virtual {v0, v11, v1, v2}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42a428: 2900 7900 |01ce: goto/16 0247 // +0079 │ │ -42a42c: 3900 0700 |01d0: if-nez v0, 01d7 // +0007 │ │ -42a430: 1a00 bc94 |01d2: const-string v0, "prepareSipHashIds() failure" // string@94bc │ │ -42a434: 5bd0 c75e |01d4: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a438: 2807 |01d6: goto 01dd // +0007 │ │ -42a43a: 3901 0600 |01d7: if-nez v1, 01dd // +0006 │ │ -42a43e: 1a00 bf94 |01d9: const-string v0, "prepareSipHashKeys() failure" // string@94bf │ │ -42a442: 5bd0 c75e |01db: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a446: 7100 dbbc 0000 |01dd: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a44c: 0c00 |01e0: move-result-object v0 │ │ -42a44e: 6e10 aab9 0000 |01e1: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9aa │ │ -42a454: 2863 |01e4: goto 0247 // +0063 │ │ -42a456: 1a00 226a |01e5: const-string v0, "generateMacKey() failure" // string@6a22 │ │ -42a45a: 5bd0 c75e |01e7: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a45e: 7100 dbbc 0000 |01e9: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a464: 0c00 |01ec: move-result-object v0 │ │ -42a466: 6e10 aab9 0000 |01ed: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9aa │ │ -42a46c: 2200 d40a |01f0: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ -42a470: 54d1 c75e |01f2: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a474: 7020 325c 1000 |01f4: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ -42a47a: 2700 |01f7: throw v0 │ │ -42a47c: 1a00 0d6a |01f8: const-string v0, "generateEncryptionKey() failure" // string@6a0d │ │ -42a480: 5bd0 c75e |01fa: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a484: 7100 dbbc 0000 |01fc: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a48a: 0c00 |01ff: move-result-object v0 │ │ -42a48c: 6e10 aab9 0000 |0200: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9aa │ │ -42a492: 2200 d40a |0203: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ -42a496: 54d1 c75e |0205: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a49a: 7020 325c 1000 |0207: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ -42a4a0: 2700 |020a: throw v0 │ │ -42a4a2: 1a00 aaa1 |020b: const-string v0, "signature-key generatePrivatePublicKeyPair() failure" // string@a1aa │ │ -42a4a6: 5bd0 c75e |020d: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a4aa: 7100 dbbc 0000 |020f: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a4b0: 0c00 |0212: move-result-object v0 │ │ -42a4b2: 6e10 aab9 0000 |0213: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9aa │ │ -42a4b8: 2200 d40a |0216: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ -42a4bc: 54d1 c75e |0218: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a4c0: 7020 325c 1000 |021a: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ -42a4c6: 2700 |021d: throw v0 │ │ -42a4c8: 1a00 4066 |021e: const-string v0, "encryption-key generatePrivatePublicKeyPair() failure" // string@6640 │ │ -42a4cc: 5bd0 c75e |0220: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a4d0: 7100 dbbc 0000 |0222: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a4d6: 0c00 |0225: move-result-object v0 │ │ -42a4d8: 6e10 aab9 0000 |0226: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9aa │ │ -42a4de: 2200 d40a |0229: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ -42a4e2: 54d1 c75e |022b: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a4e6: 7020 325c 1000 |022d: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ -42a4ec: 2700 |0230: throw v0 │ │ -42a4ee: 0d00 |0231: move-exception v0 │ │ -42a4f0: 6e10 375c 0000 |0232: invoke-virtual {v0}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ -42a4f6: 0c00 |0235: move-result-object v0 │ │ -42a4f8: 6e10 cf5c 0000 |0236: invoke-virtual {v0}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@5ccf │ │ -42a4fe: 0c00 |0239: move-result-object v0 │ │ -42a500: 6e10 d35c 0000 |023a: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42a506: 0c00 |023d: move-result-object v0 │ │ -42a508: 5bd0 c75e |023e: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a50c: 7100 dbbc 0000 |0240: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a512: 0c00 |0243: move-result-object v0 │ │ -42a514: 6e10 aab9 0000 |0244: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9aa │ │ -42a51a: 54d0 cc5e |0247: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a51e: 2201 f61a |0249: new-instance v1, Lorg/purple/smoke/Settings$3SingleShot$1; // type@1af6 │ │ -42a522: 7020 96bc d100 |024b: invoke-direct {v1, v13}, Lorg/purple/smoke/Settings$3SingleShot$1;.:(Lorg/purple/smoke/Settings$3SingleShot;)V // method@bc96 │ │ -42a528: 6e20 06bd 1000 |024e: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd06 │ │ -42a52e: 1a00 0000 |0251: const-string v0, "" // string@0000 │ │ -42a532: 5bd0 ca5e |0253: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ -42a536: 0e00 |0255: return-void │ │ +42a078: |[42a078] org.purple.smoke.Settings$3SingleShot.run:()V │ │ +42a088: 1a00 9946 |0000: const-string v0, "Rainbow" // string@4699 │ │ +42a08c: 1a01 6c46 |0002: const-string v1, "RSA" // string@466c │ │ +42a090: 1a02 e817 |0004: const-string v2, "EC" // string@17e8 │ │ +42a094: 1303 2000 |0006: const/16 v3, #int 32 // #20 │ │ +42a098: 7110 a9b9 0300 |0008: invoke-static {v3}, Lorg/purple/smoke/Cryptography;.randomBytes:(I)[B // method@b9a9 │ │ +42a09e: 0c03 |000b: move-result-object v3 │ │ +42a0a0: 1304 4000 |000c: const/16 v4, #int 64 // #40 │ │ +42a0a4: 7110 a9b9 0400 |000e: invoke-static {v4}, Lorg/purple/smoke/Cryptography;.randomBytes:(I)[B // method@b9a9 │ │ +42a0aa: 0c04 |0011: move-result-object v4 │ │ +42a0ac: 54d5 cc5e |0012: iget-object v5, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a0b0: 7110 dcbc 0500 |0014: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a0b6: 0c05 |0017: move-result-object v5 │ │ +42a0b8: 6e10 1eba 0500 |0018: invoke-virtual {v5}, Lorg/purple/smoke/Database;.reset:()V // method@ba1e │ │ +42a0be: 54d5 c65e |001b: iget-object v5, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ +42a0c2: 1a06 a506 |001d: const-string v6, "12, 68" // string@06a5 │ │ +42a0c6: 6e20 b65c 6500 |001f: invoke-virtual {v5, v6}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +42a0cc: 0a05 |0022: move-result v5 │ │ +42a0ce: 1226 |0023: const/4 v6, #int 2 // #2 │ │ +42a0d0: 1217 |0024: const/4 v7, #int 1 // #1 │ │ +42a0d2: 1208 |0025: const/4 v8, #int 0 // #0 │ │ +42a0d4: 3805 0400 |0026: if-eqz v5, 002a // +0004 │ │ +42a0d8: 1215 |0028: const/4 v5, #int 1 // #1 │ │ +42a0da: 280e |0029: goto 0037 // +000e │ │ +42a0dc: 54d5 c65e |002a: iget-object v5, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ +42a0e0: 1a09 af06 |002c: const-string v9, "13, 118" // string@06af │ │ +42a0e4: 6e20 b65c 9500 |002e: invoke-virtual {v5, v9}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +42a0ea: 0a05 |0031: move-result v5 │ │ +42a0ec: 3805 0400 |0032: if-eqz v5, 0036 // +0004 │ │ +42a0f0: 1225 |0034: const/4 v5, #int 2 // #2 │ │ +42a0f2: 2802 |0035: goto 0037 // +0002 │ │ +42a0f4: 1205 |0036: const/4 v5, #int 0 // #0 │ │ +42a0f6: 54d9 c65e |0037: iget-object v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ +42a0fa: 620a bb53 |0039: sget-object v10, Lorg/purple/smoke/Cryptography;.PKI_ENCRYPTION_KEY_SIZES:[I // field@53bb │ │ +42a0fe: 440a 0a08 |003b: aget v10, v10, v8 │ │ +42a102: 7130 8bb9 a905 |003d: invoke-static {v9, v10, v5}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ +42a108: 0c05 |0040: move-result-object v5 │ │ +42a10a: 3805 dd01 |0041: if-eqz v5, 021e // +01dd │ │ +42a10e: 54d9 cb5e |0043: iget-object v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ +42a112: 6e20 b85c 2900 |0045: invoke-virtual {v9, v2}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42a118: 0a09 |0048: move-result v9 │ │ +42a11a: 123a |0049: const/4 v10, #int 3 // #3 │ │ +42a11c: 3809 0b00 |004a: if-eqz v9, 0055 // +000b │ │ +42a120: 6200 bf53 |004c: sget-object v0, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ +42a124: 4400 0008 |004e: aget v0, v0, v8 │ │ +42a128: 7130 8bb9 0208 |0050: invoke-static {v2, v0, v8}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ +42a12e: 0c00 |0053: move-result-object v0 │ │ +42a130: 282d |0054: goto 0081 // +002d │ │ +42a132: 54d2 cb5e |0055: iget-object v2, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ +42a136: 6e20 b85c 1200 |0057: invoke-virtual {v2, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42a13c: 0a02 |005a: move-result v2 │ │ +42a13e: 3802 0b00 |005b: if-eqz v2, 0066 // +000b │ │ +42a142: 6200 bf53 |005d: sget-object v0, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ +42a146: 4400 0007 |005f: aget v0, v0, v7 │ │ +42a14a: 7130 8bb9 0108 |0061: invoke-static {v1, v0, v8}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ +42a150: 0c00 |0064: move-result-object v0 │ │ +42a152: 281c |0065: goto 0081 // +001c │ │ +42a154: 54d1 cb5e |0066: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ +42a158: 6e20 b85c 0100 |0068: invoke-virtual {v1, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42a15e: 0a01 |006b: move-result v1 │ │ +42a160: 3801 0b00 |006c: if-eqz v1, 0077 // +000b │ │ +42a164: 6201 bf53 |006e: sget-object v1, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ +42a168: 4401 0106 |0070: aget v1, v1, v6 │ │ +42a16c: 7130 8bb9 1008 |0072: invoke-static {v0, v1, v8}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ +42a172: 0c00 |0075: move-result-object v0 │ │ +42a174: 280b |0076: goto 0081 // +000b │ │ +42a176: 54d0 cb5e |0077: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ +42a17a: 6201 bf53 |0079: sget-object v1, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ +42a17e: 4401 010a |007b: aget v1, v1, v10 │ │ +42a182: 7130 8bb9 1008 |007d: invoke-static {v0, v1, v8}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ +42a188: 0c00 |0080: move-result-object v0 │ │ +42a18a: 3800 8a01 |0081: if-eqz v0, 020b // +018a │ │ +42a18e: 54d1 ca5e |0083: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ +42a192: 6e10 ce5c 0100 |0085: invoke-virtual {v1}, Ljava/lang/String;.toCharArray:()[C // method@5cce │ │ +42a198: 0c01 |0088: move-result-object v1 │ │ +42a19a: 52d2 c85e |0089: iget v2, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_iterationCount:I // field@5ec8 │ │ +42a19e: 52d9 c95e |008b: iget v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_keyDerivationFunction:I // field@5ec9 │ │ +42a1a2: 7140 87b9 1392 |008d: invoke-static {v3, v1, v2, v9}, Lorg/purple/smoke/Cryptography;.generateEncryptionKey:([B[CII)Ljavax/crypto/SecretKey; // method@b987 │ │ +42a1a8: 0c01 |0090: move-result-object v1 │ │ +42a1aa: 3803 6701 |0091: if-eqz v3, 01f8 // +0167 │ │ +42a1ae: 54d2 ca5e |0093: iget-object v2, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ +42a1b2: 6e10 ce5c 0200 |0095: invoke-virtual {v2}, Ljava/lang/String;.toCharArray:()[C // method@5cce │ │ +42a1b8: 0c02 |0098: move-result-object v2 │ │ +42a1ba: 52d9 c85e |0099: iget v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_iterationCount:I // field@5ec8 │ │ +42a1be: 52db c95e |009b: iget v11, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_keyDerivationFunction:I // field@5ec9 │ │ +42a1c2: 7140 8ab9 24b9 |009d: invoke-static {v4, v2, v9, v11}, Lorg/purple/smoke/Cryptography;.generateMacKey:([B[CII)Ljavax/crypto/SecretKey; // method@b98a │ │ +42a1c8: 0c02 |00a0: move-result-object v2 │ │ +42a1ca: 3802 4401 |00a1: if-eqz v2, 01e5 // +0144 │ │ +42a1ce: 7100 dbbc 0000 |00a3: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a1d4: 0c09 |00a6: move-result-object v9 │ │ +42a1d6: 54db c65e |00a7: iget-object v11, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ +42a1da: 6e20 acb9 b900 |00a9: invoke-virtual {v9, v11}, Lorg/purple/smoke/Cryptography;.setChatEncryptionPublicKeyAlgorithm:(Ljava/lang/String;)V // method@b9ac │ │ +42a1e0: 7100 dbbc 0000 |00ac: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a1e6: 0c09 |00af: move-result-object v9 │ │ +42a1e8: 6e20 aeb9 5900 |00b0: invoke-virtual {v9, v5}, Lorg/purple/smoke/Cryptography;.setChatEncryptionPublicKeyPair:(Ljava/security/KeyPair;)V // method@b9ae │ │ +42a1ee: 7100 dbbc 0000 |00b3: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a1f4: 0c09 |00b6: move-result-object v9 │ │ +42a1f6: 6e20 b0b9 0900 |00b7: invoke-virtual {v9, v0}, Lorg/purple/smoke/Cryptography;.setChatSignaturePublicKeyPair:(Ljava/security/KeyPair;)V // method@b9b0 │ │ +42a1fc: 7100 dbbc 0000 |00ba: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a202: 0c09 |00bd: move-result-object v9 │ │ +42a204: 6e20 b1b9 1900 |00be: invoke-virtual {v9, v1}, Lorg/purple/smoke/Cryptography;.setEncryptionKey:(Ljavax/crypto/SecretKey;)V // method@b9b1 │ │ +42a20a: 7100 dbbc 0000 |00c1: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a210: 0c01 |00c4: move-result-object v1 │ │ +42a212: 6e20 b2b9 2100 |00c5: invoke-virtual {v1, v2}, Lorg/purple/smoke/Cryptography;.setMacKey:(Ljavax/crypto/SecretKey;)V // method@b9b2 │ │ +42a218: 54d1 cc5e |00c8: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a21c: 7110 dcbc 0100 |00ca: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a222: 0c01 |00cd: move-result-object v1 │ │ +42a224: 1a02 4666 |00ce: const-string v2, "encryptionSalt" // string@6646 │ │ +42a228: 7120 c454 8300 |00d0: invoke-static {v3, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42a22e: 0c09 |00d3: move-result-object v9 │ │ +42a230: 120b |00d4: const/4 v11, #int 0 // #0 │ │ +42a232: 6e40 39ba b192 |00d5: invoke-virtual {v1, v11, v2, v9}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42a238: 54d1 cc5e |00d8: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a23c: 7110 dcbc 0100 |00da: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a242: 0c01 |00dd: move-result-object v1 │ │ +42a244: 1a02 1d7c |00de: const-string v2, "iterationCount" // string@7c1d │ │ +42a248: 52d9 c85e |00e0: iget v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_iterationCount:I // field@5ec8 │ │ +42a24c: 7110 d55c 0900 |00e2: invoke-static {v9}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42a252: 0c09 |00e5: move-result-object v9 │ │ +42a254: 6e40 39ba b192 |00e6: invoke-virtual {v1, v11, v2, v9}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42a25a: 54d1 cc5e |00e9: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a25e: 7110 dcbc 0100 |00eb: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a264: 0c01 |00ee: move-result-object v1 │ │ +42a266: 1a02 9a7c |00ef: const-string v2, "keyDerivationFunction" // string@7c9a │ │ +42a26a: 52d9 c95e |00f1: iget v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_keyDerivationFunction:I // field@5ec9 │ │ +42a26e: 7110 d55c 0900 |00f3: invoke-static {v9}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42a274: 0c09 |00f6: move-result-object v9 │ │ +42a276: 6e40 39ba b192 |00f7: invoke-virtual {v1, v11, v2, v9}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42a27c: 54d1 cc5e |00fa: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a280: 7110 dcbc 0100 |00fc: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a286: 0c01 |00ff: move-result-object v1 │ │ +42a288: 1a02 b889 |0100: const-string v2, "macSalt" // string@89b8 │ │ +42a28c: 7120 c454 8400 |0102: invoke-static {v4, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42a292: 0c09 |0105: move-result-object v9 │ │ +42a294: 6e40 39ba b192 |0106: invoke-virtual {v1, v11, v2, v9}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42a29a: 54d1 cc5e |0109: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a29e: 7110 dcbc 0100 |010b: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a2a4: 0c01 |010e: move-result-object v1 │ │ +42a2a6: 7100 dbbc 0000 |010f: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a2ac: 0c02 |0112: move-result-object v2 │ │ +42a2ae: 1a09 cd93 |0113: const-string v9, "pki_chat_encryption_algorithm" // string@93cd │ │ +42a2b2: 54dc c65e |0115: iget-object v12, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ +42a2b6: 6e40 39ba 21c9 |0117: invoke-virtual {v1, v2, v9, v12}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42a2bc: 54d1 cc5e |011a: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a2c0: 7110 dcbc 0100 |011c: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a2c6: 0c01 |011f: move-result-object v1 │ │ +42a2c8: 7100 dbbc 0000 |0120: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a2ce: 0c02 |0123: move-result-object v2 │ │ +42a2d0: 1a09 ce93 |0124: const-string v9, "pki_chat_encryption_private_key" // string@93ce │ │ +42a2d4: 6e10 fb5d 0500 |0126: invoke-virtual {v5}, Ljava/security/KeyPair;.getPrivate:()Ljava/security/PrivateKey; // method@5dfb │ │ +42a2da: 0c0c |0129: move-result-object v12 │ │ +42a2dc: 7210 355e 0c00 |012a: invoke-interface {v12}, Ljava/security/PrivateKey;.getEncoded:()[B // method@5e35 │ │ +42a2e2: 0c0c |012d: move-result-object v12 │ │ +42a2e4: 7120 c454 8c00 |012e: invoke-static {v12, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42a2ea: 0c0c |0131: move-result-object v12 │ │ +42a2ec: 6e40 39ba 21c9 |0132: invoke-virtual {v1, v2, v9, v12}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42a2f2: 54d1 cc5e |0135: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a2f6: 7110 dcbc 0100 |0137: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a2fc: 0c01 |013a: move-result-object v1 │ │ +42a2fe: 7100 dbbc 0000 |013b: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a304: 0c02 |013e: move-result-object v2 │ │ +42a306: 1a09 cf93 |013f: const-string v9, "pki_chat_encryption_public_key" // string@93cf │ │ +42a30a: 6e10 fc5d 0500 |0141: invoke-virtual {v5}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfc │ │ +42a310: 0c05 |0144: move-result-object v5 │ │ +42a312: 7210 3c5e 0500 |0145: invoke-interface {v5}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3c │ │ +42a318: 0c05 |0148: move-result-object v5 │ │ +42a31a: 7120 c454 8500 |0149: invoke-static {v5, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42a320: 0c05 |014c: move-result-object v5 │ │ +42a322: 6e40 39ba 2159 |014d: invoke-virtual {v1, v2, v9, v5}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42a328: 54d1 cc5e |0150: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a32c: 7110 dcbc 0100 |0152: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a332: 0c01 |0155: move-result-object v1 │ │ +42a334: 7100 dbbc 0000 |0156: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a33a: 0c02 |0159: move-result-object v2 │ │ +42a33c: 1a05 d093 |015a: const-string v5, "pki_chat_signature_algorithm" // string@93d0 │ │ +42a340: 54d9 cb5e |015c: iget-object v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ +42a344: 6e40 39ba 2195 |015e: invoke-virtual {v1, v2, v5, v9}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42a34a: 54d1 cc5e |0161: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a34e: 7110 dcbc 0100 |0163: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a354: 0c01 |0166: move-result-object v1 │ │ +42a356: 7100 dbbc 0000 |0167: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a35c: 0c02 |016a: move-result-object v2 │ │ +42a35e: 1a05 d193 |016b: const-string v5, "pki_chat_signature_private_key" // string@93d1 │ │ +42a362: 6e10 fb5d 0000 |016d: invoke-virtual {v0}, Ljava/security/KeyPair;.getPrivate:()Ljava/security/PrivateKey; // method@5dfb │ │ +42a368: 0c09 |0170: move-result-object v9 │ │ +42a36a: 7210 355e 0900 |0171: invoke-interface {v9}, Ljava/security/PrivateKey;.getEncoded:()[B // method@5e35 │ │ +42a370: 0c09 |0174: move-result-object v9 │ │ +42a372: 7120 c454 8900 |0175: invoke-static {v9, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42a378: 0c09 |0178: move-result-object v9 │ │ +42a37a: 6e40 39ba 2195 |0179: invoke-virtual {v1, v2, v5, v9}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42a380: 54d1 cc5e |017c: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a384: 7110 dcbc 0100 |017e: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a38a: 0c01 |0181: move-result-object v1 │ │ +42a38c: 7100 dbbc 0000 |0182: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a392: 0c02 |0185: move-result-object v2 │ │ +42a394: 1a05 d293 |0186: const-string v5, "pki_chat_signature_public_key" // string@93d2 │ │ +42a398: 6e10 fc5d 0000 |0188: invoke-virtual {v0}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfc │ │ +42a39e: 0c00 |018b: move-result-object v0 │ │ +42a3a0: 7210 3c5e 0000 |018c: invoke-interface {v0}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3c │ │ +42a3a6: 0c00 |018f: move-result-object v0 │ │ +42a3a8: 7120 c454 8000 |0190: invoke-static {v0, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42a3ae: 0c00 |0193: move-result-object v0 │ │ +42a3b0: 6e40 39ba 2105 |0194: invoke-virtual {v1, v2, v5, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42a3b6: 7100 dbbc 0000 |0197: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a3bc: 0c00 |019a: move-result-object v0 │ │ +42a3be: 6e20 a1b9 b000 |019b: invoke-virtual {v0, v11}, Lorg/purple/smoke/Cryptography;.prepareSipHashIds:(Ljava/lang/String;)Z // method@b9a1 │ │ +42a3c4: 0a00 |019e: move-result v0 │ │ +42a3c6: 7100 dbbc 0000 |019f: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a3cc: 0c01 |01a2: move-result-object v1 │ │ +42a3ce: 6e10 a2b9 0100 |01a3: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.prepareSipHashKeys:()Z // method@b9a2 │ │ +42a3d4: 0a01 |01a6: move-result v1 │ │ +42a3d6: 23a2 0f1c |01a7: new-array v2, v10, [[B // type@1c0f │ │ +42a3da: 54d5 ca5e |01a9: iget-object v5, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ +42a3de: 6e10 bc5c 0500 |01ab: invoke-virtual {v5}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +42a3e4: 0c05 |01ae: move-result-object v5 │ │ +42a3e6: 4d05 0208 |01af: aput-object v5, v2, v8 │ │ +42a3ea: 4d03 0207 |01b1: aput-object v3, v2, v7 │ │ +42a3ee: 4d04 0206 |01b3: aput-object v4, v2, v6 │ │ +42a3f2: 7110 b8b9 0200 |01b5: invoke-static {v2}, Lorg/purple/smoke/Cryptography;.sha512:([[B)[B // method@b9b8 │ │ +42a3f8: 0c02 |01b8: move-result-object v2 │ │ +42a3fa: 3800 1700 |01b9: if-eqz v0, 01d0 // +0017 │ │ +42a3fe: 3801 1500 |01bb: if-eqz v1, 01d0 // +0015 │ │ +42a402: 3802 1300 |01bd: if-eqz v2, 01d0 // +0013 │ │ +42a406: 54d0 cc5e |01bf: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a40a: 7110 dcbc 0000 |01c1: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a410: 0c00 |01c4: move-result-object v0 │ │ +42a412: 1a01 ae99 |01c5: const-string v1, "saltedPassword" // string@99ae │ │ +42a416: 7120 c454 8200 |01c7: invoke-static {v2, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42a41c: 0c02 |01ca: move-result-object v2 │ │ +42a41e: 6e40 39ba b021 |01cb: invoke-virtual {v0, v11, v1, v2}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42a424: 2900 7900 |01ce: goto/16 0247 // +0079 │ │ +42a428: 3900 0700 |01d0: if-nez v0, 01d7 // +0007 │ │ +42a42c: 1a00 bc94 |01d2: const-string v0, "prepareSipHashIds() failure" // string@94bc │ │ +42a430: 5bd0 c75e |01d4: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a434: 2807 |01d6: goto 01dd // +0007 │ │ +42a436: 3901 0600 |01d7: if-nez v1, 01dd // +0006 │ │ +42a43a: 1a00 bf94 |01d9: const-string v0, "prepareSipHashKeys() failure" // string@94bf │ │ +42a43e: 5bd0 c75e |01db: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a442: 7100 dbbc 0000 |01dd: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a448: 0c00 |01e0: move-result-object v0 │ │ +42a44a: 6e10 aab9 0000 |01e1: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9aa │ │ +42a450: 2863 |01e4: goto 0247 // +0063 │ │ +42a452: 1a00 226a |01e5: const-string v0, "generateMacKey() failure" // string@6a22 │ │ +42a456: 5bd0 c75e |01e7: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a45a: 7100 dbbc 0000 |01e9: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a460: 0c00 |01ec: move-result-object v0 │ │ +42a462: 6e10 aab9 0000 |01ed: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9aa │ │ +42a468: 2200 d40a |01f0: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ +42a46c: 54d1 c75e |01f2: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a470: 7020 325c 1000 |01f4: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ +42a476: 2700 |01f7: throw v0 │ │ +42a478: 1a00 0d6a |01f8: const-string v0, "generateEncryptionKey() failure" // string@6a0d │ │ +42a47c: 5bd0 c75e |01fa: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a480: 7100 dbbc 0000 |01fc: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a486: 0c00 |01ff: move-result-object v0 │ │ +42a488: 6e10 aab9 0000 |0200: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9aa │ │ +42a48e: 2200 d40a |0203: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ +42a492: 54d1 c75e |0205: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a496: 7020 325c 1000 |0207: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ +42a49c: 2700 |020a: throw v0 │ │ +42a49e: 1a00 aaa1 |020b: const-string v0, "signature-key generatePrivatePublicKeyPair() failure" // string@a1aa │ │ +42a4a2: 5bd0 c75e |020d: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a4a6: 7100 dbbc 0000 |020f: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a4ac: 0c00 |0212: move-result-object v0 │ │ +42a4ae: 6e10 aab9 0000 |0213: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9aa │ │ +42a4b4: 2200 d40a |0216: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ +42a4b8: 54d1 c75e |0218: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a4bc: 7020 325c 1000 |021a: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ +42a4c2: 2700 |021d: throw v0 │ │ +42a4c4: 1a00 4066 |021e: const-string v0, "encryption-key generatePrivatePublicKeyPair() failure" // string@6640 │ │ +42a4c8: 5bd0 c75e |0220: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a4cc: 7100 dbbc 0000 |0222: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a4d2: 0c00 |0225: move-result-object v0 │ │ +42a4d4: 6e10 aab9 0000 |0226: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9aa │ │ +42a4da: 2200 d40a |0229: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ +42a4de: 54d1 c75e |022b: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a4e2: 7020 325c 1000 |022d: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ +42a4e8: 2700 |0230: throw v0 │ │ +42a4ea: 0d00 |0231: move-exception v0 │ │ +42a4ec: 6e10 375c 0000 |0232: invoke-virtual {v0}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ +42a4f2: 0c00 |0235: move-result-object v0 │ │ +42a4f4: 6e10 cf5c 0000 |0236: invoke-virtual {v0}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@5ccf │ │ +42a4fa: 0c00 |0239: move-result-object v0 │ │ +42a4fc: 6e10 d35c 0000 |023a: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42a502: 0c00 |023d: move-result-object v0 │ │ +42a504: 5bd0 c75e |023e: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a508: 7100 dbbc 0000 |0240: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a50e: 0c00 |0243: move-result-object v0 │ │ +42a510: 6e10 aab9 0000 |0244: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9aa │ │ +42a516: 54d0 cc5e |0247: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a51a: 2201 f61a |0249: new-instance v1, Lorg/purple/smoke/Settings$3SingleShot$1; // type@1af6 │ │ +42a51e: 7020 96bc d100 |024b: invoke-direct {v1, v13}, Lorg/purple/smoke/Settings$3SingleShot$1;.:(Lorg/purple/smoke/Settings$3SingleShot;)V // method@bc96 │ │ +42a524: 6e20 06bd 1000 |024e: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd06 │ │ +42a52a: 1a00 0000 |0251: const-string v0, "" // string@0000 │ │ +42a52e: 5bd0 ca5e |0253: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ +42a532: 0e00 |0255: return-void │ │ catches : 1 │ │ 0x001b - 0x0231 │ │ Ljava/lang/Exception; -> 0x0231 │ │ positions : │ │ 0x0008 line=1386 │ │ 0x000e line=1388 │ │ 0x0012 line=1389 │ │ @@ -737759,20 +737758,20 @@ │ │ type : '(Lorg/purple/smoke/Settings;II)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 4 │ │ ins : 4 │ │ outs : 1 │ │ insns size : 10 16-bit code units │ │ -42a614: |[42a614] org.purple.smoke.Settings$40.:(Lorg/purple/smoke/Settings;II)V │ │ -42a624: 5b01 d25e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a628: 5902 d35e |0002: iput v2, v0, Lorg/purple/smoke/Settings$40;.val$groupId:I // field@5ed3 │ │ -42a62c: 5903 d45e |0004: iput v3, v0, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ -42a630: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42a636: 0e00 |0009: return-void │ │ +42a610: |[42a610] org.purple.smoke.Settings$40.:(Lorg/purple/smoke/Settings;II)V │ │ +42a620: 5b01 d25e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a624: 5902 d35e |0002: iput v2, v0, Lorg/purple/smoke/Settings$40;.val$groupId:I // field@5ed3 │ │ +42a628: 5903 d45e |0004: iput v3, v0, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ +42a62c: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42a632: 0e00 |0009: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3758 │ │ locals : │ │ 0x0000 - 0x000a reg=0 this Lorg/purple/smoke/Settings$40; │ │ 0x0000 - 0x000a reg=1 (null) Lorg/purple/smoke/Settings; │ │ 0x0000 - 0x000a reg=2 (null) I │ │ @@ -737784,131 +737783,131 @@ │ │ type : '(Landroid/content/DialogInterface;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 238 16-bit code units │ │ -42a638: |[42a638] org.purple.smoke.Settings$40.onCancel:(Landroid/content/DialogInterface;)V │ │ -42a648: 5245 d35e |0000: iget v5, v4, Lorg/purple/smoke/Settings$40;.val$groupId:I // field@5ed3 │ │ -42a64c: 1a00 95a5 |0002: const-string v0, "true" // string@a595 │ │ -42a650: 1a01 c463 |0004: const-string v1, "dialog_accepted" // string@63c4 │ │ -42a654: 3805 8400 |0006: if-eqz v5, 008a // +0084 │ │ -42a658: 1212 |0008: const/4 v2, #int 1 // #1 │ │ -42a65a: 3225 5b00 |0009: if-eq v5, v2, 0064 // +005b │ │ -42a65e: 1222 |000b: const/4 v2, #int 2 // #2 │ │ -42a660: 3225 3100 |000c: if-eq v5, v2, 003d // +0031 │ │ -42a664: 1230 |000e: const/4 v0, #int 3 // #3 │ │ -42a666: 3205 0400 |000f: if-eq v5, v0, 0013 // +0004 │ │ -42a66a: 2900 dc00 |0011: goto/16 00ed // +00dc │ │ -42a66e: 7100 6fbd 0000 |0013: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42a674: 0c05 |0016: move-result-object v5 │ │ -42a676: 1a00 8fa0 |0017: const-string v0, "settings_participant_name_input" // string@a08f │ │ -42a67a: 6e20 70bd 0500 |0019: invoke-virtual {v5, v0}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd70 │ │ -42a680: 0c05 |001c: move-result-object v5 │ │ -42a682: 5441 d25e |001d: iget-object v1, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a686: 7110 dcbc 0100 |001f: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a68c: 0c01 |0022: move-result-object v1 │ │ -42a68e: 7100 dbbc 0000 |0023: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a694: 0c02 |0026: move-result-object v2 │ │ -42a696: 5243 d45e |0027: iget v3, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ -42a69a: 6e40 37ba 2135 |0029: invoke-virtual {v1, v2, v5, v3}, Lorg/purple/smoke/Database;.writeParticipantName:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;I)Z // method@ba37 │ │ -42a6a0: 0a05 |002c: move-result v5 │ │ -42a6a2: 3805 0700 |002d: if-eqz v5, 0034 // +0007 │ │ -42a6a6: 5445 d25e |002f: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a6aa: 7110 d5bc 0500 |0031: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcd5 │ │ -42a6b0: 7100 6fbd 0000 |0034: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42a6b6: 0c05 |0037: move-result-object v5 │ │ -42a6b8: 6e20 7dbd 0500 |0038: invoke-virtual {v5, v0}, Lorg/purple/smoke/State;.removeKey:(Ljava/lang/String;)V // method@bd7d │ │ -42a6be: 2900 b200 |003b: goto/16 00ed // +00b2 │ │ -42a6c2: 7100 6fbd 0000 |003d: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42a6c8: 0c05 |0040: move-result-object v5 │ │ -42a6ca: 6e20 70bd 1500 |0041: invoke-virtual {v5, v1}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd70 │ │ -42a6d0: 0c05 |0044: move-result-object v5 │ │ -42a6d2: 6e20 b85c 0500 |0045: invoke-virtual {v5, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42a6d8: 0a05 |0048: move-result v5 │ │ -42a6da: 3805 a400 |0049: if-eqz v5, 00ed // +00a4 │ │ -42a6de: 5445 d25e |004b: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a6e2: 7110 dcbc 0500 |004d: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a6e8: 0c05 |0050: move-result-object v5 │ │ -42a6ea: 5240 d45e |0051: iget v0, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ -42a6ee: 7110 d55c 0000 |0053: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42a6f4: 0c00 |0056: move-result-object v0 │ │ -42a6f6: 6e20 ebb9 0500 |0057: invoke-virtual {v5, v0}, Lorg/purple/smoke/Database;.deletePublicKeys:(Ljava/lang/String;)Z // method@b9eb │ │ -42a6fc: 0a05 |005a: move-result v5 │ │ -42a6fe: 3805 9200 |005b: if-eqz v5, 00ed // +0092 │ │ -42a702: 5445 d25e |005d: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a706: 7110 d5bc 0500 |005f: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcd5 │ │ -42a70c: 2900 8b00 |0062: goto/16 00ed // +008b │ │ -42a710: 7100 6fbd 0000 |0064: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42a716: 0c05 |0067: move-result-object v5 │ │ -42a718: 6e20 70bd 1500 |0068: invoke-virtual {v5, v1}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd70 │ │ -42a71e: 0c05 |006b: move-result-object v5 │ │ -42a720: 6e20 b85c 0500 |006c: invoke-virtual {v5, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42a726: 0a05 |006f: move-result v5 │ │ -42a728: 3805 7d00 |0070: if-eqz v5, 00ed // +007d │ │ -42a72c: 5445 d25e |0072: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a730: 7110 dcbc 0500 |0074: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a736: 0c05 |0077: move-result-object v5 │ │ -42a738: 5240 d45e |0078: iget v0, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ -42a73c: 7110 d55c 0000 |007a: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42a742: 0c00 |007d: move-result-object v0 │ │ -42a744: 6e20 e7b9 0500 |007e: invoke-virtual {v5, v0}, Lorg/purple/smoke/Database;.deleteFiascoKeys:(Ljava/lang/String;)Z // method@b9e7 │ │ -42a74a: 0a05 |0081: move-result v5 │ │ -42a74c: 3805 6b00 |0082: if-eqz v5, 00ed // +006b │ │ -42a750: 5445 d25e |0084: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a754: 7110 d5bc 0500 |0086: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcd5 │ │ -42a75a: 2864 |0089: goto 00ed // +0064 │ │ -42a75c: 7100 6fbd 0000 |008a: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42a762: 0c05 |008d: move-result-object v5 │ │ -42a764: 6e20 70bd 1500 |008e: invoke-virtual {v5, v1}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd70 │ │ -42a76a: 0c05 |0091: move-result-object v5 │ │ -42a76c: 6e20 b85c 0500 |0092: invoke-virtual {v5, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42a772: 0a05 |0095: move-result v5 │ │ -42a774: 3805 5700 |0096: if-eqz v5, 00ed // +0057 │ │ -42a778: 5445 d25e |0098: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a77c: 7110 dcbc 0500 |009a: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a782: 0c05 |009d: move-result-object v5 │ │ -42a784: 5240 d45e |009e: iget v0, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ -42a788: 7110 d55c 0000 |00a0: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42a78e: 0c00 |00a3: move-result-object v0 │ │ -42a790: 1a01 d5a1 |00a4: const-string v1, "siphash_ids" // string@a1d5 │ │ -42a794: 6e30 e6b9 0501 |00a6: invoke-virtual {v5, v0, v1}, Lorg/purple/smoke/Database;.deleteEntry:(Ljava/lang/String;Ljava/lang/String;)Z // method@b9e6 │ │ -42a79a: 0a05 |00a9: move-result v5 │ │ -42a79c: 3805 4300 |00aa: if-eqz v5, 00ed // +0043 │ │ -42a7a0: 7100 6fbd 0000 |00ac: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42a7a6: 0c05 |00af: move-result-object v5 │ │ -42a7a8: 5240 d45e |00b0: iget v0, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ -42a7ac: 6e20 7bbd 0500 |00b2: invoke-virtual {v5, v0}, Lorg/purple/smoke/State;.removeChatCheckBoxOid:(I)V // method@bd7b │ │ -42a7b2: 7100 6fbd 0000 |00b5: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42a7b8: 0c05 |00b8: move-result-object v5 │ │ -42a7ba: 1a00 a98a |00b9: const-string v0, "member_chat_oid" // string@8aa9 │ │ -42a7be: 1a01 0000 |00bb: const-string v1, "" // string@0000 │ │ -42a7c2: 6e30 8bbd 0501 |00bd: invoke-virtual {v5, v0, v1}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd8b │ │ -42a7c8: 7100 6fbd 0000 |00c0: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42a7ce: 0c05 |00c3: move-result-object v5 │ │ -42a7d0: 1a02 ab8a |00c4: const-string v2, "member_chat_siphash_id" // string@8aab │ │ -42a7d4: 6e30 8bbd 2501 |00c6: invoke-virtual {v5, v2, v1}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd8b │ │ -42a7da: 5445 d25e |00c9: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a7de: 6e10 eebc 0500 |00cb: invoke-virtual {v5}, Lorg/purple/smoke/Settings;.invalidateOptionsMenu:()V // method@bcee │ │ -42a7e4: 5445 d25e |00ce: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a7e8: 7110 dcbc 0500 |00d0: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a7ee: 0c05 |00d3: move-result-object v5 │ │ -42a7f0: 7100 dbbc 0000 |00d4: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a7f6: 0c03 |00d7: move-result-object v3 │ │ -42a7f8: 6e40 39ba 3510 |00d8: invoke-virtual {v5, v3, v0, v1}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42a7fe: 5445 d25e |00db: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a802: 7110 dcbc 0500 |00dd: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42a808: 0c05 |00e0: move-result-object v5 │ │ -42a80a: 7100 dbbc 0000 |00e1: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42a810: 0c00 |00e4: move-result-object v0 │ │ -42a812: 6e40 39ba 0512 |00e5: invoke-virtual {v5, v0, v2, v1}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42a818: 5445 d25e |00e8: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a81c: 7110 d5bc 0500 |00ea: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcd5 │ │ -42a822: 0e00 |00ed: return-void │ │ +42a634: |[42a634] org.purple.smoke.Settings$40.onCancel:(Landroid/content/DialogInterface;)V │ │ +42a644: 5245 d35e |0000: iget v5, v4, Lorg/purple/smoke/Settings$40;.val$groupId:I // field@5ed3 │ │ +42a648: 1a00 95a5 |0002: const-string v0, "true" // string@a595 │ │ +42a64c: 1a01 c463 |0004: const-string v1, "dialog_accepted" // string@63c4 │ │ +42a650: 3805 8400 |0006: if-eqz v5, 008a // +0084 │ │ +42a654: 1212 |0008: const/4 v2, #int 1 // #1 │ │ +42a656: 3225 5b00 |0009: if-eq v5, v2, 0064 // +005b │ │ +42a65a: 1222 |000b: const/4 v2, #int 2 // #2 │ │ +42a65c: 3225 3100 |000c: if-eq v5, v2, 003d // +0031 │ │ +42a660: 1230 |000e: const/4 v0, #int 3 // #3 │ │ +42a662: 3205 0400 |000f: if-eq v5, v0, 0013 // +0004 │ │ +42a666: 2900 dc00 |0011: goto/16 00ed // +00dc │ │ +42a66a: 7100 6fbd 0000 |0013: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42a670: 0c05 |0016: move-result-object v5 │ │ +42a672: 1a00 8fa0 |0017: const-string v0, "settings_participant_name_input" // string@a08f │ │ +42a676: 6e20 70bd 0500 |0019: invoke-virtual {v5, v0}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd70 │ │ +42a67c: 0c05 |001c: move-result-object v5 │ │ +42a67e: 5441 d25e |001d: iget-object v1, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a682: 7110 dcbc 0100 |001f: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a688: 0c01 |0022: move-result-object v1 │ │ +42a68a: 7100 dbbc 0000 |0023: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a690: 0c02 |0026: move-result-object v2 │ │ +42a692: 5243 d45e |0027: iget v3, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ +42a696: 6e40 37ba 2135 |0029: invoke-virtual {v1, v2, v5, v3}, Lorg/purple/smoke/Database;.writeParticipantName:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;I)Z // method@ba37 │ │ +42a69c: 0a05 |002c: move-result v5 │ │ +42a69e: 3805 0700 |002d: if-eqz v5, 0034 // +0007 │ │ +42a6a2: 5445 d25e |002f: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a6a6: 7110 d5bc 0500 |0031: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcd5 │ │ +42a6ac: 7100 6fbd 0000 |0034: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42a6b2: 0c05 |0037: move-result-object v5 │ │ +42a6b4: 6e20 7dbd 0500 |0038: invoke-virtual {v5, v0}, Lorg/purple/smoke/State;.removeKey:(Ljava/lang/String;)V // method@bd7d │ │ +42a6ba: 2900 b200 |003b: goto/16 00ed // +00b2 │ │ +42a6be: 7100 6fbd 0000 |003d: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42a6c4: 0c05 |0040: move-result-object v5 │ │ +42a6c6: 6e20 70bd 1500 |0041: invoke-virtual {v5, v1}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd70 │ │ +42a6cc: 0c05 |0044: move-result-object v5 │ │ +42a6ce: 6e20 b85c 0500 |0045: invoke-virtual {v5, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42a6d4: 0a05 |0048: move-result v5 │ │ +42a6d6: 3805 a400 |0049: if-eqz v5, 00ed // +00a4 │ │ +42a6da: 5445 d25e |004b: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a6de: 7110 dcbc 0500 |004d: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a6e4: 0c05 |0050: move-result-object v5 │ │ +42a6e6: 5240 d45e |0051: iget v0, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ +42a6ea: 7110 d55c 0000 |0053: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42a6f0: 0c00 |0056: move-result-object v0 │ │ +42a6f2: 6e20 ebb9 0500 |0057: invoke-virtual {v5, v0}, Lorg/purple/smoke/Database;.deletePublicKeys:(Ljava/lang/String;)Z // method@b9eb │ │ +42a6f8: 0a05 |005a: move-result v5 │ │ +42a6fa: 3805 9200 |005b: if-eqz v5, 00ed // +0092 │ │ +42a6fe: 5445 d25e |005d: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a702: 7110 d5bc 0500 |005f: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcd5 │ │ +42a708: 2900 8b00 |0062: goto/16 00ed // +008b │ │ +42a70c: 7100 6fbd 0000 |0064: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42a712: 0c05 |0067: move-result-object v5 │ │ +42a714: 6e20 70bd 1500 |0068: invoke-virtual {v5, v1}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd70 │ │ +42a71a: 0c05 |006b: move-result-object v5 │ │ +42a71c: 6e20 b85c 0500 |006c: invoke-virtual {v5, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42a722: 0a05 |006f: move-result v5 │ │ +42a724: 3805 7d00 |0070: if-eqz v5, 00ed // +007d │ │ +42a728: 5445 d25e |0072: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a72c: 7110 dcbc 0500 |0074: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a732: 0c05 |0077: move-result-object v5 │ │ +42a734: 5240 d45e |0078: iget v0, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ +42a738: 7110 d55c 0000 |007a: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42a73e: 0c00 |007d: move-result-object v0 │ │ +42a740: 6e20 e7b9 0500 |007e: invoke-virtual {v5, v0}, Lorg/purple/smoke/Database;.deleteFiascoKeys:(Ljava/lang/String;)Z // method@b9e7 │ │ +42a746: 0a05 |0081: move-result v5 │ │ +42a748: 3805 6b00 |0082: if-eqz v5, 00ed // +006b │ │ +42a74c: 5445 d25e |0084: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a750: 7110 d5bc 0500 |0086: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcd5 │ │ +42a756: 2864 |0089: goto 00ed // +0064 │ │ +42a758: 7100 6fbd 0000 |008a: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42a75e: 0c05 |008d: move-result-object v5 │ │ +42a760: 6e20 70bd 1500 |008e: invoke-virtual {v5, v1}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd70 │ │ +42a766: 0c05 |0091: move-result-object v5 │ │ +42a768: 6e20 b85c 0500 |0092: invoke-virtual {v5, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42a76e: 0a05 |0095: move-result v5 │ │ +42a770: 3805 5700 |0096: if-eqz v5, 00ed // +0057 │ │ +42a774: 5445 d25e |0098: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a778: 7110 dcbc 0500 |009a: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a77e: 0c05 |009d: move-result-object v5 │ │ +42a780: 5240 d45e |009e: iget v0, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ +42a784: 7110 d55c 0000 |00a0: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42a78a: 0c00 |00a3: move-result-object v0 │ │ +42a78c: 1a01 d5a1 |00a4: const-string v1, "siphash_ids" // string@a1d5 │ │ +42a790: 6e30 e6b9 0501 |00a6: invoke-virtual {v5, v0, v1}, Lorg/purple/smoke/Database;.deleteEntry:(Ljava/lang/String;Ljava/lang/String;)Z // method@b9e6 │ │ +42a796: 0a05 |00a9: move-result v5 │ │ +42a798: 3805 4300 |00aa: if-eqz v5, 00ed // +0043 │ │ +42a79c: 7100 6fbd 0000 |00ac: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42a7a2: 0c05 |00af: move-result-object v5 │ │ +42a7a4: 5240 d45e |00b0: iget v0, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ +42a7a8: 6e20 7bbd 0500 |00b2: invoke-virtual {v5, v0}, Lorg/purple/smoke/State;.removeChatCheckBoxOid:(I)V // method@bd7b │ │ +42a7ae: 7100 6fbd 0000 |00b5: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42a7b4: 0c05 |00b8: move-result-object v5 │ │ +42a7b6: 1a00 a98a |00b9: const-string v0, "member_chat_oid" // string@8aa9 │ │ +42a7ba: 1a01 0000 |00bb: const-string v1, "" // string@0000 │ │ +42a7be: 6e30 8bbd 0501 |00bd: invoke-virtual {v5, v0, v1}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd8b │ │ +42a7c4: 7100 6fbd 0000 |00c0: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42a7ca: 0c05 |00c3: move-result-object v5 │ │ +42a7cc: 1a02 ab8a |00c4: const-string v2, "member_chat_siphash_id" // string@8aab │ │ +42a7d0: 6e30 8bbd 2501 |00c6: invoke-virtual {v5, v2, v1}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd8b │ │ +42a7d6: 5445 d25e |00c9: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a7da: 6e10 eebc 0500 |00cb: invoke-virtual {v5}, Lorg/purple/smoke/Settings;.invalidateOptionsMenu:()V // method@bcee │ │ +42a7e0: 5445 d25e |00ce: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a7e4: 7110 dcbc 0500 |00d0: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a7ea: 0c05 |00d3: move-result-object v5 │ │ +42a7ec: 7100 dbbc 0000 |00d4: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a7f2: 0c03 |00d7: move-result-object v3 │ │ +42a7f4: 6e40 39ba 3510 |00d8: invoke-virtual {v5, v3, v0, v1}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42a7fa: 5445 d25e |00db: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a7fe: 7110 dcbc 0500 |00dd: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42a804: 0c05 |00e0: move-result-object v5 │ │ +42a806: 7100 dbbc 0000 |00e1: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42a80c: 0c00 |00e4: move-result-object v0 │ │ +42a80e: 6e40 39ba 0512 |00e5: invoke-virtual {v5, v0, v2, v1}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42a814: 5445 d25e |00e8: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a818: 7110 d5bc 0500 |00ea: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcd5 │ │ +42a81e: 0e00 |00ed: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3763 │ │ 0x0013 line=3812 │ │ 0x0019 line=3813 │ │ 0x001d line=3815 │ │ 0x0023 line=3816 │ │ @@ -737988,19 +737987,19 @@ │ │ type : '(Lorg/purple/smoke/Settings;Ljava/lang/String;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 1 │ │ insns size : 8 16-bit code units │ │ -42ad00: |[42ad00] org.purple.smoke.Settings$4.:(Lorg/purple/smoke/Settings;Ljava/lang/String;)V │ │ -42ad10: 5b01 d55e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ -42ad14: 5b02 d65e |0002: iput-object v2, v0, Lorg/purple/smoke/Settings$4;.val$ipAndPort:Ljava/lang/String; // field@5ed6 │ │ -42ad18: 7010 8f5c 0000 |0004: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42ad1e: 0e00 |0007: return-void │ │ +42acfc: |[42acfc] org.purple.smoke.Settings$4.:(Lorg/purple/smoke/Settings;Ljava/lang/String;)V │ │ +42ad0c: 5b01 d55e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ +42ad10: 5b02 d65e |0002: iput-object v2, v0, Lorg/purple/smoke/Settings$4;.val$ipAndPort:Ljava/lang/String; // field@5ed6 │ │ +42ad14: 7010 8f5c 0000 |0004: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42ad1a: 0e00 |0007: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=963 │ │ locals : │ │ 0x0000 - 0x0008 reg=0 this Lorg/purple/smoke/Settings$4; │ │ 0x0000 - 0x0008 reg=1 (null) Lorg/purple/smoke/Settings; │ │ 0x0000 - 0x0008 reg=2 (null) Ljava/lang/String; │ │ @@ -738011,89 +738010,89 @@ │ │ type : '(Landroid/widget/AdapterView;Landroid/view/View;IJ)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 6 │ │ outs : 4 │ │ insns size : 143 16-bit code units │ │ -42ad20: |[42ad20] org.purple.smoke.Settings$4.onItemSelected:(Landroid/widget/AdapterView;Landroid/view/View;IJ)V │ │ -42ad30: 1213 |0000: const/4 v3, #int 1 // #1 │ │ -42ad32: 3234 7200 |0001: if-eq v4, v3, 0073 // +0072 │ │ -42ad36: 1223 |0003: const/4 v3, #int 2 // #2 │ │ -42ad38: 3234 6300 |0004: if-eq v4, v3, 0067 // +0063 │ │ -42ad3c: 1233 |0006: const/4 v3, #int 3 // #3 │ │ -42ad3e: 1a05 0b64 |0007: const-string v5, "disconnect" // string@640b │ │ -42ad42: 3234 4800 |0009: if-eq v4, v3, 0051 // +0048 │ │ -42ad46: 1243 |000b: const/4 v3, #int 4 // #4 │ │ -42ad48: 3234 3300 |000c: if-eq v4, v3, 003f // +0033 │ │ -42ad4c: 1253 |000e: const/4 v3, #int 5 // #5 │ │ -42ad4e: 3234 0400 |000f: if-eq v4, v3, 0013 // +0004 │ │ -42ad52: 2900 7900 |0011: goto/16 008a // +0079 │ │ -42ad56: 5413 d55e |0013: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ -42ad5a: 7110 dcbc 0300 |0015: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42ad60: 0c03 |0018: move-result-object v3 │ │ -42ad62: 7100 dbbc 0000 |0019: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42ad68: 0c04 |001c: move-result-object v4 │ │ -42ad6a: 6e10 c758 0200 |001d: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ -42ad70: 0a06 |0020: move-result v6 │ │ -42ad72: 7110 d55c 0600 |0021: invoke-static {v6}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42ad78: 0c06 |0024: move-result-object v6 │ │ -42ad7a: 1200 |0025: const/4 v0, #int 0 // #0 │ │ -42ad7c: 6e40 fcb9 4306 |0026: invoke-virtual {v3, v4, v6, v0}, Lorg/purple/smoke/Database;.neighborRecordCertificate:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;[B)V // method@b9fc │ │ -42ad82: 5413 d55e |0029: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ -42ad86: 7110 dcbc 0300 |002b: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42ad8c: 0c03 |002e: move-result-object v3 │ │ -42ad8e: 7100 dbbc 0000 |002f: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42ad94: 0c04 |0032: move-result-object v4 │ │ -42ad96: 6e10 c758 0200 |0033: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ -42ad9c: 0a06 |0036: move-result v6 │ │ -42ad9e: 7110 d55c 0600 |0037: invoke-static {v6}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42ada4: 0c06 |003a: move-result-object v6 │ │ -42ada6: 6e40 fbb9 4365 |003b: invoke-virtual {v3, v4, v5, v6}, Lorg/purple/smoke/Database;.neighborControlStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@b9fb │ │ -42adac: 284c |003e: goto 008a // +004c │ │ -42adae: 5413 d55e |003f: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ -42adb2: 7110 dcbc 0300 |0041: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42adb8: 0c03 |0044: move-result-object v3 │ │ -42adba: 6e10 c758 0200 |0045: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ -42adc0: 0a04 |0048: move-result v4 │ │ -42adc2: 7110 d55c 0400 |0049: invoke-static {v4}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42adc8: 0c04 |004c: move-result-object v4 │ │ -42adca: 6e20 0cba 4300 |004d: invoke-virtual {v3, v4}, Lorg/purple/smoke/Database;.purgeNeighborQueue:(Ljava/lang/String;)V // method@ba0c │ │ -42add0: 283a |0050: goto 008a // +003a │ │ -42add2: 5413 d55e |0051: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ -42add6: 7110 dcbc 0300 |0053: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42addc: 0c03 |0056: move-result-object v3 │ │ -42adde: 7100 dbbc 0000 |0057: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42ade4: 0c04 |005a: move-result-object v4 │ │ -42ade6: 6e10 c758 0200 |005b: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ -42adec: 0a06 |005e: move-result v6 │ │ -42adee: 7110 d55c 0600 |005f: invoke-static {v6}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42adf4: 0c06 |0062: move-result-object v6 │ │ -42adf6: 6e40 fbb9 4365 |0063: invoke-virtual {v3, v4, v5, v6}, Lorg/purple/smoke/Database;.neighborControlStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@b9fb │ │ -42adfc: 2824 |0066: goto 008a // +0024 │ │ -42adfe: 5413 d55e |0067: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ -42ae02: 5414 d65e |0069: iget-object v4, v1, Lorg/purple/smoke/Settings$4;.val$ipAndPort:Ljava/lang/String; // field@5ed6 │ │ -42ae06: 6e10 c758 0200 |006b: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ -42ae0c: 0a05 |006e: move-result v5 │ │ -42ae0e: 7130 debc 4305 |006f: invoke-static {v3, v4, v5}, Lorg/purple/smoke/Settings;.access$800:(Lorg/purple/smoke/Settings;Ljava/lang/String;I)V // method@bcde │ │ -42ae14: 2818 |0072: goto 008a // +0018 │ │ -42ae16: 5413 d55e |0073: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ -42ae1a: 7110 dcbc 0300 |0075: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42ae20: 0c03 |0078: move-result-object v3 │ │ -42ae22: 7100 dbbc 0000 |0079: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42ae28: 0c04 |007c: move-result-object v4 │ │ -42ae2a: 6e10 c758 0200 |007d: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ -42ae30: 0a05 |0080: move-result v5 │ │ -42ae32: 7110 d55c 0500 |0081: invoke-static {v5}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42ae38: 0c05 |0084: move-result-object v5 │ │ -42ae3a: 1a06 5460 |0085: const-string v6, "connect" // string@6054 │ │ -42ae3e: 6e40 fbb9 4356 |0087: invoke-virtual {v3, v4, v6, v5}, Lorg/purple/smoke/Database;.neighborControlStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@b9fb │ │ -42ae44: 1203 |008a: const/4 v3, #int 0 // #0 │ │ -42ae46: 6e20 c858 3200 |008b: invoke-virtual {v2, v3}, Landroid/widget/AdapterView;.setSelection:(I)V // method@58c8 │ │ -42ae4c: 0e00 |008e: return-void │ │ +42ad1c: |[42ad1c] org.purple.smoke.Settings$4.onItemSelected:(Landroid/widget/AdapterView;Landroid/view/View;IJ)V │ │ +42ad2c: 1213 |0000: const/4 v3, #int 1 // #1 │ │ +42ad2e: 3234 7200 |0001: if-eq v4, v3, 0073 // +0072 │ │ +42ad32: 1223 |0003: const/4 v3, #int 2 // #2 │ │ +42ad34: 3234 6300 |0004: if-eq v4, v3, 0067 // +0063 │ │ +42ad38: 1233 |0006: const/4 v3, #int 3 // #3 │ │ +42ad3a: 1a05 0b64 |0007: const-string v5, "disconnect" // string@640b │ │ +42ad3e: 3234 4800 |0009: if-eq v4, v3, 0051 // +0048 │ │ +42ad42: 1243 |000b: const/4 v3, #int 4 // #4 │ │ +42ad44: 3234 3300 |000c: if-eq v4, v3, 003f // +0033 │ │ +42ad48: 1253 |000e: const/4 v3, #int 5 // #5 │ │ +42ad4a: 3234 0400 |000f: if-eq v4, v3, 0013 // +0004 │ │ +42ad4e: 2900 7900 |0011: goto/16 008a // +0079 │ │ +42ad52: 5413 d55e |0013: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ +42ad56: 7110 dcbc 0300 |0015: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42ad5c: 0c03 |0018: move-result-object v3 │ │ +42ad5e: 7100 dbbc 0000 |0019: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42ad64: 0c04 |001c: move-result-object v4 │ │ +42ad66: 6e10 c758 0200 |001d: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ +42ad6c: 0a06 |0020: move-result v6 │ │ +42ad6e: 7110 d55c 0600 |0021: invoke-static {v6}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42ad74: 0c06 |0024: move-result-object v6 │ │ +42ad76: 1200 |0025: const/4 v0, #int 0 // #0 │ │ +42ad78: 6e40 fcb9 4306 |0026: invoke-virtual {v3, v4, v6, v0}, Lorg/purple/smoke/Database;.neighborRecordCertificate:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;[B)V // method@b9fc │ │ +42ad7e: 5413 d55e |0029: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ +42ad82: 7110 dcbc 0300 |002b: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42ad88: 0c03 |002e: move-result-object v3 │ │ +42ad8a: 7100 dbbc 0000 |002f: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42ad90: 0c04 |0032: move-result-object v4 │ │ +42ad92: 6e10 c758 0200 |0033: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ +42ad98: 0a06 |0036: move-result v6 │ │ +42ad9a: 7110 d55c 0600 |0037: invoke-static {v6}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42ada0: 0c06 |003a: move-result-object v6 │ │ +42ada2: 6e40 fbb9 4365 |003b: invoke-virtual {v3, v4, v5, v6}, Lorg/purple/smoke/Database;.neighborControlStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@b9fb │ │ +42ada8: 284c |003e: goto 008a // +004c │ │ +42adaa: 5413 d55e |003f: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ +42adae: 7110 dcbc 0300 |0041: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42adb4: 0c03 |0044: move-result-object v3 │ │ +42adb6: 6e10 c758 0200 |0045: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ +42adbc: 0a04 |0048: move-result v4 │ │ +42adbe: 7110 d55c 0400 |0049: invoke-static {v4}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42adc4: 0c04 |004c: move-result-object v4 │ │ +42adc6: 6e20 0cba 4300 |004d: invoke-virtual {v3, v4}, Lorg/purple/smoke/Database;.purgeNeighborQueue:(Ljava/lang/String;)V // method@ba0c │ │ +42adcc: 283a |0050: goto 008a // +003a │ │ +42adce: 5413 d55e |0051: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ +42add2: 7110 dcbc 0300 |0053: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42add8: 0c03 |0056: move-result-object v3 │ │ +42adda: 7100 dbbc 0000 |0057: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42ade0: 0c04 |005a: move-result-object v4 │ │ +42ade2: 6e10 c758 0200 |005b: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ +42ade8: 0a06 |005e: move-result v6 │ │ +42adea: 7110 d55c 0600 |005f: invoke-static {v6}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42adf0: 0c06 |0062: move-result-object v6 │ │ +42adf2: 6e40 fbb9 4365 |0063: invoke-virtual {v3, v4, v5, v6}, Lorg/purple/smoke/Database;.neighborControlStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@b9fb │ │ +42adf8: 2824 |0066: goto 008a // +0024 │ │ +42adfa: 5413 d55e |0067: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ +42adfe: 5414 d65e |0069: iget-object v4, v1, Lorg/purple/smoke/Settings$4;.val$ipAndPort:Ljava/lang/String; // field@5ed6 │ │ +42ae02: 6e10 c758 0200 |006b: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ +42ae08: 0a05 |006e: move-result v5 │ │ +42ae0a: 7130 debc 4305 |006f: invoke-static {v3, v4, v5}, Lorg/purple/smoke/Settings;.access$800:(Lorg/purple/smoke/Settings;Ljava/lang/String;I)V // method@bcde │ │ +42ae10: 2818 |0072: goto 008a // +0018 │ │ +42ae12: 5413 d55e |0073: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ +42ae16: 7110 dcbc 0300 |0075: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42ae1c: 0c03 |0078: move-result-object v3 │ │ +42ae1e: 7100 dbbc 0000 |0079: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42ae24: 0c04 |007c: move-result-object v4 │ │ +42ae26: 6e10 c758 0200 |007d: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ +42ae2c: 0a05 |0080: move-result v5 │ │ +42ae2e: 7110 d55c 0500 |0081: invoke-static {v5}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42ae34: 0c05 |0084: move-result-object v5 │ │ +42ae36: 1a06 5460 |0085: const-string v6, "connect" // string@6054 │ │ +42ae3a: 6e40 fbb9 4356 |0087: invoke-virtual {v3, v4, v6, v5}, Lorg/purple/smoke/Database;.neighborControlStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@b9fb │ │ +42ae40: 1203 |008a: const/4 v3, #int 0 // #0 │ │ +42ae42: 6e20 c858 3200 |008b: invoke-virtual {v2, v3}, Landroid/widget/AdapterView;.setSelection:(I)V // method@58c8 │ │ +42ae48: 0e00 |008e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0013 line=992 │ │ 0x0019 line=993 │ │ 0x001d line=994 │ │ 0x0026 line=993 │ │ 0x0029 line=996 │ │ @@ -738124,16 +738123,16 @@ │ │ type : '(Landroid/widget/AdapterView;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -42ae50: |[42ae50] org.purple.smoke.Settings$4.onNothingSelected:(Landroid/widget/AdapterView;)V │ │ -42ae60: 0e00 |0000: return-void │ │ +42ae4c: |[42ae4c] org.purple.smoke.Settings$4.onNothingSelected:(Landroid/widget/AdapterView;)V │ │ +42ae5c: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ source_file_idx : 19282 (Settings.java) │ │ │ │ Class #2705 header: │ │ @@ -738169,18 +738168,18 @@ │ │ type : '(Lorg/purple/smoke/Settings$4SingleShot;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -42a824: |[42a824] org.purple.smoke.Settings$4SingleShot$1.:(Lorg/purple/smoke/Settings$4SingleShot;)V │ │ -42a834: 5b01 d75e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a838: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42a83e: 0e00 |0005: return-void │ │ +42a820: |[42a820] org.purple.smoke.Settings$4SingleShot$1.:(Lorg/purple/smoke/Settings$4SingleShot;)V │ │ +42a830: 5b01 d75e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a834: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42a83a: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2705 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$4SingleShot$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings$4SingleShot; │ │ │ │ @@ -738190,73 +738189,73 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 127 16-bit code units │ │ -42a840: |[42a840] org.purple.smoke.Settings$4SingleShot$1.run:()V │ │ -42a850: 5430 d75e |0000: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a854: 5400 dc5e |0002: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5edc │ │ -42a858: 1241 |0004: const/4 v1, #int 4 // #4 │ │ -42a85a: 6e20 5f5a 1000 |0005: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42a860: 5430 d75e |0008: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a864: 5400 db5e |000a: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42a868: 6e10 edbc 0000 |000c: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ -42a86e: 0c00 |000f: move-result-object v0 │ │ -42a870: 1302 1000 |0010: const/16 v2, #int 16 // #10 │ │ -42a874: 6e20 8557 2000 |0012: invoke-virtual {v0, v2}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ -42a87a: 5430 d75e |0015: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a87e: 5400 db5e |0017: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42a882: 1402 9200 087f |0019: const v2, #float 1.80778e+38 // #7f080092 │ │ -42a888: 6e20 e5bc 2000 |001c: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42a88e: 0c00 |001f: move-result-object v0 │ │ -42a890: 1212 |0020: const/4 v2, #int 1 // #1 │ │ -42a892: 7120 e6bb 2000 |0021: invoke-static {v0, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ -42a898: 5430 d75e |0024: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a89c: 7110 a3bc 0000 |0026: invoke-static {v0}, Lorg/purple/smoke/Settings$4SingleShot;.access$2500:(Lorg/purple/smoke/Settings$4SingleShot;)Ljava/lang/String; // method@bca3 │ │ -42a8a2: 0c00 |0029: move-result-object v0 │ │ -42a8a4: 6e10 c35c 0000 |002a: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42a8aa: 0a00 |002d: move-result v0 │ │ -42a8ac: 3900 2600 |002e: if-nez v0, 0054 // +0026 │ │ -42a8b0: 5430 d75e |0030: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a8b4: 5400 db5e |0032: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42a8b8: 2201 f10a |0034: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -42a8bc: 7010 ee5c 0100 |0036: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42a8c2: 1a02 6a0d |0039: const-string v2, "An error (" // string@0d6a │ │ -42a8c6: 6e20 f95c 2100 |003b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42a8cc: 5432 d75e |003e: iget-object v2, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a8d0: 7110 a3bc 0200 |0040: invoke-static {v2}, Lorg/purple/smoke/Settings$4SingleShot;.access$2500:(Lorg/purple/smoke/Settings$4SingleShot;)Ljava/lang/String; // method@bca3 │ │ -42a8d6: 0c02 |0043: move-result-object v2 │ │ -42a8d8: 6e20 f95c 2100 |0044: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42a8de: 1a02 ff03 |0047: const-string v2, ") occurred while generating the PKI data." // string@03ff │ │ -42a8e2: 6e20 f95c 2100 |0049: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42a8e8: 6e10 035d 0100 |004c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42a8ee: 0c01 |004f: move-result-object v1 │ │ -42a8f0: 7120 f5bb 1000 |0050: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ -42a8f6: 282b |0053: goto 007e // +002b │ │ -42a8f8: 5430 d75e |0054: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a8fc: 5400 db5e |0056: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42a900: 7120 cbbc 2000 |0058: invoke-static {v0, v2}, Lorg/purple/smoke/Settings;.access$1000:(Lorg/purple/smoke/Settings;Z)V // method@bccb │ │ -42a906: 5430 d75e |005b: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a90a: 5400 db5e |005d: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42a90e: 7110 ccbc 0000 |005f: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1100:(Lorg/purple/smoke/Settings;)V // method@bccc │ │ -42a914: 5430 d75e |0062: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a918: 5400 dd5e |0064: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$spinner1:Landroid/widget/Spinner; // field@5edd │ │ -42a91c: 6e20 cc5a 1000 |0066: invoke-virtual {v0, v1}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -42a922: 5430 d75e |0069: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a926: 5400 de5e |006b: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$spinner2:Landroid/widget/Spinner; // field@5ede │ │ -42a92a: 6e20 cc5a 2000 |006d: invoke-virtual {v0, v2}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -42a930: 5430 d75e |0070: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a934: 5400 db5e |0072: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42a938: 7110 cdbc 0000 |0074: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1200:(Lorg/purple/smoke/Settings;)V // method@bccd │ │ -42a93e: 5430 d75e |0077: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a942: 5400 db5e |0079: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42a946: 7110 cebc 0000 |007b: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1300:(Lorg/purple/smoke/Settings;)V // method@bcce │ │ -42a94c: 0e00 |007e: return-void │ │ +42a83c: |[42a83c] org.purple.smoke.Settings$4SingleShot$1.run:()V │ │ +42a84c: 5430 d75e |0000: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a850: 5400 dc5e |0002: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5edc │ │ +42a854: 1241 |0004: const/4 v1, #int 4 // #4 │ │ +42a856: 6e20 5f5a 1000 |0005: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42a85c: 5430 d75e |0008: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a860: 5400 db5e |000a: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42a864: 6e10 edbc 0000 |000c: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ +42a86a: 0c00 |000f: move-result-object v0 │ │ +42a86c: 1302 1000 |0010: const/16 v2, #int 16 // #10 │ │ +42a870: 6e20 8557 2000 |0012: invoke-virtual {v0, v2}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ +42a876: 5430 d75e |0015: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a87a: 5400 db5e |0017: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42a87e: 1402 9200 087f |0019: const v2, #float 1.80778e+38 // #7f080092 │ │ +42a884: 6e20 e5bc 2000 |001c: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42a88a: 0c00 |001f: move-result-object v0 │ │ +42a88c: 1212 |0020: const/4 v2, #int 1 // #1 │ │ +42a88e: 7120 e6bb 2000 |0021: invoke-static {v0, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ +42a894: 5430 d75e |0024: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a898: 7110 a3bc 0000 |0026: invoke-static {v0}, Lorg/purple/smoke/Settings$4SingleShot;.access$2500:(Lorg/purple/smoke/Settings$4SingleShot;)Ljava/lang/String; // method@bca3 │ │ +42a89e: 0c00 |0029: move-result-object v0 │ │ +42a8a0: 6e10 c35c 0000 |002a: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42a8a6: 0a00 |002d: move-result v0 │ │ +42a8a8: 3900 2600 |002e: if-nez v0, 0054 // +0026 │ │ +42a8ac: 5430 d75e |0030: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a8b0: 5400 db5e |0032: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42a8b4: 2201 f10a |0034: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +42a8b8: 7010 ee5c 0100 |0036: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42a8be: 1a02 6a0d |0039: const-string v2, "An error (" // string@0d6a │ │ +42a8c2: 6e20 f95c 2100 |003b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42a8c8: 5432 d75e |003e: iget-object v2, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a8cc: 7110 a3bc 0200 |0040: invoke-static {v2}, Lorg/purple/smoke/Settings$4SingleShot;.access$2500:(Lorg/purple/smoke/Settings$4SingleShot;)Ljava/lang/String; // method@bca3 │ │ +42a8d2: 0c02 |0043: move-result-object v2 │ │ +42a8d4: 6e20 f95c 2100 |0044: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42a8da: 1a02 ff03 |0047: const-string v2, ") occurred while generating the PKI data." // string@03ff │ │ +42a8de: 6e20 f95c 2100 |0049: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42a8e4: 6e10 035d 0100 |004c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42a8ea: 0c01 |004f: move-result-object v1 │ │ +42a8ec: 7120 f5bb 1000 |0050: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ +42a8f2: 282b |0053: goto 007e // +002b │ │ +42a8f4: 5430 d75e |0054: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a8f8: 5400 db5e |0056: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42a8fc: 7120 cbbc 2000 |0058: invoke-static {v0, v2}, Lorg/purple/smoke/Settings;.access$1000:(Lorg/purple/smoke/Settings;Z)V // method@bccb │ │ +42a902: 5430 d75e |005b: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a906: 5400 db5e |005d: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42a90a: 7110 ccbc 0000 |005f: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1100:(Lorg/purple/smoke/Settings;)V // method@bccc │ │ +42a910: 5430 d75e |0062: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a914: 5400 dd5e |0064: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$spinner1:Landroid/widget/Spinner; // field@5edd │ │ +42a918: 6e20 cc5a 1000 |0066: invoke-virtual {v0, v1}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +42a91e: 5430 d75e |0069: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a922: 5400 de5e |006b: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$spinner2:Landroid/widget/Spinner; // field@5ede │ │ +42a926: 6e20 cc5a 2000 |006d: invoke-virtual {v0, v2}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +42a92c: 5430 d75e |0070: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a930: 5400 db5e |0072: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42a934: 7110 cdbc 0000 |0074: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1200:(Lorg/purple/smoke/Settings;)V // method@bccd │ │ +42a93a: 5430 d75e |0077: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a93e: 5400 db5e |0079: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42a942: 7110 cebc 0000 |007b: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1300:(Lorg/purple/smoke/Settings;)V // method@bcce │ │ +42a948: 0e00 |007e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2709 │ │ 0x0008 line=2710 │ │ 0x0012 line=2711 │ │ 0x0015 line=2713 │ │ 0x001c line=2714 │ │ @@ -738334,31 +738333,31 @@ │ │ type : '(Lorg/purple/smoke/Settings;Ljava/lang/String;Ljava/lang/String;Landroid/widget/ProgressBar;Landroid/widget/Spinner;Landroid/widget/Spinner;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 7 │ │ ins : 7 │ │ outs : 2 │ │ insns size : 32 16-bit code units │ │ -42a968: |[42a968] org.purple.smoke.Settings$4SingleShot.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Ljava/lang/String;Landroid/widget/ProgressBar;Landroid/widget/Spinner;Landroid/widget/Spinner;)V │ │ -42a978: 5b01 db5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42a97c: 5b04 dc5e |0002: iput-object v4, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5edc │ │ -42a980: 5b05 dd5e |0004: iput-object v5, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$spinner1:Landroid/widget/Spinner; // field@5edd │ │ -42a984: 5b06 de5e |0006: iput-object v6, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$spinner2:Landroid/widget/Spinner; // field@5ede │ │ -42a988: 7010 8f5c 0000 |0008: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42a98e: 1a01 0000 |000b: const-string v1, "" // string@0000 │ │ -42a992: 5b01 d95e |000d: iput-object v1, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ -42a996: 5b02 d85e |000f: iput-object v2, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ -42a99a: 5b03 da5e |0011: iput-object v3, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ -42a99e: 1a01 1a18 |0013: const-string v1, "ECDSA" // string@181a │ │ -42a9a2: 6e20 b85c 1300 |0015: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42a9a8: 0a01 |0018: move-result v1 │ │ -42a9aa: 3801 0600 |0019: if-eqz v1, 001f // +0006 │ │ -42a9ae: 1a01 e817 |001b: const-string v1, "EC" // string@17e8 │ │ -42a9b2: 5b01 da5e |001d: iput-object v1, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ -42a9b6: 0e00 |001f: return-void │ │ +42a964: |[42a964] org.purple.smoke.Settings$4SingleShot.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Ljava/lang/String;Landroid/widget/ProgressBar;Landroid/widget/Spinner;Landroid/widget/Spinner;)V │ │ +42a974: 5b01 db5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42a978: 5b04 dc5e |0002: iput-object v4, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5edc │ │ +42a97c: 5b05 dd5e |0004: iput-object v5, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$spinner1:Landroid/widget/Spinner; // field@5edd │ │ +42a980: 5b06 de5e |0006: iput-object v6, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$spinner2:Landroid/widget/Spinner; // field@5ede │ │ +42a984: 7010 8f5c 0000 |0008: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42a98a: 1a01 0000 |000b: const-string v1, "" // string@0000 │ │ +42a98e: 5b01 d95e |000d: iput-object v1, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ +42a992: 5b02 d85e |000f: iput-object v2, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ +42a996: 5b03 da5e |0011: iput-object v3, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ +42a99a: 1a01 1a18 |0013: const-string v1, "ECDSA" // string@181a │ │ +42a99e: 6e20 b85c 1300 |0015: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42a9a4: 0a01 |0018: move-result v1 │ │ +42a9a6: 3801 0600 |0019: if-eqz v1, 001f // +0006 │ │ +42a9aa: 1a01 e817 |001b: const-string v1, "EC" // string@17e8 │ │ +42a9ae: 5b01 da5e |001d: iput-object v1, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ +42a9b2: 0e00 |001f: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2564 │ │ 0x000d line=2560 │ │ 0x000f line=2565 │ │ 0x0011 line=2566 │ │ 0x0015 line=2568 │ │ @@ -738377,17 +738376,17 @@ │ │ type : '(Lorg/purple/smoke/Settings$4SingleShot;)Ljava/lang/String;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -42a950: |[42a950] org.purple.smoke.Settings$4SingleShot.access$2500:(Lorg/purple/smoke/Settings$4SingleShot;)Ljava/lang/String; │ │ -42a960: 5400 d95e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ -42a964: 1100 |0002: return-object v0 │ │ +42a94c: |[42a94c] org.purple.smoke.Settings$4SingleShot.access$2500:(Lorg/purple/smoke/Settings$4SingleShot;)Ljava/lang/String; │ │ +42a95c: 5400 d95e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ +42a960: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2557 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings$4SingleShot; │ │ │ │ Virtual methods - │ │ @@ -738396,217 +738395,217 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 10 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 403 16-bit code units │ │ -42a9b8: |[42a9b8] org.purple.smoke.Settings$4SingleShot.run:()V │ │ -42a9c8: 1a00 9946 |0000: const-string v0, "Rainbow" // string@4699 │ │ -42a9cc: 1a01 6c46 |0002: const-string v1, "RSA" // string@466c │ │ -42a9d0: 1a02 e817 |0004: const-string v2, "EC" // string@17e8 │ │ -42a9d4: 5493 d85e |0006: iget-object v3, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ -42a9d8: 1a04 a506 |0008: const-string v4, "12, 68" // string@06a5 │ │ -42a9dc: 6e20 b65c 4300 |000a: invoke-virtual {v3, v4}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -42a9e2: 0a03 |000d: move-result v3 │ │ -42a9e4: 1224 |000e: const/4 v4, #int 2 // #2 │ │ -42a9e6: 1215 |000f: const/4 v5, #int 1 // #1 │ │ -42a9e8: 1206 |0010: const/4 v6, #int 0 // #0 │ │ -42a9ea: 3803 0400 |0011: if-eqz v3, 0015 // +0004 │ │ -42a9ee: 1213 |0013: const/4 v3, #int 1 // #1 │ │ -42a9f0: 280e |0014: goto 0022 // +000e │ │ -42a9f2: 5493 d85e |0015: iget-object v3, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ -42a9f6: 1a07 af06 |0017: const-string v7, "13, 118" // string@06af │ │ -42a9fa: 6e20 b65c 7300 |0019: invoke-virtual {v3, v7}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -42aa00: 0a03 |001c: move-result v3 │ │ -42aa02: 3803 0400 |001d: if-eqz v3, 0021 // +0004 │ │ -42aa06: 1223 |001f: const/4 v3, #int 2 // #2 │ │ -42aa08: 2802 |0020: goto 0022 // +0002 │ │ -42aa0a: 1203 |0021: const/4 v3, #int 0 // #0 │ │ -42aa0c: 5497 d85e |0022: iget-object v7, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ -42aa10: 6208 bb53 |0024: sget-object v8, Lorg/purple/smoke/Cryptography;.PKI_ENCRYPTION_KEY_SIZES:[I // field@53bb │ │ -42aa14: 4408 0806 |0026: aget v8, v8, v6 │ │ -42aa18: 7130 8bb9 8703 |0028: invoke-static {v7, v8, v3}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ -42aa1e: 0c03 |002b: move-result-object v3 │ │ -42aa20: 3803 3301 |002c: if-eqz v3, 015f // +0133 │ │ -42aa24: 5497 da5e |002e: iget-object v7, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ -42aa28: 6e20 b85c 2700 |0030: invoke-virtual {v7, v2}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42aa2e: 0a07 |0033: move-result v7 │ │ -42aa30: 3807 0b00 |0034: if-eqz v7, 003f // +000b │ │ -42aa34: 6200 bf53 |0036: sget-object v0, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ -42aa38: 4400 0006 |0038: aget v0, v0, v6 │ │ -42aa3c: 7130 8bb9 0206 |003a: invoke-static {v2, v0, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ -42aa42: 0c00 |003d: move-result-object v0 │ │ -42aa44: 282e |003e: goto 006c // +002e │ │ -42aa46: 5492 da5e |003f: iget-object v2, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ -42aa4a: 6e20 b85c 1200 |0041: invoke-virtual {v2, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42aa50: 0a02 |0044: move-result v2 │ │ -42aa52: 3802 0b00 |0045: if-eqz v2, 0050 // +000b │ │ -42aa56: 6200 bf53 |0047: sget-object v0, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ -42aa5a: 4400 0005 |0049: aget v0, v0, v5 │ │ -42aa5e: 7130 8bb9 0106 |004b: invoke-static {v1, v0, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ -42aa64: 0c00 |004e: move-result-object v0 │ │ -42aa66: 281d |004f: goto 006c // +001d │ │ -42aa68: 5491 da5e |0050: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ -42aa6c: 6e20 b85c 0100 |0052: invoke-virtual {v1, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42aa72: 0a01 |0055: move-result v1 │ │ -42aa74: 3801 0b00 |0056: if-eqz v1, 0061 // +000b │ │ -42aa78: 6201 bf53 |0058: sget-object v1, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ -42aa7c: 4401 0104 |005a: aget v1, v1, v4 │ │ -42aa80: 7130 8bb9 1006 |005c: invoke-static {v0, v1, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ -42aa86: 0c00 |005f: move-result-object v0 │ │ -42aa88: 280c |0060: goto 006c // +000c │ │ -42aa8a: 5490 da5e |0061: iget-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ -42aa8e: 6201 bf53 |0063: sget-object v1, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ -42aa92: 1232 |0065: const/4 v2, #int 3 // #3 │ │ -42aa94: 4401 0102 |0066: aget v1, v1, v2 │ │ -42aa98: 7130 8bb9 1006 |0068: invoke-static {v0, v1, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ -42aa9e: 0c00 |006b: move-result-object v0 │ │ -42aaa0: 3800 e000 |006c: if-eqz v0, 014c // +00e0 │ │ -42aaa4: 7100 dbbc 0000 |006e: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42aaaa: 0c01 |0071: move-result-object v1 │ │ -42aaac: 6e20 aeb9 3100 |0072: invoke-virtual {v1, v3}, Lorg/purple/smoke/Cryptography;.setChatEncryptionPublicKeyPair:(Ljava/security/KeyPair;)V // method@b9ae │ │ -42aab2: 7100 dbbc 0000 |0075: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42aab8: 0c01 |0078: move-result-object v1 │ │ -42aaba: 5492 d85e |0079: iget-object v2, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ -42aabe: 6e20 acb9 2100 |007b: invoke-virtual {v1, v2}, Lorg/purple/smoke/Cryptography;.setChatEncryptionPublicKeyAlgorithm:(Ljava/lang/String;)V // method@b9ac │ │ -42aac4: 7100 dbbc 0000 |007e: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42aaca: 0c01 |0081: move-result-object v1 │ │ -42aacc: 6e20 b0b9 0100 |0082: invoke-virtual {v1, v0}, Lorg/purple/smoke/Cryptography;.setChatSignaturePublicKeyPair:(Ljava/security/KeyPair;)V // method@b9b0 │ │ -42aad2: 5491 db5e |0085: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42aad6: 7110 dcbc 0100 |0087: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42aadc: 0c01 |008a: move-result-object v1 │ │ -42aade: 7100 dbbc 0000 |008b: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42aae4: 0c02 |008e: move-result-object v2 │ │ -42aae6: 1a04 cd93 |008f: const-string v4, "pki_chat_encryption_algorithm" // string@93cd │ │ -42aaea: 5495 d85e |0091: iget-object v5, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ -42aaee: 6e40 39ba 2154 |0093: invoke-virtual {v1, v2, v4, v5}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42aaf4: 5491 db5e |0096: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42aaf8: 7110 dcbc 0100 |0098: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42aafe: 0c01 |009b: move-result-object v1 │ │ -42ab00: 7100 dbbc 0000 |009c: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42ab06: 0c02 |009f: move-result-object v2 │ │ -42ab08: 1a04 ce93 |00a0: const-string v4, "pki_chat_encryption_private_key" // string@93ce │ │ -42ab0c: 6e10 fb5d 0300 |00a2: invoke-virtual {v3}, Ljava/security/KeyPair;.getPrivate:()Ljava/security/PrivateKey; // method@5dfb │ │ -42ab12: 0c05 |00a5: move-result-object v5 │ │ -42ab14: 7210 355e 0500 |00a6: invoke-interface {v5}, Ljava/security/PrivateKey;.getEncoded:()[B // method@5e35 │ │ -42ab1a: 0c05 |00a9: move-result-object v5 │ │ -42ab1c: 7120 c454 6500 |00aa: invoke-static {v5, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42ab22: 0c05 |00ad: move-result-object v5 │ │ -42ab24: 6e40 39ba 2154 |00ae: invoke-virtual {v1, v2, v4, v5}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42ab2a: 5491 db5e |00b1: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42ab2e: 7110 dcbc 0100 |00b3: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42ab34: 0c01 |00b6: move-result-object v1 │ │ -42ab36: 7100 dbbc 0000 |00b7: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42ab3c: 0c02 |00ba: move-result-object v2 │ │ -42ab3e: 1a04 cf93 |00bb: const-string v4, "pki_chat_encryption_public_key" // string@93cf │ │ -42ab42: 6e10 fc5d 0300 |00bd: invoke-virtual {v3}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfc │ │ -42ab48: 0c03 |00c0: move-result-object v3 │ │ -42ab4a: 7210 3c5e 0300 |00c1: invoke-interface {v3}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3c │ │ -42ab50: 0c03 |00c4: move-result-object v3 │ │ -42ab52: 7120 c454 6300 |00c5: invoke-static {v3, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42ab58: 0c03 |00c8: move-result-object v3 │ │ -42ab5a: 6e40 39ba 2134 |00c9: invoke-virtual {v1, v2, v4, v3}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42ab60: 5491 db5e |00cc: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42ab64: 7110 dcbc 0100 |00ce: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42ab6a: 0c01 |00d1: move-result-object v1 │ │ -42ab6c: 7100 dbbc 0000 |00d2: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42ab72: 0c02 |00d5: move-result-object v2 │ │ -42ab74: 1a03 d093 |00d6: const-string v3, "pki_chat_signature_algorithm" // string@93d0 │ │ -42ab78: 5494 da5e |00d8: iget-object v4, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ -42ab7c: 6e40 39ba 2143 |00da: invoke-virtual {v1, v2, v3, v4}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42ab82: 5491 db5e |00dd: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42ab86: 7110 dcbc 0100 |00df: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42ab8c: 0c01 |00e2: move-result-object v1 │ │ -42ab8e: 7100 dbbc 0000 |00e3: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42ab94: 0c02 |00e6: move-result-object v2 │ │ -42ab96: 1a03 d193 |00e7: const-string v3, "pki_chat_signature_private_key" // string@93d1 │ │ -42ab9a: 6e10 fb5d 0000 |00e9: invoke-virtual {v0}, Ljava/security/KeyPair;.getPrivate:()Ljava/security/PrivateKey; // method@5dfb │ │ -42aba0: 0c04 |00ec: move-result-object v4 │ │ -42aba2: 7210 355e 0400 |00ed: invoke-interface {v4}, Ljava/security/PrivateKey;.getEncoded:()[B // method@5e35 │ │ -42aba8: 0c04 |00f0: move-result-object v4 │ │ -42abaa: 7120 c454 6400 |00f1: invoke-static {v4, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42abb0: 0c04 |00f4: move-result-object v4 │ │ -42abb2: 6e40 39ba 2143 |00f5: invoke-virtual {v1, v2, v3, v4}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42abb8: 5491 db5e |00f8: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42abbc: 7110 dcbc 0100 |00fa: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42abc2: 0c01 |00fd: move-result-object v1 │ │ -42abc4: 7100 dbbc 0000 |00fe: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42abca: 0c02 |0101: move-result-object v2 │ │ -42abcc: 1a03 d293 |0102: const-string v3, "pki_chat_signature_public_key" // string@93d2 │ │ -42abd0: 6e10 fc5d 0000 |0104: invoke-virtual {v0}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfc │ │ -42abd6: 0c00 |0107: move-result-object v0 │ │ -42abd8: 7210 3c5e 0000 |0108: invoke-interface {v0}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3c │ │ -42abde: 0c00 |010b: move-result-object v0 │ │ -42abe0: 7120 c454 6000 |010c: invoke-static {v0, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42abe6: 0c00 |010f: move-result-object v0 │ │ -42abe8: 6e40 39ba 2103 |0110: invoke-virtual {v1, v2, v3, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42abee: 7100 dbbc 0000 |0113: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42abf4: 0c00 |0116: move-result-object v0 │ │ -42abf6: 5491 db5e |0117: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42abfa: 7110 dcbc 0100 |0119: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42ac00: 0c01 |011c: move-result-object v1 │ │ -42ac02: 7100 dbbc 0000 |011d: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42ac08: 0c02 |0120: move-result-object v2 │ │ -42ac0a: 1a03 4359 |0121: const-string v3, "alias" // string@5943 │ │ -42ac0e: 6e30 17ba 2103 |0123: invoke-virtual {v1, v2, v3}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42ac14: 0c01 |0126: move-result-object v1 │ │ -42ac16: 6e20 a1b9 1000 |0127: invoke-virtual {v0, v1}, Lorg/purple/smoke/Cryptography;.prepareSipHashIds:(Ljava/lang/String;)Z // method@b9a1 │ │ -42ac1c: 0a00 |012a: move-result v0 │ │ -42ac1e: 7100 dbbc 0000 |012b: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42ac24: 0c01 |012e: move-result-object v1 │ │ -42ac26: 6e10 a2b9 0100 |012f: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.prepareSipHashKeys:()Z // method@b9a2 │ │ -42ac2c: 0a01 |0132: move-result v1 │ │ -42ac2e: 3800 0400 |0133: if-eqz v0, 0137 // +0004 │ │ -42ac32: 3901 5300 |0135: if-nez v1, 0188 // +0053 │ │ -42ac36: 3900 0700 |0137: if-nez v0, 013e // +0007 │ │ -42ac3a: 1a00 bc94 |0139: const-string v0, "prepareSipHashIds() failure" // string@94bc │ │ -42ac3e: 5b90 d95e |013b: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ -42ac42: 2807 |013d: goto 0144 // +0007 │ │ -42ac44: 3901 0600 |013e: if-nez v1, 0144 // +0006 │ │ -42ac48: 1a00 bf94 |0140: const-string v0, "prepareSipHashKeys() failure" // string@94bf │ │ -42ac4c: 5b90 d95e |0142: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ -42ac50: 7100 dbbc 0000 |0144: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42ac56: 0c00 |0147: move-result-object v0 │ │ -42ac58: 6e10 abb9 0000 |0148: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.resetPKI:()V // method@b9ab │ │ -42ac5e: 283d |014b: goto 0188 // +003d │ │ -42ac60: 1a00 aaa1 |014c: const-string v0, "signature-key generatePrivatePublicKeyPair() failure" // string@a1aa │ │ -42ac64: 5b90 d95e |014e: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ -42ac68: 7100 dbbc 0000 |0150: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42ac6e: 0c00 |0153: move-result-object v0 │ │ -42ac70: 6e10 abb9 0000 |0154: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.resetPKI:()V // method@b9ab │ │ -42ac76: 2200 d40a |0157: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ -42ac7a: 5491 d95e |0159: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ -42ac7e: 7020 325c 1000 |015b: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ -42ac84: 2700 |015e: throw v0 │ │ -42ac86: 1a00 4066 |015f: const-string v0, "encryption-key generatePrivatePublicKeyPair() failure" // string@6640 │ │ -42ac8a: 5b90 d95e |0161: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ -42ac8e: 7100 dbbc 0000 |0163: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42ac94: 0c00 |0166: move-result-object v0 │ │ -42ac96: 6e10 abb9 0000 |0167: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.resetPKI:()V // method@b9ab │ │ -42ac9c: 2200 d40a |016a: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ -42aca0: 5491 d95e |016c: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ -42aca4: 7020 325c 1000 |016e: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ -42acaa: 2700 |0171: throw v0 │ │ -42acac: 0d00 |0172: move-exception v0 │ │ -42acae: 6e10 375c 0000 |0173: invoke-virtual {v0}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ -42acb4: 0c00 |0176: move-result-object v0 │ │ -42acb6: 6e10 cf5c 0000 |0177: invoke-virtual {v0}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@5ccf │ │ -42acbc: 0c00 |017a: move-result-object v0 │ │ -42acbe: 6e10 d35c 0000 |017b: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42acc4: 0c00 |017e: move-result-object v0 │ │ -42acc6: 5b90 d95e |017f: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ -42acca: 7100 dbbc 0000 |0181: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42acd0: 0c00 |0184: move-result-object v0 │ │ -42acd2: 6e10 abb9 0000 |0185: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.resetPKI:()V // method@b9ab │ │ -42acd8: 5490 db5e |0188: iget-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42acdc: 2201 fa1a |018a: new-instance v1, Lorg/purple/smoke/Settings$4SingleShot$1; // type@1afa │ │ -42ace0: 7020 a0bc 9100 |018c: invoke-direct {v1, v9}, Lorg/purple/smoke/Settings$4SingleShot$1;.:(Lorg/purple/smoke/Settings$4SingleShot;)V // method@bca0 │ │ -42ace6: 6e20 06bd 1000 |018f: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd06 │ │ -42acec: 0e00 |0192: return-void │ │ +42a9b4: |[42a9b4] org.purple.smoke.Settings$4SingleShot.run:()V │ │ +42a9c4: 1a00 9946 |0000: const-string v0, "Rainbow" // string@4699 │ │ +42a9c8: 1a01 6c46 |0002: const-string v1, "RSA" // string@466c │ │ +42a9cc: 1a02 e817 |0004: const-string v2, "EC" // string@17e8 │ │ +42a9d0: 5493 d85e |0006: iget-object v3, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ +42a9d4: 1a04 a506 |0008: const-string v4, "12, 68" // string@06a5 │ │ +42a9d8: 6e20 b65c 4300 |000a: invoke-virtual {v3, v4}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +42a9de: 0a03 |000d: move-result v3 │ │ +42a9e0: 1224 |000e: const/4 v4, #int 2 // #2 │ │ +42a9e2: 1215 |000f: const/4 v5, #int 1 // #1 │ │ +42a9e4: 1206 |0010: const/4 v6, #int 0 // #0 │ │ +42a9e6: 3803 0400 |0011: if-eqz v3, 0015 // +0004 │ │ +42a9ea: 1213 |0013: const/4 v3, #int 1 // #1 │ │ +42a9ec: 280e |0014: goto 0022 // +000e │ │ +42a9ee: 5493 d85e |0015: iget-object v3, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ +42a9f2: 1a07 af06 |0017: const-string v7, "13, 118" // string@06af │ │ +42a9f6: 6e20 b65c 7300 |0019: invoke-virtual {v3, v7}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +42a9fc: 0a03 |001c: move-result v3 │ │ +42a9fe: 3803 0400 |001d: if-eqz v3, 0021 // +0004 │ │ +42aa02: 1223 |001f: const/4 v3, #int 2 // #2 │ │ +42aa04: 2802 |0020: goto 0022 // +0002 │ │ +42aa06: 1203 |0021: const/4 v3, #int 0 // #0 │ │ +42aa08: 5497 d85e |0022: iget-object v7, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ +42aa0c: 6208 bb53 |0024: sget-object v8, Lorg/purple/smoke/Cryptography;.PKI_ENCRYPTION_KEY_SIZES:[I // field@53bb │ │ +42aa10: 4408 0806 |0026: aget v8, v8, v6 │ │ +42aa14: 7130 8bb9 8703 |0028: invoke-static {v7, v8, v3}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ +42aa1a: 0c03 |002b: move-result-object v3 │ │ +42aa1c: 3803 3301 |002c: if-eqz v3, 015f // +0133 │ │ +42aa20: 5497 da5e |002e: iget-object v7, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ +42aa24: 6e20 b85c 2700 |0030: invoke-virtual {v7, v2}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42aa2a: 0a07 |0033: move-result v7 │ │ +42aa2c: 3807 0b00 |0034: if-eqz v7, 003f // +000b │ │ +42aa30: 6200 bf53 |0036: sget-object v0, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ +42aa34: 4400 0006 |0038: aget v0, v0, v6 │ │ +42aa38: 7130 8bb9 0206 |003a: invoke-static {v2, v0, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ +42aa3e: 0c00 |003d: move-result-object v0 │ │ +42aa40: 282e |003e: goto 006c // +002e │ │ +42aa42: 5492 da5e |003f: iget-object v2, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ +42aa46: 6e20 b85c 1200 |0041: invoke-virtual {v2, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42aa4c: 0a02 |0044: move-result v2 │ │ +42aa4e: 3802 0b00 |0045: if-eqz v2, 0050 // +000b │ │ +42aa52: 6200 bf53 |0047: sget-object v0, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ +42aa56: 4400 0005 |0049: aget v0, v0, v5 │ │ +42aa5a: 7130 8bb9 0106 |004b: invoke-static {v1, v0, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ +42aa60: 0c00 |004e: move-result-object v0 │ │ +42aa62: 281d |004f: goto 006c // +001d │ │ +42aa64: 5491 da5e |0050: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ +42aa68: 6e20 b85c 0100 |0052: invoke-virtual {v1, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42aa6e: 0a01 |0055: move-result v1 │ │ +42aa70: 3801 0b00 |0056: if-eqz v1, 0061 // +000b │ │ +42aa74: 6201 bf53 |0058: sget-object v1, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ +42aa78: 4401 0104 |005a: aget v1, v1, v4 │ │ +42aa7c: 7130 8bb9 1006 |005c: invoke-static {v0, v1, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ +42aa82: 0c00 |005f: move-result-object v0 │ │ +42aa84: 280c |0060: goto 006c // +000c │ │ +42aa86: 5490 da5e |0061: iget-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ +42aa8a: 6201 bf53 |0063: sget-object v1, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ +42aa8e: 1232 |0065: const/4 v2, #int 3 // #3 │ │ +42aa90: 4401 0102 |0066: aget v1, v1, v2 │ │ +42aa94: 7130 8bb9 1006 |0068: invoke-static {v0, v1, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ +42aa9a: 0c00 |006b: move-result-object v0 │ │ +42aa9c: 3800 e000 |006c: if-eqz v0, 014c // +00e0 │ │ +42aaa0: 7100 dbbc 0000 |006e: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42aaa6: 0c01 |0071: move-result-object v1 │ │ +42aaa8: 6e20 aeb9 3100 |0072: invoke-virtual {v1, v3}, Lorg/purple/smoke/Cryptography;.setChatEncryptionPublicKeyPair:(Ljava/security/KeyPair;)V // method@b9ae │ │ +42aaae: 7100 dbbc 0000 |0075: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42aab4: 0c01 |0078: move-result-object v1 │ │ +42aab6: 5492 d85e |0079: iget-object v2, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ +42aaba: 6e20 acb9 2100 |007b: invoke-virtual {v1, v2}, Lorg/purple/smoke/Cryptography;.setChatEncryptionPublicKeyAlgorithm:(Ljava/lang/String;)V // method@b9ac │ │ +42aac0: 7100 dbbc 0000 |007e: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42aac6: 0c01 |0081: move-result-object v1 │ │ +42aac8: 6e20 b0b9 0100 |0082: invoke-virtual {v1, v0}, Lorg/purple/smoke/Cryptography;.setChatSignaturePublicKeyPair:(Ljava/security/KeyPair;)V // method@b9b0 │ │ +42aace: 5491 db5e |0085: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42aad2: 7110 dcbc 0100 |0087: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42aad8: 0c01 |008a: move-result-object v1 │ │ +42aada: 7100 dbbc 0000 |008b: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42aae0: 0c02 |008e: move-result-object v2 │ │ +42aae2: 1a04 cd93 |008f: const-string v4, "pki_chat_encryption_algorithm" // string@93cd │ │ +42aae6: 5495 d85e |0091: iget-object v5, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ +42aaea: 6e40 39ba 2154 |0093: invoke-virtual {v1, v2, v4, v5}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42aaf0: 5491 db5e |0096: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42aaf4: 7110 dcbc 0100 |0098: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42aafa: 0c01 |009b: move-result-object v1 │ │ +42aafc: 7100 dbbc 0000 |009c: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42ab02: 0c02 |009f: move-result-object v2 │ │ +42ab04: 1a04 ce93 |00a0: const-string v4, "pki_chat_encryption_private_key" // string@93ce │ │ +42ab08: 6e10 fb5d 0300 |00a2: invoke-virtual {v3}, Ljava/security/KeyPair;.getPrivate:()Ljava/security/PrivateKey; // method@5dfb │ │ +42ab0e: 0c05 |00a5: move-result-object v5 │ │ +42ab10: 7210 355e 0500 |00a6: invoke-interface {v5}, Ljava/security/PrivateKey;.getEncoded:()[B // method@5e35 │ │ +42ab16: 0c05 |00a9: move-result-object v5 │ │ +42ab18: 7120 c454 6500 |00aa: invoke-static {v5, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42ab1e: 0c05 |00ad: move-result-object v5 │ │ +42ab20: 6e40 39ba 2154 |00ae: invoke-virtual {v1, v2, v4, v5}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42ab26: 5491 db5e |00b1: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42ab2a: 7110 dcbc 0100 |00b3: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42ab30: 0c01 |00b6: move-result-object v1 │ │ +42ab32: 7100 dbbc 0000 |00b7: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42ab38: 0c02 |00ba: move-result-object v2 │ │ +42ab3a: 1a04 cf93 |00bb: const-string v4, "pki_chat_encryption_public_key" // string@93cf │ │ +42ab3e: 6e10 fc5d 0300 |00bd: invoke-virtual {v3}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfc │ │ +42ab44: 0c03 |00c0: move-result-object v3 │ │ +42ab46: 7210 3c5e 0300 |00c1: invoke-interface {v3}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3c │ │ +42ab4c: 0c03 |00c4: move-result-object v3 │ │ +42ab4e: 7120 c454 6300 |00c5: invoke-static {v3, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42ab54: 0c03 |00c8: move-result-object v3 │ │ +42ab56: 6e40 39ba 2134 |00c9: invoke-virtual {v1, v2, v4, v3}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42ab5c: 5491 db5e |00cc: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42ab60: 7110 dcbc 0100 |00ce: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42ab66: 0c01 |00d1: move-result-object v1 │ │ +42ab68: 7100 dbbc 0000 |00d2: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42ab6e: 0c02 |00d5: move-result-object v2 │ │ +42ab70: 1a03 d093 |00d6: const-string v3, "pki_chat_signature_algorithm" // string@93d0 │ │ +42ab74: 5494 da5e |00d8: iget-object v4, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ +42ab78: 6e40 39ba 2143 |00da: invoke-virtual {v1, v2, v3, v4}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42ab7e: 5491 db5e |00dd: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42ab82: 7110 dcbc 0100 |00df: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42ab88: 0c01 |00e2: move-result-object v1 │ │ +42ab8a: 7100 dbbc 0000 |00e3: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42ab90: 0c02 |00e6: move-result-object v2 │ │ +42ab92: 1a03 d193 |00e7: const-string v3, "pki_chat_signature_private_key" // string@93d1 │ │ +42ab96: 6e10 fb5d 0000 |00e9: invoke-virtual {v0}, Ljava/security/KeyPair;.getPrivate:()Ljava/security/PrivateKey; // method@5dfb │ │ +42ab9c: 0c04 |00ec: move-result-object v4 │ │ +42ab9e: 7210 355e 0400 |00ed: invoke-interface {v4}, Ljava/security/PrivateKey;.getEncoded:()[B // method@5e35 │ │ +42aba4: 0c04 |00f0: move-result-object v4 │ │ +42aba6: 7120 c454 6400 |00f1: invoke-static {v4, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42abac: 0c04 |00f4: move-result-object v4 │ │ +42abae: 6e40 39ba 2143 |00f5: invoke-virtual {v1, v2, v3, v4}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42abb4: 5491 db5e |00f8: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42abb8: 7110 dcbc 0100 |00fa: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42abbe: 0c01 |00fd: move-result-object v1 │ │ +42abc0: 7100 dbbc 0000 |00fe: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42abc6: 0c02 |0101: move-result-object v2 │ │ +42abc8: 1a03 d293 |0102: const-string v3, "pki_chat_signature_public_key" // string@93d2 │ │ +42abcc: 6e10 fc5d 0000 |0104: invoke-virtual {v0}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfc │ │ +42abd2: 0c00 |0107: move-result-object v0 │ │ +42abd4: 7210 3c5e 0000 |0108: invoke-interface {v0}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3c │ │ +42abda: 0c00 |010b: move-result-object v0 │ │ +42abdc: 7120 c454 6000 |010c: invoke-static {v0, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42abe2: 0c00 |010f: move-result-object v0 │ │ +42abe4: 6e40 39ba 2103 |0110: invoke-virtual {v1, v2, v3, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42abea: 7100 dbbc 0000 |0113: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42abf0: 0c00 |0116: move-result-object v0 │ │ +42abf2: 5491 db5e |0117: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42abf6: 7110 dcbc 0100 |0119: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42abfc: 0c01 |011c: move-result-object v1 │ │ +42abfe: 7100 dbbc 0000 |011d: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42ac04: 0c02 |0120: move-result-object v2 │ │ +42ac06: 1a03 4359 |0121: const-string v3, "alias" // string@5943 │ │ +42ac0a: 6e30 17ba 2103 |0123: invoke-virtual {v1, v2, v3}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42ac10: 0c01 |0126: move-result-object v1 │ │ +42ac12: 6e20 a1b9 1000 |0127: invoke-virtual {v0, v1}, Lorg/purple/smoke/Cryptography;.prepareSipHashIds:(Ljava/lang/String;)Z // method@b9a1 │ │ +42ac18: 0a00 |012a: move-result v0 │ │ +42ac1a: 7100 dbbc 0000 |012b: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42ac20: 0c01 |012e: move-result-object v1 │ │ +42ac22: 6e10 a2b9 0100 |012f: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.prepareSipHashKeys:()Z // method@b9a2 │ │ +42ac28: 0a01 |0132: move-result v1 │ │ +42ac2a: 3800 0400 |0133: if-eqz v0, 0137 // +0004 │ │ +42ac2e: 3901 5300 |0135: if-nez v1, 0188 // +0053 │ │ +42ac32: 3900 0700 |0137: if-nez v0, 013e // +0007 │ │ +42ac36: 1a00 bc94 |0139: const-string v0, "prepareSipHashIds() failure" // string@94bc │ │ +42ac3a: 5b90 d95e |013b: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ +42ac3e: 2807 |013d: goto 0144 // +0007 │ │ +42ac40: 3901 0600 |013e: if-nez v1, 0144 // +0006 │ │ +42ac44: 1a00 bf94 |0140: const-string v0, "prepareSipHashKeys() failure" // string@94bf │ │ +42ac48: 5b90 d95e |0142: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ +42ac4c: 7100 dbbc 0000 |0144: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42ac52: 0c00 |0147: move-result-object v0 │ │ +42ac54: 6e10 abb9 0000 |0148: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.resetPKI:()V // method@b9ab │ │ +42ac5a: 283d |014b: goto 0188 // +003d │ │ +42ac5c: 1a00 aaa1 |014c: const-string v0, "signature-key generatePrivatePublicKeyPair() failure" // string@a1aa │ │ +42ac60: 5b90 d95e |014e: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ +42ac64: 7100 dbbc 0000 |0150: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42ac6a: 0c00 |0153: move-result-object v0 │ │ +42ac6c: 6e10 abb9 0000 |0154: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.resetPKI:()V // method@b9ab │ │ +42ac72: 2200 d40a |0157: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ +42ac76: 5491 d95e |0159: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ +42ac7a: 7020 325c 1000 |015b: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ +42ac80: 2700 |015e: throw v0 │ │ +42ac82: 1a00 4066 |015f: const-string v0, "encryption-key generatePrivatePublicKeyPair() failure" // string@6640 │ │ +42ac86: 5b90 d95e |0161: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ +42ac8a: 7100 dbbc 0000 |0163: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42ac90: 0c00 |0166: move-result-object v0 │ │ +42ac92: 6e10 abb9 0000 |0167: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.resetPKI:()V // method@b9ab │ │ +42ac98: 2200 d40a |016a: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ +42ac9c: 5491 d95e |016c: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ +42aca0: 7020 325c 1000 |016e: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ +42aca6: 2700 |0171: throw v0 │ │ +42aca8: 0d00 |0172: move-exception v0 │ │ +42acaa: 6e10 375c 0000 |0173: invoke-virtual {v0}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ +42acb0: 0c00 |0176: move-result-object v0 │ │ +42acb2: 6e10 cf5c 0000 |0177: invoke-virtual {v0}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@5ccf │ │ +42acb8: 0c00 |017a: move-result-object v0 │ │ +42acba: 6e10 d35c 0000 |017b: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42acc0: 0c00 |017e: move-result-object v0 │ │ +42acc2: 5b90 d95e |017f: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ +42acc6: 7100 dbbc 0000 |0181: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42accc: 0c00 |0184: move-result-object v0 │ │ +42acce: 6e10 abb9 0000 |0185: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.resetPKI:()V // method@b9ab │ │ +42acd4: 5490 db5e |0188: iget-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42acd8: 2201 fa1a |018a: new-instance v1, Lorg/purple/smoke/Settings$4SingleShot$1; // type@1afa │ │ +42acdc: 7020 a0bc 9100 |018c: invoke-direct {v1, v9}, Lorg/purple/smoke/Settings$4SingleShot$1;.:(Lorg/purple/smoke/Settings$4SingleShot;)V // method@bca0 │ │ +42ace2: 6e20 06bd 1000 |018f: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd06 │ │ +42ace8: 0e00 |0192: return-void │ │ catches : 1 │ │ 0x0006 - 0x0172 │ │ Ljava/lang/Exception; -> 0x0172 │ │ positions : │ │ 0x0006 line=2582 │ │ 0x0015 line=2584 │ │ 0x0022 line=2587 │ │ @@ -738709,18 +738708,18 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -42b030: |[42b030] org.purple.smoke.Settings$5.:(Lorg/purple/smoke/Settings;)V │ │ -42b040: 5b01 df5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$5;.this$0:Lorg/purple/smoke/Settings; // field@5edf │ │ -42b044: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42b04a: 0e00 |0005: return-void │ │ +42b02c: |[42b02c] org.purple.smoke.Settings$5.:(Lorg/purple/smoke/Settings;)V │ │ +42b03c: 5b01 df5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$5;.this$0:Lorg/purple/smoke/Settings; // field@5edf │ │ +42b040: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42b046: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1658 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$5; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings; │ │ │ │ @@ -738730,23 +738729,23 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 15 16-bit code units │ │ -42b04c: |[42b04c] org.purple.smoke.Settings$5.onClick:(Landroid/view/View;)V │ │ -42b05c: 5401 df5e |0000: iget-object v1, v0, Lorg/purple/smoke/Settings$5;.this$0:Lorg/purple/smoke/Settings; // field@5edf │ │ -42b060: 6e10 efbc 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ -42b066: 0a01 |0005: move-result v1 │ │ -42b068: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ -42b06c: 0e00 |0008: return-void │ │ -42b06e: 5401 df5e |0009: iget-object v1, v0, Lorg/purple/smoke/Settings$5;.this$0:Lorg/purple/smoke/Settings; // field@5edf │ │ -42b072: 7110 d1bc 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$1600:(Lorg/purple/smoke/Settings;)V // method@bcd1 │ │ -42b078: 0e00 |000e: return-void │ │ +42b048: |[42b048] org.purple.smoke.Settings$5.onClick:(Landroid/view/View;)V │ │ +42b058: 5401 df5e |0000: iget-object v1, v0, Lorg/purple/smoke/Settings$5;.this$0:Lorg/purple/smoke/Settings; // field@5edf │ │ +42b05c: 6e10 efbc 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ +42b062: 0a01 |0005: move-result v1 │ │ +42b064: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ +42b068: 0e00 |0008: return-void │ │ +42b06a: 5401 df5e |0009: iget-object v1, v0, Lorg/purple/smoke/Settings$5;.this$0:Lorg/purple/smoke/Settings; // field@5edf │ │ +42b06e: 7110 d1bc 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$1600:(Lorg/purple/smoke/Settings;)V // method@bcd1 │ │ +42b074: 0e00 |000e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1661 │ │ 0x0009 line=1664 │ │ locals : │ │ 0x0000 - 0x000f reg=0 this Lorg/purple/smoke/Settings$5; │ │ 0x0000 - 0x000f reg=1 (null) Landroid/view/View; │ │ @@ -738786,18 +738785,18 @@ │ │ type : '(Lorg/purple/smoke/Settings$5SingleShot;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -42ae64: |[42ae64] org.purple.smoke.Settings$5SingleShot$1.:(Lorg/purple/smoke/Settings$5SingleShot;)V │ │ -42ae74: 5b01 e05e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ -42ae78: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42ae7e: 0e00 |0005: return-void │ │ +42ae60: |[42ae60] org.purple.smoke.Settings$5SingleShot$1.:(Lorg/purple/smoke/Settings$5SingleShot;)V │ │ +42ae70: 5b01 e05e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ +42ae74: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42ae7a: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2796 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$5SingleShot$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings$5SingleShot; │ │ │ │ @@ -738807,57 +738806,57 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 91 16-bit code units │ │ -42ae80: |[42ae80] org.purple.smoke.Settings$5SingleShot$1.run:()V │ │ -42ae90: 5430 e05e |0000: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ -42ae94: 5400 e35e |0002: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ee3 │ │ -42ae98: 1241 |0004: const/4 v1, #int 4 // #4 │ │ -42ae9a: 6e20 5f5a 1000 |0005: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42aea0: 5430 e05e |0008: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ -42aea4: 5400 e25e |000a: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ -42aea8: 6e10 edbc 0000 |000c: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ -42aeae: 0c00 |000f: move-result-object v0 │ │ -42aeb0: 1301 1000 |0010: const/16 v1, #int 16 // #10 │ │ -42aeb4: 6e20 8557 1000 |0012: invoke-virtual {v0, v1}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ -42aeba: 5430 e05e |0015: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ -42aebe: 5400 e25e |0017: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ -42aec2: 1401 9200 087f |0019: const v1, #float 1.80778e+38 // #7f080092 │ │ -42aec8: 6e20 e5bc 1000 |001c: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42aece: 0c00 |001f: move-result-object v0 │ │ -42aed0: 1211 |0020: const/4 v1, #int 1 // #1 │ │ -42aed2: 7120 e6bb 1000 |0021: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ -42aed8: 5430 e05e |0024: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ -42aedc: 5400 e25e |0026: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ -42aee0: 7110 ddbc 0000 |0028: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$500:(Lorg/purple/smoke/Settings;)V // method@bcdd │ │ -42aee6: 5430 e05e |002b: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ -42aeea: 7110 aabc 0000 |002d: invoke-static {v0}, Lorg/purple/smoke/Settings$5SingleShot;.access$2600:(Lorg/purple/smoke/Settings$5SingleShot;)Ljava/lang/String; // method@bcaa │ │ -42aef0: 0c00 |0030: move-result-object v0 │ │ -42aef2: 6e10 c35c 0000 |0031: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42aef8: 0a00 |0034: move-result v0 │ │ -42aefa: 3900 2500 |0035: if-nez v0, 005a // +0025 │ │ -42aefe: 5430 e05e |0037: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ -42af02: 5400 e25e |0039: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ -42af06: 2201 f10a |003b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -42af0a: 7010 ee5c 0100 |003d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42af10: 1a02 6a0d |0040: const-string v2, "An error (" // string@0d6a │ │ -42af14: 6e20 f95c 2100 |0042: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42af1a: 5432 e05e |0045: iget-object v2, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ -42af1e: 7110 aabc 0200 |0047: invoke-static {v2}, Lorg/purple/smoke/Settings$5SingleShot;.access$2600:(Lorg/purple/smoke/Settings$5SingleShot;)Ljava/lang/String; // method@bcaa │ │ -42af24: 0c02 |004a: move-result-object v2 │ │ -42af26: 6e20 f95c 2100 |004b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42af2c: 1a02 0104 |004e: const-string v2, ") occurred while preparing a request of public key material." // string@0401 │ │ -42af30: 6e20 f95c 2100 |0050: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42af36: 6e10 035d 0100 |0053: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42af3c: 0c01 |0056: move-result-object v1 │ │ -42af3e: 7120 f5bb 1000 |0057: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ -42af44: 0e00 |005a: return-void │ │ +42ae7c: |[42ae7c] org.purple.smoke.Settings$5SingleShot$1.run:()V │ │ +42ae8c: 5430 e05e |0000: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ +42ae90: 5400 e35e |0002: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ee3 │ │ +42ae94: 1241 |0004: const/4 v1, #int 4 // #4 │ │ +42ae96: 6e20 5f5a 1000 |0005: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42ae9c: 5430 e05e |0008: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ +42aea0: 5400 e25e |000a: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ +42aea4: 6e10 edbc 0000 |000c: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ +42aeaa: 0c00 |000f: move-result-object v0 │ │ +42aeac: 1301 1000 |0010: const/16 v1, #int 16 // #10 │ │ +42aeb0: 6e20 8557 1000 |0012: invoke-virtual {v0, v1}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ +42aeb6: 5430 e05e |0015: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ +42aeba: 5400 e25e |0017: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ +42aebe: 1401 9200 087f |0019: const v1, #float 1.80778e+38 // #7f080092 │ │ +42aec4: 6e20 e5bc 1000 |001c: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42aeca: 0c00 |001f: move-result-object v0 │ │ +42aecc: 1211 |0020: const/4 v1, #int 1 // #1 │ │ +42aece: 7120 e6bb 1000 |0021: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ +42aed4: 5430 e05e |0024: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ +42aed8: 5400 e25e |0026: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ +42aedc: 7110 ddbc 0000 |0028: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$500:(Lorg/purple/smoke/Settings;)V // method@bcdd │ │ +42aee2: 5430 e05e |002b: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ +42aee6: 7110 aabc 0000 |002d: invoke-static {v0}, Lorg/purple/smoke/Settings$5SingleShot;.access$2600:(Lorg/purple/smoke/Settings$5SingleShot;)Ljava/lang/String; // method@bcaa │ │ +42aeec: 0c00 |0030: move-result-object v0 │ │ +42aeee: 6e10 c35c 0000 |0031: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42aef4: 0a00 |0034: move-result v0 │ │ +42aef6: 3900 2500 |0035: if-nez v0, 005a // +0025 │ │ +42aefa: 5430 e05e |0037: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ +42aefe: 5400 e25e |0039: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ +42af02: 2201 f10a |003b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +42af06: 7010 ee5c 0100 |003d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42af0c: 1a02 6a0d |0040: const-string v2, "An error (" // string@0d6a │ │ +42af10: 6e20 f95c 2100 |0042: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42af16: 5432 e05e |0045: iget-object v2, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ +42af1a: 7110 aabc 0200 |0047: invoke-static {v2}, Lorg/purple/smoke/Settings$5SingleShot;.access$2600:(Lorg/purple/smoke/Settings$5SingleShot;)Ljava/lang/String; // method@bcaa │ │ +42af20: 0c02 |004a: move-result-object v2 │ │ +42af22: 6e20 f95c 2100 |004b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42af28: 1a02 0104 |004e: const-string v2, ") occurred while preparing a request of public key material." // string@0401 │ │ +42af2c: 6e20 f95c 2100 |0050: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42af32: 6e10 035d 0100 |0053: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42af38: 0c01 |0056: move-result-object v1 │ │ +42af3a: 7120 f5bb 1000 |0057: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ +42af40: 0e00 |005a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2800 │ │ 0x0008 line=2801 │ │ 0x0012 line=2802 │ │ 0x0015 line=2804 │ │ 0x001c line=2805 │ │ @@ -738918,22 +738917,22 @@ │ │ type : '(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 4 │ │ ins : 4 │ │ outs : 1 │ │ insns size : 14 16-bit code units │ │ -42af60: |[42af60] org.purple.smoke.Settings$5SingleShot.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V │ │ -42af70: 5b01 e25e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ -42af74: 5b02 e45e |0002: iput-object v2, v0, Lorg/purple/smoke/Settings$5SingleShot;.val$oid:Ljava/lang/String; // field@5ee4 │ │ -42af78: 5b03 e35e |0004: iput-object v3, v0, Lorg/purple/smoke/Settings$5SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ee3 │ │ -42af7c: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42af82: 1a01 0000 |0009: const-string v1, "" // string@0000 │ │ -42af86: 5b01 e15e |000b: iput-object v1, v0, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ -42af8a: 0e00 |000d: return-void │ │ +42af5c: |[42af5c] org.purple.smoke.Settings$5SingleShot.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V │ │ +42af6c: 5b01 e25e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ +42af70: 5b02 e45e |0002: iput-object v2, v0, Lorg/purple/smoke/Settings$5SingleShot;.val$oid:Ljava/lang/String; // field@5ee4 │ │ +42af74: 5b03 e35e |0004: iput-object v3, v0, Lorg/purple/smoke/Settings$5SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ee3 │ │ +42af78: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42af7e: 1a01 0000 |0009: const-string v1, "" // string@0000 │ │ +42af82: 5b01 e15e |000b: iput-object v1, v0, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ +42af86: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2768 │ │ 0x000b line=2765 │ │ locals : │ │ 0x0000 - 0x000e reg=0 this Lorg/purple/smoke/Settings$5SingleShot; │ │ 0x0000 - 0x000e reg=1 (null) Lorg/purple/smoke/Settings; │ │ @@ -738945,17 +738944,17 @@ │ │ type : '(Lorg/purple/smoke/Settings$5SingleShot;)Ljava/lang/String;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -42af48: |[42af48] org.purple.smoke.Settings$5SingleShot.access$2600:(Lorg/purple/smoke/Settings$5SingleShot;)Ljava/lang/String; │ │ -42af58: 5400 e15e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ -42af5c: 1100 |0002: return-object v0 │ │ +42af44: |[42af44] org.purple.smoke.Settings$5SingleShot.access$2600:(Lorg/purple/smoke/Settings$5SingleShot;)Ljava/lang/String; │ │ +42af54: 5400 e15e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ +42af58: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2763 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings$5SingleShot; │ │ │ │ Virtual methods - │ │ @@ -738964,53 +738963,53 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 74 16-bit code units │ │ -42af8c: |[42af8c] org.purple.smoke.Settings$5SingleShot.run:()V │ │ -42af9c: 5440 e25e |0000: iget-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ -42afa0: 7110 dcbc 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42afa6: 0c00 |0005: move-result-object v0 │ │ -42afa8: 7100 dbbc 0000 |0006: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42afae: 0c01 |0009: move-result-object v1 │ │ -42afb0: 5442 e45e |000a: iget-object v2, v4, Lorg/purple/smoke/Settings$5SingleShot;.val$oid:Ljava/lang/String; // field@5ee4 │ │ -42afb4: 6e30 19ba 1002 |000c: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSipHashIdString:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba19 │ │ -42afba: 0c00 |000f: move-result-object v0 │ │ -42afbc: 6e10 c35c 0000 |0010: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42afc2: 0a01 |0013: move-result v1 │ │ -42afc4: 3801 0700 |0014: if-eqz v1, 001b // +0007 │ │ -42afc8: 1a00 6096 |0016: const-string v0, "readSipHashIdString() failure" // string@9660 │ │ -42afcc: 5b40 e15e |0018: iput-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ -42afd0: 2825 |001a: goto 003f // +0025 │ │ -42afd2: 7100 dbbc 0000 |001b: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42afd8: 0c01 |001e: move-result-object v1 │ │ -42afda: 7120 bfbb 0100 |001f: invoke-static {v1, v0}, Lorg/purple/smoke/Messages;.pkpRequestMessage:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)[B // method@bbbf │ │ -42afe0: 0c00 |0022: move-result-object v0 │ │ -42afe2: 3900 0700 |0023: if-nez v0, 002a // +0007 │ │ -42afe6: 1a00 d993 |0025: const-string v0, "pkpRequestMessage() failure" // string@93d9 │ │ -42afea: 5b40 e15e |0027: iput-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ -42afee: 2816 |0029: goto 003f // +0016 │ │ -42aff0: 7100 0bbb 0000 |002a: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -42aff6: 0c01 |002d: move-result-object v1 │ │ -42aff8: 7110 b1bb 0000 |002e: invoke-static {v0}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb1 │ │ -42affe: 0c00 |0031: move-result-object v0 │ │ -42b000: 1202 |0032: const/4 v2, #int 0 // #0 │ │ -42b002: 1303 0900 |0033: const/16 v3, #int 9 // #9 │ │ -42b006: 6e40 06bb 0132 |0035: invoke-virtual {v1, v0, v2, v3}, Lorg/purple/smoke/Kernel;.enqueueMessage:(Ljava/lang/String;[BI)Z // method@bb06 │ │ -42b00c: 0a00 |0038: move-result v0 │ │ -42b00e: 3900 0600 |0039: if-nez v0, 003f // +0006 │ │ -42b012: 1a00 c066 |003b: const-string v0, "enqueueMessage() failure" // string@66c0 │ │ -42b016: 5b40 e15e |003d: iput-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ -42b01a: 5440 e25e |003f: iget-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ -42b01e: 2201 fd1a |0041: new-instance v1, Lorg/purple/smoke/Settings$5SingleShot$1; // type@1afd │ │ -42b022: 7020 a7bc 4100 |0043: invoke-direct {v1, v4}, Lorg/purple/smoke/Settings$5SingleShot$1;.:(Lorg/purple/smoke/Settings$5SingleShot;)V // method@bca7 │ │ -42b028: 6e20 06bd 1000 |0046: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd06 │ │ -42b02e: 0e00 |0049: return-void │ │ +42af88: |[42af88] org.purple.smoke.Settings$5SingleShot.run:()V │ │ +42af98: 5440 e25e |0000: iget-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ +42af9c: 7110 dcbc 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42afa2: 0c00 |0005: move-result-object v0 │ │ +42afa4: 7100 dbbc 0000 |0006: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42afaa: 0c01 |0009: move-result-object v1 │ │ +42afac: 5442 e45e |000a: iget-object v2, v4, Lorg/purple/smoke/Settings$5SingleShot;.val$oid:Ljava/lang/String; // field@5ee4 │ │ +42afb0: 6e30 19ba 1002 |000c: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSipHashIdString:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba19 │ │ +42afb6: 0c00 |000f: move-result-object v0 │ │ +42afb8: 6e10 c35c 0000 |0010: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42afbe: 0a01 |0013: move-result v1 │ │ +42afc0: 3801 0700 |0014: if-eqz v1, 001b // +0007 │ │ +42afc4: 1a00 6096 |0016: const-string v0, "readSipHashIdString() failure" // string@9660 │ │ +42afc8: 5b40 e15e |0018: iput-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ +42afcc: 2825 |001a: goto 003f // +0025 │ │ +42afce: 7100 dbbc 0000 |001b: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42afd4: 0c01 |001e: move-result-object v1 │ │ +42afd6: 7120 bfbb 0100 |001f: invoke-static {v1, v0}, Lorg/purple/smoke/Messages;.pkpRequestMessage:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)[B // method@bbbf │ │ +42afdc: 0c00 |0022: move-result-object v0 │ │ +42afde: 3900 0700 |0023: if-nez v0, 002a // +0007 │ │ +42afe2: 1a00 d993 |0025: const-string v0, "pkpRequestMessage() failure" // string@93d9 │ │ +42afe6: 5b40 e15e |0027: iput-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ +42afea: 2816 |0029: goto 003f // +0016 │ │ +42afec: 7100 0bbb 0000 |002a: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +42aff2: 0c01 |002d: move-result-object v1 │ │ +42aff4: 7110 b1bb 0000 |002e: invoke-static {v0}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb1 │ │ +42affa: 0c00 |0031: move-result-object v0 │ │ +42affc: 1202 |0032: const/4 v2, #int 0 // #0 │ │ +42affe: 1303 0900 |0033: const/16 v3, #int 9 // #9 │ │ +42b002: 6e40 06bb 0132 |0035: invoke-virtual {v1, v0, v2, v3}, Lorg/purple/smoke/Kernel;.enqueueMessage:(Ljava/lang/String;[BI)Z // method@bb06 │ │ +42b008: 0a00 |0038: move-result v0 │ │ +42b00a: 3900 0600 |0039: if-nez v0, 003f // +0006 │ │ +42b00e: 1a00 c066 |003b: const-string v0, "enqueueMessage() failure" // string@66c0 │ │ +42b012: 5b40 e15e |003d: iput-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ +42b016: 5440 e25e |003f: iget-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ +42b01a: 2201 fd1a |0041: new-instance v1, Lorg/purple/smoke/Settings$5SingleShot$1; // type@1afd │ │ +42b01e: 7020 a7bc 4100 |0043: invoke-direct {v1, v4}, Lorg/purple/smoke/Settings$5SingleShot$1;.:(Lorg/purple/smoke/Settings$5SingleShot;)V // method@bca7 │ │ +42b024: 6e20 06bd 1000 |0046: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd06 │ │ +42b02a: 0e00 |0049: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2774 │ │ 0x0006 line=2775 │ │ 0x0010 line=2777 │ │ 0x0018 line=2778 │ │ 0x001b line=2782 │ │ @@ -739058,18 +739057,18 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -42b250: |[42b250] org.purple.smoke.Settings$6.:(Lorg/purple/smoke/Settings;)V │ │ -42b260: 5b01 e55e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$6;.this$0:Lorg/purple/smoke/Settings; // field@5ee5 │ │ -42b264: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42b26a: 0e00 |0005: return-void │ │ +42b24c: |[42b24c] org.purple.smoke.Settings$6.:(Lorg/purple/smoke/Settings;)V │ │ +42b25c: 5b01 e55e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$6;.this$0:Lorg/purple/smoke/Settings; // field@5ee5 │ │ +42b260: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42b266: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1670 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$6; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings; │ │ │ │ @@ -739079,23 +739078,23 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 15 16-bit code units │ │ -42b26c: |[42b26c] org.purple.smoke.Settings$6.onClick:(Landroid/view/View;)V │ │ -42b27c: 5401 e55e |0000: iget-object v1, v0, Lorg/purple/smoke/Settings$6;.this$0:Lorg/purple/smoke/Settings; // field@5ee5 │ │ -42b280: 6e10 efbc 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ -42b286: 0a01 |0005: move-result v1 │ │ -42b288: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ -42b28c: 0e00 |0008: return-void │ │ -42b28e: 5401 e55e |0009: iget-object v1, v0, Lorg/purple/smoke/Settings$6;.this$0:Lorg/purple/smoke/Settings; // field@5ee5 │ │ -42b292: 7110 d2bc 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$1700:(Lorg/purple/smoke/Settings;)V // method@bcd2 │ │ -42b298: 0e00 |000e: return-void │ │ +42b268: |[42b268] org.purple.smoke.Settings$6.onClick:(Landroid/view/View;)V │ │ +42b278: 5401 e55e |0000: iget-object v1, v0, Lorg/purple/smoke/Settings$6;.this$0:Lorg/purple/smoke/Settings; // field@5ee5 │ │ +42b27c: 6e10 efbc 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ +42b282: 0a01 |0005: move-result v1 │ │ +42b284: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ +42b288: 0e00 |0008: return-void │ │ +42b28a: 5401 e55e |0009: iget-object v1, v0, Lorg/purple/smoke/Settings$6;.this$0:Lorg/purple/smoke/Settings; // field@5ee5 │ │ +42b28e: 7110 d2bc 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$1700:(Lorg/purple/smoke/Settings;)V // method@bcd2 │ │ +42b294: 0e00 |000e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1673 │ │ 0x0009 line=1676 │ │ locals : │ │ 0x0000 - 0x000f reg=0 this Lorg/purple/smoke/Settings$6; │ │ 0x0000 - 0x000f reg=1 (null) Landroid/view/View; │ │ @@ -739135,18 +739134,18 @@ │ │ type : '(Lorg/purple/smoke/Settings$6SingleShot;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -42b07c: |[42b07c] org.purple.smoke.Settings$6SingleShot$1.:(Lorg/purple/smoke/Settings$6SingleShot;)V │ │ -42b08c: 5b01 e65e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ -42b090: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42b096: 0e00 |0005: return-void │ │ +42b078: |[42b078] org.purple.smoke.Settings$6SingleShot$1.:(Lorg/purple/smoke/Settings$6SingleShot;)V │ │ +42b088: 5b01 e65e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ +42b08c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42b092: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2875 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$6SingleShot$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings$6SingleShot; │ │ │ │ @@ -739156,57 +739155,57 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 91 16-bit code units │ │ -42b098: |[42b098] org.purple.smoke.Settings$6SingleShot$1.run:()V │ │ -42b0a8: 5430 e65e |0000: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ -42b0ac: 5400 e95e |0002: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ee9 │ │ -42b0b0: 1241 |0004: const/4 v1, #int 4 // #4 │ │ -42b0b2: 6e20 5f5a 1000 |0005: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42b0b8: 5430 e65e |0008: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ -42b0bc: 5400 e85e |000a: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ -42b0c0: 6e10 edbc 0000 |000c: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ -42b0c6: 0c00 |000f: move-result-object v0 │ │ -42b0c8: 1301 1000 |0010: const/16 v1, #int 16 // #10 │ │ -42b0cc: 6e20 8557 1000 |0012: invoke-virtual {v0, v1}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ -42b0d2: 5430 e65e |0015: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ -42b0d6: 5400 e85e |0017: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ -42b0da: 1401 9200 087f |0019: const v1, #float 1.80778e+38 // #7f080092 │ │ -42b0e0: 6e20 e5bc 1000 |001c: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42b0e6: 0c00 |001f: move-result-object v0 │ │ -42b0e8: 1211 |0020: const/4 v1, #int 1 // #1 │ │ -42b0ea: 7120 e6bb 1000 |0021: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ -42b0f0: 5430 e65e |0024: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ -42b0f4: 5400 e85e |0026: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ -42b0f8: 7110 ddbc 0000 |0028: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$500:(Lorg/purple/smoke/Settings;)V // method@bcdd │ │ -42b0fe: 5430 e65e |002b: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ -42b102: 7110 b1bc 0000 |002d: invoke-static {v0}, Lorg/purple/smoke/Settings$6SingleShot;.access$2700:(Lorg/purple/smoke/Settings$6SingleShot;)Ljava/lang/String; // method@bcb1 │ │ -42b108: 0c00 |0030: move-result-object v0 │ │ -42b10a: 6e10 c35c 0000 |0031: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42b110: 0a00 |0034: move-result v0 │ │ -42b112: 3900 2500 |0035: if-nez v0, 005a // +0025 │ │ -42b116: 5430 e65e |0037: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ -42b11a: 5400 e85e |0039: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ -42b11e: 2201 f10a |003b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -42b122: 7010 ee5c 0100 |003d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42b128: 1a02 6a0d |0040: const-string v2, "An error (" // string@0d6a │ │ -42b12c: 6e20 f95c 2100 |0042: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b132: 5432 e65e |0045: iget-object v2, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ -42b136: 7110 b1bc 0200 |0047: invoke-static {v2}, Lorg/purple/smoke/Settings$6SingleShot;.access$2700:(Lorg/purple/smoke/Settings$6SingleShot;)Ljava/lang/String; // method@bcb1 │ │ -42b13c: 0c02 |004a: move-result-object v2 │ │ -42b13e: 6e20 f95c 2100 |004b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b144: 1a02 0204 |004e: const-string v2, ") occurred while preparing to transfer public key material." // string@0402 │ │ -42b148: 6e20 f95c 2100 |0050: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b14e: 6e10 035d 0100 |0053: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42b154: 0c01 |0056: move-result-object v1 │ │ -42b156: 7120 f5bb 1000 |0057: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ -42b15c: 0e00 |005a: return-void │ │ +42b094: |[42b094] org.purple.smoke.Settings$6SingleShot$1.run:()V │ │ +42b0a4: 5430 e65e |0000: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ +42b0a8: 5400 e95e |0002: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ee9 │ │ +42b0ac: 1241 |0004: const/4 v1, #int 4 // #4 │ │ +42b0ae: 6e20 5f5a 1000 |0005: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42b0b4: 5430 e65e |0008: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ +42b0b8: 5400 e85e |000a: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ +42b0bc: 6e10 edbc 0000 |000c: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ +42b0c2: 0c00 |000f: move-result-object v0 │ │ +42b0c4: 1301 1000 |0010: const/16 v1, #int 16 // #10 │ │ +42b0c8: 6e20 8557 1000 |0012: invoke-virtual {v0, v1}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ +42b0ce: 5430 e65e |0015: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ +42b0d2: 5400 e85e |0017: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ +42b0d6: 1401 9200 087f |0019: const v1, #float 1.80778e+38 // #7f080092 │ │ +42b0dc: 6e20 e5bc 1000 |001c: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42b0e2: 0c00 |001f: move-result-object v0 │ │ +42b0e4: 1211 |0020: const/4 v1, #int 1 // #1 │ │ +42b0e6: 7120 e6bb 1000 |0021: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ +42b0ec: 5430 e65e |0024: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ +42b0f0: 5400 e85e |0026: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ +42b0f4: 7110 ddbc 0000 |0028: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$500:(Lorg/purple/smoke/Settings;)V // method@bcdd │ │ +42b0fa: 5430 e65e |002b: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ +42b0fe: 7110 b1bc 0000 |002d: invoke-static {v0}, Lorg/purple/smoke/Settings$6SingleShot;.access$2700:(Lorg/purple/smoke/Settings$6SingleShot;)Ljava/lang/String; // method@bcb1 │ │ +42b104: 0c00 |0030: move-result-object v0 │ │ +42b106: 6e10 c35c 0000 |0031: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42b10c: 0a00 |0034: move-result v0 │ │ +42b10e: 3900 2500 |0035: if-nez v0, 005a // +0025 │ │ +42b112: 5430 e65e |0037: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ +42b116: 5400 e85e |0039: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ +42b11a: 2201 f10a |003b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +42b11e: 7010 ee5c 0100 |003d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42b124: 1a02 6a0d |0040: const-string v2, "An error (" // string@0d6a │ │ +42b128: 6e20 f95c 2100 |0042: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b12e: 5432 e65e |0045: iget-object v2, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ +42b132: 7110 b1bc 0200 |0047: invoke-static {v2}, Lorg/purple/smoke/Settings$6SingleShot;.access$2700:(Lorg/purple/smoke/Settings$6SingleShot;)Ljava/lang/String; // method@bcb1 │ │ +42b138: 0c02 |004a: move-result-object v2 │ │ +42b13a: 6e20 f95c 2100 |004b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b140: 1a02 0204 |004e: const-string v2, ") occurred while preparing to transfer public key material." // string@0402 │ │ +42b144: 6e20 f95c 2100 |0050: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b14a: 6e10 035d 0100 |0053: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42b150: 0c01 |0056: move-result-object v1 │ │ +42b152: 7120 f5bb 1000 |0057: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ +42b158: 0e00 |005a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2879 │ │ 0x0008 line=2880 │ │ 0x0012 line=2881 │ │ 0x0015 line=2883 │ │ 0x001c line=2884 │ │ @@ -739267,22 +739266,22 @@ │ │ type : '(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 4 │ │ ins : 4 │ │ outs : 1 │ │ insns size : 14 16-bit code units │ │ -42b178: |[42b178] org.purple.smoke.Settings$6SingleShot.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V │ │ -42b188: 5b01 e85e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ -42b18c: 5b02 ea5e |0002: iput-object v2, v0, Lorg/purple/smoke/Settings$6SingleShot;.val$oid:Ljava/lang/String; // field@5eea │ │ -42b190: 5b03 e95e |0004: iput-object v3, v0, Lorg/purple/smoke/Settings$6SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ee9 │ │ -42b194: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42b19a: 1a01 0000 |0009: const-string v1, "" // string@0000 │ │ -42b19e: 5b01 e75e |000b: iput-object v1, v0, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ -42b1a2: 0e00 |000d: return-void │ │ +42b174: |[42b174] org.purple.smoke.Settings$6SingleShot.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V │ │ +42b184: 5b01 e85e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ +42b188: 5b02 ea5e |0002: iput-object v2, v0, Lorg/purple/smoke/Settings$6SingleShot;.val$oid:Ljava/lang/String; // field@5eea │ │ +42b18c: 5b03 e95e |0004: iput-object v3, v0, Lorg/purple/smoke/Settings$6SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ee9 │ │ +42b190: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42b196: 1a01 0000 |0009: const-string v1, "" // string@0000 │ │ +42b19a: 5b01 e75e |000b: iput-object v1, v0, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ +42b19e: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2842 │ │ 0x000b line=2839 │ │ locals : │ │ 0x0000 - 0x000e reg=0 this Lorg/purple/smoke/Settings$6SingleShot; │ │ 0x0000 - 0x000e reg=1 (null) Lorg/purple/smoke/Settings; │ │ @@ -739294,17 +739293,17 @@ │ │ type : '(Lorg/purple/smoke/Settings$6SingleShot;)Ljava/lang/String;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -42b160: |[42b160] org.purple.smoke.Settings$6SingleShot.access$2700:(Lorg/purple/smoke/Settings$6SingleShot;)Ljava/lang/String; │ │ -42b170: 5400 e75e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ -42b174: 1100 |0002: return-object v0 │ │ +42b15c: |[42b15c] org.purple.smoke.Settings$6SingleShot.access$2700:(Lorg/purple/smoke/Settings$6SingleShot;)Ljava/lang/String; │ │ +42b16c: 5400 e75e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ +42b170: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2837 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings$6SingleShot; │ │ │ │ Virtual methods - │ │ @@ -739313,55 +739312,55 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 8 │ │ ins : 1 │ │ outs : 6 │ │ insns size : 78 16-bit code units │ │ -42b1a4: |[42b1a4] org.purple.smoke.Settings$6SingleShot.run:()V │ │ -42b1b4: 5470 e85e |0000: iget-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ -42b1b8: 7110 dcbc 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42b1be: 0c00 |0005: move-result-object v0 │ │ -42b1c0: 7100 dbbc 0000 |0006: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42b1c6: 0c01 |0009: move-result-object v1 │ │ -42b1c8: 5472 ea5e |000a: iget-object v2, v7, Lorg/purple/smoke/Settings$6SingleShot;.val$oid:Ljava/lang/String; // field@5eea │ │ -42b1cc: 6e30 18ba 1002 |000c: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSipHashId:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Lorg/purple/smoke/SipHashIdElement; // method@ba18 │ │ -42b1d2: 0c00 |000f: move-result-object v0 │ │ -42b1d4: 3900 0700 |0010: if-nez v0, 0017 // +0007 │ │ -42b1d8: 1a00 5e96 |0012: const-string v0, "readSipHashId() failure" // string@965e │ │ -42b1dc: 5b70 e75e |0014: iput-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ -42b1e0: 282d |0016: goto 0043 // +002d │ │ -42b1e2: 5401 1b5f |0017: iget-object v1, v0, Lorg/purple/smoke/SipHashIdElement;.m_encryptionAlgorithm:Ljava/lang/String; // field@5f1b │ │ -42b1e6: 5402 235f |0019: iget-object v2, v0, Lorg/purple/smoke/SipHashIdElement;.m_sipHashId:Ljava/lang/String; // field@5f23 │ │ -42b1ea: 5403 1c5f |001b: iget-object v3, v0, Lorg/purple/smoke/SipHashIdElement;.m_encryptionPublicKey:[B // field@5f1c │ │ -42b1ee: 5404 225f |001d: iget-object v4, v0, Lorg/purple/smoke/SipHashIdElement;.m_signaturePublicKey:[B // field@5f22 │ │ -42b1f2: 5405 245f |001f: iget-object v5, v0, Lorg/purple/smoke/SipHashIdElement;.m_stream:[B // field@5f24 │ │ -42b1f6: 6206 0555 |0021: sget-object v6, Lorg/purple/smoke/Messages;.CHAT_KEY_TYPE:[B // field@5505 │ │ -42b1fa: 7706 b7bb 0100 |0023: invoke-static/range {v1, v2, v3, v4, v5, v6}, Lorg/purple/smoke/Messages;.epksMessage:(Ljava/lang/String;Ljava/lang/String;[B[B[B[B)[B // method@bbb7 │ │ -42b200: 0c00 |0026: move-result-object v0 │ │ -42b202: 3900 0700 |0027: if-nez v0, 002e // +0007 │ │ -42b206: 1a00 1467 |0029: const-string v0, "epksMessage() failure" // string@6714 │ │ -42b20a: 5b70 e75e |002b: iput-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ -42b20e: 2816 |002d: goto 0043 // +0016 │ │ -42b210: 7100 0bbb 0000 |002e: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -42b216: 0c01 |0031: move-result-object v1 │ │ -42b218: 7110 b1bb 0000 |0032: invoke-static {v0}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb1 │ │ -42b21e: 0c00 |0035: move-result-object v0 │ │ -42b220: 1202 |0036: const/4 v2, #int 0 // #0 │ │ -42b222: 1303 0900 |0037: const/16 v3, #int 9 // #9 │ │ -42b226: 6e40 06bb 0132 |0039: invoke-virtual {v1, v0, v2, v3}, Lorg/purple/smoke/Kernel;.enqueueMessage:(Ljava/lang/String;[BI)Z // method@bb06 │ │ -42b22c: 0a00 |003c: move-result v0 │ │ -42b22e: 3900 0600 |003d: if-nez v0, 0043 // +0006 │ │ -42b232: 1a00 c066 |003f: const-string v0, "enqueueMessage() failure" // string@66c0 │ │ -42b236: 5b70 e75e |0041: iput-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ -42b23a: 5470 e85e |0043: iget-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ -42b23e: 2201 001b |0045: new-instance v1, Lorg/purple/smoke/Settings$6SingleShot$1; // type@1b00 │ │ -42b242: 7020 aebc 7100 |0047: invoke-direct {v1, v7}, Lorg/purple/smoke/Settings$6SingleShot$1;.:(Lorg/purple/smoke/Settings$6SingleShot;)V // method@bcae │ │ -42b248: 6e20 06bd 1000 |004a: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd06 │ │ -42b24e: 0e00 |004d: return-void │ │ +42b1a0: |[42b1a0] org.purple.smoke.Settings$6SingleShot.run:()V │ │ +42b1b0: 5470 e85e |0000: iget-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ +42b1b4: 7110 dcbc 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42b1ba: 0c00 |0005: move-result-object v0 │ │ +42b1bc: 7100 dbbc 0000 |0006: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42b1c2: 0c01 |0009: move-result-object v1 │ │ +42b1c4: 5472 ea5e |000a: iget-object v2, v7, Lorg/purple/smoke/Settings$6SingleShot;.val$oid:Ljava/lang/String; // field@5eea │ │ +42b1c8: 6e30 18ba 1002 |000c: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSipHashId:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Lorg/purple/smoke/SipHashIdElement; // method@ba18 │ │ +42b1ce: 0c00 |000f: move-result-object v0 │ │ +42b1d0: 3900 0700 |0010: if-nez v0, 0017 // +0007 │ │ +42b1d4: 1a00 5e96 |0012: const-string v0, "readSipHashId() failure" // string@965e │ │ +42b1d8: 5b70 e75e |0014: iput-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ +42b1dc: 282d |0016: goto 0043 // +002d │ │ +42b1de: 5401 1b5f |0017: iget-object v1, v0, Lorg/purple/smoke/SipHashIdElement;.m_encryptionAlgorithm:Ljava/lang/String; // field@5f1b │ │ +42b1e2: 5402 235f |0019: iget-object v2, v0, Lorg/purple/smoke/SipHashIdElement;.m_sipHashId:Ljava/lang/String; // field@5f23 │ │ +42b1e6: 5403 1c5f |001b: iget-object v3, v0, Lorg/purple/smoke/SipHashIdElement;.m_encryptionPublicKey:[B // field@5f1c │ │ +42b1ea: 5404 225f |001d: iget-object v4, v0, Lorg/purple/smoke/SipHashIdElement;.m_signaturePublicKey:[B // field@5f22 │ │ +42b1ee: 5405 245f |001f: iget-object v5, v0, Lorg/purple/smoke/SipHashIdElement;.m_stream:[B // field@5f24 │ │ +42b1f2: 6206 0555 |0021: sget-object v6, Lorg/purple/smoke/Messages;.CHAT_KEY_TYPE:[B // field@5505 │ │ +42b1f6: 7706 b7bb 0100 |0023: invoke-static/range {v1, v2, v3, v4, v5, v6}, Lorg/purple/smoke/Messages;.epksMessage:(Ljava/lang/String;Ljava/lang/String;[B[B[B[B)[B // method@bbb7 │ │ +42b1fc: 0c00 |0026: move-result-object v0 │ │ +42b1fe: 3900 0700 |0027: if-nez v0, 002e // +0007 │ │ +42b202: 1a00 1467 |0029: const-string v0, "epksMessage() failure" // string@6714 │ │ +42b206: 5b70 e75e |002b: iput-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ +42b20a: 2816 |002d: goto 0043 // +0016 │ │ +42b20c: 7100 0bbb 0000 |002e: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +42b212: 0c01 |0031: move-result-object v1 │ │ +42b214: 7110 b1bb 0000 |0032: invoke-static {v0}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb1 │ │ +42b21a: 0c00 |0035: move-result-object v0 │ │ +42b21c: 1202 |0036: const/4 v2, #int 0 // #0 │ │ +42b21e: 1303 0900 |0037: const/16 v3, #int 9 // #9 │ │ +42b222: 6e40 06bb 0132 |0039: invoke-virtual {v1, v0, v2, v3}, Lorg/purple/smoke/Kernel;.enqueueMessage:(Ljava/lang/String;[BI)Z // method@bb06 │ │ +42b228: 0a00 |003c: move-result v0 │ │ +42b22a: 3900 0600 |003d: if-nez v0, 0043 // +0006 │ │ +42b22e: 1a00 c066 |003f: const-string v0, "enqueueMessage() failure" // string@66c0 │ │ +42b232: 5b70 e75e |0041: iput-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ +42b236: 5470 e85e |0043: iget-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ +42b23a: 2201 001b |0045: new-instance v1, Lorg/purple/smoke/Settings$6SingleShot$1; // type@1b00 │ │ +42b23e: 7020 aebc 7100 |0047: invoke-direct {v1, v7}, Lorg/purple/smoke/Settings$6SingleShot$1;.:(Lorg/purple/smoke/Settings$6SingleShot;)V // method@bcae │ │ +42b244: 6e20 06bd 1000 |004a: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd06 │ │ +42b24a: 0e00 |004d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2848 │ │ 0x0002 line=2849 │ │ 0x0014 line=2852 │ │ 0x0017 line=2855 │ │ 0x0023 line=2856 │ │ @@ -739409,18 +739408,18 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -42b8a0: |[42b8a0] org.purple.smoke.Settings$7.:(Lorg/purple/smoke/Settings;)V │ │ -42b8b0: 5b01 eb5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$7;.this$0:Lorg/purple/smoke/Settings; // field@5eeb │ │ -42b8b4: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42b8ba: 0e00 |0005: return-void │ │ +42b89c: |[42b89c] org.purple.smoke.Settings$7.:(Lorg/purple/smoke/Settings;)V │ │ +42b8ac: 5b01 eb5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$7;.this$0:Lorg/purple/smoke/Settings; // field@5eeb │ │ +42b8b0: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42b8b6: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1682 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$7; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings; │ │ │ │ @@ -739430,26 +739429,26 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 21 16-bit code units │ │ -42b8bc: |[42b8bc] org.purple.smoke.Settings$7.onClick:(Landroid/view/View;)V │ │ -42b8cc: 5412 eb5e |0000: iget-object v2, v1, Lorg/purple/smoke/Settings$7;.this$0:Lorg/purple/smoke/Settings; // field@5eeb │ │ -42b8d0: 6e10 efbc 0200 |0002: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ -42b8d6: 0a02 |0005: move-result v2 │ │ -42b8d8: 3802 0300 |0006: if-eqz v2, 0009 // +0003 │ │ -42b8dc: 0e00 |0008: return-void │ │ -42b8de: 5412 eb5e |0009: iget-object v2, v1, Lorg/purple/smoke/Settings$7;.this$0:Lorg/purple/smoke/Settings; // field@5eeb │ │ -42b8e2: 7110 dcbc 0200 |000b: invoke-static {v2}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42b8e8: 0c02 |000e: move-result-object v2 │ │ -42b8ea: 1a00 217e |000f: const-string v0, "log" // string@7e21 │ │ -42b8ee: 6e20 e0b9 0200 |0011: invoke-virtual {v2, v0}, Lorg/purple/smoke/Database;.clearTable:(Ljava/lang/String;)V // method@b9e0 │ │ -42b8f4: 0e00 |0014: return-void │ │ +42b8b8: |[42b8b8] org.purple.smoke.Settings$7.onClick:(Landroid/view/View;)V │ │ +42b8c8: 5412 eb5e |0000: iget-object v2, v1, Lorg/purple/smoke/Settings$7;.this$0:Lorg/purple/smoke/Settings; // field@5eeb │ │ +42b8cc: 6e10 efbc 0200 |0002: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ +42b8d2: 0a02 |0005: move-result v2 │ │ +42b8d4: 3802 0300 |0006: if-eqz v2, 0009 // +0003 │ │ +42b8d8: 0e00 |0008: return-void │ │ +42b8da: 5412 eb5e |0009: iget-object v2, v1, Lorg/purple/smoke/Settings$7;.this$0:Lorg/purple/smoke/Settings; // field@5eeb │ │ +42b8de: 7110 dcbc 0200 |000b: invoke-static {v2}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42b8e4: 0c02 |000e: move-result-object v2 │ │ +42b8e6: 1a00 217e |000f: const-string v0, "log" // string@7e21 │ │ +42b8ea: 6e20 e0b9 0200 |0011: invoke-virtual {v2, v0}, Lorg/purple/smoke/Database;.clearTable:(Ljava/lang/String;)V // method@b9e0 │ │ +42b8f0: 0e00 |0014: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1685 │ │ 0x0009 line=1688 │ │ locals : │ │ 0x0000 - 0x0015 reg=1 this Lorg/purple/smoke/Settings$7; │ │ 0x0000 - 0x0015 reg=2 (null) Landroid/view/View; │ │ @@ -739489,18 +739488,18 @@ │ │ type : '(Lorg/purple/smoke/Settings$7SingleShot;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -42b29c: |[42b29c] org.purple.smoke.Settings$7SingleShot$1.:(Lorg/purple/smoke/Settings$7SingleShot;)V │ │ -42b2ac: 5b01 ec5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b2b0: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42b2b6: 0e00 |0005: return-void │ │ +42b298: |[42b298] org.purple.smoke.Settings$7SingleShot$1.:(Lorg/purple/smoke/Settings$7SingleShot;)V │ │ +42b2a8: 5b01 ec5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b2ac: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42b2b2: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3001 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$7SingleShot$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings$7SingleShot; │ │ │ │ @@ -739510,251 +739509,251 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 17 │ │ ins : 1 │ │ outs : 5 │ │ insns size : 502 16-bit code units │ │ -42b2b8: |[42b2b8] org.purple.smoke.Settings$7SingleShot$1.run:()V │ │ -42b2c8: 0800 1000 |0000: move-object/from16 v0, v16 │ │ -42b2cc: 5401 ec5e |0002: iget-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b2d0: 5411 f45e |0004: iget-object v1, v1, Lorg/purple/smoke/Settings$7SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ef4 │ │ -42b2d4: 1242 |0006: const/4 v2, #int 4 // #4 │ │ -42b2d6: 6e20 5f5a 2100 |0007: invoke-virtual {v1, v2}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42b2dc: 5401 ec5e |000a: iget-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b2e0: 5411 f35e |000c: iget-object v1, v1, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b2e4: 6e10 edbc 0100 |000e: invoke-virtual {v1}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ -42b2ea: 0c01 |0011: move-result-object v1 │ │ -42b2ec: 1302 1000 |0012: const/16 v2, #int 16 // #10 │ │ -42b2f0: 6e20 8557 2100 |0014: invoke-virtual {v1, v2}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ -42b2f6: 5401 ec5e |0017: iget-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b2fa: 5411 f35e |0019: iget-object v1, v1, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b2fe: 1402 9200 087f |001b: const v2, #float 1.80778e+38 // #7f080092 │ │ -42b304: 6e20 e5bc 2100 |001e: invoke-virtual {v1, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42b30a: 0c01 |0021: move-result-object v1 │ │ -42b30c: 1212 |0022: const/4 v2, #int 1 // #1 │ │ -42b30e: 7120 e6bb 2100 |0023: invoke-static {v1, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ -42b314: 5401 ec5e |0026: iget-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b318: 5411 f35e |0028: iget-object v1, v1, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b31c: 7110 ddbc 0100 |002a: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$500:(Lorg/purple/smoke/Settings;)V // method@bcdd │ │ -42b322: 2201 7b0a |002d: new-instance v1, Landroid/widget/PopupWindow; // type@0a7b │ │ -42b326: 5403 ec5e |002f: iget-object v3, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b32a: 5433 f35e |0031: iget-object v3, v3, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b32e: 7020 325a 3100 |0033: invoke-direct {v1, v3}, Landroid/widget/PopupWindow;.:(Landroid/content/Context;)V // method@5a32 │ │ -42b334: 2203 f10a |0036: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ -42b338: 7010 ee5c 0300 |0038: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42b33e: 2204 970a |003b: new-instance v4, Landroid/widget/TextView; // type@0a97 │ │ -42b342: 5405 ec5e |003d: iget-object v5, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b346: 5455 f35e |003f: iget-object v5, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b34a: 7020 ff5a 5400 |0041: invoke-direct {v4, v5}, Landroid/widget/TextView;.:(Landroid/content/Context;)V // method@5aff │ │ -42b350: 5405 ec5e |0044: iget-object v5, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b354: 5455 f35e |0046: iget-object v5, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b358: 6e10 ebbc 0500 |0048: invoke-virtual {v5}, Lorg/purple/smoke/Settings;.getResources:()Landroid/content/res/Resources; // method@bceb │ │ -42b35e: 0c05 |004b: move-result-object v5 │ │ -42b360: 6e10 0e02 0500 |004c: invoke-virtual {v5}, Landroid/content/res/Resources;.getDisplayMetrics:()Landroid/util/DisplayMetrics; // method@020e │ │ -42b366: 0c05 |004f: move-result-object v5 │ │ -42b368: 5255 992c |0050: iget v5, v5, Landroid/util/DisplayMetrics;.density:F // field@2c99 │ │ -42b36c: 5406 ec5e |0052: iget-object v6, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b370: 7110 b8bc 0600 |0054: invoke-static {v6}, Lorg/purple/smoke/Settings$7SingleShot;.access$2800:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcb8 │ │ -42b376: 0c06 |0057: move-result-object v6 │ │ -42b378: 6e10 c35c 0600 |0058: invoke-virtual {v6}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42b37e: 0a06 |005b: move-result v6 │ │ -42b380: 1a07 9800 |005c: const-string v7, " (" // string@0098 │ │ -42b384: 3906 1f01 |005e: if-nez v6, 017d // +011f │ │ -42b388: 5406 ec5e |0060: iget-object v6, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b38c: 7110 b9bc 0600 |0062: invoke-static {v6}, Lorg/purple/smoke/Settings$7SingleShot;.access$2900:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcb9 │ │ -42b392: 0c06 |0065: move-result-object v6 │ │ -42b394: 6e10 c35c 0600 |0066: invoke-virtual {v6}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42b39a: 0a06 |0069: move-result v6 │ │ -42b39c: 3806 0400 |006a: if-eqz v6, 006e // +0004 │ │ -42b3a0: 2900 1101 |006c: goto/16 017d // +0111 │ │ -42b3a4: 5406 ec5e |006e: iget-object v6, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b3a8: 7110 bbbc 0600 |0070: invoke-static {v6}, Lorg/purple/smoke/Settings$7SingleShot;.access$3100:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcbb │ │ -42b3ae: 0c06 |0073: move-result-object v6 │ │ -42b3b0: 6e20 f95c 6300 |0074: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b3b6: 6e20 f95c 7300 |0077: invoke-virtual {v3, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b3bc: 5406 ec5e |007a: iget-object v6, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b3c0: 7110 babc 0600 |007c: invoke-static {v6}, Lorg/purple/smoke/Settings$7SingleShot;.access$3000:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcba │ │ -42b3c6: 0c06 |007f: move-result-object v6 │ │ -42b3c8: 6e20 f95c 6300 |0080: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b3ce: 1a06 ed03 |0083: const-string v6, ") │ │ +42b2b4: |[42b2b4] org.purple.smoke.Settings$7SingleShot$1.run:()V │ │ +42b2c4: 0800 1000 |0000: move-object/from16 v0, v16 │ │ +42b2c8: 5401 ec5e |0002: iget-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b2cc: 5411 f45e |0004: iget-object v1, v1, Lorg/purple/smoke/Settings$7SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ef4 │ │ +42b2d0: 1242 |0006: const/4 v2, #int 4 // #4 │ │ +42b2d2: 6e20 5f5a 2100 |0007: invoke-virtual {v1, v2}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42b2d8: 5401 ec5e |000a: iget-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b2dc: 5411 f35e |000c: iget-object v1, v1, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b2e0: 6e10 edbc 0100 |000e: invoke-virtual {v1}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ +42b2e6: 0c01 |0011: move-result-object v1 │ │ +42b2e8: 1302 1000 |0012: const/16 v2, #int 16 // #10 │ │ +42b2ec: 6e20 8557 2100 |0014: invoke-virtual {v1, v2}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ +42b2f2: 5401 ec5e |0017: iget-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b2f6: 5411 f35e |0019: iget-object v1, v1, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b2fa: 1402 9200 087f |001b: const v2, #float 1.80778e+38 // #7f080092 │ │ +42b300: 6e20 e5bc 2100 |001e: invoke-virtual {v1, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42b306: 0c01 |0021: move-result-object v1 │ │ +42b308: 1212 |0022: const/4 v2, #int 1 // #1 │ │ +42b30a: 7120 e6bb 2100 |0023: invoke-static {v1, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ +42b310: 5401 ec5e |0026: iget-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b314: 5411 f35e |0028: iget-object v1, v1, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b318: 7110 ddbc 0100 |002a: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$500:(Lorg/purple/smoke/Settings;)V // method@bcdd │ │ +42b31e: 2201 7b0a |002d: new-instance v1, Landroid/widget/PopupWindow; // type@0a7b │ │ +42b322: 5403 ec5e |002f: iget-object v3, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b326: 5433 f35e |0031: iget-object v3, v3, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b32a: 7020 325a 3100 |0033: invoke-direct {v1, v3}, Landroid/widget/PopupWindow;.:(Landroid/content/Context;)V // method@5a32 │ │ +42b330: 2203 f10a |0036: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ +42b334: 7010 ee5c 0300 |0038: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42b33a: 2204 970a |003b: new-instance v4, Landroid/widget/TextView; // type@0a97 │ │ +42b33e: 5405 ec5e |003d: iget-object v5, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b342: 5455 f35e |003f: iget-object v5, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b346: 7020 ff5a 5400 |0041: invoke-direct {v4, v5}, Landroid/widget/TextView;.:(Landroid/content/Context;)V // method@5aff │ │ +42b34c: 5405 ec5e |0044: iget-object v5, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b350: 5455 f35e |0046: iget-object v5, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b354: 6e10 ebbc 0500 |0048: invoke-virtual {v5}, Lorg/purple/smoke/Settings;.getResources:()Landroid/content/res/Resources; // method@bceb │ │ +42b35a: 0c05 |004b: move-result-object v5 │ │ +42b35c: 6e10 0e02 0500 |004c: invoke-virtual {v5}, Landroid/content/res/Resources;.getDisplayMetrics:()Landroid/util/DisplayMetrics; // method@020e │ │ +42b362: 0c05 |004f: move-result-object v5 │ │ +42b364: 5255 992c |0050: iget v5, v5, Landroid/util/DisplayMetrics;.density:F // field@2c99 │ │ +42b368: 5406 ec5e |0052: iget-object v6, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b36c: 7110 b8bc 0600 |0054: invoke-static {v6}, Lorg/purple/smoke/Settings$7SingleShot;.access$2800:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcb8 │ │ +42b372: 0c06 |0057: move-result-object v6 │ │ +42b374: 6e10 c35c 0600 |0058: invoke-virtual {v6}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42b37a: 0a06 |005b: move-result v6 │ │ +42b37c: 1a07 9800 |005c: const-string v7, " (" // string@0098 │ │ +42b380: 3906 1f01 |005e: if-nez v6, 017d // +011f │ │ +42b384: 5406 ec5e |0060: iget-object v6, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b388: 7110 b9bc 0600 |0062: invoke-static {v6}, Lorg/purple/smoke/Settings$7SingleShot;.access$2900:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcb9 │ │ +42b38e: 0c06 |0065: move-result-object v6 │ │ +42b390: 6e10 c35c 0600 |0066: invoke-virtual {v6}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42b396: 0a06 |0069: move-result v6 │ │ +42b398: 3806 0400 |006a: if-eqz v6, 006e // +0004 │ │ +42b39c: 2900 1101 |006c: goto/16 017d // +0111 │ │ +42b3a0: 5406 ec5e |006e: iget-object v6, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b3a4: 7110 bbbc 0600 |0070: invoke-static {v6}, Lorg/purple/smoke/Settings$7SingleShot;.access$3100:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcbb │ │ +42b3aa: 0c06 |0073: move-result-object v6 │ │ +42b3ac: 6e20 f95c 6300 |0074: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b3b2: 6e20 f95c 7300 |0077: invoke-virtual {v3, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b3b8: 5406 ec5e |007a: iget-object v6, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b3bc: 7110 babc 0600 |007c: invoke-static {v6}, Lorg/purple/smoke/Settings$7SingleShot;.access$3000:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcba │ │ +42b3c2: 0c06 |007f: move-result-object v6 │ │ +42b3c4: 6e20 f95c 6300 |0080: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b3ca: 1a06 ed03 |0083: const-string v6, ") │ │ " // string@03ed │ │ -42b3d2: 6e20 f95c 6300 |0085: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b3d8: 1a07 0e00 |0088: const-string v7, " │ │ +42b3ce: 6e20 f95c 6300 |0085: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b3d4: 1a07 0e00 |0088: const-string v7, " │ │ Encryption Key (" // string@000e │ │ -42b3dc: 6e20 f95c 7300 |008a: invoke-virtual {v3, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b3e2: 6e10 035d 0300 |008d: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42b3e8: 0c07 |0090: move-result-object v7 │ │ -42b3ea: 6e20 035b 7400 |0091: invoke-virtual {v4, v7}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ -42b3f0: 2207 ba09 |0094: new-instance v7, Landroid/text/SpannableStringBuilder; // type@09ba │ │ -42b3f4: 5408 ec5e |0096: iget-object v8, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b3f8: 7110 bcbc 0800 |0098: invoke-static {v8}, Lorg/purple/smoke/Settings$7SingleShot;.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; // method@bcbc │ │ -42b3fe: 0c08 |009b: move-result-object v8 │ │ -42b400: 1209 |009c: const/4 v9, #int 0 // #0 │ │ -42b402: 4608 0809 |009d: aget-object v8, v8, v9 │ │ -42b406: 1a0a 95a5 |009f: const-string v10, "true" // string@a595 │ │ -42b40a: 6e20 b85c a800 |00a1: invoke-virtual {v8, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42b410: 0a08 |00a4: move-result v8 │ │ -42b412: 1a0b 854b |00a5: const-string v11, "Signature Verified" // string@4b85 │ │ -42b416: 1a0c 844b |00a7: const-string v12, "Signature Not Verified" // string@4b84 │ │ -42b41a: 3808 0400 |00a9: if-eqz v8, 00ad // +0004 │ │ -42b41e: 07b8 |00ab: move-object v8, v11 │ │ -42b420: 2802 |00ac: goto 00ae // +0002 │ │ -42b422: 07c8 |00ad: move-object v8, v12 │ │ -42b424: 7020 4a54 8700 |00ae: invoke-direct {v7, v8}, Landroid/text/SpannableStringBuilder;.:(Ljava/lang/CharSequence;)V // method@544a │ │ -42b42a: 5408 ec5e |00b1: iget-object v8, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b42e: 7110 bcbc 0800 |00b3: invoke-static {v8}, Lorg/purple/smoke/Settings$7SingleShot;.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; // method@bcbc │ │ -42b434: 0c08 |00b6: move-result-object v8 │ │ -42b436: 4608 0809 |00b7: aget-object v8, v8, v9 │ │ -42b43a: 6e20 b85c a800 |00b9: invoke-virtual {v8, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42b440: 0a08 |00bc: move-result v8 │ │ -42b442: 130d 3200 |00bd: const/16 v13, #int 50 // #32 │ │ -42b446: 130e 7d00 |00bf: const/16 v14, #int 125 // #7d │ │ -42b44a: 130f 2e00 |00c1: const/16 v15, #int 46 // #2e │ │ -42b44e: 3808 1500 |00c3: if-eqz v8, 00d8 // +0015 │ │ -42b452: 2208 c609 |00c5: new-instance v8, Landroid/text/style/ForegroundColorSpan; // type@09c6 │ │ -42b456: 7130 c902 ef0d |00c7: invoke-static {v15, v14, v13}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ -42b45c: 0a02 |00ca: move-result v2 │ │ -42b45e: 7020 6c54 2800 |00cb: invoke-direct {v8, v2}, Landroid/text/style/ForegroundColorSpan;.:(I)V // method@546c │ │ -42b464: 6e10 4f54 0700 |00ce: invoke-virtual {v7}, Landroid/text/SpannableStringBuilder;.length:()I // method@544f │ │ -42b46a: 0a02 |00d1: move-result v2 │ │ -42b46c: 130d 2100 |00d2: const/16 v13, #int 33 // #21 │ │ -42b470: 6e5d 5054 8729 |00d4: invoke-virtual {v7, v8, v9, v2, v13}, Landroid/text/SpannableStringBuilder;.setSpan:(Ljava/lang/Object;III)V // method@5450 │ │ -42b476: 2817 |00d7: goto 00ee // +0017 │ │ -42b478: 130d 2100 |00d8: const/16 v13, #int 33 // #21 │ │ -42b47c: 2202 c609 |00da: new-instance v2, Landroid/text/style/ForegroundColorSpan; // type@09c6 │ │ -42b480: 1308 c600 |00dc: const/16 v8, #int 198 // #c6 │ │ -42b484: 130e 2800 |00de: const/16 v14, #int 40 // #28 │ │ -42b488: 7130 c902 e80e |00e0: invoke-static {v8, v14, v14}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ -42b48e: 0a0f |00e3: move-result v15 │ │ -42b490: 7020 6c54 f200 |00e4: invoke-direct {v2, v15}, Landroid/text/style/ForegroundColorSpan;.:(I)V // method@546c │ │ -42b496: 6e10 4f54 0700 |00e7: invoke-virtual {v7}, Landroid/text/SpannableStringBuilder;.length:()I // method@544f │ │ -42b49c: 0a08 |00ea: move-result v8 │ │ -42b49e: 6e5d 5054 2789 |00eb: invoke-virtual {v7, v2, v9, v8, v13}, Landroid/text/SpannableStringBuilder;.setSpan:(Ljava/lang/Object;III)V // method@5450 │ │ -42b4a4: 6e20 035b 7400 |00ee: invoke-virtual {v4, v7}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ -42b4aa: 6e10 ff5c 0300 |00f1: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ -42b4b0: 0a02 |00f4: move-result v2 │ │ -42b4b2: 6e30 fd5c 9302 |00f5: invoke-virtual {v3, v9, v2}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ -42b4b8: 6e20 f95c 6300 |00f8: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b4be: 5402 ec5e |00fb: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b4c2: 7110 b8bc 0200 |00fd: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$2800:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcb8 │ │ -42b4c8: 0c02 |0100: move-result-object v2 │ │ -42b4ca: 6e20 f95c 2300 |0101: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b4d0: 1a02 1400 |0104: const-string v2, " │ │ +42b3d8: 6e20 f95c 7300 |008a: invoke-virtual {v3, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b3de: 6e10 035d 0300 |008d: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42b3e4: 0c07 |0090: move-result-object v7 │ │ +42b3e6: 6e20 035b 7400 |0091: invoke-virtual {v4, v7}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ +42b3ec: 2207 ba09 |0094: new-instance v7, Landroid/text/SpannableStringBuilder; // type@09ba │ │ +42b3f0: 5408 ec5e |0096: iget-object v8, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b3f4: 7110 bcbc 0800 |0098: invoke-static {v8}, Lorg/purple/smoke/Settings$7SingleShot;.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; // method@bcbc │ │ +42b3fa: 0c08 |009b: move-result-object v8 │ │ +42b3fc: 1209 |009c: const/4 v9, #int 0 // #0 │ │ +42b3fe: 4608 0809 |009d: aget-object v8, v8, v9 │ │ +42b402: 1a0a 95a5 |009f: const-string v10, "true" // string@a595 │ │ +42b406: 6e20 b85c a800 |00a1: invoke-virtual {v8, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42b40c: 0a08 |00a4: move-result v8 │ │ +42b40e: 1a0b 854b |00a5: const-string v11, "Signature Verified" // string@4b85 │ │ +42b412: 1a0c 844b |00a7: const-string v12, "Signature Not Verified" // string@4b84 │ │ +42b416: 3808 0400 |00a9: if-eqz v8, 00ad // +0004 │ │ +42b41a: 07b8 |00ab: move-object v8, v11 │ │ +42b41c: 2802 |00ac: goto 00ae // +0002 │ │ +42b41e: 07c8 |00ad: move-object v8, v12 │ │ +42b420: 7020 4a54 8700 |00ae: invoke-direct {v7, v8}, Landroid/text/SpannableStringBuilder;.:(Ljava/lang/CharSequence;)V // method@544a │ │ +42b426: 5408 ec5e |00b1: iget-object v8, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b42a: 7110 bcbc 0800 |00b3: invoke-static {v8}, Lorg/purple/smoke/Settings$7SingleShot;.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; // method@bcbc │ │ +42b430: 0c08 |00b6: move-result-object v8 │ │ +42b432: 4608 0809 |00b7: aget-object v8, v8, v9 │ │ +42b436: 6e20 b85c a800 |00b9: invoke-virtual {v8, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42b43c: 0a08 |00bc: move-result v8 │ │ +42b43e: 130d 3200 |00bd: const/16 v13, #int 50 // #32 │ │ +42b442: 130e 7d00 |00bf: const/16 v14, #int 125 // #7d │ │ +42b446: 130f 2e00 |00c1: const/16 v15, #int 46 // #2e │ │ +42b44a: 3808 1500 |00c3: if-eqz v8, 00d8 // +0015 │ │ +42b44e: 2208 c609 |00c5: new-instance v8, Landroid/text/style/ForegroundColorSpan; // type@09c6 │ │ +42b452: 7130 c902 ef0d |00c7: invoke-static {v15, v14, v13}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ +42b458: 0a02 |00ca: move-result v2 │ │ +42b45a: 7020 6c54 2800 |00cb: invoke-direct {v8, v2}, Landroid/text/style/ForegroundColorSpan;.:(I)V // method@546c │ │ +42b460: 6e10 4f54 0700 |00ce: invoke-virtual {v7}, Landroid/text/SpannableStringBuilder;.length:()I // method@544f │ │ +42b466: 0a02 |00d1: move-result v2 │ │ +42b468: 130d 2100 |00d2: const/16 v13, #int 33 // #21 │ │ +42b46c: 6e5d 5054 8729 |00d4: invoke-virtual {v7, v8, v9, v2, v13}, Landroid/text/SpannableStringBuilder;.setSpan:(Ljava/lang/Object;III)V // method@5450 │ │ +42b472: 2817 |00d7: goto 00ee // +0017 │ │ +42b474: 130d 2100 |00d8: const/16 v13, #int 33 // #21 │ │ +42b478: 2202 c609 |00da: new-instance v2, Landroid/text/style/ForegroundColorSpan; // type@09c6 │ │ +42b47c: 1308 c600 |00dc: const/16 v8, #int 198 // #c6 │ │ +42b480: 130e 2800 |00de: const/16 v14, #int 40 // #28 │ │ +42b484: 7130 c902 e80e |00e0: invoke-static {v8, v14, v14}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ +42b48a: 0a0f |00e3: move-result v15 │ │ +42b48c: 7020 6c54 f200 |00e4: invoke-direct {v2, v15}, Landroid/text/style/ForegroundColorSpan;.:(I)V // method@546c │ │ +42b492: 6e10 4f54 0700 |00e7: invoke-virtual {v7}, Landroid/text/SpannableStringBuilder;.length:()I // method@544f │ │ +42b498: 0a08 |00ea: move-result v8 │ │ +42b49a: 6e5d 5054 2789 |00eb: invoke-virtual {v7, v2, v9, v8, v13}, Landroid/text/SpannableStringBuilder;.setSpan:(Ljava/lang/Object;III)V // method@5450 │ │ +42b4a0: 6e20 035b 7400 |00ee: invoke-virtual {v4, v7}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ +42b4a6: 6e10 ff5c 0300 |00f1: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ +42b4ac: 0a02 |00f4: move-result v2 │ │ +42b4ae: 6e30 fd5c 9302 |00f5: invoke-virtual {v3, v9, v2}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ +42b4b4: 6e20 f95c 6300 |00f8: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b4ba: 5402 ec5e |00fb: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b4be: 7110 b8bc 0200 |00fd: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$2800:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcb8 │ │ +42b4c4: 0c02 |0100: move-result-object v2 │ │ +42b4c6: 6e20 f95c 2300 |0101: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b4cc: 1a02 1400 |0104: const-string v2, " │ │ Signature Key (" // string@0014 │ │ -42b4d4: 6e20 f95c 2300 |0106: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b4da: 6e20 035b 3400 |0109: invoke-virtual {v4, v3}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ -42b4e0: 2202 ba09 |010c: new-instance v2, Landroid/text/SpannableStringBuilder; // type@09ba │ │ -42b4e4: 5407 ec5e |010e: iget-object v7, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b4e8: 7110 bcbc 0700 |0110: invoke-static {v7}, Lorg/purple/smoke/Settings$7SingleShot;.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; // method@bcbc │ │ -42b4ee: 0c07 |0113: move-result-object v7 │ │ -42b4f0: 1218 |0114: const/4 v8, #int 1 // #1 │ │ -42b4f2: 4607 0708 |0115: aget-object v7, v7, v8 │ │ -42b4f6: 6e20 b85c a700 |0117: invoke-virtual {v7, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42b4fc: 0a07 |011a: move-result v7 │ │ -42b4fe: 3807 0300 |011b: if-eqz v7, 011e // +0003 │ │ -42b502: 2802 |011d: goto 011f // +0002 │ │ -42b504: 07cb |011e: move-object v11, v12 │ │ -42b506: 7020 4a54 b200 |011f: invoke-direct {v2, v11}, Landroid/text/SpannableStringBuilder;.:(Ljava/lang/CharSequence;)V // method@544a │ │ -42b50c: 5407 ec5e |0122: iget-object v7, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b510: 7110 bcbc 0700 |0124: invoke-static {v7}, Lorg/purple/smoke/Settings$7SingleShot;.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; // method@bcbc │ │ -42b516: 0c07 |0127: move-result-object v7 │ │ -42b518: 4607 0708 |0128: aget-object v7, v7, v8 │ │ -42b51c: 6e20 b85c a700 |012a: invoke-virtual {v7, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42b522: 0a07 |012d: move-result v7 │ │ -42b524: 3807 1b00 |012e: if-eqz v7, 0149 // +001b │ │ -42b528: 2207 c609 |0130: new-instance v7, Landroid/text/style/ForegroundColorSpan; // type@09c6 │ │ -42b52c: 1308 3200 |0132: const/16 v8, #int 50 // #32 │ │ -42b530: 130a 7d00 |0134: const/16 v10, #int 125 // #7d │ │ -42b534: 130b 2e00 |0136: const/16 v11, #int 46 // #2e │ │ -42b538: 7130 c902 ab08 |0138: invoke-static {v11, v10, v8}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ -42b53e: 0a08 |013b: move-result v8 │ │ -42b540: 7020 6c54 8700 |013c: invoke-direct {v7, v8}, Landroid/text/style/ForegroundColorSpan;.:(I)V // method@546c │ │ -42b546: 6e10 4f54 0200 |013f: invoke-virtual {v2}, Landroid/text/SpannableStringBuilder;.length:()I // method@544f │ │ -42b54c: 0a08 |0142: move-result v8 │ │ -42b54e: 130a 2100 |0143: const/16 v10, #int 33 // #21 │ │ -42b552: 6e5a 5054 7289 |0145: invoke-virtual {v2, v7, v9, v8, v10}, Landroid/text/SpannableStringBuilder;.setSpan:(Ljava/lang/Object;III)V // method@5450 │ │ -42b558: 2817 |0148: goto 015f // +0017 │ │ -42b55a: 130a 2100 |0149: const/16 v10, #int 33 // #21 │ │ -42b55e: 2207 c609 |014b: new-instance v7, Landroid/text/style/ForegroundColorSpan; // type@09c6 │ │ -42b562: 1308 c600 |014d: const/16 v8, #int 198 // #c6 │ │ -42b566: 130b 2800 |014f: const/16 v11, #int 40 // #28 │ │ -42b56a: 7130 c902 b80b |0151: invoke-static {v8, v11, v11}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ -42b570: 0a08 |0154: move-result v8 │ │ -42b572: 7020 6c54 8700 |0155: invoke-direct {v7, v8}, Landroid/text/style/ForegroundColorSpan;.:(I)V // method@546c │ │ -42b578: 6e10 4f54 0200 |0158: invoke-virtual {v2}, Landroid/text/SpannableStringBuilder;.length:()I // method@544f │ │ -42b57e: 0a08 |015b: move-result v8 │ │ -42b580: 6e5a 5054 7289 |015c: invoke-virtual {v2, v7, v9, v8, v10}, Landroid/text/SpannableStringBuilder;.setSpan:(Ljava/lang/Object;III)V // method@5450 │ │ -42b586: 6e20 035b 2400 |015f: invoke-virtual {v4, v2}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ -42b58c: 6e10 ff5c 0300 |0162: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ -42b592: 0a02 |0165: move-result v2 │ │ -42b594: 6e30 fd5c 9302 |0166: invoke-virtual {v3, v9, v2}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ -42b59a: 6e20 f95c 6300 |0169: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b5a0: 5402 ec5e |016c: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b5a4: 7110 b9bc 0200 |016e: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$2900:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcb9 │ │ -42b5aa: 0c02 |0171: move-result-object v2 │ │ -42b5ac: 6e20 f95c 2300 |0172: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b5b2: 6e10 035d 0300 |0175: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42b5b8: 0c02 |0178: move-result-object v2 │ │ -42b5ba: 6e20 035b 2400 |0179: invoke-virtual {v4, v2}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ -42b5c0: 283e |017c: goto 01ba // +003e │ │ -42b5c2: 5402 ec5e |017d: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b5c6: 7110 babc 0200 |017f: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$3000:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcba │ │ -42b5cc: 0c02 |0182: move-result-object v2 │ │ -42b5ce: 6e10 c35c 0200 |0183: invoke-virtual {v2}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42b5d4: 0a02 |0186: move-result v2 │ │ -42b5d6: 3802 0d00 |0187: if-eqz v2, 0194 // +000d │ │ -42b5da: 1a02 4c50 |0189: const-string v2, "Unable to gather details " // string@504c │ │ -42b5de: 6e20 f95c 2300 |018b: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b5e4: 1a02 3a69 |018e: const-string v2, "for the selected participant." // string@693a │ │ -42b5e8: 6e20 f95c 2300 |0190: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b5ee: 2820 |0193: goto 01b3 // +0020 │ │ -42b5f0: 1a02 4d50 |0194: const-string v2, "Unable to gather details for " // string@504d │ │ -42b5f4: 6e20 f95c 2300 |0196: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b5fa: 5402 ec5e |0199: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b5fe: 7110 bbbc 0200 |019b: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$3100:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcbb │ │ -42b604: 0c02 |019e: move-result-object v2 │ │ -42b606: 6e20 f95c 2300 |019f: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b60c: 6e20 f95c 7300 |01a2: invoke-virtual {v3, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b612: 5402 ec5e |01a5: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b616: 7110 babc 0200 |01a7: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$3000:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcba │ │ -42b61c: 0c02 |01aa: move-result-object v2 │ │ -42b61e: 6e20 f95c 2300 |01ab: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b624: 1a02 0c04 |01ae: const-string v2, ")." // string@040c │ │ -42b628: 6e20 f95c 2300 |01b0: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b62e: 6e10 035d 0300 |01b3: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42b634: 0c02 |01b6: move-result-object v2 │ │ -42b636: 6e20 495b 2400 |01b7: invoke-virtual {v4, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42b63c: 1302 ff00 |01ba: const/16 v2, #int 255 // #ff │ │ -42b640: 7130 c902 2202 |01bc: invoke-static {v2, v2, v2}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ -42b646: 0a02 |01bf: move-result v2 │ │ -42b648: 6e20 275b 2400 |01c0: invoke-virtual {v4, v2}, Landroid/widget/TextView;.setBackgroundColor:(I)V // method@5b27 │ │ -42b64e: 1502 2041 |01c3: const/high16 v2, #int 1092616192 // #4120 │ │ -42b652: a805 0502 |01c5: mul-float v5, v5, v2 │ │ -42b656: 8752 |01c7: float-to-int v2, v5 │ │ -42b658: 6e52 415b 2422 |01c8: invoke-virtual {v4, v2, v2, v2, v2}, Landroid/widget/TextView;.setPaddingRelative:(IIII)V // method@5b41 │ │ -42b65e: 1502 8041 |01cb: const/high16 v2, #int 1098907648 // #4180 │ │ -42b662: 6e20 4f5b 2400 |01cd: invoke-virtual {v4, v2}, Landroid/widget/TextView;.setTextSize:(F)V // method@5b4f │ │ -42b668: 6e20 445a 4100 |01d0: invoke-virtual {v1, v4}, Landroid/widget/PopupWindow;.setContentView:(Landroid/view/View;)V // method@5a44 │ │ -42b66e: 1212 |01d3: const/4 v2, #int 1 // #1 │ │ -42b670: 6e20 4b5a 2100 |01d4: invoke-virtual {v1, v2}, Landroid/widget/PopupWindow;.setOutsideTouchable:(Z)V // method@5a4b │ │ -42b676: 6002 6d00 |01d7: sget v2, Landroid/os/Build$VERSION;.SDK_INT:I // field@006d │ │ -42b67a: 1303 1700 |01d9: const/16 v3, #int 23 // #17 │ │ -42b67e: 3532 0c00 |01db: if-ge v2, v3, 01e7 // +000c │ │ -42b682: 1302 c201 |01dd: const/16 v2, #int 450 // #1c2 │ │ -42b686: 6e20 485a 2100 |01df: invoke-virtual {v1, v2}, Landroid/widget/PopupWindow;.setHeight:(I)V // method@5a48 │ │ -42b68c: 1302 bc02 |01e2: const/16 v2, #int 700 // #2bc │ │ -42b690: 6e20 4f5a 2100 |01e4: invoke-virtual {v1, v2}, Landroid/widget/PopupWindow;.setWidth:(I)V // method@5a4f │ │ -42b696: 5402 ec5e |01e7: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b69a: 5422 f35e |01e9: iget-object v2, v2, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b69e: 1403 bf00 087f |01eb: const v3, #float 1.80779e+38 // #7f0800bf │ │ -42b6a4: 6e20 e5bc 3200 |01ee: invoke-virtual {v2, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42b6aa: 0c02 |01f1: move-result-object v2 │ │ -42b6ac: 6e20 515a 2100 |01f2: invoke-virtual {v1, v2}, Landroid/widget/PopupWindow;.showAsDropDown:(Landroid/view/View;)V // method@5a51 │ │ -42b6b2: 0e00 |01f5: return-void │ │ +42b4d0: 6e20 f95c 2300 |0106: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b4d6: 6e20 035b 3400 |0109: invoke-virtual {v4, v3}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ +42b4dc: 2202 ba09 |010c: new-instance v2, Landroid/text/SpannableStringBuilder; // type@09ba │ │ +42b4e0: 5407 ec5e |010e: iget-object v7, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b4e4: 7110 bcbc 0700 |0110: invoke-static {v7}, Lorg/purple/smoke/Settings$7SingleShot;.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; // method@bcbc │ │ +42b4ea: 0c07 |0113: move-result-object v7 │ │ +42b4ec: 1218 |0114: const/4 v8, #int 1 // #1 │ │ +42b4ee: 4607 0708 |0115: aget-object v7, v7, v8 │ │ +42b4f2: 6e20 b85c a700 |0117: invoke-virtual {v7, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42b4f8: 0a07 |011a: move-result v7 │ │ +42b4fa: 3807 0300 |011b: if-eqz v7, 011e // +0003 │ │ +42b4fe: 2802 |011d: goto 011f // +0002 │ │ +42b500: 07cb |011e: move-object v11, v12 │ │ +42b502: 7020 4a54 b200 |011f: invoke-direct {v2, v11}, Landroid/text/SpannableStringBuilder;.:(Ljava/lang/CharSequence;)V // method@544a │ │ +42b508: 5407 ec5e |0122: iget-object v7, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b50c: 7110 bcbc 0700 |0124: invoke-static {v7}, Lorg/purple/smoke/Settings$7SingleShot;.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; // method@bcbc │ │ +42b512: 0c07 |0127: move-result-object v7 │ │ +42b514: 4607 0708 |0128: aget-object v7, v7, v8 │ │ +42b518: 6e20 b85c a700 |012a: invoke-virtual {v7, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42b51e: 0a07 |012d: move-result v7 │ │ +42b520: 3807 1b00 |012e: if-eqz v7, 0149 // +001b │ │ +42b524: 2207 c609 |0130: new-instance v7, Landroid/text/style/ForegroundColorSpan; // type@09c6 │ │ +42b528: 1308 3200 |0132: const/16 v8, #int 50 // #32 │ │ +42b52c: 130a 7d00 |0134: const/16 v10, #int 125 // #7d │ │ +42b530: 130b 2e00 |0136: const/16 v11, #int 46 // #2e │ │ +42b534: 7130 c902 ab08 |0138: invoke-static {v11, v10, v8}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ +42b53a: 0a08 |013b: move-result v8 │ │ +42b53c: 7020 6c54 8700 |013c: invoke-direct {v7, v8}, Landroid/text/style/ForegroundColorSpan;.:(I)V // method@546c │ │ +42b542: 6e10 4f54 0200 |013f: invoke-virtual {v2}, Landroid/text/SpannableStringBuilder;.length:()I // method@544f │ │ +42b548: 0a08 |0142: move-result v8 │ │ +42b54a: 130a 2100 |0143: const/16 v10, #int 33 // #21 │ │ +42b54e: 6e5a 5054 7289 |0145: invoke-virtual {v2, v7, v9, v8, v10}, Landroid/text/SpannableStringBuilder;.setSpan:(Ljava/lang/Object;III)V // method@5450 │ │ +42b554: 2817 |0148: goto 015f // +0017 │ │ +42b556: 130a 2100 |0149: const/16 v10, #int 33 // #21 │ │ +42b55a: 2207 c609 |014b: new-instance v7, Landroid/text/style/ForegroundColorSpan; // type@09c6 │ │ +42b55e: 1308 c600 |014d: const/16 v8, #int 198 // #c6 │ │ +42b562: 130b 2800 |014f: const/16 v11, #int 40 // #28 │ │ +42b566: 7130 c902 b80b |0151: invoke-static {v8, v11, v11}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ +42b56c: 0a08 |0154: move-result v8 │ │ +42b56e: 7020 6c54 8700 |0155: invoke-direct {v7, v8}, Landroid/text/style/ForegroundColorSpan;.:(I)V // method@546c │ │ +42b574: 6e10 4f54 0200 |0158: invoke-virtual {v2}, Landroid/text/SpannableStringBuilder;.length:()I // method@544f │ │ +42b57a: 0a08 |015b: move-result v8 │ │ +42b57c: 6e5a 5054 7289 |015c: invoke-virtual {v2, v7, v9, v8, v10}, Landroid/text/SpannableStringBuilder;.setSpan:(Ljava/lang/Object;III)V // method@5450 │ │ +42b582: 6e20 035b 2400 |015f: invoke-virtual {v4, v2}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ +42b588: 6e10 ff5c 0300 |0162: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ +42b58e: 0a02 |0165: move-result v2 │ │ +42b590: 6e30 fd5c 9302 |0166: invoke-virtual {v3, v9, v2}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ +42b596: 6e20 f95c 6300 |0169: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b59c: 5402 ec5e |016c: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b5a0: 7110 b9bc 0200 |016e: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$2900:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcb9 │ │ +42b5a6: 0c02 |0171: move-result-object v2 │ │ +42b5a8: 6e20 f95c 2300 |0172: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b5ae: 6e10 035d 0300 |0175: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42b5b4: 0c02 |0178: move-result-object v2 │ │ +42b5b6: 6e20 035b 2400 |0179: invoke-virtual {v4, v2}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ +42b5bc: 283e |017c: goto 01ba // +003e │ │ +42b5be: 5402 ec5e |017d: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b5c2: 7110 babc 0200 |017f: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$3000:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcba │ │ +42b5c8: 0c02 |0182: move-result-object v2 │ │ +42b5ca: 6e10 c35c 0200 |0183: invoke-virtual {v2}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42b5d0: 0a02 |0186: move-result v2 │ │ +42b5d2: 3802 0d00 |0187: if-eqz v2, 0194 // +000d │ │ +42b5d6: 1a02 4c50 |0189: const-string v2, "Unable to gather details " // string@504c │ │ +42b5da: 6e20 f95c 2300 |018b: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b5e0: 1a02 3a69 |018e: const-string v2, "for the selected participant." // string@693a │ │ +42b5e4: 6e20 f95c 2300 |0190: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b5ea: 2820 |0193: goto 01b3 // +0020 │ │ +42b5ec: 1a02 4d50 |0194: const-string v2, "Unable to gather details for " // string@504d │ │ +42b5f0: 6e20 f95c 2300 |0196: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b5f6: 5402 ec5e |0199: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b5fa: 7110 bbbc 0200 |019b: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$3100:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcbb │ │ +42b600: 0c02 |019e: move-result-object v2 │ │ +42b602: 6e20 f95c 2300 |019f: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b608: 6e20 f95c 7300 |01a2: invoke-virtual {v3, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b60e: 5402 ec5e |01a5: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b612: 7110 babc 0200 |01a7: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$3000:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcba │ │ +42b618: 0c02 |01aa: move-result-object v2 │ │ +42b61a: 6e20 f95c 2300 |01ab: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b620: 1a02 0c04 |01ae: const-string v2, ")." // string@040c │ │ +42b624: 6e20 f95c 2300 |01b0: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b62a: 6e10 035d 0300 |01b3: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42b630: 0c02 |01b6: move-result-object v2 │ │ +42b632: 6e20 495b 2400 |01b7: invoke-virtual {v4, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42b638: 1302 ff00 |01ba: const/16 v2, #int 255 // #ff │ │ +42b63c: 7130 c902 2202 |01bc: invoke-static {v2, v2, v2}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ +42b642: 0a02 |01bf: move-result v2 │ │ +42b644: 6e20 275b 2400 |01c0: invoke-virtual {v4, v2}, Landroid/widget/TextView;.setBackgroundColor:(I)V // method@5b27 │ │ +42b64a: 1502 2041 |01c3: const/high16 v2, #int 1092616192 // #4120 │ │ +42b64e: a805 0502 |01c5: mul-float v5, v5, v2 │ │ +42b652: 8752 |01c7: float-to-int v2, v5 │ │ +42b654: 6e52 415b 2422 |01c8: invoke-virtual {v4, v2, v2, v2, v2}, Landroid/widget/TextView;.setPaddingRelative:(IIII)V // method@5b41 │ │ +42b65a: 1502 8041 |01cb: const/high16 v2, #int 1098907648 // #4180 │ │ +42b65e: 6e20 4f5b 2400 |01cd: invoke-virtual {v4, v2}, Landroid/widget/TextView;.setTextSize:(F)V // method@5b4f │ │ +42b664: 6e20 445a 4100 |01d0: invoke-virtual {v1, v4}, Landroid/widget/PopupWindow;.setContentView:(Landroid/view/View;)V // method@5a44 │ │ +42b66a: 1212 |01d3: const/4 v2, #int 1 // #1 │ │ +42b66c: 6e20 4b5a 2100 |01d4: invoke-virtual {v1, v2}, Landroid/widget/PopupWindow;.setOutsideTouchable:(Z)V // method@5a4b │ │ +42b672: 6002 6d00 |01d7: sget v2, Landroid/os/Build$VERSION;.SDK_INT:I // field@006d │ │ +42b676: 1303 1700 |01d9: const/16 v3, #int 23 // #17 │ │ +42b67a: 3532 0c00 |01db: if-ge v2, v3, 01e7 // +000c │ │ +42b67e: 1302 c201 |01dd: const/16 v2, #int 450 // #1c2 │ │ +42b682: 6e20 485a 2100 |01df: invoke-virtual {v1, v2}, Landroid/widget/PopupWindow;.setHeight:(I)V // method@5a48 │ │ +42b688: 1302 bc02 |01e2: const/16 v2, #int 700 // #2bc │ │ +42b68c: 6e20 4f5a 2100 |01e4: invoke-virtual {v1, v2}, Landroid/widget/PopupWindow;.setWidth:(I)V // method@5a4f │ │ +42b692: 5402 ec5e |01e7: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b696: 5422 f35e |01e9: iget-object v2, v2, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b69a: 1403 bf00 087f |01eb: const v3, #float 1.80779e+38 // #7f0800bf │ │ +42b6a0: 6e20 e5bc 3200 |01ee: invoke-virtual {v2, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42b6a6: 0c02 |01f1: move-result-object v2 │ │ +42b6a8: 6e20 515a 2100 |01f2: invoke-virtual {v1, v2}, Landroid/widget/PopupWindow;.showAsDropDown:(Landroid/view/View;)V // method@5a51 │ │ +42b6ae: 0e00 |01f5: return-void │ │ catches : (none) │ │ positions : │ │ 0x0002 line=3005 │ │ 0x000a line=3006 │ │ 0x0014 line=3007 │ │ 0x0017 line=3008 │ │ 0x001e line=3009 │ │ @@ -739893,27 +739892,27 @@ │ │ type : '(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 4 │ │ ins : 4 │ │ outs : 1 │ │ insns size : 23 16-bit code units │ │ -42b72c: |[42b72c] org.purple.smoke.Settings$7SingleShot.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V │ │ -42b73c: 5b01 f35e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b740: 5b03 f45e |0002: iput-object v3, v0, Lorg/purple/smoke/Settings$7SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ef4 │ │ -42b744: 7010 8f5c 0000 |0004: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42b74a: 1a01 0000 |0007: const-string v1, "" // string@0000 │ │ -42b74e: 5b01 ed5e |0009: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ -42b752: 5b01 ef5e |000b: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ -42b756: 5b01 f05e |000d: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_string1:Ljava/lang/String; // field@5ef0 │ │ -42b75a: 5b01 f15e |000f: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_string2:Ljava/lang/String; // field@5ef1 │ │ -42b75e: 1201 |0011: const/4 v1, #int 0 // #0 │ │ -42b760: 5b01 f25e |0012: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ -42b764: 5b02 ee5e |0014: iput-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_oid:Ljava/lang/String; // field@5eee │ │ -42b768: 0e00 |0016: return-void │ │ +42b728: |[42b728] org.purple.smoke.Settings$7SingleShot.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V │ │ +42b738: 5b01 f35e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b73c: 5b03 f45e |0002: iput-object v3, v0, Lorg/purple/smoke/Settings$7SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ef4 │ │ +42b740: 7010 8f5c 0000 |0004: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42b746: 1a01 0000 |0007: const-string v1, "" // string@0000 │ │ +42b74a: 5b01 ed5e |0009: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ +42b74e: 5b01 ef5e |000b: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ +42b752: 5b01 f05e |000d: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_string1:Ljava/lang/String; // field@5ef0 │ │ +42b756: 5b01 f15e |000f: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_string2:Ljava/lang/String; // field@5ef1 │ │ +42b75a: 1201 |0011: const/4 v1, #int 0 // #0 │ │ +42b75c: 5b01 f25e |0012: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ +42b760: 5b02 ee5e |0014: iput-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_oid:Ljava/lang/String; // field@5eee │ │ +42b764: 0e00 |0016: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2956 │ │ 0x0009 line=2948 │ │ 0x000b line=2950 │ │ 0x000d line=2951 │ │ 0x000f line=2952 │ │ @@ -739930,17 +739929,17 @@ │ │ type : '(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -42b6b4: |[42b6b4] org.purple.smoke.Settings$7SingleShot.access$2800:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; │ │ -42b6c4: 5400 f05e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_string1:Ljava/lang/String; // field@5ef0 │ │ -42b6c8: 1100 |0002: return-object v0 │ │ +42b6b0: |[42b6b0] org.purple.smoke.Settings$7SingleShot.access$2800:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; │ │ +42b6c0: 5400 f05e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_string1:Ljava/lang/String; // field@5ef0 │ │ +42b6c4: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2946 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings$7SingleShot; │ │ │ │ #2 : (in Lorg/purple/smoke/Settings$7SingleShot;) │ │ @@ -739948,17 +739947,17 @@ │ │ type : '(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -42b6cc: |[42b6cc] org.purple.smoke.Settings$7SingleShot.access$2900:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; │ │ -42b6dc: 5400 f15e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_string2:Ljava/lang/String; // field@5ef1 │ │ -42b6e0: 1100 |0002: return-object v0 │ │ +42b6c8: |[42b6c8] org.purple.smoke.Settings$7SingleShot.access$2900:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; │ │ +42b6d8: 5400 f15e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_string2:Ljava/lang/String; // field@5ef1 │ │ +42b6dc: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2946 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings$7SingleShot; │ │ │ │ #3 : (in Lorg/purple/smoke/Settings$7SingleShot;) │ │ @@ -739966,17 +739965,17 @@ │ │ type : '(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -42b6e4: |[42b6e4] org.purple.smoke.Settings$7SingleShot.access$3000:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; │ │ -42b6f4: 5400 ef5e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ -42b6f8: 1100 |0002: return-object v0 │ │ +42b6e0: |[42b6e0] org.purple.smoke.Settings$7SingleShot.access$3000:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; │ │ +42b6f0: 5400 ef5e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ +42b6f4: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2946 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings$7SingleShot; │ │ │ │ #4 : (in Lorg/purple/smoke/Settings$7SingleShot;) │ │ @@ -739984,17 +739983,17 @@ │ │ type : '(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -42b6fc: |[42b6fc] org.purple.smoke.Settings$7SingleShot.access$3100:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; │ │ -42b70c: 5400 ed5e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ -42b710: 1100 |0002: return-object v0 │ │ +42b6f8: |[42b6f8] org.purple.smoke.Settings$7SingleShot.access$3100:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; │ │ +42b708: 5400 ed5e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ +42b70c: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2946 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings$7SingleShot; │ │ │ │ #5 : (in Lorg/purple/smoke/Settings$7SingleShot;) │ │ @@ -740002,17 +740001,17 @@ │ │ type : '(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -42b714: |[42b714] org.purple.smoke.Settings$7SingleShot.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; │ │ -42b724: 5400 f25e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ -42b728: 1100 |0002: return-object v0 │ │ +42b710: |[42b710] org.purple.smoke.Settings$7SingleShot.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; │ │ +42b720: 5400 f25e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ +42b724: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2946 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings$7SingleShot; │ │ │ │ Virtual methods - │ │ @@ -740021,91 +740020,91 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 146 16-bit code units │ │ -42b76c: |[42b76c] org.purple.smoke.Settings$7SingleShot.run:()V │ │ -42b77c: 5450 f35e |0000: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b780: 7110 dcbc 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42b786: 0c00 |0005: move-result-object v0 │ │ -42b788: 7100 dbbc 0000 |0006: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42b78e: 0c01 |0009: move-result-object v1 │ │ -42b790: 5452 ee5e |000a: iget-object v2, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_oid:Ljava/lang/String; // field@5eee │ │ -42b794: 6e30 18ba 1002 |000c: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSipHashId:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Lorg/purple/smoke/SipHashIdElement; // method@ba18 │ │ -42b79a: 0c00 |000f: move-result-object v0 │ │ -42b79c: 1a01 0000 |0010: const-string v1, "" // string@0000 │ │ -42b7a0: 3900 0400 |0012: if-nez v0, 0016 // +0004 │ │ -42b7a4: 0712 |0014: move-object v2, v1 │ │ -42b7a6: 2803 |0015: goto 0018 // +0003 │ │ -42b7a8: 5402 235f |0016: iget-object v2, v0, Lorg/purple/smoke/SipHashIdElement;.m_sipHashId:Ljava/lang/String; // field@5f23 │ │ -42b7ac: 5b52 ef5e |0018: iput-object v2, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ -42b7b0: 3900 0400 |001a: if-nez v0, 001e // +0004 │ │ -42b7b4: 0712 |001c: move-object v2, v1 │ │ -42b7b6: 2803 |001d: goto 0020 // +0003 │ │ -42b7b8: 5402 1b5f |001e: iget-object v2, v0, Lorg/purple/smoke/SipHashIdElement;.m_encryptionAlgorithm:Ljava/lang/String; // field@5f1b │ │ -42b7bc: 3900 0400 |0020: if-nez v0, 0024 // +0004 │ │ -42b7c0: 0710 |0022: move-object v0, v1 │ │ -42b7c2: 2803 |0023: goto 0026 // +0003 │ │ -42b7c4: 5400 205f |0024: iget-object v0, v0, Lorg/purple/smoke/SipHashIdElement;.m_name:Ljava/lang/String; // field@5f20 │ │ -42b7c8: 5b50 ed5e |0026: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ -42b7cc: 5450 f35e |0028: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b7d0: 7110 dcbc 0000 |002a: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42b7d6: 0c00 |002d: move-result-object v0 │ │ -42b7d8: 7100 dbbc 0000 |002e: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42b7de: 0c03 |0031: move-result-object v3 │ │ -42b7e0: 5454 ef5e |0032: iget-object v4, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ -42b7e4: 6e30 08ba 3004 |0034: invoke-virtual {v0, v3, v4}, Lorg/purple/smoke/Database;.publicEncryptionKeyForSipHashId:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/security/PublicKey; // method@ba08 │ │ -42b7ea: 0c00 |0037: move-result-object v0 │ │ -42b7ec: 1203 |0038: const/4 v3, #int 0 // #0 │ │ -42b7ee: 7130 85b9 0302 |0039: invoke-static {v3, v0, v2}, Lorg/purple/smoke/Cryptography;.fancyKeyInformationOutput:(Ljava/security/PrivateKey;Ljava/security/PublicKey;Ljava/lang/String;)Ljava/lang/String; // method@b985 │ │ -42b7f4: 0c00 |003c: move-result-object v0 │ │ -42b7f6: 6e10 d35c 0000 |003d: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42b7fc: 0c00 |0040: move-result-object v0 │ │ -42b7fe: 5b50 f05e |0041: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_string1:Ljava/lang/String; // field@5ef0 │ │ -42b802: 5450 f35e |0043: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b806: 7110 dcbc 0000 |0045: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42b80c: 0c00 |0048: move-result-object v0 │ │ -42b80e: 7100 dbbc 0000 |0049: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42b814: 0c02 |004c: move-result-object v2 │ │ -42b816: 5454 ef5e |004d: iget-object v4, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ -42b81a: 6e30 0aba 2004 |004f: invoke-virtual {v0, v2, v4}, Lorg/purple/smoke/Database;.publicSignatureKeyForSipHashId:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/security/PublicKey; // method@ba0a │ │ -42b820: 0c00 |0052: move-result-object v0 │ │ -42b822: 7130 85b9 0301 |0053: invoke-static {v3, v0, v1}, Lorg/purple/smoke/Cryptography;.fancyKeyInformationOutput:(Ljava/security/PrivateKey;Ljava/security/PublicKey;Ljava/lang/String;)Ljava/lang/String; // method@b985 │ │ -42b828: 0c00 |0056: move-result-object v0 │ │ -42b82a: 6e10 d35c 0000 |0057: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42b830: 0c00 |005a: move-result-object v0 │ │ -42b832: 5b50 f15e |005b: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_string2:Ljava/lang/String; // field@5ef1 │ │ -42b836: 5450 f35e |005d: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b83a: 7110 dcbc 0000 |005f: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ -42b840: 0c00 |0062: move-result-object v0 │ │ -42b842: 7100 dbbc 0000 |0063: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ -42b848: 0c01 |0066: move-result-object v1 │ │ -42b84a: 5452 ef5e |0067: iget-object v2, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ -42b84e: 6e30 f5b9 1002 |0069: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.keysSigned:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)[Ljava/lang/String; // method@b9f5 │ │ -42b854: 0c00 |006c: move-result-object v0 │ │ -42b856: 5b50 f25e |006d: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ -42b85a: 5450 ed5e |006f: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ -42b85e: 6e10 c35c 0000 |0071: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42b864: 0a00 |0074: move-result v0 │ │ -42b866: 3800 0600 |0075: if-eqz v0, 007b // +0006 │ │ -42b86a: 5450 ef5e |0077: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ -42b86e: 5b50 ed5e |0079: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ -42b872: 5450 f25e |007b: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ -42b876: 3900 0a00 |007d: if-nez v0, 0087 // +000a │ │ -42b87a: 1a00 2068 |007f: const-string v0, "false" // string@6820 │ │ -42b87e: 2420 a81b 0000 |0081: filled-new-array {v0, v0}, [Ljava/lang/String; // type@1ba8 │ │ -42b884: 0c00 |0084: move-result-object v0 │ │ -42b886: 5b50 f25e |0085: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ -42b88a: 5450 f35e |0087: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b88e: 2201 031b |0089: new-instance v1, Lorg/purple/smoke/Settings$7SingleShot$1; // type@1b03 │ │ -42b892: 7020 b5bc 5100 |008b: invoke-direct {v1, v5}, Lorg/purple/smoke/Settings$7SingleShot$1;.:(Lorg/purple/smoke/Settings$7SingleShot;)V // method@bcb5 │ │ -42b898: 6e20 06bd 1000 |008e: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd06 │ │ -42b89e: 0e00 |0091: return-void │ │ +42b768: |[42b768] org.purple.smoke.Settings$7SingleShot.run:()V │ │ +42b778: 5450 f35e |0000: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b77c: 7110 dcbc 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42b782: 0c00 |0005: move-result-object v0 │ │ +42b784: 7100 dbbc 0000 |0006: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42b78a: 0c01 |0009: move-result-object v1 │ │ +42b78c: 5452 ee5e |000a: iget-object v2, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_oid:Ljava/lang/String; // field@5eee │ │ +42b790: 6e30 18ba 1002 |000c: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSipHashId:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Lorg/purple/smoke/SipHashIdElement; // method@ba18 │ │ +42b796: 0c00 |000f: move-result-object v0 │ │ +42b798: 1a01 0000 |0010: const-string v1, "" // string@0000 │ │ +42b79c: 3900 0400 |0012: if-nez v0, 0016 // +0004 │ │ +42b7a0: 0712 |0014: move-object v2, v1 │ │ +42b7a2: 2803 |0015: goto 0018 // +0003 │ │ +42b7a4: 5402 235f |0016: iget-object v2, v0, Lorg/purple/smoke/SipHashIdElement;.m_sipHashId:Ljava/lang/String; // field@5f23 │ │ +42b7a8: 5b52 ef5e |0018: iput-object v2, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ +42b7ac: 3900 0400 |001a: if-nez v0, 001e // +0004 │ │ +42b7b0: 0712 |001c: move-object v2, v1 │ │ +42b7b2: 2803 |001d: goto 0020 // +0003 │ │ +42b7b4: 5402 1b5f |001e: iget-object v2, v0, Lorg/purple/smoke/SipHashIdElement;.m_encryptionAlgorithm:Ljava/lang/String; // field@5f1b │ │ +42b7b8: 3900 0400 |0020: if-nez v0, 0024 // +0004 │ │ +42b7bc: 0710 |0022: move-object v0, v1 │ │ +42b7be: 2803 |0023: goto 0026 // +0003 │ │ +42b7c0: 5400 205f |0024: iget-object v0, v0, Lorg/purple/smoke/SipHashIdElement;.m_name:Ljava/lang/String; // field@5f20 │ │ +42b7c4: 5b50 ed5e |0026: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ +42b7c8: 5450 f35e |0028: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b7cc: 7110 dcbc 0000 |002a: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42b7d2: 0c00 |002d: move-result-object v0 │ │ +42b7d4: 7100 dbbc 0000 |002e: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42b7da: 0c03 |0031: move-result-object v3 │ │ +42b7dc: 5454 ef5e |0032: iget-object v4, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ +42b7e0: 6e30 08ba 3004 |0034: invoke-virtual {v0, v3, v4}, Lorg/purple/smoke/Database;.publicEncryptionKeyForSipHashId:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/security/PublicKey; // method@ba08 │ │ +42b7e6: 0c00 |0037: move-result-object v0 │ │ +42b7e8: 1203 |0038: const/4 v3, #int 0 // #0 │ │ +42b7ea: 7130 85b9 0302 |0039: invoke-static {v3, v0, v2}, Lorg/purple/smoke/Cryptography;.fancyKeyInformationOutput:(Ljava/security/PrivateKey;Ljava/security/PublicKey;Ljava/lang/String;)Ljava/lang/String; // method@b985 │ │ +42b7f0: 0c00 |003c: move-result-object v0 │ │ +42b7f2: 6e10 d35c 0000 |003d: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42b7f8: 0c00 |0040: move-result-object v0 │ │ +42b7fa: 5b50 f05e |0041: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_string1:Ljava/lang/String; // field@5ef0 │ │ +42b7fe: 5450 f35e |0043: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b802: 7110 dcbc 0000 |0045: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42b808: 0c00 |0048: move-result-object v0 │ │ +42b80a: 7100 dbbc 0000 |0049: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42b810: 0c02 |004c: move-result-object v2 │ │ +42b812: 5454 ef5e |004d: iget-object v4, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ +42b816: 6e30 0aba 2004 |004f: invoke-virtual {v0, v2, v4}, Lorg/purple/smoke/Database;.publicSignatureKeyForSipHashId:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/security/PublicKey; // method@ba0a │ │ +42b81c: 0c00 |0052: move-result-object v0 │ │ +42b81e: 7130 85b9 0301 |0053: invoke-static {v3, v0, v1}, Lorg/purple/smoke/Cryptography;.fancyKeyInformationOutput:(Ljava/security/PrivateKey;Ljava/security/PublicKey;Ljava/lang/String;)Ljava/lang/String; // method@b985 │ │ +42b824: 0c00 |0056: move-result-object v0 │ │ +42b826: 6e10 d35c 0000 |0057: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42b82c: 0c00 |005a: move-result-object v0 │ │ +42b82e: 5b50 f15e |005b: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_string2:Ljava/lang/String; // field@5ef1 │ │ +42b832: 5450 f35e |005d: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b836: 7110 dcbc 0000 |005f: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bcdc │ │ +42b83c: 0c00 |0062: move-result-object v0 │ │ +42b83e: 7100 dbbc 0000 |0063: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bcdb │ │ +42b844: 0c01 |0066: move-result-object v1 │ │ +42b846: 5452 ef5e |0067: iget-object v2, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ +42b84a: 6e30 f5b9 1002 |0069: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.keysSigned:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)[Ljava/lang/String; // method@b9f5 │ │ +42b850: 0c00 |006c: move-result-object v0 │ │ +42b852: 5b50 f25e |006d: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ +42b856: 5450 ed5e |006f: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ +42b85a: 6e10 c35c 0000 |0071: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42b860: 0a00 |0074: move-result v0 │ │ +42b862: 3800 0600 |0075: if-eqz v0, 007b // +0006 │ │ +42b866: 5450 ef5e |0077: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ +42b86a: 5b50 ed5e |0079: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ +42b86e: 5450 f25e |007b: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ +42b872: 3900 0a00 |007d: if-nez v0, 0087 // +000a │ │ +42b876: 1a00 2068 |007f: const-string v0, "false" // string@6820 │ │ +42b87a: 2420 a81b 0000 |0081: filled-new-array {v0, v0}, [Ljava/lang/String; // type@1ba8 │ │ +42b880: 0c00 |0084: move-result-object v0 │ │ +42b882: 5b50 f25e |0085: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ +42b886: 5450 f35e |0087: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b88a: 2201 031b |0089: new-instance v1, Lorg/purple/smoke/Settings$7SingleShot$1; // type@1b03 │ │ +42b88e: 7020 b5bc 5100 |008b: invoke-direct {v1, v5}, Lorg/purple/smoke/Settings$7SingleShot$1;.:(Lorg/purple/smoke/Settings$7SingleShot;)V // method@bcb5 │ │ +42b894: 6e20 06bd 1000 |008e: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd06 │ │ +42b89a: 0e00 |0091: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2967 │ │ 0x0006 line=2968 │ │ 0x0016 line=2971 │ │ 0x001e line=2975 │ │ 0x0024 line=2978 │ │ @@ -740164,18 +740163,18 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -42b8f8: |[42b8f8] org.purple.smoke.Settings$8.:(Lorg/purple/smoke/Settings;)V │ │ -42b908: 5b01 f55e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ -42b90c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42b912: 0e00 |0005: return-void │ │ +42b8f4: |[42b8f4] org.purple.smoke.Settings$8.:(Lorg/purple/smoke/Settings;)V │ │ +42b904: 5b01 f55e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ +42b908: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42b90e: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1694 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$8; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings; │ │ │ │ @@ -740185,58 +740184,58 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 8 │ │ ins : 2 │ │ outs : 5 │ │ insns size : 93 16-bit code units │ │ -42b914: |[42b914] org.purple.smoke.Settings$8.onClick:(Landroid/view/View;)V │ │ -42b924: 5460 f55e |0000: iget-object v0, v6, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ -42b928: 6e10 efbc 0000 |0002: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ -42b92e: 0a00 |0005: move-result v0 │ │ -42b930: 3800 0300 |0006: if-eqz v0, 0009 // +0003 │ │ -42b934: 0e00 |0008: return-void │ │ -42b936: 2200 7b0a |0009: new-instance v0, Landroid/widget/PopupWindow; // type@0a7b │ │ -42b93a: 5461 f55e |000b: iget-object v1, v6, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ -42b93e: 7020 325a 1000 |000d: invoke-direct {v0, v1}, Landroid/widget/PopupWindow;.:(Landroid/content/Context;)V // method@5a32 │ │ -42b944: 2201 970a |0010: new-instance v1, Landroid/widget/TextView; // type@0a97 │ │ -42b948: 5462 f55e |0012: iget-object v2, v6, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ -42b94c: 7020 ff5a 2100 |0014: invoke-direct {v1, v2}, Landroid/widget/TextView;.:(Landroid/content/Context;)V // method@5aff │ │ -42b952: 5462 f55e |0017: iget-object v2, v6, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ -42b956: 6e10 ebbc 0200 |0019: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.getResources:()Landroid/content/res/Resources; // method@bceb │ │ -42b95c: 0c02 |001c: move-result-object v2 │ │ -42b95e: 6e10 0e02 0200 |001d: invoke-virtual {v2}, Landroid/content/res/Resources;.getDisplayMetrics:()Landroid/util/DisplayMetrics; // method@020e │ │ -42b964: 0c02 |0020: move-result-object v2 │ │ -42b966: 5222 992c |0021: iget v2, v2, Landroid/util/DisplayMetrics;.density:F // field@2c99 │ │ -42b96a: 1303 e800 |0023: const/16 v3, #int 232 // #e8 │ │ -42b96e: 1304 ea00 |0025: const/16 v4, #int 234 // #ea │ │ -42b972: 1305 f600 |0027: const/16 v5, #int 246 // #f6 │ │ -42b976: 7130 c902 4305 |0029: invoke-static {v3, v4, v5}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ -42b97c: 0a03 |002c: move-result v3 │ │ -42b97e: 6e20 275b 3100 |002d: invoke-virtual {v1, v3}, Landroid/widget/TextView;.setBackgroundColor:(I)V // method@5b27 │ │ -42b984: 1503 2041 |0030: const/high16 v3, #int 1092616192 // #4120 │ │ -42b988: a802 0203 |0032: mul-float v2, v2, v3 │ │ -42b98c: 8722 |0034: float-to-int v2, v2 │ │ -42b98e: 6e52 415b 2122 |0035: invoke-virtual {v1, v2, v2, v2, v2}, Landroid/widget/TextView;.setPaddingRelative:(IIII)V // method@5b41 │ │ -42b994: 1a02 0919 |0038: const-string v2, "Echo queues allow Smoke to echo internal data from local neighbor to local neighbor. Each Echo queue may contain at most 256 messages. Please note that the Echo mechanism may burden a device. A neighbor will echo data if it discovers that the data are not intended for it." // string@1909 │ │ -42b998: 6e20 495b 2100 |003a: invoke-virtual {v1, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42b99e: 1502 8041 |003d: const/high16 v2, #int 1098907648 // #4180 │ │ -42b9a2: 6e20 4f5b 2100 |003f: invoke-virtual {v1, v2}, Landroid/widget/TextView;.setTextSize:(F)V // method@5b4f │ │ -42b9a8: 6e20 445a 1000 |0042: invoke-virtual {v0, v1}, Landroid/widget/PopupWindow;.setContentView:(Landroid/view/View;)V // method@5a44 │ │ -42b9ae: 1211 |0045: const/4 v1, #int 1 // #1 │ │ -42b9b0: 6e20 4b5a 1000 |0046: invoke-virtual {v0, v1}, Landroid/widget/PopupWindow;.setOutsideTouchable:(Z)V // method@5a4b │ │ -42b9b6: 6001 6d00 |0049: sget v1, Landroid/os/Build$VERSION;.SDK_INT:I // field@006d │ │ -42b9ba: 1302 1700 |004b: const/16 v2, #int 23 // #17 │ │ -42b9be: 3521 0c00 |004d: if-ge v1, v2, 0059 // +000c │ │ -42b9c2: 1301 c201 |004f: const/16 v1, #int 450 // #1c2 │ │ -42b9c6: 6e20 485a 1000 |0051: invoke-virtual {v0, v1}, Landroid/widget/PopupWindow;.setHeight:(I)V // method@5a48 │ │ -42b9cc: 1301 bc02 |0054: const/16 v1, #int 700 // #2bc │ │ -42b9d0: 6e20 4f5a 1000 |0056: invoke-virtual {v0, v1}, Landroid/widget/PopupWindow;.setWidth:(I)V // method@5a4f │ │ -42b9d6: 6e20 515a 7000 |0059: invoke-virtual {v0, v7}, Landroid/widget/PopupWindow;.showAsDropDown:(Landroid/view/View;)V // method@5a51 │ │ -42b9dc: 0e00 |005c: return-void │ │ +42b910: |[42b910] org.purple.smoke.Settings$8.onClick:(Landroid/view/View;)V │ │ +42b920: 5460 f55e |0000: iget-object v0, v6, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ +42b924: 6e10 efbc 0000 |0002: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ +42b92a: 0a00 |0005: move-result v0 │ │ +42b92c: 3800 0300 |0006: if-eqz v0, 0009 // +0003 │ │ +42b930: 0e00 |0008: return-void │ │ +42b932: 2200 7b0a |0009: new-instance v0, Landroid/widget/PopupWindow; // type@0a7b │ │ +42b936: 5461 f55e |000b: iget-object v1, v6, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ +42b93a: 7020 325a 1000 |000d: invoke-direct {v0, v1}, Landroid/widget/PopupWindow;.:(Landroid/content/Context;)V // method@5a32 │ │ +42b940: 2201 970a |0010: new-instance v1, Landroid/widget/TextView; // type@0a97 │ │ +42b944: 5462 f55e |0012: iget-object v2, v6, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ +42b948: 7020 ff5a 2100 |0014: invoke-direct {v1, v2}, Landroid/widget/TextView;.:(Landroid/content/Context;)V // method@5aff │ │ +42b94e: 5462 f55e |0017: iget-object v2, v6, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ +42b952: 6e10 ebbc 0200 |0019: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.getResources:()Landroid/content/res/Resources; // method@bceb │ │ +42b958: 0c02 |001c: move-result-object v2 │ │ +42b95a: 6e10 0e02 0200 |001d: invoke-virtual {v2}, Landroid/content/res/Resources;.getDisplayMetrics:()Landroid/util/DisplayMetrics; // method@020e │ │ +42b960: 0c02 |0020: move-result-object v2 │ │ +42b962: 5222 992c |0021: iget v2, v2, Landroid/util/DisplayMetrics;.density:F // field@2c99 │ │ +42b966: 1303 e800 |0023: const/16 v3, #int 232 // #e8 │ │ +42b96a: 1304 ea00 |0025: const/16 v4, #int 234 // #ea │ │ +42b96e: 1305 f600 |0027: const/16 v5, #int 246 // #f6 │ │ +42b972: 7130 c902 4305 |0029: invoke-static {v3, v4, v5}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ +42b978: 0a03 |002c: move-result v3 │ │ +42b97a: 6e20 275b 3100 |002d: invoke-virtual {v1, v3}, Landroid/widget/TextView;.setBackgroundColor:(I)V // method@5b27 │ │ +42b980: 1503 2041 |0030: const/high16 v3, #int 1092616192 // #4120 │ │ +42b984: a802 0203 |0032: mul-float v2, v2, v3 │ │ +42b988: 8722 |0034: float-to-int v2, v2 │ │ +42b98a: 6e52 415b 2122 |0035: invoke-virtual {v1, v2, v2, v2, v2}, Landroid/widget/TextView;.setPaddingRelative:(IIII)V // method@5b41 │ │ +42b990: 1a02 0919 |0038: const-string v2, "Echo queues allow Smoke to echo internal data from local neighbor to local neighbor. Each Echo queue may contain at most 256 messages. Please note that the Echo mechanism may burden a device. A neighbor will echo data if it discovers that the data are not intended for it." // string@1909 │ │ +42b994: 6e20 495b 2100 |003a: invoke-virtual {v1, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42b99a: 1502 8041 |003d: const/high16 v2, #int 1098907648 // #4180 │ │ +42b99e: 6e20 4f5b 2100 |003f: invoke-virtual {v1, v2}, Landroid/widget/TextView;.setTextSize:(F)V // method@5b4f │ │ +42b9a4: 6e20 445a 1000 |0042: invoke-virtual {v0, v1}, Landroid/widget/PopupWindow;.setContentView:(Landroid/view/View;)V // method@5a44 │ │ +42b9aa: 1211 |0045: const/4 v1, #int 1 // #1 │ │ +42b9ac: 6e20 4b5a 1000 |0046: invoke-virtual {v0, v1}, Landroid/widget/PopupWindow;.setOutsideTouchable:(Z)V // method@5a4b │ │ +42b9b2: 6001 6d00 |0049: sget v1, Landroid/os/Build$VERSION;.SDK_INT:I // field@006d │ │ +42b9b6: 1302 1700 |004b: const/16 v2, #int 23 // #17 │ │ +42b9ba: 3521 0c00 |004d: if-ge v1, v2, 0059 // +000c │ │ +42b9be: 1301 c201 |004f: const/16 v1, #int 450 // #1c2 │ │ +42b9c2: 6e20 485a 1000 |0051: invoke-virtual {v0, v1}, Landroid/widget/PopupWindow;.setHeight:(I)V // method@5a48 │ │ +42b9c8: 1301 bc02 |0054: const/16 v1, #int 700 // #2bc │ │ +42b9cc: 6e20 4f5a 1000 |0056: invoke-virtual {v0, v1}, Landroid/widget/PopupWindow;.setWidth:(I)V // method@5a4f │ │ +42b9d2: 6e20 515a 7000 |0059: invoke-virtual {v0, v7}, Landroid/widget/PopupWindow;.showAsDropDown:(Landroid/view/View;)V // method@5a51 │ │ +42b9d8: 0e00 |005c: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1697 │ │ 0x0009 line=1700 │ │ 0x0010 line=1701 │ │ 0x0017 line=1702 │ │ 0x001d line=1703 │ │ @@ -740289,18 +740288,18 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -42b9e0: |[42b9e0] org.purple.smoke.Settings$9.:(Lorg/purple/smoke/Settings;)V │ │ -42b9f0: 5b01 f65e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$9;.this$0:Lorg/purple/smoke/Settings; // field@5ef6 │ │ -42b9f4: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42b9fa: 0e00 |0005: return-void │ │ +42b9dc: |[42b9dc] org.purple.smoke.Settings$9.:(Lorg/purple/smoke/Settings;)V │ │ +42b9ec: 5b01 f65e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$9;.this$0:Lorg/purple/smoke/Settings; // field@5ef6 │ │ +42b9f0: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42b9f6: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1736 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$9; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings; │ │ │ │ @@ -740310,24 +740309,24 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 17 16-bit code units │ │ -42b9fc: |[42b9fc] org.purple.smoke.Settings$9.onClick:(Landroid/view/View;)V │ │ -42ba0c: 5412 f65e |0000: iget-object v2, v1, Lorg/purple/smoke/Settings$9;.this$0:Lorg/purple/smoke/Settings; // field@5ef6 │ │ -42ba10: 6e10 efbc 0200 |0002: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ -42ba16: 0a02 |0005: move-result v2 │ │ -42ba18: 3802 0300 |0006: if-eqz v2, 0009 // +0003 │ │ -42ba1c: 0e00 |0008: return-void │ │ -42ba1e: 5412 f65e |0009: iget-object v2, v1, Lorg/purple/smoke/Settings$9;.this$0:Lorg/purple/smoke/Settings; // field@5ef6 │ │ -42ba22: 1a00 0000 |000b: const-string v0, "" // string@0000 │ │ -42ba26: 7120 d3bc 0200 |000d: invoke-static {v2, v0}, Lorg/purple/smoke/Settings;.access$1800:(Lorg/purple/smoke/Settings;Ljava/lang/String;)V // method@bcd3 │ │ -42ba2c: 0e00 |0010: return-void │ │ +42b9f8: |[42b9f8] org.purple.smoke.Settings$9.onClick:(Landroid/view/View;)V │ │ +42ba08: 5412 f65e |0000: iget-object v2, v1, Lorg/purple/smoke/Settings$9;.this$0:Lorg/purple/smoke/Settings; // field@5ef6 │ │ +42ba0c: 6e10 efbc 0200 |0002: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ +42ba12: 0a02 |0005: move-result v2 │ │ +42ba14: 3802 0300 |0006: if-eqz v2, 0009 // +0003 │ │ +42ba18: 0e00 |0008: return-void │ │ +42ba1a: 5412 f65e |0009: iget-object v2, v1, Lorg/purple/smoke/Settings$9;.this$0:Lorg/purple/smoke/Settings; // field@5ef6 │ │ +42ba1e: 1a00 0000 |000b: const-string v0, "" // string@0000 │ │ +42ba22: 7120 d3bc 0200 |000d: invoke-static {v2, v0}, Lorg/purple/smoke/Settings;.access$1800:(Lorg/purple/smoke/Settings;Ljava/lang/String;)V // method@bcd3 │ │ +42ba28: 0e00 |0010: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1739 │ │ 0x0009 line=1742 │ │ locals : │ │ 0x0000 - 0x0011 reg=1 this Lorg/purple/smoke/Settings$9; │ │ 0x0000 - 0x0011 reg=2 (null) Landroid/view/View; │ │ @@ -740402,17 +740401,17 @@ │ │ type : '()V' │ │ access : 0x10002 (PRIVATE CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -42ba30: |[42ba30] org.purple.smoke.Settings$ContextMenuEnumerator.:()V │ │ -42ba40: 7010 8f5c 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42ba46: 0e00 |0003: return-void │ │ +42ba2c: |[42ba2c] org.purple.smoke.Settings$ContextMenuEnumerator.:()V │ │ +42ba3c: 7010 8f5c 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42ba42: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=86 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lorg/purple/smoke/Settings$ContextMenuEnumerator; │ │ │ │ Virtual methods - │ │ @@ -740459,19 +740458,19 @@ │ │ type : '(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 1 │ │ insns size : 8 16-bit code units │ │ -42ba48: |[42ba48] org.purple.smoke.Settings$PopulateNeighbors.:(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V │ │ -42ba58: 5b01 005f |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$PopulateNeighbors;.this$0:Lorg/purple/smoke/Settings; // field@5f00 │ │ -42ba5c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42ba62: 5b02 ff5e |0005: iput-object v2, v0, Lorg/purple/smoke/Settings$PopulateNeighbors;.m_arrayList:Ljava/util/ArrayList; // field@5eff │ │ -42ba66: 0e00 |0007: return-void │ │ +42ba44: |[42ba44] org.purple.smoke.Settings$PopulateNeighbors.:(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V │ │ +42ba54: 5b01 005f |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$PopulateNeighbors;.this$0:Lorg/purple/smoke/Settings; // field@5f00 │ │ +42ba58: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42ba5e: 5b02 ff5e |0005: iput-object v2, v0, Lorg/purple/smoke/Settings$PopulateNeighbors;.m_arrayList:Ljava/util/ArrayList; // field@5eff │ │ +42ba62: 0e00 |0007: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=103 │ │ 0x0005 line=104 │ │ locals : │ │ 0x0000 - 0x0008 reg=0 this Lorg/purple/smoke/Settings$PopulateNeighbors; │ │ 0x0000 - 0x0008 reg=1 (null) Lorg/purple/smoke/Settings; │ │ @@ -740483,22 +740482,22 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 15 16-bit code units │ │ -42ba68: |[42ba68] org.purple.smoke.Settings$PopulateNeighbors.run:()V │ │ -42ba78: 5420 005f |0000: iget-object v0, v2, Lorg/purple/smoke/Settings$PopulateNeighbors;.this$0:Lorg/purple/smoke/Settings; // field@5f00 │ │ -42ba7c: 5421 ff5e |0002: iget-object v1, v2, Lorg/purple/smoke/Settings$PopulateNeighbors;.m_arrayList:Ljava/util/ArrayList; // field@5eff │ │ -42ba80: 7120 c9bc 1000 |0004: invoke-static {v0, v1}, Lorg/purple/smoke/Settings;.access$000:(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V // method@bcc9 │ │ -42ba86: 5420 ff5e |0007: iget-object v0, v2, Lorg/purple/smoke/Settings$PopulateNeighbors;.m_arrayList:Ljava/util/ArrayList; // field@5eff │ │ -42ba8a: 3800 0500 |0009: if-eqz v0, 000e // +0005 │ │ -42ba8e: 6e10 9f5f 0000 |000b: invoke-virtual {v0}, Ljava/util/ArrayList;.clear:()V // method@5f9f │ │ -42ba94: 0e00 |000e: return-void │ │ +42ba64: |[42ba64] org.purple.smoke.Settings$PopulateNeighbors.run:()V │ │ +42ba74: 5420 005f |0000: iget-object v0, v2, Lorg/purple/smoke/Settings$PopulateNeighbors;.this$0:Lorg/purple/smoke/Settings; // field@5f00 │ │ +42ba78: 5421 ff5e |0002: iget-object v1, v2, Lorg/purple/smoke/Settings$PopulateNeighbors;.m_arrayList:Ljava/util/ArrayList; // field@5eff │ │ +42ba7c: 7120 c9bc 1000 |0004: invoke-static {v0, v1}, Lorg/purple/smoke/Settings;.access$000:(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V // method@bcc9 │ │ +42ba82: 5420 ff5e |0007: iget-object v0, v2, Lorg/purple/smoke/Settings$PopulateNeighbors;.m_arrayList:Ljava/util/ArrayList; // field@5eff │ │ +42ba86: 3800 0500 |0009: if-eqz v0, 000e // +0005 │ │ +42ba8a: 6e10 9f5f 0000 |000b: invoke-virtual {v0}, Ljava/util/ArrayList;.clear:()V // method@5f9f │ │ +42ba90: 0e00 |000e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=110 │ │ 0x0007 line=112 │ │ 0x000b line=113 │ │ locals : │ │ 0x0000 - 0x000f reg=2 this Lorg/purple/smoke/Settings$PopulateNeighbors; │ │ @@ -740537,18 +740536,18 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -42ba98: |[42ba98] org.purple.smoke.Settings$SettingsBroadcastReceiver.:(Lorg/purple/smoke/Settings;)V │ │ -42baa8: 5b01 015f |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42baac: 7010 4201 0000 |0002: invoke-direct {v0}, Landroid/content/BroadcastReceiver;.:()V // method@0142 │ │ -42bab2: 0e00 |0005: return-void │ │ +42ba94: |[42ba94] org.purple.smoke.Settings$SettingsBroadcastReceiver.:(Lorg/purple/smoke/Settings;)V │ │ +42baa4: 5b01 015f |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42baa8: 7010 4201 0000 |0002: invoke-direct {v0}, Landroid/content/BroadcastReceiver;.:()V // method@0142 │ │ +42baae: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=120 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings; │ │ │ │ @@ -740558,134 +740557,134 @@ │ │ type : '(Landroid/content/Context;Landroid/content/Intent;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 280 16-bit code units │ │ -42bab4: |[42bab4] org.purple.smoke.Settings$SettingsBroadcastReceiver.onReceive:(Landroid/content/Context;Landroid/content/Intent;)V │ │ -42bac4: 3804 d500 |0000: if-eqz v4, 00d5 // +00d5 │ │ -42bac8: 6e10 a501 0400 |0002: invoke-virtual {v4}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ -42bace: 0c03 |0005: move-result-object v3 │ │ -42bad0: 3903 0400 |0006: if-nez v3, 000a // +0004 │ │ -42bad4: 2900 cd00 |0008: goto/16 00d5 // +00cd │ │ -42bad8: 6e10 a501 0400 |000a: invoke-virtual {v4}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ -42bade: 0c03 |000d: move-result-object v3 │ │ -42bae0: 6e10 bf5c 0300 |000e: invoke-virtual {v3}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -42bae6: 12f0 |0011: const/4 v0, #int -1 // #ff │ │ -42bae8: 6e10 bf5c 0300 |0012: invoke-virtual {v3}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -42baee: 0a01 |0015: move-result v1 │ │ -42baf0: 2c01 c000 0000 |0016: sparse-switch v1, 000000d6 // +000000c0 │ │ -42baf6: 2900 7500 |0019: goto/16 008e // +0075 │ │ -42bafa: 1a01 fc91 |001b: const-string v1, "org.purple.smoke.neighbor_aborted" // string@91fc │ │ -42bafe: 6e20 b85c 1300 |001d: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bb04: 0a03 |0020: move-result v3 │ │ -42bb06: 3903 0400 |0021: if-nez v3, 0025 // +0004 │ │ -42bb0a: 2900 6b00 |0023: goto/16 008e // +006b │ │ -42bb0e: 1300 0900 |0025: const/16 v0, #int 9 // #9 │ │ -42bb12: 2900 6700 |0027: goto/16 008e // +0067 │ │ -42bb16: 1a01 0892 |0029: const-string v1, "org.purple.smoke.state_participants_populated" // string@9208 │ │ -42bb1a: 6e20 b85c 1300 |002b: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bb20: 0a03 |002e: move-result v3 │ │ -42bb22: 3903 0400 |002f: if-nez v3, 0033 // +0004 │ │ -42bb26: 2900 5d00 |0031: goto/16 008e // +005d │ │ -42bb2a: 1300 0800 |0033: const/16 v0, #int 8 // #8 │ │ -42bb2e: 2900 5900 |0035: goto/16 008e // +0059 │ │ -42bb32: 1a01 0792 |0037: const-string v1, "org.purple.smoke.siphash_share_confirmation" // string@9207 │ │ -42bb36: 6e20 b85c 1300 |0039: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bb3c: 0a03 |003c: move-result v3 │ │ -42bb3e: 3903 0300 |003d: if-nez v3, 0040 // +0003 │ │ -42bb42: 284f |003f: goto 008e // +004f │ │ -42bb44: 1270 |0040: const/4 v0, #int 7 // #7 │ │ -42bb46: 284d |0041: goto 008e // +004d │ │ -42bb48: 1a01 ff91 |0042: const-string v1, "org.purple.smoke.network_connected" // string@91ff │ │ -42bb4c: 6e20 b85c 1300 |0044: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bb52: 0a03 |0047: move-result v3 │ │ -42bb54: 3903 0300 |0048: if-nez v3, 004b // +0003 │ │ -42bb58: 2844 |004a: goto 008e // +0044 │ │ -42bb5a: 1260 |004b: const/4 v0, #int 6 // #6 │ │ -42bb5c: 2842 |004c: goto 008e // +0042 │ │ -42bb5e: 1a01 f491 |004d: const-string v1, "org.purple.smoke.chat_message" // string@91f4 │ │ -42bb62: 6e20 b85c 1300 |004f: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bb68: 0a03 |0052: move-result v3 │ │ -42bb6a: 3903 0300 |0053: if-nez v3, 0056 // +0003 │ │ -42bb6e: 2839 |0055: goto 008e // +0039 │ │ -42bb70: 1250 |0056: const/4 v0, #int 5 // #5 │ │ -42bb72: 2837 |0057: goto 008e // +0037 │ │ -42bb74: 1a01 0c92 |0058: const-string v1, "org.purple.smoke.time" // string@920c │ │ -42bb78: 6e20 b85c 1300 |005a: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bb7e: 0a03 |005d: move-result v3 │ │ -42bb80: 3903 0300 |005e: if-nez v3, 0061 // +0003 │ │ -42bb84: 282e |0060: goto 008e // +002e │ │ -42bb86: 1240 |0061: const/4 v0, #int 4 // #4 │ │ -42bb88: 282c |0062: goto 008e // +002c │ │ -42bb8a: 1a01 0292 |0063: const-string v1, "org.purple.smoke.populate_participants" // string@9202 │ │ -42bb8e: 6e20 b85c 1300 |0065: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bb94: 0a03 |0068: move-result v3 │ │ -42bb96: 3903 0300 |0069: if-nez v3, 006c // +0003 │ │ -42bb9a: 2823 |006b: goto 008e // +0023 │ │ -42bb9c: 1230 |006c: const/4 v0, #int 3 // #3 │ │ -42bb9e: 2821 |006d: goto 008e // +0021 │ │ -42bba0: 1a01 fe91 |006e: const-string v1, "org.purple.smoke.neighbor_disconnected" // string@91fe │ │ -42bba4: 6e20 b85c 1300 |0070: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bbaa: 0a03 |0073: move-result v3 │ │ -42bbac: 3903 0300 |0074: if-nez v3, 0077 // +0003 │ │ -42bbb0: 2818 |0076: goto 008e // +0018 │ │ -42bbb2: 1220 |0077: const/4 v0, #int 2 // #2 │ │ -42bbb4: 2816 |0078: goto 008e // +0016 │ │ -42bbb6: 1a01 fd91 |0079: const-string v1, "org.purple.smoke.neighbor_connected" // string@91fd │ │ -42bbba: 6e20 b85c 1300 |007b: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bbc0: 0a03 |007e: move-result v3 │ │ -42bbc2: 3903 0300 |007f: if-nez v3, 0082 // +0003 │ │ -42bbc6: 280d |0081: goto 008e // +000d │ │ -42bbc8: 1210 |0082: const/4 v0, #int 1 // #1 │ │ -42bbca: 280b |0083: goto 008e // +000b │ │ -42bbcc: 1a01 0092 |0084: const-string v1, "org.purple.smoke.network_disconnected" // string@9200 │ │ -42bbd0: 6e20 b85c 1300 |0086: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bbd6: 0a03 |0089: move-result v3 │ │ -42bbd8: 3903 0300 |008a: if-nez v3, 008d // +0003 │ │ -42bbdc: 2802 |008c: goto 008e // +0002 │ │ -42bbde: 1200 |008d: const/4 v0, #int 0 // #0 │ │ -42bbe0: 1403 9900 087f |008e: const v3, #float 1.80778e+38 // #7f080099 │ │ -42bbe6: 2b00 6f00 0000 |0091: packed-switch v0, 00000100 // +0000006f │ │ -42bbec: 2841 |0094: goto 00d5 // +0041 │ │ -42bbee: 5423 015f |0095: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bbf2: 6e10 eebc 0300 |0097: invoke-virtual {v3}, Lorg/purple/smoke/Settings;.invalidateOptionsMenu:()V // method@bcee │ │ -42bbf8: 5423 015f |009a: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bbfc: 7110 d5bc 0300 |009c: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcd5 │ │ -42bc02: 2836 |009f: goto 00d5 // +0036 │ │ -42bc04: 5420 015f |00a0: iget-object v0, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bc08: 6e20 e5bc 3000 |00a2: invoke-virtual {v0, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42bc0e: 0c03 |00a5: move-result-object v3 │ │ -42bc10: 7130 f6bb 4003 |00a6: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbf6 │ │ -42bc16: 282c |00a9: goto 00d5 // +002c │ │ -42bc18: 5420 015f |00aa: iget-object v0, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bc1c: 6e20 e5bc 3000 |00ac: invoke-virtual {v0, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42bc22: 0c03 |00af: move-result-object v3 │ │ -42bc24: 7130 f6bb 4003 |00b0: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbf6 │ │ -42bc2a: 2822 |00b3: goto 00d5 // +0022 │ │ -42bc2c: 5420 015f |00b4: iget-object v0, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bc30: 6e20 e5bc 3000 |00b6: invoke-virtual {v0, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42bc36: 0c03 |00b9: move-result-object v3 │ │ -42bc38: 7130 f6bb 4003 |00ba: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbf6 │ │ -42bc3e: 2818 |00bd: goto 00d5 // +0018 │ │ -42bc40: 5423 015f |00be: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bc44: 7110 d5bc 0300 |00c0: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcd5 │ │ -42bc4a: 2812 |00c3: goto 00d5 // +0012 │ │ -42bc4c: 5423 015f |00c4: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bc50: 7110 cabc 0300 |00c6: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$100:(Lorg/purple/smoke/Settings;)V // method@bcca │ │ -42bc56: 280c |00c9: goto 00d5 // +000c │ │ -42bc58: 5423 015f |00ca: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bc5c: 7110 cabc 0300 |00cc: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$100:(Lorg/purple/smoke/Settings;)V // method@bcca │ │ -42bc62: 2806 |00cf: goto 00d5 // +0006 │ │ -42bc64: 5423 015f |00d0: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bc68: 7110 cabc 0300 |00d2: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$100:(Lorg/purple/smoke/Settings;)V // method@bcca │ │ -42bc6e: 0e00 |00d5: return-void │ │ -42bc70: 0002 0a00 b350 d3ac c38f deb3 411f ... |00d6: sparse-switch-data (42 units) │ │ -42bcc4: 0001 0a00 0000 0000 3f00 0000 3900 ... |0100: packed-switch-data (24 units) │ │ +42bab0: |[42bab0] org.purple.smoke.Settings$SettingsBroadcastReceiver.onReceive:(Landroid/content/Context;Landroid/content/Intent;)V │ │ +42bac0: 3804 d500 |0000: if-eqz v4, 00d5 // +00d5 │ │ +42bac4: 6e10 a501 0400 |0002: invoke-virtual {v4}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ +42baca: 0c03 |0005: move-result-object v3 │ │ +42bacc: 3903 0400 |0006: if-nez v3, 000a // +0004 │ │ +42bad0: 2900 cd00 |0008: goto/16 00d5 // +00cd │ │ +42bad4: 6e10 a501 0400 |000a: invoke-virtual {v4}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ +42bada: 0c03 |000d: move-result-object v3 │ │ +42badc: 6e10 bf5c 0300 |000e: invoke-virtual {v3}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +42bae2: 12f0 |0011: const/4 v0, #int -1 // #ff │ │ +42bae4: 6e10 bf5c 0300 |0012: invoke-virtual {v3}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +42baea: 0a01 |0015: move-result v1 │ │ +42baec: 2c01 c000 0000 |0016: sparse-switch v1, 000000d6 // +000000c0 │ │ +42baf2: 2900 7500 |0019: goto/16 008e // +0075 │ │ +42baf6: 1a01 fc91 |001b: const-string v1, "org.purple.smoke.neighbor_aborted" // string@91fc │ │ +42bafa: 6e20 b85c 1300 |001d: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bb00: 0a03 |0020: move-result v3 │ │ +42bb02: 3903 0400 |0021: if-nez v3, 0025 // +0004 │ │ +42bb06: 2900 6b00 |0023: goto/16 008e // +006b │ │ +42bb0a: 1300 0900 |0025: const/16 v0, #int 9 // #9 │ │ +42bb0e: 2900 6700 |0027: goto/16 008e // +0067 │ │ +42bb12: 1a01 0892 |0029: const-string v1, "org.purple.smoke.state_participants_populated" // string@9208 │ │ +42bb16: 6e20 b85c 1300 |002b: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bb1c: 0a03 |002e: move-result v3 │ │ +42bb1e: 3903 0400 |002f: if-nez v3, 0033 // +0004 │ │ +42bb22: 2900 5d00 |0031: goto/16 008e // +005d │ │ +42bb26: 1300 0800 |0033: const/16 v0, #int 8 // #8 │ │ +42bb2a: 2900 5900 |0035: goto/16 008e // +0059 │ │ +42bb2e: 1a01 0792 |0037: const-string v1, "org.purple.smoke.siphash_share_confirmation" // string@9207 │ │ +42bb32: 6e20 b85c 1300 |0039: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bb38: 0a03 |003c: move-result v3 │ │ +42bb3a: 3903 0300 |003d: if-nez v3, 0040 // +0003 │ │ +42bb3e: 284f |003f: goto 008e // +004f │ │ +42bb40: 1270 |0040: const/4 v0, #int 7 // #7 │ │ +42bb42: 284d |0041: goto 008e // +004d │ │ +42bb44: 1a01 ff91 |0042: const-string v1, "org.purple.smoke.network_connected" // string@91ff │ │ +42bb48: 6e20 b85c 1300 |0044: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bb4e: 0a03 |0047: move-result v3 │ │ +42bb50: 3903 0300 |0048: if-nez v3, 004b // +0003 │ │ +42bb54: 2844 |004a: goto 008e // +0044 │ │ +42bb56: 1260 |004b: const/4 v0, #int 6 // #6 │ │ +42bb58: 2842 |004c: goto 008e // +0042 │ │ +42bb5a: 1a01 f491 |004d: const-string v1, "org.purple.smoke.chat_message" // string@91f4 │ │ +42bb5e: 6e20 b85c 1300 |004f: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bb64: 0a03 |0052: move-result v3 │ │ +42bb66: 3903 0300 |0053: if-nez v3, 0056 // +0003 │ │ +42bb6a: 2839 |0055: goto 008e // +0039 │ │ +42bb6c: 1250 |0056: const/4 v0, #int 5 // #5 │ │ +42bb6e: 2837 |0057: goto 008e // +0037 │ │ +42bb70: 1a01 0c92 |0058: const-string v1, "org.purple.smoke.time" // string@920c │ │ +42bb74: 6e20 b85c 1300 |005a: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bb7a: 0a03 |005d: move-result v3 │ │ +42bb7c: 3903 0300 |005e: if-nez v3, 0061 // +0003 │ │ +42bb80: 282e |0060: goto 008e // +002e │ │ +42bb82: 1240 |0061: const/4 v0, #int 4 // #4 │ │ +42bb84: 282c |0062: goto 008e // +002c │ │ +42bb86: 1a01 0292 |0063: const-string v1, "org.purple.smoke.populate_participants" // string@9202 │ │ +42bb8a: 6e20 b85c 1300 |0065: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bb90: 0a03 |0068: move-result v3 │ │ +42bb92: 3903 0300 |0069: if-nez v3, 006c // +0003 │ │ +42bb96: 2823 |006b: goto 008e // +0023 │ │ +42bb98: 1230 |006c: const/4 v0, #int 3 // #3 │ │ +42bb9a: 2821 |006d: goto 008e // +0021 │ │ +42bb9c: 1a01 fe91 |006e: const-string v1, "org.purple.smoke.neighbor_disconnected" // string@91fe │ │ +42bba0: 6e20 b85c 1300 |0070: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bba6: 0a03 |0073: move-result v3 │ │ +42bba8: 3903 0300 |0074: if-nez v3, 0077 // +0003 │ │ +42bbac: 2818 |0076: goto 008e // +0018 │ │ +42bbae: 1220 |0077: const/4 v0, #int 2 // #2 │ │ +42bbb0: 2816 |0078: goto 008e // +0016 │ │ +42bbb2: 1a01 fd91 |0079: const-string v1, "org.purple.smoke.neighbor_connected" // string@91fd │ │ +42bbb6: 6e20 b85c 1300 |007b: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bbbc: 0a03 |007e: move-result v3 │ │ +42bbbe: 3903 0300 |007f: if-nez v3, 0082 // +0003 │ │ +42bbc2: 280d |0081: goto 008e // +000d │ │ +42bbc4: 1210 |0082: const/4 v0, #int 1 // #1 │ │ +42bbc6: 280b |0083: goto 008e // +000b │ │ +42bbc8: 1a01 0092 |0084: const-string v1, "org.purple.smoke.network_disconnected" // string@9200 │ │ +42bbcc: 6e20 b85c 1300 |0086: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bbd2: 0a03 |0089: move-result v3 │ │ +42bbd4: 3903 0300 |008a: if-nez v3, 008d // +0003 │ │ +42bbd8: 2802 |008c: goto 008e // +0002 │ │ +42bbda: 1200 |008d: const/4 v0, #int 0 // #0 │ │ +42bbdc: 1403 9900 087f |008e: const v3, #float 1.80778e+38 // #7f080099 │ │ +42bbe2: 2b00 6f00 0000 |0091: packed-switch v0, 00000100 // +0000006f │ │ +42bbe8: 2841 |0094: goto 00d5 // +0041 │ │ +42bbea: 5423 015f |0095: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bbee: 6e10 eebc 0300 |0097: invoke-virtual {v3}, Lorg/purple/smoke/Settings;.invalidateOptionsMenu:()V // method@bcee │ │ +42bbf4: 5423 015f |009a: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bbf8: 7110 d5bc 0300 |009c: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcd5 │ │ +42bbfe: 2836 |009f: goto 00d5 // +0036 │ │ +42bc00: 5420 015f |00a0: iget-object v0, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bc04: 6e20 e5bc 3000 |00a2: invoke-virtual {v0, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42bc0a: 0c03 |00a5: move-result-object v3 │ │ +42bc0c: 7130 f6bb 4003 |00a6: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbf6 │ │ +42bc12: 282c |00a9: goto 00d5 // +002c │ │ +42bc14: 5420 015f |00aa: iget-object v0, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bc18: 6e20 e5bc 3000 |00ac: invoke-virtual {v0, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42bc1e: 0c03 |00af: move-result-object v3 │ │ +42bc20: 7130 f6bb 4003 |00b0: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbf6 │ │ +42bc26: 2822 |00b3: goto 00d5 // +0022 │ │ +42bc28: 5420 015f |00b4: iget-object v0, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bc2c: 6e20 e5bc 3000 |00b6: invoke-virtual {v0, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42bc32: 0c03 |00b9: move-result-object v3 │ │ +42bc34: 7130 f6bb 4003 |00ba: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbf6 │ │ +42bc3a: 2818 |00bd: goto 00d5 // +0018 │ │ +42bc3c: 5423 015f |00be: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bc40: 7110 d5bc 0300 |00c0: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcd5 │ │ +42bc46: 2812 |00c3: goto 00d5 // +0012 │ │ +42bc48: 5423 015f |00c4: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bc4c: 7110 cabc 0300 |00c6: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$100:(Lorg/purple/smoke/Settings;)V // method@bcca │ │ +42bc52: 280c |00c9: goto 00d5 // +000c │ │ +42bc54: 5423 015f |00ca: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bc58: 7110 cabc 0300 |00cc: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$100:(Lorg/purple/smoke/Settings;)V // method@bcca │ │ +42bc5e: 2806 |00cf: goto 00d5 // +0006 │ │ +42bc60: 5423 015f |00d0: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bc64: 7110 cabc 0300 |00d2: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$100:(Lorg/purple/smoke/Settings;)V // method@bcca │ │ +42bc6a: 0e00 |00d5: return-void │ │ +42bc6c: 0002 0a00 b350 d3ac c38f deb3 411f ... |00d6: sparse-switch-data (42 units) │ │ +42bcc0: 0001 0a00 0000 0000 3f00 0000 3900 ... |0100: packed-switch-data (24 units) │ │ catches : (none) │ │ positions : │ │ 0x0002 line=126 │ │ 0x000a line=129 │ │ 0x0095 line=154 │ │ 0x009a line=155 │ │ 0x00a0 line=150 │ │ @@ -740791,25 +740790,25 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 32 16-bit code units │ │ -42fb10: |[42fb10] org.purple.smoke.SipHash.:()V │ │ -42fb20: 1220 |0000: const/4 v0, #int 2 // #2 │ │ -42fb22: 2301 4c1b |0001: new-array v1, v0, [I // type@1b4c │ │ -42fb26: 2601 0d00 0000 |0003: fill-array-data v1, 00000010 // +0000000d │ │ -42fb2c: 6901 115f |0006: sput-object v1, Lorg/purple/smoke/SipHash;.C_ROUNDS:[I // field@5f11 │ │ -42fb30: 2300 4c1b |0008: new-array v0, v0, [I // type@1b4c │ │ -42fb34: 2600 0e00 0000 |000a: fill-array-data v0, 00000018 // +0000000e │ │ -42fb3a: 6900 125f |000d: sput-object v0, Lorg/purple/smoke/SipHash;.D_ROUNDS:[I // field@5f12 │ │ -42fb3e: 0e00 |000f: return-void │ │ -42fb40: 0003 0400 0200 0000 0200 0000 0400 ... |0010: array-data (8 units) │ │ -42fb50: 0003 0400 0200 0000 0400 0000 0800 ... |0018: array-data (8 units) │ │ +42fb0c: |[42fb0c] org.purple.smoke.SipHash.:()V │ │ +42fb1c: 1220 |0000: const/4 v0, #int 2 // #2 │ │ +42fb1e: 2301 4c1b |0001: new-array v1, v0, [I // type@1b4c │ │ +42fb22: 2601 0d00 0000 |0003: fill-array-data v1, 00000010 // +0000000d │ │ +42fb28: 6901 115f |0006: sput-object v1, Lorg/purple/smoke/SipHash;.C_ROUNDS:[I // field@5f11 │ │ +42fb2c: 2300 4c1b |0008: new-array v0, v0, [I // type@1b4c │ │ +42fb30: 2600 0e00 0000 |000a: fill-array-data v0, 00000018 // +0000000e │ │ +42fb36: 6900 125f |000d: sput-object v0, Lorg/purple/smoke/SipHash;.D_ROUNDS:[I // field@5f12 │ │ +42fb3a: 0e00 |000f: return-void │ │ +42fb3c: 0003 0400 0200 0000 0200 0000 0400 ... |0010: array-data (8 units) │ │ +42fb4c: 0003 0400 0200 0000 0400 0000 0800 ... |0018: array-data (8 units) │ │ catches : (none) │ │ positions : │ │ 0x0003 line=36 │ │ 0x000a line=37 │ │ locals : │ │ │ │ #1 : (in Lorg/purple/smoke/SipHash;) │ │ @@ -740817,27 +740816,27 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 22 16-bit code units │ │ -42fb60: |[42fb60] org.purple.smoke.SipHash.:()V │ │ -42fb70: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42fb76: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -42fb78: 5b20 165f |0004: iput-object v0, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ -42fb7c: 1210 |0006: const/4 v0, #int 1 // #1 │ │ -42fb7e: 5920 145f |0007: iput v0, v2, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ -42fb82: 5920 155f |0009: iput v0, v2, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ -42fb86: 1600 0000 |000b: const-wide/16 v0, #int 0 // #0 │ │ -42fb8a: 5a20 175f |000d: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fb8e: 5a20 185f |000f: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fb92: 5a20 195f |0011: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fb96: 5a20 1a5f |0013: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fb9a: 0e00 |0015: return-void │ │ +42fb5c: |[42fb5c] org.purple.smoke.SipHash.:()V │ │ +42fb6c: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42fb72: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +42fb74: 5b20 165f |0004: iput-object v0, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ +42fb78: 1210 |0006: const/4 v0, #int 1 // #1 │ │ +42fb7a: 5920 145f |0007: iput v0, v2, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ +42fb7e: 5920 155f |0009: iput v0, v2, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ +42fb82: 1600 0000 |000b: const-wide/16 v0, #int 0 // #0 │ │ +42fb86: 5a20 175f |000d: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fb8a: 5a20 185f |000f: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fb8e: 5a20 195f |0011: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fb92: 5a20 1a5f |0013: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fb96: 0e00 |0015: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=100 │ │ 0x0004 line=42 │ │ 0x0007 line=43 │ │ 0x0009 line=44 │ │ 0x000d line=45 │ │ @@ -740852,33 +740851,33 @@ │ │ type : '([B)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 32 16-bit code units │ │ -42fb9c: |[42fb9c] org.purple.smoke.SipHash.:([B)V │ │ -42fbac: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42fbb2: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -42fbb4: 5b20 165f |0004: iput-object v0, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ -42fbb8: 1210 |0006: const/4 v0, #int 1 // #1 │ │ -42fbba: 5920 145f |0007: iput v0, v2, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ -42fbbe: 5920 155f |0009: iput v0, v2, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ -42fbc2: 1600 0000 |000b: const-wide/16 v0, #int 0 // #0 │ │ -42fbc6: 5a20 175f |000d: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fbca: 5a20 185f |000f: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fbce: 5a20 195f |0011: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fbd2: 5a20 1a5f |0013: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fbd6: 3803 0a00 |0015: if-eqz v3, 001f // +000a │ │ -42fbda: 2130 |0017: array-length v0, v3 │ │ -42fbdc: 1301 1000 |0018: const/16 v1, #int 16 // #10 │ │ -42fbe0: 3210 0300 |001a: if-eq v0, v1, 001d // +0003 │ │ -42fbe4: 2803 |001c: goto 001f // +0003 │ │ -42fbe6: 5b23 165f |001d: iput-object v3, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ -42fbea: 0e00 |001f: return-void │ │ +42fb98: |[42fb98] org.purple.smoke.SipHash.:([B)V │ │ +42fba8: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42fbae: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +42fbb0: 5b20 165f |0004: iput-object v0, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ +42fbb4: 1210 |0006: const/4 v0, #int 1 // #1 │ │ +42fbb6: 5920 145f |0007: iput v0, v2, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ +42fbba: 5920 155f |0009: iput v0, v2, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ +42fbbe: 1600 0000 |000b: const-wide/16 v0, #int 0 // #0 │ │ +42fbc2: 5a20 175f |000d: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fbc6: 5a20 185f |000f: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fbca: 5a20 195f |0011: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fbce: 5a20 1a5f |0013: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fbd2: 3803 0a00 |0015: if-eqz v3, 001f // +000a │ │ +42fbd6: 2130 |0017: array-length v0, v3 │ │ +42fbd8: 1301 1000 |0018: const/16 v1, #int 16 // #10 │ │ +42fbdc: 3210 0300 |001a: if-eq v0, v1, 001d // +0003 │ │ +42fbe0: 2803 |001c: goto 001f // +0003 │ │ +42fbe2: 5b23 165f |001d: iput-object v3, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ +42fbe6: 0e00 |001f: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=104 │ │ 0x0004 line=42 │ │ 0x0007 line=43 │ │ 0x0009 line=44 │ │ 0x000d line=45 │ │ @@ -740896,43 +740895,43 @@ │ │ type : '([BII)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 6 │ │ ins : 4 │ │ outs : 1 │ │ insns size : 50 16-bit code units │ │ -42fbec: |[42fbec] org.purple.smoke.SipHash.:([BII)V │ │ -42fbfc: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42fc02: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -42fc04: 5b20 165f |0004: iput-object v0, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ -42fc08: 1210 |0006: const/4 v0, #int 1 // #1 │ │ -42fc0a: 5920 145f |0007: iput v0, v2, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ -42fc0e: 5920 155f |0009: iput v0, v2, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ -42fc12: 1600 0000 |000b: const-wide/16 v0, #int 0 // #0 │ │ -42fc16: 5a20 175f |000d: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fc1a: 5a20 185f |000f: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fc1e: 5a20 195f |0011: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fc22: 5a20 1a5f |0013: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fc26: 3803 1c00 |0015: if-eqz v3, 0031 // +001c │ │ -42fc2a: 2130 |0017: array-length v0, v3 │ │ -42fc2c: 1301 1000 |0018: const/16 v1, #int 16 // #10 │ │ -42fc30: 3210 0300 |001a: if-eq v0, v1, 001d // +0003 │ │ -42fc34: 2815 |001c: goto 0031 // +0015 │ │ -42fc36: 3a04 0900 |001d: if-ltz v4, 0026 // +0009 │ │ -42fc3a: 6200 115f |001f: sget-object v0, Lorg/purple/smoke/SipHash;.C_ROUNDS:[I // field@5f11 │ │ -42fc3e: 2100 |0021: array-length v0, v0 │ │ -42fc40: 3504 0400 |0022: if-ge v4, v0, 0026 // +0004 │ │ -42fc44: 5924 145f |0024: iput v4, v2, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ -42fc48: 3a05 0900 |0026: if-ltz v5, 002f // +0009 │ │ -42fc4c: 6204 125f |0028: sget-object v4, Lorg/purple/smoke/SipHash;.D_ROUNDS:[I // field@5f12 │ │ -42fc50: 2144 |002a: array-length v4, v4 │ │ -42fc52: 3545 0400 |002b: if-ge v5, v4, 002f // +0004 │ │ -42fc56: 5925 155f |002d: iput v5, v2, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ -42fc5a: 5b23 165f |002f: iput-object v3, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ -42fc5e: 0e00 |0031: return-void │ │ +42fbe8: |[42fbe8] org.purple.smoke.SipHash.:([BII)V │ │ +42fbf8: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42fbfe: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +42fc00: 5b20 165f |0004: iput-object v0, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ +42fc04: 1210 |0006: const/4 v0, #int 1 // #1 │ │ +42fc06: 5920 145f |0007: iput v0, v2, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ +42fc0a: 5920 155f |0009: iput v0, v2, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ +42fc0e: 1600 0000 |000b: const-wide/16 v0, #int 0 // #0 │ │ +42fc12: 5a20 175f |000d: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fc16: 5a20 185f |000f: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fc1a: 5a20 195f |0011: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fc1e: 5a20 1a5f |0013: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fc22: 3803 1c00 |0015: if-eqz v3, 0031 // +001c │ │ +42fc26: 2130 |0017: array-length v0, v3 │ │ +42fc28: 1301 1000 |0018: const/16 v1, #int 16 // #10 │ │ +42fc2c: 3210 0300 |001a: if-eq v0, v1, 001d // +0003 │ │ +42fc30: 2815 |001c: goto 0031 // +0015 │ │ +42fc32: 3a04 0900 |001d: if-ltz v4, 0026 // +0009 │ │ +42fc36: 6200 115f |001f: sget-object v0, Lorg/purple/smoke/SipHash;.C_ROUNDS:[I // field@5f11 │ │ +42fc3a: 2100 |0021: array-length v0, v0 │ │ +42fc3c: 3504 0400 |0022: if-ge v4, v0, 0026 // +0004 │ │ +42fc40: 5924 145f |0024: iput v4, v2, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ +42fc44: 3a05 0900 |0026: if-ltz v5, 002f // +0009 │ │ +42fc48: 6204 125f |0028: sget-object v4, Lorg/purple/smoke/SipHash;.D_ROUNDS:[I // field@5f12 │ │ +42fc4c: 2144 |002a: array-length v4, v4 │ │ +42fc4e: 3545 0400 |002b: if-ge v5, v4, 002f // +0004 │ │ +42fc52: 5925 155f |002d: iput v5, v2, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ +42fc56: 5b23 165f |002f: iput-object v3, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ +42fc5a: 0e00 |0031: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=112 │ │ 0x0004 line=42 │ │ 0x0007 line=43 │ │ 0x0009 line=44 │ │ 0x000d line=45 │ │ @@ -740956,77 +740955,77 @@ │ │ type : '([BI)J' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 11 │ │ ins : 3 │ │ outs : 0 │ │ insns size : 89 16-bit code units │ │ -42f658: |[42f658] org.purple.smoke.SipHash.byteArrayToLong:([BI)J │ │ -42f668: 1600 0000 |0000: const-wide/16 v0, #int 0 // #0 │ │ -42f66c: 3809 5600 |0002: if-eqz v9, 0058 // +0056 │ │ -42f670: 2192 |0004: array-length v2, v9 │ │ -42f672: b1a2 |0005: sub-int/2addr v2, v10 │ │ -42f674: 1303 0800 |0006: const/16 v3, #int 8 // #8 │ │ -42f678: 3532 0300 |0008: if-ge v2, v3, 000b // +0003 │ │ -42f67c: 284e |000a: goto 0058 // +004e │ │ -42f67e: 4802 090a |000b: aget-byte v2, v9, v10 │ │ -42f682: 8124 |000d: int-to-long v4, v2 │ │ -42f684: 1606 ff00 |000e: const-wide/16 v6, #int 255 // #ff │ │ -42f688: c064 |0010: and-long/2addr v4, v6 │ │ -42f68a: c140 |0011: or-long/2addr v0, v4 │ │ -42f68c: d802 0a01 |0012: add-int/lit8 v2, v10, #int 1 // #01 │ │ -42f690: 4802 0902 |0014: aget-byte v2, v9, v2 │ │ -42f694: 8124 |0016: int-to-long v4, v2 │ │ -42f696: c064 |0017: and-long/2addr v4, v6 │ │ -42f698: a302 0403 |0018: shl-long v2, v4, v3 │ │ -42f69c: c120 |001a: or-long/2addr v0, v2 │ │ -42f69e: d802 0a02 |001b: add-int/lit8 v2, v10, #int 2 // #02 │ │ -42f6a2: 4802 0902 |001d: aget-byte v2, v9, v2 │ │ -42f6a6: 8122 |001f: int-to-long v2, v2 │ │ -42f6a8: c062 |0020: and-long/2addr v2, v6 │ │ -42f6aa: 1304 1000 |0021: const/16 v4, #int 16 // #10 │ │ -42f6ae: c342 |0023: shl-long/2addr v2, v4 │ │ -42f6b0: c120 |0024: or-long/2addr v0, v2 │ │ -42f6b2: d802 0a03 |0025: add-int/lit8 v2, v10, #int 3 // #03 │ │ -42f6b6: 4802 0902 |0027: aget-byte v2, v9, v2 │ │ -42f6ba: 8122 |0029: int-to-long v2, v2 │ │ -42f6bc: c062 |002a: and-long/2addr v2, v6 │ │ -42f6be: 1304 1800 |002b: const/16 v4, #int 24 // #18 │ │ -42f6c2: c342 |002d: shl-long/2addr v2, v4 │ │ -42f6c4: c120 |002e: or-long/2addr v0, v2 │ │ -42f6c6: d802 0a04 |002f: add-int/lit8 v2, v10, #int 4 // #04 │ │ -42f6ca: 4802 0902 |0031: aget-byte v2, v9, v2 │ │ -42f6ce: 8122 |0033: int-to-long v2, v2 │ │ -42f6d0: c062 |0034: and-long/2addr v2, v6 │ │ -42f6d2: 1304 2000 |0035: const/16 v4, #int 32 // #20 │ │ -42f6d6: c342 |0037: shl-long/2addr v2, v4 │ │ -42f6d8: c120 |0038: or-long/2addr v0, v2 │ │ -42f6da: d802 0a05 |0039: add-int/lit8 v2, v10, #int 5 // #05 │ │ -42f6de: 4802 0902 |003b: aget-byte v2, v9, v2 │ │ -42f6e2: 8122 |003d: int-to-long v2, v2 │ │ -42f6e4: c062 |003e: and-long/2addr v2, v6 │ │ -42f6e6: 1304 2800 |003f: const/16 v4, #int 40 // #28 │ │ -42f6ea: c342 |0041: shl-long/2addr v2, v4 │ │ -42f6ec: c120 |0042: or-long/2addr v0, v2 │ │ -42f6ee: d802 0a06 |0043: add-int/lit8 v2, v10, #int 6 // #06 │ │ -42f6f2: 4802 0902 |0045: aget-byte v2, v9, v2 │ │ -42f6f6: 8122 |0047: int-to-long v2, v2 │ │ -42f6f8: c062 |0048: and-long/2addr v2, v6 │ │ -42f6fa: 1304 3000 |0049: const/16 v4, #int 48 // #30 │ │ -42f6fe: c342 |004b: shl-long/2addr v2, v4 │ │ -42f700: c120 |004c: or-long/2addr v0, v2 │ │ -42f702: d80a 0a07 |004d: add-int/lit8 v10, v10, #int 7 // #07 │ │ -42f706: 4809 090a |004f: aget-byte v9, v9, v10 │ │ -42f70a: 8199 |0051: int-to-long v9, v9 │ │ -42f70c: c069 |0052: and-long/2addr v9, v6 │ │ -42f70e: 1302 3800 |0053: const/16 v2, #int 56 // #38 │ │ -42f712: c329 |0055: shl-long/2addr v9, v2 │ │ -42f714: c109 |0056: or-long/2addr v9, v0 │ │ -42f716: 1009 |0057: return-wide v9 │ │ -42f718: 1000 |0058: return-wide v0 │ │ +42f654: |[42f654] org.purple.smoke.SipHash.byteArrayToLong:([BI)J │ │ +42f664: 1600 0000 |0000: const-wide/16 v0, #int 0 // #0 │ │ +42f668: 3809 5600 |0002: if-eqz v9, 0058 // +0056 │ │ +42f66c: 2192 |0004: array-length v2, v9 │ │ +42f66e: b1a2 |0005: sub-int/2addr v2, v10 │ │ +42f670: 1303 0800 |0006: const/16 v3, #int 8 // #8 │ │ +42f674: 3532 0300 |0008: if-ge v2, v3, 000b // +0003 │ │ +42f678: 284e |000a: goto 0058 // +004e │ │ +42f67a: 4802 090a |000b: aget-byte v2, v9, v10 │ │ +42f67e: 8124 |000d: int-to-long v4, v2 │ │ +42f680: 1606 ff00 |000e: const-wide/16 v6, #int 255 // #ff │ │ +42f684: c064 |0010: and-long/2addr v4, v6 │ │ +42f686: c140 |0011: or-long/2addr v0, v4 │ │ +42f688: d802 0a01 |0012: add-int/lit8 v2, v10, #int 1 // #01 │ │ +42f68c: 4802 0902 |0014: aget-byte v2, v9, v2 │ │ +42f690: 8124 |0016: int-to-long v4, v2 │ │ +42f692: c064 |0017: and-long/2addr v4, v6 │ │ +42f694: a302 0403 |0018: shl-long v2, v4, v3 │ │ +42f698: c120 |001a: or-long/2addr v0, v2 │ │ +42f69a: d802 0a02 |001b: add-int/lit8 v2, v10, #int 2 // #02 │ │ +42f69e: 4802 0902 |001d: aget-byte v2, v9, v2 │ │ +42f6a2: 8122 |001f: int-to-long v2, v2 │ │ +42f6a4: c062 |0020: and-long/2addr v2, v6 │ │ +42f6a6: 1304 1000 |0021: const/16 v4, #int 16 // #10 │ │ +42f6aa: c342 |0023: shl-long/2addr v2, v4 │ │ +42f6ac: c120 |0024: or-long/2addr v0, v2 │ │ +42f6ae: d802 0a03 |0025: add-int/lit8 v2, v10, #int 3 // #03 │ │ +42f6b2: 4802 0902 |0027: aget-byte v2, v9, v2 │ │ +42f6b6: 8122 |0029: int-to-long v2, v2 │ │ +42f6b8: c062 |002a: and-long/2addr v2, v6 │ │ +42f6ba: 1304 1800 |002b: const/16 v4, #int 24 // #18 │ │ +42f6be: c342 |002d: shl-long/2addr v2, v4 │ │ +42f6c0: c120 |002e: or-long/2addr v0, v2 │ │ +42f6c2: d802 0a04 |002f: add-int/lit8 v2, v10, #int 4 // #04 │ │ +42f6c6: 4802 0902 |0031: aget-byte v2, v9, v2 │ │ +42f6ca: 8122 |0033: int-to-long v2, v2 │ │ +42f6cc: c062 |0034: and-long/2addr v2, v6 │ │ +42f6ce: 1304 2000 |0035: const/16 v4, #int 32 // #20 │ │ +42f6d2: c342 |0037: shl-long/2addr v2, v4 │ │ +42f6d4: c120 |0038: or-long/2addr v0, v2 │ │ +42f6d6: d802 0a05 |0039: add-int/lit8 v2, v10, #int 5 // #05 │ │ +42f6da: 4802 0902 |003b: aget-byte v2, v9, v2 │ │ +42f6de: 8122 |003d: int-to-long v2, v2 │ │ +42f6e0: c062 |003e: and-long/2addr v2, v6 │ │ +42f6e2: 1304 2800 |003f: const/16 v4, #int 40 // #28 │ │ +42f6e6: c342 |0041: shl-long/2addr v2, v4 │ │ +42f6e8: c120 |0042: or-long/2addr v0, v2 │ │ +42f6ea: d802 0a06 |0043: add-int/lit8 v2, v10, #int 6 // #06 │ │ +42f6ee: 4802 0902 |0045: aget-byte v2, v9, v2 │ │ +42f6f2: 8122 |0047: int-to-long v2, v2 │ │ +42f6f4: c062 |0048: and-long/2addr v2, v6 │ │ +42f6f6: 1304 3000 |0049: const/16 v4, #int 48 // #30 │ │ +42f6fa: c342 |004b: shl-long/2addr v2, v4 │ │ +42f6fc: c120 |004c: or-long/2addr v0, v2 │ │ +42f6fe: d80a 0a07 |004d: add-int/lit8 v10, v10, #int 7 // #07 │ │ +42f702: 4809 090a |004f: aget-byte v9, v9, v10 │ │ +42f706: 8199 |0051: int-to-long v9, v9 │ │ +42f708: c069 |0052: and-long/2addr v9, v6 │ │ +42f70a: 1302 3800 |0053: const/16 v2, #int 56 // #38 │ │ +42f70e: c329 |0055: shl-long/2addr v9, v2 │ │ +42f710: c109 |0056: or-long/2addr v9, v0 │ │ +42f712: 1009 |0057: return-wide v9 │ │ +42f714: 1000 |0058: return-wide v0 │ │ catches : (none) │ │ positions : │ │ 0x0004 line=53 │ │ 0x000b line=58 │ │ 0x0014 line=59 │ │ 0x001d line=61 │ │ 0x0027 line=63 │ │ @@ -741044,84 +741043,84 @@ │ │ type : '(JJ)J' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 9 │ │ ins : 5 │ │ outs : 0 │ │ insns size : 10 16-bit code units │ │ -42f71c: |[42f71c] org.purple.smoke.SipHash.rotl:(JJ)J │ │ -42f72c: 8470 |0000: long-to-int v0, v7 │ │ -42f72e: a300 0500 |0001: shl-long v0, v5, v0 │ │ -42f732: 1602 4000 |0003: const-wide/16 v2, #int 64 // #40 │ │ -42f736: bc72 |0005: sub-long/2addr v2, v7 │ │ -42f738: 8427 |0006: long-to-int v7, v2 │ │ -42f73a: c575 |0007: ushr-long/2addr v5, v7 │ │ -42f73c: c105 |0008: or-long/2addr v5, v0 │ │ -42f73e: 1005 |0009: return-wide v5 │ │ +42f718: |[42f718] org.purple.smoke.SipHash.rotl:(JJ)J │ │ +42f728: 8470 |0000: long-to-int v0, v7 │ │ +42f72a: a300 0500 |0001: shl-long v0, v5, v0 │ │ +42f72e: 1602 4000 |0003: const-wide/16 v2, #int 64 // #40 │ │ +42f732: bc72 |0005: sub-long/2addr v2, v7 │ │ +42f734: 8427 |0006: long-to-int v7, v2 │ │ +42f736: c575 |0007: ushr-long/2addr v5, v7 │ │ +42f738: c105 |0008: or-long/2addr v5, v0 │ │ +42f73a: 1005 |0009: return-wide v5 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #6 : (in Lorg/purple/smoke/SipHash;) │ │ name : 'round' │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 7 │ │ ins : 1 │ │ outs : 5 │ │ insns size : 85 16-bit code units │ │ -42fc60: |[42fc60] org.purple.smoke.SipHash.round:()V │ │ -42fc70: 5360 175f |0000: iget-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fc74: 5362 185f |0002: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fc78: bb20 |0004: add-long/2addr v0, v2 │ │ -42fc7a: 5a60 175f |0005: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fc7e: 1600 0d00 |0007: const-wide/16 v0, #int 13 // #d │ │ -42fc82: 7051 1dbd 2603 |0009: invoke-direct {v6, v2, v3, v0, v1}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd1d │ │ -42fc88: 0b00 |000c: move-result-wide v0 │ │ -42fc8a: 5362 175f |000d: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fc8e: c220 |000f: xor-long/2addr v0, v2 │ │ -42fc90: 5a60 185f |0010: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fc94: 1600 2000 |0012: const-wide/16 v0, #int 32 // #20 │ │ -42fc98: 7051 1dbd 2603 |0014: invoke-direct {v6, v2, v3, v0, v1}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd1d │ │ -42fc9e: 0b02 |0017: move-result-wide v2 │ │ -42fca0: 5a62 175f |0018: iput-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fca4: 5362 195f |001a: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fca8: 5364 1a5f |001c: iget-wide v4, v6, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fcac: bb42 |001e: add-long/2addr v2, v4 │ │ -42fcae: 5a62 195f |001f: iput-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fcb2: 1602 1000 |0021: const-wide/16 v2, #int 16 // #10 │ │ -42fcb6: 7053 1dbd 4625 |0023: invoke-direct {v6, v4, v5, v2, v3}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd1d │ │ -42fcbc: 0b02 |0026: move-result-wide v2 │ │ -42fcbe: 5364 195f |0027: iget-wide v4, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fcc2: c242 |0029: xor-long/2addr v2, v4 │ │ -42fcc4: 5a62 1a5f |002a: iput-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fcc8: 5362 185f |002c: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fccc: bb24 |002e: add-long/2addr v4, v2 │ │ -42fcce: 5a64 195f |002f: iput-wide v4, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fcd2: 1604 1100 |0031: const-wide/16 v4, #int 17 // #11 │ │ -42fcd6: 7055 1dbd 2643 |0033: invoke-direct {v6, v2, v3, v4, v5}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd1d │ │ -42fcdc: 0b02 |0036: move-result-wide v2 │ │ -42fcde: 5364 195f |0037: iget-wide v4, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fce2: c242 |0039: xor-long/2addr v2, v4 │ │ -42fce4: 5a62 185f |003a: iput-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fce8: 7051 1dbd 4605 |003c: invoke-direct {v6, v4, v5, v0, v1}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd1d │ │ -42fcee: 0b00 |003f: move-result-wide v0 │ │ -42fcf0: 5a60 195f |0040: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fcf4: 5360 175f |0042: iget-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fcf8: 5362 1a5f |0044: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fcfc: bb20 |0046: add-long/2addr v0, v2 │ │ -42fcfe: 5a60 175f |0047: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fd02: 1600 1500 |0049: const-wide/16 v0, #int 21 // #15 │ │ -42fd06: 7051 1dbd 2603 |004b: invoke-direct {v6, v2, v3, v0, v1}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd1d │ │ -42fd0c: 0b00 |004e: move-result-wide v0 │ │ -42fd0e: 5362 175f |004f: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fd12: c220 |0051: xor-long/2addr v0, v2 │ │ -42fd14: 5a60 1a5f |0052: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fd18: 0e00 |0054: return-void │ │ +42fc5c: |[42fc5c] org.purple.smoke.SipHash.round:()V │ │ +42fc6c: 5360 175f |0000: iget-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fc70: 5362 185f |0002: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fc74: bb20 |0004: add-long/2addr v0, v2 │ │ +42fc76: 5a60 175f |0005: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fc7a: 1600 0d00 |0007: const-wide/16 v0, #int 13 // #d │ │ +42fc7e: 7051 1dbd 2603 |0009: invoke-direct {v6, v2, v3, v0, v1}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd1d │ │ +42fc84: 0b00 |000c: move-result-wide v0 │ │ +42fc86: 5362 175f |000d: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fc8a: c220 |000f: xor-long/2addr v0, v2 │ │ +42fc8c: 5a60 185f |0010: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fc90: 1600 2000 |0012: const-wide/16 v0, #int 32 // #20 │ │ +42fc94: 7051 1dbd 2603 |0014: invoke-direct {v6, v2, v3, v0, v1}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd1d │ │ +42fc9a: 0b02 |0017: move-result-wide v2 │ │ +42fc9c: 5a62 175f |0018: iput-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fca0: 5362 195f |001a: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fca4: 5364 1a5f |001c: iget-wide v4, v6, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fca8: bb42 |001e: add-long/2addr v2, v4 │ │ +42fcaa: 5a62 195f |001f: iput-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fcae: 1602 1000 |0021: const-wide/16 v2, #int 16 // #10 │ │ +42fcb2: 7053 1dbd 4625 |0023: invoke-direct {v6, v4, v5, v2, v3}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd1d │ │ +42fcb8: 0b02 |0026: move-result-wide v2 │ │ +42fcba: 5364 195f |0027: iget-wide v4, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fcbe: c242 |0029: xor-long/2addr v2, v4 │ │ +42fcc0: 5a62 1a5f |002a: iput-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fcc4: 5362 185f |002c: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fcc8: bb24 |002e: add-long/2addr v4, v2 │ │ +42fcca: 5a64 195f |002f: iput-wide v4, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fcce: 1604 1100 |0031: const-wide/16 v4, #int 17 // #11 │ │ +42fcd2: 7055 1dbd 2643 |0033: invoke-direct {v6, v2, v3, v4, v5}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd1d │ │ +42fcd8: 0b02 |0036: move-result-wide v2 │ │ +42fcda: 5364 195f |0037: iget-wide v4, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fcde: c242 |0039: xor-long/2addr v2, v4 │ │ +42fce0: 5a62 185f |003a: iput-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fce4: 7051 1dbd 4605 |003c: invoke-direct {v6, v4, v5, v0, v1}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd1d │ │ +42fcea: 0b00 |003f: move-result-wide v0 │ │ +42fcec: 5a60 195f |0040: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fcf0: 5360 175f |0042: iget-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fcf4: 5362 1a5f |0044: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fcf8: bb20 |0046: add-long/2addr v0, v2 │ │ +42fcfa: 5a60 175f |0047: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fcfe: 1600 1500 |0049: const-wide/16 v0, #int 21 // #15 │ │ +42fd02: 7051 1dbd 2603 |004b: invoke-direct {v6, v2, v3, v0, v1}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd1d │ │ +42fd08: 0b00 |004e: move-result-wide v0 │ │ +42fd0a: 5362 175f |004f: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fd0e: c220 |0051: xor-long/2addr v0, v2 │ │ +42fd10: 5a60 1a5f |0052: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fd14: 0e00 |0054: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=83 │ │ 0x0009 line=84 │ │ 0x000d line=85 │ │ 0x0014 line=86 │ │ 0x001a line=87 │ │ @@ -741142,40 +741141,40 @@ │ │ type : '()Z' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 7 │ │ ins : 0 │ │ outs : 4 │ │ insns size : 76 16-bit code units │ │ -42f5b0: |[42f5b0] org.purple.smoke.SipHash.test1:()Z │ │ -42f5c0: 2200 0b1b |0000: new-instance v0, Lorg/purple/smoke/SipHash; // type@1b0b │ │ -42f5c4: 1301 1000 |0002: const/16 v1, #int 16 // #10 │ │ -42f5c8: 2311 481b |0004: new-array v1, v1, [B // type@1b48 │ │ -42f5cc: 2601 2600 0000 |0006: fill-array-data v1, 0000002c // +00000026 │ │ -42f5d2: 1202 |0009: const/4 v2, #int 0 // #0 │ │ -42f5d4: 7040 19bd 1022 |000a: invoke-direct {v0, v1, v2, v2}, Lorg/purple/smoke/SipHash;.:([BII)V // method@bd19 │ │ -42f5da: 1301 0800 |000d: const/16 v1, #int 8 // #8 │ │ -42f5de: 2313 481b |000f: new-array v3, v1, [B // type@1b48 │ │ -42f5e2: 2603 2700 0000 |0011: fill-array-data v3, 00000038 // +00000027 │ │ -42f5e8: 7110 e1bb 0300 |0014: invoke-static {v3}, Lorg/purple/smoke/Miscellaneous;.byteArrayToLong:([B)J // method@bbe1 │ │ -42f5ee: 0b03 |0017: move-result-wide v3 │ │ -42f5f0: 1305 0f00 |0018: const/16 v5, #int 15 // #f │ │ -42f5f4: 2355 481b |001a: new-array v5, v5, [B // type@1b48 │ │ -42f5f8: 2605 2400 0000 |001c: fill-array-data v5, 00000040 // +00000024 │ │ -42f5fe: 6e30 1bbd 5001 |001f: invoke-virtual {v0, v5, v1}, Lorg/purple/smoke/SipHash;.hmac:([BI)[J // method@bd1b │ │ -42f604: 0c00 |0022: move-result-object v0 │ │ -42f606: 4505 0002 |0023: aget-wide v5, v0, v2 │ │ -42f60a: 3100 0305 |0025: cmp-long v0, v3, v5 │ │ -42f60e: 3900 0300 |0027: if-nez v0, 002a // +0003 │ │ -42f612: 1212 |0029: const/4 v2, #int 1 // #1 │ │ -42f614: 0f02 |002a: return v2 │ │ -42f616: 0000 |002b: nop // spacer │ │ -42f618: 0003 0100 1000 0000 0001 0203 0405 ... |002c: array-data (12 units) │ │ -42f630: 0003 0100 0800 0000 a129 ca61 49be ... |0038: array-data (8 units) │ │ -42f640: 0003 0100 0f00 0000 0001 0203 0405 ... |0040: array-data (12 units) │ │ +42f5ac: |[42f5ac] org.purple.smoke.SipHash.test1:()Z │ │ +42f5bc: 2200 0b1b |0000: new-instance v0, Lorg/purple/smoke/SipHash; // type@1b0b │ │ +42f5c0: 1301 1000 |0002: const/16 v1, #int 16 // #10 │ │ +42f5c4: 2311 481b |0004: new-array v1, v1, [B // type@1b48 │ │ +42f5c8: 2601 2600 0000 |0006: fill-array-data v1, 0000002c // +00000026 │ │ +42f5ce: 1202 |0009: const/4 v2, #int 0 // #0 │ │ +42f5d0: 7040 19bd 1022 |000a: invoke-direct {v0, v1, v2, v2}, Lorg/purple/smoke/SipHash;.:([BII)V // method@bd19 │ │ +42f5d6: 1301 0800 |000d: const/16 v1, #int 8 // #8 │ │ +42f5da: 2313 481b |000f: new-array v3, v1, [B // type@1b48 │ │ +42f5de: 2603 2700 0000 |0011: fill-array-data v3, 00000038 // +00000027 │ │ +42f5e4: 7110 e1bb 0300 |0014: invoke-static {v3}, Lorg/purple/smoke/Miscellaneous;.byteArrayToLong:([B)J // method@bbe1 │ │ +42f5ea: 0b03 |0017: move-result-wide v3 │ │ +42f5ec: 1305 0f00 |0018: const/16 v5, #int 15 // #f │ │ +42f5f0: 2355 481b |001a: new-array v5, v5, [B // type@1b48 │ │ +42f5f4: 2605 2400 0000 |001c: fill-array-data v5, 00000040 // +00000024 │ │ +42f5fa: 6e30 1bbd 5001 |001f: invoke-virtual {v0, v5, v1}, Lorg/purple/smoke/SipHash;.hmac:([BI)[J // method@bd1b │ │ +42f600: 0c00 |0022: move-result-object v0 │ │ +42f602: 4505 0002 |0023: aget-wide v5, v0, v2 │ │ +42f606: 3100 0305 |0025: cmp-long v0, v3, v5 │ │ +42f60a: 3900 0300 |0027: if-nez v0, 002a // +0003 │ │ +42f60e: 1212 |0029: const/4 v2, #int 1 // #1 │ │ +42f610: 0f02 |002a: return v2 │ │ +42f612: 0000 |002b: nop // spacer │ │ +42f614: 0003 0100 1000 0000 0001 0203 0405 ... |002c: array-data (12 units) │ │ +42f62c: 0003 0100 0800 0000 a129 ca61 49be ... |0038: array-data (8 units) │ │ +42f63c: 0003 0100 0f00 0000 0001 0203 0405 ... |0040: array-data (12 units) │ │ catches : (none) │ │ positions : │ │ 0x0000 line=305 │ │ 0x0011 line=311 │ │ 0x0014 line=312 │ │ 0x001c line=314 │ │ 0x001f line=315 │ │ @@ -741188,19 +741187,19 @@ │ │ type : '([BI)[J' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 4 │ │ insns size : 7 16-bit code units │ │ -42faf0: |[42faf0] org.purple.smoke.SipHash.hmac:([BI)[J │ │ -42fb00: 5410 165f |0000: iget-object v0, v1, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ -42fb04: 6e40 1cbd 2130 |0002: invoke-virtual {v1, v2, v0, v3}, Lorg/purple/smoke/SipHash;.hmac:([B[BI)[J // method@bd1c │ │ -42fb0a: 0c02 |0005: move-result-object v2 │ │ -42fb0c: 1102 |0006: return-object v2 │ │ +42faec: |[42faec] org.purple.smoke.SipHash.hmac:([BI)[J │ │ +42fafc: 5410 165f |0000: iget-object v0, v1, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ +42fb00: 6e40 1cbd 2130 |0002: invoke-virtual {v1, v2, v0, v3}, Lorg/purple/smoke/SipHash;.hmac:([B[BI)[J // method@bd1c │ │ +42fb06: 0c02 |0005: move-result-object v2 │ │ +42fb08: 1102 |0006: return-object v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=127 │ │ locals : │ │ 0x0000 - 0x0007 reg=1 this Lorg/purple/smoke/SipHash; │ │ 0x0000 - 0x0007 reg=2 (null) [B │ │ 0x0000 - 0x0007 reg=3 (null) I │ │ @@ -741210,248 +741209,248 @@ │ │ type : '([B[BI)[J' │ │ access : 0x20001 (PUBLIC DECLARED_SYNCHRONIZED) │ │ code - │ │ registers : 21 │ │ ins : 4 │ │ outs : 3 │ │ insns size : 450 16-bit code units │ │ -42f740: |[42f740] org.purple.smoke.SipHash.hmac:([B[BI)[J │ │ -42f750: 0801 1100 |0000: move-object/from16 v1, v17 │ │ -42f754: 0800 1200 |0002: move-object/from16 v0, v18 │ │ -42f758: 0802 1300 |0004: move-object/from16 v2, v19 │ │ -42f75c: 0203 1400 |0006: move/from16 v3, v20 │ │ -42f760: 1d11 |0008: monitor-enter v17 │ │ -42f762: 1204 |0009: const/4 v4, #int 0 // #0 │ │ -42f764: 1228 |000a: const/4 v8, #int 2 // #2 │ │ -42f766: 3800 9301 |000b: if-eqz v0, 019e // +0193 │ │ -42f76a: 3802 9101 |000d: if-eqz v2, 019e // +0191 │ │ -42f76e: 2129 |000f: array-length v9, v2 │ │ -42f770: 130a 1000 |0010: const/16 v10, #int 16 // #10 │ │ -42f774: 32a9 0400 |0012: if-eq v9, v10, 0016 // +0004 │ │ -42f778: 2900 8a01 |0014: goto/16 019e // +018a │ │ -42f77c: 7030 1abd 2104 |0016: invoke-direct {v1, v2, v4}, Lorg/purple/smoke/SipHash;.byteArrayToLong:([BI)J // method@bd1a │ │ -42f782: 0b0b |0019: move-result-wide v11 │ │ -42f784: 1309 0800 |001a: const/16 v9, #int 8 // #8 │ │ -42f788: 7030 1abd 2109 |001c: invoke-direct {v1, v2, v9}, Lorg/purple/smoke/SipHash;.byteArrayToLong:([BI)J // method@bd1a │ │ -42f78e: 0b0d |001f: move-result-wide v13 │ │ -42f790: 180f 7565 7370 656d 6f73 |0020: const-wide v15, #double 1.09869e+248 // #736f6d6570736575 │ │ -42f79a: a205 0b0f |0025: xor-long v5, v11, v15 │ │ -42f79e: 5a15 175f |0027: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42f7a2: 1805 6d6f 646e 6172 6f64 |0029: const-wide v5, #double 6.2222e+175 // #646f72616e646f6d │ │ -42f7ac: c2d5 |002e: xor-long/2addr v5, v13 │ │ -42f7ae: 5a15 185f |002f: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42f7b2: 180f 6172 656e 6567 796c |0031: const-wide v15, #double 3.42087e+214 // #6c7967656e657261 │ │ -42f7bc: c2fb |0036: xor-long/2addr v11, v15 │ │ -42f7be: 5a1b 195f |0037: iput-wide v11, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42f7c2: 180b 7365 7479 6264 6574 |0039: const-wide v11, #double 4.90118e+252 // #7465646279746573 │ │ -42f7cc: c2db |003e: xor-long/2addr v11, v13 │ │ -42f7ce: 5a1b 1a5f |003f: iput-wide v11, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42f7d2: 160b ee00 |0041: const-wide/16 v11, #int 238 // #ee │ │ -42f7d6: 33a3 0500 |0043: if-ne v3, v10, 0048 // +0005 │ │ -42f7da: c2b5 |0045: xor-long/2addr v5, v11 │ │ -42f7dc: 5a15 185f |0046: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42f7e0: 2105 |0048: array-length v5, v0 │ │ -42f7e2: b395 |0049: div-int/2addr v5, v9 │ │ -42f7e4: 6206 115f |004a: sget-object v6, Lorg/purple/smoke/SipHash;.C_ROUNDS:[I // field@5f11 │ │ -42f7e8: 5217 145f |004c: iget v7, v1, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ -42f7ec: 4406 0607 |004e: aget v6, v6, v7 │ │ -42f7f0: 1207 |0050: const/4 v7, #int 0 // #0 │ │ -42f7f2: 124d |0051: const/4 v13, #int 4 // #4 │ │ -42f7f4: 3557 3200 |0052: if-ge v7, v5, 0084 // +0032 │ │ -42f7f8: da0e 0708 |0054: mul-int/lit8 v14, v7, #int 8 // #08 │ │ -42f7fc: 7030 1abd 010e |0056: invoke-direct {v1, v0, v14}, Lorg/purple/smoke/SipHash;.byteArrayToLong:([BI)J // method@bd1a │ │ -42f802: 0b0e |0059: move-result-wide v14 │ │ -42f804: 0213 0500 |005a: move/from16 v19, v5 │ │ -42f808: 5314 1a5f |005c: iget-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42f80c: c2e4 |005e: xor-long/2addr v4, v14 │ │ -42f80e: 5a14 1a5f |005f: iput-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42f812: 3286 1200 |0061: if-eq v6, v8, 0073 // +0012 │ │ -42f816: 32d6 0300 |0063: if-eq v6, v13, 0066 // +0003 │ │ -42f81a: 2814 |0065: goto 0079 // +0014 │ │ -42f81c: 7601 1ebd 1100 |0066: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f822: 7601 1ebd 1100 |0069: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f828: 7601 1ebd 1100 |006c: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f82e: 7601 1ebd 1100 |006f: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f834: 2807 |0072: goto 0079 // +0007 │ │ -42f836: 7601 1ebd 1100 |0073: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f83c: 7601 1ebd 1100 |0076: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f842: 5314 175f |0079: iget-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42f846: c2e4 |007b: xor-long/2addr v4, v14 │ │ -42f848: 5a14 175f |007c: iput-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42f84c: d807 0701 |007e: add-int/lit8 v7, v7, #int 1 // #01 │ │ -42f850: 0205 1300 |0080: move/from16 v5, v19 │ │ -42f854: 1204 |0082: const/4 v4, #int 0 // #0 │ │ -42f856: 28ce |0083: goto 0051 // -0032 │ │ -42f858: 2104 |0084: array-length v4, v0 │ │ -42f85a: b394 |0085: div-int/2addr v4, v9 │ │ -42f85c: da04 0408 |0086: mul-int/lit8 v4, v4, #int 8 // #08 │ │ -42f860: 2105 |0088: array-length v5, v0 │ │ -42f862: 8155 |0089: int-to-long v5, v5 │ │ -42f864: 1307 3800 |008a: const/16 v7, #int 56 // #38 │ │ -42f868: c375 |008c: shl-long/2addr v5, v7 │ │ -42f86a: 2107 |008d: array-length v7, v0 │ │ -42f86c: b497 |008e: rem-int/2addr v7, v9 │ │ -42f86e: 2b07 2101 0000 |008f: packed-switch v7, 000001b0 // +00000121 │ │ -42f874: 2837 |0092: goto 00c9 // +0037 │ │ -42f876: d807 0406 |0093: add-int/lit8 v7, v4, #int 6 // #06 │ │ -42f87a: 4807 0007 |0095: aget-byte v7, v0, v7 │ │ -42f87e: 817e |0097: int-to-long v14, v7 │ │ -42f880: 1307 3000 |0098: const/16 v7, #int 48 // #30 │ │ -42f884: c37e |009a: shl-long/2addr v14, v7 │ │ -42f886: c1e5 |009b: or-long/2addr v5, v14 │ │ -42f888: d807 0405 |009c: add-int/lit8 v7, v4, #int 5 // #05 │ │ -42f88c: 4807 0007 |009e: aget-byte v7, v0, v7 │ │ -42f890: 817e |00a0: int-to-long v14, v7 │ │ -42f892: 1307 2800 |00a1: const/16 v7, #int 40 // #28 │ │ -42f896: c37e |00a3: shl-long/2addr v14, v7 │ │ -42f898: c1e5 |00a4: or-long/2addr v5, v14 │ │ -42f89a: d807 0404 |00a5: add-int/lit8 v7, v4, #int 4 // #04 │ │ -42f89e: 4807 0007 |00a7: aget-byte v7, v0, v7 │ │ -42f8a2: 817e |00a9: int-to-long v14, v7 │ │ -42f8a4: 1307 2000 |00aa: const/16 v7, #int 32 // #20 │ │ -42f8a8: c37e |00ac: shl-long/2addr v14, v7 │ │ -42f8aa: c1e5 |00ad: or-long/2addr v5, v14 │ │ -42f8ac: d807 0403 |00ae: add-int/lit8 v7, v4, #int 3 // #03 │ │ -42f8b0: 4807 0007 |00b0: aget-byte v7, v0, v7 │ │ -42f8b4: 817e |00b2: int-to-long v14, v7 │ │ -42f8b6: 1307 1800 |00b3: const/16 v7, #int 24 // #18 │ │ -42f8ba: c37e |00b5: shl-long/2addr v14, v7 │ │ -42f8bc: c1e5 |00b6: or-long/2addr v5, v14 │ │ -42f8be: d807 0402 |00b7: add-int/lit8 v7, v4, #int 2 // #02 │ │ -42f8c2: 4807 0007 |00b9: aget-byte v7, v0, v7 │ │ -42f8c6: 817e |00bb: int-to-long v14, v7 │ │ -42f8c8: c3ae |00bc: shl-long/2addr v14, v10 │ │ -42f8ca: c1e5 |00bd: or-long/2addr v5, v14 │ │ -42f8cc: d807 0401 |00be: add-int/lit8 v7, v4, #int 1 // #01 │ │ -42f8d0: 4807 0007 |00c0: aget-byte v7, v0, v7 │ │ -42f8d4: 817e |00c2: int-to-long v14, v7 │ │ -42f8d6: c39e |00c3: shl-long/2addr v14, v9 │ │ -42f8d8: c1e5 |00c4: or-long/2addr v5, v14 │ │ -42f8da: 4800 0004 |00c5: aget-byte v0, v0, v4 │ │ -42f8de: 810e |00c7: int-to-long v14, v0 │ │ -42f8e0: c1e5 |00c8: or-long/2addr v5, v14 │ │ -42f8e2: 531e 1a5f |00c9: iget-wide v14, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42f8e6: c25e |00cb: xor-long/2addr v14, v5 │ │ -42f8e8: 5a1e 1a5f |00cc: iput-wide v14, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42f8ec: 6200 115f |00ce: sget-object v0, Lorg/purple/smoke/SipHash;.C_ROUNDS:[I // field@5f11 │ │ -42f8f0: 5214 145f |00d0: iget v4, v1, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ -42f8f4: 4400 0004 |00d2: aget v0, v0, v4 │ │ -42f8f8: 3280 1200 |00d4: if-eq v0, v8, 00e6 // +0012 │ │ -42f8fc: 32d0 0300 |00d6: if-eq v0, v13, 00d9 // +0003 │ │ -42f900: 2814 |00d8: goto 00ec // +0014 │ │ -42f902: 7601 1ebd 1100 |00d9: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f908: 7601 1ebd 1100 |00dc: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f90e: 7601 1ebd 1100 |00df: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f914: 7601 1ebd 1100 |00e2: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f91a: 2807 |00e5: goto 00ec // +0007 │ │ -42f91c: 7601 1ebd 1100 |00e6: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f922: 7601 1ebd 1100 |00e9: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f928: 531e 175f |00ec: iget-wide v14, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42f92c: c2e5 |00ee: xor-long/2addr v5, v14 │ │ -42f92e: 5a15 175f |00ef: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42f932: 33a3 0800 |00f1: if-ne v3, v10, 00f9 // +0008 │ │ -42f936: 5314 195f |00f3: iget-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42f93a: c2b4 |00f5: xor-long/2addr v4, v11 │ │ -42f93c: 5a14 195f |00f6: iput-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42f940: 2808 |00f8: goto 0100 // +0008 │ │ -42f942: 5314 195f |00f9: iget-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42f946: 1606 ff00 |00fb: const-wide/16 v6, #int 255 // #ff │ │ -42f94a: c264 |00fd: xor-long/2addr v4, v6 │ │ -42f94c: 5a14 195f |00fe: iput-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42f950: 6200 125f |0100: sget-object v0, Lorg/purple/smoke/SipHash;.D_ROUNDS:[I // field@5f12 │ │ -42f954: 5214 155f |0102: iget v4, v1, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ -42f958: 4404 0004 |0104: aget v4, v0, v4 │ │ -42f95c: 32d4 1e00 |0106: if-eq v4, v13, 0124 // +001e │ │ -42f960: 3294 0300 |0108: if-eq v4, v9, 010b // +0003 │ │ -42f964: 2826 |010a: goto 0130 // +0026 │ │ -42f966: 7601 1ebd 1100 |010b: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f96c: 7601 1ebd 1100 |010e: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f972: 7601 1ebd 1100 |0111: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f978: 7601 1ebd 1100 |0114: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f97e: 7601 1ebd 1100 |0117: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f984: 7601 1ebd 1100 |011a: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f98a: 7601 1ebd 1100 |011d: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f990: 7601 1ebd 1100 |0120: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f996: 280d |0123: goto 0130 // +000d │ │ -42f998: 7601 1ebd 1100 |0124: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f99e: 7601 1ebd 1100 |0127: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f9a4: 7601 1ebd 1100 |012a: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f9aa: 7601 1ebd 1100 |012d: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42f9b0: 2384 4d1b |0130: new-array v4, v8, [J // type@1b4d │ │ -42f9b4: 5315 175f |0132: iget-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42f9b8: 5317 185f |0134: iget-wide v7, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42f9bc: c275 |0136: xor-long/2addr v5, v7 │ │ -42f9be: 531a 195f |0137: iget-wide v10, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42f9c2: c2a5 |0139: xor-long/2addr v5, v10 │ │ -42f9c4: 531a 1a5f |013a: iget-wide v10, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42f9c8: c2a5 |013c: xor-long/2addr v5, v10 │ │ -42f9ca: 120a |013d: const/4 v10, #int 0 // #0 │ │ -42f9cc: 4c05 040a |013e: aput-wide v5, v4, v10 │ │ -42f9d0: 1212 |0140: const/4 v2, #int 1 // #1 │ │ -42f9d2: 1605 0000 |0141: const-wide/16 v5, #int 0 // #0 │ │ -42f9d6: 4c05 0402 |0143: aput-wide v5, v4, v2 │ │ -42f9da: 3393 0c00 |0145: if-ne v3, v9, 0151 // +000c │ │ -42f9de: 5a15 1a5f |0147: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42f9e2: 5a15 195f |0149: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42f9e6: 5a15 185f |014b: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42f9ea: 5a15 175f |014d: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42f9ee: 1e11 |014f: monitor-exit v17 │ │ -42f9f0: 1104 |0150: return-object v4 │ │ -42f9f2: 1605 dd00 |0151: const-wide/16 v5, #int 221 // #dd │ │ -42f9f6: c275 |0153: xor-long/2addr v5, v7 │ │ -42f9f8: 5a15 185f |0154: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42f9fc: 5213 155f |0156: iget v3, v1, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ -42fa00: 4400 0003 |0158: aget v0, v0, v3 │ │ -42fa04: 32d0 1e00 |015a: if-eq v0, v13, 0178 // +001e │ │ -42fa08: 3290 0300 |015c: if-eq v0, v9, 015f // +0003 │ │ -42fa0c: 2826 |015e: goto 0184 // +0026 │ │ -42fa0e: 7601 1ebd 1100 |015f: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42fa14: 7601 1ebd 1100 |0162: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42fa1a: 7601 1ebd 1100 |0165: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42fa20: 7601 1ebd 1100 |0168: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42fa26: 7601 1ebd 1100 |016b: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42fa2c: 7601 1ebd 1100 |016e: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42fa32: 7601 1ebd 1100 |0171: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42fa38: 7601 1ebd 1100 |0174: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42fa3e: 280d |0177: goto 0184 // +000d │ │ -42fa40: 7601 1ebd 1100 |0178: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42fa46: 7601 1ebd 1100 |017b: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42fa4c: 7601 1ebd 1100 |017e: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42fa52: 7601 1ebd 1100 |0181: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ -42fa58: 5315 175f |0184: iget-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fa5c: 5317 185f |0186: iget-wide v7, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fa60: c275 |0188: xor-long/2addr v5, v7 │ │ -42fa62: 5317 195f |0189: iget-wide v7, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fa66: c275 |018b: xor-long/2addr v5, v7 │ │ -42fa68: 5317 1a5f |018c: iget-wide v7, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fa6c: c275 |018e: xor-long/2addr v5, v7 │ │ -42fa6e: 1210 |018f: const/4 v0, #int 1 // #1 │ │ -42fa70: 4c05 0400 |0190: aput-wide v5, v4, v0 │ │ -42fa74: 1602 0000 |0192: const-wide/16 v2, #int 0 // #0 │ │ -42fa78: 5a12 1a5f |0194: iput-wide v2, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fa7c: 5a12 195f |0196: iput-wide v2, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fa80: 5a12 185f |0198: iput-wide v2, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fa84: 5a12 175f |019a: iput-wide v2, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fa88: 1e11 |019c: monitor-exit v17 │ │ -42fa8a: 1104 |019d: return-object v4 │ │ -42fa8c: 2380 4d1b |019e: new-array v0, v8, [J // type@1b4d │ │ -42fa90: 1203 |01a0: const/4 v3, #int 0 // #0 │ │ -42fa92: 1604 0000 |01a1: const-wide/16 v4, #int 0 // #0 │ │ -42fa96: 4c04 0003 |01a3: aput-wide v4, v0, v3 │ │ -42fa9a: 1212 |01a5: const/4 v2, #int 1 // #1 │ │ -42fa9c: 4c04 0002 |01a6: aput-wide v4, v0, v2 │ │ -42faa0: 1e11 |01a8: monitor-exit v17 │ │ -42faa2: 1100 |01a9: return-object v0 │ │ -42faa4: 0d00 |01aa: move-exception v0 │ │ -42faa6: 1e11 |01ab: monitor-exit v17 │ │ -42faa8: 2802 |01ac: goto 01ae // +0002 │ │ -42faaa: 2700 |01ad: throw v0 │ │ -42faac: 28ff |01ae: goto 01ad // -0001 │ │ -42faae: 0000 |01af: nop // spacer │ │ -42fab0: 0001 0700 0100 0000 3600 0000 2f00 ... |01b0: packed-switch-data (18 units) │ │ +42f73c: |[42f73c] org.purple.smoke.SipHash.hmac:([B[BI)[J │ │ +42f74c: 0801 1100 |0000: move-object/from16 v1, v17 │ │ +42f750: 0800 1200 |0002: move-object/from16 v0, v18 │ │ +42f754: 0802 1300 |0004: move-object/from16 v2, v19 │ │ +42f758: 0203 1400 |0006: move/from16 v3, v20 │ │ +42f75c: 1d11 |0008: monitor-enter v17 │ │ +42f75e: 1204 |0009: const/4 v4, #int 0 // #0 │ │ +42f760: 1228 |000a: const/4 v8, #int 2 // #2 │ │ +42f762: 3800 9301 |000b: if-eqz v0, 019e // +0193 │ │ +42f766: 3802 9101 |000d: if-eqz v2, 019e // +0191 │ │ +42f76a: 2129 |000f: array-length v9, v2 │ │ +42f76c: 130a 1000 |0010: const/16 v10, #int 16 // #10 │ │ +42f770: 32a9 0400 |0012: if-eq v9, v10, 0016 // +0004 │ │ +42f774: 2900 8a01 |0014: goto/16 019e // +018a │ │ +42f778: 7030 1abd 2104 |0016: invoke-direct {v1, v2, v4}, Lorg/purple/smoke/SipHash;.byteArrayToLong:([BI)J // method@bd1a │ │ +42f77e: 0b0b |0019: move-result-wide v11 │ │ +42f780: 1309 0800 |001a: const/16 v9, #int 8 // #8 │ │ +42f784: 7030 1abd 2109 |001c: invoke-direct {v1, v2, v9}, Lorg/purple/smoke/SipHash;.byteArrayToLong:([BI)J // method@bd1a │ │ +42f78a: 0b0d |001f: move-result-wide v13 │ │ +42f78c: 180f 7565 7370 656d 6f73 |0020: const-wide v15, #double 1.09869e+248 // #736f6d6570736575 │ │ +42f796: a205 0b0f |0025: xor-long v5, v11, v15 │ │ +42f79a: 5a15 175f |0027: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42f79e: 1805 6d6f 646e 6172 6f64 |0029: const-wide v5, #double 6.2222e+175 // #646f72616e646f6d │ │ +42f7a8: c2d5 |002e: xor-long/2addr v5, v13 │ │ +42f7aa: 5a15 185f |002f: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42f7ae: 180f 6172 656e 6567 796c |0031: const-wide v15, #double 3.42087e+214 // #6c7967656e657261 │ │ +42f7b8: c2fb |0036: xor-long/2addr v11, v15 │ │ +42f7ba: 5a1b 195f |0037: iput-wide v11, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42f7be: 180b 7365 7479 6264 6574 |0039: const-wide v11, #double 4.90118e+252 // #7465646279746573 │ │ +42f7c8: c2db |003e: xor-long/2addr v11, v13 │ │ +42f7ca: 5a1b 1a5f |003f: iput-wide v11, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42f7ce: 160b ee00 |0041: const-wide/16 v11, #int 238 // #ee │ │ +42f7d2: 33a3 0500 |0043: if-ne v3, v10, 0048 // +0005 │ │ +42f7d6: c2b5 |0045: xor-long/2addr v5, v11 │ │ +42f7d8: 5a15 185f |0046: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42f7dc: 2105 |0048: array-length v5, v0 │ │ +42f7de: b395 |0049: div-int/2addr v5, v9 │ │ +42f7e0: 6206 115f |004a: sget-object v6, Lorg/purple/smoke/SipHash;.C_ROUNDS:[I // field@5f11 │ │ +42f7e4: 5217 145f |004c: iget v7, v1, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ +42f7e8: 4406 0607 |004e: aget v6, v6, v7 │ │ +42f7ec: 1207 |0050: const/4 v7, #int 0 // #0 │ │ +42f7ee: 124d |0051: const/4 v13, #int 4 // #4 │ │ +42f7f0: 3557 3200 |0052: if-ge v7, v5, 0084 // +0032 │ │ +42f7f4: da0e 0708 |0054: mul-int/lit8 v14, v7, #int 8 // #08 │ │ +42f7f8: 7030 1abd 010e |0056: invoke-direct {v1, v0, v14}, Lorg/purple/smoke/SipHash;.byteArrayToLong:([BI)J // method@bd1a │ │ +42f7fe: 0b0e |0059: move-result-wide v14 │ │ +42f800: 0213 0500 |005a: move/from16 v19, v5 │ │ +42f804: 5314 1a5f |005c: iget-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42f808: c2e4 |005e: xor-long/2addr v4, v14 │ │ +42f80a: 5a14 1a5f |005f: iput-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42f80e: 3286 1200 |0061: if-eq v6, v8, 0073 // +0012 │ │ +42f812: 32d6 0300 |0063: if-eq v6, v13, 0066 // +0003 │ │ +42f816: 2814 |0065: goto 0079 // +0014 │ │ +42f818: 7601 1ebd 1100 |0066: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f81e: 7601 1ebd 1100 |0069: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f824: 7601 1ebd 1100 |006c: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f82a: 7601 1ebd 1100 |006f: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f830: 2807 |0072: goto 0079 // +0007 │ │ +42f832: 7601 1ebd 1100 |0073: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f838: 7601 1ebd 1100 |0076: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f83e: 5314 175f |0079: iget-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42f842: c2e4 |007b: xor-long/2addr v4, v14 │ │ +42f844: 5a14 175f |007c: iput-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42f848: d807 0701 |007e: add-int/lit8 v7, v7, #int 1 // #01 │ │ +42f84c: 0205 1300 |0080: move/from16 v5, v19 │ │ +42f850: 1204 |0082: const/4 v4, #int 0 // #0 │ │ +42f852: 28ce |0083: goto 0051 // -0032 │ │ +42f854: 2104 |0084: array-length v4, v0 │ │ +42f856: b394 |0085: div-int/2addr v4, v9 │ │ +42f858: da04 0408 |0086: mul-int/lit8 v4, v4, #int 8 // #08 │ │ +42f85c: 2105 |0088: array-length v5, v0 │ │ +42f85e: 8155 |0089: int-to-long v5, v5 │ │ +42f860: 1307 3800 |008a: const/16 v7, #int 56 // #38 │ │ +42f864: c375 |008c: shl-long/2addr v5, v7 │ │ +42f866: 2107 |008d: array-length v7, v0 │ │ +42f868: b497 |008e: rem-int/2addr v7, v9 │ │ +42f86a: 2b07 2101 0000 |008f: packed-switch v7, 000001b0 // +00000121 │ │ +42f870: 2837 |0092: goto 00c9 // +0037 │ │ +42f872: d807 0406 |0093: add-int/lit8 v7, v4, #int 6 // #06 │ │ +42f876: 4807 0007 |0095: aget-byte v7, v0, v7 │ │ +42f87a: 817e |0097: int-to-long v14, v7 │ │ +42f87c: 1307 3000 |0098: const/16 v7, #int 48 // #30 │ │ +42f880: c37e |009a: shl-long/2addr v14, v7 │ │ +42f882: c1e5 |009b: or-long/2addr v5, v14 │ │ +42f884: d807 0405 |009c: add-int/lit8 v7, v4, #int 5 // #05 │ │ +42f888: 4807 0007 |009e: aget-byte v7, v0, v7 │ │ +42f88c: 817e |00a0: int-to-long v14, v7 │ │ +42f88e: 1307 2800 |00a1: const/16 v7, #int 40 // #28 │ │ +42f892: c37e |00a3: shl-long/2addr v14, v7 │ │ +42f894: c1e5 |00a4: or-long/2addr v5, v14 │ │ +42f896: d807 0404 |00a5: add-int/lit8 v7, v4, #int 4 // #04 │ │ +42f89a: 4807 0007 |00a7: aget-byte v7, v0, v7 │ │ +42f89e: 817e |00a9: int-to-long v14, v7 │ │ +42f8a0: 1307 2000 |00aa: const/16 v7, #int 32 // #20 │ │ +42f8a4: c37e |00ac: shl-long/2addr v14, v7 │ │ +42f8a6: c1e5 |00ad: or-long/2addr v5, v14 │ │ +42f8a8: d807 0403 |00ae: add-int/lit8 v7, v4, #int 3 // #03 │ │ +42f8ac: 4807 0007 |00b0: aget-byte v7, v0, v7 │ │ +42f8b0: 817e |00b2: int-to-long v14, v7 │ │ +42f8b2: 1307 1800 |00b3: const/16 v7, #int 24 // #18 │ │ +42f8b6: c37e |00b5: shl-long/2addr v14, v7 │ │ +42f8b8: c1e5 |00b6: or-long/2addr v5, v14 │ │ +42f8ba: d807 0402 |00b7: add-int/lit8 v7, v4, #int 2 // #02 │ │ +42f8be: 4807 0007 |00b9: aget-byte v7, v0, v7 │ │ +42f8c2: 817e |00bb: int-to-long v14, v7 │ │ +42f8c4: c3ae |00bc: shl-long/2addr v14, v10 │ │ +42f8c6: c1e5 |00bd: or-long/2addr v5, v14 │ │ +42f8c8: d807 0401 |00be: add-int/lit8 v7, v4, #int 1 // #01 │ │ +42f8cc: 4807 0007 |00c0: aget-byte v7, v0, v7 │ │ +42f8d0: 817e |00c2: int-to-long v14, v7 │ │ +42f8d2: c39e |00c3: shl-long/2addr v14, v9 │ │ +42f8d4: c1e5 |00c4: or-long/2addr v5, v14 │ │ +42f8d6: 4800 0004 |00c5: aget-byte v0, v0, v4 │ │ +42f8da: 810e |00c7: int-to-long v14, v0 │ │ +42f8dc: c1e5 |00c8: or-long/2addr v5, v14 │ │ +42f8de: 531e 1a5f |00c9: iget-wide v14, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42f8e2: c25e |00cb: xor-long/2addr v14, v5 │ │ +42f8e4: 5a1e 1a5f |00cc: iput-wide v14, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42f8e8: 6200 115f |00ce: sget-object v0, Lorg/purple/smoke/SipHash;.C_ROUNDS:[I // field@5f11 │ │ +42f8ec: 5214 145f |00d0: iget v4, v1, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ +42f8f0: 4400 0004 |00d2: aget v0, v0, v4 │ │ +42f8f4: 3280 1200 |00d4: if-eq v0, v8, 00e6 // +0012 │ │ +42f8f8: 32d0 0300 |00d6: if-eq v0, v13, 00d9 // +0003 │ │ +42f8fc: 2814 |00d8: goto 00ec // +0014 │ │ +42f8fe: 7601 1ebd 1100 |00d9: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f904: 7601 1ebd 1100 |00dc: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f90a: 7601 1ebd 1100 |00df: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f910: 7601 1ebd 1100 |00e2: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f916: 2807 |00e5: goto 00ec // +0007 │ │ +42f918: 7601 1ebd 1100 |00e6: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f91e: 7601 1ebd 1100 |00e9: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f924: 531e 175f |00ec: iget-wide v14, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42f928: c2e5 |00ee: xor-long/2addr v5, v14 │ │ +42f92a: 5a15 175f |00ef: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42f92e: 33a3 0800 |00f1: if-ne v3, v10, 00f9 // +0008 │ │ +42f932: 5314 195f |00f3: iget-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42f936: c2b4 |00f5: xor-long/2addr v4, v11 │ │ +42f938: 5a14 195f |00f6: iput-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42f93c: 2808 |00f8: goto 0100 // +0008 │ │ +42f93e: 5314 195f |00f9: iget-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42f942: 1606 ff00 |00fb: const-wide/16 v6, #int 255 // #ff │ │ +42f946: c264 |00fd: xor-long/2addr v4, v6 │ │ +42f948: 5a14 195f |00fe: iput-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42f94c: 6200 125f |0100: sget-object v0, Lorg/purple/smoke/SipHash;.D_ROUNDS:[I // field@5f12 │ │ +42f950: 5214 155f |0102: iget v4, v1, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ +42f954: 4404 0004 |0104: aget v4, v0, v4 │ │ +42f958: 32d4 1e00 |0106: if-eq v4, v13, 0124 // +001e │ │ +42f95c: 3294 0300 |0108: if-eq v4, v9, 010b // +0003 │ │ +42f960: 2826 |010a: goto 0130 // +0026 │ │ +42f962: 7601 1ebd 1100 |010b: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f968: 7601 1ebd 1100 |010e: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f96e: 7601 1ebd 1100 |0111: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f974: 7601 1ebd 1100 |0114: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f97a: 7601 1ebd 1100 |0117: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f980: 7601 1ebd 1100 |011a: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f986: 7601 1ebd 1100 |011d: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f98c: 7601 1ebd 1100 |0120: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f992: 280d |0123: goto 0130 // +000d │ │ +42f994: 7601 1ebd 1100 |0124: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f99a: 7601 1ebd 1100 |0127: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f9a0: 7601 1ebd 1100 |012a: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f9a6: 7601 1ebd 1100 |012d: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42f9ac: 2384 4d1b |0130: new-array v4, v8, [J // type@1b4d │ │ +42f9b0: 5315 175f |0132: iget-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42f9b4: 5317 185f |0134: iget-wide v7, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42f9b8: c275 |0136: xor-long/2addr v5, v7 │ │ +42f9ba: 531a 195f |0137: iget-wide v10, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42f9be: c2a5 |0139: xor-long/2addr v5, v10 │ │ +42f9c0: 531a 1a5f |013a: iget-wide v10, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42f9c4: c2a5 |013c: xor-long/2addr v5, v10 │ │ +42f9c6: 120a |013d: const/4 v10, #int 0 // #0 │ │ +42f9c8: 4c05 040a |013e: aput-wide v5, v4, v10 │ │ +42f9cc: 1212 |0140: const/4 v2, #int 1 // #1 │ │ +42f9ce: 1605 0000 |0141: const-wide/16 v5, #int 0 // #0 │ │ +42f9d2: 4c05 0402 |0143: aput-wide v5, v4, v2 │ │ +42f9d6: 3393 0c00 |0145: if-ne v3, v9, 0151 // +000c │ │ +42f9da: 5a15 1a5f |0147: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42f9de: 5a15 195f |0149: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42f9e2: 5a15 185f |014b: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42f9e6: 5a15 175f |014d: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42f9ea: 1e11 |014f: monitor-exit v17 │ │ +42f9ec: 1104 |0150: return-object v4 │ │ +42f9ee: 1605 dd00 |0151: const-wide/16 v5, #int 221 // #dd │ │ +42f9f2: c275 |0153: xor-long/2addr v5, v7 │ │ +42f9f4: 5a15 185f |0154: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42f9f8: 5213 155f |0156: iget v3, v1, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ +42f9fc: 4400 0003 |0158: aget v0, v0, v3 │ │ +42fa00: 32d0 1e00 |015a: if-eq v0, v13, 0178 // +001e │ │ +42fa04: 3290 0300 |015c: if-eq v0, v9, 015f // +0003 │ │ +42fa08: 2826 |015e: goto 0184 // +0026 │ │ +42fa0a: 7601 1ebd 1100 |015f: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42fa10: 7601 1ebd 1100 |0162: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42fa16: 7601 1ebd 1100 |0165: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42fa1c: 7601 1ebd 1100 |0168: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42fa22: 7601 1ebd 1100 |016b: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42fa28: 7601 1ebd 1100 |016e: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42fa2e: 7601 1ebd 1100 |0171: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42fa34: 7601 1ebd 1100 |0174: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42fa3a: 280d |0177: goto 0184 // +000d │ │ +42fa3c: 7601 1ebd 1100 |0178: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42fa42: 7601 1ebd 1100 |017b: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42fa48: 7601 1ebd 1100 |017e: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42fa4e: 7601 1ebd 1100 |0181: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd1e │ │ +42fa54: 5315 175f |0184: iget-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fa58: 5317 185f |0186: iget-wide v7, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fa5c: c275 |0188: xor-long/2addr v5, v7 │ │ +42fa5e: 5317 195f |0189: iget-wide v7, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fa62: c275 |018b: xor-long/2addr v5, v7 │ │ +42fa64: 5317 1a5f |018c: iget-wide v7, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fa68: c275 |018e: xor-long/2addr v5, v7 │ │ +42fa6a: 1210 |018f: const/4 v0, #int 1 // #1 │ │ +42fa6c: 4c05 0400 |0190: aput-wide v5, v4, v0 │ │ +42fa70: 1602 0000 |0192: const-wide/16 v2, #int 0 // #0 │ │ +42fa74: 5a12 1a5f |0194: iput-wide v2, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fa78: 5a12 195f |0196: iput-wide v2, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fa7c: 5a12 185f |0198: iput-wide v2, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fa80: 5a12 175f |019a: iput-wide v2, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fa84: 1e11 |019c: monitor-exit v17 │ │ +42fa86: 1104 |019d: return-object v4 │ │ +42fa88: 2380 4d1b |019e: new-array v0, v8, [J // type@1b4d │ │ +42fa8c: 1203 |01a0: const/4 v3, #int 0 // #0 │ │ +42fa8e: 1604 0000 |01a1: const-wide/16 v4, #int 0 // #0 │ │ +42fa92: 4c04 0003 |01a3: aput-wide v4, v0, v3 │ │ +42fa96: 1212 |01a5: const/4 v2, #int 1 // #1 │ │ +42fa98: 4c04 0002 |01a6: aput-wide v4, v0, v2 │ │ +42fa9c: 1e11 |01a8: monitor-exit v17 │ │ +42fa9e: 1100 |01a9: return-object v0 │ │ +42faa0: 0d00 |01aa: move-exception v0 │ │ +42faa2: 1e11 |01ab: monitor-exit v17 │ │ +42faa4: 2802 |01ac: goto 01ae // +0002 │ │ +42faa6: 2700 |01ad: throw v0 │ │ +42faa8: 28ff |01ae: goto 01ad // -0001 │ │ +42faaa: 0000 |01af: nop // spacer │ │ +42faac: 0001 0700 0100 0000 3600 0000 2f00 ... |01b0: packed-switch-data (18 units) │ │ catches : 3 │ │ 0x000f - 0x014f │ │ -> 0x01aa │ │ 0x0154 - 0x019c │ │ -> 0x01aa │ │ 0x019e - 0x01a8 │ │ -> 0x01aa │ │ @@ -741601,31 +741600,31 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 29 16-bit code units │ │ -42f564: |[42f564] org.purple.smoke.SipHashIdElement.:()V │ │ -42f574: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42f57a: 1a00 0000 |0003: const-string v0, "" // string@0000 │ │ -42f57e: 5b20 1b5f |0005: iput-object v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_encryptionAlgorithm:Ljava/lang/String; // field@5f1b │ │ -42f582: 5b20 205f |0007: iput-object v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_name:Ljava/lang/String; // field@5f20 │ │ -42f586: 5b20 235f |0009: iput-object v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_sipHashId:Ljava/lang/String; // field@5f23 │ │ -42f58a: 1200 |000b: const/4 v0, #int 0 // #0 │ │ -42f58c: 5c20 1d5f |000c: iput-boolean v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_epksCompleted:Z // field@5f1d │ │ -42f590: 5c20 1f5f |000e: iput-boolean v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_keysSigned:Z // field@5f1f │ │ -42f594: 1201 |0010: const/4 v1, #int 0 // #0 │ │ -42f596: 5b21 1c5f |0011: iput-object v1, v2, Lorg/purple/smoke/SipHashIdElement;.m_encryptionPublicKey:[B // field@5f1c │ │ -42f59a: 5b21 225f |0013: iput-object v1, v2, Lorg/purple/smoke/SipHashIdElement;.m_signaturePublicKey:[B // field@5f22 │ │ -42f59e: 5b21 245f |0015: iput-object v1, v2, Lorg/purple/smoke/SipHashIdElement;.m_stream:[B // field@5f24 │ │ -42f5a2: 5920 1e5f |0017: iput v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_fiascoKeys:I // field@5f1e │ │ -42f5a6: 12f0 |0019: const/4 v0, #int -1 // #ff │ │ -42f5a8: 5920 215f |001a: iput v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_oid:I // field@5f21 │ │ -42f5ac: 0e00 |001c: return-void │ │ +42f560: |[42f560] org.purple.smoke.SipHashIdElement.:()V │ │ +42f570: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42f576: 1a00 0000 |0003: const-string v0, "" // string@0000 │ │ +42f57a: 5b20 1b5f |0005: iput-object v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_encryptionAlgorithm:Ljava/lang/String; // field@5f1b │ │ +42f57e: 5b20 205f |0007: iput-object v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_name:Ljava/lang/String; // field@5f20 │ │ +42f582: 5b20 235f |0009: iput-object v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_sipHashId:Ljava/lang/String; // field@5f23 │ │ +42f586: 1200 |000b: const/4 v0, #int 0 // #0 │ │ +42f588: 5c20 1d5f |000c: iput-boolean v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_epksCompleted:Z // field@5f1d │ │ +42f58c: 5c20 1f5f |000e: iput-boolean v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_keysSigned:Z // field@5f1f │ │ +42f590: 1201 |0010: const/4 v1, #int 0 // #0 │ │ +42f592: 5b21 1c5f |0011: iput-object v1, v2, Lorg/purple/smoke/SipHashIdElement;.m_encryptionPublicKey:[B // field@5f1c │ │ +42f596: 5b21 225f |0013: iput-object v1, v2, Lorg/purple/smoke/SipHashIdElement;.m_signaturePublicKey:[B // field@5f22 │ │ +42f59a: 5b21 245f |0015: iput-object v1, v2, Lorg/purple/smoke/SipHashIdElement;.m_stream:[B // field@5f24 │ │ +42f59e: 5920 1e5f |0017: iput v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_fiascoKeys:I // field@5f1e │ │ +42f5a2: 12f0 |0019: const/4 v0, #int -1 // #ff │ │ +42f5a4: 5920 215f |001a: iput v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_oid:I // field@5f21 │ │ +42f5a8: 0e00 |001c: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=44 │ │ 0x0005 line=32 │ │ 0x0007 line=33 │ │ 0x0009 line=34 │ │ 0x000c line=35 │ │ @@ -741674,18 +741673,18 @@ │ │ type : '(Landroid/content/Context;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -42fd1c: |[42fd1c] org.purple.smoke.Smoke$1.:(Landroid/content/Context;)V │ │ -42fd2c: 5b01 255f |0000: iput-object v1, v0, Lorg/purple/smoke/Smoke$1;.val$context:Landroid/content/Context; // field@5f25 │ │ -42fd30: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42fd36: 0e00 |0005: return-void │ │ +42fd18: |[42fd18] org.purple.smoke.Smoke$1.:(Landroid/content/Context;)V │ │ +42fd28: 5b01 255f |0000: iput-object v1, v0, Lorg/purple/smoke/Smoke$1;.val$context:Landroid/content/Context; // field@5f25 │ │ +42fd2c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42fd32: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=64 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Smoke$1; │ │ 0x0000 - 0x0006 reg=1 (null) Landroid/content/Context; │ │ │ │ @@ -741695,43 +741694,43 @@ │ │ type : '(Landroid/content/DialogInterface;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 59 16-bit code units │ │ -42fd38: |[42fd38] org.purple.smoke.Smoke$1.onCancel:(Landroid/content/DialogInterface;)V │ │ -42fd48: 7100 6fbd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42fd4e: 0c02 |0003: move-result-object v2 │ │ -42fd50: 1a00 c463 |0004: const-string v0, "dialog_accepted" // string@63c4 │ │ -42fd54: 6e20 70bd 0200 |0006: invoke-virtual {v2, v0}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd70 │ │ -42fd5a: 0c02 |0009: move-result-object v2 │ │ -42fd5c: 1a00 95a5 |000a: const-string v0, "true" // string@a595 │ │ -42fd60: 6e20 b85c 0200 |000c: invoke-virtual {v2, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42fd66: 0a02 |000f: move-result v2 │ │ -42fd68: 3802 2a00 |0010: if-eqz v2, 003a // +002a │ │ -42fd6c: 7100 8db9 0000 |0012: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ -42fd72: 0c02 |0015: move-result-object v2 │ │ -42fd74: 6e10 83b9 0200 |0016: invoke-virtual {v2}, Lorg/purple/smoke/Cryptography;.exit:()V // method@b983 │ │ -42fd7a: 7100 26bd 0000 |0019: invoke-static {}, Lorg/purple/smoke/Smoke;.getApplication:()Lorg/purple/smoke/Smoke; // method@bd26 │ │ -42fd80: 0c02 |001c: move-result-object v2 │ │ -42fd82: 7110 36bd 0200 |001d: invoke-static {v2}, Lorg/purple/smoke/SmokeService;.stopForegroundTask:(Landroid/content/Context;)V // method@bd36 │ │ -42fd88: 7100 6fbd 0000 |0020: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42fd8e: 0c02 |0023: move-result-object v2 │ │ -42fd90: 6e10 85bd 0200 |0024: invoke-virtual {v2}, Lorg/purple/smoke/State;.setExit:()V // method@bd85 │ │ -42fd96: 5412 255f |0027: iget-object v2, v1, Lorg/purple/smoke/Smoke$1;.val$context:Landroid/content/Context; // field@5f25 │ │ -42fd9a: 2020 1700 |0029: instance-of v0, v2, Landroid/app/Activity; // type@0017 │ │ -42fd9e: 3800 0800 |002b: if-eqz v0, 0033 // +0008 │ │ -42fda2: 1f02 1700 |002d: check-cast v2, Landroid/app/Activity; // type@0017 │ │ -42fda6: 6e10 6900 0200 |002f: invoke-virtual {v2}, Landroid/app/Activity;.finishAndRemoveTask:()V // method@0069 │ │ -42fdac: 2808 |0032: goto 003a // +0008 │ │ -42fdae: 7100 5705 0000 |0033: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ -42fdb4: 0a02 |0036: move-result v2 │ │ -42fdb6: 7110 5605 0200 |0037: invoke-static {v2}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ -42fdbc: 0e00 |003a: return-void │ │ +42fd34: |[42fd34] org.purple.smoke.Smoke$1.onCancel:(Landroid/content/DialogInterface;)V │ │ +42fd44: 7100 6fbd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42fd4a: 0c02 |0003: move-result-object v2 │ │ +42fd4c: 1a00 c463 |0004: const-string v0, "dialog_accepted" // string@63c4 │ │ +42fd50: 6e20 70bd 0200 |0006: invoke-virtual {v2, v0}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd70 │ │ +42fd56: 0c02 |0009: move-result-object v2 │ │ +42fd58: 1a00 95a5 |000a: const-string v0, "true" // string@a595 │ │ +42fd5c: 6e20 b85c 0200 |000c: invoke-virtual {v2, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42fd62: 0a02 |000f: move-result v2 │ │ +42fd64: 3802 2a00 |0010: if-eqz v2, 003a // +002a │ │ +42fd68: 7100 8db9 0000 |0012: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ +42fd6e: 0c02 |0015: move-result-object v2 │ │ +42fd70: 6e10 83b9 0200 |0016: invoke-virtual {v2}, Lorg/purple/smoke/Cryptography;.exit:()V // method@b983 │ │ +42fd76: 7100 26bd 0000 |0019: invoke-static {}, Lorg/purple/smoke/Smoke;.getApplication:()Lorg/purple/smoke/Smoke; // method@bd26 │ │ +42fd7c: 0c02 |001c: move-result-object v2 │ │ +42fd7e: 7110 36bd 0200 |001d: invoke-static {v2}, Lorg/purple/smoke/SmokeService;.stopForegroundTask:(Landroid/content/Context;)V // method@bd36 │ │ +42fd84: 7100 6fbd 0000 |0020: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42fd8a: 0c02 |0023: move-result-object v2 │ │ +42fd8c: 6e10 85bd 0200 |0024: invoke-virtual {v2}, Lorg/purple/smoke/State;.setExit:()V // method@bd85 │ │ +42fd92: 5412 255f |0027: iget-object v2, v1, Lorg/purple/smoke/Smoke$1;.val$context:Landroid/content/Context; // field@5f25 │ │ +42fd96: 2020 1700 |0029: instance-of v0, v2, Landroid/app/Activity; // type@0017 │ │ +42fd9a: 3800 0800 |002b: if-eqz v0, 0033 // +0008 │ │ +42fd9e: 1f02 1700 |002d: check-cast v2, Landroid/app/Activity; // type@0017 │ │ +42fda2: 6e10 6900 0200 |002f: invoke-virtual {v2}, Landroid/app/Activity;.finishAndRemoveTask:()V // method@0069 │ │ +42fda8: 2808 |0032: goto 003a // +0008 │ │ +42fdaa: 7100 5705 0000 |0033: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ +42fdb0: 0a02 |0036: move-result v2 │ │ +42fdb2: 7110 5605 0200 |0037: invoke-static {v2}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ +42fdb8: 0e00 |003a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=67 │ │ 0x000c line=68 │ │ 0x0012 line=70 │ │ 0x0019 line=71 │ │ 0x0020 line=72 │ │ @@ -741771,32 +741770,32 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 0 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -4308b8: |[4308b8] org.purple.smoke.Smoke.:()V │ │ -4308c8: 0e00 |0000: return-void │ │ +4308b4: |[4308b4] org.purple.smoke.Smoke.:()V │ │ +4308c4: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #1 : (in Lorg/purple/smoke/Smoke;) │ │ name : '' │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -4308cc: |[4308cc] org.purple.smoke.Smoke.:()V │ │ -4308dc: 7010 a500 0000 |0000: invoke-direct {v0}, Landroid/app/Application;.:()V // method@00a5 │ │ -4308e2: 0e00 |0003: return-void │ │ +4308c8: |[4308c8] org.purple.smoke.Smoke.:()V │ │ +4308d8: 7010 a500 0000 |0000: invoke-direct {v0}, Landroid/app/Application;.:()V // method@00a5 │ │ +4308de: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=35 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lorg/purple/smoke/Smoke; │ │ │ │ #2 : (in Lorg/purple/smoke/Smoke;) │ │ @@ -741804,47 +741803,47 @@ │ │ type : '(ZLandroid/content/Context;)V' │ │ access : 0x20009 (PUBLIC STATIC DECLARED_SYNCHRONIZED) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 63 16-bit code units │ │ -4308e4: |[4308e4] org.purple.smoke.Smoke.exit:(ZLandroid/content/Context;)V │ │ -4308f4: 1c00 0e1b |0000: const-class v0, Lorg/purple/smoke/Smoke; // type@1b0e │ │ -4308f8: 1d00 |0002: monitor-enter v0 │ │ -4308fa: 3802 0f00 |0003: if-eqz v2, 0012 // +000f │ │ -4308fe: 3803 0d00 |0005: if-eqz v3, 0012 // +000d │ │ -430902: 2202 0d1b |0007: new-instance v2, Lorg/purple/smoke/Smoke$1; // type@1b0d │ │ -430906: 7020 21bd 3200 |0009: invoke-direct {v2, v3}, Lorg/purple/smoke/Smoke$1;.:(Landroid/content/Context;)V // method@bd21 │ │ -43090c: 1a01 764e |000c: const-string v1, "Terminate Smoke?" // string@4e76 │ │ -430910: 7130 f7bb 2301 |000e: invoke-static {v3, v2, v1}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbf7 │ │ -430916: 2829 |0011: goto 003a // +0029 │ │ -430918: 7100 8db9 0000 |0012: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ -43091e: 0c02 |0015: move-result-object v2 │ │ -430920: 6e10 83b9 0200 |0016: invoke-virtual {v2}, Lorg/purple/smoke/Cryptography;.exit:()V // method@b983 │ │ -430926: 7100 26bd 0000 |0019: invoke-static {}, Lorg/purple/smoke/Smoke;.getApplication:()Lorg/purple/smoke/Smoke; // method@bd26 │ │ -43092c: 0c02 |001c: move-result-object v2 │ │ -43092e: 7110 36bd 0200 |001d: invoke-static {v2}, Lorg/purple/smoke/SmokeService;.stopForegroundTask:(Landroid/content/Context;)V // method@bd36 │ │ -430934: 7100 6fbd 0000 |0020: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -43093a: 0c02 |0023: move-result-object v2 │ │ -43093c: 6e10 85bd 0200 |0024: invoke-virtual {v2}, Lorg/purple/smoke/State;.setExit:()V // method@bd85 │ │ -430942: 3803 0c00 |0027: if-eqz v3, 0033 // +000c │ │ -430946: 2032 1700 |0029: instance-of v2, v3, Landroid/app/Activity; // type@0017 │ │ -43094a: 3802 0800 |002b: if-eqz v2, 0033 // +0008 │ │ -43094e: 1f03 1700 |002d: check-cast v3, Landroid/app/Activity; // type@0017 │ │ -430952: 6e10 6900 0300 |002f: invoke-virtual {v3}, Landroid/app/Activity;.finishAndRemoveTask:()V // method@0069 │ │ -430958: 2808 |0032: goto 003a // +0008 │ │ -43095a: 7100 5705 0000 |0033: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ -430960: 0a02 |0036: move-result v2 │ │ -430962: 7110 5605 0200 |0037: invoke-static {v2}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ -430968: 1e00 |003a: monitor-exit v0 │ │ -43096a: 0e00 |003b: return-void │ │ -43096c: 0d02 |003c: move-exception v2 │ │ -43096e: 1e00 |003d: monitor-exit v0 │ │ -430970: 2702 |003e: throw v2 │ │ +4308e0: |[4308e0] org.purple.smoke.Smoke.exit:(ZLandroid/content/Context;)V │ │ +4308f0: 1c00 0e1b |0000: const-class v0, Lorg/purple/smoke/Smoke; // type@1b0e │ │ +4308f4: 1d00 |0002: monitor-enter v0 │ │ +4308f6: 3802 0f00 |0003: if-eqz v2, 0012 // +000f │ │ +4308fa: 3803 0d00 |0005: if-eqz v3, 0012 // +000d │ │ +4308fe: 2202 0d1b |0007: new-instance v2, Lorg/purple/smoke/Smoke$1; // type@1b0d │ │ +430902: 7020 21bd 3200 |0009: invoke-direct {v2, v3}, Lorg/purple/smoke/Smoke$1;.:(Landroid/content/Context;)V // method@bd21 │ │ +430908: 1a01 764e |000c: const-string v1, "Terminate Smoke?" // string@4e76 │ │ +43090c: 7130 f7bb 2301 |000e: invoke-static {v3, v2, v1}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbf7 │ │ +430912: 2829 |0011: goto 003a // +0029 │ │ +430914: 7100 8db9 0000 |0012: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ +43091a: 0c02 |0015: move-result-object v2 │ │ +43091c: 6e10 83b9 0200 |0016: invoke-virtual {v2}, Lorg/purple/smoke/Cryptography;.exit:()V // method@b983 │ │ +430922: 7100 26bd 0000 |0019: invoke-static {}, Lorg/purple/smoke/Smoke;.getApplication:()Lorg/purple/smoke/Smoke; // method@bd26 │ │ +430928: 0c02 |001c: move-result-object v2 │ │ +43092a: 7110 36bd 0200 |001d: invoke-static {v2}, Lorg/purple/smoke/SmokeService;.stopForegroundTask:(Landroid/content/Context;)V // method@bd36 │ │ +430930: 7100 6fbd 0000 |0020: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +430936: 0c02 |0023: move-result-object v2 │ │ +430938: 6e10 85bd 0200 |0024: invoke-virtual {v2}, Lorg/purple/smoke/State;.setExit:()V // method@bd85 │ │ +43093e: 3803 0c00 |0027: if-eqz v3, 0033 // +000c │ │ +430942: 2032 1700 |0029: instance-of v2, v3, Landroid/app/Activity; // type@0017 │ │ +430946: 3802 0800 |002b: if-eqz v2, 0033 // +0008 │ │ +43094a: 1f03 1700 |002d: check-cast v3, Landroid/app/Activity; // type@0017 │ │ +43094e: 6e10 6900 0300 |002f: invoke-virtual {v3}, Landroid/app/Activity;.finishAndRemoveTask:()V // method@0069 │ │ +430954: 2808 |0032: goto 003a // +0008 │ │ +430956: 7100 5705 0000 |0033: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ +43095c: 0a02 |0036: move-result v2 │ │ +43095e: 7110 5605 0200 |0037: invoke-static {v2}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ +430964: 1e00 |003a: monitor-exit v0 │ │ +430966: 0e00 |003b: return-void │ │ +430968: 0d02 |003c: move-exception v2 │ │ +43096a: 1e00 |003d: monitor-exit v0 │ │ +43096c: 2702 |003e: throw v2 │ │ catches : 1 │ │ 0x0007 - 0x003a │ │ -> 0x003c │ │ positions : │ │ 0x0007 line=62 │ │ 0x000e line=84 │ │ 0x0012 line=88 │ │ @@ -741863,23 +741862,23 @@ │ │ type : '()Lorg/purple/smoke/Smoke;' │ │ access : 0x20009 (PUBLIC STATIC DECLARED_SYNCHRONIZED) │ │ code - │ │ registers : 2 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 10 16-bit code units │ │ -430044: |[430044] org.purple.smoke.Smoke.getApplication:()Lorg/purple/smoke/Smoke; │ │ -430054: 1c00 0e1b |0000: const-class v0, Lorg/purple/smoke/Smoke; // type@1b0e │ │ -430058: 1d00 |0002: monitor-enter v0 │ │ -43005a: 6201 265f |0003: sget-object v1, Lorg/purple/smoke/Smoke;.s_instance:Lorg/purple/smoke/Smoke; // field@5f26 │ │ -43005e: 1e00 |0005: monitor-exit v0 │ │ -430060: 1101 |0006: return-object v1 │ │ -430062: 0d01 |0007: move-exception v1 │ │ -430064: 1e00 |0008: monitor-exit v0 │ │ -430066: 2701 |0009: throw v1 │ │ +430040: |[430040] org.purple.smoke.Smoke.getApplication:()Lorg/purple/smoke/Smoke; │ │ +430050: 1c00 0e1b |0000: const-class v0, Lorg/purple/smoke/Smoke; // type@1b0e │ │ +430054: 1d00 |0002: monitor-enter v0 │ │ +430056: 6201 265f |0003: sget-object v1, Lorg/purple/smoke/Smoke;.s_instance:Lorg/purple/smoke/Smoke; // field@5f26 │ │ +43005a: 1e00 |0005: monitor-exit v0 │ │ +43005c: 1101 |0006: return-object v1 │ │ +43005e: 0d01 |0007: move-exception v1 │ │ +430060: 1e00 |0008: monitor-exit v0 │ │ +430062: 2701 |0009: throw v1 │ │ catches : 1 │ │ 0x0003 - 0x0005 │ │ -> 0x0007 │ │ positions : │ │ 0x0003 line=55 │ │ locals : │ │ │ │ @@ -741888,34 +741887,34 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 3 │ │ ins : 0 │ │ outs : 2 │ │ insns size : 40 16-bit code units │ │ -42ffe4: |[42ffe4] org.purple.smoke.Smoke.networkStatusString:()Ljava/lang/String; │ │ -42fff4: 7100 0bbb 0000 |0000: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -42fffa: 0c00 |0003: move-result-object v0 │ │ -42fffc: 6e10 ffba 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.connectedNeighborAddress:()Ljava/lang/String; // method@baff │ │ -430002: 0c00 |0007: move-result-object v0 │ │ -430004: 6e10 c35c 0000 |0008: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -43000a: 0a01 |000b: move-result v1 │ │ -43000c: 3801 0500 |000c: if-eqz v1, 0011 // +0005 │ │ -430010: 1a00 8717 |000e: const-string v0, "Disconnected" // string@1787 │ │ -430014: 1100 |0010: return-object v0 │ │ -430016: 2201 f10a |0011: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -43001a: 7010 ee5c 0100 |0013: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -430020: 1a02 0f14 |0016: const-string v2, "Connected (" // string@140f │ │ -430024: 6e20 f95c 2100 |0018: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43002a: 6e20 f95c 0100 |001b: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -430030: 1a00 ec03 |001e: const-string v0, ")" // string@03ec │ │ -430034: 6e20 f95c 0100 |0020: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43003a: 6e10 035d 0100 |0023: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -430040: 0c00 |0026: move-result-object v0 │ │ -430042: 1100 |0027: return-object v0 │ │ +42ffe0: |[42ffe0] org.purple.smoke.Smoke.networkStatusString:()Ljava/lang/String; │ │ +42fff0: 7100 0bbb 0000 |0000: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +42fff6: 0c00 |0003: move-result-object v0 │ │ +42fff8: 6e10 ffba 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.connectedNeighborAddress:()Ljava/lang/String; // method@baff │ │ +42fffe: 0c00 |0007: move-result-object v0 │ │ +430000: 6e10 c35c 0000 |0008: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +430006: 0a01 |000b: move-result v1 │ │ +430008: 3801 0500 |000c: if-eqz v1, 0011 // +0005 │ │ +43000c: 1a00 8717 |000e: const-string v0, "Disconnected" // string@1787 │ │ +430010: 1100 |0010: return-object v0 │ │ +430012: 2201 f10a |0011: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +430016: 7010 ee5c 0100 |0013: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +43001c: 1a02 0f14 |0016: const-string v2, "Connected (" // string@140f │ │ +430020: 6e20 f95c 2100 |0018: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +430026: 6e20 f95c 0100 |001b: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43002c: 1a00 ec03 |001e: const-string v0, ")" // string@03ec │ │ +430030: 6e20 f95c 0100 |0020: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +430036: 6e10 035d 0100 |0023: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +43003c: 0c00 |0026: move-result-object v0 │ │ +43003e: 1100 |0027: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=41 │ │ 0x0008 line=43 │ │ 0x0011 line=46 │ │ locals : │ │ │ │ @@ -741925,19 +741924,19 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 9 16-bit code units │ │ -430980: |[430980] org.purple.smoke.Smoke.onCreate:()V │ │ -430990: 6f10 a600 0000 |0000: invoke-super {v0}, Landroid/app/Application;.onCreate:()V // method@00a6 │ │ -430996: 7100 c4b8 0000 |0003: invoke-static {}, Lorg/purple/smoke/About;.about:()Ljava/lang/String; // method@b8c4 │ │ -43099c: 6900 265f |0006: sput-object v0, Lorg/purple/smoke/Smoke;.s_instance:Lorg/purple/smoke/Smoke; // field@5f26 │ │ -4309a0: 0e00 |0008: return-void │ │ +43097c: |[43097c] org.purple.smoke.Smoke.onCreate:()V │ │ +43098c: 6f10 a600 0000 |0000: invoke-super {v0}, Landroid/app/Application;.onCreate:()V // method@00a6 │ │ +430992: 7100 c4b8 0000 |0003: invoke-static {}, Lorg/purple/smoke/About;.about:()Ljava/lang/String; // method@b8c4 │ │ +430998: 6900 265f |0006: sput-object v0, Lorg/purple/smoke/Smoke;.s_instance:Lorg/purple/smoke/Smoke; // field@5f26 │ │ +43099c: 0e00 |0008: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=102 │ │ 0x0003 line=103 │ │ 0x0006 line=104 │ │ locals : │ │ 0x0000 - 0x0009 reg=0 this Lorg/purple/smoke/Smoke; │ │ @@ -741947,23 +741946,23 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 18 16-bit code units │ │ -4309a4: |[4309a4] org.purple.smoke.Smoke.onLowMemory:()V │ │ -4309b4: 6f10 a700 0100 |0000: invoke-super {v1}, Landroid/app/Application;.onLowMemory:()V // method@00a7 │ │ -4309ba: 7100 0bbb 0000 |0003: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -4309c0: 0c00 |0006: move-result-object v0 │ │ -4309c2: 6e10 fdba 0000 |0007: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.clearMessagesToSend:()V // method@bafd │ │ -4309c8: 7100 0bbb 0000 |000a: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -4309ce: 0c00 |000d: move-result-object v0 │ │ -4309d0: 6e10 feba 0000 |000e: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.clearNeighborQueues:()V // method@bafe │ │ -4309d6: 0e00 |0011: return-void │ │ +4309a0: |[4309a0] org.purple.smoke.Smoke.onLowMemory:()V │ │ +4309b0: 6f10 a700 0100 |0000: invoke-super {v1}, Landroid/app/Application;.onLowMemory:()V // method@00a7 │ │ +4309b6: 7100 0bbb 0000 |0003: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +4309bc: 0c00 |0006: move-result-object v0 │ │ +4309be: 6e10 fdba 0000 |0007: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.clearMessagesToSend:()V // method@bafd │ │ +4309c4: 7100 0bbb 0000 |000a: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +4309ca: 0c00 |000d: move-result-object v0 │ │ +4309cc: 6e10 feba 0000 |000e: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.clearNeighborQueues:()V // method@bafe │ │ +4309d2: 0e00 |0011: return-void │ │ catches : 2 │ │ 0x0003 - 0x000a │ │ Ljava/lang/Exception; -> 0x000a │ │ 0x000a - 0x0011 │ │ Ljava/lang/Exception; -> 0x0011 │ │ positions : │ │ 0x0000 line=110 │ │ @@ -742006,19 +742005,19 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -42fe5c: |[42fe5c] org.purple.smoke.SmokeService.:()V │ │ -42fe6c: 7010 3901 0100 |0000: invoke-direct {v1}, Landroid/app/Service;.:()V // method@0139 │ │ -42fe72: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -42fe74: 5c10 285f |0004: iput-boolean v0, v1, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ -42fe78: 0e00 |0006: return-void │ │ +42fe58: |[42fe58] org.purple.smoke.SmokeService.:()V │ │ +42fe68: 7010 3901 0100 |0000: invoke-direct {v1}, Landroid/app/Service;.:()V // method@0139 │ │ +42fe6e: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +42fe70: 5c10 285f |0004: iput-boolean v0, v1, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ +42fe74: 0e00 |0006: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=37 │ │ 0x0004 line=39 │ │ locals : │ │ 0x0000 - 0x0007 reg=1 this Lorg/purple/smoke/SmokeService; │ │ │ │ @@ -742027,46 +742026,46 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 63 16-bit code units │ │ -42febc: |[42febc] org.purple.smoke.SmokeService.start:()V │ │ -42fecc: 5530 285f |0000: iget-boolean v0, v3, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ -42fed0: 3800 0300 |0002: if-eqz v0, 0005 // +0003 │ │ -42fed4: 0e00 |0004: return-void │ │ -42fed6: 1210 |0005: const/4 v0, #int 1 // #1 │ │ -42fed8: 5c30 285f |0006: iput-boolean v0, v3, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ -42fedc: 2200 4900 |0008: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -42fee0: 1c01 0a1b |000a: const-class v1, Lorg/purple/smoke/Settings; // type@1b0a │ │ -42fee4: 7030 9e01 3001 |000c: invoke-direct {v0, v3, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -42feea: 1201 |000f: const/4 v1, #int 0 // #0 │ │ -42feec: 1502 0040 |0010: const/high16 v2, #int 1073741824 // #4000 │ │ -42fef0: 7140 1501 1320 |0012: invoke-static {v3, v1, v0, v2}, Landroid/app/PendingIntent;.getActivity:(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent; // method@0115 │ │ -42fef6: 0c00 |0015: move-result-object v0 │ │ -42fef8: 2201 2300 |0016: new-instance v1, Landroid/app/Notification$Builder; // type@0023 │ │ -42fefc: 7020 cc00 3100 |0018: invoke-direct {v1, v3}, Landroid/app/Notification$Builder;.:(Landroid/content/Context;)V // method@00cc │ │ -42ff02: 6e20 d700 0100 |001b: invoke-virtual {v1, v0}, Landroid/app/Notification$Builder;.setContentIntent:(Landroid/app/PendingIntent;)Landroid/app/Notification$Builder; // method@00d7 │ │ -42ff08: 0c00 |001e: move-result-object v0 │ │ -42ff0a: 1a01 234c |001f: const-string v1, "Smoke Activity" // string@4c23 │ │ -42ff0e: 6e20 d800 1000 |0021: invoke-virtual {v0, v1}, Landroid/app/Notification$Builder;.setContentText:(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; // method@00d8 │ │ -42ff14: 0c00 |0024: move-result-object v0 │ │ -42ff16: 6e20 d900 1000 |0025: invoke-virtual {v0, v1}, Landroid/app/Notification$Builder;.setContentTitle:(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; // method@00d9 │ │ -42ff1c: 0c00 |0028: move-result-object v0 │ │ -42ff1e: 1402 8600 077f |0029: const v2, #float 1.79448e+38 // #7f070086 │ │ -42ff24: 6e20 ee00 2000 |002c: invoke-virtual {v0, v2}, Landroid/app/Notification$Builder;.setSmallIcon:(I)Landroid/app/Notification$Builder; // method@00ee │ │ -42ff2a: 0c00 |002f: move-result-object v0 │ │ -42ff2c: 6e20 f400 1000 |0030: invoke-virtual {v0, v1}, Landroid/app/Notification$Builder;.setTicker:(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; // method@00f4 │ │ -42ff32: 0c00 |0033: move-result-object v0 │ │ -42ff34: 6e10 d000 0000 |0034: invoke-virtual {v0}, Landroid/app/Notification$Builder;.build:()Landroid/app/Notification; // method@00d0 │ │ -42ff3a: 0c00 |0037: move-result-object v0 │ │ -42ff3c: 1401 6b6f 6d73 |0038: const v1, #float 1.88116e+31 // #736d6f6b │ │ -42ff42: 6e30 32bd 1300 |003b: invoke-virtual {v3, v1, v0}, Lorg/purple/smoke/SmokeService;.startForeground:(ILandroid/app/Notification;)V // method@bd32 │ │ -42ff48: 0e00 |003e: return-void │ │ +42feb8: |[42feb8] org.purple.smoke.SmokeService.start:()V │ │ +42fec8: 5530 285f |0000: iget-boolean v0, v3, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ +42fecc: 3800 0300 |0002: if-eqz v0, 0005 // +0003 │ │ +42fed0: 0e00 |0004: return-void │ │ +42fed2: 1210 |0005: const/4 v0, #int 1 // #1 │ │ +42fed4: 5c30 285f |0006: iput-boolean v0, v3, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ +42fed8: 2200 4900 |0008: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +42fedc: 1c01 0a1b |000a: const-class v1, Lorg/purple/smoke/Settings; // type@1b0a │ │ +42fee0: 7030 9e01 3001 |000c: invoke-direct {v0, v3, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +42fee6: 1201 |000f: const/4 v1, #int 0 // #0 │ │ +42fee8: 1502 0040 |0010: const/high16 v2, #int 1073741824 // #4000 │ │ +42feec: 7140 1501 1320 |0012: invoke-static {v3, v1, v0, v2}, Landroid/app/PendingIntent;.getActivity:(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent; // method@0115 │ │ +42fef2: 0c00 |0015: move-result-object v0 │ │ +42fef4: 2201 2300 |0016: new-instance v1, Landroid/app/Notification$Builder; // type@0023 │ │ +42fef8: 7020 cc00 3100 |0018: invoke-direct {v1, v3}, Landroid/app/Notification$Builder;.:(Landroid/content/Context;)V // method@00cc │ │ +42fefe: 6e20 d700 0100 |001b: invoke-virtual {v1, v0}, Landroid/app/Notification$Builder;.setContentIntent:(Landroid/app/PendingIntent;)Landroid/app/Notification$Builder; // method@00d7 │ │ +42ff04: 0c00 |001e: move-result-object v0 │ │ +42ff06: 1a01 234c |001f: const-string v1, "Smoke Activity" // string@4c23 │ │ +42ff0a: 6e20 d800 1000 |0021: invoke-virtual {v0, v1}, Landroid/app/Notification$Builder;.setContentText:(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; // method@00d8 │ │ +42ff10: 0c00 |0024: move-result-object v0 │ │ +42ff12: 6e20 d900 1000 |0025: invoke-virtual {v0, v1}, Landroid/app/Notification$Builder;.setContentTitle:(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; // method@00d9 │ │ +42ff18: 0c00 |0028: move-result-object v0 │ │ +42ff1a: 1402 8600 077f |0029: const v2, #float 1.79448e+38 // #7f070086 │ │ +42ff20: 6e20 ee00 2000 |002c: invoke-virtual {v0, v2}, Landroid/app/Notification$Builder;.setSmallIcon:(I)Landroid/app/Notification$Builder; // method@00ee │ │ +42ff26: 0c00 |002f: move-result-object v0 │ │ +42ff28: 6e20 f400 1000 |0030: invoke-virtual {v0, v1}, Landroid/app/Notification$Builder;.setTicker:(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; // method@00f4 │ │ +42ff2e: 0c00 |0033: move-result-object v0 │ │ +42ff30: 6e10 d000 0000 |0034: invoke-virtual {v0}, Landroid/app/Notification$Builder;.build:()Landroid/app/Notification; // method@00d0 │ │ +42ff36: 0c00 |0037: move-result-object v0 │ │ +42ff38: 1401 6b6f 6d73 |0038: const v1, #float 1.88116e+31 // #736d6f6b │ │ +42ff3e: 6e30 32bd 1300 |003b: invoke-virtual {v3, v1, v0}, Lorg/purple/smoke/SmokeService;.startForeground:(ILandroid/app/Notification;)V // method@bd32 │ │ +42ff44: 0e00 |003e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=44 │ │ 0x0006 line=47 │ │ 0x0008 line=49 │ │ 0x0012 line=52 │ │ 0x0016 line=54 │ │ @@ -742085,24 +742084,24 @@ │ │ type : '(Landroid/content/Context;)V' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 19 16-bit code units │ │ -42ff4c: |[42ff4c] org.purple.smoke.SmokeService.startForegroundTask:(Landroid/content/Context;)V │ │ -42ff5c: 3902 0300 |0000: if-nez v2, 0003 // +0003 │ │ -42ff60: 0e00 |0002: return-void │ │ -42ff62: 2200 4900 |0003: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -42ff66: 1c01 0f1b |0005: const-class v1, Lorg/purple/smoke/SmokeService; // type@1b0f │ │ -42ff6a: 7030 9e01 2001 |0007: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -42ff70: 1a01 d5a2 |000a: const-string v1, "start" // string@a2d5 │ │ -42ff74: 6e20 c901 1000 |000c: invoke-virtual {v0, v1}, Landroid/content/Intent;.setAction:(Ljava/lang/String;)Landroid/content/Intent; // method@01c9 │ │ -42ff7a: 6e20 8f01 0200 |000f: invoke-virtual {v2, v0}, Landroid/content/Context;.startService:(Landroid/content/Intent;)Landroid/content/ComponentName; // method@018f │ │ -42ff80: 0e00 |0012: return-void │ │ +42ff48: |[42ff48] org.purple.smoke.SmokeService.startForegroundTask:(Landroid/content/Context;)V │ │ +42ff58: 3902 0300 |0000: if-nez v2, 0003 // +0003 │ │ +42ff5c: 0e00 |0002: return-void │ │ +42ff5e: 2200 4900 |0003: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +42ff62: 1c01 0f1b |0005: const-class v1, Lorg/purple/smoke/SmokeService; // type@1b0f │ │ +42ff66: 7030 9e01 2001 |0007: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +42ff6c: 1a01 d5a2 |000a: const-string v1, "start" // string@a2d5 │ │ +42ff70: 6e20 c901 1000 |000c: invoke-virtual {v0, v1}, Landroid/content/Intent;.setAction:(Ljava/lang/String;)Landroid/content/Intent; // method@01c9 │ │ +42ff76: 6e20 8f01 0200 |000f: invoke-virtual {v2, v0}, Landroid/content/Context;.startService:(Landroid/content/Intent;)Landroid/content/ComponentName; // method@018f │ │ +42ff7c: 0e00 |0012: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=108 │ │ 0x000c line=110 │ │ 0x000f line=111 │ │ locals : │ │ 0x0000 - 0x0013 reg=2 (null) Landroid/content/Context; │ │ @@ -742112,21 +742111,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 11 16-bit code units │ │ -42ff84: |[42ff84] org.purple.smoke.SmokeService.stop:()V │ │ -42ff94: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -42ff96: 5c10 285f |0001: iput-boolean v0, v1, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ -42ff9a: 1210 |0003: const/4 v0, #int 1 // #1 │ │ -42ff9c: 6e20 35bd 0100 |0004: invoke-virtual {v1, v0}, Lorg/purple/smoke/SmokeService;.stopForeground:(Z)V // method@bd35 │ │ -42ffa2: 6e10 37bd 0100 |0007: invoke-virtual {v1}, Lorg/purple/smoke/SmokeService;.stopSelf:()V // method@bd37 │ │ -42ffa8: 0e00 |000a: return-void │ │ +42ff80: |[42ff80] org.purple.smoke.SmokeService.stop:()V │ │ +42ff90: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +42ff92: 5c10 285f |0001: iput-boolean v0, v1, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ +42ff96: 1210 |0003: const/4 v0, #int 1 // #1 │ │ +42ff98: 6e20 35bd 0100 |0004: invoke-virtual {v1, v0}, Lorg/purple/smoke/SmokeService;.stopForeground:(Z)V // method@bd35 │ │ +42ff9e: 6e10 37bd 0100 |0007: invoke-virtual {v1}, Lorg/purple/smoke/SmokeService;.stopSelf:()V // method@bd37 │ │ +42ffa4: 0e00 |000a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0001 line=66 │ │ 0x0004 line=67 │ │ 0x0007 line=68 │ │ locals : │ │ 0x0000 - 0x000b reg=1 this Lorg/purple/smoke/SmokeService; │ │ @@ -742136,24 +742135,24 @@ │ │ type : '(Landroid/content/Context;)V' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 19 16-bit code units │ │ -42ffac: |[42ffac] org.purple.smoke.SmokeService.stopForegroundTask:(Landroid/content/Context;)V │ │ -42ffbc: 3902 0300 |0000: if-nez v2, 0003 // +0003 │ │ -42ffc0: 0e00 |0002: return-void │ │ -42ffc2: 2200 4900 |0003: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -42ffc6: 1c01 0f1b |0005: const-class v1, Lorg/purple/smoke/SmokeService; // type@1b0f │ │ -42ffca: 7030 9e01 2001 |0007: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -42ffd0: 1a01 40a3 |000a: const-string v1, "stop" // string@a340 │ │ -42ffd4: 6e20 c901 1000 |000c: invoke-virtual {v0, v1}, Landroid/content/Intent;.setAction:(Ljava/lang/String;)Landroid/content/Intent; // method@01c9 │ │ -42ffda: 6e20 9001 0200 |000f: invoke-virtual {v2, v0}, Landroid/content/Context;.stopService:(Landroid/content/Intent;)Z // method@0190 │ │ -42ffe0: 0e00 |0012: return-void │ │ +42ffa8: |[42ffa8] org.purple.smoke.SmokeService.stopForegroundTask:(Landroid/content/Context;)V │ │ +42ffb8: 3902 0300 |0000: if-nez v2, 0003 // +0003 │ │ +42ffbc: 0e00 |0002: return-void │ │ +42ffbe: 2200 4900 |0003: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +42ffc2: 1c01 0f1b |0005: const-class v1, Lorg/purple/smoke/SmokeService; // type@1b0f │ │ +42ffc6: 7030 9e01 2001 |0007: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +42ffcc: 1a01 40a3 |000a: const-string v1, "stop" // string@a340 │ │ +42ffd0: 6e20 c901 1000 |000c: invoke-virtual {v0, v1}, Landroid/content/Intent;.setAction:(Ljava/lang/String;)Landroid/content/Intent; // method@01c9 │ │ +42ffd6: 6e20 9001 0200 |000f: invoke-virtual {v2, v0}, Landroid/content/Context;.stopService:(Landroid/content/Intent;)Z // method@0190 │ │ +42ffdc: 0e00 |0012: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=119 │ │ 0x000c line=121 │ │ 0x000f line=122 │ │ locals : │ │ 0x0000 - 0x0013 reg=2 (null) Landroid/content/Context; │ │ @@ -742164,34 +742163,34 @@ │ │ type : '(Landroid/content/Intent;)Landroid/os/IBinder;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 2 16-bit code units │ │ -42fdc0: |[42fdc0] org.purple.smoke.SmokeService.onBind:(Landroid/content/Intent;)Landroid/os/IBinder; │ │ -42fdd0: 1201 |0000: const/4 v1, #int 0 // #0 │ │ -42fdd2: 1101 |0001: return-object v1 │ │ +42fdbc: |[42fdbc] org.purple.smoke.SmokeService.onBind:(Landroid/content/Intent;)Landroid/os/IBinder; │ │ +42fdcc: 1201 |0000: const/4 v1, #int 0 // #0 │ │ +42fdce: 1101 |0001: return-object v1 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #1 : (in Lorg/purple/smoke/SmokeService;) │ │ name : 'onCreate' │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -42fe7c: |[42fe7c] org.purple.smoke.SmokeService.onCreate:()V │ │ -42fe8c: 6f10 3a01 0000 |0000: invoke-super {v0}, Landroid/app/Service;.onCreate:()V // method@013a │ │ -42fe92: 7010 31bd 0000 |0003: invoke-direct {v0}, Lorg/purple/smoke/SmokeService;.start:()V // method@bd31 │ │ -42fe98: 0e00 |0006: return-void │ │ +42fe78: |[42fe78] org.purple.smoke.SmokeService.onCreate:()V │ │ +42fe88: 6f10 3a01 0000 |0000: invoke-super {v0}, Landroid/app/Service;.onCreate:()V // method@013a │ │ +42fe8e: 7010 31bd 0000 |0003: invoke-direct {v0}, Lorg/purple/smoke/SmokeService;.start:()V // method@bd31 │ │ +42fe94: 0e00 |0006: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=128 │ │ 0x0003 line=129 │ │ locals : │ │ 0x0000 - 0x0007 reg=0 this Lorg/purple/smoke/SmokeService; │ │ │ │ @@ -742200,19 +742199,19 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -42fe9c: |[42fe9c] org.purple.smoke.SmokeService.onDestroy:()V │ │ -42feac: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -42feae: 5c10 285f |0001: iput-boolean v0, v1, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ -42feb2: 6f10 3b01 0100 |0003: invoke-super {v1}, Landroid/app/Service;.onDestroy:()V // method@013b │ │ -42feb8: 0e00 |0006: return-void │ │ +42fe98: |[42fe98] org.purple.smoke.SmokeService.onDestroy:()V │ │ +42fea8: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +42feaa: 5c10 285f |0001: iput-boolean v0, v1, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ +42feae: 6f10 3b01 0100 |0003: invoke-super {v1}, Landroid/app/Service;.onDestroy:()V // method@013b │ │ +42feb4: 0e00 |0006: return-void │ │ catches : (none) │ │ positions : │ │ 0x0001 line=135 │ │ 0x0003 line=136 │ │ locals : │ │ 0x0000 - 0x0007 reg=1 this Lorg/purple/smoke/SmokeService; │ │ │ │ @@ -742221,38 +742220,38 @@ │ │ type : '(Landroid/content/Intent;II)I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 4 │ │ outs : 2 │ │ insns size : 43 16-bit code units │ │ -42fdf4: |[42fdf4] org.purple.smoke.SmokeService.onStartCommand:(Landroid/content/Intent;II)I │ │ -42fe04: 3801 2900 |0000: if-eqz v1, 0029 // +0029 │ │ -42fe08: 6e10 a501 0100 |0002: invoke-virtual {v1}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ -42fe0e: 0c02 |0005: move-result-object v2 │ │ -42fe10: 3802 2300 |0006: if-eqz v2, 0029 // +0023 │ │ -42fe14: 6e10 a501 0100 |0008: invoke-virtual {v1}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ -42fe1a: 0c01 |000b: move-result-object v1 │ │ -42fe1c: 6e10 bf5c 0100 |000c: invoke-virtual {v1}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -42fe22: 1a02 40a3 |000f: const-string v2, "stop" // string@a340 │ │ -42fe26: 6e20 b85c 2100 |0011: invoke-virtual {v1, v2}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42fe2c: 0a02 |0014: move-result v2 │ │ -42fe2e: 3902 0f00 |0015: if-nez v2, 0024 // +000f │ │ -42fe32: 1a02 d5a2 |0017: const-string v2, "start" // string@a2d5 │ │ -42fe36: 6e20 b85c 2100 |0019: invoke-virtual {v1, v2}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42fe3c: 0a01 |001c: move-result v1 │ │ -42fe3e: 3901 0300 |001d: if-nez v1, 0020 // +0003 │ │ -42fe42: 280a |001f: goto 0029 // +000a │ │ -42fe44: 7010 31bd 0000 |0020: invoke-direct {v0}, Lorg/purple/smoke/SmokeService;.start:()V // method@bd31 │ │ -42fe4a: 2806 |0023: goto 0029 // +0006 │ │ -42fe4c: 7010 34bd 0000 |0024: invoke-direct {v0}, Lorg/purple/smoke/SmokeService;.stop:()V // method@bd34 │ │ -42fe52: 1221 |0027: const/4 v1, #int 2 // #2 │ │ -42fe54: 0f01 |0028: return v1 │ │ -42fe56: 1211 |0029: const/4 v1, #int 1 // #1 │ │ -42fe58: 0f01 |002a: return v1 │ │ +42fdf0: |[42fdf0] org.purple.smoke.SmokeService.onStartCommand:(Landroid/content/Intent;II)I │ │ +42fe00: 3801 2900 |0000: if-eqz v1, 0029 // +0029 │ │ +42fe04: 6e10 a501 0100 |0002: invoke-virtual {v1}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ +42fe0a: 0c02 |0005: move-result-object v2 │ │ +42fe0c: 3802 2300 |0006: if-eqz v2, 0029 // +0023 │ │ +42fe10: 6e10 a501 0100 |0008: invoke-virtual {v1}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ +42fe16: 0c01 |000b: move-result-object v1 │ │ +42fe18: 6e10 bf5c 0100 |000c: invoke-virtual {v1}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +42fe1e: 1a02 40a3 |000f: const-string v2, "stop" // string@a340 │ │ +42fe22: 6e20 b85c 2100 |0011: invoke-virtual {v1, v2}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42fe28: 0a02 |0014: move-result v2 │ │ +42fe2a: 3902 0f00 |0015: if-nez v2, 0024 // +000f │ │ +42fe2e: 1a02 d5a2 |0017: const-string v2, "start" // string@a2d5 │ │ +42fe32: 6e20 b85c 2100 |0019: invoke-virtual {v1, v2}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42fe38: 0a01 |001c: move-result v1 │ │ +42fe3a: 3901 0300 |001d: if-nez v1, 0020 // +0003 │ │ +42fe3e: 280a |001f: goto 0029 // +000a │ │ +42fe40: 7010 31bd 0000 |0020: invoke-direct {v0}, Lorg/purple/smoke/SmokeService;.start:()V // method@bd31 │ │ +42fe46: 2806 |0023: goto 0029 // +0006 │ │ +42fe48: 7010 34bd 0000 |0024: invoke-direct {v0}, Lorg/purple/smoke/SmokeService;.stop:()V // method@bd34 │ │ +42fe4e: 1221 |0027: const/4 v1, #int 2 // #2 │ │ +42fe50: 0f01 |0028: return v1 │ │ +42fe52: 1211 |0029: const/4 v1, #int 1 // #1 │ │ +42fe54: 0f01 |002a: return v1 │ │ catches : (none) │ │ positions : │ │ 0x0002 line=87 │ │ 0x0008 line=88 │ │ 0x0020 line=91 │ │ 0x0024 line=94 │ │ locals : │ │ @@ -742266,19 +742265,19 @@ │ │ type : '(Landroid/content/Intent;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 8 16-bit code units │ │ -42fdd4: |[42fdd4] org.purple.smoke.SmokeService.stopService:(Landroid/content/Intent;)Z │ │ -42fde4: 7010 34bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SmokeService;.stop:()V // method@bd34 │ │ -42fdea: 6f20 3e01 1000 |0003: invoke-super {v0, v1}, Landroid/app/Service;.stopService:(Landroid/content/Intent;)Z // method@013e │ │ -42fdf0: 0a01 |0006: move-result v1 │ │ -42fdf2: 0f01 |0007: return v1 │ │ +42fdd0: |[42fdd0] org.purple.smoke.SmokeService.stopService:(Landroid/content/Intent;)Z │ │ +42fde0: 7010 34bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SmokeService;.stop:()V // method@bd34 │ │ +42fde6: 6f20 3e01 1000 |0003: invoke-super {v0, v1}, Landroid/app/Service;.stopService:(Landroid/content/Intent;)Z // method@013e │ │ +42fdec: 0a01 |0006: move-result v1 │ │ +42fdee: 0f01 |0007: return v1 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=80 │ │ 0x0003 line=81 │ │ locals : │ │ 0x0000 - 0x0008 reg=0 this Lorg/purple/smoke/SmokeService; │ │ 0x0000 - 0x0008 reg=1 (null) Landroid/content/Intent; │ │ @@ -742318,18 +742317,18 @@ │ │ type : '(Lorg/purple/smoke/Smokescreen;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -430074: |[430074] org.purple.smoke.Smokescreen$1.:(Lorg/purple/smoke/Smokescreen;)V │ │ -430084: 5b01 295f |0000: iput-object v1, v0, Lorg/purple/smoke/Smokescreen$1;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f29 │ │ -430088: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43008e: 0e00 |0005: return-void │ │ +430070: |[430070] org.purple.smoke.Smokescreen$1.:(Lorg/purple/smoke/Smokescreen;)V │ │ +430080: 5b01 295f |0000: iput-object v1, v0, Lorg/purple/smoke/Smokescreen$1;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f29 │ │ +430084: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43008a: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=108 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Smokescreen$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Smokescreen; │ │ │ │ @@ -742339,27 +742338,27 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 23 16-bit code units │ │ -430090: |[430090] org.purple.smoke.Smokescreen$1.onClick:(Landroid/view/View;)V │ │ -4300a0: 5412 295f |0000: iget-object v2, v1, Lorg/purple/smoke/Smokescreen$1;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f29 │ │ -4300a4: 6e10 4abd 0200 |0002: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.isFinishing:()Z // method@bd4a │ │ -4300aa: 0a02 |0005: move-result v2 │ │ -4300ac: 3802 0300 |0006: if-eqz v2, 0009 // +0003 │ │ -4300b0: 0e00 |0008: return-void │ │ -4300b2: 7100 6fbd 0000 |0009: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -4300b8: 0c02 |000c: move-result-object v2 │ │ -4300ba: 1210 |000d: const/4 v0, #int 1 // #1 │ │ -4300bc: 6e20 86bd 0200 |000e: invoke-virtual {v2, v0}, Lorg/purple/smoke/State;.setLocked:(Z)V // method@bd86 │ │ -4300c2: 5412 295f |0011: iget-object v2, v1, Lorg/purple/smoke/Smokescreen$1;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f29 │ │ -4300c6: 7110 41bd 0200 |0013: invoke-static {v2}, Lorg/purple/smoke/Smokescreen;.access$000:(Lorg/purple/smoke/Smokescreen;)V // method@bd41 │ │ -4300cc: 0e00 |0016: return-void │ │ +43008c: |[43008c] org.purple.smoke.Smokescreen$1.onClick:(Landroid/view/View;)V │ │ +43009c: 5412 295f |0000: iget-object v2, v1, Lorg/purple/smoke/Smokescreen$1;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f29 │ │ +4300a0: 6e10 4abd 0200 |0002: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.isFinishing:()Z // method@bd4a │ │ +4300a6: 0a02 |0005: move-result v2 │ │ +4300a8: 3802 0300 |0006: if-eqz v2, 0009 // +0003 │ │ +4300ac: 0e00 |0008: return-void │ │ +4300ae: 7100 6fbd 0000 |0009: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +4300b4: 0c02 |000c: move-result-object v2 │ │ +4300b6: 1210 |000d: const/4 v0, #int 1 // #1 │ │ +4300b8: 6e20 86bd 0200 |000e: invoke-virtual {v2, v0}, Lorg/purple/smoke/State;.setLocked:(Z)V // method@bd86 │ │ +4300be: 5412 295f |0011: iget-object v2, v1, Lorg/purple/smoke/Smokescreen$1;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f29 │ │ +4300c2: 7110 41bd 0200 |0013: invoke-static {v2}, Lorg/purple/smoke/Smokescreen;.access$000:(Lorg/purple/smoke/Smokescreen;)V // method@bd41 │ │ +4300c8: 0e00 |0016: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=111 │ │ 0x0009 line=114 │ │ 0x0011 line=115 │ │ locals : │ │ 0x0000 - 0x0017 reg=1 this Lorg/purple/smoke/Smokescreen$1; │ │ @@ -742400,18 +742399,18 @@ │ │ type : '(Lorg/purple/smoke/Smokescreen;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -4300d0: |[4300d0] org.purple.smoke.Smokescreen$2.:(Lorg/purple/smoke/Smokescreen;)V │ │ -4300e0: 5b01 2a5f |0000: iput-object v1, v0, Lorg/purple/smoke/Smokescreen$2;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2a │ │ -4300e4: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -4300ea: 0e00 |0005: return-void │ │ +4300cc: |[4300cc] org.purple.smoke.Smokescreen$2.:(Lorg/purple/smoke/Smokescreen;)V │ │ +4300dc: 5b01 2a5f |0000: iput-object v1, v0, Lorg/purple/smoke/Smokescreen$2;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2a │ │ +4300e0: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +4300e6: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=121 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Smokescreen$2; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Smokescreen; │ │ │ │ @@ -742421,25 +742420,25 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 20 16-bit code units │ │ -4300ec: |[4300ec] org.purple.smoke.Smokescreen$2.onClick:(Landroid/view/View;)V │ │ -4300fc: 5401 2a5f |0000: iget-object v1, v0, Lorg/purple/smoke/Smokescreen$2;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2a │ │ -430100: 6e10 4abd 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Smokescreen;.isFinishing:()Z // method@bd4a │ │ -430106: 0a01 |0005: move-result v1 │ │ -430108: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ -43010c: 0e00 |0008: return-void │ │ -43010e: 5401 2a5f |0009: iget-object v1, v0, Lorg/purple/smoke/Smokescreen$2;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2a │ │ -430112: 7110 42bd 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Smokescreen;.access$100:(Lorg/purple/smoke/Smokescreen;)V // method@bd42 │ │ -430118: 5401 2a5f |000e: iget-object v1, v0, Lorg/purple/smoke/Smokescreen$2;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2a │ │ -43011c: 7110 41bd 0100 |0010: invoke-static {v1}, Lorg/purple/smoke/Smokescreen;.access$000:(Lorg/purple/smoke/Smokescreen;)V // method@bd41 │ │ -430122: 0e00 |0013: return-void │ │ +4300e8: |[4300e8] org.purple.smoke.Smokescreen$2.onClick:(Landroid/view/View;)V │ │ +4300f8: 5401 2a5f |0000: iget-object v1, v0, Lorg/purple/smoke/Smokescreen$2;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2a │ │ +4300fc: 6e10 4abd 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Smokescreen;.isFinishing:()Z // method@bd4a │ │ +430102: 0a01 |0005: move-result v1 │ │ +430104: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ +430108: 0e00 |0008: return-void │ │ +43010a: 5401 2a5f |0009: iget-object v1, v0, Lorg/purple/smoke/Smokescreen$2;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2a │ │ +43010e: 7110 42bd 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Smokescreen;.access$100:(Lorg/purple/smoke/Smokescreen;)V // method@bd42 │ │ +430114: 5401 2a5f |000e: iget-object v1, v0, Lorg/purple/smoke/Smokescreen$2;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2a │ │ +430118: 7110 41bd 0100 |0010: invoke-static {v1}, Lorg/purple/smoke/Smokescreen;.access$000:(Lorg/purple/smoke/Smokescreen;)V // method@bd41 │ │ +43011e: 0e00 |0013: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=124 │ │ 0x0009 line=127 │ │ 0x000e line=128 │ │ locals : │ │ 0x0000 - 0x0014 reg=0 this Lorg/purple/smoke/Smokescreen$2; │ │ @@ -742480,18 +742479,18 @@ │ │ type : '(Lorg/purple/smoke/Smokescreen;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -430124: |[430124] org.purple.smoke.Smokescreen$3.:(Lorg/purple/smoke/Smokescreen;)V │ │ -430134: 5b01 2b5f |0000: iput-object v1, v0, Lorg/purple/smoke/Smokescreen$3;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2b │ │ -430138: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43013e: 0e00 |0005: return-void │ │ +430120: |[430120] org.purple.smoke.Smokescreen$3.:(Lorg/purple/smoke/Smokescreen;)V │ │ +430130: 5b01 2b5f |0000: iput-object v1, v0, Lorg/purple/smoke/Smokescreen$3;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2b │ │ +430134: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43013a: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=147 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Smokescreen$3; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Smokescreen; │ │ │ │ @@ -742501,20 +742500,20 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 10 16-bit code units │ │ -430140: |[430140] org.purple.smoke.Smokescreen$3.run:()V │ │ -430150: 5410 2b5f |0000: iget-object v0, v1, Lorg/purple/smoke/Smokescreen$3;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2b │ │ -430154: 7110 43bd 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Smokescreen;.access$200:(Lorg/purple/smoke/Smokescreen;)Landroid/widget/TextView; // method@bd43 │ │ -43015a: 0c00 |0005: move-result-object v0 │ │ -43015c: 6e10 265b 0000 |0006: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ -430162: 0e00 |0009: return-void │ │ +43013c: |[43013c] org.purple.smoke.Smokescreen$3.run:()V │ │ +43014c: 5410 2b5f |0000: iget-object v0, v1, Lorg/purple/smoke/Smokescreen$3;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2b │ │ +430150: 7110 43bd 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Smokescreen;.access$200:(Lorg/purple/smoke/Smokescreen;)Landroid/widget/TextView; // method@bd43 │ │ +430156: 0c00 |0005: move-result-object v0 │ │ +430158: 6e10 265b 0000 |0006: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ +43015e: 0e00 |0009: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=151 │ │ locals : │ │ 0x0000 - 0x000a reg=1 this Lorg/purple/smoke/Smokescreen$3; │ │ │ │ source_file_idx : 19513 (Smokescreen.java) │ │ @@ -742552,18 +742551,18 @@ │ │ type : '(Lorg/purple/smoke/State;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -4309f4: |[4309f4] org.purple.smoke.State$1.:(Lorg/purple/smoke/State;)V │ │ -430a04: 5b01 325f |0000: iput-object v1, v0, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ -430a08: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -430a0e: 0e00 |0005: return-void │ │ +4309f0: |[4309f0] org.purple.smoke.State$1.:(Lorg/purple/smoke/State;)V │ │ +430a00: 5b01 325f |0000: iput-object v1, v0, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ +430a04: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +430a0a: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/State$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/State; │ │ │ │ @@ -742573,72 +742572,72 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 114 16-bit code units │ │ -430a10: |[430a10] org.purple.smoke.State$1.run:()V │ │ -430a20: 5430 325f |0000: iget-object v0, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ -430a24: 6e10 72bd 0000 |0002: invoke-virtual {v0}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ -430a2a: 0a00 |0005: move-result v0 │ │ -430a2c: 3900 0300 |0006: if-nez v0, 0009 // +0003 │ │ -430a30: 0e00 |0008: return-void │ │ -430a32: 7100 efb9 0000 |0009: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9ef │ │ -430a38: 0c00 |000c: move-result-object v0 │ │ -430a3a: 7100 8db9 0000 |000d: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ -430a40: 0c01 |0010: move-result-object v1 │ │ -430a42: 1a02 0000 |0011: const-string v2, "" // string@0000 │ │ -430a46: 6e30 16ba 1002 |0013: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readParticipants:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/util/ArrayList; // method@ba16 │ │ -430a4c: 0c00 |0016: move-result-object v0 │ │ -430a4e: 3900 0300 |0017: if-nez v0, 001a // +0003 │ │ -430a52: 0e00 |0019: return-void │ │ -430a54: 7110 eb5f 0000 |001a: invoke-static {v0}, Ljava/util/Collections;.sort:(Ljava/util/List;)V // method@5feb │ │ -430a5a: 5431 325f |001d: iget-object v1, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ -430a5e: 7110 5dbd 0100 |001f: invoke-static {v1}, Lorg/purple/smoke/State;.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@bd5d │ │ -430a64: 0c01 |0022: move-result-object v1 │ │ -430a66: 6e10 ed60 0100 |0023: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -430a6c: 0c01 |0026: move-result-object v1 │ │ -430a6e: 6e10 e960 0100 |0027: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ -430a74: 5431 325f |002a: iget-object v1, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ -430a78: 7110 5ebd 0100 |002c: invoke-static {v1}, Lorg/purple/smoke/State;.access$100:(Lorg/purple/smoke/State;)Ljava/util/ArrayList; // method@bd5e │ │ -430a7e: 0c01 |002f: move-result-object v1 │ │ -430a80: 6e20 a35f 1000 |0030: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.equals:(Ljava/lang/Object;)Z // method@5fa3 │ │ -430a86: 0a01 |0033: move-result v1 │ │ -430a88: 3901 1900 |0034: if-nez v1, 004d // +0019 │ │ -430a8c: 5431 325f |0036: iget-object v1, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ -430a90: 7120 5fbd 0100 |0038: invoke-static {v1, v0}, Lorg/purple/smoke/State;.access$102:(Lorg/purple/smoke/State;Ljava/util/ArrayList;)Ljava/util/ArrayList; // method@bd5f │ │ -430a96: 2200 4900 |003b: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -430a9a: 1a01 0892 |003d: const-string v1, "org.purple.smoke.state_participants_populated" // string@9208 │ │ -430a9e: 7020 a001 1000 |003f: invoke-direct {v0, v1}, Landroid/content/Intent;.:(Ljava/lang/String;)V // method@01a0 │ │ -430aa4: 7100 26bd 0000 |0042: invoke-static {}, Lorg/purple/smoke/Smoke;.getApplication:()Lorg/purple/smoke/Smoke; // method@bd26 │ │ -430aaa: 0c01 |0045: move-result-object v1 │ │ -430aac: 7110 a41d 0100 |0046: invoke-static {v1}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ -430ab2: 0c01 |0049: move-result-object v1 │ │ -430ab4: 6e20 a61d 0100 |004a: invoke-virtual {v1, v0}, Landroid/support/v4/content/LocalBroadcastManager;.sendBroadcast:(Landroid/content/Intent;)Z // method@1da6 │ │ -430aba: 5430 325f |004d: iget-object v0, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ -430abe: 7110 5dbd 0000 |004f: invoke-static {v0}, Lorg/purple/smoke/State;.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@bd5d │ │ -430ac4: 0c00 |0052: move-result-object v0 │ │ -430ac6: 6e10 ed60 0000 |0053: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -430acc: 0c00 |0056: move-result-object v0 │ │ -430ace: 6e10 ea60 0000 |0057: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -430ad4: 2817 |005a: goto 0071 // +0017 │ │ -430ad6: 0d00 |005b: move-exception v0 │ │ -430ad8: 5431 325f |005c: iget-object v1, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ -430adc: 7110 5dbd 0100 |005e: invoke-static {v1}, Lorg/purple/smoke/State;.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@bd5d │ │ -430ae2: 0c01 |0061: move-result-object v1 │ │ -430ae4: 6e10 ed60 0100 |0062: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -430aea: 0c01 |0065: move-result-object v1 │ │ -430aec: 6e10 ea60 0100 |0066: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -430af2: 2700 |0069: throw v0 │ │ -430af4: 5430 325f |006a: iget-object v0, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ -430af8: 7110 5dbd 0000 |006c: invoke-static {v0}, Lorg/purple/smoke/State;.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@bd5d │ │ -430afe: 0c00 |006f: move-result-object v0 │ │ -430b00: 28e3 |0070: goto 0053 // -001d │ │ -430b02: 0e00 |0071: return-void │ │ +430a0c: |[430a0c] org.purple.smoke.State$1.run:()V │ │ +430a1c: 5430 325f |0000: iget-object v0, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ +430a20: 6e10 72bd 0000 |0002: invoke-virtual {v0}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ +430a26: 0a00 |0005: move-result v0 │ │ +430a28: 3900 0300 |0006: if-nez v0, 0009 // +0003 │ │ +430a2c: 0e00 |0008: return-void │ │ +430a2e: 7100 efb9 0000 |0009: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9ef │ │ +430a34: 0c00 |000c: move-result-object v0 │ │ +430a36: 7100 8db9 0000 |000d: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ +430a3c: 0c01 |0010: move-result-object v1 │ │ +430a3e: 1a02 0000 |0011: const-string v2, "" // string@0000 │ │ +430a42: 6e30 16ba 1002 |0013: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readParticipants:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/util/ArrayList; // method@ba16 │ │ +430a48: 0c00 |0016: move-result-object v0 │ │ +430a4a: 3900 0300 |0017: if-nez v0, 001a // +0003 │ │ +430a4e: 0e00 |0019: return-void │ │ +430a50: 7110 eb5f 0000 |001a: invoke-static {v0}, Ljava/util/Collections;.sort:(Ljava/util/List;)V // method@5feb │ │ +430a56: 5431 325f |001d: iget-object v1, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ +430a5a: 7110 5dbd 0100 |001f: invoke-static {v1}, Lorg/purple/smoke/State;.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@bd5d │ │ +430a60: 0c01 |0022: move-result-object v1 │ │ +430a62: 6e10 ed60 0100 |0023: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +430a68: 0c01 |0026: move-result-object v1 │ │ +430a6a: 6e10 e960 0100 |0027: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ +430a70: 5431 325f |002a: iget-object v1, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ +430a74: 7110 5ebd 0100 |002c: invoke-static {v1}, Lorg/purple/smoke/State;.access$100:(Lorg/purple/smoke/State;)Ljava/util/ArrayList; // method@bd5e │ │ +430a7a: 0c01 |002f: move-result-object v1 │ │ +430a7c: 6e20 a35f 1000 |0030: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.equals:(Ljava/lang/Object;)Z // method@5fa3 │ │ +430a82: 0a01 |0033: move-result v1 │ │ +430a84: 3901 1900 |0034: if-nez v1, 004d // +0019 │ │ +430a88: 5431 325f |0036: iget-object v1, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ +430a8c: 7120 5fbd 0100 |0038: invoke-static {v1, v0}, Lorg/purple/smoke/State;.access$102:(Lorg/purple/smoke/State;Ljava/util/ArrayList;)Ljava/util/ArrayList; // method@bd5f │ │ +430a92: 2200 4900 |003b: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +430a96: 1a01 0892 |003d: const-string v1, "org.purple.smoke.state_participants_populated" // string@9208 │ │ +430a9a: 7020 a001 1000 |003f: invoke-direct {v0, v1}, Landroid/content/Intent;.:(Ljava/lang/String;)V // method@01a0 │ │ +430aa0: 7100 26bd 0000 |0042: invoke-static {}, Lorg/purple/smoke/Smoke;.getApplication:()Lorg/purple/smoke/Smoke; // method@bd26 │ │ +430aa6: 0c01 |0045: move-result-object v1 │ │ +430aa8: 7110 a41d 0100 |0046: invoke-static {v1}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ +430aae: 0c01 |0049: move-result-object v1 │ │ +430ab0: 6e20 a61d 0100 |004a: invoke-virtual {v1, v0}, Landroid/support/v4/content/LocalBroadcastManager;.sendBroadcast:(Landroid/content/Intent;)Z // method@1da6 │ │ +430ab6: 5430 325f |004d: iget-object v0, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ +430aba: 7110 5dbd 0000 |004f: invoke-static {v0}, Lorg/purple/smoke/State;.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@bd5d │ │ +430ac0: 0c00 |0052: move-result-object v0 │ │ +430ac2: 6e10 ed60 0000 |0053: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +430ac8: 0c00 |0056: move-result-object v0 │ │ +430aca: 6e10 ea60 0000 |0057: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +430ad0: 2817 |005a: goto 0071 // +0017 │ │ +430ad2: 0d00 |005b: move-exception v0 │ │ +430ad4: 5431 325f |005c: iget-object v1, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ +430ad8: 7110 5dbd 0100 |005e: invoke-static {v1}, Lorg/purple/smoke/State;.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@bd5d │ │ +430ade: 0c01 |0061: move-result-object v1 │ │ +430ae0: 6e10 ed60 0100 |0062: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +430ae6: 0c01 |0065: move-result-object v1 │ │ +430ae8: 6e10 ea60 0100 |0066: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +430aee: 2700 |0069: throw v0 │ │ +430af0: 5430 325f |006a: iget-object v0, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ +430af4: 7110 5dbd 0000 |006c: invoke-static {v0}, Lorg/purple/smoke/State;.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@bd5d │ │ +430afa: 0c00 |006f: move-result-object v0 │ │ +430afc: 28e3 |0070: goto 0053 // -001d │ │ +430afe: 0e00 |0071: return-void │ │ catches : 3 │ │ 0x0000 - 0x002a │ │ Ljava/lang/Exception; -> 0x0071 │ │ 0x002a - 0x004d │ │ Ljava/lang/Exception; -> 0x006a │ │ -> 0x005b │ │ 0x004d - 0x0070 │ │ @@ -742764,73 +742763,73 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 0 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -431464: |[431464] org.purple.smoke.State.:()V │ │ -431474: 0e00 |0000: return-void │ │ +431460: |[431460] org.purple.smoke.State.:()V │ │ +431470: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #1 : (in Lorg/purple/smoke/State;) │ │ name : '' │ │ type : '()V' │ │ access : 0x10002 (PRIVATE CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 95 16-bit code units │ │ -431478: |[431478] org.purple.smoke.State.:()V │ │ -431488: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43148e: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -431490: 5b20 365f |0004: iput-object v0, v2, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ -431494: 5b20 395f |0006: iput-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ -431498: 5b20 375f |0008: iput-object v0, v2, Lorg/purple/smoke/State;.m_exit:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f37 │ │ -43149c: 5b20 3c5f |000a: iput-object v0, v2, Lorg/purple/smoke/State;.m_queryTimerServer:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3c │ │ -4314a0: 5b20 3e5f |000c: iput-object v0, v2, Lorg/purple/smoke/State;.m_silent:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3e │ │ -4314a4: 5b20 345f |000e: iput-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -4314a8: 5b20 3f5f |0010: iput-object v0, v2, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ -4314ac: 5b20 3d5f |0012: iput-object v0, v2, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ -4314b0: 5b20 385f |0014: iput-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -4314b4: 5b20 3b5f |0016: iput-object v0, v2, Lorg/purple/smoke/State;.m_participantsScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f3b │ │ -4314b8: 2200 ea0b |0018: new-instance v0, Ljava/util/concurrent/locks/ReentrantReadWriteLock; // type@0bea │ │ -4314bc: 7010 eb60 0000 |001a: invoke-direct {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.:()V // method@60eb │ │ -4314c2: 5b20 355f |001d: iput-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4314c6: 2200 ea0b |001f: new-instance v0, Ljava/util/concurrent/locks/ReentrantReadWriteLock; // type@0bea │ │ -4314ca: 7010 eb60 0000 |0021: invoke-direct {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.:()V // method@60eb │ │ -4314d0: 5b20 3a5f |0024: iput-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -4314d4: 2200 da00 |0026: new-instance v0, Landroid/os/Bundle; // type@00da │ │ -4314d8: 7010 bd04 0000 |0028: invoke-direct {v0}, Landroid/os/Bundle;.:()V // method@04bd │ │ -4314de: 5b20 345f |002b: iput-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -4314e2: 2200 e40b |002d: new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ -4314e6: 1201 |002f: const/4 v1, #int 0 // #0 │ │ -4314e8: 7020 d660 1000 |0030: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d6 │ │ -4314ee: 5b20 375f |0033: iput-object v0, v2, Lorg/purple/smoke/State;.m_exit:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f37 │ │ -4314f2: 2200 ab0b |0035: new-instance v0, Ljava/util/ArrayList; // type@0bab │ │ -4314f6: 7010 995f 0000 |0037: invoke-direct {v0}, Ljava/util/ArrayList;.:()V // method@5f99 │ │ -4314fc: 5b20 395f |003a: iput-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ -431500: 2200 e40b |003c: new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ -431504: 7020 d660 1000 |003e: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d6 │ │ -43150a: 5b20 3c5f |0041: iput-object v0, v2, Lorg/purple/smoke/State;.m_queryTimerServer:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3c │ │ -43150e: 2200 cb0b |0043: new-instance v0, Ljava/util/TreeMap; // type@0bcb │ │ -431512: 7010 8c60 0000 |0045: invoke-direct {v0}, Ljava/util/TreeMap;.:()V // method@608c │ │ -431518: 5b20 3d5f |0048: iput-object v0, v2, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ -43151c: 2200 e40b |004a: new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ -431520: 7020 d660 1000 |004c: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d6 │ │ -431526: 5b20 3e5f |004f: iput-object v0, v2, Lorg/purple/smoke/State;.m_silent:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3e │ │ -43152a: 2200 cb0b |0051: new-instance v0, Ljava/util/TreeMap; // type@0bcb │ │ -43152e: 7010 8c60 0000 |0053: invoke-direct {v0}, Ljava/util/TreeMap;.:()V // method@608c │ │ -431534: 5b20 3f5f |0056: iput-object v0, v2, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ -431538: 7010 79bd 0200 |0058: invoke-direct {v2}, Lorg/purple/smoke/State;.populateParticipants:()V // method@bd79 │ │ -43153e: 6e20 83bd 1200 |005b: invoke-virtual {v2, v1}, Lorg/purple/smoke/State;.setAuthenticated:(Z)V // method@bd83 │ │ -431544: 0e00 |005e: return-void │ │ +431474: |[431474] org.purple.smoke.State.:()V │ │ +431484: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43148a: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +43148c: 5b20 365f |0004: iput-object v0, v2, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ +431490: 5b20 395f |0006: iput-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ +431494: 5b20 375f |0008: iput-object v0, v2, Lorg/purple/smoke/State;.m_exit:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f37 │ │ +431498: 5b20 3c5f |000a: iput-object v0, v2, Lorg/purple/smoke/State;.m_queryTimerServer:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3c │ │ +43149c: 5b20 3e5f |000c: iput-object v0, v2, Lorg/purple/smoke/State;.m_silent:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3e │ │ +4314a0: 5b20 345f |000e: iput-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +4314a4: 5b20 3f5f |0010: iput-object v0, v2, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ +4314a8: 5b20 3d5f |0012: iput-object v0, v2, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ +4314ac: 5b20 385f |0014: iput-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +4314b0: 5b20 3b5f |0016: iput-object v0, v2, Lorg/purple/smoke/State;.m_participantsScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f3b │ │ +4314b4: 2200 ea0b |0018: new-instance v0, Ljava/util/concurrent/locks/ReentrantReadWriteLock; // type@0bea │ │ +4314b8: 7010 eb60 0000 |001a: invoke-direct {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.:()V // method@60eb │ │ +4314be: 5b20 355f |001d: iput-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4314c2: 2200 ea0b |001f: new-instance v0, Ljava/util/concurrent/locks/ReentrantReadWriteLock; // type@0bea │ │ +4314c6: 7010 eb60 0000 |0021: invoke-direct {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.:()V // method@60eb │ │ +4314cc: 5b20 3a5f |0024: iput-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +4314d0: 2200 da00 |0026: new-instance v0, Landroid/os/Bundle; // type@00da │ │ +4314d4: 7010 bd04 0000 |0028: invoke-direct {v0}, Landroid/os/Bundle;.:()V // method@04bd │ │ +4314da: 5b20 345f |002b: iput-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +4314de: 2200 e40b |002d: new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ +4314e2: 1201 |002f: const/4 v1, #int 0 // #0 │ │ +4314e4: 7020 d660 1000 |0030: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d6 │ │ +4314ea: 5b20 375f |0033: iput-object v0, v2, Lorg/purple/smoke/State;.m_exit:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f37 │ │ +4314ee: 2200 ab0b |0035: new-instance v0, Ljava/util/ArrayList; // type@0bab │ │ +4314f2: 7010 995f 0000 |0037: invoke-direct {v0}, Ljava/util/ArrayList;.:()V // method@5f99 │ │ +4314f8: 5b20 395f |003a: iput-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ +4314fc: 2200 e40b |003c: new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ +431500: 7020 d660 1000 |003e: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d6 │ │ +431506: 5b20 3c5f |0041: iput-object v0, v2, Lorg/purple/smoke/State;.m_queryTimerServer:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3c │ │ +43150a: 2200 cb0b |0043: new-instance v0, Ljava/util/TreeMap; // type@0bcb │ │ +43150e: 7010 8c60 0000 |0045: invoke-direct {v0}, Ljava/util/TreeMap;.:()V // method@608c │ │ +431514: 5b20 3d5f |0048: iput-object v0, v2, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ +431518: 2200 e40b |004a: new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ +43151c: 7020 d660 1000 |004c: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d6 │ │ +431522: 5b20 3e5f |004f: iput-object v0, v2, Lorg/purple/smoke/State;.m_silent:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3e │ │ +431526: 2200 cb0b |0051: new-instance v0, Ljava/util/TreeMap; // type@0bcb │ │ +43152a: 7010 8c60 0000 |0053: invoke-direct {v0}, Ljava/util/TreeMap;.:()V // method@608c │ │ +431530: 5b20 3f5f |0056: iput-object v0, v2, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ +431534: 7010 79bd 0200 |0058: invoke-direct {v2}, Lorg/purple/smoke/State;.populateParticipants:()V // method@bd79 │ │ +43153a: 6e20 83bd 1200 |005b: invoke-virtual {v2, v1}, Lorg/purple/smoke/State;.setAuthenticated:(Z)V // method@bd83 │ │ +431540: 0e00 |005e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=65 │ │ 0x0004 line=47 │ │ 0x0006 line=48 │ │ 0x0008 line=49 │ │ 0x000a line=50 │ │ @@ -742859,17 +742858,17 @@ │ │ type : '(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -43131c: |[43131c] org.purple.smoke.State.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; │ │ -43132c: 5400 3a5f |0000: iget-object v0, v0, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -431330: 1100 |0002: return-object v0 │ │ +431318: |[431318] org.purple.smoke.State.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; │ │ +431328: 5400 3a5f |0000: iget-object v0, v0, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +43132c: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/State; │ │ │ │ #3 : (in Lorg/purple/smoke/State;) │ │ @@ -742877,17 +742876,17 @@ │ │ type : '(Lorg/purple/smoke/State;)Ljava/util/ArrayList;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -43114c: |[43114c] org.purple.smoke.State.access$100:(Lorg/purple/smoke/State;)Ljava/util/ArrayList; │ │ -43115c: 5400 395f |0000: iget-object v0, v0, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ -431160: 1100 |0002: return-object v0 │ │ +431148: |[431148] org.purple.smoke.State.access$100:(Lorg/purple/smoke/State;)Ljava/util/ArrayList; │ │ +431158: 5400 395f |0000: iget-object v0, v0, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ +43115c: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/State; │ │ │ │ #4 : (in Lorg/purple/smoke/State;) │ │ @@ -742895,17 +742894,17 @@ │ │ type : '(Lorg/purple/smoke/State;Ljava/util/ArrayList;)Ljava/util/ArrayList;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -431164: |[431164] org.purple.smoke.State.access$102:(Lorg/purple/smoke/State;Ljava/util/ArrayList;)Ljava/util/ArrayList; │ │ -431174: 5b01 395f |0000: iput-object v1, v0, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ -431178: 1101 |0002: return-object v1 │ │ +431160: |[431160] org.purple.smoke.State.access$102:(Lorg/purple/smoke/State;Ljava/util/ArrayList;)Ljava/util/ArrayList; │ │ +431170: 5b01 395f |0000: iput-object v1, v0, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ +431174: 1101 |0002: return-object v1 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/State; │ │ 0x0000 - 0x0003 reg=1 (null) Ljava/util/ArrayList; │ │ │ │ @@ -742914,28 +742913,28 @@ │ │ type : '()Lorg/purple/smoke/State;' │ │ access : 0x20009 (PUBLIC STATIC DECLARED_SYNCHRONIZED) │ │ code - │ │ registers : 2 │ │ ins : 0 │ │ outs : 1 │ │ insns size : 21 16-bit code units │ │ -43141c: |[43141c] org.purple.smoke.State.getInstance:()Lorg/purple/smoke/State; │ │ -43142c: 1c00 151b |0000: const-class v0, Lorg/purple/smoke/State; // type@1b15 │ │ -431430: 1d00 |0002: monitor-enter v0 │ │ -431432: 6201 405f |0003: sget-object v1, Lorg/purple/smoke/State;.s_instance:Lorg/purple/smoke/State; // field@5f40 │ │ -431436: 3901 0900 |0005: if-nez v1, 000e // +0009 │ │ -43143a: 2201 151b |0007: new-instance v1, Lorg/purple/smoke/State; // type@1b15 │ │ -43143e: 7010 5cbd 0100 |0009: invoke-direct {v1}, Lorg/purple/smoke/State;.:()V // method@bd5c │ │ -431444: 6901 405f |000c: sput-object v1, Lorg/purple/smoke/State;.s_instance:Lorg/purple/smoke/State; // field@5f40 │ │ -431448: 6201 405f |000e: sget-object v1, Lorg/purple/smoke/State;.s_instance:Lorg/purple/smoke/State; // field@5f40 │ │ -43144c: 1e00 |0010: monitor-exit v0 │ │ -43144e: 1101 |0011: return-object v1 │ │ -431450: 0d01 |0012: move-exception v1 │ │ -431452: 1e00 |0013: monitor-exit v0 │ │ -431454: 2701 |0014: throw v1 │ │ +431418: |[431418] org.purple.smoke.State.getInstance:()Lorg/purple/smoke/State; │ │ +431428: 1c00 151b |0000: const-class v0, Lorg/purple/smoke/State; // type@1b15 │ │ +43142c: 1d00 |0002: monitor-enter v0 │ │ +43142e: 6201 405f |0003: sget-object v1, Lorg/purple/smoke/State;.s_instance:Lorg/purple/smoke/State; // field@5f40 │ │ +431432: 3901 0900 |0005: if-nez v1, 000e // +0009 │ │ +431436: 2201 151b |0007: new-instance v1, Lorg/purple/smoke/State; // type@1b15 │ │ +43143a: 7010 5cbd 0100 |0009: invoke-direct {v1}, Lorg/purple/smoke/State;.:()V // method@bd5c │ │ +431440: 6901 405f |000c: sput-object v1, Lorg/purple/smoke/State;.s_instance:Lorg/purple/smoke/State; // field@5f40 │ │ +431444: 6201 405f |000e: sget-object v1, Lorg/purple/smoke/State;.s_instance:Lorg/purple/smoke/State; // field@5f40 │ │ +431448: 1e00 |0010: monitor-exit v0 │ │ +43144a: 1101 |0011: return-object v1 │ │ +43144c: 0d01 |0012: move-exception v1 │ │ +43144e: 1e00 |0013: monitor-exit v0 │ │ +431450: 2701 |0014: throw v1 │ │ catches : 1 │ │ 0x0003 - 0x0010 │ │ -> 0x0012 │ │ positions : │ │ 0x0003 line=409 │ │ 0x0007 line=410 │ │ 0x000e line=412 │ │ @@ -742946,28 +742945,28 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 27 16-bit code units │ │ -4317ac: |[4317ac] org.purple.smoke.State.populateParticipants:()V │ │ -4317bc: 5480 3b5f |0000: iget-object v0, v8, Lorg/purple/smoke/State;.m_participantsScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f3b │ │ -4317c0: 3900 0800 |0002: if-nez v0, 000a // +0008 │ │ -4317c4: 7100 c660 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c6 │ │ -4317ca: 0c00 |0007: move-result-object v0 │ │ -4317cc: 5b80 3b5f |0008: iput-object v0, v8, Lorg/purple/smoke/State;.m_participantsScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f3b │ │ -4317d0: 5481 3b5f |000a: iget-object v1, v8, Lorg/purple/smoke/State;.m_participantsScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f3b │ │ -4317d4: 2202 141b |000c: new-instance v2, Lorg/purple/smoke/State$1; // type@1b14 │ │ -4317d8: 7020 59bd 8200 |000e: invoke-direct {v2, v8}, Lorg/purple/smoke/State$1;.:(Lorg/purple/smoke/State;)V // method@bd59 │ │ -4317de: 1603 0000 |0011: const-wide/16 v3, #int 0 // #0 │ │ -4317e2: 1605 c409 |0013: const-wide/16 v5, #int 2500 // #9c4 │ │ -4317e6: 6207 ef2c |0015: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -4317ea: 7807 ce60 0100 |0017: invoke-interface/range {v1, v2, v3, v4, v5, v6, v7}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ -4317f0: 0e00 |001a: return-void │ │ +4317a8: |[4317a8] org.purple.smoke.State.populateParticipants:()V │ │ +4317b8: 5480 3b5f |0000: iget-object v0, v8, Lorg/purple/smoke/State;.m_participantsScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f3b │ │ +4317bc: 3900 0800 |0002: if-nez v0, 000a // +0008 │ │ +4317c0: 7100 c660 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c6 │ │ +4317c6: 0c00 |0007: move-result-object v0 │ │ +4317c8: 5b80 3b5f |0008: iput-object v0, v8, Lorg/purple/smoke/State;.m_participantsScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f3b │ │ +4317cc: 5481 3b5f |000a: iget-object v1, v8, Lorg/purple/smoke/State;.m_participantsScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f3b │ │ +4317d0: 2202 141b |000c: new-instance v2, Lorg/purple/smoke/State$1; // type@1b14 │ │ +4317d4: 7020 59bd 8200 |000e: invoke-direct {v2, v8}, Lorg/purple/smoke/State$1;.:(Lorg/purple/smoke/State;)V // method@bd59 │ │ +4317da: 1603 0000 |0011: const-wide/16 v3, #int 0 // #0 │ │ +4317de: 1605 c409 |0013: const-wide/16 v5, #int 2500 // #9c4 │ │ +4317e2: 6207 ef2c |0015: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +4317e6: 7807 ce60 0100 |0017: invoke-interface/range {v1, v2, v3, v4, v5, v6, v7}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ +4317ec: 0e00 |001a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=79 │ │ 0x0004 line=81 │ │ 0x000a line=83 │ │ locals : │ │ 0x0000 - 0x001b reg=8 this Lorg/purple/smoke/State; │ │ @@ -742978,34 +742977,34 @@ │ │ type : '(Lorg/purple/smoke/FireChannel;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 36 16-bit code units │ │ -431548: |[431548] org.purple.smoke.State.addFire:(Lorg/purple/smoke/FireChannel;)V │ │ -431558: 3903 0300 |0000: if-nez v3, 0003 // +0003 │ │ -43155c: 0e00 |0002: return-void │ │ -43155e: 5420 385f |0003: iget-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -431562: 3900 0a00 |0005: if-nez v0, 000f // +000a │ │ -431566: 2200 cb0b |0007: new-instance v0, Ljava/util/TreeMap; // type@0bcb │ │ -43156a: 7010 8c60 0000 |0009: invoke-direct {v0}, Ljava/util/TreeMap;.:()V // method@608c │ │ -431570: 5b20 385f |000c: iput-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -431574: 280c |000e: goto 001a // +000c │ │ -431576: 6e10 abba 0300 |000f: invoke-virtual {v3}, Lorg/purple/smoke/FireChannel;.name:()Ljava/lang/String; // method@baab │ │ -43157c: 0c01 |0012: move-result-object v1 │ │ -43157e: 7220 5660 1000 |0013: invoke-interface {v0, v1}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6056 │ │ -431584: 0a00 |0016: move-result v0 │ │ -431586: 3800 0300 |0017: if-eqz v0, 001a // +0003 │ │ -43158a: 0e00 |0019: return-void │ │ -43158c: 5420 385f |001a: iget-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -431590: 6e10 abba 0300 |001c: invoke-virtual {v3}, Lorg/purple/smoke/FireChannel;.name:()Ljava/lang/String; // method@baab │ │ -431596: 0c01 |001f: move-result-object v1 │ │ -431598: 7230 5d60 1003 |0020: invoke-interface {v0, v1, v3}, Ljava/util/Map;.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; // method@605d │ │ -43159e: 0e00 |0023: return-void │ │ +431544: |[431544] org.purple.smoke.State.addFire:(Lorg/purple/smoke/FireChannel;)V │ │ +431554: 3903 0300 |0000: if-nez v3, 0003 // +0003 │ │ +431558: 0e00 |0002: return-void │ │ +43155a: 5420 385f |0003: iget-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +43155e: 3900 0a00 |0005: if-nez v0, 000f // +000a │ │ +431562: 2200 cb0b |0007: new-instance v0, Ljava/util/TreeMap; // type@0bcb │ │ +431566: 7010 8c60 0000 |0009: invoke-direct {v0}, Ljava/util/TreeMap;.:()V // method@608c │ │ +43156c: 5b20 385f |000c: iput-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +431570: 280c |000e: goto 001a // +000c │ │ +431572: 6e10 abba 0300 |000f: invoke-virtual {v3}, Lorg/purple/smoke/FireChannel;.name:()Ljava/lang/String; // method@baab │ │ +431578: 0c01 |0012: move-result-object v1 │ │ +43157a: 7220 5660 1000 |0013: invoke-interface {v0, v1}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6056 │ │ +431580: 0a00 |0016: move-result v0 │ │ +431582: 3800 0300 |0017: if-eqz v0, 001a // +0003 │ │ +431586: 0e00 |0019: return-void │ │ +431588: 5420 385f |001a: iget-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +43158c: 6e10 abba 0300 |001c: invoke-virtual {v3}, Lorg/purple/smoke/FireChannel;.name:()Ljava/lang/String; // method@baab │ │ +431592: 0c01 |001f: move-result-object v1 │ │ +431594: 7230 5d60 1003 |0020: invoke-interface {v0, v1, v3}, Ljava/util/Map;.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; // method@605d │ │ +43159a: 0e00 |0023: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=480 │ │ 0x0007 line=481 │ │ 0x000f line=482 │ │ 0x001a line=485 │ │ locals : │ │ @@ -743017,50 +743016,50 @@ │ │ type : '(I)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 71 16-bit code units │ │ -430b28: |[430b28] org.purple.smoke.State.chatCheckBoxIsSelected:(I)Z │ │ -430b38: 5440 355f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430b3c: 6e10 ec60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430b42: 0c00 |0005: move-result-object v0 │ │ -430b44: 6e10 e760 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ -430b4a: 1200 |0009: const/4 v0, #int 0 // #0 │ │ -430b4c: 5441 345f |000a: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -430b50: 2202 f10a |000c: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -430b54: 7010 ee5c 0200 |000e: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -430b5a: 1a03 865e |0011: const-string v3, "chat_checkbox_" // string@5e86 │ │ -430b5e: 6e20 f95c 3200 |0013: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -430b64: 6e20 f45c 5200 |0016: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ -430b6a: 6e10 035d 0200 |0019: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -430b70: 0c05 |001c: move-result-object v5 │ │ -430b72: 1302 3000 |001d: const/16 v2, #int 48 // #30 │ │ -430b76: 6e30 c604 5102 |001f: invoke-virtual {v1, v5, v2}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ -430b7c: 0a05 |0022: move-result v5 │ │ -430b7e: 1301 3100 |0023: const/16 v1, #int 49 // #31 │ │ -430b82: 3315 0300 |0025: if-ne v5, v1, 0028 // +0003 │ │ -430b86: 1210 |0027: const/4 v0, #int 1 // #1 │ │ -430b88: 5445 355f |0028: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430b8c: 6e10 ec60 0500 |002a: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430b92: 0c05 |002d: move-result-object v5 │ │ -430b94: 6e10 e860 0500 |002e: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -430b9a: 0f00 |0031: return v0 │ │ -430b9c: 0d05 |0032: move-exception v5 │ │ -430b9e: 5440 355f |0033: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430ba2: 6e10 ec60 0000 |0035: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430ba8: 0c00 |0038: move-result-object v0 │ │ -430baa: 6e10 e860 0000 |0039: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -430bb0: 2705 |003c: throw v5 │ │ -430bb2: 5445 355f |003d: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430bb6: 6e10 ec60 0500 |003f: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430bbc: 0c05 |0042: move-result-object v5 │ │ -430bbe: 6e10 e860 0500 |0043: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -430bc4: 0f00 |0046: return v0 │ │ +430b24: |[430b24] org.purple.smoke.State.chatCheckBoxIsSelected:(I)Z │ │ +430b34: 5440 355f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430b38: 6e10 ec60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430b3e: 0c00 |0005: move-result-object v0 │ │ +430b40: 6e10 e760 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ +430b46: 1200 |0009: const/4 v0, #int 0 // #0 │ │ +430b48: 5441 345f |000a: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +430b4c: 2202 f10a |000c: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +430b50: 7010 ee5c 0200 |000e: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +430b56: 1a03 865e |0011: const-string v3, "chat_checkbox_" // string@5e86 │ │ +430b5a: 6e20 f95c 3200 |0013: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +430b60: 6e20 f45c 5200 |0016: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ +430b66: 6e10 035d 0200 |0019: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +430b6c: 0c05 |001c: move-result-object v5 │ │ +430b6e: 1302 3000 |001d: const/16 v2, #int 48 // #30 │ │ +430b72: 6e30 c604 5102 |001f: invoke-virtual {v1, v5, v2}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ +430b78: 0a05 |0022: move-result v5 │ │ +430b7a: 1301 3100 |0023: const/16 v1, #int 49 // #31 │ │ +430b7e: 3315 0300 |0025: if-ne v5, v1, 0028 // +0003 │ │ +430b82: 1210 |0027: const/4 v0, #int 1 // #1 │ │ +430b84: 5445 355f |0028: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430b88: 6e10 ec60 0500 |002a: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430b8e: 0c05 |002d: move-result-object v5 │ │ +430b90: 6e10 e860 0500 |002e: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +430b96: 0f00 |0031: return v0 │ │ +430b98: 0d05 |0032: move-exception v5 │ │ +430b9a: 5440 355f |0033: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430b9e: 6e10 ec60 0000 |0035: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430ba4: 0c00 |0038: move-result-object v0 │ │ +430ba6: 6e10 e860 0000 |0039: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +430bac: 2705 |003c: throw v5 │ │ +430bae: 5445 355f |003d: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430bb2: 6e10 ec60 0500 |003f: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430bb8: 0c05 |0042: move-result-object v5 │ │ +430bba: 6e10 e860 0500 |0043: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +430bc0: 0f00 |0046: return v0 │ │ catches : 1 │ │ 0x000a - 0x0023 │ │ Ljava/lang/Exception; -> 0x003d │ │ -> 0x0032 │ │ positions : │ │ 0x0000 line=248 │ │ 0x000a line=252 │ │ @@ -743076,40 +743075,40 @@ │ │ type : '()I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 49 16-bit code units │ │ -430f40: |[430f40] org.purple.smoke.State.chatCheckedParticipants:()I │ │ -430f50: 5430 355f |0000: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430f54: 6e10 ec60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430f5a: 0c00 |0005: move-result-object v0 │ │ -430f5c: 6e10 e760 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ -430f62: 1200 |0009: const/4 v0, #int 0 // #0 │ │ -430f64: 5431 345f |000a: iget-object v1, v3, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -430f68: 1a02 875e |000c: const-string v2, "chat_checkbox_counter" // string@5e87 │ │ -430f6c: 6e30 cc04 2100 |000e: invoke-virtual {v1, v2, v0}, Landroid/os/Bundle;.getInt:(Ljava/lang/String;I)I // method@04cc │ │ -430f72: 0a00 |0011: move-result v0 │ │ -430f74: 5431 355f |0012: iget-object v1, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430f78: 6e10 ec60 0100 |0014: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430f7e: 0c01 |0017: move-result-object v1 │ │ -430f80: 6e10 e860 0100 |0018: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -430f86: 0f00 |001b: return v0 │ │ -430f88: 0d00 |001c: move-exception v0 │ │ -430f8a: 5431 355f |001d: iget-object v1, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430f8e: 6e10 ec60 0100 |001f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430f94: 0c01 |0022: move-result-object v1 │ │ -430f96: 6e10 e860 0100 |0023: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -430f9c: 2700 |0026: throw v0 │ │ -430f9e: 5431 355f |0027: iget-object v1, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430fa2: 6e10 ec60 0100 |0029: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430fa8: 0c01 |002c: move-result-object v1 │ │ -430faa: 6e10 e860 0100 |002d: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -430fb0: 0f00 |0030: return v0 │ │ +430f3c: |[430f3c] org.purple.smoke.State.chatCheckedParticipants:()I │ │ +430f4c: 5430 355f |0000: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430f50: 6e10 ec60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430f56: 0c00 |0005: move-result-object v0 │ │ +430f58: 6e10 e760 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ +430f5e: 1200 |0009: const/4 v0, #int 0 // #0 │ │ +430f60: 5431 345f |000a: iget-object v1, v3, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +430f64: 1a02 875e |000c: const-string v2, "chat_checkbox_counter" // string@5e87 │ │ +430f68: 6e30 cc04 2100 |000e: invoke-virtual {v1, v2, v0}, Landroid/os/Bundle;.getInt:(Ljava/lang/String;I)I // method@04cc │ │ +430f6e: 0a00 |0011: move-result v0 │ │ +430f70: 5431 355f |0012: iget-object v1, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430f74: 6e10 ec60 0100 |0014: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430f7a: 0c01 |0017: move-result-object v1 │ │ +430f7c: 6e10 e860 0100 |0018: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +430f82: 0f00 |001b: return v0 │ │ +430f84: 0d00 |001c: move-exception v0 │ │ +430f86: 5431 355f |001d: iget-object v1, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430f8a: 6e10 ec60 0100 |001f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430f90: 0c01 |0022: move-result-object v1 │ │ +430f92: 6e10 e860 0100 |0023: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +430f98: 2700 |0026: throw v0 │ │ +430f9a: 5431 355f |0027: iget-object v1, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430f9e: 6e10 ec60 0100 |0029: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430fa4: 0c01 |002c: move-result-object v1 │ │ +430fa6: 6e10 e860 0100 |002d: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +430fac: 0f00 |0030: return v0 │ │ catches : 1 │ │ 0x000a - 0x0012 │ │ Ljava/lang/Exception; -> 0x0027 │ │ -> 0x001c │ │ positions : │ │ 0x0000 line=371 │ │ 0x000a line=375 │ │ @@ -743124,22 +743123,22 @@ │ │ type : '()Ljava/util/ArrayList;' │ │ access : 0x20001 (PUBLIC DECLARED_SYNCHRONIZED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 8 16-bit code units │ │ -43117c: |[43117c] org.purple.smoke.State.chatLog:()Ljava/util/ArrayList; │ │ -43118c: 1d01 |0000: monitor-enter v1 │ │ -43118e: 5410 365f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ -431192: 1e01 |0003: monitor-exit v1 │ │ -431194: 1100 |0004: return-object v0 │ │ -431196: 0d00 |0005: move-exception v0 │ │ -431198: 1e01 |0006: monitor-exit v1 │ │ -43119a: 2700 |0007: throw v0 │ │ +431178: |[431178] org.purple.smoke.State.chatLog:()Ljava/util/ArrayList; │ │ +431188: 1d01 |0000: monitor-enter v1 │ │ +43118a: 5410 365f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ +43118e: 1e01 |0003: monitor-exit v1 │ │ +431190: 1100 |0004: return-object v0 │ │ +431192: 0d00 |0005: move-exception v0 │ │ +431194: 1e01 |0006: monitor-exit v1 │ │ +431196: 2700 |0007: throw v0 │ │ catches : 1 │ │ 0x0001 - 0x0003 │ │ -> 0x0005 │ │ positions : │ │ 0x0001 line=417 │ │ locals : │ │ 0x0000 - 0x0008 reg=1 this Lorg/purple/smoke/State; │ │ @@ -743149,47 +743148,47 @@ │ │ type : '(Ljava/lang/String;)J' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 67 16-bit code units │ │ -431334: |[431334] org.purple.smoke.State.chatSequence:(Ljava/lang/String;)J │ │ -431344: 5430 355f |0000: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431348: 6e10 ec60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -43134e: 0c00 |0005: move-result-object v0 │ │ -431350: 6e10 e760 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ -431356: 5430 345f |0009: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -43135a: 2201 f10a |000b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -43135e: 7010 ee5c 0100 |000d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -431364: 1a02 8f5e |0010: const-string v2, "chat_sequence" // string@5e8f │ │ -431368: 6e20 f95c 2100 |0012: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43136e: 6e20 f95c 4100 |0015: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -431374: 6e10 035d 0100 |0018: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -43137a: 0c04 |001b: move-result-object v4 │ │ -43137c: 1601 0100 |001c: const-wide/16 v1, #int 1 // #1 │ │ -431380: 6e40 cf04 4021 |001e: invoke-virtual {v0, v4, v1, v2}, Landroid/os/Bundle;.getLong:(Ljava/lang/String;J)J // method@04cf │ │ -431386: 0b00 |0021: move-result-wide v0 │ │ -431388: 5434 355f |0022: iget-object v4, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -43138c: 6e10 ec60 0400 |0024: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -431392: 0c04 |0027: move-result-object v4 │ │ -431394: 6e10 e860 0400 |0028: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -43139a: 1000 |002b: return-wide v0 │ │ -43139c: 0d04 |002c: move-exception v4 │ │ -43139e: 5430 355f |002d: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4313a2: 6e10 ec60 0000 |002f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -4313a8: 0c00 |0032: move-result-object v0 │ │ -4313aa: 6e10 e860 0000 |0033: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -4313b0: 2704 |0036: throw v4 │ │ -4313b2: 5434 355f |0037: iget-object v4, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4313b6: 6e10 ec60 0400 |0039: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -4313bc: 0c04 |003c: move-result-object v4 │ │ -4313be: 6e10 e860 0400 |003d: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -4313c4: 1600 0000 |0040: const-wide/16 v0, #int 0 // #0 │ │ -4313c8: 1000 |0042: return-wide v0 │ │ +431330: |[431330] org.purple.smoke.State.chatSequence:(Ljava/lang/String;)J │ │ +431340: 5430 355f |0000: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431344: 6e10 ec60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +43134a: 0c00 |0005: move-result-object v0 │ │ +43134c: 6e10 e760 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ +431352: 5430 345f |0009: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431356: 2201 f10a |000b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +43135a: 7010 ee5c 0100 |000d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +431360: 1a02 8f5e |0010: const-string v2, "chat_sequence" // string@5e8f │ │ +431364: 6e20 f95c 2100 |0012: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43136a: 6e20 f95c 4100 |0015: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +431370: 6e10 035d 0100 |0018: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +431376: 0c04 |001b: move-result-object v4 │ │ +431378: 1601 0100 |001c: const-wide/16 v1, #int 1 // #1 │ │ +43137c: 6e40 cf04 4021 |001e: invoke-virtual {v0, v4, v1, v2}, Landroid/os/Bundle;.getLong:(Ljava/lang/String;J)J // method@04cf │ │ +431382: 0b00 |0021: move-result-wide v0 │ │ +431384: 5434 355f |0022: iget-object v4, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431388: 6e10 ec60 0400 |0024: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +43138e: 0c04 |0027: move-result-object v4 │ │ +431390: 6e10 e860 0400 |0028: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +431396: 1000 |002b: return-wide v0 │ │ +431398: 0d04 |002c: move-exception v4 │ │ +43139a: 5430 355f |002d: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +43139e: 6e10 ec60 0000 |002f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +4313a4: 0c00 |0032: move-result-object v0 │ │ +4313a6: 6e10 e860 0000 |0033: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +4313ac: 2704 |0036: throw v4 │ │ +4313ae: 5434 355f |0037: iget-object v4, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4313b2: 6e10 ec60 0400 |0039: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +4313b8: 0c04 |003c: move-result-object v4 │ │ +4313ba: 6e10 e860 0400 |003d: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +4313c0: 1600 0000 |0040: const-wide/16 v0, #int 0 // #0 │ │ +4313c4: 1000 |0042: return-wide v0 │ │ catches : 1 │ │ 0x0009 - 0x0022 │ │ Ljava/lang/Exception; -> 0x0037 │ │ -> 0x002c │ │ positions : │ │ 0x0000 line=390 │ │ 0x0009 line=394 │ │ @@ -743205,26 +743204,26 @@ │ │ type : '()V' │ │ access : 0x20001 (PUBLIC DECLARED_SYNCHRONIZED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 16 16-bit code units │ │ -4315a0: |[4315a0] org.purple.smoke.State.clearChatLog:()V │ │ -4315b0: 1d01 |0000: monitor-enter v1 │ │ -4315b2: 5410 365f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ -4315b6: 3800 0500 |0003: if-eqz v0, 0008 // +0005 │ │ -4315ba: 6e10 9f5f 0000 |0005: invoke-virtual {v0}, Ljava/util/ArrayList;.clear:()V // method@5f9f │ │ -4315c0: 1200 |0008: const/4 v0, #int 0 // #0 │ │ -4315c2: 5b10 365f |0009: iput-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ -4315c6: 1e01 |000b: monitor-exit v1 │ │ -4315c8: 0e00 |000c: return-void │ │ -4315ca: 0d00 |000d: move-exception v0 │ │ -4315cc: 1e01 |000e: monitor-exit v1 │ │ -4315ce: 2700 |000f: throw v0 │ │ +43159c: |[43159c] org.purple.smoke.State.clearChatLog:()V │ │ +4315ac: 1d01 |0000: monitor-enter v1 │ │ +4315ae: 5410 365f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ +4315b2: 3800 0500 |0003: if-eqz v0, 0008 // +0005 │ │ +4315b6: 6e10 9f5f 0000 |0005: invoke-virtual {v0}, Ljava/util/ArrayList;.clear:()V // method@5f9f │ │ +4315bc: 1200 |0008: const/4 v0, #int 0 // #0 │ │ +4315be: 5b10 365f |0009: iput-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ +4315c2: 1e01 |000b: monitor-exit v1 │ │ +4315c4: 0e00 |000c: return-void │ │ +4315c6: 0d00 |000d: move-exception v0 │ │ +4315c8: 1e01 |000e: monitor-exit v1 │ │ +4315ca: 2700 |000f: throw v0 │ │ catches : 1 │ │ 0x0001 - 0x000b │ │ -> 0x000d │ │ positions : │ │ 0x0001 line=430 │ │ 0x0005 line=431 │ │ 0x0009 line=433 │ │ @@ -743237,34 +743236,34 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 38 16-bit code units │ │ -4315dc: |[4315dc] org.purple.smoke.State.clearParticipants:()V │ │ -4315ec: 5420 3a5f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -4315f0: 6e10 ed60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -4315f6: 0c00 |0005: move-result-object v0 │ │ -4315f8: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ -4315fe: 5420 395f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ -431602: 3800 1100 |000b: if-eqz v0, 001c // +0011 │ │ -431606: 6e10 9f5f 0000 |000d: invoke-virtual {v0}, Ljava/util/ArrayList;.clear:()V // method@5f9f │ │ -43160c: 280c |0010: goto 001c // +000c │ │ -43160e: 0d00 |0011: move-exception v0 │ │ -431610: 5421 3a5f |0012: iget-object v1, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -431614: 6e10 ed60 0100 |0014: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -43161a: 0c01 |0017: move-result-object v1 │ │ -43161c: 6e10 ea60 0100 |0018: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431622: 2700 |001b: throw v0 │ │ -431624: 5420 3a5f |001c: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -431628: 6e10 ed60 0000 |001e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -43162e: 0c00 |0021: move-result-object v0 │ │ -431630: 6e10 ea60 0000 |0022: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431636: 0e00 |0025: return-void │ │ +4315d8: |[4315d8] org.purple.smoke.State.clearParticipants:()V │ │ +4315e8: 5420 3a5f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +4315ec: 6e10 ed60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +4315f2: 0c00 |0005: move-result-object v0 │ │ +4315f4: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ +4315fa: 5420 395f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ +4315fe: 3800 1100 |000b: if-eqz v0, 001c // +0011 │ │ +431602: 6e10 9f5f 0000 |000d: invoke-virtual {v0}, Ljava/util/ArrayList;.clear:()V // method@5f9f │ │ +431608: 280c |0010: goto 001c // +000c │ │ +43160a: 0d00 |0011: move-exception v0 │ │ +43160c: 5421 3a5f |0012: iget-object v1, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +431610: 6e10 ed60 0100 |0014: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431616: 0c01 |0017: move-result-object v1 │ │ +431618: 6e10 ea60 0100 |0018: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +43161e: 2700 |001b: throw v0 │ │ +431620: 5420 3a5f |001c: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +431624: 6e10 ed60 0000 |001e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +43162a: 0c00 |0021: move-result-object v0 │ │ +43162c: 6e10 ea60 0000 |0022: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431632: 0e00 |0025: return-void │ │ catches : 1 │ │ 0x0009 - 0x0010 │ │ Ljava/lang/Exception; -> 0x001c │ │ -> 0x0011 │ │ positions : │ │ 0x0000 line=490 │ │ 0x0009 line=494 │ │ @@ -743280,18 +743279,18 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -431648: |[431648] org.purple.smoke.State.clearSelectedSwitches:()V │ │ -431658: 5410 3d5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ -43165c: 7210 5560 0000 |0002: invoke-interface {v0}, Ljava/util/Map;.clear:()V // method@6055 │ │ -431662: 0e00 |0005: return-void │ │ +431644: |[431644] org.purple.smoke.State.clearSelectedSwitches:()V │ │ +431654: 5410 3d5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ +431658: 7210 5560 0000 |0002: invoke-interface {v0}, Ljava/util/Map;.clear:()V // method@6055 │ │ +43165e: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=508 │ │ locals : │ │ 0x0000 - 0x0006 reg=1 this Lorg/purple/smoke/State; │ │ │ │ #8 : (in Lorg/purple/smoke/State;) │ │ @@ -743299,23 +743298,23 @@ │ │ type : '()V' │ │ access : 0x20001 (PUBLIC DECLARED_SYNCHRONIZED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 11 16-bit code units │ │ -431664: |[431664] org.purple.smoke.State.clearSteamDetailsStates:()V │ │ -431674: 1d01 |0000: monitor-enter v1 │ │ -431676: 5410 3f5f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ -43167a: 7210 5560 0000 |0003: invoke-interface {v0}, Ljava/util/Map;.clear:()V // method@6055 │ │ -431680: 1e01 |0006: monitor-exit v1 │ │ -431682: 0e00 |0007: return-void │ │ -431684: 0d00 |0008: move-exception v0 │ │ -431686: 1e01 |0009: monitor-exit v1 │ │ -431688: 2700 |000a: throw v0 │ │ +431660: |[431660] org.purple.smoke.State.clearSteamDetailsStates:()V │ │ +431670: 1d01 |0000: monitor-enter v1 │ │ +431672: 5410 3f5f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ +431676: 7210 5560 0000 |0003: invoke-interface {v0}, Ljava/util/Map;.clear:()V // method@6055 │ │ +43167c: 1e01 |0006: monitor-exit v1 │ │ +43167e: 0e00 |0007: return-void │ │ +431680: 0d00 |0008: move-exception v0 │ │ +431682: 1e01 |0009: monitor-exit v1 │ │ +431684: 2700 |000a: throw v0 │ │ catches : 1 │ │ 0x0001 - 0x0006 │ │ -> 0x0008 │ │ positions : │ │ 0x0001 line=438 │ │ 0x0006 line=439 │ │ locals : │ │ @@ -743326,24 +743325,24 @@ │ │ type : '(Ljava/lang/String;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 14 16-bit code units │ │ -430bd8: |[430bd8] org.purple.smoke.State.containsFire:(Ljava/lang/String;)Z │ │ -430be8: 5410 385f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -430bec: 3800 0a00 |0002: if-eqz v0, 000c // +000a │ │ -430bf0: 7220 5660 2000 |0004: invoke-interface {v0, v2}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6056 │ │ -430bf6: 0a02 |0007: move-result v2 │ │ -430bf8: 3802 0400 |0008: if-eqz v2, 000c // +0004 │ │ -430bfc: 1212 |000a: const/4 v2, #int 1 // #1 │ │ -430bfe: 2802 |000b: goto 000d // +0002 │ │ -430c00: 1202 |000c: const/4 v2, #int 0 // #0 │ │ -430c02: 0f02 |000d: return v2 │ │ +430bd4: |[430bd4] org.purple.smoke.State.containsFire:(Ljava/lang/String;)Z │ │ +430be4: 5410 385f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +430be8: 3800 0a00 |0002: if-eqz v0, 000c // +000a │ │ +430bec: 7220 5660 2000 |0004: invoke-interface {v0, v2}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6056 │ │ +430bf2: 0a02 |0007: move-result v2 │ │ +430bf4: 3802 0400 |0008: if-eqz v2, 000c // +0004 │ │ +430bf8: 1212 |000a: const/4 v2, #int 1 // #1 │ │ +430bfa: 2802 |000b: goto 000d // +0002 │ │ +430bfc: 1202 |000c: const/4 v2, #int 0 // #0 │ │ +430bfe: 0f02 |000d: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=267 │ │ locals : │ │ 0x0000 - 0x000e reg=1 this Lorg/purple/smoke/State; │ │ 0x0000 - 0x000e reg=2 (null) Ljava/lang/String; │ │ │ │ @@ -743352,19 +743351,19 @@ │ │ type : '()Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -430c04: |[430c04] org.purple.smoke.State.exit:()Z │ │ -430c14: 5410 375f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_exit:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f37 │ │ -430c18: 6e10 d860 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -430c1e: 0a00 |0005: move-result v0 │ │ -430c20: 0f00 |0006: return v0 │ │ +430c00: |[430c00] org.purple.smoke.State.exit:()Z │ │ +430c10: 5410 375f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_exit:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f37 │ │ +430c14: 6e10 d860 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +430c1a: 0a00 |0005: move-result v0 │ │ +430c1c: 0f00 |0006: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=272 │ │ locals : │ │ 0x0000 - 0x0007 reg=1 this Lorg/purple/smoke/State; │ │ │ │ #11 : (in Lorg/purple/smoke/State;) │ │ @@ -743372,29 +743371,29 @@ │ │ type : '(Ljava/lang/String;)Lorg/purple/smoke/FireChannel;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 24 16-bit code units │ │ -4313dc: |[4313dc] org.purple.smoke.State.fireChannel:(Ljava/lang/String;)Lorg/purple/smoke/FireChannel; │ │ -4313ec: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -4313ee: 3903 0300 |0001: if-nez v3, 0004 // +0003 │ │ -4313f2: 1100 |0003: return-object v0 │ │ -4313f4: 5421 385f |0004: iget-object v1, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -4313f8: 3801 1100 |0006: if-eqz v1, 0017 // +0011 │ │ -4313fc: 7220 5660 3100 |0008: invoke-interface {v1, v3}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6056 │ │ -431402: 0a01 |000b: move-result v1 │ │ -431404: 3801 0b00 |000c: if-eqz v1, 0017 // +000b │ │ -431408: 5420 385f |000e: iget-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -43140c: 7220 5960 3000 |0010: invoke-interface {v0, v3}, Ljava/util/Map;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@6059 │ │ -431412: 0c03 |0013: move-result-object v3 │ │ -431414: 1f03 801a |0014: check-cast v3, Lorg/purple/smoke/FireChannel; // type@1a80 │ │ -431418: 1103 |0016: return-object v3 │ │ -43141a: 1100 |0017: return-object v0 │ │ +4313d8: |[4313d8] org.purple.smoke.State.fireChannel:(Ljava/lang/String;)Lorg/purple/smoke/FireChannel; │ │ +4313e8: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +4313ea: 3903 0300 |0001: if-nez v3, 0004 // +0003 │ │ +4313ee: 1100 |0003: return-object v0 │ │ +4313f0: 5421 385f |0004: iget-object v1, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +4313f4: 3801 1100 |0006: if-eqz v1, 0017 // +0011 │ │ +4313f8: 7220 5660 3100 |0008: invoke-interface {v1, v3}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6056 │ │ +4313fe: 0a01 |000b: move-result v1 │ │ +431400: 3801 0b00 |000c: if-eqz v1, 0017 // +000b │ │ +431404: 5420 385f |000e: iget-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +431408: 7220 5960 3000 |0010: invoke-interface {v0, v3}, Ljava/util/Map;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@6059 │ │ +43140e: 0c03 |0013: move-result-object v3 │ │ +431410: 1f03 801a |0014: check-cast v3, Lorg/purple/smoke/FireChannel; // type@1a80 │ │ +431414: 1103 |0016: return-object v3 │ │ +431416: 1100 |0017: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0004 line=198 │ │ 0x000e line=199 │ │ locals : │ │ 0x0000 - 0x0018 reg=2 this Lorg/purple/smoke/State; │ │ 0x0000 - 0x0018 reg=3 (null) Ljava/lang/String; │ │ @@ -743404,17 +743403,17 @@ │ │ type : '()Ljava/util/Map;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -4312e4: |[4312e4] org.purple.smoke.State.fireChannels:()Ljava/util/Map; │ │ -4312f4: 5410 385f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -4312f8: 1100 |0002: return-object v0 │ │ +4312e0: |[4312e0] org.purple.smoke.State.fireChannels:()Ljava/util/Map; │ │ +4312f0: 5410 385f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +4312f4: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=206 │ │ locals : │ │ 0x0000 - 0x0003 reg=1 this Lorg/purple/smoke/State; │ │ │ │ #13 : (in Lorg/purple/smoke/State;) │ │ @@ -743422,39 +743421,39 @@ │ │ type : '(Ljava/lang/String;)C' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 48 16-bit code units │ │ -430ec0: |[430ec0] org.purple.smoke.State.getChar:(Ljava/lang/String;)C │ │ -430ed0: 5420 355f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430ed4: 6e10 ec60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430eda: 0c00 |0005: move-result-object v0 │ │ -430edc: 6e10 e760 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ -430ee2: 1300 3000 |0009: const/16 v0, #int 48 // #30 │ │ -430ee6: 5421 345f |000b: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -430eea: 6e30 c604 3100 |000d: invoke-virtual {v1, v3, v0}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ -430ef0: 0a03 |0010: move-result v3 │ │ -430ef2: 5420 355f |0011: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430ef6: 6e10 ec60 0000 |0013: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430efc: 0c00 |0016: move-result-object v0 │ │ -430efe: 6e10 e860 0000 |0017: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -430f04: 0f03 |001a: return v3 │ │ -430f06: 0d03 |001b: move-exception v3 │ │ -430f08: 5420 355f |001c: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430f0c: 6e10 ec60 0000 |001e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430f12: 0c00 |0021: move-result-object v0 │ │ -430f14: 6e10 e860 0000 |0022: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -430f1a: 2703 |0025: throw v3 │ │ -430f1c: 5423 355f |0026: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430f20: 6e10 ec60 0300 |0028: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430f26: 0c03 |002b: move-result-object v3 │ │ -430f28: 6e10 e860 0300 |002c: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -430f2e: 0f00 |002f: return v0 │ │ +430ebc: |[430ebc] org.purple.smoke.State.getChar:(Ljava/lang/String;)C │ │ +430ecc: 5420 355f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430ed0: 6e10 ec60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430ed6: 0c00 |0005: move-result-object v0 │ │ +430ed8: 6e10 e760 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ +430ede: 1300 3000 |0009: const/16 v0, #int 48 // #30 │ │ +430ee2: 5421 345f |000b: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +430ee6: 6e30 c604 3100 |000d: invoke-virtual {v1, v3, v0}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ +430eec: 0a03 |0010: move-result v3 │ │ +430eee: 5420 355f |0011: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430ef2: 6e10 ec60 0000 |0013: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430ef8: 0c00 |0016: move-result-object v0 │ │ +430efa: 6e10 e860 0000 |0017: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +430f00: 0f03 |001a: return v3 │ │ +430f02: 0d03 |001b: move-exception v3 │ │ +430f04: 5420 355f |001c: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430f08: 6e10 ec60 0000 |001e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430f0e: 0c00 |0021: move-result-object v0 │ │ +430f10: 6e10 e860 0000 |0022: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +430f16: 2703 |0025: throw v3 │ │ +430f18: 5423 355f |0026: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430f1c: 6e10 ec60 0300 |0028: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430f22: 0c03 |002b: move-result-object v3 │ │ +430f24: 6e10 e860 0300 |002c: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +430f2a: 0f00 |002f: return v0 │ │ catches : 1 │ │ 0x000b - 0x0011 │ │ Ljava/lang/Exception; -> 0x0026 │ │ -> 0x001b │ │ positions : │ │ 0x0000 line=352 │ │ 0x000b line=356 │ │ @@ -743470,39 +743469,39 @@ │ │ type : '(Ljava/lang/String;)Ljava/lang/CharSequence;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 48 16-bit code units │ │ -430fc4: |[430fc4] org.purple.smoke.State.getCharSequence:(Ljava/lang/String;)Ljava/lang/CharSequence; │ │ -430fd4: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ -430fd8: 5421 355f |0002: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430fdc: 6e10 ec60 0100 |0004: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430fe2: 0c01 |0007: move-result-object v1 │ │ -430fe4: 6e10 e760 0100 |0008: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ -430fea: 5421 345f |000b: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -430fee: 6e30 c804 3100 |000d: invoke-virtual {v1, v3, v0}, Landroid/os/Bundle;.getCharSequence:(Ljava/lang/String;Ljava/lang/CharSequence;)Ljava/lang/CharSequence; // method@04c8 │ │ -430ff4: 0c03 |0010: move-result-object v3 │ │ -430ff6: 5420 355f |0011: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430ffa: 6e10 ec60 0000 |0013: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -431000: 0c00 |0016: move-result-object v0 │ │ -431002: 6e10 e860 0000 |0017: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -431008: 1103 |001a: return-object v3 │ │ -43100a: 0d03 |001b: move-exception v3 │ │ -43100c: 5420 355f |001c: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431010: 6e10 ec60 0000 |001e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -431016: 0c00 |0021: move-result-object v0 │ │ -431018: 6e10 e860 0000 |0022: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -43101e: 2703 |0025: throw v3 │ │ -431020: 5423 355f |0026: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431024: 6e10 ec60 0300 |0028: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -43102a: 0c03 |002b: move-result-object v3 │ │ -43102c: 6e10 e860 0300 |002c: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -431032: 1100 |002f: return-object v0 │ │ +430fc0: |[430fc0] org.purple.smoke.State.getCharSequence:(Ljava/lang/String;)Ljava/lang/CharSequence; │ │ +430fd0: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ +430fd4: 5421 355f |0002: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430fd8: 6e10 ec60 0100 |0004: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430fde: 0c01 |0007: move-result-object v1 │ │ +430fe0: 6e10 e760 0100 |0008: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ +430fe6: 5421 345f |000b: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +430fea: 6e30 c804 3100 |000d: invoke-virtual {v1, v3, v0}, Landroid/os/Bundle;.getCharSequence:(Ljava/lang/String;Ljava/lang/CharSequence;)Ljava/lang/CharSequence; // method@04c8 │ │ +430ff0: 0c03 |0010: move-result-object v3 │ │ +430ff2: 5420 355f |0011: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430ff6: 6e10 ec60 0000 |0013: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430ffc: 0c00 |0016: move-result-object v0 │ │ +430ffe: 6e10 e860 0000 |0017: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +431004: 1103 |001a: return-object v3 │ │ +431006: 0d03 |001b: move-exception v3 │ │ +431008: 5420 355f |001c: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +43100c: 6e10 ec60 0000 |001e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +431012: 0c00 |0021: move-result-object v0 │ │ +431014: 6e10 e860 0000 |0022: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +43101a: 2703 |0025: throw v3 │ │ +43101c: 5423 355f |0026: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431020: 6e10 ec60 0300 |0028: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +431026: 0c03 |002b: move-result-object v3 │ │ +431028: 6e10 e860 0300 |002c: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +43102e: 1100 |002f: return-object v0 │ │ catches : 1 │ │ 0x000b - 0x0011 │ │ Ljava/lang/Exception; -> 0x0026 │ │ -> 0x001b │ │ positions : │ │ 0x0002 line=176 │ │ 0x000b line=180 │ │ @@ -743518,39 +743517,39 @@ │ │ type : '(Ljava/lang/String;)Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 48 16-bit code units │ │ -431044: |[431044] org.purple.smoke.State.getString:(Ljava/lang/String;)Ljava/lang/String; │ │ -431054: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ -431058: 5421 355f |0002: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -43105c: 6e10 ec60 0100 |0004: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -431062: 0c01 |0007: move-result-object v1 │ │ -431064: 6e10 e760 0100 |0008: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ -43106a: 5421 345f |000b: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -43106e: 6e30 d504 3100 |000d: invoke-virtual {v1, v3, v0}, Landroid/os/Bundle;.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; // method@04d5 │ │ -431074: 0c03 |0010: move-result-object v3 │ │ -431076: 5420 355f |0011: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -43107a: 6e10 ec60 0000 |0013: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -431080: 0c00 |0016: move-result-object v0 │ │ -431082: 6e10 e860 0000 |0017: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -431088: 1103 |001a: return-object v3 │ │ -43108a: 0d03 |001b: move-exception v3 │ │ -43108c: 5420 355f |001c: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431090: 6e10 ec60 0000 |001e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -431096: 0c00 |0021: move-result-object v0 │ │ -431098: 6e10 e860 0000 |0022: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -43109e: 2703 |0025: throw v3 │ │ -4310a0: 5423 355f |0026: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4310a4: 6e10 ec60 0300 |0028: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -4310aa: 0c03 |002b: move-result-object v3 │ │ -4310ac: 6e10 e860 0300 |002c: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -4310b2: 1100 |002f: return-object v0 │ │ +431040: |[431040] org.purple.smoke.State.getString:(Ljava/lang/String;)Ljava/lang/String; │ │ +431050: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ +431054: 5421 355f |0002: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431058: 6e10 ec60 0100 |0004: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +43105e: 0c01 |0007: move-result-object v1 │ │ +431060: 6e10 e760 0100 |0008: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ +431066: 5421 345f |000b: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +43106a: 6e30 d504 3100 |000d: invoke-virtual {v1, v3, v0}, Landroid/os/Bundle;.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; // method@04d5 │ │ +431070: 0c03 |0010: move-result-object v3 │ │ +431072: 5420 355f |0011: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431076: 6e10 ec60 0000 |0013: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +43107c: 0c00 |0016: move-result-object v0 │ │ +43107e: 6e10 e860 0000 |0017: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +431084: 1103 |001a: return-object v3 │ │ +431086: 0d03 |001b: move-exception v3 │ │ +431088: 5420 355f |001c: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +43108c: 6e10 ec60 0000 |001e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +431092: 0c00 |0021: move-result-object v0 │ │ +431094: 6e10 e860 0000 |0022: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +43109a: 2703 |0025: throw v3 │ │ +43109c: 5423 355f |0026: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4310a0: 6e10 ec60 0300 |0028: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +4310a6: 0c03 |002b: move-result-object v3 │ │ +4310a8: 6e10 e860 0300 |002c: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +4310ae: 1100 |002f: return-object v0 │ │ catches : 1 │ │ 0x000b - 0x0011 │ │ Ljava/lang/Exception; -> 0x0026 │ │ -> 0x001b │ │ positions : │ │ 0x0002 line=216 │ │ 0x000b line=220 │ │ @@ -743566,44 +743565,44 @@ │ │ type : '(Ljava/lang/String;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 60 16-bit code units │ │ -431698: |[431698] org.purple.smoke.State.incrementChatSequence:(Ljava/lang/String;)V │ │ -4316a8: 6e20 64bd 6500 |0000: invoke-virtual {v5, v6}, Lorg/purple/smoke/State;.chatSequence:(Ljava/lang/String;)J // method@bd64 │ │ -4316ae: 0b00 |0003: move-result-wide v0 │ │ -4316b0: 5452 355f |0004: iget-object v2, v5, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4316b4: 6e10 ed60 0200 |0006: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -4316ba: 0c02 |0009: move-result-object v2 │ │ -4316bc: 6e10 e960 0200 |000a: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ -4316c2: 5452 345f |000d: iget-object v2, v5, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -4316c6: 2203 f10a |000f: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ -4316ca: 7010 ee5c 0300 |0011: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -4316d0: 1a04 8f5e |0014: const-string v4, "chat_sequence" // string@5e8f │ │ -4316d4: 6e20 f95c 4300 |0016: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4316da: 6e20 f95c 6300 |0019: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4316e0: 6e10 035d 0300 |001c: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4316e6: 0c06 |001f: move-result-object v6 │ │ -4316e8: 1603 0100 |0020: const-wide/16 v3, #int 1 // #1 │ │ -4316ec: bb30 |0022: add-long/2addr v0, v3 │ │ -4316ee: 6e40 e304 6210 |0023: invoke-virtual {v2, v6, v0, v1}, Landroid/os/Bundle;.putLong:(Ljava/lang/String;J)V // method@04e3 │ │ -4316f4: 280c |0026: goto 0032 // +000c │ │ -4316f6: 0d06 |0027: move-exception v6 │ │ -4316f8: 5450 355f |0028: iget-object v0, v5, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4316fc: 6e10 ed60 0000 |002a: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431702: 0c00 |002d: move-result-object v0 │ │ -431704: 6e10 ea60 0000 |002e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -43170a: 2706 |0031: throw v6 │ │ -43170c: 5456 355f |0032: iget-object v6, v5, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431710: 6e10 ed60 0600 |0034: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431716: 0c06 |0037: move-result-object v6 │ │ -431718: 6e10 ea60 0600 |0038: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -43171e: 0e00 |003b: return-void │ │ +431694: |[431694] org.purple.smoke.State.incrementChatSequence:(Ljava/lang/String;)V │ │ +4316a4: 6e20 64bd 6500 |0000: invoke-virtual {v5, v6}, Lorg/purple/smoke/State;.chatSequence:(Ljava/lang/String;)J // method@bd64 │ │ +4316aa: 0b00 |0003: move-result-wide v0 │ │ +4316ac: 5452 355f |0004: iget-object v2, v5, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4316b0: 6e10 ed60 0200 |0006: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +4316b6: 0c02 |0009: move-result-object v2 │ │ +4316b8: 6e10 e960 0200 |000a: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ +4316be: 5452 345f |000d: iget-object v2, v5, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +4316c2: 2203 f10a |000f: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ +4316c6: 7010 ee5c 0300 |0011: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4316cc: 1a04 8f5e |0014: const-string v4, "chat_sequence" // string@5e8f │ │ +4316d0: 6e20 f95c 4300 |0016: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4316d6: 6e20 f95c 6300 |0019: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4316dc: 6e10 035d 0300 |001c: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4316e2: 0c06 |001f: move-result-object v6 │ │ +4316e4: 1603 0100 |0020: const-wide/16 v3, #int 1 // #1 │ │ +4316e8: bb30 |0022: add-long/2addr v0, v3 │ │ +4316ea: 6e40 e304 6210 |0023: invoke-virtual {v2, v6, v0, v1}, Landroid/os/Bundle;.putLong:(Ljava/lang/String;J)V // method@04e3 │ │ +4316f0: 280c |0026: goto 0032 // +000c │ │ +4316f2: 0d06 |0027: move-exception v6 │ │ +4316f4: 5450 355f |0028: iget-object v0, v5, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4316f8: 6e10 ed60 0000 |002a: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +4316fe: 0c00 |002d: move-result-object v0 │ │ +431700: 6e10 ea60 0000 |002e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431706: 2706 |0031: throw v6 │ │ +431708: 5456 355f |0032: iget-object v6, v5, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +43170c: 6e10 ed60 0600 |0034: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431712: 0c06 |0037: move-result-object v6 │ │ +431714: 6e10 ea60 0600 |0038: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +43171a: 0e00 |003b: return-void │ │ catches : 1 │ │ 0x000d - 0x0026 │ │ Ljava/lang/Exception; -> 0x0032 │ │ -> 0x0027 │ │ positions : │ │ 0x0000 line=513 │ │ 0x0004 line=515 │ │ @@ -743620,44 +743619,44 @@ │ │ type : '()Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 56 16-bit code units │ │ -430c24: |[430c24] org.purple.smoke.State.isAuthenticated:()Z │ │ -430c34: 5440 355f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430c38: 6e10 ec60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430c3e: 0c00 |0005: move-result-object v0 │ │ -430c40: 6e10 e760 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ -430c46: 1200 |0009: const/4 v0, #int 0 // #0 │ │ -430c48: 5441 345f |000a: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -430c4c: 1a02 e37b |000c: const-string v2, "is_authenticated" // string@7be3 │ │ -430c50: 1303 3000 |000e: const/16 v3, #int 48 // #30 │ │ -430c54: 6e30 c604 2103 |0010: invoke-virtual {v1, v2, v3}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ -430c5a: 0a01 |0013: move-result v1 │ │ -430c5c: 1302 3100 |0014: const/16 v2, #int 49 // #31 │ │ -430c60: 3321 0300 |0016: if-ne v1, v2, 0019 // +0003 │ │ -430c64: 1210 |0018: const/4 v0, #int 1 // #1 │ │ -430c66: 5441 355f |0019: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430c6a: 6e10 ec60 0100 |001b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430c70: 0c01 |001e: move-result-object v1 │ │ -430c72: 6e10 e860 0100 |001f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -430c78: 0f00 |0022: return v0 │ │ -430c7a: 0d00 |0023: move-exception v0 │ │ -430c7c: 5441 355f |0024: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430c80: 6e10 ec60 0100 |0026: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430c86: 0c01 |0029: move-result-object v1 │ │ -430c88: 6e10 e860 0100 |002a: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -430c8e: 2700 |002d: throw v0 │ │ -430c90: 5441 355f |002e: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430c94: 6e10 ec60 0100 |0030: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430c9a: 0c01 |0033: move-result-object v1 │ │ -430c9c: 6e10 e860 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -430ca2: 0f00 |0037: return v0 │ │ +430c20: |[430c20] org.purple.smoke.State.isAuthenticated:()Z │ │ +430c30: 5440 355f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430c34: 6e10 ec60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430c3a: 0c00 |0005: move-result-object v0 │ │ +430c3c: 6e10 e760 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ +430c42: 1200 |0009: const/4 v0, #int 0 // #0 │ │ +430c44: 5441 345f |000a: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +430c48: 1a02 e37b |000c: const-string v2, "is_authenticated" // string@7be3 │ │ +430c4c: 1303 3000 |000e: const/16 v3, #int 48 // #30 │ │ +430c50: 6e30 c604 2103 |0010: invoke-virtual {v1, v2, v3}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ +430c56: 0a01 |0013: move-result v1 │ │ +430c58: 1302 3100 |0014: const/16 v2, #int 49 // #31 │ │ +430c5c: 3321 0300 |0016: if-ne v1, v2, 0019 // +0003 │ │ +430c60: 1210 |0018: const/4 v0, #int 1 // #1 │ │ +430c62: 5441 355f |0019: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430c66: 6e10 ec60 0100 |001b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430c6c: 0c01 |001e: move-result-object v1 │ │ +430c6e: 6e10 e860 0100 |001f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +430c74: 0f00 |0022: return v0 │ │ +430c76: 0d00 |0023: move-exception v0 │ │ +430c78: 5441 355f |0024: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430c7c: 6e10 ec60 0100 |0026: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430c82: 0c01 |0029: move-result-object v1 │ │ +430c84: 6e10 e860 0100 |002a: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +430c8a: 2700 |002d: throw v0 │ │ +430c8c: 5441 355f |002e: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430c90: 6e10 ec60 0100 |0030: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430c96: 0c01 |0033: move-result-object v1 │ │ +430c98: 6e10 e860 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +430c9e: 0f00 |0037: return v0 │ │ catches : 1 │ │ 0x000a - 0x0014 │ │ Ljava/lang/Exception; -> 0x002e │ │ -> 0x0023 │ │ positions : │ │ 0x0000 line=277 │ │ 0x000a line=281 │ │ @@ -743672,44 +743671,44 @@ │ │ type : '()Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 56 16-bit code units │ │ -430cb4: |[430cb4] org.purple.smoke.State.isLocked:()Z │ │ -430cc4: 5440 355f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430cc8: 6e10 ec60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430cce: 0c00 |0005: move-result-object v0 │ │ -430cd0: 6e10 e760 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ -430cd6: 1200 |0009: const/4 v0, #int 0 // #0 │ │ -430cd8: 5441 345f |000a: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -430cdc: 1a02 e67b |000c: const-string v2, "is_locked" // string@7be6 │ │ -430ce0: 1303 3000 |000e: const/16 v3, #int 48 // #30 │ │ -430ce4: 6e30 c604 2103 |0010: invoke-virtual {v1, v2, v3}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ -430cea: 0a01 |0013: move-result v1 │ │ -430cec: 1302 3100 |0014: const/16 v2, #int 49 // #31 │ │ -430cf0: 3321 0300 |0016: if-ne v1, v2, 0019 // +0003 │ │ -430cf4: 1210 |0018: const/4 v0, #int 1 // #1 │ │ -430cf6: 5441 355f |0019: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430cfa: 6e10 ec60 0100 |001b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430d00: 0c01 |001e: move-result-object v1 │ │ -430d02: 6e10 e860 0100 |001f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -430d08: 0f00 |0022: return v0 │ │ -430d0a: 0d00 |0023: move-exception v0 │ │ -430d0c: 5441 355f |0024: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430d10: 6e10 ec60 0100 |0026: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430d16: 0c01 |0029: move-result-object v1 │ │ -430d18: 6e10 e860 0100 |002a: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -430d1e: 2700 |002d: throw v0 │ │ -430d20: 5441 355f |002e: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430d24: 6e10 ec60 0100 |0030: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430d2a: 0c01 |0033: move-result-object v1 │ │ -430d2c: 6e10 e860 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -430d32: 0f00 |0037: return v0 │ │ +430cb0: |[430cb0] org.purple.smoke.State.isLocked:()Z │ │ +430cc0: 5440 355f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430cc4: 6e10 ec60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430cca: 0c00 |0005: move-result-object v0 │ │ +430ccc: 6e10 e760 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ +430cd2: 1200 |0009: const/4 v0, #int 0 // #0 │ │ +430cd4: 5441 345f |000a: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +430cd8: 1a02 e67b |000c: const-string v2, "is_locked" // string@7be6 │ │ +430cdc: 1303 3000 |000e: const/16 v3, #int 48 // #30 │ │ +430ce0: 6e30 c604 2103 |0010: invoke-virtual {v1, v2, v3}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ +430ce6: 0a01 |0013: move-result v1 │ │ +430ce8: 1302 3100 |0014: const/16 v2, #int 49 // #31 │ │ +430cec: 3321 0300 |0016: if-ne v1, v2, 0019 // +0003 │ │ +430cf0: 1210 |0018: const/4 v0, #int 1 // #1 │ │ +430cf2: 5441 355f |0019: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430cf6: 6e10 ec60 0100 |001b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430cfc: 0c01 |001e: move-result-object v1 │ │ +430cfe: 6e10 e860 0100 |001f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +430d04: 0f00 |0022: return v0 │ │ +430d06: 0d00 |0023: move-exception v0 │ │ +430d08: 5441 355f |0024: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430d0c: 6e10 ec60 0100 |0026: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430d12: 0c01 |0029: move-result-object v1 │ │ +430d14: 6e10 e860 0100 |002a: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +430d1a: 2700 |002d: throw v0 │ │ +430d1c: 5441 355f |002e: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430d20: 6e10 ec60 0100 |0030: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430d26: 0c01 |0033: move-result-object v1 │ │ +430d28: 6e10 e860 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +430d2e: 0f00 |0037: return v0 │ │ catches : 1 │ │ 0x000a - 0x0014 │ │ Ljava/lang/Exception; -> 0x002e │ │ -> 0x0023 │ │ positions : │ │ 0x0000 line=296 │ │ 0x000a line=300 │ │ @@ -743724,42 +743723,42 @@ │ │ type : '(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZJJ)V' │ │ access : 0x20001 (PUBLIC DECLARED_SYNCHRONIZED) │ │ code - │ │ registers : 10 │ │ ins : 9 │ │ outs : 2 │ │ insns size : 48 16-bit code units │ │ -431730: |[431730] org.purple.smoke.State.logChatMessage:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZJJ)V │ │ -431740: 1d01 |0000: monitor-enter v1 │ │ -431742: 3802 2d00 |0001: if-eqz v2, 002e // +002d │ │ -431746: 3803 2b00 |0003: if-eqz v3, 002e // +002b │ │ -43174a: 3904 0300 |0005: if-nez v4, 0008 // +0003 │ │ -43174e: 2827 |0007: goto 002e // +0027 │ │ -431750: 5410 365f |0008: iget-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ -431754: 3900 0900 |000a: if-nez v0, 0013 // +0009 │ │ -431758: 2200 ab0b |000c: new-instance v0, Ljava/util/ArrayList; // type@0bab │ │ -43175c: 7010 995f 0000 |000e: invoke-direct {v0}, Ljava/util/ArrayList;.:()V // method@5f99 │ │ -431762: 5b10 365f |0011: iput-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ -431766: 2200 aa1a |0013: new-instance v0, Lorg/purple/smoke/MessageElement; // type@1aaa │ │ -43176a: 7010 adbb 0000 |0015: invoke-direct {v0}, Lorg/purple/smoke/MessageElement;.:()V // method@bbad │ │ -431770: 5b04 f654 |0018: iput-object v4, v0, Lorg/purple/smoke/MessageElement;.m_id:Ljava/lang/String; // field@54f6 │ │ -431774: 5b02 f854 |001a: iput-object v2, v0, Lorg/purple/smoke/MessageElement;.m_message:Ljava/lang/String; // field@54f8 │ │ -431778: 5b03 fb54 |001c: iput-object v3, v0, Lorg/purple/smoke/MessageElement;.m_name:Ljava/lang/String; // field@54fb │ │ -43177c: 5c05 fd54 |001e: iput-boolean v5, v0, Lorg/purple/smoke/MessageElement;.m_purple:Z // field@54fd │ │ -431780: 5a06 fe54 |0020: iput-wide v6, v0, Lorg/purple/smoke/MessageElement;.m_sequence:J // field@54fe │ │ -431784: 5a08 ff54 |0022: iput-wide v8, v0, Lorg/purple/smoke/MessageElement;.m_timestamp:J // field@54ff │ │ -431788: 5412 365f |0024: iget-object v2, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ -43178c: 6e20 9d5f 0200 |0026: invoke-virtual {v2, v0}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9d │ │ -431792: 1e01 |0029: monitor-exit v1 │ │ -431794: 0e00 |002a: return-void │ │ -431796: 0d02 |002b: move-exception v2 │ │ -431798: 1e01 |002c: monitor-exit v1 │ │ -43179a: 2702 |002d: throw v2 │ │ -43179c: 1e01 |002e: monitor-exit v1 │ │ -43179e: 0e00 |002f: return-void │ │ +43172c: |[43172c] org.purple.smoke.State.logChatMessage:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZJJ)V │ │ +43173c: 1d01 |0000: monitor-enter v1 │ │ +43173e: 3802 2d00 |0001: if-eqz v2, 002e // +002d │ │ +431742: 3803 2b00 |0003: if-eqz v3, 002e // +002b │ │ +431746: 3904 0300 |0005: if-nez v4, 0008 // +0003 │ │ +43174a: 2827 |0007: goto 002e // +0027 │ │ +43174c: 5410 365f |0008: iget-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ +431750: 3900 0900 |000a: if-nez v0, 0013 // +0009 │ │ +431754: 2200 ab0b |000c: new-instance v0, Ljava/util/ArrayList; // type@0bab │ │ +431758: 7010 995f 0000 |000e: invoke-direct {v0}, Ljava/util/ArrayList;.:()V // method@5f99 │ │ +43175e: 5b10 365f |0011: iput-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ +431762: 2200 aa1a |0013: new-instance v0, Lorg/purple/smoke/MessageElement; // type@1aaa │ │ +431766: 7010 adbb 0000 |0015: invoke-direct {v0}, Lorg/purple/smoke/MessageElement;.:()V // method@bbad │ │ +43176c: 5b04 f654 |0018: iput-object v4, v0, Lorg/purple/smoke/MessageElement;.m_id:Ljava/lang/String; // field@54f6 │ │ +431770: 5b02 f854 |001a: iput-object v2, v0, Lorg/purple/smoke/MessageElement;.m_message:Ljava/lang/String; // field@54f8 │ │ +431774: 5b03 fb54 |001c: iput-object v3, v0, Lorg/purple/smoke/MessageElement;.m_name:Ljava/lang/String; // field@54fb │ │ +431778: 5c05 fd54 |001e: iput-boolean v5, v0, Lorg/purple/smoke/MessageElement;.m_purple:Z // field@54fd │ │ +43177c: 5a06 fe54 |0020: iput-wide v6, v0, Lorg/purple/smoke/MessageElement;.m_sequence:J // field@54fe │ │ +431780: 5a08 ff54 |0022: iput-wide v8, v0, Lorg/purple/smoke/MessageElement;.m_timestamp:J // field@54ff │ │ +431784: 5412 365f |0024: iget-object v2, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ +431788: 6e20 9d5f 0200 |0026: invoke-virtual {v2, v0}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9d │ │ +43178e: 1e01 |0029: monitor-exit v1 │ │ +431790: 0e00 |002a: return-void │ │ +431792: 0d02 |002b: move-exception v2 │ │ +431794: 1e01 |002c: monitor-exit v1 │ │ +431796: 2702 |002d: throw v2 │ │ +431798: 1e01 |002e: monitor-exit v1 │ │ +43179a: 0e00 |002f: return-void │ │ catches : 1 │ │ 0x0008 - 0x0029 │ │ -> 0x002b │ │ positions : │ │ 0x0008 line=451 │ │ 0x000c line=452 │ │ 0x0013 line=454 │ │ @@ -743786,46 +743785,46 @@ │ │ type : '(Landroid/view/View;)Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 59 16-bit code units │ │ -4310c4: |[4310c4] org.purple.smoke.State.nameOfFireFromView:(Landroid/view/View;)Ljava/lang/String; │ │ -4310d4: 5440 385f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -4310d8: 1a01 0000 |0002: const-string v1, "" // string@0000 │ │ -4310dc: 3800 3600 |0004: if-eqz v0, 003a // +0036 │ │ -4310e0: 3905 0300 |0006: if-nez v5, 0009 // +0003 │ │ -4310e4: 2832 |0008: goto 003a // +0032 │ │ -4310e6: 7210 5760 0000 |0009: invoke-interface {v0}, Ljava/util/Map;.entrySet:()Ljava/util/Set; // method@6057 │ │ -4310ec: 0c00 |000c: move-result-object v0 │ │ -4310ee: 7210 7360 0000 |000d: invoke-interface {v0}, Ljava/util/Set;.iterator:()Ljava/util/Iterator; // method@6073 │ │ -4310f4: 0c00 |0010: move-result-object v0 │ │ -4310f6: 7210 1b60 0000 |0011: invoke-interface {v0}, Ljava/util/Iterator;.hasNext:()Z // method@601b │ │ -4310fc: 0a02 |0014: move-result v2 │ │ -4310fe: 3802 2500 |0015: if-eqz v2, 003a // +0025 │ │ -431102: 7210 1c60 0000 |0017: invoke-interface {v0}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601c │ │ -431108: 0c02 |001a: move-result-object v2 │ │ -43110a: 1f02 be0b |001b: check-cast v2, Ljava/util/Map$Entry; // type@0bbe │ │ -43110e: 7210 5460 0200 |001d: invoke-interface {v2}, Ljava/util/Map$Entry;.getValue:()Ljava/lang/Object; // method@6054 │ │ -431114: 0c03 |0020: move-result-object v3 │ │ -431116: 3803 f0ff |0021: if-eqz v3, 0011 // -0010 │ │ -43111a: 7210 5460 0200 |0023: invoke-interface {v2}, Ljava/util/Map$Entry;.getValue:()Ljava/lang/Object; // method@6054 │ │ -431120: 0c03 |0026: move-result-object v3 │ │ -431122: 1f03 801a |0027: check-cast v3, Lorg/purple/smoke/FireChannel; // type@1a80 │ │ -431126: 6e10 b2ba 0300 |0029: invoke-virtual {v3}, Lorg/purple/smoke/FireChannel;.view:()Landroid/view/View; // method@bab2 │ │ -43112c: 0c03 |002c: move-result-object v3 │ │ -43112e: 3353 e4ff |002d: if-ne v3, v5, 0011 // -001c │ │ -431132: 7210 5460 0200 |002f: invoke-interface {v2}, Ljava/util/Map$Entry;.getValue:()Ljava/lang/Object; // method@6054 │ │ -431138: 0c05 |0032: move-result-object v5 │ │ -43113a: 1f05 801a |0033: check-cast v5, Lorg/purple/smoke/FireChannel; // type@1a80 │ │ -43113e: 6e10 abba 0500 |0035: invoke-virtual {v5}, Lorg/purple/smoke/FireChannel;.name:()Ljava/lang/String; // method@baab │ │ -431144: 0c05 |0038: move-result-object v5 │ │ -431146: 1105 |0039: return-object v5 │ │ -431148: 1101 |003a: return-object v1 │ │ +4310c0: |[4310c0] org.purple.smoke.State.nameOfFireFromView:(Landroid/view/View;)Ljava/lang/String; │ │ +4310d0: 5440 385f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +4310d4: 1a01 0000 |0002: const-string v1, "" // string@0000 │ │ +4310d8: 3800 3600 |0004: if-eqz v0, 003a // +0036 │ │ +4310dc: 3905 0300 |0006: if-nez v5, 0009 // +0003 │ │ +4310e0: 2832 |0008: goto 003a // +0032 │ │ +4310e2: 7210 5760 0000 |0009: invoke-interface {v0}, Ljava/util/Map;.entrySet:()Ljava/util/Set; // method@6057 │ │ +4310e8: 0c00 |000c: move-result-object v0 │ │ +4310ea: 7210 7360 0000 |000d: invoke-interface {v0}, Ljava/util/Set;.iterator:()Ljava/util/Iterator; // method@6073 │ │ +4310f0: 0c00 |0010: move-result-object v0 │ │ +4310f2: 7210 1b60 0000 |0011: invoke-interface {v0}, Ljava/util/Iterator;.hasNext:()Z // method@601b │ │ +4310f8: 0a02 |0014: move-result v2 │ │ +4310fa: 3802 2500 |0015: if-eqz v2, 003a // +0025 │ │ +4310fe: 7210 1c60 0000 |0017: invoke-interface {v0}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601c │ │ +431104: 0c02 |001a: move-result-object v2 │ │ +431106: 1f02 be0b |001b: check-cast v2, Ljava/util/Map$Entry; // type@0bbe │ │ +43110a: 7210 5460 0200 |001d: invoke-interface {v2}, Ljava/util/Map$Entry;.getValue:()Ljava/lang/Object; // method@6054 │ │ +431110: 0c03 |0020: move-result-object v3 │ │ +431112: 3803 f0ff |0021: if-eqz v3, 0011 // -0010 │ │ +431116: 7210 5460 0200 |0023: invoke-interface {v2}, Ljava/util/Map$Entry;.getValue:()Ljava/lang/Object; // method@6054 │ │ +43111c: 0c03 |0026: move-result-object v3 │ │ +43111e: 1f03 801a |0027: check-cast v3, Lorg/purple/smoke/FireChannel; // type@1a80 │ │ +431122: 6e10 b2ba 0300 |0029: invoke-virtual {v3}, Lorg/purple/smoke/FireChannel;.view:()Landroid/view/View; // method@bab2 │ │ +431128: 0c03 |002c: move-result-object v3 │ │ +43112a: 3353 e4ff |002d: if-ne v3, v5, 0011 // -001c │ │ +43112e: 7210 5460 0200 |002f: invoke-interface {v2}, Ljava/util/Map$Entry;.getValue:()Ljava/lang/Object; // method@6054 │ │ +431134: 0c05 |0032: move-result-object v5 │ │ +431136: 1f05 801a |0033: check-cast v5, Lorg/purple/smoke/FireChannel; // type@1a80 │ │ +43113a: 6e10 abba 0500 |0035: invoke-virtual {v5}, Lorg/purple/smoke/FireChannel;.name:()Ljava/lang/String; // method@baab │ │ +431140: 0c05 |0038: move-result-object v5 │ │ +431142: 1105 |0039: return-object v5 │ │ +431144: 1101 |003a: return-object v1 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=235 │ │ 0x0009 line=238 │ │ 0x001d line=239 │ │ 0x0023 line=240 │ │ 0x002f line=241 │ │ @@ -743838,44 +743837,44 @@ │ │ type : '()Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 56 16-bit code units │ │ -430d44: |[430d44] org.purple.smoke.State.neighborsEcho:()Z │ │ -430d54: 5440 355f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430d58: 6e10 ec60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430d5e: 0c00 |0005: move-result-object v0 │ │ -430d60: 6e10 e760 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ -430d66: 1200 |0009: const/4 v0, #int 0 // #0 │ │ -430d68: 5441 345f |000a: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -430d6c: 1a02 f48b |000c: const-string v2, "neighbors_echo" // string@8bf4 │ │ -430d70: 1303 3000 |000e: const/16 v3, #int 48 // #30 │ │ -430d74: 6e30 c604 2103 |0010: invoke-virtual {v1, v2, v3}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ -430d7a: 0a01 |0013: move-result v1 │ │ -430d7c: 1302 3100 |0014: const/16 v2, #int 49 // #31 │ │ -430d80: 3321 0300 |0016: if-ne v1, v2, 0019 // +0003 │ │ -430d84: 1210 |0018: const/4 v0, #int 1 // #1 │ │ -430d86: 5441 355f |0019: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430d8a: 6e10 ec60 0100 |001b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430d90: 0c01 |001e: move-result-object v1 │ │ -430d92: 6e10 e860 0100 |001f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -430d98: 0f00 |0022: return v0 │ │ -430d9a: 0d00 |0023: move-exception v0 │ │ -430d9c: 5441 355f |0024: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430da0: 6e10 ec60 0100 |0026: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430da6: 0c01 |0029: move-result-object v1 │ │ -430da8: 6e10 e860 0100 |002a: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -430dae: 2700 |002d: throw v0 │ │ -430db0: 5441 355f |002e: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430db4: 6e10 ec60 0100 |0030: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -430dba: 0c01 |0033: move-result-object v1 │ │ -430dbc: 6e10 e860 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -430dc2: 0f00 |0037: return v0 │ │ +430d40: |[430d40] org.purple.smoke.State.neighborsEcho:()Z │ │ +430d50: 5440 355f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430d54: 6e10 ec60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430d5a: 0c00 |0005: move-result-object v0 │ │ +430d5c: 6e10 e760 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ +430d62: 1200 |0009: const/4 v0, #int 0 // #0 │ │ +430d64: 5441 345f |000a: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +430d68: 1a02 f48b |000c: const-string v2, "neighbors_echo" // string@8bf4 │ │ +430d6c: 1303 3000 |000e: const/16 v3, #int 48 // #30 │ │ +430d70: 6e30 c604 2103 |0010: invoke-virtual {v1, v2, v3}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ +430d76: 0a01 |0013: move-result v1 │ │ +430d78: 1302 3100 |0014: const/16 v2, #int 49 // #31 │ │ +430d7c: 3321 0300 |0016: if-ne v1, v2, 0019 // +0003 │ │ +430d80: 1210 |0018: const/4 v0, #int 1 // #1 │ │ +430d82: 5441 355f |0019: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430d86: 6e10 ec60 0100 |001b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430d8c: 0c01 |001e: move-result-object v1 │ │ +430d8e: 6e10 e860 0100 |001f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +430d94: 0f00 |0022: return v0 │ │ +430d96: 0d00 |0023: move-exception v0 │ │ +430d98: 5441 355f |0024: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430d9c: 6e10 ec60 0100 |0026: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430da2: 0c01 |0029: move-result-object v1 │ │ +430da4: 6e10 e860 0100 |002a: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +430daa: 2700 |002d: throw v0 │ │ +430dac: 5441 355f |002e: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430db0: 6e10 ec60 0100 |0030: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +430db6: 0c01 |0033: move-result-object v1 │ │ +430db8: 6e10 e860 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +430dbe: 0f00 |0037: return v0 │ │ catches : 1 │ │ 0x000a - 0x0014 │ │ Ljava/lang/Exception; -> 0x002e │ │ -> 0x0023 │ │ positions : │ │ 0x0000 line=315 │ │ 0x000a line=319 │ │ @@ -743890,31 +743889,31 @@ │ │ type : '()Ljava/util/ArrayList;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 32 16-bit code units │ │ -4311a8: |[4311a8] org.purple.smoke.State.participants:()Ljava/util/ArrayList; │ │ -4311b8: 5420 3a5f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -4311bc: 6e10 ec60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -4311c2: 0c00 |0005: move-result-object v0 │ │ -4311c4: 6e10 e760 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ -4311ca: 5420 395f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ -4311ce: 5421 3a5f |000b: iget-object v1, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -4311d2: 6e10 ec60 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -4311d8: 0c01 |0010: move-result-object v1 │ │ -4311da: 6e10 e860 0100 |0011: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -4311e0: 1100 |0014: return-object v0 │ │ -4311e2: 0d00 |0015: move-exception v0 │ │ -4311e4: 5421 3a5f |0016: iget-object v1, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -4311e8: 6e10 ec60 0100 |0018: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -4311ee: 0c01 |001b: move-result-object v1 │ │ -4311f0: 6e10 e860 0100 |001c: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -4311f6: 2700 |001f: throw v0 │ │ +4311a4: |[4311a4] org.purple.smoke.State.participants:()Ljava/util/ArrayList; │ │ +4311b4: 5420 3a5f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +4311b8: 6e10 ec60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +4311be: 0c00 |0005: move-result-object v0 │ │ +4311c0: 6e10 e760 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ +4311c6: 5420 395f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ +4311ca: 5421 3a5f |000b: iget-object v1, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +4311ce: 6e10 ec60 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +4311d4: 0c01 |0010: move-result-object v1 │ │ +4311d6: 6e10 e860 0100 |0011: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +4311dc: 1100 |0014: return-object v0 │ │ +4311de: 0d00 |0015: move-exception v0 │ │ +4311e0: 5421 3a5f |0016: iget-object v1, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +4311e4: 6e10 ec60 0100 |0018: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +4311ea: 0c01 |001b: move-result-object v1 │ │ +4311ec: 6e10 e860 0100 |001c: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +4311f2: 2700 |001f: throw v0 │ │ catches : 1 │ │ 0x0009 - 0x000b │ │ -> 0x0015 │ │ positions : │ │ 0x0000 line=137 │ │ 0x0009 line=141 │ │ 0x000b line=145 │ │ @@ -743927,62 +743926,62 @@ │ │ type : '(Ljava/lang/String;)Ljava/util/ArrayList;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 98 16-bit code units │ │ -431204: |[431204] org.purple.smoke.State.participantsNames:(Ljava/lang/String;)Ljava/util/ArrayList; │ │ -431214: 2200 ab0b |0000: new-instance v0, Ljava/util/ArrayList; // type@0bab │ │ -431218: 7010 995f 0000 |0002: invoke-direct {v0}, Ljava/util/ArrayList;.:()V // method@5f99 │ │ -43121e: 5451 3a5f |0005: iget-object v1, v5, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -431222: 6e10 ec60 0100 |0007: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -431228: 0c01 |000a: move-result-object v1 │ │ -43122a: 6e10 e760 0100 |000b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ -431230: 5451 395f |000e: iget-object v1, v5, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ -431234: 6e10 a75f 0100 |0010: invoke-virtual {v1}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa7 │ │ -43123a: 0c01 |0013: move-result-object v1 │ │ -43123c: 7210 1b60 0100 |0014: invoke-interface {v1}, Ljava/util/Iterator;.hasNext:()Z // method@601b │ │ -431242: 0a02 |0017: move-result v2 │ │ -431244: 3802 3300 |0018: if-eqz v2, 004b // +0033 │ │ -431248: 7210 1c60 0100 |001a: invoke-interface {v1}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601c │ │ -43124e: 0c02 |001d: move-result-object v2 │ │ -431250: 1f02 c01a |001e: check-cast v2, Lorg/purple/smoke/ParticipantElement; // type@1ac0 │ │ -431254: 3802 f4ff |0020: if-eqz v2, 0014 // -000c │ │ -431258: 5423 8255 |0022: iget-object v3, v2, Lorg/purple/smoke/ParticipantElement;.m_sipHashId:Ljava/lang/String; // field@5582 │ │ -43125c: 6e20 b85c 6300 |0024: invoke-virtual {v3, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -431262: 0a03 |0027: move-result v3 │ │ -431264: 3903 ecff |0028: if-nez v3, 0014 // -0014 │ │ -431268: 2203 f10a |002a: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ -43126c: 7010 ee5c 0300 |002c: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -431272: 5424 8055 |002f: iget-object v4, v2, Lorg/purple/smoke/ParticipantElement;.m_name:Ljava/lang/String; // field@5580 │ │ -431276: 6e20 f95c 4300 |0031: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43127c: 1a04 9800 |0034: const-string v4, " (" // string@0098 │ │ -431280: 6e20 f95c 4300 |0036: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -431286: 5422 8255 |0039: iget-object v2, v2, Lorg/purple/smoke/ParticipantElement;.m_sipHashId:Ljava/lang/String; // field@5582 │ │ -43128a: 6e20 f95c 2300 |003b: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -431290: 1a02 ec03 |003e: const-string v2, ")" // string@03ec │ │ -431294: 6e20 f95c 2300 |0040: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43129a: 6e10 035d 0300 |0043: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4312a0: 0c02 |0046: move-result-object v2 │ │ -4312a2: 6e20 9d5f 2000 |0047: invoke-virtual {v0, v2}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9d │ │ -4312a8: 28ca |004a: goto 0014 // -0036 │ │ -4312aa: 5456 3a5f |004b: iget-object v6, v5, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -4312ae: 6e10 ec60 0600 |004d: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -4312b4: 0c06 |0050: move-result-object v6 │ │ -4312b6: 6e10 e860 0600 |0051: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -4312bc: 1100 |0054: return-object v0 │ │ -4312be: 0d06 |0055: move-exception v6 │ │ -4312c0: 5450 3a5f |0056: iget-object v0, v5, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -4312c4: 6e10 ec60 0000 |0058: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -4312ca: 0c00 |005b: move-result-object v0 │ │ -4312cc: 6e10 e860 0000 |005c: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -4312d2: 2802 |005f: goto 0061 // +0002 │ │ -4312d4: 2706 |0060: throw v6 │ │ -4312d6: 28ff |0061: goto 0060 // -0001 │ │ +431200: |[431200] org.purple.smoke.State.participantsNames:(Ljava/lang/String;)Ljava/util/ArrayList; │ │ +431210: 2200 ab0b |0000: new-instance v0, Ljava/util/ArrayList; // type@0bab │ │ +431214: 7010 995f 0000 |0002: invoke-direct {v0}, Ljava/util/ArrayList;.:()V // method@5f99 │ │ +43121a: 5451 3a5f |0005: iget-object v1, v5, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +43121e: 6e10 ec60 0100 |0007: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +431224: 0c01 |000a: move-result-object v1 │ │ +431226: 6e10 e760 0100 |000b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ +43122c: 5451 395f |000e: iget-object v1, v5, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ +431230: 6e10 a75f 0100 |0010: invoke-virtual {v1}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa7 │ │ +431236: 0c01 |0013: move-result-object v1 │ │ +431238: 7210 1b60 0100 |0014: invoke-interface {v1}, Ljava/util/Iterator;.hasNext:()Z // method@601b │ │ +43123e: 0a02 |0017: move-result v2 │ │ +431240: 3802 3300 |0018: if-eqz v2, 004b // +0033 │ │ +431244: 7210 1c60 0100 |001a: invoke-interface {v1}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601c │ │ +43124a: 0c02 |001d: move-result-object v2 │ │ +43124c: 1f02 c01a |001e: check-cast v2, Lorg/purple/smoke/ParticipantElement; // type@1ac0 │ │ +431250: 3802 f4ff |0020: if-eqz v2, 0014 // -000c │ │ +431254: 5423 8255 |0022: iget-object v3, v2, Lorg/purple/smoke/ParticipantElement;.m_sipHashId:Ljava/lang/String; // field@5582 │ │ +431258: 6e20 b85c 6300 |0024: invoke-virtual {v3, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +43125e: 0a03 |0027: move-result v3 │ │ +431260: 3903 ecff |0028: if-nez v3, 0014 // -0014 │ │ +431264: 2203 f10a |002a: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ +431268: 7010 ee5c 0300 |002c: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +43126e: 5424 8055 |002f: iget-object v4, v2, Lorg/purple/smoke/ParticipantElement;.m_name:Ljava/lang/String; // field@5580 │ │ +431272: 6e20 f95c 4300 |0031: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +431278: 1a04 9800 |0034: const-string v4, " (" // string@0098 │ │ +43127c: 6e20 f95c 4300 |0036: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +431282: 5422 8255 |0039: iget-object v2, v2, Lorg/purple/smoke/ParticipantElement;.m_sipHashId:Ljava/lang/String; // field@5582 │ │ +431286: 6e20 f95c 2300 |003b: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43128c: 1a02 ec03 |003e: const-string v2, ")" // string@03ec │ │ +431290: 6e20 f95c 2300 |0040: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +431296: 6e10 035d 0300 |0043: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +43129c: 0c02 |0046: move-result-object v2 │ │ +43129e: 6e20 9d5f 2000 |0047: invoke-virtual {v0, v2}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9d │ │ +4312a4: 28ca |004a: goto 0014 // -0036 │ │ +4312a6: 5456 3a5f |004b: iget-object v6, v5, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +4312aa: 6e10 ec60 0600 |004d: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +4312b0: 0c06 |0050: move-result-object v6 │ │ +4312b2: 6e10 e860 0600 |0051: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +4312b8: 1100 |0054: return-object v0 │ │ +4312ba: 0d06 |0055: move-exception v6 │ │ +4312bc: 5450 3a5f |0056: iget-object v0, v5, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +4312c0: 6e10 ec60 0000 |0058: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +4312c6: 0c00 |005b: move-result-object v0 │ │ +4312c8: 6e10 e860 0000 |005c: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +4312ce: 2802 |005f: goto 0061 // +0002 │ │ +4312d0: 2706 |0060: throw v6 │ │ +4312d2: 28ff |0061: goto 0060 // -0001 │ │ catches : 1 │ │ 0x000e - 0x004a │ │ -> 0x0055 │ │ positions : │ │ 0x0000 line=151 │ │ 0x0005 line=153 │ │ 0x000e line=157 │ │ @@ -744001,19 +744000,19 @@ │ │ type : '()Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -430dd4: |[430dd4] org.purple.smoke.State.queryTimerServer:()Z │ │ -430de4: 5410 3c5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_queryTimerServer:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3c │ │ -430de8: 6e10 d860 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -430dee: 0a00 |0005: move-result v0 │ │ -430df0: 0f00 |0006: return v0 │ │ +430dd0: |[430dd0] org.purple.smoke.State.queryTimerServer:()Z │ │ +430de0: 5410 3c5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_queryTimerServer:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3c │ │ +430de4: 6e10 d860 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +430dea: 0a00 |0005: move-result v0 │ │ +430dec: 0f00 |0006: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=334 │ │ locals : │ │ 0x0000 - 0x0007 reg=1 this Lorg/purple/smoke/State; │ │ │ │ #25 : (in Lorg/purple/smoke/State;) │ │ @@ -744021,40 +744020,40 @@ │ │ type : '(I)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 53 16-bit code units │ │ -4317f4: |[4317f4] org.purple.smoke.State.removeChatCheckBoxOid:(I)V │ │ -431804: 5430 355f |0000: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431808: 6e10 ed60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -43180e: 0c00 |0005: move-result-object v0 │ │ -431810: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ -431816: 5430 345f |0009: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -43181a: 2201 f10a |000b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -43181e: 7010 ee5c 0100 |000d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -431824: 1a02 865e |0010: const-string v2, "chat_checkbox_" // string@5e86 │ │ -431828: 6e20 f95c 2100 |0012: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43182e: 6e20 f45c 4100 |0015: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ -431834: 6e10 035d 0100 |0018: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -43183a: 0c04 |001b: move-result-object v4 │ │ -43183c: 6e20 ea04 4000 |001c: invoke-virtual {v0, v4}, Landroid/os/Bundle;.remove:(Ljava/lang/String;)V // method@04ea │ │ -431842: 280c |001f: goto 002b // +000c │ │ -431844: 0d04 |0020: move-exception v4 │ │ -431846: 5430 355f |0021: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -43184a: 6e10 ed60 0000 |0023: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431850: 0c00 |0026: move-result-object v0 │ │ -431852: 6e10 ea60 0000 |0027: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431858: 2704 |002a: throw v4 │ │ -43185a: 5434 355f |002b: iget-object v4, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -43185e: 6e10 ed60 0400 |002d: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431864: 0c04 |0030: move-result-object v4 │ │ -431866: 6e10 ea60 0400 |0031: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -43186c: 0e00 |0034: return-void │ │ +4317f0: |[4317f0] org.purple.smoke.State.removeChatCheckBoxOid:(I)V │ │ +431800: 5430 355f |0000: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431804: 6e10 ed60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +43180a: 0c00 |0005: move-result-object v0 │ │ +43180c: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ +431812: 5430 345f |0009: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431816: 2201 f10a |000b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +43181a: 7010 ee5c 0100 |000d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +431820: 1a02 865e |0010: const-string v2, "chat_checkbox_" // string@5e86 │ │ +431824: 6e20 f95c 2100 |0012: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43182a: 6e20 f45c 4100 |0015: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ +431830: 6e10 035d 0100 |0018: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +431836: 0c04 |001b: move-result-object v4 │ │ +431838: 6e20 ea04 4000 |001c: invoke-virtual {v0, v4}, Landroid/os/Bundle;.remove:(Ljava/lang/String;)V // method@04ea │ │ +43183e: 280c |001f: goto 002b // +000c │ │ +431840: 0d04 |0020: move-exception v4 │ │ +431842: 5430 355f |0021: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431846: 6e10 ed60 0000 |0023: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +43184c: 0c00 |0026: move-result-object v0 │ │ +43184e: 6e10 ea60 0000 |0027: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431854: 2704 |002a: throw v4 │ │ +431856: 5434 355f |002b: iget-object v4, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +43185a: 6e10 ed60 0400 |002d: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431860: 0c04 |0030: move-result-object v4 │ │ +431862: 6e10 ea60 0400 |0031: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431868: 0e00 |0034: return-void │ │ catches : 1 │ │ 0x0009 - 0x001f │ │ Ljava/lang/Exception; -> 0x002b │ │ -> 0x0020 │ │ positions : │ │ 0x0000 line=532 │ │ 0x0009 line=536 │ │ @@ -744070,20 +744069,20 @@ │ │ type : '(Ljava/lang/String;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 9 16-bit code units │ │ -431880: |[431880] org.purple.smoke.State.removeFireChannel:(Ljava/lang/String;)V │ │ -431890: 5410 385f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -431894: 3900 0300 |0002: if-nez v0, 0005 // +0003 │ │ -431898: 0e00 |0004: return-void │ │ -43189a: 7220 5f60 2000 |0005: invoke-interface {v0, v2}, Ljava/util/Map;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@605f │ │ -4318a0: 0e00 |0008: return-void │ │ +43187c: |[43187c] org.purple.smoke.State.removeFireChannel:(Ljava/lang/String;)V │ │ +43188c: 5410 385f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +431890: 3900 0300 |0002: if-nez v0, 0005 // +0003 │ │ +431894: 0e00 |0004: return-void │ │ +431896: 7220 5f60 2000 |0005: invoke-interface {v0, v2}, Ljava/util/Map;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@605f │ │ +43189c: 0e00 |0008: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=549 │ │ 0x0005 line=552 │ │ locals : │ │ 0x0000 - 0x0009 reg=1 this Lorg/purple/smoke/State; │ │ 0x0000 - 0x0009 reg=2 (null) Ljava/lang/String; │ │ @@ -744093,33 +744092,33 @@ │ │ type : '(Ljava/lang/String;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 36 16-bit code units │ │ -4318a4: |[4318a4] org.purple.smoke.State.removeKey:(Ljava/lang/String;)V │ │ -4318b4: 5410 355f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4318b8: 6e10 ed60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -4318be: 0c00 |0005: move-result-object v0 │ │ -4318c0: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ -4318c6: 5410 345f |0009: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -4318ca: 6e20 ea04 2000 |000b: invoke-virtual {v0, v2}, Landroid/os/Bundle;.remove:(Ljava/lang/String;)V // method@04ea │ │ -4318d0: 280c |000e: goto 001a // +000c │ │ -4318d2: 0d02 |000f: move-exception v2 │ │ -4318d4: 5410 355f |0010: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4318d8: 6e10 ed60 0000 |0012: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -4318de: 0c00 |0015: move-result-object v0 │ │ -4318e0: 6e10 ea60 0000 |0016: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -4318e6: 2702 |0019: throw v2 │ │ -4318e8: 5412 355f |001a: iget-object v2, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4318ec: 6e10 ed60 0200 |001c: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -4318f2: 0c02 |001f: move-result-object v2 │ │ -4318f4: 6e10 ea60 0200 |0020: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -4318fa: 0e00 |0023: return-void │ │ +4318a0: |[4318a0] org.purple.smoke.State.removeKey:(Ljava/lang/String;)V │ │ +4318b0: 5410 355f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4318b4: 6e10 ed60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +4318ba: 0c00 |0005: move-result-object v0 │ │ +4318bc: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ +4318c2: 5410 345f |0009: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +4318c6: 6e20 ea04 2000 |000b: invoke-virtual {v0, v2}, Landroid/os/Bundle;.remove:(Ljava/lang/String;)V // method@04ea │ │ +4318cc: 280c |000e: goto 001a // +000c │ │ +4318ce: 0d02 |000f: move-exception v2 │ │ +4318d0: 5410 355f |0010: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4318d4: 6e10 ed60 0000 |0012: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +4318da: 0c00 |0015: move-result-object v0 │ │ +4318dc: 6e10 ea60 0000 |0016: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +4318e2: 2702 |0019: throw v2 │ │ +4318e4: 5412 355f |001a: iget-object v2, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4318e8: 6e10 ed60 0200 |001c: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +4318ee: 0c02 |001f: move-result-object v2 │ │ +4318f0: 6e10 ea60 0200 |0020: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +4318f6: 0e00 |0023: return-void │ │ catches : 1 │ │ 0x0009 - 0x000e │ │ Ljava/lang/Exception; -> 0x001a │ │ -> 0x000f │ │ positions : │ │ 0x0000 line=557 │ │ 0x0009 line=561 │ │ @@ -744135,25 +744134,25 @@ │ │ type : '(I)V' │ │ access : 0x20001 (PUBLIC DECLARED_SYNCHRONIZED) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 15 16-bit code units │ │ -43190c: |[43190c] org.purple.smoke.State.removeSteamDetailsState:(I)V │ │ -43191c: 1d01 |0000: monitor-enter v1 │ │ -43191e: 5410 3f5f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ -431922: 7110 605c 0200 |0003: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ -431928: 0c02 |0006: move-result-object v2 │ │ -43192a: 7220 5f60 2000 |0007: invoke-interface {v0, v2}, Ljava/util/Map;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@605f │ │ -431930: 1e01 |000a: monitor-exit v1 │ │ -431932: 0e00 |000b: return-void │ │ -431934: 0d02 |000c: move-exception v2 │ │ -431936: 1e01 |000d: monitor-exit v1 │ │ -431938: 2702 |000e: throw v2 │ │ +431908: |[431908] org.purple.smoke.State.removeSteamDetailsState:(I)V │ │ +431918: 1d01 |0000: monitor-enter v1 │ │ +43191a: 5410 3f5f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ +43191e: 7110 605c 0200 |0003: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ +431924: 0c02 |0006: move-result-object v2 │ │ +431926: 7220 5f60 2000 |0007: invoke-interface {v0, v2}, Ljava/util/Map;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@605f │ │ +43192c: 1e01 |000a: monitor-exit v1 │ │ +43192e: 0e00 |000b: return-void │ │ +431930: 0d02 |000c: move-exception v2 │ │ +431932: 1e01 |000d: monitor-exit v1 │ │ +431934: 2702 |000e: throw v2 │ │ catches : 1 │ │ 0x0001 - 0x000a │ │ -> 0x000c │ │ positions : │ │ 0x0001 line=467 │ │ 0x000a line=468 │ │ locals : │ │ @@ -744165,55 +744164,55 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 87 16-bit code units │ │ -431948: |[431948] org.purple.smoke.State.reset:()V │ │ -431958: 6e10 65bd 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/State;.clearChatLog:()V // method@bd65 │ │ -43195e: 6e10 67bd 0200 |0003: invoke-virtual {v2}, Lorg/purple/smoke/State;.clearSelectedSwitches:()V // method@bd67 │ │ -431964: 6e10 68bd 0200 |0006: invoke-virtual {v2}, Lorg/purple/smoke/State;.clearSteamDetailsStates:()V // method@bd68 │ │ -43196a: 5420 355f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -43196e: 6e10 ed60 0000 |000b: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431974: 0c00 |000e: move-result-object v0 │ │ -431976: 6e10 e960 0000 |000f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ -43197c: 5420 345f |0012: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431980: 6e10 bf04 0000 |0014: invoke-virtual {v0}, Landroid/os/Bundle;.clear:()V // method@04bf │ │ -431986: 5420 355f |0017: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -43198a: 6e10 ed60 0000 |0019: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431990: 0c00 |001c: move-result-object v0 │ │ -431992: 6e10 ea60 0000 |001d: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431998: 5420 385f |0020: iget-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -43199c: 3800 0500 |0022: if-eqz v0, 0027 // +0005 │ │ -4319a0: 7210 5560 0000 |0024: invoke-interface {v0}, Ljava/util/Map;.clear:()V // method@6055 │ │ -4319a6: 5420 3a5f |0027: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -4319aa: 6e10 ed60 0000 |0029: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -4319b0: 0c00 |002c: move-result-object v0 │ │ -4319b2: 6e10 e960 0000 |002d: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ -4319b8: 5420 395f |0030: iget-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ -4319bc: 3800 0500 |0032: if-eqz v0, 0037 // +0005 │ │ -4319c0: 6e10 9f5f 0000 |0034: invoke-virtual {v0}, Ljava/util/ArrayList;.clear:()V // method@5f9f │ │ -4319c6: 5420 3a5f |0037: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -4319ca: 6e10 ed60 0000 |0039: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -4319d0: 0c00 |003c: move-result-object v0 │ │ -4319d2: 6e10 ea60 0000 |003d: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -4319d8: 0e00 |0040: return-void │ │ -4319da: 0d00 |0041: move-exception v0 │ │ -4319dc: 5421 3a5f |0042: iget-object v1, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -4319e0: 6e10 ed60 0100 |0044: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -4319e6: 0c01 |0047: move-result-object v1 │ │ -4319e8: 6e10 ea60 0100 |0048: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -4319ee: 2700 |004b: throw v0 │ │ -4319f0: 0d00 |004c: move-exception v0 │ │ -4319f2: 5421 355f |004d: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4319f6: 6e10 ed60 0100 |004f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -4319fc: 0c01 |0052: move-result-object v1 │ │ -4319fe: 6e10 ea60 0100 |0053: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431a04: 2700 |0056: throw v0 │ │ +431944: |[431944] org.purple.smoke.State.reset:()V │ │ +431954: 6e10 65bd 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/State;.clearChatLog:()V // method@bd65 │ │ +43195a: 6e10 67bd 0200 |0003: invoke-virtual {v2}, Lorg/purple/smoke/State;.clearSelectedSwitches:()V // method@bd67 │ │ +431960: 6e10 68bd 0200 |0006: invoke-virtual {v2}, Lorg/purple/smoke/State;.clearSteamDetailsStates:()V // method@bd68 │ │ +431966: 5420 355f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +43196a: 6e10 ed60 0000 |000b: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431970: 0c00 |000e: move-result-object v0 │ │ +431972: 6e10 e960 0000 |000f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ +431978: 5420 345f |0012: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +43197c: 6e10 bf04 0000 |0014: invoke-virtual {v0}, Landroid/os/Bundle;.clear:()V // method@04bf │ │ +431982: 5420 355f |0017: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431986: 6e10 ed60 0000 |0019: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +43198c: 0c00 |001c: move-result-object v0 │ │ +43198e: 6e10 ea60 0000 |001d: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431994: 5420 385f |0020: iget-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +431998: 3800 0500 |0022: if-eqz v0, 0027 // +0005 │ │ +43199c: 7210 5560 0000 |0024: invoke-interface {v0}, Ljava/util/Map;.clear:()V // method@6055 │ │ +4319a2: 5420 3a5f |0027: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +4319a6: 6e10 ed60 0000 |0029: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +4319ac: 0c00 |002c: move-result-object v0 │ │ +4319ae: 6e10 e960 0000 |002d: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ +4319b4: 5420 395f |0030: iget-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ +4319b8: 3800 0500 |0032: if-eqz v0, 0037 // +0005 │ │ +4319bc: 6e10 9f5f 0000 |0034: invoke-virtual {v0}, Ljava/util/ArrayList;.clear:()V // method@5f9f │ │ +4319c2: 5420 3a5f |0037: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +4319c6: 6e10 ed60 0000 |0039: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +4319cc: 0c00 |003c: move-result-object v0 │ │ +4319ce: 6e10 ea60 0000 |003d: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +4319d4: 0e00 |0040: return-void │ │ +4319d6: 0d00 |0041: move-exception v0 │ │ +4319d8: 5421 3a5f |0042: iget-object v1, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +4319dc: 6e10 ed60 0100 |0044: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +4319e2: 0c01 |0047: move-result-object v1 │ │ +4319e4: 6e10 ea60 0100 |0048: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +4319ea: 2700 |004b: throw v0 │ │ +4319ec: 0d00 |004c: move-exception v0 │ │ +4319ee: 5421 355f |004d: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4319f2: 6e10 ed60 0100 |004f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +4319f8: 0c01 |0052: move-result-object v1 │ │ +4319fa: 6e10 ea60 0100 |0053: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431a00: 2700 |0056: throw v0 │ │ catches : 2 │ │ 0x0012 - 0x0017 │ │ -> 0x004c │ │ 0x0030 - 0x0037 │ │ -> 0x0041 │ │ positions : │ │ 0x0000 line=574 │ │ @@ -744239,26 +744238,26 @@ │ │ type : '(Ljava/lang/String;Z)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 23 16-bit code units │ │ -431a20: |[431a20] org.purple.smoke.State.selectSwitch:(Ljava/lang/String;Z)V │ │ -431a30: 3903 0700 |0000: if-nez v3, 0007 // +0007 │ │ -431a34: 5410 3d5f |0002: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ -431a38: 7220 5f60 2000 |0004: invoke-interface {v0, v2}, Ljava/util/Map;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@605f │ │ -431a3e: 6e10 c35c 0200 |0007: invoke-virtual {v2}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -431a44: 0a00 |000a: move-result v0 │ │ -431a46: 3900 0b00 |000b: if-nez v0, 0016 // +000b │ │ -431a4a: 5410 3d5f |000d: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ -431a4e: 7110 ff5b 0300 |000f: invoke-static {v3}, Ljava/lang/Boolean;.valueOf:(Z)Ljava/lang/Boolean; // method@5bff │ │ -431a54: 0c03 |0012: move-result-object v3 │ │ -431a56: 7230 5d60 2003 |0013: invoke-interface {v0, v2, v3}, Ljava/util/Map;.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; // method@605d │ │ -431a5c: 0e00 |0016: return-void │ │ +431a1c: |[431a1c] org.purple.smoke.State.selectSwitch:(Ljava/lang/String;Z)V │ │ +431a2c: 3903 0700 |0000: if-nez v3, 0007 // +0007 │ │ +431a30: 5410 3d5f |0002: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ +431a34: 7220 5f60 2000 |0004: invoke-interface {v0, v2}, Ljava/util/Map;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@605f │ │ +431a3a: 6e10 c35c 0200 |0007: invoke-virtual {v2}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +431a40: 0a00 |000a: move-result v0 │ │ +431a42: 3900 0b00 |000b: if-nez v0, 0016 // +000b │ │ +431a46: 5410 3d5f |000d: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ +431a4a: 7110 ff5b 0300 |000f: invoke-static {v3}, Ljava/lang/Boolean;.valueOf:(Z)Ljava/lang/Boolean; // method@5bff │ │ +431a50: 0c03 |0012: move-result-object v3 │ │ +431a52: 7230 5d60 2003 |0013: invoke-interface {v0, v2, v3}, Ljava/util/Map;.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; // method@605d │ │ +431a58: 0e00 |0016: return-void │ │ catches : (none) │ │ positions : │ │ 0x0002 line=607 │ │ 0x0007 line=609 │ │ 0x000d line=610 │ │ locals : │ │ 0x0000 - 0x0017 reg=1 this Lorg/purple/smoke/State; │ │ @@ -744270,29 +744269,29 @@ │ │ type : '(Ljava/lang/String;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 25 16-bit code units │ │ -430df4: |[430df4] org.purple.smoke.State.selectSwitch:(Ljava/lang/String;)Z │ │ -430e04: 3802 1700 |0000: if-eqz v2, 0017 // +0017 │ │ -430e08: 5410 3d5f |0002: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ -430e0c: 7220 5660 2000 |0004: invoke-interface {v0, v2}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6056 │ │ -430e12: 0a00 |0007: move-result v0 │ │ -430e14: 3800 0f00 |0008: if-eqz v0, 0017 // +000f │ │ -430e18: 5410 3d5f |000a: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ -430e1c: 7220 5960 2000 |000c: invoke-interface {v0, v2}, Ljava/util/Map;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@6059 │ │ -430e22: 0c02 |000f: move-result-object v2 │ │ -430e24: 1f02 c60a |0010: check-cast v2, Ljava/lang/Boolean; // type@0ac6 │ │ -430e28: 6e10 fe5b 0200 |0012: invoke-virtual {v2}, Ljava/lang/Boolean;.booleanValue:()Z // method@5bfe │ │ -430e2e: 0a02 |0015: move-result v2 │ │ -430e30: 0f02 |0016: return v2 │ │ -430e32: 1202 |0017: const/4 v2, #int 0 // #0 │ │ -430e34: 0f02 |0018: return v2 │ │ +430df0: |[430df0] org.purple.smoke.State.selectSwitch:(Ljava/lang/String;)Z │ │ +430e00: 3802 1700 |0000: if-eqz v2, 0017 // +0017 │ │ +430e04: 5410 3d5f |0002: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ +430e08: 7220 5660 2000 |0004: invoke-interface {v0, v2}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6056 │ │ +430e0e: 0a00 |0007: move-result v0 │ │ +430e10: 3800 0f00 |0008: if-eqz v0, 0017 // +000f │ │ +430e14: 5410 3d5f |000a: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ +430e18: 7220 5960 2000 |000c: invoke-interface {v0, v2}, Ljava/util/Map;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@6059 │ │ +430e1e: 0c02 |000f: move-result-object v2 │ │ +430e20: 1f02 c60a |0010: check-cast v2, Ljava/lang/Boolean; // type@0ac6 │ │ +430e24: 6e10 fe5b 0200 |0012: invoke-virtual {v2}, Ljava/lang/Boolean;.booleanValue:()Z // method@5bfe │ │ +430e2a: 0a02 |0015: move-result v2 │ │ +430e2c: 0f02 |0016: return v2 │ │ +430e2e: 1202 |0017: const/4 v2, #int 0 // #0 │ │ +430e30: 0f02 |0018: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0002 line=339 │ │ 0x000a line=340 │ │ locals : │ │ 0x0000 - 0x0019 reg=1 this Lorg/purple/smoke/State; │ │ 0x0000 - 0x0019 reg=2 (null) Ljava/lang/String; │ │ @@ -744302,19 +744301,19 @@ │ │ type : '()Ljava/util/Set;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -4312fc: |[4312fc] org.purple.smoke.State.selectedSwitches:()Ljava/util/Set; │ │ -43130c: 5410 3d5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ -431310: 7210 5c60 0000 |0002: invoke-interface {v0}, Ljava/util/Map;.keySet:()Ljava/util/Set; // method@605c │ │ -431316: 0c00 |0005: move-result-object v0 │ │ -431318: 1100 |0006: return-object v0 │ │ +4312f8: |[4312f8] org.purple.smoke.State.selectedSwitches:()Ljava/util/Set; │ │ +431308: 5410 3d5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ +43130c: 7210 5c60 0000 |0002: invoke-interface {v0}, Ljava/util/Map;.keySet:()Ljava/util/Set; // method@605c │ │ +431312: 0c00 |0005: move-result-object v0 │ │ +431314: 1100 |0006: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=211 │ │ locals : │ │ 0x0000 - 0x0007 reg=1 this Lorg/purple/smoke/State; │ │ │ │ #33 : (in Lorg/purple/smoke/State;) │ │ @@ -744322,38 +744321,38 @@ │ │ type : '(Z)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 45 16-bit code units │ │ -431a60: |[431a60] org.purple.smoke.State.setAuthenticated:(Z)V │ │ -431a70: 5420 355f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431a74: 6e10 ed60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431a7a: 0c00 |0005: move-result-object v0 │ │ -431a7c: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ -431a82: 5420 345f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431a86: 1a01 e37b |000b: const-string v1, "is_authenticated" // string@7be3 │ │ -431a8a: 3803 0500 |000d: if-eqz v3, 0012 // +0005 │ │ -431a8e: 1303 3100 |000f: const/16 v3, #int 49 // #31 │ │ -431a92: 2803 |0011: goto 0014 // +0003 │ │ -431a94: 1303 3000 |0012: const/16 v3, #int 48 // #30 │ │ -431a98: 6e30 dd04 1003 |0014: invoke-virtual {v0, v1, v3}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ -431a9e: 280c |0017: goto 0023 // +000c │ │ -431aa0: 0d03 |0018: move-exception v3 │ │ -431aa2: 5420 355f |0019: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431aa6: 6e10 ed60 0000 |001b: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431aac: 0c00 |001e: move-result-object v0 │ │ -431aae: 6e10 ea60 0000 |001f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431ab4: 2703 |0022: throw v3 │ │ -431ab6: 5423 355f |0023: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431aba: 6e10 ed60 0300 |0025: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431ac0: 0c03 |0028: move-result-object v3 │ │ -431ac2: 6e10 ea60 0300 |0029: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431ac8: 0e00 |002c: return-void │ │ +431a5c: |[431a5c] org.purple.smoke.State.setAuthenticated:(Z)V │ │ +431a6c: 5420 355f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431a70: 6e10 ed60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431a76: 0c00 |0005: move-result-object v0 │ │ +431a78: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ +431a7e: 5420 345f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431a82: 1a01 e37b |000b: const-string v1, "is_authenticated" // string@7be3 │ │ +431a86: 3803 0500 |000d: if-eqz v3, 0012 // +0005 │ │ +431a8a: 1303 3100 |000f: const/16 v3, #int 49 // #31 │ │ +431a8e: 2803 |0011: goto 0014 // +0003 │ │ +431a90: 1303 3000 |0012: const/16 v3, #int 48 // #30 │ │ +431a94: 6e30 dd04 1003 |0014: invoke-virtual {v0, v1, v3}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ +431a9a: 280c |0017: goto 0023 // +000c │ │ +431a9c: 0d03 |0018: move-exception v3 │ │ +431a9e: 5420 355f |0019: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431aa2: 6e10 ed60 0000 |001b: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431aa8: 0c00 |001e: move-result-object v0 │ │ +431aaa: 6e10 ea60 0000 |001f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431ab0: 2703 |0022: throw v3 │ │ +431ab2: 5423 355f |0023: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431ab6: 6e10 ed60 0300 |0025: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431abc: 0c03 |0028: move-result-object v3 │ │ +431abe: 6e10 ea60 0300 |0029: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431ac4: 0e00 |002c: return-void │ │ catches : 1 │ │ 0x0009 - 0x0017 │ │ Ljava/lang/Exception; -> 0x0023 │ │ -> 0x0018 │ │ positions : │ │ 0x0000 line=615 │ │ 0x0009 line=619 │ │ @@ -744369,124 +744368,124 @@ │ │ type : '(IZ)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 229 16-bit code units │ │ -431adc: |[431adc] org.purple.smoke.State.setChatCheckBoxSelected:(IZ)V │ │ -431aec: 1a00 865e |0000: const-string v0, "chat_checkbox_" // string@5e86 │ │ -431af0: 5441 355f |0002: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431af4: 6e10 ec60 0100 |0004: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -431afa: 0c01 |0007: move-result-object v1 │ │ -431afc: 6e10 e760 0100 |0008: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ -431b02: 5441 345f |000b: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431b06: 2202 f10a |000d: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -431b0a: 7010 ee5c 0200 |000f: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -431b10: 6e20 f95c 0200 |0012: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -431b16: 6e20 f45c 5200 |0015: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ -431b1c: 6e10 035d 0200 |0018: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -431b22: 0c02 |001b: move-result-object v2 │ │ -431b24: 6e20 c004 2100 |001c: invoke-virtual {v1, v2}, Landroid/os/Bundle;.containsKey:(Ljava/lang/String;)Z // method@04c0 │ │ -431b2a: 0a01 |001f: move-result v1 │ │ -431b2c: 5442 355f |0020: iget-object v2, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431b30: 6e10 ec60 0200 |0022: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -431b36: 0c02 |0025: move-result-object v2 │ │ -431b38: 6e10 e860 0200 |0026: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -431b3e: 2816 |0029: goto 003f // +0016 │ │ -431b40: 0d05 |002a: move-exception v5 │ │ -431b42: 5446 355f |002b: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431b46: 6e10 ec60 0600 |002d: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -431b4c: 0c06 |0030: move-result-object v6 │ │ -431b4e: 6e10 e860 0600 |0031: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -431b54: 2705 |0034: throw v5 │ │ -431b56: 5441 355f |0035: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431b5a: 6e10 ec60 0100 |0037: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ -431b60: 0c01 |003a: move-result-object v1 │ │ -431b62: 6e10 e860 0100 |003b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ -431b68: 1201 |003e: const/4 v1, #int 0 // #0 │ │ -431b6a: 1a02 875e |003f: const-string v2, "chat_checkbox_counter" // string@5e87 │ │ -431b6e: 3806 4400 |0041: if-eqz v6, 0085 // +0044 │ │ -431b72: 5446 355f |0043: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431b76: 6e10 ed60 0600 |0045: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431b7c: 0c06 |0048: move-result-object v6 │ │ -431b7e: 6e10 e960 0600 |0049: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ -431b84: 5446 345f |004c: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431b88: 2203 f10a |004e: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ -431b8c: 7010 ee5c 0300 |0050: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -431b92: 6e20 f95c 0300 |0053: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -431b98: 6e20 f45c 5300 |0056: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ -431b9e: 6e10 035d 0300 |0059: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -431ba4: 0c05 |005c: move-result-object v5 │ │ -431ba6: 1300 3100 |005d: const/16 v0, #int 49 // #31 │ │ -431baa: 6e30 dd04 5600 |005f: invoke-virtual {v6, v5, v0}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ -431bb0: 3901 1900 |0062: if-nez v1, 007b // +0019 │ │ -431bb4: 5445 345f |0064: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431bb8: 6e10 62bd 0400 |0066: invoke-virtual {v4}, Lorg/purple/smoke/State;.chatCheckedParticipants:()I // method@bd62 │ │ -431bbe: 0a06 |0069: move-result v6 │ │ -431bc0: d806 0601 |006a: add-int/lit8 v6, v6, #int 1 // #01 │ │ -431bc4: 6e30 e104 2506 |006c: invoke-virtual {v5, v2, v6}, Landroid/os/Bundle;.putInt:(Ljava/lang/String;I)V // method@04e1 │ │ -431bca: 280c |006f: goto 007b // +000c │ │ -431bcc: 0d05 |0070: move-exception v5 │ │ -431bce: 5446 355f |0071: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431bd2: 6e10 ed60 0600 |0073: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431bd8: 0c06 |0076: move-result-object v6 │ │ -431bda: 6e10 ea60 0600 |0077: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431be0: 2705 |007a: throw v5 │ │ -431be2: 5445 355f |007b: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431be6: 6e10 ed60 0500 |007d: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431bec: 0c05 |0080: move-result-object v5 │ │ -431bee: 6e10 ea60 0500 |0081: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431bf4: 2860 |0084: goto 00e4 // +0060 │ │ -431bf6: 5446 355f |0085: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431bfa: 6e10 ed60 0600 |0087: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431c00: 0c06 |008a: move-result-object v6 │ │ -431c02: 6e10 e960 0600 |008b: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ -431c08: 5446 345f |008e: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431c0c: 2203 f10a |0090: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ -431c10: 7010 ee5c 0300 |0092: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -431c16: 6e20 f95c 0300 |0095: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -431c1c: 6e20 f45c 5300 |0098: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ -431c22: 6e10 035d 0300 |009b: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -431c28: 0c05 |009e: move-result-object v5 │ │ -431c2a: 6e20 ea04 5600 |009f: invoke-virtual {v6, v5}, Landroid/os/Bundle;.remove:(Ljava/lang/String;)V // method@04ea │ │ -431c30: 280c |00a2: goto 00ae // +000c │ │ -431c32: 0d05 |00a3: move-exception v5 │ │ -431c34: 5446 355f |00a4: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431c38: 6e10 ed60 0600 |00a6: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431c3e: 0c06 |00a9: move-result-object v6 │ │ -431c40: 6e10 ea60 0600 |00aa: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431c46: 2705 |00ad: throw v5 │ │ -431c48: 5445 355f |00ae: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431c4c: 6e10 ed60 0500 |00b0: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431c52: 0c05 |00b3: move-result-object v5 │ │ -431c54: 6e10 ea60 0500 |00b4: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431c5a: 3801 2d00 |00b7: if-eqz v1, 00e4 // +002d │ │ -431c5e: 6e10 62bd 0400 |00b9: invoke-virtual {v4}, Lorg/purple/smoke/State;.chatCheckedParticipants:()I // method@bd62 │ │ -431c64: 0a05 |00bc: move-result v5 │ │ -431c66: 3d05 0400 |00bd: if-lez v5, 00c1 // +0004 │ │ -431c6a: d805 05ff |00bf: add-int/lit8 v5, v5, #int -1 // #ff │ │ -431c6e: 5446 355f |00c1: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431c72: 6e10 ed60 0600 |00c3: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431c78: 0c06 |00c6: move-result-object v6 │ │ -431c7a: 6e10 e960 0600 |00c7: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ -431c80: 5446 345f |00ca: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431c84: 6e30 e104 2605 |00cc: invoke-virtual {v6, v2, v5}, Landroid/os/Bundle;.putInt:(Ljava/lang/String;I)V // method@04e1 │ │ -431c8a: 280c |00cf: goto 00db // +000c │ │ -431c8c: 0d05 |00d0: move-exception v5 │ │ -431c8e: 5446 355f |00d1: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431c92: 6e10 ed60 0600 |00d3: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431c98: 0c06 |00d6: move-result-object v6 │ │ -431c9a: 6e10 ea60 0600 |00d7: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431ca0: 2705 |00da: throw v5 │ │ -431ca2: 5445 355f |00db: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431ca6: 6e10 ed60 0500 |00dd: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431cac: 0c05 |00e0: move-result-object v5 │ │ -431cae: 6e10 ea60 0500 |00e1: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431cb4: 0e00 |00e4: return-void │ │ +431ad8: |[431ad8] org.purple.smoke.State.setChatCheckBoxSelected:(IZ)V │ │ +431ae8: 1a00 865e |0000: const-string v0, "chat_checkbox_" // string@5e86 │ │ +431aec: 5441 355f |0002: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431af0: 6e10 ec60 0100 |0004: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +431af6: 0c01 |0007: move-result-object v1 │ │ +431af8: 6e10 e760 0100 |0008: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e7 │ │ +431afe: 5441 345f |000b: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431b02: 2202 f10a |000d: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +431b06: 7010 ee5c 0200 |000f: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +431b0c: 6e20 f95c 0200 |0012: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +431b12: 6e20 f45c 5200 |0015: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ +431b18: 6e10 035d 0200 |0018: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +431b1e: 0c02 |001b: move-result-object v2 │ │ +431b20: 6e20 c004 2100 |001c: invoke-virtual {v1, v2}, Landroid/os/Bundle;.containsKey:(Ljava/lang/String;)Z // method@04c0 │ │ +431b26: 0a01 |001f: move-result v1 │ │ +431b28: 5442 355f |0020: iget-object v2, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431b2c: 6e10 ec60 0200 |0022: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +431b32: 0c02 |0025: move-result-object v2 │ │ +431b34: 6e10 e860 0200 |0026: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +431b3a: 2816 |0029: goto 003f // +0016 │ │ +431b3c: 0d05 |002a: move-exception v5 │ │ +431b3e: 5446 355f |002b: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431b42: 6e10 ec60 0600 |002d: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +431b48: 0c06 |0030: move-result-object v6 │ │ +431b4a: 6e10 e860 0600 |0031: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +431b50: 2705 |0034: throw v5 │ │ +431b52: 5441 355f |0035: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431b56: 6e10 ec60 0100 |0037: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ec │ │ +431b5c: 0c01 |003a: move-result-object v1 │ │ +431b5e: 6e10 e860 0100 |003b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60e8 │ │ +431b64: 1201 |003e: const/4 v1, #int 0 // #0 │ │ +431b66: 1a02 875e |003f: const-string v2, "chat_checkbox_counter" // string@5e87 │ │ +431b6a: 3806 4400 |0041: if-eqz v6, 0085 // +0044 │ │ +431b6e: 5446 355f |0043: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431b72: 6e10 ed60 0600 |0045: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431b78: 0c06 |0048: move-result-object v6 │ │ +431b7a: 6e10 e960 0600 |0049: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ +431b80: 5446 345f |004c: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431b84: 2203 f10a |004e: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ +431b88: 7010 ee5c 0300 |0050: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +431b8e: 6e20 f95c 0300 |0053: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +431b94: 6e20 f45c 5300 |0056: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ +431b9a: 6e10 035d 0300 |0059: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +431ba0: 0c05 |005c: move-result-object v5 │ │ +431ba2: 1300 3100 |005d: const/16 v0, #int 49 // #31 │ │ +431ba6: 6e30 dd04 5600 |005f: invoke-virtual {v6, v5, v0}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ +431bac: 3901 1900 |0062: if-nez v1, 007b // +0019 │ │ +431bb0: 5445 345f |0064: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431bb4: 6e10 62bd 0400 |0066: invoke-virtual {v4}, Lorg/purple/smoke/State;.chatCheckedParticipants:()I // method@bd62 │ │ +431bba: 0a06 |0069: move-result v6 │ │ +431bbc: d806 0601 |006a: add-int/lit8 v6, v6, #int 1 // #01 │ │ +431bc0: 6e30 e104 2506 |006c: invoke-virtual {v5, v2, v6}, Landroid/os/Bundle;.putInt:(Ljava/lang/String;I)V // method@04e1 │ │ +431bc6: 280c |006f: goto 007b // +000c │ │ +431bc8: 0d05 |0070: move-exception v5 │ │ +431bca: 5446 355f |0071: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431bce: 6e10 ed60 0600 |0073: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431bd4: 0c06 |0076: move-result-object v6 │ │ +431bd6: 6e10 ea60 0600 |0077: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431bdc: 2705 |007a: throw v5 │ │ +431bde: 5445 355f |007b: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431be2: 6e10 ed60 0500 |007d: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431be8: 0c05 |0080: move-result-object v5 │ │ +431bea: 6e10 ea60 0500 |0081: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431bf0: 2860 |0084: goto 00e4 // +0060 │ │ +431bf2: 5446 355f |0085: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431bf6: 6e10 ed60 0600 |0087: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431bfc: 0c06 |008a: move-result-object v6 │ │ +431bfe: 6e10 e960 0600 |008b: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ +431c04: 5446 345f |008e: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431c08: 2203 f10a |0090: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ +431c0c: 7010 ee5c 0300 |0092: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +431c12: 6e20 f95c 0300 |0095: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +431c18: 6e20 f45c 5300 |0098: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ +431c1e: 6e10 035d 0300 |009b: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +431c24: 0c05 |009e: move-result-object v5 │ │ +431c26: 6e20 ea04 5600 |009f: invoke-virtual {v6, v5}, Landroid/os/Bundle;.remove:(Ljava/lang/String;)V // method@04ea │ │ +431c2c: 280c |00a2: goto 00ae // +000c │ │ +431c2e: 0d05 |00a3: move-exception v5 │ │ +431c30: 5446 355f |00a4: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431c34: 6e10 ed60 0600 |00a6: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431c3a: 0c06 |00a9: move-result-object v6 │ │ +431c3c: 6e10 ea60 0600 |00aa: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431c42: 2705 |00ad: throw v5 │ │ +431c44: 5445 355f |00ae: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431c48: 6e10 ed60 0500 |00b0: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431c4e: 0c05 |00b3: move-result-object v5 │ │ +431c50: 6e10 ea60 0500 |00b4: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431c56: 3801 2d00 |00b7: if-eqz v1, 00e4 // +002d │ │ +431c5a: 6e10 62bd 0400 |00b9: invoke-virtual {v4}, Lorg/purple/smoke/State;.chatCheckedParticipants:()I // method@bd62 │ │ +431c60: 0a05 |00bc: move-result v5 │ │ +431c62: 3d05 0400 |00bd: if-lez v5, 00c1 // +0004 │ │ +431c66: d805 05ff |00bf: add-int/lit8 v5, v5, #int -1 // #ff │ │ +431c6a: 5446 355f |00c1: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431c6e: 6e10 ed60 0600 |00c3: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431c74: 0c06 |00c6: move-result-object v6 │ │ +431c76: 6e10 e960 0600 |00c7: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ +431c7c: 5446 345f |00ca: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431c80: 6e30 e104 2605 |00cc: invoke-virtual {v6, v2, v5}, Landroid/os/Bundle;.putInt:(Ljava/lang/String;I)V // method@04e1 │ │ +431c86: 280c |00cf: goto 00db // +000c │ │ +431c88: 0d05 |00d0: move-exception v5 │ │ +431c8a: 5446 355f |00d1: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431c8e: 6e10 ed60 0600 |00d3: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431c94: 0c06 |00d6: move-result-object v6 │ │ +431c96: 6e10 ea60 0600 |00d7: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431c9c: 2705 |00da: throw v5 │ │ +431c9e: 5445 355f |00db: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431ca2: 6e10 ed60 0500 |00dd: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431ca8: 0c05 |00e0: move-result-object v5 │ │ +431caa: 6e10 ea60 0500 |00e1: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431cb0: 0e00 |00e4: return-void │ │ catches : 4 │ │ 0x000b - 0x0020 │ │ Ljava/lang/Exception; -> 0x0035 │ │ -> 0x002a │ │ 0x004c - 0x006f │ │ Ljava/lang/Exception; -> 0x007b │ │ -> 0x0070 │ │ @@ -744531,19 +744530,19 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 7 16-bit code units │ │ -431cf4: |[431cf4] org.purple.smoke.State.setExit:()V │ │ -431d04: 5420 375f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_exit:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f37 │ │ -431d08: 1211 |0002: const/4 v1, #int 1 // #1 │ │ -431d0a: 6e20 da60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -431d10: 0e00 |0006: return-void │ │ +431cf0: |[431cf0] org.purple.smoke.State.setExit:()V │ │ +431d00: 5420 375f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_exit:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f37 │ │ +431d04: 1211 |0002: const/4 v1, #int 1 // #1 │ │ +431d06: 6e20 da60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +431d0c: 0e00 |0006: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=711 │ │ locals : │ │ 0x0000 - 0x0007 reg=2 this Lorg/purple/smoke/State; │ │ │ │ #36 : (in Lorg/purple/smoke/State;) │ │ @@ -744551,38 +744550,38 @@ │ │ type : '(Z)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 45 16-bit code units │ │ -431d14: |[431d14] org.purple.smoke.State.setLocked:(Z)V │ │ -431d24: 5420 355f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431d28: 6e10 ed60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431d2e: 0c00 |0005: move-result-object v0 │ │ -431d30: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ -431d36: 5420 345f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431d3a: 1a01 e67b |000b: const-string v1, "is_locked" // string@7be6 │ │ -431d3e: 3803 0500 |000d: if-eqz v3, 0012 // +0005 │ │ -431d42: 1303 3100 |000f: const/16 v3, #int 49 // #31 │ │ -431d46: 2803 |0011: goto 0014 // +0003 │ │ -431d48: 1303 3000 |0012: const/16 v3, #int 48 // #30 │ │ -431d4c: 6e30 dd04 1003 |0014: invoke-virtual {v0, v1, v3}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ -431d52: 280c |0017: goto 0023 // +000c │ │ -431d54: 0d03 |0018: move-exception v3 │ │ -431d56: 5420 355f |0019: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431d5a: 6e10 ed60 0000 |001b: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431d60: 0c00 |001e: move-result-object v0 │ │ -431d62: 6e10 ea60 0000 |001f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431d68: 2703 |0022: throw v3 │ │ -431d6a: 5423 355f |0023: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431d6e: 6e10 ed60 0300 |0025: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431d74: 0c03 |0028: move-result-object v3 │ │ -431d76: 6e10 ea60 0300 |0029: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431d7c: 0e00 |002c: return-void │ │ +431d10: |[431d10] org.purple.smoke.State.setLocked:(Z)V │ │ +431d20: 5420 355f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431d24: 6e10 ed60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431d2a: 0c00 |0005: move-result-object v0 │ │ +431d2c: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ +431d32: 5420 345f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431d36: 1a01 e67b |000b: const-string v1, "is_locked" // string@7be6 │ │ +431d3a: 3803 0500 |000d: if-eqz v3, 0012 // +0005 │ │ +431d3e: 1303 3100 |000f: const/16 v3, #int 49 // #31 │ │ +431d42: 2803 |0011: goto 0014 // +0003 │ │ +431d44: 1303 3000 |0012: const/16 v3, #int 48 // #30 │ │ +431d48: 6e30 dd04 1003 |0014: invoke-virtual {v0, v1, v3}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ +431d4e: 280c |0017: goto 0023 // +000c │ │ +431d50: 0d03 |0018: move-exception v3 │ │ +431d52: 5420 355f |0019: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431d56: 6e10 ed60 0000 |001b: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431d5c: 0c00 |001e: move-result-object v0 │ │ +431d5e: 6e10 ea60 0000 |001f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431d64: 2703 |0022: throw v3 │ │ +431d66: 5423 355f |0023: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431d6a: 6e10 ed60 0300 |0025: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431d70: 0c03 |0028: move-result-object v3 │ │ +431d72: 6e10 ea60 0300 |0029: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431d78: 0e00 |002c: return-void │ │ catches : 1 │ │ 0x0009 - 0x0017 │ │ Ljava/lang/Exception; -> 0x0023 │ │ -> 0x0018 │ │ positions : │ │ 0x0000 line=716 │ │ 0x0009 line=720 │ │ @@ -744598,38 +744597,38 @@ │ │ type : '(Z)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 45 16-bit code units │ │ -431d90: |[431d90] org.purple.smoke.State.setNeighborsEcho:(Z)V │ │ -431da0: 5420 355f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431da4: 6e10 ed60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431daa: 0c00 |0005: move-result-object v0 │ │ -431dac: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ -431db2: 5420 345f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431db6: 1a01 f48b |000b: const-string v1, "neighbors_echo" // string@8bf4 │ │ -431dba: 3803 0500 |000d: if-eqz v3, 0012 // +0005 │ │ -431dbe: 1303 3100 |000f: const/16 v3, #int 49 // #31 │ │ -431dc2: 2803 |0011: goto 0014 // +0003 │ │ -431dc4: 1303 3000 |0012: const/16 v3, #int 48 // #30 │ │ -431dc8: 6e30 dd04 1003 |0014: invoke-virtual {v0, v1, v3}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ -431dce: 280c |0017: goto 0023 // +000c │ │ -431dd0: 0d03 |0018: move-exception v3 │ │ -431dd2: 5420 355f |0019: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431dd6: 6e10 ed60 0000 |001b: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431ddc: 0c00 |001e: move-result-object v0 │ │ -431dde: 6e10 ea60 0000 |001f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431de4: 2703 |0022: throw v3 │ │ -431de6: 5423 355f |0023: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431dea: 6e10 ed60 0300 |0025: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431df0: 0c03 |0028: move-result-object v3 │ │ -431df2: 6e10 ea60 0300 |0029: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431df8: 0e00 |002c: return-void │ │ +431d8c: |[431d8c] org.purple.smoke.State.setNeighborsEcho:(Z)V │ │ +431d9c: 5420 355f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431da0: 6e10 ed60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431da6: 0c00 |0005: move-result-object v0 │ │ +431da8: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ +431dae: 5420 345f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431db2: 1a01 f48b |000b: const-string v1, "neighbors_echo" // string@8bf4 │ │ +431db6: 3803 0500 |000d: if-eqz v3, 0012 // +0005 │ │ +431dba: 1303 3100 |000f: const/16 v3, #int 49 // #31 │ │ +431dbe: 2803 |0011: goto 0014 // +0003 │ │ +431dc0: 1303 3000 |0012: const/16 v3, #int 48 // #30 │ │ +431dc4: 6e30 dd04 1003 |0014: invoke-virtual {v0, v1, v3}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ +431dca: 280c |0017: goto 0023 // +000c │ │ +431dcc: 0d03 |0018: move-exception v3 │ │ +431dce: 5420 355f |0019: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431dd2: 6e10 ed60 0000 |001b: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431dd8: 0c00 |001e: move-result-object v0 │ │ +431dda: 6e10 ea60 0000 |001f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431de0: 2703 |0022: throw v3 │ │ +431de2: 5423 355f |0023: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431de6: 6e10 ed60 0300 |0025: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431dec: 0c03 |0028: move-result-object v3 │ │ +431dee: 6e10 ea60 0300 |0029: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431df4: 0e00 |002c: return-void │ │ catches : 1 │ │ 0x0009 - 0x0017 │ │ Ljava/lang/Exception; -> 0x0023 │ │ -> 0x0018 │ │ positions : │ │ 0x0000 line=733 │ │ 0x0009 line=737 │ │ @@ -744645,18 +744644,18 @@ │ │ type : '(Z)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 6 16-bit code units │ │ -431e0c: |[431e0c] org.purple.smoke.State.setQueryTimerServer:(Z)V │ │ -431e1c: 5410 3c5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_queryTimerServer:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3c │ │ -431e20: 6e20 da60 2000 |0002: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -431e26: 0e00 |0005: return-void │ │ +431e08: |[431e08] org.purple.smoke.State.setQueryTimerServer:(Z)V │ │ +431e18: 5410 3c5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_queryTimerServer:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3c │ │ +431e1c: 6e20 da60 2000 |0002: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +431e22: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=750 │ │ locals : │ │ 0x0000 - 0x0006 reg=1 this Lorg/purple/smoke/State; │ │ 0x0000 - 0x0006 reg=2 (null) Z │ │ │ │ @@ -744665,18 +744664,18 @@ │ │ type : '(Z)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 6 16-bit code units │ │ -431e28: |[431e28] org.purple.smoke.State.setSilent:(Z)V │ │ -431e38: 5410 3e5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_silent:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3e │ │ -431e3c: 6e20 da60 2000 |0002: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -431e42: 0e00 |0005: return-void │ │ +431e24: |[431e24] org.purple.smoke.State.setSilent:(Z)V │ │ +431e34: 5410 3e5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_silent:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3e │ │ +431e38: 6e20 da60 2000 |0002: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +431e3e: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=755 │ │ locals : │ │ 0x0000 - 0x0006 reg=1 this Lorg/purple/smoke/State; │ │ 0x0000 - 0x0006 reg=2 (null) Z │ │ │ │ @@ -744685,27 +744684,27 @@ │ │ type : '(ZI)V' │ │ access : 0x20001 (PUBLIC DECLARED_SYNCHRONIZED) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 19 16-bit code units │ │ -431e44: |[431e44] org.purple.smoke.State.setSteamDetailsState:(ZI)V │ │ -431e54: 1d01 |0000: monitor-enter v1 │ │ -431e56: 5410 3f5f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ -431e5a: 7110 605c 0300 |0003: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ -431e60: 0c03 |0006: move-result-object v3 │ │ -431e62: 7110 ff5b 0200 |0007: invoke-static {v2}, Ljava/lang/Boolean;.valueOf:(Z)Ljava/lang/Boolean; // method@5bff │ │ -431e68: 0c02 |000a: move-result-object v2 │ │ -431e6a: 7230 5d60 3002 |000b: invoke-interface {v0, v3, v2}, Ljava/util/Map;.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; // method@605d │ │ -431e70: 1e01 |000e: monitor-exit v1 │ │ -431e72: 0e00 |000f: return-void │ │ -431e74: 0d02 |0010: move-exception v2 │ │ -431e76: 1e01 |0011: monitor-exit v1 │ │ -431e78: 2702 |0012: throw v2 │ │ +431e40: |[431e40] org.purple.smoke.State.setSteamDetailsState:(ZI)V │ │ +431e50: 1d01 |0000: monitor-enter v1 │ │ +431e52: 5410 3f5f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ +431e56: 7110 605c 0300 |0003: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ +431e5c: 0c03 |0006: move-result-object v3 │ │ +431e5e: 7110 ff5b 0200 |0007: invoke-static {v2}, Ljava/lang/Boolean;.valueOf:(Z)Ljava/lang/Boolean; // method@5bff │ │ +431e64: 0c02 |000a: move-result-object v2 │ │ +431e66: 7230 5d60 3002 |000b: invoke-interface {v0, v3, v2}, Ljava/util/Map;.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; // method@605d │ │ +431e6c: 1e01 |000e: monitor-exit v1 │ │ +431e6e: 0e00 |000f: return-void │ │ +431e70: 0d02 |0010: move-exception v2 │ │ +431e72: 1e01 |0011: monitor-exit v1 │ │ +431e74: 2702 |0012: throw v2 │ │ catches : 1 │ │ 0x0001 - 0x000e │ │ -> 0x0010 │ │ positions : │ │ 0x0001 line=472 │ │ 0x000e line=473 │ │ locals : │ │ @@ -744718,33 +744717,33 @@ │ │ type : '(Ljava/lang/String;Ljava/lang/String;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 36 16-bit code units │ │ -431e88: |[431e88] org.purple.smoke.State.setString:(Ljava/lang/String;Ljava/lang/String;)V │ │ -431e98: 5410 355f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431e9c: 6e10 ed60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431ea2: 0c00 |0005: move-result-object v0 │ │ -431ea4: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ -431eaa: 5410 345f |0009: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431eae: 6e30 e804 2003 |000b: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.putString:(Ljava/lang/String;Ljava/lang/String;)V // method@04e8 │ │ -431eb4: 280c |000e: goto 001a // +000c │ │ -431eb6: 0d02 |000f: move-exception v2 │ │ -431eb8: 5413 355f |0010: iget-object v3, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431ebc: 6e10 ed60 0300 |0012: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431ec2: 0c03 |0015: move-result-object v3 │ │ -431ec4: 6e10 ea60 0300 |0016: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431eca: 2702 |0019: throw v2 │ │ -431ecc: 5412 355f |001a: iget-object v2, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431ed0: 6e10 ed60 0200 |001c: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431ed6: 0c02 |001f: move-result-object v2 │ │ -431ed8: 6e10 ea60 0200 |0020: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431ede: 0e00 |0023: return-void │ │ +431e84: |[431e84] org.purple.smoke.State.setString:(Ljava/lang/String;Ljava/lang/String;)V │ │ +431e94: 5410 355f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431e98: 6e10 ed60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431e9e: 0c00 |0005: move-result-object v0 │ │ +431ea0: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ +431ea6: 5410 345f |0009: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431eaa: 6e30 e804 2003 |000b: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.putString:(Ljava/lang/String;Ljava/lang/String;)V // method@04e8 │ │ +431eb0: 280c |000e: goto 001a // +000c │ │ +431eb2: 0d02 |000f: move-exception v2 │ │ +431eb4: 5413 355f |0010: iget-object v3, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431eb8: 6e10 ed60 0300 |0012: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431ebe: 0c03 |0015: move-result-object v3 │ │ +431ec0: 6e10 ea60 0300 |0016: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431ec6: 2702 |0019: throw v2 │ │ +431ec8: 5412 355f |001a: iget-object v2, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431ecc: 6e10 ed60 0200 |001c: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431ed2: 0c02 |001f: move-result-object v2 │ │ +431ed4: 6e10 ea60 0200 |0020: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431eda: 0e00 |0023: return-void │ │ catches : 1 │ │ 0x0009 - 0x000e │ │ Ljava/lang/Exception; -> 0x001a │ │ -> 0x000f │ │ positions : │ │ 0x0000 line=760 │ │ 0x0009 line=764 │ │ @@ -744761,19 +744760,19 @@ │ │ type : '()Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -430e38: |[430e38] org.purple.smoke.State.silent:()Z │ │ -430e48: 5410 3e5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_silent:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3e │ │ -430e4c: 6e10 d860 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -430e52: 0a00 |0005: move-result v0 │ │ -430e54: 0f00 |0006: return v0 │ │ +430e34: |[430e34] org.purple.smoke.State.silent:()Z │ │ +430e44: 5410 3e5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_silent:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3e │ │ +430e48: 6e10 d860 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +430e4e: 0a00 |0005: move-result v0 │ │ +430e50: 0f00 |0006: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=347 │ │ locals : │ │ 0x0000 - 0x0007 reg=1 this Lorg/purple/smoke/State; │ │ │ │ #43 : (in Lorg/purple/smoke/State;) │ │ @@ -744781,38 +744780,38 @@ │ │ type : '(I)Z' │ │ access : 0x20001 (PUBLIC DECLARED_SYNCHRONIZED) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 37 16-bit code units │ │ -430e58: |[430e58] org.purple.smoke.State.steamDetailsState:(I)Z │ │ -430e68: 1d02 |0000: monitor-enter v2 │ │ -430e6a: 5420 3f5f |0001: iget-object v0, v2, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ -430e6e: 7110 605c 0300 |0003: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ -430e74: 0c01 |0006: move-result-object v1 │ │ -430e76: 7220 5660 1000 |0007: invoke-interface {v0, v1}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6056 │ │ -430e7c: 0a00 |000a: move-result v0 │ │ -430e7e: 3800 1400 |000b: if-eqz v0, 001f // +0014 │ │ -430e82: 5420 3f5f |000d: iget-object v0, v2, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ -430e86: 7110 605c 0300 |000f: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ -430e8c: 0c03 |0012: move-result-object v3 │ │ -430e8e: 7220 5960 3000 |0013: invoke-interface {v0, v3}, Ljava/util/Map;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@6059 │ │ -430e94: 0c03 |0016: move-result-object v3 │ │ -430e96: 1f03 c60a |0017: check-cast v3, Ljava/lang/Boolean; // type@0ac6 │ │ -430e9a: 6e10 fe5b 0300 |0019: invoke-virtual {v3}, Ljava/lang/Boolean;.booleanValue:()Z // method@5bfe │ │ -430ea0: 0a03 |001c: move-result v3 │ │ -430ea2: 1e02 |001d: monitor-exit v2 │ │ -430ea4: 0f03 |001e: return v3 │ │ -430ea6: 1203 |001f: const/4 v3, #int 0 // #0 │ │ -430ea8: 1e02 |0020: monitor-exit v2 │ │ -430eaa: 0f03 |0021: return v3 │ │ -430eac: 0d03 |0022: move-exception v3 │ │ -430eae: 1e02 |0023: monitor-exit v2 │ │ -430eb0: 2703 |0024: throw v3 │ │ +430e54: |[430e54] org.purple.smoke.State.steamDetailsState:(I)Z │ │ +430e64: 1d02 |0000: monitor-enter v2 │ │ +430e66: 5420 3f5f |0001: iget-object v0, v2, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ +430e6a: 7110 605c 0300 |0003: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ +430e70: 0c01 |0006: move-result-object v1 │ │ +430e72: 7220 5660 1000 |0007: invoke-interface {v0, v1}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6056 │ │ +430e78: 0a00 |000a: move-result v0 │ │ +430e7a: 3800 1400 |000b: if-eqz v0, 001f // +0014 │ │ +430e7e: 5420 3f5f |000d: iget-object v0, v2, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ +430e82: 7110 605c 0300 |000f: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ +430e88: 0c03 |0012: move-result-object v3 │ │ +430e8a: 7220 5960 3000 |0013: invoke-interface {v0, v3}, Ljava/util/Map;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@6059 │ │ +430e90: 0c03 |0016: move-result-object v3 │ │ +430e92: 1f03 c60a |0017: check-cast v3, Ljava/lang/Boolean; // type@0ac6 │ │ +430e96: 6e10 fe5b 0300 |0019: invoke-virtual {v3}, Ljava/lang/Boolean;.booleanValue:()Z // method@5bfe │ │ +430e9c: 0a03 |001c: move-result v3 │ │ +430e9e: 1e02 |001d: monitor-exit v2 │ │ +430ea0: 0f03 |001e: return v3 │ │ +430ea2: 1203 |001f: const/4 v3, #int 0 // #0 │ │ +430ea4: 1e02 |0020: monitor-exit v2 │ │ +430ea6: 0f03 |0021: return v3 │ │ +430ea8: 0d03 |0022: move-exception v3 │ │ +430eaa: 1e02 |0023: monitor-exit v2 │ │ +430eac: 2703 |0024: throw v3 │ │ catches : 1 │ │ 0x0001 - 0x001d │ │ -> 0x0022 │ │ positions : │ │ 0x0001 line=422 │ │ 0x000d line=423 │ │ 0x0020 line=425 │ │ @@ -744825,32 +744824,32 @@ │ │ type : '(Ljava/lang/String;C)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 35 16-bit code units │ │ -431ef0: |[431ef0] org.purple.smoke.State.writeChar:(Ljava/lang/String;C)V │ │ -431f00: 5410 355f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431f04: 6e10 ed60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431f0a: 0c00 |0005: move-result-object v0 │ │ -431f0c: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ -431f12: 5410 345f |0009: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431f16: 6e30 dd04 2003 |000b: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ -431f1c: 5412 355f |000e: iget-object v2, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431f20: 6e10 ed60 0200 |0010: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431f26: 0c02 |0013: move-result-object v2 │ │ -431f28: 6e10 ea60 0200 |0014: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431f2e: 0e00 |0017: return-void │ │ -431f30: 0d02 |0018: move-exception v2 │ │ -431f32: 5413 355f |0019: iget-object v3, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431f36: 6e10 ed60 0300 |001b: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431f3c: 0c03 |001e: move-result-object v3 │ │ -431f3e: 6e10 ea60 0300 |001f: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431f44: 2702 |0022: throw v2 │ │ +431eec: |[431eec] org.purple.smoke.State.writeChar:(Ljava/lang/String;C)V │ │ +431efc: 5410 355f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431f00: 6e10 ed60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431f06: 0c00 |0005: move-result-object v0 │ │ +431f08: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ +431f0e: 5410 345f |0009: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431f12: 6e30 dd04 2003 |000b: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ +431f18: 5412 355f |000e: iget-object v2, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431f1c: 6e10 ed60 0200 |0010: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431f22: 0c02 |0013: move-result-object v2 │ │ +431f24: 6e10 ea60 0200 |0014: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431f2a: 0e00 |0017: return-void │ │ +431f2c: 0d02 |0018: move-exception v2 │ │ +431f2e: 5413 355f |0019: iget-object v3, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431f32: 6e10 ed60 0300 |001b: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431f38: 0c03 |001e: move-result-object v3 │ │ +431f3a: 6e10 ea60 0300 |001f: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431f40: 2702 |0022: throw v2 │ │ catches : 1 │ │ 0x0009 - 0x000e │ │ -> 0x0018 │ │ positions : │ │ 0x0000 line=777 │ │ 0x0009 line=781 │ │ 0x000e line=785 │ │ @@ -744865,32 +744864,32 @@ │ │ type : '(Ljava/lang/String;Ljava/lang/CharSequence;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 35 16-bit code units │ │ -431f54: |[431f54] org.purple.smoke.State.writeCharSequence:(Ljava/lang/String;Ljava/lang/CharSequence;)V │ │ -431f64: 5410 355f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431f68: 6e10 ed60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431f6e: 0c00 |0005: move-result-object v0 │ │ -431f70: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ -431f76: 5410 345f |0009: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431f7a: 6e30 de04 2003 |000b: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.putCharSequence:(Ljava/lang/String;Ljava/lang/CharSequence;)V // method@04de │ │ -431f80: 5412 355f |000e: iget-object v2, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431f84: 6e10 ed60 0200 |0010: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431f8a: 0c02 |0013: move-result-object v2 │ │ -431f8c: 6e10 ea60 0200 |0014: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431f92: 0e00 |0017: return-void │ │ -431f94: 0d02 |0018: move-exception v2 │ │ -431f96: 5413 355f |0019: iget-object v3, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431f9a: 6e10 ed60 0300 |001b: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -431fa0: 0c03 |001e: move-result-object v3 │ │ -431fa2: 6e10 ea60 0300 |001f: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -431fa8: 2702 |0022: throw v2 │ │ +431f50: |[431f50] org.purple.smoke.State.writeCharSequence:(Ljava/lang/String;Ljava/lang/CharSequence;)V │ │ +431f60: 5410 355f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431f64: 6e10 ed60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431f6a: 0c00 |0005: move-result-object v0 │ │ +431f6c: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ +431f72: 5410 345f |0009: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431f76: 6e30 de04 2003 |000b: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.putCharSequence:(Ljava/lang/String;Ljava/lang/CharSequence;)V // method@04de │ │ +431f7c: 5412 355f |000e: iget-object v2, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431f80: 6e10 ed60 0200 |0010: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431f86: 0c02 |0013: move-result-object v2 │ │ +431f88: 6e10 ea60 0200 |0014: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431f8e: 0e00 |0017: return-void │ │ +431f90: 0d02 |0018: move-exception v2 │ │ +431f92: 5413 355f |0019: iget-object v3, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431f96: 6e10 ed60 0300 |001b: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +431f9c: 0c03 |001e: move-result-object v3 │ │ +431f9e: 6e10 ea60 0300 |001f: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +431fa4: 2702 |0022: throw v2 │ │ catches : 1 │ │ 0x0009 - 0x000e │ │ -> 0x0018 │ │ positions : │ │ 0x0000 line=791 │ │ 0x0009 line=795 │ │ 0x000e line=799 │ │ @@ -744935,18 +744934,18 @@ │ │ type : '(Lorg/purple/smoke/Steam;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -431fb8: |[431fb8] org.purple.smoke.Steam$1.:(Lorg/purple/smoke/Steam;)V │ │ -431fc8: 5b01 415f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$1;.this$0:Lorg/purple/smoke/Steam; // field@5f41 │ │ -431fcc: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -431fd2: 0e00 |0005: return-void │ │ +431fb4: |[431fb4] org.purple.smoke.Steam$1.:(Lorg/purple/smoke/Steam;)V │ │ +431fc4: 5b01 415f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$1;.this$0:Lorg/purple/smoke/Steam; // field@5f41 │ │ +431fc8: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +431fce: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=213 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Steam$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Steam; │ │ │ │ @@ -744956,23 +744955,23 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 15 16-bit code units │ │ -431fd4: |[431fd4] org.purple.smoke.Steam$1.onClick:(Landroid/view/View;)V │ │ -431fe4: 5401 415f |0000: iget-object v1, v0, Lorg/purple/smoke/Steam$1;.this$0:Lorg/purple/smoke/Steam; // field@5f41 │ │ -431fe8: 6e10 bbbd 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Steam;.isFinishing:()Z // method@bdbb │ │ -431fee: 0a01 |0005: move-result v1 │ │ -431ff0: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ -431ff4: 0e00 |0008: return-void │ │ -431ff6: 5401 415f |0009: iget-object v1, v0, Lorg/purple/smoke/Steam$1;.this$0:Lorg/purple/smoke/Steam; // field@5f41 │ │ -431ffa: 7110 adbd 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$300:(Lorg/purple/smoke/Steam;)V // method@bdad │ │ -432000: 0e00 |000e: return-void │ │ +431fd0: |[431fd0] org.purple.smoke.Steam$1.onClick:(Landroid/view/View;)V │ │ +431fe0: 5401 415f |0000: iget-object v1, v0, Lorg/purple/smoke/Steam$1;.this$0:Lorg/purple/smoke/Steam; // field@5f41 │ │ +431fe4: 6e10 bbbd 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Steam;.isFinishing:()Z // method@bdbb │ │ +431fea: 0a01 |0005: move-result v1 │ │ +431fec: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ +431ff0: 0e00 |0008: return-void │ │ +431ff2: 5401 415f |0009: iget-object v1, v0, Lorg/purple/smoke/Steam$1;.this$0:Lorg/purple/smoke/Steam; // field@5f41 │ │ +431ff6: 7110 adbd 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$300:(Lorg/purple/smoke/Steam;)V // method@bdad │ │ +431ffc: 0e00 |000e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=216 │ │ 0x0009 line=219 │ │ locals : │ │ 0x0000 - 0x000f reg=0 this Lorg/purple/smoke/Steam$1; │ │ 0x0000 - 0x000f reg=1 (null) Landroid/view/View; │ │ @@ -745016,18 +745015,18 @@ │ │ type : '(Lorg/purple/smoke/Steam;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -432004: |[432004] org.purple.smoke.Steam$2.:(Lorg/purple/smoke/Steam;)V │ │ -432014: 5b01 425f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$2;.this$0:Lorg/purple/smoke/Steam; // field@5f42 │ │ -432018: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43201e: 0e00 |0005: return-void │ │ +432000: |[432000] org.purple.smoke.Steam$2.:(Lorg/purple/smoke/Steam;)V │ │ +432010: 5b01 425f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$2;.this$0:Lorg/purple/smoke/Steam; // field@5f42 │ │ +432014: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43201a: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=225 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Steam$2; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Steam; │ │ │ │ @@ -745037,29 +745036,29 @@ │ │ type : '(Landroid/widget/AdapterView;Landroid/view/View;IJ)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 6 │ │ ins : 6 │ │ outs : 2 │ │ insns size : 25 16-bit code units │ │ -432020: |[432020] org.purple.smoke.Steam$2.onItemSelected:(Landroid/widget/AdapterView;Landroid/view/View;IJ)V │ │ -432030: 5401 425f |0000: iget-object v1, v0, Lorg/purple/smoke/Steam$2;.this$0:Lorg/purple/smoke/Steam; // field@5f42 │ │ -432034: 7110 aebd 0100 |0002: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$400:(Lorg/purple/smoke/Steam;)Landroid/widget/Spinner; // method@bdae │ │ -43203a: 0c01 |0005: move-result-object v1 │ │ -43203c: 1212 |0006: const/4 v2, #int 1 // #1 │ │ -43203e: 3803 0400 |0007: if-eqz v3, 000b // +0004 │ │ -432042: 1213 |0009: const/4 v3, #int 1 // #1 │ │ -432044: 2802 |000a: goto 000c // +0002 │ │ -432046: 1203 |000b: const/4 v3, #int 0 // #0 │ │ -432048: 6e20 c65a 3100 |000c: invoke-virtual {v1, v3}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ -43204e: 5401 425f |000f: iget-object v1, v0, Lorg/purple/smoke/Steam$2;.this$0:Lorg/purple/smoke/Steam; // field@5f42 │ │ -432052: 7110 aebd 0100 |0011: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$400:(Lorg/purple/smoke/Steam;)Landroid/widget/Spinner; // method@bdae │ │ -432058: 0c01 |0014: move-result-object v1 │ │ -43205a: 6e20 cc5a 2100 |0015: invoke-virtual {v1, v2}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -432060: 0e00 |0018: return-void │ │ +43201c: |[43201c] org.purple.smoke.Steam$2.onItemSelected:(Landroid/widget/AdapterView;Landroid/view/View;IJ)V │ │ +43202c: 5401 425f |0000: iget-object v1, v0, Lorg/purple/smoke/Steam$2;.this$0:Lorg/purple/smoke/Steam; // field@5f42 │ │ +432030: 7110 aebd 0100 |0002: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$400:(Lorg/purple/smoke/Steam;)Landroid/widget/Spinner; // method@bdae │ │ +432036: 0c01 |0005: move-result-object v1 │ │ +432038: 1212 |0006: const/4 v2, #int 1 // #1 │ │ +43203a: 3803 0400 |0007: if-eqz v3, 000b // +0004 │ │ +43203e: 1213 |0009: const/4 v3, #int 1 // #1 │ │ +432040: 2802 |000a: goto 000c // +0002 │ │ +432042: 1203 |000b: const/4 v3, #int 0 // #0 │ │ +432044: 6e20 c65a 3100 |000c: invoke-virtual {v1, v3}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ +43204a: 5401 425f |000f: iget-object v1, v0, Lorg/purple/smoke/Steam$2;.this$0:Lorg/purple/smoke/Steam; // field@5f42 │ │ +43204e: 7110 aebd 0100 |0011: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$400:(Lorg/purple/smoke/Steam;)Landroid/widget/Spinner; // method@bdae │ │ +432054: 0c01 |0014: move-result-object v1 │ │ +432056: 6e20 cc5a 2100 |0015: invoke-virtual {v1, v2}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +43205c: 0e00 |0018: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=232 │ │ 0x000f line=233 │ │ locals : │ │ 0x0000 - 0x0019 reg=0 this Lorg/purple/smoke/Steam$2; │ │ 0x0000 - 0x0019 reg=1 (null) Landroid/widget/AdapterView; │ │ @@ -745072,16 +745071,16 @@ │ │ type : '(Landroid/widget/AdapterView;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -432064: |[432064] org.purple.smoke.Steam$2.onNothingSelected:(Landroid/widget/AdapterView;)V │ │ -432074: 0e00 |0000: return-void │ │ +432060: |[432060] org.purple.smoke.Steam$2.onNothingSelected:(Landroid/widget/AdapterView;)V │ │ +432070: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ source_file_idx : 19580 (Steam.java) │ │ │ │ Class #2733 header: │ │ @@ -745117,18 +745116,18 @@ │ │ type : '(Lorg/purple/smoke/Steam;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -432078: |[432078] org.purple.smoke.Steam$3.:(Lorg/purple/smoke/Steam;)V │ │ -432088: 5b01 435f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$3;.this$0:Lorg/purple/smoke/Steam; // field@5f43 │ │ -43208c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -432092: 0e00 |0005: return-void │ │ +432074: |[432074] org.purple.smoke.Steam$3.:(Lorg/purple/smoke/Steam;)V │ │ +432084: 5b01 435f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$3;.this$0:Lorg/purple/smoke/Steam; // field@5f43 │ │ +432088: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43208e: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=244 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Steam$3; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Steam; │ │ │ │ @@ -745138,23 +745137,23 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 15 16-bit code units │ │ -432094: |[432094] org.purple.smoke.Steam$3.onClick:(Landroid/view/View;)V │ │ -4320a4: 5401 435f |0000: iget-object v1, v0, Lorg/purple/smoke/Steam$3;.this$0:Lorg/purple/smoke/Steam; // field@5f43 │ │ -4320a8: 6e10 bbbd 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Steam;.isFinishing:()Z // method@bdbb │ │ -4320ae: 0a01 |0005: move-result v1 │ │ -4320b0: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ -4320b4: 0e00 |0008: return-void │ │ -4320b6: 5401 435f |0009: iget-object v1, v0, Lorg/purple/smoke/Steam$3;.this$0:Lorg/purple/smoke/Steam; // field@5f43 │ │ -4320ba: 7110 afbd 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$500:(Lorg/purple/smoke/Steam;)V // method@bdaf │ │ -4320c0: 0e00 |000e: return-void │ │ +432090: |[432090] org.purple.smoke.Steam$3.onClick:(Landroid/view/View;)V │ │ +4320a0: 5401 435f |0000: iget-object v1, v0, Lorg/purple/smoke/Steam$3;.this$0:Lorg/purple/smoke/Steam; // field@5f43 │ │ +4320a4: 6e10 bbbd 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Steam;.isFinishing:()Z // method@bdbb │ │ +4320aa: 0a01 |0005: move-result v1 │ │ +4320ac: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ +4320b0: 0e00 |0008: return-void │ │ +4320b2: 5401 435f |0009: iget-object v1, v0, Lorg/purple/smoke/Steam$3;.this$0:Lorg/purple/smoke/Steam; // field@5f43 │ │ +4320b6: 7110 afbd 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$500:(Lorg/purple/smoke/Steam;)V // method@bdaf │ │ +4320bc: 0e00 |000e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=247 │ │ 0x0009 line=250 │ │ locals : │ │ 0x0000 - 0x000f reg=0 this Lorg/purple/smoke/Steam$3; │ │ 0x0000 - 0x000f reg=1 (null) Landroid/view/View; │ │ @@ -745202,20 +745201,20 @@ │ │ type : '(Lorg/purple/smoke/Steam$4;II)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 4 │ │ ins : 4 │ │ outs : 1 │ │ insns size : 10 16-bit code units │ │ -4320c4: |[4320c4] org.purple.smoke.Steam$4$1.:(Lorg/purple/smoke/Steam$4;II)V │ │ -4320d4: 5b01 445f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$4$1;.this$1:Lorg/purple/smoke/Steam$4; // field@5f44 │ │ -4320d8: 5902 455f |0002: iput v2, v0, Lorg/purple/smoke/Steam$4$1;.val$availableSteamReaders:I // field@5f45 │ │ -4320dc: 5903 465f |0004: iput v3, v0, Lorg/purple/smoke/Steam$4$1;.val$availableSteamWriters:I // field@5f46 │ │ -4320e0: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -4320e6: 0e00 |0009: return-void │ │ +4320c0: |[4320c0] org.purple.smoke.Steam$4$1.:(Lorg/purple/smoke/Steam$4;II)V │ │ +4320d0: 5b01 445f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$4$1;.this$1:Lorg/purple/smoke/Steam$4; // field@5f44 │ │ +4320d4: 5902 455f |0002: iput v2, v0, Lorg/purple/smoke/Steam$4$1;.val$availableSteamReaders:I // field@5f45 │ │ +4320d8: 5903 465f |0004: iput v3, v0, Lorg/purple/smoke/Steam$4$1;.val$availableSteamWriters:I // field@5f46 │ │ +4320dc: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +4320e2: 0e00 |0009: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=273 │ │ locals : │ │ 0x0000 - 0x000a reg=0 this Lorg/purple/smoke/Steam$4$1; │ │ 0x0000 - 0x000a reg=1 (null) Lorg/purple/smoke/Steam$4; │ │ 0x0000 - 0x000a reg=2 (null) I │ │ @@ -745227,39 +745226,39 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 52 16-bit code units │ │ -4320e8: |[4320e8] org.purple.smoke.Steam$4$1.run:()V │ │ -4320f8: 5430 445f |0000: iget-object v0, v3, Lorg/purple/smoke/Steam$4$1;.this$1:Lorg/purple/smoke/Steam$4; // field@5f44 │ │ -4320fc: 5400 475f |0002: iget-object v0, v0, Lorg/purple/smoke/Steam$4;.this$0:Lorg/purple/smoke/Steam; // field@5f47 │ │ -432100: 7110 acbd 0000 |0004: invoke-static {v0}, Lorg/purple/smoke/Steam;.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; // method@bdac │ │ -432106: 0c00 |0007: move-result-object v0 │ │ -432108: 6e10 364c 0000 |0008: invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -43210e: 5430 445f |000b: iget-object v0, v3, Lorg/purple/smoke/Steam$4$1;.this$1:Lorg/purple/smoke/Steam$4; // field@5f44 │ │ -432112: 5400 475f |000d: iget-object v0, v0, Lorg/purple/smoke/Steam$4;.this$0:Lorg/purple/smoke/Steam; // field@5f47 │ │ -432116: 7110 b0bd 0000 |000f: invoke-static {v0}, Lorg/purple/smoke/Steam;.access$600:(Lorg/purple/smoke/Steam;)Landroid/widget/TextView; // method@bdb0 │ │ -43211c: 0c00 |0012: move-result-object v0 │ │ -43211e: 2201 f10a |0013: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -432122: 7010 ee5c 0100 |0015: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -432128: 1a02 380b |0018: const-string v2, "Active Steam Readers: " // string@0b38 │ │ -43212c: 6e20 f95c 2100 |001a: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -432132: 5232 455f |001d: iget v2, v3, Lorg/purple/smoke/Steam$4$1;.val$availableSteamReaders:I // field@5f45 │ │ -432136: 6e20 f45c 2100 |001f: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ -43213c: 1a02 0900 |0022: const-string v2, " │ │ +4320e4: |[4320e4] org.purple.smoke.Steam$4$1.run:()V │ │ +4320f4: 5430 445f |0000: iget-object v0, v3, Lorg/purple/smoke/Steam$4$1;.this$1:Lorg/purple/smoke/Steam$4; // field@5f44 │ │ +4320f8: 5400 475f |0002: iget-object v0, v0, Lorg/purple/smoke/Steam$4;.this$0:Lorg/purple/smoke/Steam; // field@5f47 │ │ +4320fc: 7110 acbd 0000 |0004: invoke-static {v0}, Lorg/purple/smoke/Steam;.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; // method@bdac │ │ +432102: 0c00 |0007: move-result-object v0 │ │ +432104: 6e10 364c 0000 |0008: invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +43210a: 5430 445f |000b: iget-object v0, v3, Lorg/purple/smoke/Steam$4$1;.this$1:Lorg/purple/smoke/Steam$4; // field@5f44 │ │ +43210e: 5400 475f |000d: iget-object v0, v0, Lorg/purple/smoke/Steam$4;.this$0:Lorg/purple/smoke/Steam; // field@5f47 │ │ +432112: 7110 b0bd 0000 |000f: invoke-static {v0}, Lorg/purple/smoke/Steam;.access$600:(Lorg/purple/smoke/Steam;)Landroid/widget/TextView; // method@bdb0 │ │ +432118: 0c00 |0012: move-result-object v0 │ │ +43211a: 2201 f10a |0013: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +43211e: 7010 ee5c 0100 |0015: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +432124: 1a02 380b |0018: const-string v2, "Active Steam Readers: " // string@0b38 │ │ +432128: 6e20 f95c 2100 |001a: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43212e: 5232 455f |001d: iget v2, v3, Lorg/purple/smoke/Steam$4$1;.val$availableSteamReaders:I // field@5f45 │ │ +432132: 6e20 f45c 2100 |001f: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ +432138: 1a02 0900 |0022: const-string v2, " │ │ Active Steam Writers: " // string@0009 │ │ -432140: 6e20 f95c 2100 |0024: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -432146: 5232 465f |0027: iget v2, v3, Lorg/purple/smoke/Steam$4$1;.val$availableSteamWriters:I // field@5f46 │ │ -43214a: 6e20 f45c 2100 |0029: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ -432150: 6e10 035d 0100 |002c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -432156: 0c01 |002f: move-result-object v1 │ │ -432158: 6e20 495b 1000 |0030: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43215e: 0e00 |0033: return-void │ │ +43213c: 6e20 f95c 2100 |0024: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +432142: 5232 465f |0027: iget v2, v3, Lorg/purple/smoke/Steam$4$1;.val$availableSteamWriters:I // field@5f46 │ │ +432146: 6e20 f45c 2100 |0029: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ +43214c: 6e10 035d 0100 |002c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +432152: 0c01 |002f: move-result-object v1 │ │ +432154: 6e20 495b 1000 |0030: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +43215a: 0e00 |0033: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=277 │ │ 0x000b line=278 │ │ 0x0030 line=279 │ │ locals : │ │ 0x0000 - 0x0034 reg=3 this Lorg/purple/smoke/Steam$4$1; │ │ @@ -745299,18 +745298,18 @@ │ │ type : '(Lorg/purple/smoke/Steam;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -432160: |[432160] org.purple.smoke.Steam$4.:(Lorg/purple/smoke/Steam;)V │ │ -432170: 5b01 475f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$4;.this$0:Lorg/purple/smoke/Steam; // field@5f47 │ │ -432174: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43217a: 0e00 |0005: return-void │ │ +43215c: |[43215c] org.purple.smoke.Steam$4.:(Lorg/purple/smoke/Steam;)V │ │ +43216c: 5b01 475f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$4;.this$0:Lorg/purple/smoke/Steam; // field@5f47 │ │ +432170: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +432176: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=261 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Steam$4; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Steam; │ │ │ │ @@ -745320,28 +745319,28 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 27 16-bit code units │ │ -43217c: |[43217c] org.purple.smoke.Steam$4.run:()V │ │ -43218c: 7100 0bbb 0000 |0000: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -432192: 0c00 |0003: move-result-object v0 │ │ -432194: 6e10 f8ba 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.availableSteamReaders:()I // method@baf8 │ │ -43219a: 0a00 |0007: move-result v0 │ │ -43219c: 7100 0bbb 0000 |0008: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -4321a2: 0c01 |000b: move-result-object v1 │ │ -4321a4: 6e10 f9ba 0100 |000c: invoke-virtual {v1}, Lorg/purple/smoke/Kernel;.availableSteamWriters:()I // method@baf9 │ │ -4321aa: 0a01 |000f: move-result v1 │ │ -4321ac: 5442 475f |0010: iget-object v2, v4, Lorg/purple/smoke/Steam$4;.this$0:Lorg/purple/smoke/Steam; // field@5f47 │ │ -4321b0: 2203 191b |0012: new-instance v3, Lorg/purple/smoke/Steam$4$1; // type@1b19 │ │ -4321b4: 7040 97bd 4310 |0014: invoke-direct {v3, v4, v0, v1}, Lorg/purple/smoke/Steam$4$1;.:(Lorg/purple/smoke/Steam$4;II)V // method@bd97 │ │ -4321ba: 6e20 cebd 3200 |0017: invoke-virtual {v2, v3}, Lorg/purple/smoke/Steam;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bdce │ │ -4321c0: 0e00 |001a: return-void │ │ +432178: |[432178] org.purple.smoke.Steam$4.run:()V │ │ +432188: 7100 0bbb 0000 |0000: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +43218e: 0c00 |0003: move-result-object v0 │ │ +432190: 6e10 f8ba 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.availableSteamReaders:()I // method@baf8 │ │ +432196: 0a00 |0007: move-result v0 │ │ +432198: 7100 0bbb 0000 |0008: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +43219e: 0c01 |000b: move-result-object v1 │ │ +4321a0: 6e10 f9ba 0100 |000c: invoke-virtual {v1}, Lorg/purple/smoke/Kernel;.availableSteamWriters:()I // method@baf9 │ │ +4321a6: 0a01 |000f: move-result v1 │ │ +4321a8: 5442 475f |0010: iget-object v2, v4, Lorg/purple/smoke/Steam$4;.this$0:Lorg/purple/smoke/Steam; // field@5f47 │ │ +4321ac: 2203 191b |0012: new-instance v3, Lorg/purple/smoke/Steam$4$1; // type@1b19 │ │ +4321b0: 7040 97bd 4310 |0014: invoke-direct {v3, v4, v0, v1}, Lorg/purple/smoke/Steam$4$1;.:(Lorg/purple/smoke/Steam$4;II)V // method@bd97 │ │ +4321b6: 6e20 cebd 3200 |0017: invoke-virtual {v2, v3}, Lorg/purple/smoke/Steam;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bdce │ │ +4321bc: 0e00 |001a: return-void │ │ catches : 1 │ │ 0x0000 - 0x001a │ │ Ljava/lang/Exception; -> 0x001a │ │ positions : │ │ 0x0000 line=267 │ │ 0x0004 line=268 │ │ 0x0008 line=269 │ │ @@ -745393,20 +745392,20 @@ │ │ type : '(Lorg/purple/smoke/Steam;II)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 4 │ │ ins : 4 │ │ outs : 1 │ │ insns size : 10 16-bit code units │ │ -432258: |[432258] org.purple.smoke.Steam$6.:(Lorg/purple/smoke/Steam;II)V │ │ -432268: 5b01 495f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ -43226c: 5902 4a5f |0002: iput v2, v0, Lorg/purple/smoke/Steam$6;.val$groupId:I // field@5f4a │ │ -432270: 5903 4b5f |0004: iput v3, v0, Lorg/purple/smoke/Steam$6;.val$itemId:I // field@5f4b │ │ -432274: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43227a: 0e00 |0009: return-void │ │ +432254: |[432254] org.purple.smoke.Steam$6.:(Lorg/purple/smoke/Steam;II)V │ │ +432264: 5b01 495f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ +432268: 5902 4a5f |0002: iput v2, v0, Lorg/purple/smoke/Steam$6;.val$groupId:I // field@5f4a │ │ +43226c: 5903 4b5f |0004: iput v3, v0, Lorg/purple/smoke/Steam$6;.val$itemId:I // field@5f4b │ │ +432270: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +432276: 0e00 |0009: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=610 │ │ locals : │ │ 0x0000 - 0x000a reg=0 this Lorg/purple/smoke/Steam$6; │ │ 0x0000 - 0x000a reg=1 (null) Lorg/purple/smoke/Steam; │ │ 0x0000 - 0x000a reg=2 (null) I │ │ @@ -745418,89 +745417,89 @@ │ │ type : '(Landroid/content/DialogInterface;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 5 │ │ insns size : 150 16-bit code units │ │ -43227c: |[43227c] org.purple.smoke.Steam$6.onCancel:(Landroid/content/DialogInterface;)V │ │ -43228c: 5245 4a5f |0000: iget v5, v4, Lorg/purple/smoke/Steam$6;.val$groupId:I // field@5f4a │ │ -432290: 1a00 3ba3 |0002: const-string v0, "steam_files" // string@a33b │ │ -432294: 1a01 95a5 |0004: const-string v1, "true" // string@a595 │ │ -432298: 1a02 c463 |0006: const-string v2, "dialog_accepted" // string@63c4 │ │ -43229c: 3805 6600 |0008: if-eqz v5, 006e // +0066 │ │ -4322a0: 1213 |000a: const/4 v3, #int 1 // #1 │ │ -4322a2: 3235 3000 |000b: if-eq v5, v3, 003b // +0030 │ │ -4322a6: 1270 |000d: const/4 v0, #int 7 // #7 │ │ -4322a8: 3205 0400 |000e: if-eq v5, v0, 0012 // +0004 │ │ -4322ac: 2900 8500 |0010: goto/16 0095 // +0085 │ │ -4322b0: 5445 495f |0012: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ -4322b4: 7110 b3bd 0500 |0014: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$900:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Database; // method@bdb3 │ │ -4322ba: 0c05 |0017: move-result-object v5 │ │ -4322bc: 7100 abbd 0000 |0018: invoke-static {}, Lorg/purple/smoke/Steam;.access$1000:()Lorg/purple/smoke/Cryptography; // method@bdab │ │ -4322c2: 0c00 |001b: move-result-object v0 │ │ -4322c4: 7100 6fbd 0000 |001c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -4322ca: 0c01 |001f: move-result-object v1 │ │ -4322cc: 6e10 82bd 0100 |0020: invoke-virtual {v1}, Lorg/purple/smoke/State;.selectedSwitches:()Ljava/util/Set; // method@bd82 │ │ -4322d2: 0c01 |0023: move-result-object v1 │ │ -4322d4: 6202 6f00 |0024: sget-object v2, Landroid/os/Environment;.DIRECTORY_DOWNLOADS:Ljava/lang/String; // field@006f │ │ -4322d8: 7110 f304 0200 |0026: invoke-static {v2}, Landroid/os/Environment;.getExternalStoragePublicDirectory:(Ljava/lang/String;)Ljava/io/File; // method@04f3 │ │ -4322de: 0c02 |0029: move-result-object v2 │ │ -4322e0: 6e10 a25b 0200 |002a: invoke-virtual {v2}, Ljava/io/File;.toString:()Ljava/lang/String; // method@5ba2 │ │ -4322e6: 0c02 |002d: move-result-object v2 │ │ -4322e8: 5243 4b5f |002e: iget v3, v4, Lorg/purple/smoke/Steam$6;.val$itemId:I // field@5f4b │ │ -4322ec: 6e53 29ba 0521 |0030: invoke-virtual {v5, v0, v1, v2, v3}, Lorg/purple/smoke/Database;.steamRoll:(Lorg/purple/smoke/Cryptography;Ljava/util/Set;Ljava/lang/String;I)V // method@ba29 │ │ -4322f2: 7100 6fbd 0000 |0033: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -4322f8: 0c05 |0036: move-result-object v5 │ │ -4322fa: 6e10 67bd 0500 |0037: invoke-virtual {v5}, Lorg/purple/smoke/State;.clearSelectedSwitches:()V // method@bd67 │ │ -432300: 285b |003a: goto 0095 // +005b │ │ -432302: 7100 6fbd 0000 |003b: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -432308: 0c05 |003e: move-result-object v5 │ │ -43230a: 6e20 70bd 2500 |003f: invoke-virtual {v5, v2}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd70 │ │ -432310: 0c05 |0042: move-result-object v5 │ │ -432312: 6e20 b85c 1500 |0043: invoke-virtual {v5, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -432318: 0a05 |0046: move-result v5 │ │ -43231a: 3805 4e00 |0047: if-eqz v5, 0095 // +004e │ │ -43231e: 5445 495f |0049: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ -432322: 7110 b3bd 0500 |004b: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$900:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Database; // method@bdb3 │ │ -432328: 0c05 |004e: move-result-object v5 │ │ -43232a: 5241 4b5f |004f: iget v1, v4, Lorg/purple/smoke/Steam$6;.val$itemId:I // field@5f4b │ │ -43232e: 7110 d55c 0100 |0051: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -432334: 0c01 |0054: move-result-object v1 │ │ -432336: 6e30 e6b9 1500 |0055: invoke-virtual {v5, v1, v0}, Lorg/purple/smoke/Database;.deleteEntry:(Ljava/lang/String;Ljava/lang/String;)Z // method@b9e6 │ │ -43233c: 0a05 |0058: move-result v5 │ │ -43233e: 3805 3c00 |0059: if-eqz v5, 0095 // +003c │ │ -432342: 7100 6fbd 0000 |005b: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -432348: 0c05 |005e: move-result-object v5 │ │ -43234a: 5240 4b5f |005f: iget v0, v4, Lorg/purple/smoke/Steam$6;.val$itemId:I // field@5f4b │ │ -43234e: 6e20 7ebd 0500 |0061: invoke-virtual {v5, v0}, Lorg/purple/smoke/State;.removeSteamDetailsState:(I)V // method@bd7e │ │ -432354: 5445 495f |0064: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ -432358: 7110 acbd 0500 |0066: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; // method@bdac │ │ -43235e: 0c05 |0069: move-result-object v5 │ │ -432360: 6e10 364c 0500 |006a: invoke-virtual {v5}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -432366: 2828 |006d: goto 0095 // +0028 │ │ -432368: 7100 6fbd 0000 |006e: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -43236e: 0c05 |0071: move-result-object v5 │ │ -432370: 6e20 70bd 2500 |0072: invoke-virtual {v5, v2}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd70 │ │ -432376: 0c05 |0075: move-result-object v5 │ │ -432378: 6e20 b85c 1500 |0076: invoke-virtual {v5, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -43237e: 0a05 |0079: move-result v5 │ │ -432380: 3805 1b00 |007a: if-eqz v5, 0095 // +001b │ │ -432384: 7100 6fbd 0000 |007c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -43238a: 0c05 |007f: move-result-object v5 │ │ -43238c: 6e10 68bd 0500 |0080: invoke-virtual {v5}, Lorg/purple/smoke/State;.clearSteamDetailsStates:()V // method@bd68 │ │ -432392: 5445 495f |0083: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ -432396: 7110 b3bd 0500 |0085: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$900:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Database; // method@bdb3 │ │ -43239c: 0c05 |0088: move-result-object v5 │ │ -43239e: 6e20 e0b9 0500 |0089: invoke-virtual {v5, v0}, Lorg/purple/smoke/Database;.clearTable:(Ljava/lang/String;)V // method@b9e0 │ │ -4323a4: 5445 495f |008c: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ -4323a8: 7110 acbd 0500 |008e: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; // method@bdac │ │ -4323ae: 0c05 |0091: move-result-object v5 │ │ -4323b0: 6e10 364c 0500 |0092: invoke-virtual {v5}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -4323b6: 0e00 |0095: return-void │ │ +432278: |[432278] org.purple.smoke.Steam$6.onCancel:(Landroid/content/DialogInterface;)V │ │ +432288: 5245 4a5f |0000: iget v5, v4, Lorg/purple/smoke/Steam$6;.val$groupId:I // field@5f4a │ │ +43228c: 1a00 3ba3 |0002: const-string v0, "steam_files" // string@a33b │ │ +432290: 1a01 95a5 |0004: const-string v1, "true" // string@a595 │ │ +432294: 1a02 c463 |0006: const-string v2, "dialog_accepted" // string@63c4 │ │ +432298: 3805 6600 |0008: if-eqz v5, 006e // +0066 │ │ +43229c: 1213 |000a: const/4 v3, #int 1 // #1 │ │ +43229e: 3235 3000 |000b: if-eq v5, v3, 003b // +0030 │ │ +4322a2: 1270 |000d: const/4 v0, #int 7 // #7 │ │ +4322a4: 3205 0400 |000e: if-eq v5, v0, 0012 // +0004 │ │ +4322a8: 2900 8500 |0010: goto/16 0095 // +0085 │ │ +4322ac: 5445 495f |0012: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ +4322b0: 7110 b3bd 0500 |0014: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$900:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Database; // method@bdb3 │ │ +4322b6: 0c05 |0017: move-result-object v5 │ │ +4322b8: 7100 abbd 0000 |0018: invoke-static {}, Lorg/purple/smoke/Steam;.access$1000:()Lorg/purple/smoke/Cryptography; // method@bdab │ │ +4322be: 0c00 |001b: move-result-object v0 │ │ +4322c0: 7100 6fbd 0000 |001c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +4322c6: 0c01 |001f: move-result-object v1 │ │ +4322c8: 6e10 82bd 0100 |0020: invoke-virtual {v1}, Lorg/purple/smoke/State;.selectedSwitches:()Ljava/util/Set; // method@bd82 │ │ +4322ce: 0c01 |0023: move-result-object v1 │ │ +4322d0: 6202 6f00 |0024: sget-object v2, Landroid/os/Environment;.DIRECTORY_DOWNLOADS:Ljava/lang/String; // field@006f │ │ +4322d4: 7110 f304 0200 |0026: invoke-static {v2}, Landroid/os/Environment;.getExternalStoragePublicDirectory:(Ljava/lang/String;)Ljava/io/File; // method@04f3 │ │ +4322da: 0c02 |0029: move-result-object v2 │ │ +4322dc: 6e10 a25b 0200 |002a: invoke-virtual {v2}, Ljava/io/File;.toString:()Ljava/lang/String; // method@5ba2 │ │ +4322e2: 0c02 |002d: move-result-object v2 │ │ +4322e4: 5243 4b5f |002e: iget v3, v4, Lorg/purple/smoke/Steam$6;.val$itemId:I // field@5f4b │ │ +4322e8: 6e53 29ba 0521 |0030: invoke-virtual {v5, v0, v1, v2, v3}, Lorg/purple/smoke/Database;.steamRoll:(Lorg/purple/smoke/Cryptography;Ljava/util/Set;Ljava/lang/String;I)V // method@ba29 │ │ +4322ee: 7100 6fbd 0000 |0033: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +4322f4: 0c05 |0036: move-result-object v5 │ │ +4322f6: 6e10 67bd 0500 |0037: invoke-virtual {v5}, Lorg/purple/smoke/State;.clearSelectedSwitches:()V // method@bd67 │ │ +4322fc: 285b |003a: goto 0095 // +005b │ │ +4322fe: 7100 6fbd 0000 |003b: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +432304: 0c05 |003e: move-result-object v5 │ │ +432306: 6e20 70bd 2500 |003f: invoke-virtual {v5, v2}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd70 │ │ +43230c: 0c05 |0042: move-result-object v5 │ │ +43230e: 6e20 b85c 1500 |0043: invoke-virtual {v5, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +432314: 0a05 |0046: move-result v5 │ │ +432316: 3805 4e00 |0047: if-eqz v5, 0095 // +004e │ │ +43231a: 5445 495f |0049: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ +43231e: 7110 b3bd 0500 |004b: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$900:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Database; // method@bdb3 │ │ +432324: 0c05 |004e: move-result-object v5 │ │ +432326: 5241 4b5f |004f: iget v1, v4, Lorg/purple/smoke/Steam$6;.val$itemId:I // field@5f4b │ │ +43232a: 7110 d55c 0100 |0051: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +432330: 0c01 |0054: move-result-object v1 │ │ +432332: 6e30 e6b9 1500 |0055: invoke-virtual {v5, v1, v0}, Lorg/purple/smoke/Database;.deleteEntry:(Ljava/lang/String;Ljava/lang/String;)Z // method@b9e6 │ │ +432338: 0a05 |0058: move-result v5 │ │ +43233a: 3805 3c00 |0059: if-eqz v5, 0095 // +003c │ │ +43233e: 7100 6fbd 0000 |005b: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +432344: 0c05 |005e: move-result-object v5 │ │ +432346: 5240 4b5f |005f: iget v0, v4, Lorg/purple/smoke/Steam$6;.val$itemId:I // field@5f4b │ │ +43234a: 6e20 7ebd 0500 |0061: invoke-virtual {v5, v0}, Lorg/purple/smoke/State;.removeSteamDetailsState:(I)V // method@bd7e │ │ +432350: 5445 495f |0064: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ +432354: 7110 acbd 0500 |0066: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; // method@bdac │ │ +43235a: 0c05 |0069: move-result-object v5 │ │ +43235c: 6e10 364c 0500 |006a: invoke-virtual {v5}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +432362: 2828 |006d: goto 0095 // +0028 │ │ +432364: 7100 6fbd 0000 |006e: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +43236a: 0c05 |0071: move-result-object v5 │ │ +43236c: 6e20 70bd 2500 |0072: invoke-virtual {v5, v2}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd70 │ │ +432372: 0c05 |0075: move-result-object v5 │ │ +432374: 6e20 b85c 1500 |0076: invoke-virtual {v5, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +43237a: 0a05 |0079: move-result v5 │ │ +43237c: 3805 1b00 |007a: if-eqz v5, 0095 // +001b │ │ +432380: 7100 6fbd 0000 |007c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +432386: 0c05 |007f: move-result-object v5 │ │ +432388: 6e10 68bd 0500 |0080: invoke-virtual {v5}, Lorg/purple/smoke/State;.clearSteamDetailsStates:()V // method@bd68 │ │ +43238e: 5445 495f |0083: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ +432392: 7110 b3bd 0500 |0085: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$900:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Database; // method@bdb3 │ │ +432398: 0c05 |0088: move-result-object v5 │ │ +43239a: 6e20 e0b9 0500 |0089: invoke-virtual {v5, v0}, Lorg/purple/smoke/Database;.clearTable:(Ljava/lang/String;)V // method@b9e0 │ │ +4323a0: 5445 495f |008c: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ +4323a4: 7110 acbd 0500 |008e: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; // method@bdac │ │ +4323aa: 0c05 |0091: move-result-object v5 │ │ +4323ac: 6e10 364c 0500 |0092: invoke-virtual {v5}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +4323b2: 0e00 |0095: return-void │ │ catches : 2 │ │ 0x0049 - 0x006d │ │ Ljava/lang/Exception; -> 0x0095 │ │ 0x007c - 0x0095 │ │ Ljava/lang/Exception; -> 0x0095 │ │ positions : │ │ 0x0000 line=613 │ │ @@ -745601,17 +745600,17 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -4323d0: |[4323d0] org.purple.smoke.Steam$ContextMenuEnumerator.:()V │ │ -4323e0: 7010 8f5c 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -4323e6: 0e00 |0003: return-void │ │ +4323cc: |[4323cc] org.purple.smoke.Steam$ContextMenuEnumerator.:()V │ │ +4323dc: 7010 8f5c 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +4323e2: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=149 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lorg/purple/smoke/Steam$ContextMenuEnumerator; │ │ │ │ Virtual methods - │ │ @@ -745649,18 +745648,18 @@ │ │ type : '(Lorg/purple/smoke/Steam;)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -4323e8: |[4323e8] org.purple.smoke.Steam$SteamBroadcastReceiver.:(Lorg/purple/smoke/Steam;)V │ │ -4323f8: 5b01 555f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ -4323fc: 7010 4201 0000 |0002: invoke-direct {v0}, Landroid/content/BroadcastReceiver;.:()V // method@0142 │ │ -432402: 0e00 |0005: return-void │ │ +4323e4: |[4323e4] org.purple.smoke.Steam$SteamBroadcastReceiver.:(Lorg/purple/smoke/Steam;)V │ │ +4323f4: 5b01 555f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ +4323f8: 7010 4201 0000 |0002: invoke-direct {v0}, Landroid/content/BroadcastReceiver;.:()V // method@0142 │ │ +4323fe: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=62 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Steam$SteamBroadcastReceiver; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Steam; │ │ │ │ @@ -745670,114 +745669,114 @@ │ │ type : '(Landroid/content/Context;Landroid/content/Intent;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 228 16-bit code units │ │ -432404: |[432404] org.purple.smoke.Steam$SteamBroadcastReceiver.onReceive:(Landroid/content/Context;Landroid/content/Intent;)V │ │ -432414: 3804 ad00 |0000: if-eqz v4, 00ad // +00ad │ │ -432418: 6e10 a501 0400 |0002: invoke-virtual {v4}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ -43241e: 0c03 |0005: move-result-object v3 │ │ -432420: 3903 0400 |0006: if-nez v3, 000a // +0004 │ │ -432424: 2900 a500 |0008: goto/16 00ad // +00a5 │ │ -432428: 6e10 a501 0400 |000a: invoke-virtual {v4}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ -43242e: 0c03 |000d: move-result-object v3 │ │ -432430: 6e10 bf5c 0300 |000e: invoke-virtual {v3}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -432436: 12f0 |0011: const/4 v0, #int -1 // #ff │ │ -432438: 6e10 bf5c 0300 |0012: invoke-virtual {v3}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -43243e: 0a01 |0015: move-result v1 │ │ -432440: 2c01 9800 0000 |0016: sparse-switch v1, 000000ae // +00000098 │ │ -432446: 2900 5900 |0019: goto/16 0072 // +0059 │ │ -43244a: 1a01 0892 |001b: const-string v1, "org.purple.smoke.state_participants_populated" // string@9208 │ │ -43244e: 6e20 b85c 1300 |001d: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -432454: 0a03 |0020: move-result v3 │ │ -432456: 3903 0300 |0021: if-nez v3, 0024 // +0003 │ │ -43245a: 284f |0023: goto 0072 // +004f │ │ -43245c: 1270 |0024: const/4 v0, #int 7 // #7 │ │ -43245e: 284d |0025: goto 0072 // +004d │ │ -432460: 1a01 0b92 |0026: const-string v1, "org.purple.smoke.steam_status" // string@920b │ │ -432464: 6e20 b85c 1300 |0028: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -43246a: 0a03 |002b: move-result v3 │ │ -43246c: 3903 0300 |002c: if-nez v3, 002f // +0003 │ │ -432470: 2844 |002e: goto 0072 // +0044 │ │ -432472: 1260 |002f: const/4 v0, #int 6 // #6 │ │ -432474: 2842 |0030: goto 0072 // +0042 │ │ -432476: 1a01 ff91 |0031: const-string v1, "org.purple.smoke.network_connected" // string@91ff │ │ -43247a: 6e20 b85c 1300 |0033: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -432480: 0a03 |0036: move-result v3 │ │ -432482: 3903 0300 |0037: if-nez v3, 003a // +0003 │ │ -432486: 2839 |0039: goto 0072 // +0039 │ │ -432488: 1250 |003a: const/4 v0, #int 5 // #5 │ │ -43248a: 2837 |003b: goto 0072 // +0037 │ │ -43248c: 1a01 f491 |003c: const-string v1, "org.purple.smoke.chat_message" // string@91f4 │ │ -432490: 6e20 b85c 1300 |003e: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -432496: 0a03 |0041: move-result v3 │ │ -432498: 3903 0300 |0042: if-nez v3, 0045 // +0003 │ │ -43249c: 282e |0044: goto 0072 // +002e │ │ -43249e: 1240 |0045: const/4 v0, #int 4 // #4 │ │ -4324a0: 282c |0046: goto 0072 // +002c │ │ -4324a2: 1a01 0c92 |0047: const-string v1, "org.purple.smoke.time" // string@920c │ │ -4324a6: 6e20 b85c 1300 |0049: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4324ac: 0a03 |004c: move-result v3 │ │ -4324ae: 3903 0300 |004d: if-nez v3, 0050 // +0003 │ │ -4324b2: 2823 |004f: goto 0072 // +0023 │ │ -4324b4: 1230 |0050: const/4 v0, #int 3 // #3 │ │ -4324b6: 2821 |0051: goto 0072 // +0021 │ │ -4324b8: 1a01 0992 |0052: const-string v1, "org.purple.smoke.steam_added" // string@9209 │ │ -4324bc: 6e20 b85c 1300 |0054: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4324c2: 0a03 |0057: move-result v3 │ │ -4324c4: 3903 0300 |0058: if-nez v3, 005b // +0003 │ │ -4324c8: 2818 |005a: goto 0072 // +0018 │ │ -4324ca: 1220 |005b: const/4 v0, #int 2 // #2 │ │ -4324cc: 2816 |005c: goto 0072 // +0016 │ │ -4324ce: 1a01 fd91 |005d: const-string v1, "org.purple.smoke.neighbor_connected" // string@91fd │ │ -4324d2: 6e20 b85c 1300 |005f: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4324d8: 0a03 |0062: move-result v3 │ │ -4324da: 3903 0300 |0063: if-nez v3, 0066 // +0003 │ │ -4324de: 280d |0065: goto 0072 // +000d │ │ -4324e0: 1210 |0066: const/4 v0, #int 1 // #1 │ │ -4324e2: 280b |0067: goto 0072 // +000b │ │ -4324e4: 1a01 0092 |0068: const-string v1, "org.purple.smoke.network_disconnected" // string@9200 │ │ -4324e8: 6e20 b85c 1300 |006a: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4324ee: 0a03 |006d: move-result v3 │ │ -4324f0: 3903 0300 |006e: if-nez v3, 0071 // +0003 │ │ -4324f4: 2802 |0070: goto 0072 // +0002 │ │ -4324f6: 1200 |0071: const/4 v0, #int 0 // #0 │ │ -4324f8: 1403 9900 087f |0072: const v3, #float 1.80778e+38 // #7f080099 │ │ -4324fe: 2b00 5b00 0000 |0075: packed-switch v0, 000000d0 // +0000005b │ │ -432504: 2835 |0078: goto 00ad // +0035 │ │ -432506: 5423 555f |0079: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ -43250a: 6e10 babd 0300 |007b: invoke-virtual {v3}, Lorg/purple/smoke/Steam;.invalidateOptionsMenu:()V // method@bdba │ │ -432510: 5423 555f |007e: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ -432514: 7110 aabd 0300 |0080: invoke-static {v3}, Lorg/purple/smoke/Steam;.access$100:(Lorg/purple/smoke/Steam;)V // method@bdaa │ │ -43251a: 282a |0083: goto 00ad // +002a │ │ -43251c: 5420 555f |0084: iget-object v0, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ -432520: 6e20 b4bd 3000 |0086: invoke-virtual {v0, v3}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ -432526: 0c03 |0089: move-result-object v3 │ │ -432528: 7130 f6bb 4003 |008a: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbf6 │ │ -43252e: 2820 |008d: goto 00ad // +0020 │ │ -432530: 5420 555f |008e: iget-object v0, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ -432534: 6e20 b4bd 3000 |0090: invoke-virtual {v0, v3}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ -43253a: 0c03 |0093: move-result-object v3 │ │ -43253c: 7130 f6bb 4003 |0094: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbf6 │ │ -432542: 2816 |0097: goto 00ad // +0016 │ │ -432544: 5423 555f |0098: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ -432548: 7110 acbd 0300 |009a: invoke-static {v3}, Lorg/purple/smoke/Steam;.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; // method@bdac │ │ -43254e: 0c03 |009d: move-result-object v3 │ │ -432550: 6e10 364c 0300 |009e: invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -432556: 280c |00a1: goto 00ad // +000c │ │ -432558: 5423 555f |00a2: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ -43255c: 7110 a9bd 0300 |00a4: invoke-static {v3}, Lorg/purple/smoke/Steam;.access$000:(Lorg/purple/smoke/Steam;)V // method@bda9 │ │ -432562: 2806 |00a7: goto 00ad // +0006 │ │ -432564: 5423 555f |00a8: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ -432568: 7110 a9bd 0300 |00aa: invoke-static {v3}, Lorg/purple/smoke/Steam;.access$000:(Lorg/purple/smoke/Steam;)V // method@bda9 │ │ -43256e: 0e00 |00ad: return-void │ │ -432570: 0002 0800 b350 d3ac c38f deb3 6a4d ... |00ae: sparse-switch-data (34 units) │ │ -4325b4: 0001 0800 0000 0000 3300 0000 2d00 ... |00d0: packed-switch-data (20 units) │ │ +432400: |[432400] org.purple.smoke.Steam$SteamBroadcastReceiver.onReceive:(Landroid/content/Context;Landroid/content/Intent;)V │ │ +432410: 3804 ad00 |0000: if-eqz v4, 00ad // +00ad │ │ +432414: 6e10 a501 0400 |0002: invoke-virtual {v4}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ +43241a: 0c03 |0005: move-result-object v3 │ │ +43241c: 3903 0400 |0006: if-nez v3, 000a // +0004 │ │ +432420: 2900 a500 |0008: goto/16 00ad // +00a5 │ │ +432424: 6e10 a501 0400 |000a: invoke-virtual {v4}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ +43242a: 0c03 |000d: move-result-object v3 │ │ +43242c: 6e10 bf5c 0300 |000e: invoke-virtual {v3}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +432432: 12f0 |0011: const/4 v0, #int -1 // #ff │ │ +432434: 6e10 bf5c 0300 |0012: invoke-virtual {v3}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +43243a: 0a01 |0015: move-result v1 │ │ +43243c: 2c01 9800 0000 |0016: sparse-switch v1, 000000ae // +00000098 │ │ +432442: 2900 5900 |0019: goto/16 0072 // +0059 │ │ +432446: 1a01 0892 |001b: const-string v1, "org.purple.smoke.state_participants_populated" // string@9208 │ │ +43244a: 6e20 b85c 1300 |001d: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +432450: 0a03 |0020: move-result v3 │ │ +432452: 3903 0300 |0021: if-nez v3, 0024 // +0003 │ │ +432456: 284f |0023: goto 0072 // +004f │ │ +432458: 1270 |0024: const/4 v0, #int 7 // #7 │ │ +43245a: 284d |0025: goto 0072 // +004d │ │ +43245c: 1a01 0b92 |0026: const-string v1, "org.purple.smoke.steam_status" // string@920b │ │ +432460: 6e20 b85c 1300 |0028: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +432466: 0a03 |002b: move-result v3 │ │ +432468: 3903 0300 |002c: if-nez v3, 002f // +0003 │ │ +43246c: 2844 |002e: goto 0072 // +0044 │ │ +43246e: 1260 |002f: const/4 v0, #int 6 // #6 │ │ +432470: 2842 |0030: goto 0072 // +0042 │ │ +432472: 1a01 ff91 |0031: const-string v1, "org.purple.smoke.network_connected" // string@91ff │ │ +432476: 6e20 b85c 1300 |0033: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +43247c: 0a03 |0036: move-result v3 │ │ +43247e: 3903 0300 |0037: if-nez v3, 003a // +0003 │ │ +432482: 2839 |0039: goto 0072 // +0039 │ │ +432484: 1250 |003a: const/4 v0, #int 5 // #5 │ │ +432486: 2837 |003b: goto 0072 // +0037 │ │ +432488: 1a01 f491 |003c: const-string v1, "org.purple.smoke.chat_message" // string@91f4 │ │ +43248c: 6e20 b85c 1300 |003e: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +432492: 0a03 |0041: move-result v3 │ │ +432494: 3903 0300 |0042: if-nez v3, 0045 // +0003 │ │ +432498: 282e |0044: goto 0072 // +002e │ │ +43249a: 1240 |0045: const/4 v0, #int 4 // #4 │ │ +43249c: 282c |0046: goto 0072 // +002c │ │ +43249e: 1a01 0c92 |0047: const-string v1, "org.purple.smoke.time" // string@920c │ │ +4324a2: 6e20 b85c 1300 |0049: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4324a8: 0a03 |004c: move-result v3 │ │ +4324aa: 3903 0300 |004d: if-nez v3, 0050 // +0003 │ │ +4324ae: 2823 |004f: goto 0072 // +0023 │ │ +4324b0: 1230 |0050: const/4 v0, #int 3 // #3 │ │ +4324b2: 2821 |0051: goto 0072 // +0021 │ │ +4324b4: 1a01 0992 |0052: const-string v1, "org.purple.smoke.steam_added" // string@9209 │ │ +4324b8: 6e20 b85c 1300 |0054: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4324be: 0a03 |0057: move-result v3 │ │ +4324c0: 3903 0300 |0058: if-nez v3, 005b // +0003 │ │ +4324c4: 2818 |005a: goto 0072 // +0018 │ │ +4324c6: 1220 |005b: const/4 v0, #int 2 // #2 │ │ +4324c8: 2816 |005c: goto 0072 // +0016 │ │ +4324ca: 1a01 fd91 |005d: const-string v1, "org.purple.smoke.neighbor_connected" // string@91fd │ │ +4324ce: 6e20 b85c 1300 |005f: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4324d4: 0a03 |0062: move-result v3 │ │ +4324d6: 3903 0300 |0063: if-nez v3, 0066 // +0003 │ │ +4324da: 280d |0065: goto 0072 // +000d │ │ +4324dc: 1210 |0066: const/4 v0, #int 1 // #1 │ │ +4324de: 280b |0067: goto 0072 // +000b │ │ +4324e0: 1a01 0092 |0068: const-string v1, "org.purple.smoke.network_disconnected" // string@9200 │ │ +4324e4: 6e20 b85c 1300 |006a: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4324ea: 0a03 |006d: move-result v3 │ │ +4324ec: 3903 0300 |006e: if-nez v3, 0071 // +0003 │ │ +4324f0: 2802 |0070: goto 0072 // +0002 │ │ +4324f2: 1200 |0071: const/4 v0, #int 0 // #0 │ │ +4324f4: 1403 9900 087f |0072: const v3, #float 1.80778e+38 // #7f080099 │ │ +4324fa: 2b00 5b00 0000 |0075: packed-switch v0, 000000d0 // +0000005b │ │ +432500: 2835 |0078: goto 00ad // +0035 │ │ +432502: 5423 555f |0079: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ +432506: 6e10 babd 0300 |007b: invoke-virtual {v3}, Lorg/purple/smoke/Steam;.invalidateOptionsMenu:()V // method@bdba │ │ +43250c: 5423 555f |007e: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ +432510: 7110 aabd 0300 |0080: invoke-static {v3}, Lorg/purple/smoke/Steam;.access$100:(Lorg/purple/smoke/Steam;)V // method@bdaa │ │ +432516: 282a |0083: goto 00ad // +002a │ │ +432518: 5420 555f |0084: iget-object v0, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ +43251c: 6e20 b4bd 3000 |0086: invoke-virtual {v0, v3}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ +432522: 0c03 |0089: move-result-object v3 │ │ +432524: 7130 f6bb 4003 |008a: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbf6 │ │ +43252a: 2820 |008d: goto 00ad // +0020 │ │ +43252c: 5420 555f |008e: iget-object v0, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ +432530: 6e20 b4bd 3000 |0090: invoke-virtual {v0, v3}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ +432536: 0c03 |0093: move-result-object v3 │ │ +432538: 7130 f6bb 4003 |0094: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbf6 │ │ +43253e: 2816 |0097: goto 00ad // +0016 │ │ +432540: 5423 555f |0098: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ +432544: 7110 acbd 0300 |009a: invoke-static {v3}, Lorg/purple/smoke/Steam;.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; // method@bdac │ │ +43254a: 0c03 |009d: move-result-object v3 │ │ +43254c: 6e10 364c 0300 |009e: invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +432552: 280c |00a1: goto 00ad // +000c │ │ +432554: 5423 555f |00a2: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ +432558: 7110 a9bd 0300 |00a4: invoke-static {v3}, Lorg/purple/smoke/Steam;.access$000:(Lorg/purple/smoke/Steam;)V // method@bda9 │ │ +43255e: 2806 |00a7: goto 00ad // +0006 │ │ +432560: 5423 555f |00a8: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ +432564: 7110 a9bd 0300 |00aa: invoke-static {v3}, Lorg/purple/smoke/Steam;.access$000:(Lorg/purple/smoke/Steam;)V // method@bda9 │ │ +43256a: 0e00 |00ad: return-void │ │ +43256c: 0002 0800 b350 d3ac c38f deb3 6a4d ... |00ae: sparse-switch-data (34 units) │ │ +4325b0: 0001 0800 0000 0000 3300 0000 2d00 ... |00d0: packed-switch-data (20 units) │ │ catches : (none) │ │ positions : │ │ 0x0002 line=68 │ │ 0x000a line=71 │ │ 0x0079 line=85 │ │ 0x007e line=86 │ │ 0x0084 line=74 │ │ @@ -745827,18 +745826,18 @@ │ │ type : '(Lorg/purple/smoke/SteamBubble;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -432930: |[432930] org.purple.smoke.SteamBubble$1.:(Lorg/purple/smoke/SteamBubble;)V │ │ -432940: 5b01 6e5f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6e │ │ -432944: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43294a: 0e00 |0005: return-void │ │ +43292c: |[43292c] org.purple.smoke.SteamBubble$1.:(Lorg/purple/smoke/SteamBubble;)V │ │ +43293c: 5b01 6e5f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6e │ │ +432940: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +432946: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=140 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/SteamBubble$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/SteamBubble; │ │ │ │ @@ -745848,88 +745847,88 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 14 │ │ ins : 2 │ │ outs : 7 │ │ insns size : 162 16-bit code units │ │ -43294c: |[43294c] org.purple.smoke.SteamBubble$1.onClick:(Landroid/view/View;)V │ │ -43295c: 54cd 6e5f |0000: iget-object v13, v12, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6e │ │ -432960: 7110 f3bd 0d00 |0002: invoke-static {v13}, Lorg/purple/smoke/SteamBubble;.access$000:(Lorg/purple/smoke/SteamBubble;)Ljava/lang/String; // method@bdf3 │ │ -432966: 0c0d |0005: move-result-object v13 │ │ -432968: 6e10 bf5c 0d00 |0006: invoke-virtual {v13}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -43296e: 6e10 bf5c 0d00 |0009: invoke-virtual {v13}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -432974: 0a00 |000c: move-result v0 │ │ -432976: 12f1 |000d: const/4 v1, #int -1 // #ff │ │ -432978: 2c00 7c00 0000 |000e: sparse-switch v0, 0000008a // +0000007c │ │ -43297e: 2821 |0011: goto 0032 // +0021 │ │ -432980: 1a00 2593 |0012: const-string v0, "pause" // string@9325 │ │ -432984: 6e20 b85c 0d00 |0014: invoke-virtual {v13, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -43298a: 0a0d |0017: move-result v13 │ │ -43298c: 390d 0300 |0018: if-nez v13, 001b // +0003 │ │ -432990: 2818 |001a: goto 0032 // +0018 │ │ -432992: 1221 |001b: const/4 v1, #int 2 // #2 │ │ -432994: 2816 |001c: goto 0032 // +0016 │ │ -432996: 1a00 4998 |001d: const-string v0, "rewind" // string@9849 │ │ -43299a: 6e20 b85c 0d00 |001f: invoke-virtual {v13, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4329a0: 0a0d |0022: move-result v13 │ │ -4329a2: 390d 0300 |0023: if-nez v13, 0026 // +0003 │ │ -4329a6: 280d |0025: goto 0032 // +000d │ │ -4329a8: 1211 |0026: const/4 v1, #int 1 // #1 │ │ -4329aa: 280b |0027: goto 0032 // +000b │ │ -4329ac: 1a00 2598 |0028: const-string v0, "resume" // string@9825 │ │ -4329b0: 6e20 b85c 0d00 |002a: invoke-virtual {v13, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4329b6: 0a0d |002d: move-result v13 │ │ -4329b8: 390d 0300 |002e: if-nez v13, 0031 // +0003 │ │ -4329bc: 2802 |0030: goto 0032 // +0002 │ │ -4329be: 1201 |0031: const/4 v1, #int 0 // #0 │ │ -4329c0: 1a0d 0b92 |0032: const-string v13, "org.purple.smoke.steam_status" // string@920b │ │ -4329c4: 2b01 6400 0000 |0034: packed-switch v1, 00000098 // +00000064 │ │ -4329ca: 2852 |0037: goto 0089 // +0052 │ │ -4329cc: 54c0 6e5f |0038: iget-object v0, v12, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6e │ │ -4329d0: 7110 f4bd 0000 |003a: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$100:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/TextView; // method@bdf4 │ │ -4329d6: 0c00 |003d: move-result-object v0 │ │ -4329d8: 1a01 ba18 |003e: const-string v1, "ETA: stalled" // string@18ba │ │ -4329dc: 6e20 495b 1000 |0040: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -4329e2: 7100 f7bd 0000 |0043: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$400:()Lorg/purple/smoke/Database; // method@bdf7 │ │ -4329e8: 0c00 |0046: move-result-object v0 │ │ -4329ea: 7100 f5bd 0000 |0047: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$200:()Lorg/purple/smoke/Cryptography; // method@bdf5 │ │ -4329f0: 0c01 |004a: move-result-object v1 │ │ -4329f2: 54c2 6e5f |004b: iget-object v2, v12, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6e │ │ -4329f6: 7110 f6bd 0200 |004d: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdf6 │ │ -4329fc: 0a02 |0050: move-result v2 │ │ -4329fe: 1a03 2993 |0051: const-string v3, "paused" // string@9329 │ │ -432a02: 1a04 cc04 |0053: const-string v4, "0.00 B / s" // string@04cc │ │ -432a06: 6e52 41ba 1043 |0055: invoke-virtual {v0, v1, v3, v4, v2}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;I)V // method@ba41 │ │ -432a0c: 7110 f2bb 0d00 |0058: invoke-static {v13}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf2 │ │ -432a12: 282e |005b: goto 0089 // +002e │ │ -432a14: 7100 f7bd 0000 |005c: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$400:()Lorg/purple/smoke/Database; // method@bdf7 │ │ -432a1a: 0c05 |005f: move-result-object v5 │ │ -432a1c: 7100 f5bd 0000 |0060: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$200:()Lorg/purple/smoke/Cryptography; // method@bdf5 │ │ -432a22: 0c06 |0063: move-result-object v6 │ │ -432a24: 54c0 6e5f |0064: iget-object v0, v12, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6e │ │ -432a28: 7110 f6bd 0000 |0066: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdf6 │ │ -432a2e: 0a09 |0069: move-result v9 │ │ -432a30: 160a 0000 |006a: const-wide/16 v10, #int 0 // #0 │ │ -432a34: 1a07 4998 |006c: const-string v7, "rewind" // string@9849 │ │ -432a38: 1a08 cc04 |006e: const-string v8, "0.00 B / s" // string@04cc │ │ -432a3c: 7407 42ba 0500 |0070: invoke-virtual/range {v5, v6, v7, v8, v9, v10, v11}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ -432a42: 7110 f2bb 0d00 |0073: invoke-static {v13}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf2 │ │ -432a48: 2813 |0076: goto 0089 // +0013 │ │ -432a4a: 7100 f7bd 0000 |0077: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$400:()Lorg/purple/smoke/Database; // method@bdf7 │ │ -432a50: 0c00 |007a: move-result-object v0 │ │ -432a52: 54c1 6e5f |007b: iget-object v1, v12, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6e │ │ -432a56: 7110 f6bd 0100 |007d: invoke-static {v1}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdf6 │ │ -432a5c: 0a01 |0080: move-result v1 │ │ -432a5e: 1a02 66a5 |0081: const-string v2, "transferring" // string@a566 │ │ -432a62: 6e30 3fba 2001 |0083: invoke-virtual {v0, v2, v1}, Lorg/purple/smoke/Database;.writeSteamStatus:(Ljava/lang/String;I)V // method@ba3f │ │ -432a68: 7110 f2bb 0d00 |0086: invoke-static {v13}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf2 │ │ -432a6e: 0e00 |0089: return-void │ │ -432a70: 0002 0300 2dc8 4dc8 bb6c 4fc8 f625 ... |008a: sparse-switch-data (14 units) │ │ -432a8c: 0001 0300 0000 0000 4300 0000 2800 ... |0098: packed-switch-data (10 units) │ │ +432948: |[432948] org.purple.smoke.SteamBubble$1.onClick:(Landroid/view/View;)V │ │ +432958: 54cd 6e5f |0000: iget-object v13, v12, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6e │ │ +43295c: 7110 f3bd 0d00 |0002: invoke-static {v13}, Lorg/purple/smoke/SteamBubble;.access$000:(Lorg/purple/smoke/SteamBubble;)Ljava/lang/String; // method@bdf3 │ │ +432962: 0c0d |0005: move-result-object v13 │ │ +432964: 6e10 bf5c 0d00 |0006: invoke-virtual {v13}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +43296a: 6e10 bf5c 0d00 |0009: invoke-virtual {v13}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +432970: 0a00 |000c: move-result v0 │ │ +432972: 12f1 |000d: const/4 v1, #int -1 // #ff │ │ +432974: 2c00 7c00 0000 |000e: sparse-switch v0, 0000008a // +0000007c │ │ +43297a: 2821 |0011: goto 0032 // +0021 │ │ +43297c: 1a00 2593 |0012: const-string v0, "pause" // string@9325 │ │ +432980: 6e20 b85c 0d00 |0014: invoke-virtual {v13, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +432986: 0a0d |0017: move-result v13 │ │ +432988: 390d 0300 |0018: if-nez v13, 001b // +0003 │ │ +43298c: 2818 |001a: goto 0032 // +0018 │ │ +43298e: 1221 |001b: const/4 v1, #int 2 // #2 │ │ +432990: 2816 |001c: goto 0032 // +0016 │ │ +432992: 1a00 4998 |001d: const-string v0, "rewind" // string@9849 │ │ +432996: 6e20 b85c 0d00 |001f: invoke-virtual {v13, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +43299c: 0a0d |0022: move-result v13 │ │ +43299e: 390d 0300 |0023: if-nez v13, 0026 // +0003 │ │ +4329a2: 280d |0025: goto 0032 // +000d │ │ +4329a4: 1211 |0026: const/4 v1, #int 1 // #1 │ │ +4329a6: 280b |0027: goto 0032 // +000b │ │ +4329a8: 1a00 2598 |0028: const-string v0, "resume" // string@9825 │ │ +4329ac: 6e20 b85c 0d00 |002a: invoke-virtual {v13, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4329b2: 0a0d |002d: move-result v13 │ │ +4329b4: 390d 0300 |002e: if-nez v13, 0031 // +0003 │ │ +4329b8: 2802 |0030: goto 0032 // +0002 │ │ +4329ba: 1201 |0031: const/4 v1, #int 0 // #0 │ │ +4329bc: 1a0d 0b92 |0032: const-string v13, "org.purple.smoke.steam_status" // string@920b │ │ +4329c0: 2b01 6400 0000 |0034: packed-switch v1, 00000098 // +00000064 │ │ +4329c6: 2852 |0037: goto 0089 // +0052 │ │ +4329c8: 54c0 6e5f |0038: iget-object v0, v12, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6e │ │ +4329cc: 7110 f4bd 0000 |003a: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$100:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/TextView; // method@bdf4 │ │ +4329d2: 0c00 |003d: move-result-object v0 │ │ +4329d4: 1a01 ba18 |003e: const-string v1, "ETA: stalled" // string@18ba │ │ +4329d8: 6e20 495b 1000 |0040: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +4329de: 7100 f7bd 0000 |0043: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$400:()Lorg/purple/smoke/Database; // method@bdf7 │ │ +4329e4: 0c00 |0046: move-result-object v0 │ │ +4329e6: 7100 f5bd 0000 |0047: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$200:()Lorg/purple/smoke/Cryptography; // method@bdf5 │ │ +4329ec: 0c01 |004a: move-result-object v1 │ │ +4329ee: 54c2 6e5f |004b: iget-object v2, v12, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6e │ │ +4329f2: 7110 f6bd 0200 |004d: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdf6 │ │ +4329f8: 0a02 |0050: move-result v2 │ │ +4329fa: 1a03 2993 |0051: const-string v3, "paused" // string@9329 │ │ +4329fe: 1a04 cc04 |0053: const-string v4, "0.00 B / s" // string@04cc │ │ +432a02: 6e52 41ba 1043 |0055: invoke-virtual {v0, v1, v3, v4, v2}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;I)V // method@ba41 │ │ +432a08: 7110 f2bb 0d00 |0058: invoke-static {v13}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf2 │ │ +432a0e: 282e |005b: goto 0089 // +002e │ │ +432a10: 7100 f7bd 0000 |005c: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$400:()Lorg/purple/smoke/Database; // method@bdf7 │ │ +432a16: 0c05 |005f: move-result-object v5 │ │ +432a18: 7100 f5bd 0000 |0060: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$200:()Lorg/purple/smoke/Cryptography; // method@bdf5 │ │ +432a1e: 0c06 |0063: move-result-object v6 │ │ +432a20: 54c0 6e5f |0064: iget-object v0, v12, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6e │ │ +432a24: 7110 f6bd 0000 |0066: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdf6 │ │ +432a2a: 0a09 |0069: move-result v9 │ │ +432a2c: 160a 0000 |006a: const-wide/16 v10, #int 0 // #0 │ │ +432a30: 1a07 4998 |006c: const-string v7, "rewind" // string@9849 │ │ +432a34: 1a08 cc04 |006e: const-string v8, "0.00 B / s" // string@04cc │ │ +432a38: 7407 42ba 0500 |0070: invoke-virtual/range {v5, v6, v7, v8, v9, v10, v11}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ +432a3e: 7110 f2bb 0d00 |0073: invoke-static {v13}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf2 │ │ +432a44: 2813 |0076: goto 0089 // +0013 │ │ +432a46: 7100 f7bd 0000 |0077: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$400:()Lorg/purple/smoke/Database; // method@bdf7 │ │ +432a4c: 0c00 |007a: move-result-object v0 │ │ +432a4e: 54c1 6e5f |007b: iget-object v1, v12, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6e │ │ +432a52: 7110 f6bd 0100 |007d: invoke-static {v1}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdf6 │ │ +432a58: 0a01 |0080: move-result v1 │ │ +432a5a: 1a02 66a5 |0081: const-string v2, "transferring" // string@a566 │ │ +432a5e: 6e30 3fba 2001 |0083: invoke-virtual {v0, v2, v1}, Lorg/purple/smoke/Database;.writeSteamStatus:(Ljava/lang/String;I)V // method@ba3f │ │ +432a64: 7110 f2bb 0d00 |0086: invoke-static {v13}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf2 │ │ +432a6a: 0e00 |0089: return-void │ │ +432a6c: 0002 0300 2dc8 4dc8 bb6c 4fc8 f625 ... |008a: sparse-switch-data (14 units) │ │ +432a88: 0001 0300 0000 0000 4300 0000 2800 ... |0098: packed-switch-data (10 units) │ │ catches : (none) │ │ positions : │ │ 0x0000 line=143 │ │ 0x0038 line=146 │ │ 0x0043 line=147 │ │ 0x0047 line=148 │ │ 0x0058 line=150 │ │ @@ -745979,18 +745978,18 @@ │ │ type : '(Lorg/purple/smoke/SteamBubble;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -432aa0: |[432aa0] org.purple.smoke.SteamBubble$2.:(Lorg/purple/smoke/SteamBubble;)V │ │ -432ab0: 5b01 6f5f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ -432ab4: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -432aba: 0e00 |0005: return-void │ │ +432a9c: |[432a9c] org.purple.smoke.SteamBubble$2.:(Lorg/purple/smoke/SteamBubble;)V │ │ +432aac: 5b01 6f5f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ +432ab0: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +432ab6: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=176 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/SteamBubble$2; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/SteamBubble; │ │ │ │ @@ -746000,42 +745999,42 @@ │ │ type : '(Landroid/widget/CompoundButton;Z)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 56 16-bit code units │ │ -432abc: |[432abc] org.purple.smoke.SteamBubble$2.onCheckedChanged:(Landroid/widget/CompoundButton;Z)V │ │ -432acc: 7100 6fbd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -432ad2: 0c02 |0003: move-result-object v2 │ │ -432ad4: 5410 6f5f |0004: iget-object v0, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ -432ad8: 7110 f6bd 0000 |0006: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdf6 │ │ -432ade: 0a00 |0009: move-result v0 │ │ -432ae0: 6e30 8abd 3200 |000a: invoke-virtual {v2, v3, v0}, Lorg/purple/smoke/State;.setSteamDetailsState:(ZI)V // method@bd8a │ │ -432ae6: 3803 1600 |000d: if-eqz v3, 0023 // +0016 │ │ -432aea: 5412 6f5f |000f: iget-object v2, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ -432aee: 7110 f8bd 0200 |0011: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$500:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; // method@bdf8 │ │ -432af4: 0c02 |0014: move-result-object v2 │ │ -432af6: 1203 |0015: const/4 v3, #int 0 // #0 │ │ -432af8: 6e20 e859 3200 |0016: invoke-virtual {v2, v3}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ -432afe: 5412 6f5f |0019: iget-object v2, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ -432b02: 7110 f9bd 0200 |001b: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$600:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; // method@bdf9 │ │ -432b08: 0c02 |001e: move-result-object v2 │ │ -432b0a: 6e20 e859 3200 |001f: invoke-virtual {v2, v3}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ -432b10: 2815 |0022: goto 0037 // +0015 │ │ -432b12: 5412 6f5f |0023: iget-object v2, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ -432b16: 7110 f8bd 0200 |0025: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$500:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; // method@bdf8 │ │ -432b1c: 0c02 |0028: move-result-object v2 │ │ -432b1e: 1303 0800 |0029: const/16 v3, #int 8 // #8 │ │ -432b22: 6e20 e859 3200 |002b: invoke-virtual {v2, v3}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ -432b28: 5412 6f5f |002e: iget-object v2, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ -432b2c: 7110 f9bd 0200 |0030: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$600:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; // method@bdf9 │ │ -432b32: 0c02 |0033: move-result-object v2 │ │ -432b34: 6e20 e859 3200 |0034: invoke-virtual {v2, v3}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ -432b3a: 0e00 |0037: return-void │ │ +432ab8: |[432ab8] org.purple.smoke.SteamBubble$2.onCheckedChanged:(Landroid/widget/CompoundButton;Z)V │ │ +432ac8: 7100 6fbd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +432ace: 0c02 |0003: move-result-object v2 │ │ +432ad0: 5410 6f5f |0004: iget-object v0, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ +432ad4: 7110 f6bd 0000 |0006: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdf6 │ │ +432ada: 0a00 |0009: move-result v0 │ │ +432adc: 6e30 8abd 3200 |000a: invoke-virtual {v2, v3, v0}, Lorg/purple/smoke/State;.setSteamDetailsState:(ZI)V // method@bd8a │ │ +432ae2: 3803 1600 |000d: if-eqz v3, 0023 // +0016 │ │ +432ae6: 5412 6f5f |000f: iget-object v2, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ +432aea: 7110 f8bd 0200 |0011: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$500:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; // method@bdf8 │ │ +432af0: 0c02 |0014: move-result-object v2 │ │ +432af2: 1203 |0015: const/4 v3, #int 0 // #0 │ │ +432af4: 6e20 e859 3200 |0016: invoke-virtual {v2, v3}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ +432afa: 5412 6f5f |0019: iget-object v2, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ +432afe: 7110 f9bd 0200 |001b: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$600:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; // method@bdf9 │ │ +432b04: 0c02 |001e: move-result-object v2 │ │ +432b06: 6e20 e859 3200 |001f: invoke-virtual {v2, v3}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ +432b0c: 2815 |0022: goto 0037 // +0015 │ │ +432b0e: 5412 6f5f |0023: iget-object v2, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ +432b12: 7110 f8bd 0200 |0025: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$500:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; // method@bdf8 │ │ +432b18: 0c02 |0028: move-result-object v2 │ │ +432b1a: 1303 0800 |0029: const/16 v3, #int 8 // #8 │ │ +432b1e: 6e20 e859 3200 |002b: invoke-virtual {v2, v3}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ +432b24: 5412 6f5f |002e: iget-object v2, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ +432b28: 7110 f9bd 0200 |0030: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$600:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; // method@bdf9 │ │ +432b2e: 0c02 |0033: move-result-object v2 │ │ +432b30: 6e20 e859 3200 |0034: invoke-virtual {v2, v3}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ +432b36: 0e00 |0037: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=181 │ │ 0x000f line=185 │ │ 0x0019 line=186 │ │ 0x0023 line=190 │ │ 0x002e line=191 │ │ @@ -746079,18 +746078,18 @@ │ │ type : '(Lorg/purple/smoke/SteamBubble;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -432b3c: |[432b3c] org.purple.smoke.SteamBubble$3.:(Lorg/purple/smoke/SteamBubble;)V │ │ -432b4c: 5b01 705f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamBubble$3;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f70 │ │ -432b50: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -432b56: 0e00 |0005: return-void │ │ +432b38: |[432b38] org.purple.smoke.SteamBubble$3.:(Lorg/purple/smoke/SteamBubble;)V │ │ +432b48: 5b01 705f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamBubble$3;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f70 │ │ +432b4c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +432b52: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=213 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/SteamBubble$3; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/SteamBubble; │ │ │ │ @@ -746100,20 +746099,20 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 10 16-bit code units │ │ -432b58: |[432b58] org.purple.smoke.SteamBubble$3.onClick:(Landroid/view/View;)V │ │ -432b68: 5410 705f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamBubble$3;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f70 │ │ -432b6c: 7110 fabd 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$700:(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Steam; // method@bdfa │ │ -432b72: 0c00 |0005: move-result-object v0 │ │ -432b74: 6e20 d3bd 2000 |0006: invoke-virtual {v0, v2}, Lorg/purple/smoke/Steam;.showContextMenu:(Landroid/view/View;)V // method@bdd3 │ │ -432b7a: 0e00 |0009: return-void │ │ +432b54: |[432b54] org.purple.smoke.SteamBubble$3.onClick:(Landroid/view/View;)V │ │ +432b64: 5410 705f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamBubble$3;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f70 │ │ +432b68: 7110 fabd 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$700:(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Steam; // method@bdfa │ │ +432b6e: 0c00 |0005: move-result-object v0 │ │ +432b70: 6e20 d3bd 2000 |0006: invoke-virtual {v0, v2}, Lorg/purple/smoke/Steam;.showContextMenu:(Landroid/view/View;)V // method@bdd3 │ │ +432b76: 0e00 |0009: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=216 │ │ locals : │ │ 0x0000 - 0x000a reg=1 this Lorg/purple/smoke/SteamBubble$3; │ │ 0x0000 - 0x000a reg=2 (null) Landroid/view/View; │ │ │ │ @@ -746152,18 +746151,18 @@ │ │ type : '(Lorg/purple/smoke/SteamBubble;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -432b7c: |[432b7c] org.purple.smoke.SteamBubble$4.:(Lorg/purple/smoke/SteamBubble;)V │ │ -432b8c: 5b01 715f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamBubble$4;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f71 │ │ -432b90: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -432b96: 0e00 |0005: return-void │ │ +432b78: |[432b78] org.purple.smoke.SteamBubble$4.:(Lorg/purple/smoke/SteamBubble;)V │ │ +432b88: 5b01 715f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamBubble$4;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f71 │ │ +432b8c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +432b92: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=223 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/SteamBubble$4; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/SteamBubble; │ │ │ │ @@ -746173,61 +746172,61 @@ │ │ type : '(Landroid/widget/SeekBar;IZ)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 4 │ │ outs : 4 │ │ insns size : 85 16-bit code units │ │ -432b98: |[432b98] org.purple.smoke.SteamBubble$4.onProgressChanged:(Landroid/widget/SeekBar;IZ)V │ │ -432ba8: 1234 |0000: const/4 v4, #int 3 // #3 │ │ -432baa: 1220 |0001: const/4 v0, #int 2 // #2 │ │ -432bac: 1211 |0002: const/4 v1, #int 1 // #1 │ │ -432bae: 1242 |0003: const/4 v2, #int 4 // #4 │ │ -432bb0: 3805 0b00 |0004: if-eqz v5, 000f // +000b │ │ -432bb4: 3215 0900 |0006: if-eq v5, v1, 000f // +0009 │ │ -432bb8: 3205 0700 |0008: if-eq v5, v0, 000f // +0007 │ │ -432bbc: 3245 0500 |000a: if-eq v5, v4, 000f // +0005 │ │ -432bc0: 3225 0300 |000c: if-eq v5, v2, 000f // +0003 │ │ -432bc4: 2846 |000e: goto 0054 // +0046 │ │ -432bc6: 3215 1a00 |000f: if-eq v5, v1, 0029 // +001a │ │ -432bca: 3205 1300 |0011: if-eq v5, v0, 0024 // +0013 │ │ -432bce: 3245 0c00 |0013: if-eq v5, v4, 001f // +000c │ │ -432bd2: 3225 0500 |0015: if-eq v5, v2, 001a // +0005 │ │ -432bd6: 1a04 c507 |0017: const-string v4, "4 reads / s" // string@07c5 │ │ -432bda: 2814 |0019: goto 002d // +0014 │ │ -432bdc: 1302 6400 |001a: const/16 v2, #int 100 // #64 │ │ -432be0: 1a04 6006 |001c: const-string v4, "100 reads / s" // string@0660 │ │ -432be4: 280f |001e: goto 002d // +000f │ │ -432be6: 1302 3200 |001f: const/16 v2, #int 50 // #32 │ │ -432bea: 1a04 ec07 |0021: const-string v4, "50 reads / s" // string@07ec │ │ -432bee: 280a |0023: goto 002d // +000a │ │ -432bf0: 1302 1400 |0024: const/16 v2, #int 20 // #14 │ │ -432bf4: 1a04 4007 |0026: const-string v4, "20 reads / s" // string@0740 │ │ -432bf8: 2805 |0028: goto 002d // +0005 │ │ -432bfa: 1302 0a00 |0029: const/16 v2, #int 10 // #a │ │ -432bfe: 1a04 5d06 |002b: const-string v4, "10 reads / s" // string@065d │ │ -432c02: 5435 715f |002d: iget-object v5, v3, Lorg/purple/smoke/SteamBubble$4;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f71 │ │ -432c06: 7110 fbbd 0500 |002f: invoke-static {v5}, Lorg/purple/smoke/SteamBubble;.access$800:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/TextView; // method@bdfb │ │ -432c0c: 0c05 |0032: move-result-object v5 │ │ -432c0e: 6e20 495b 4500 |0033: invoke-virtual {v5, v4}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -432c14: 3806 1e00 |0036: if-eqz v6, 0054 // +001e │ │ -432c18: 7100 f7bd 0000 |0038: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$400:()Lorg/purple/smoke/Database; // method@bdf7 │ │ -432c1e: 0c04 |003b: move-result-object v4 │ │ -432c20: 7100 f5bd 0000 |003c: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$200:()Lorg/purple/smoke/Cryptography; // method@bdf5 │ │ -432c26: 0c05 |003f: move-result-object v5 │ │ -432c28: 5436 715f |0040: iget-object v6, v3, Lorg/purple/smoke/SteamBubble$4;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f71 │ │ -432c2c: 7110 f6bd 0600 |0042: invoke-static {v6}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdf6 │ │ -432c32: 0a06 |0045: move-result v6 │ │ -432c34: 6e40 40ba 5426 |0046: invoke-virtual {v4, v5, v6, v2}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;II)V // method@ba40 │ │ -432c3a: 5434 715f |0049: iget-object v4, v3, Lorg/purple/smoke/SteamBubble$4;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f71 │ │ -432c3e: 7110 f6bd 0400 |004b: invoke-static {v4}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdf6 │ │ -432c44: 0a04 |004e: move-result v4 │ │ -432c46: 1a05 0a92 |004f: const-string v5, "org.purple.smoke.steam_read_interval_change" // string@920a │ │ -432c4a: 7130 f3bb 4502 |0051: invoke-static {v5, v4, v2}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;II)V // method@bbf3 │ │ -432c50: 0e00 |0054: return-void │ │ +432b94: |[432b94] org.purple.smoke.SteamBubble$4.onProgressChanged:(Landroid/widget/SeekBar;IZ)V │ │ +432ba4: 1234 |0000: const/4 v4, #int 3 // #3 │ │ +432ba6: 1220 |0001: const/4 v0, #int 2 // #2 │ │ +432ba8: 1211 |0002: const/4 v1, #int 1 // #1 │ │ +432baa: 1242 |0003: const/4 v2, #int 4 // #4 │ │ +432bac: 3805 0b00 |0004: if-eqz v5, 000f // +000b │ │ +432bb0: 3215 0900 |0006: if-eq v5, v1, 000f // +0009 │ │ +432bb4: 3205 0700 |0008: if-eq v5, v0, 000f // +0007 │ │ +432bb8: 3245 0500 |000a: if-eq v5, v4, 000f // +0005 │ │ +432bbc: 3225 0300 |000c: if-eq v5, v2, 000f // +0003 │ │ +432bc0: 2846 |000e: goto 0054 // +0046 │ │ +432bc2: 3215 1a00 |000f: if-eq v5, v1, 0029 // +001a │ │ +432bc6: 3205 1300 |0011: if-eq v5, v0, 0024 // +0013 │ │ +432bca: 3245 0c00 |0013: if-eq v5, v4, 001f // +000c │ │ +432bce: 3225 0500 |0015: if-eq v5, v2, 001a // +0005 │ │ +432bd2: 1a04 c507 |0017: const-string v4, "4 reads / s" // string@07c5 │ │ +432bd6: 2814 |0019: goto 002d // +0014 │ │ +432bd8: 1302 6400 |001a: const/16 v2, #int 100 // #64 │ │ +432bdc: 1a04 6006 |001c: const-string v4, "100 reads / s" // string@0660 │ │ +432be0: 280f |001e: goto 002d // +000f │ │ +432be2: 1302 3200 |001f: const/16 v2, #int 50 // #32 │ │ +432be6: 1a04 ec07 |0021: const-string v4, "50 reads / s" // string@07ec │ │ +432bea: 280a |0023: goto 002d // +000a │ │ +432bec: 1302 1400 |0024: const/16 v2, #int 20 // #14 │ │ +432bf0: 1a04 4007 |0026: const-string v4, "20 reads / s" // string@0740 │ │ +432bf4: 2805 |0028: goto 002d // +0005 │ │ +432bf6: 1302 0a00 |0029: const/16 v2, #int 10 // #a │ │ +432bfa: 1a04 5d06 |002b: const-string v4, "10 reads / s" // string@065d │ │ +432bfe: 5435 715f |002d: iget-object v5, v3, Lorg/purple/smoke/SteamBubble$4;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f71 │ │ +432c02: 7110 fbbd 0500 |002f: invoke-static {v5}, Lorg/purple/smoke/SteamBubble;.access$800:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/TextView; // method@bdfb │ │ +432c08: 0c05 |0032: move-result-object v5 │ │ +432c0a: 6e20 495b 4500 |0033: invoke-virtual {v5, v4}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +432c10: 3806 1e00 |0036: if-eqz v6, 0054 // +001e │ │ +432c14: 7100 f7bd 0000 |0038: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$400:()Lorg/purple/smoke/Database; // method@bdf7 │ │ +432c1a: 0c04 |003b: move-result-object v4 │ │ +432c1c: 7100 f5bd 0000 |003c: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$200:()Lorg/purple/smoke/Cryptography; // method@bdf5 │ │ +432c22: 0c05 |003f: move-result-object v5 │ │ +432c24: 5436 715f |0040: iget-object v6, v3, Lorg/purple/smoke/SteamBubble$4;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f71 │ │ +432c28: 7110 f6bd 0600 |0042: invoke-static {v6}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdf6 │ │ +432c2e: 0a06 |0045: move-result v6 │ │ +432c30: 6e40 40ba 5426 |0046: invoke-virtual {v4, v5, v6, v2}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;II)V // method@ba40 │ │ +432c36: 5434 715f |0049: iget-object v4, v3, Lorg/purple/smoke/SteamBubble$4;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f71 │ │ +432c3a: 7110 f6bd 0400 |004b: invoke-static {v4}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdf6 │ │ +432c40: 0a04 |004e: move-result v4 │ │ +432c42: 1a05 0a92 |004f: const-string v5, "org.purple.smoke.steam_read_interval_change" // string@920a │ │ +432c46: 7130 f3bb 4502 |0051: invoke-static {v5, v4, v2}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;II)V // method@bbf3 │ │ +432c4c: 0e00 |0054: return-void │ │ catches : (none) │ │ positions : │ │ 0x002d line=259 │ │ 0x0038 line=263 │ │ 0x003c line=264 │ │ 0x0049 line=265 │ │ 0x004b line=267 │ │ @@ -746243,31 +746242,31 @@ │ │ type : '(Landroid/widget/SeekBar;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -432c54: |[432c54] org.purple.smoke.SteamBubble$4.onStartTrackingTouch:(Landroid/widget/SeekBar;)V │ │ -432c64: 0e00 |0000: return-void │ │ +432c50: |[432c50] org.purple.smoke.SteamBubble$4.onStartTrackingTouch:(Landroid/widget/SeekBar;)V │ │ +432c60: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #2 : (in Lorg/purple/smoke/SteamBubble$4;) │ │ name : 'onStopTrackingTouch' │ │ type : '(Landroid/widget/SeekBar;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -432c68: |[432c68] org.purple.smoke.SteamBubble$4.onStopTrackingTouch:(Landroid/widget/SeekBar;)V │ │ -432c78: 0e00 |0000: return-void │ │ +432c64: |[432c64] org.purple.smoke.SteamBubble$4.onStopTrackingTouch:(Landroid/widget/SeekBar;)V │ │ +432c74: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ source_file_idx : 19583 (SteamBubble.java) │ │ │ │ Class #2743 header: │ │ @@ -746429,29 +746428,29 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 0 │ │ outs : 2 │ │ insns size : 28 16-bit code units │ │ -432ea8: |[432ea8] org.purple.smoke.SteamBubble.:()V │ │ -432eb8: 7100 8db9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ -432ebe: 0c00 |0003: move-result-object v0 │ │ -432ec0: 6900 8f5f |0004: sput-object v0, Lorg/purple/smoke/SteamBubble;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f8f │ │ -432ec4: 7100 efb9 0000 |0006: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9ef │ │ -432eca: 0c00 |0009: move-result-object v0 │ │ -432ecc: 6900 905f |000a: sput-object v0, Lorg/purple/smoke/SteamBubble;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5f90 │ │ -432ed0: 2200 a50b |000c: new-instance v0, Ljava/text/DecimalFormat; // type@0ba5 │ │ -432ed4: 1a01 cb04 |000e: const-string v1, "0.00" // string@04cb │ │ -432ed8: 7020 865f 1000 |0010: invoke-direct {v0, v1}, Ljava/text/DecimalFormat;.:(Ljava/lang/String;)V // method@5f86 │ │ -432ede: 6900 915f |0013: sput-object v0, Lorg/purple/smoke/SteamBubble;.s_decimalFormat:Ljava/text/DecimalFormat; // field@5f91 │ │ -432ee2: 7100 905f 0000 |0015: invoke-static {}, Ljava/text/NumberFormat;.getInstance:()Ljava/text/NumberFormat; // method@5f90 │ │ -432ee8: 0c00 |0018: move-result-object v0 │ │ -432eea: 6900 925f |0019: sput-object v0, Lorg/purple/smoke/SteamBubble;.s_numberFormat:Ljava/text/NumberFormat; // field@5f92 │ │ -432eee: 0e00 |001b: return-void │ │ +432ea4: |[432ea4] org.purple.smoke.SteamBubble.:()V │ │ +432eb4: 7100 8db9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ +432eba: 0c00 |0003: move-result-object v0 │ │ +432ebc: 6900 8f5f |0004: sput-object v0, Lorg/purple/smoke/SteamBubble;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f8f │ │ +432ec0: 7100 efb9 0000 |0006: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9ef │ │ +432ec6: 0c00 |0009: move-result-object v0 │ │ +432ec8: 6900 905f |000a: sput-object v0, Lorg/purple/smoke/SteamBubble;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5f90 │ │ +432ecc: 2200 a50b |000c: new-instance v0, Ljava/text/DecimalFormat; // type@0ba5 │ │ +432ed0: 1a01 cb04 |000e: const-string v1, "0.00" // string@04cb │ │ +432ed4: 7020 865f 1000 |0010: invoke-direct {v0, v1}, Ljava/text/DecimalFormat;.:(Ljava/lang/String;)V // method@5f86 │ │ +432eda: 6900 915f |0013: sput-object v0, Lorg/purple/smoke/SteamBubble;.s_decimalFormat:Ljava/text/DecimalFormat; // field@5f91 │ │ +432ede: 7100 905f 0000 |0015: invoke-static {}, Ljava/text/NumberFormat;.getInstance:()Ljava/text/NumberFormat; // method@5f90 │ │ +432ee4: 0c00 |0018: move-result-object v0 │ │ +432ee6: 6900 925f |0019: sput-object v0, Lorg/purple/smoke/SteamBubble;.s_numberFormat:Ljava/text/NumberFormat; // field@5f92 │ │ +432eea: 0e00 |001b: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=78 │ │ 0x0006 line=79 │ │ 0x000c line=80 │ │ 0x0015 line=83 │ │ locals : │ │ @@ -746461,227 +746460,227 @@ │ │ type : '(Landroid/content/Context;Lorg/purple/smoke/Steam;Landroid/view/ViewGroup;)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 6 │ │ ins : 4 │ │ outs : 4 │ │ insns size : 459 16-bit code units │ │ -432ef0: |[432ef0] org.purple.smoke.SteamBubble.:(Landroid/content/Context;Lorg/purple/smoke/Steam;Landroid/view/ViewGroup;)V │ │ -432f00: 7020 c755 3200 |0000: invoke-direct {v2, v3}, Landroid/view/View;.:(Landroid/content/Context;)V // method@55c7 │ │ -432f06: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -432f08: 5b20 735f |0004: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ -432f0c: 5b20 835f |0006: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_menuButton:Landroid/widget/ImageButton; // field@5f83 │ │ -432f10: 5b20 805f |0008: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_layoutA:Landroid/widget/LinearLayout; // field@5f80 │ │ -432f14: 5b20 815f |000a: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_layoutB:Landroid/widget/LinearLayout; // field@5f81 │ │ -432f18: 5b20 865f |000c: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f86 │ │ -432f1c: 5b20 875f |000e: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ -432f20: 5b20 8c5f |0010: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_steam:Lorg/purple/smoke/Steam; // field@5f8c │ │ -432f24: 1a01 0000 |0012: const-string v1, "" // string@0000 │ │ -432f28: 5b21 745f |0014: iput-object v1, v2, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f74 │ │ -432f2c: 5b20 765f |0016: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_details:Landroid/widget/Switch; // field@5f76 │ │ -432f30: 5b20 755f |0018: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f75 │ │ -432f34: 5b20 775f |001a: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_digest:Landroid/widget/TextView; // field@5f77 │ │ -432f38: 5b20 795f |001c: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f79 │ │ -432f3c: 5b20 7a5f |001e: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_eta:Landroid/widget/TextView; // field@5f7a │ │ -432f40: 5b20 7b5f |0020: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_fileIdentity:Landroid/widget/TextView; // field@5f7b │ │ -432f44: 5b20 7c5f |0022: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_fileName:Landroid/widget/TextView; // field@5f7c │ │ -432f48: 5b20 7d5f |0024: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_fileSize:Landroid/widget/TextView; // field@5f7d │ │ -432f4c: 5b20 7f5f |0026: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f7f │ │ -432f50: 5b20 825f |0028: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f82 │ │ -432f54: 5b20 855f |002a: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f85 │ │ -432f58: 5b20 885f |002c: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f88 │ │ -432f5c: 5b20 895f |002e: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f89 │ │ -432f60: 5b20 8b5f |0030: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_status:Landroid/widget/TextView; // field@5f8b │ │ -432f64: 5b20 8d5f |0032: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_transferRate:Landroid/widget/TextView; // field@5f8d │ │ -432f68: 5b20 785f |0034: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f78 │ │ -432f6c: 5b20 7e5f |0036: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f7e │ │ -432f70: 5b20 8a5f |0038: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_separator:Landroid/view/View; // field@5f8a │ │ -432f74: 5b20 8e5f |003a: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -432f78: 5b20 725f |003c: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_context:Ljava/lang/ref/WeakReference; // field@5f72 │ │ -432f7c: 12f0 |003e: const/4 v0, #int -1 // #ff │ │ -432f7e: 5920 845f |003f: iput v0, v2, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f84 │ │ -432f82: 2201 000b |0041: new-instance v1, Ljava/lang/ref/WeakReference; // type@0b00 │ │ -432f86: 7020 285d 3100 |0043: invoke-direct {v1, v3}, Ljava/lang/ref/WeakReference;.:(Ljava/lang/Object;)V // method@5d28 │ │ -432f8c: 5b21 725f |0046: iput-object v1, v2, Lorg/purple/smoke/SteamBubble;.m_context:Ljava/lang/ref/WeakReference; // field@5f72 │ │ -432f90: 5b24 8c5f |0048: iput-object v4, v2, Lorg/purple/smoke/SteamBubble;.m_steam:Lorg/purple/smoke/Steam; // field@5f8c │ │ -432f94: 6e10 295d 0100 |004a: invoke-virtual {v1}, Ljava/lang/ref/WeakReference;.get:()Ljava/lang/Object; // method@5d29 │ │ -432f9a: 0c03 |004d: move-result-object v3 │ │ -432f9c: 1f03 4100 |004e: check-cast v3, Landroid/content/Context; // type@0041 │ │ -432fa0: 1a04 547d |0050: const-string v4, "layout_inflater" // string@7d54 │ │ -432fa4: 6e20 7f01 4300 |0052: invoke-virtual {v3, v4}, Landroid/content/Context;.getSystemService:(Ljava/lang/String;)Ljava/lang/Object; // method@017f │ │ -432faa: 0c03 |0055: move-result-object v3 │ │ -432fac: 1f03 000a |0056: check-cast v3, Landroid/view/LayoutInflater; // type@0a00 │ │ -432fb0: 1404 4900 0a7f |0058: const v4, #float 1.83435e+38 // #7f0a0049 │ │ -432fb6: 1201 |005b: const/4 v1, #int 0 // #0 │ │ -432fb8: 6e40 5555 4315 |005c: invoke-virtual {v3, v4, v5, v1}, Landroid/view/LayoutInflater;.inflate:(ILandroid/view/ViewGroup;Z)Landroid/view/View; // method@5555 │ │ -432fbe: 0c03 |005f: move-result-object v3 │ │ -432fc0: 5b23 8e5f |0060: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -432fc4: 1404 4700 087f |0062: const v4, #float 1.80776e+38 // #7f080047 │ │ -432fca: 6e20 dd55 4300 |0065: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -432fd0: 0c03 |0068: move-result-object v3 │ │ -432fd2: 1f03 5e0a |0069: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ -432fd6: 5b23 735f |006b: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ -432fda: 2204 231b |006d: new-instance v4, Lorg/purple/smoke/SteamBubble$1; // type@1b23 │ │ -432fde: 7020 e7bd 2400 |006f: invoke-direct {v4, v2}, Lorg/purple/smoke/SteamBubble$1;.:(Lorg/purple/smoke/SteamBubble;)V // method@bde7 │ │ -432fe4: 6e20 e258 4300 |0072: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -432fea: 5423 8e5f |0075: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -432fee: 1404 5300 087f |0077: const v4, #float 1.80777e+38 // #7f080053 │ │ -432ff4: 6e20 dd55 4300 |007a: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -432ffa: 0c03 |007d: move-result-object v3 │ │ -432ffc: 1f03 970a |007e: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -433000: 5b23 755f |0080: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f75 │ │ -433004: 5423 8e5f |0082: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -433008: 1404 5400 087f |0084: const v4, #float 1.80777e+38 // #7f080054 │ │ -43300e: 6e20 dd55 4300 |0087: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433014: 0c03 |008a: move-result-object v3 │ │ -433016: 1f03 8d0a |008b: check-cast v3, Landroid/widget/Switch; // type@0a8d │ │ -43301a: 5b23 765f |008d: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_details:Landroid/widget/Switch; // field@5f76 │ │ -43301e: 2204 241b |008f: new-instance v4, Lorg/purple/smoke/SteamBubble$2; // type@1b24 │ │ -433022: 7020 e9bd 2400 |0091: invoke-direct {v4, v2}, Lorg/purple/smoke/SteamBubble$2;.:(Lorg/purple/smoke/SteamBubble;)V // method@bde9 │ │ -433028: 6e20 e25a 4300 |0094: invoke-virtual {v3, v4}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -43302e: 5423 8e5f |0097: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -433032: 1404 5500 087f |0099: const v4, #float 1.80777e+38 // #7f080055 │ │ -433038: 6e20 dd55 4300 |009c: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -43303e: 0c03 |009f: move-result-object v3 │ │ -433040: 1f03 970a |00a0: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -433044: 5b23 775f |00a2: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_digest:Landroid/widget/TextView; // field@5f77 │ │ -433048: 5423 8e5f |00a4: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -43304c: 1404 5800 087f |00a6: const v4, #float 1.80777e+38 // #7f080058 │ │ -433052: 6e20 dd55 4300 |00a9: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433058: 0c03 |00ac: move-result-object v3 │ │ -43305a: 5b23 785f |00ad: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f78 │ │ -43305e: 5423 8e5f |00af: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -433062: 1404 6300 087f |00b1: const v4, #float 1.80777e+38 // #7f080063 │ │ -433068: 6e20 dd55 4300 |00b4: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -43306e: 0c03 |00b7: move-result-object v3 │ │ -433070: 1f03 970a |00b8: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -433074: 5b23 795f |00ba: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f79 │ │ -433078: 5423 8e5f |00bc: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -43307c: 1404 6500 087f |00be: const v4, #float 1.80777e+38 // #7f080065 │ │ -433082: 6e20 dd55 4300 |00c1: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433088: 0c03 |00c4: move-result-object v3 │ │ -43308a: 1f03 970a |00c5: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -43308e: 5b23 7a5f |00c7: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_eta:Landroid/widget/TextView; // field@5f7a │ │ -433092: 5423 8e5f |00c9: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -433096: 1404 6900 087f |00cb: const v4, #float 1.80777e+38 // #7f080069 │ │ -43309c: 6e20 dd55 4300 |00ce: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -4330a2: 0c03 |00d1: move-result-object v3 │ │ -4330a4: 1f03 970a |00d2: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -4330a8: 5b23 7b5f |00d4: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_fileIdentity:Landroid/widget/TextView; // field@5f7b │ │ -4330ac: 5423 8e5f |00d6: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -4330b0: 1404 6b00 087f |00d8: const v4, #float 1.80777e+38 // #7f08006b │ │ -4330b6: 6e20 dd55 4300 |00db: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -4330bc: 0c03 |00de: move-result-object v3 │ │ -4330be: 1f03 970a |00df: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -4330c2: 5b23 7c5f |00e1: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_fileName:Landroid/widget/TextView; // field@5f7c │ │ -4330c6: 5423 8e5f |00e3: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -4330ca: 1404 6a00 087f |00e5: const v4, #float 1.80777e+38 // #7f08006a │ │ -4330d0: 6e20 dd55 4300 |00e8: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -4330d6: 0c03 |00eb: move-result-object v3 │ │ -4330d8: 1f03 970a |00ec: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -4330dc: 5b23 7d5f |00ee: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_fileSize:Landroid/widget/TextView; // field@5f7d │ │ -4330e0: 5423 8e5f |00f0: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -4330e4: 1404 8800 087f |00f2: const v4, #float 1.80778e+38 // #7f080088 │ │ -4330ea: 6e20 dd55 4300 |00f5: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -4330f0: 0c03 |00f8: move-result-object v3 │ │ -4330f2: 5b23 7e5f |00f9: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f7e │ │ -4330f6: 5423 8e5f |00fb: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -4330fa: 1404 8a00 087f |00fd: const v4, #float 1.80778e+38 // #7f08008a │ │ -433100: 6e20 dd55 4300 |0100: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433106: 0c03 |0103: move-result-object v3 │ │ -433108: 1f03 970a |0104: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -43310c: 5b23 7f5f |0106: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f7f │ │ -433110: 5423 8e5f |0108: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -433114: 1404 8d00 087f |010a: const v4, #float 1.80778e+38 // #7f08008d │ │ -43311a: 6e20 dd55 4300 |010d: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433120: 0c03 |0110: move-result-object v3 │ │ -433122: 1f03 730a |0111: check-cast v3, Landroid/widget/LinearLayout; // type@0a73 │ │ -433126: 5b23 805f |0113: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_layoutA:Landroid/widget/LinearLayout; // field@5f80 │ │ -43312a: 1304 0800 |0115: const/16 v4, #int 8 // #8 │ │ -43312e: 6e20 e859 4300 |0117: invoke-virtual {v3, v4}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ -433134: 5423 8e5f |011a: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -433138: 1405 8e00 087f |011c: const v5, #float 1.80778e+38 // #7f08008e │ │ -43313e: 6e20 dd55 5300 |011f: invoke-virtual {v3, v5}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433144: 0c03 |0122: move-result-object v3 │ │ -433146: 1f03 730a |0123: check-cast v3, Landroid/widget/LinearLayout; // type@0a73 │ │ -43314a: 5b23 815f |0125: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_layoutB:Landroid/widget/LinearLayout; // field@5f81 │ │ -43314e: 6e20 e859 4300 |0127: invoke-virtual {v3, v4}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ -433154: 5423 8e5f |012a: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -433158: 1404 9800 087f |012c: const v4, #float 1.80778e+38 // #7f080098 │ │ -43315e: 6e20 dd55 4300 |012f: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433164: 0c03 |0132: move-result-object v3 │ │ -433166: 1f03 970a |0133: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -43316a: 5b23 825f |0135: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f82 │ │ -43316e: 5423 8e5f |0137: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -433172: 1404 9c00 087f |0139: const v4, #float 1.80778e+38 // #7f08009c │ │ -433178: 6e20 dd55 4300 |013c: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -43317e: 0c03 |013f: move-result-object v3 │ │ -433180: 1f03 6f0a |0140: check-cast v3, Landroid/widget/ImageButton; // type@0a6f │ │ -433184: 5b23 835f |0142: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_menuButton:Landroid/widget/ImageButton; // field@5f83 │ │ -433188: 2204 251b |0144: new-instance v4, Lorg/purple/smoke/SteamBubble$3; // type@1b25 │ │ -43318c: 7020 ebbd 2400 |0146: invoke-direct {v4, v2}, Lorg/purple/smoke/SteamBubble$3;.:(Lorg/purple/smoke/SteamBubble;)V // method@bdeb │ │ -433192: 6e20 9059 4300 |0149: invoke-virtual {v3, v4}, Landroid/widget/ImageButton;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@5990 │ │ -433198: 5423 8e5f |014c: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -43319c: 1404 c800 087f |014e: const v4, #float 1.80779e+38 // #7f0800c8 │ │ -4331a2: 6e20 dd55 4300 |0151: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -4331a8: 0c03 |0154: move-result-object v3 │ │ -4331aa: 1f03 970a |0155: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -4331ae: 5b23 855f |0157: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f85 │ │ -4331b2: 5423 8e5f |0159: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -4331b6: 1404 cf00 087f |015b: const v4, #float 1.80779e+38 // #7f0800cf │ │ -4331bc: 6e20 dd55 4300 |015e: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -4331c2: 0c03 |0161: move-result-object v3 │ │ -4331c4: 1f03 7c0a |0162: check-cast v3, Landroid/widget/ProgressBar; // type@0a7c │ │ -4331c8: 5b23 865f |0164: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f86 │ │ -4331cc: 5423 8e5f |0166: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -4331d0: 1404 d700 087f |0168: const v4, #float 1.80779e+38 // #7f0800d7 │ │ -4331d6: 6e20 dd55 4300 |016b: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -4331dc: 0c03 |016e: move-result-object v3 │ │ -4331de: 1f03 880a |016f: check-cast v3, Landroid/widget/SeekBar; // type@0a88 │ │ -4331e2: 5b23 875f |0171: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ -4331e6: 2204 261b |0173: new-instance v4, Lorg/purple/smoke/SteamBubble$4; // type@1b26 │ │ -4331ea: 7020 edbd 2400 |0175: invoke-direct {v4, v2}, Lorg/purple/smoke/SteamBubble$4;.:(Lorg/purple/smoke/SteamBubble;)V // method@bded │ │ -4331f0: 6e20 a65a 4300 |0178: invoke-virtual {v3, v4}, Landroid/widget/SeekBar;.setOnSeekBarChangeListener:(Landroid/widget/SeekBar$OnSeekBarChangeListener;)V // method@5aa6 │ │ -4331f6: 5423 8e5f |017b: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -4331fa: 1404 d800 087f |017d: const v4, #float 1.80779e+38 // #7f0800d8 │ │ -433200: 6e20 dd55 4300 |0180: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433206: 0c03 |0183: move-result-object v3 │ │ -433208: 1f03 970a |0184: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -43320c: 5b23 885f |0186: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f88 │ │ -433210: 1a04 c507 |0188: const-string v4, "4 reads / s" // string@07c5 │ │ -433214: 6e20 495b 4300 |018a: invoke-virtual {v3, v4}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43321a: 5423 8e5f |018d: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -43321e: 1404 fd00 087f |018f: const v4, #float 1.8078e+38 // #7f0800fd │ │ -433224: 6e20 dd55 4300 |0192: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -43322a: 0c03 |0195: move-result-object v3 │ │ -43322c: 1f03 970a |0196: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -433230: 5b23 895f |0198: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f89 │ │ -433234: 5423 8e5f |019a: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -433238: 1404 fe00 087f |019c: const v4, #float 1.8078e+38 // #7f0800fe │ │ -43323e: 6e20 dd55 4300 |019f: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433244: 0c03 |01a2: move-result-object v3 │ │ -433246: 5b23 8a5f |01a3: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_separator:Landroid/view/View; // field@5f8a │ │ -43324a: 5423 8e5f |01a5: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -43324e: 1404 1a01 087f |01a7: const v4, #float 1.80781e+38 // #7f08011a │ │ -433254: 6e20 dd55 4300 |01aa: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -43325a: 0c03 |01ad: move-result-object v3 │ │ -43325c: 1f03 970a |01ae: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -433260: 5b23 8b5f |01b0: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_status:Landroid/widget/TextView; // field@5f8b │ │ -433264: 5423 8e5f |01b2: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -433268: 1404 2f01 087f |01b4: const v4, #float 1.80781e+38 // #7f08012f │ │ -43326e: 6e20 dd55 4300 |01b7: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433274: 0c03 |01ba: move-result-object v3 │ │ -433276: 1f03 970a |01bb: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -43327a: 5b23 8d5f |01bd: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_transferRate:Landroid/widget/TextView; // field@5f8d │ │ -43327e: 5423 8e5f |01bf: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -433282: 6e20 8256 0300 |01c1: invoke-virtual {v3, v0}, Landroid/view/View;.setId:(I)V // method@5682 │ │ -433288: 6203 925f |01c4: sget-object v3, Lorg/purple/smoke/SteamBubble;.s_numberFormat:Ljava/text/NumberFormat; // field@5f92 │ │ -43328c: 1214 |01c6: const/4 v4, #int 1 // #1 │ │ -43328e: 6e20 925f 4300 |01c7: invoke-virtual {v3, v4}, Ljava/text/NumberFormat;.setGroupingUsed:(Z)V // method@5f92 │ │ -433294: 0e00 |01ca: return-void │ │ +432eec: |[432eec] org.purple.smoke.SteamBubble.:(Landroid/content/Context;Lorg/purple/smoke/Steam;Landroid/view/ViewGroup;)V │ │ +432efc: 7020 c755 3200 |0000: invoke-direct {v2, v3}, Landroid/view/View;.:(Landroid/content/Context;)V // method@55c7 │ │ +432f02: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +432f04: 5b20 735f |0004: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ +432f08: 5b20 835f |0006: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_menuButton:Landroid/widget/ImageButton; // field@5f83 │ │ +432f0c: 5b20 805f |0008: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_layoutA:Landroid/widget/LinearLayout; // field@5f80 │ │ +432f10: 5b20 815f |000a: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_layoutB:Landroid/widget/LinearLayout; // field@5f81 │ │ +432f14: 5b20 865f |000c: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f86 │ │ +432f18: 5b20 875f |000e: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ +432f1c: 5b20 8c5f |0010: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_steam:Lorg/purple/smoke/Steam; // field@5f8c │ │ +432f20: 1a01 0000 |0012: const-string v1, "" // string@0000 │ │ +432f24: 5b21 745f |0014: iput-object v1, v2, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f74 │ │ +432f28: 5b20 765f |0016: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_details:Landroid/widget/Switch; // field@5f76 │ │ +432f2c: 5b20 755f |0018: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f75 │ │ +432f30: 5b20 775f |001a: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_digest:Landroid/widget/TextView; // field@5f77 │ │ +432f34: 5b20 795f |001c: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f79 │ │ +432f38: 5b20 7a5f |001e: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_eta:Landroid/widget/TextView; // field@5f7a │ │ +432f3c: 5b20 7b5f |0020: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_fileIdentity:Landroid/widget/TextView; // field@5f7b │ │ +432f40: 5b20 7c5f |0022: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_fileName:Landroid/widget/TextView; // field@5f7c │ │ +432f44: 5b20 7d5f |0024: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_fileSize:Landroid/widget/TextView; // field@5f7d │ │ +432f48: 5b20 7f5f |0026: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f7f │ │ +432f4c: 5b20 825f |0028: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f82 │ │ +432f50: 5b20 855f |002a: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f85 │ │ +432f54: 5b20 885f |002c: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f88 │ │ +432f58: 5b20 895f |002e: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f89 │ │ +432f5c: 5b20 8b5f |0030: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_status:Landroid/widget/TextView; // field@5f8b │ │ +432f60: 5b20 8d5f |0032: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_transferRate:Landroid/widget/TextView; // field@5f8d │ │ +432f64: 5b20 785f |0034: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f78 │ │ +432f68: 5b20 7e5f |0036: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f7e │ │ +432f6c: 5b20 8a5f |0038: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_separator:Landroid/view/View; // field@5f8a │ │ +432f70: 5b20 8e5f |003a: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +432f74: 5b20 725f |003c: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_context:Ljava/lang/ref/WeakReference; // field@5f72 │ │ +432f78: 12f0 |003e: const/4 v0, #int -1 // #ff │ │ +432f7a: 5920 845f |003f: iput v0, v2, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f84 │ │ +432f7e: 2201 000b |0041: new-instance v1, Ljava/lang/ref/WeakReference; // type@0b00 │ │ +432f82: 7020 285d 3100 |0043: invoke-direct {v1, v3}, Ljava/lang/ref/WeakReference;.:(Ljava/lang/Object;)V // method@5d28 │ │ +432f88: 5b21 725f |0046: iput-object v1, v2, Lorg/purple/smoke/SteamBubble;.m_context:Ljava/lang/ref/WeakReference; // field@5f72 │ │ +432f8c: 5b24 8c5f |0048: iput-object v4, v2, Lorg/purple/smoke/SteamBubble;.m_steam:Lorg/purple/smoke/Steam; // field@5f8c │ │ +432f90: 6e10 295d 0100 |004a: invoke-virtual {v1}, Ljava/lang/ref/WeakReference;.get:()Ljava/lang/Object; // method@5d29 │ │ +432f96: 0c03 |004d: move-result-object v3 │ │ +432f98: 1f03 4100 |004e: check-cast v3, Landroid/content/Context; // type@0041 │ │ +432f9c: 1a04 547d |0050: const-string v4, "layout_inflater" // string@7d54 │ │ +432fa0: 6e20 7f01 4300 |0052: invoke-virtual {v3, v4}, Landroid/content/Context;.getSystemService:(Ljava/lang/String;)Ljava/lang/Object; // method@017f │ │ +432fa6: 0c03 |0055: move-result-object v3 │ │ +432fa8: 1f03 000a |0056: check-cast v3, Landroid/view/LayoutInflater; // type@0a00 │ │ +432fac: 1404 4900 0a7f |0058: const v4, #float 1.83435e+38 // #7f0a0049 │ │ +432fb2: 1201 |005b: const/4 v1, #int 0 // #0 │ │ +432fb4: 6e40 5555 4315 |005c: invoke-virtual {v3, v4, v5, v1}, Landroid/view/LayoutInflater;.inflate:(ILandroid/view/ViewGroup;Z)Landroid/view/View; // method@5555 │ │ +432fba: 0c03 |005f: move-result-object v3 │ │ +432fbc: 5b23 8e5f |0060: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +432fc0: 1404 4700 087f |0062: const v4, #float 1.80776e+38 // #7f080047 │ │ +432fc6: 6e20 dd55 4300 |0065: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +432fcc: 0c03 |0068: move-result-object v3 │ │ +432fce: 1f03 5e0a |0069: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ +432fd2: 5b23 735f |006b: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ +432fd6: 2204 231b |006d: new-instance v4, Lorg/purple/smoke/SteamBubble$1; // type@1b23 │ │ +432fda: 7020 e7bd 2400 |006f: invoke-direct {v4, v2}, Lorg/purple/smoke/SteamBubble$1;.:(Lorg/purple/smoke/SteamBubble;)V // method@bde7 │ │ +432fe0: 6e20 e258 4300 |0072: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +432fe6: 5423 8e5f |0075: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +432fea: 1404 5300 087f |0077: const v4, #float 1.80777e+38 // #7f080053 │ │ +432ff0: 6e20 dd55 4300 |007a: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +432ff6: 0c03 |007d: move-result-object v3 │ │ +432ff8: 1f03 970a |007e: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +432ffc: 5b23 755f |0080: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f75 │ │ +433000: 5423 8e5f |0082: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +433004: 1404 5400 087f |0084: const v4, #float 1.80777e+38 // #7f080054 │ │ +43300a: 6e20 dd55 4300 |0087: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433010: 0c03 |008a: move-result-object v3 │ │ +433012: 1f03 8d0a |008b: check-cast v3, Landroid/widget/Switch; // type@0a8d │ │ +433016: 5b23 765f |008d: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_details:Landroid/widget/Switch; // field@5f76 │ │ +43301a: 2204 241b |008f: new-instance v4, Lorg/purple/smoke/SteamBubble$2; // type@1b24 │ │ +43301e: 7020 e9bd 2400 |0091: invoke-direct {v4, v2}, Lorg/purple/smoke/SteamBubble$2;.:(Lorg/purple/smoke/SteamBubble;)V // method@bde9 │ │ +433024: 6e20 e25a 4300 |0094: invoke-virtual {v3, v4}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +43302a: 5423 8e5f |0097: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +43302e: 1404 5500 087f |0099: const v4, #float 1.80777e+38 // #7f080055 │ │ +433034: 6e20 dd55 4300 |009c: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +43303a: 0c03 |009f: move-result-object v3 │ │ +43303c: 1f03 970a |00a0: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +433040: 5b23 775f |00a2: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_digest:Landroid/widget/TextView; // field@5f77 │ │ +433044: 5423 8e5f |00a4: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +433048: 1404 5800 087f |00a6: const v4, #float 1.80777e+38 // #7f080058 │ │ +43304e: 6e20 dd55 4300 |00a9: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433054: 0c03 |00ac: move-result-object v3 │ │ +433056: 5b23 785f |00ad: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f78 │ │ +43305a: 5423 8e5f |00af: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +43305e: 1404 6300 087f |00b1: const v4, #float 1.80777e+38 // #7f080063 │ │ +433064: 6e20 dd55 4300 |00b4: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +43306a: 0c03 |00b7: move-result-object v3 │ │ +43306c: 1f03 970a |00b8: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +433070: 5b23 795f |00ba: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f79 │ │ +433074: 5423 8e5f |00bc: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +433078: 1404 6500 087f |00be: const v4, #float 1.80777e+38 // #7f080065 │ │ +43307e: 6e20 dd55 4300 |00c1: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433084: 0c03 |00c4: move-result-object v3 │ │ +433086: 1f03 970a |00c5: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +43308a: 5b23 7a5f |00c7: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_eta:Landroid/widget/TextView; // field@5f7a │ │ +43308e: 5423 8e5f |00c9: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +433092: 1404 6900 087f |00cb: const v4, #float 1.80777e+38 // #7f080069 │ │ +433098: 6e20 dd55 4300 |00ce: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +43309e: 0c03 |00d1: move-result-object v3 │ │ +4330a0: 1f03 970a |00d2: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +4330a4: 5b23 7b5f |00d4: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_fileIdentity:Landroid/widget/TextView; // field@5f7b │ │ +4330a8: 5423 8e5f |00d6: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +4330ac: 1404 6b00 087f |00d8: const v4, #float 1.80777e+38 // #7f08006b │ │ +4330b2: 6e20 dd55 4300 |00db: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +4330b8: 0c03 |00de: move-result-object v3 │ │ +4330ba: 1f03 970a |00df: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +4330be: 5b23 7c5f |00e1: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_fileName:Landroid/widget/TextView; // field@5f7c │ │ +4330c2: 5423 8e5f |00e3: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +4330c6: 1404 6a00 087f |00e5: const v4, #float 1.80777e+38 // #7f08006a │ │ +4330cc: 6e20 dd55 4300 |00e8: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +4330d2: 0c03 |00eb: move-result-object v3 │ │ +4330d4: 1f03 970a |00ec: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +4330d8: 5b23 7d5f |00ee: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_fileSize:Landroid/widget/TextView; // field@5f7d │ │ +4330dc: 5423 8e5f |00f0: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +4330e0: 1404 8800 087f |00f2: const v4, #float 1.80778e+38 // #7f080088 │ │ +4330e6: 6e20 dd55 4300 |00f5: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +4330ec: 0c03 |00f8: move-result-object v3 │ │ +4330ee: 5b23 7e5f |00f9: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f7e │ │ +4330f2: 5423 8e5f |00fb: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +4330f6: 1404 8a00 087f |00fd: const v4, #float 1.80778e+38 // #7f08008a │ │ +4330fc: 6e20 dd55 4300 |0100: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433102: 0c03 |0103: move-result-object v3 │ │ +433104: 1f03 970a |0104: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +433108: 5b23 7f5f |0106: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f7f │ │ +43310c: 5423 8e5f |0108: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +433110: 1404 8d00 087f |010a: const v4, #float 1.80778e+38 // #7f08008d │ │ +433116: 6e20 dd55 4300 |010d: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +43311c: 0c03 |0110: move-result-object v3 │ │ +43311e: 1f03 730a |0111: check-cast v3, Landroid/widget/LinearLayout; // type@0a73 │ │ +433122: 5b23 805f |0113: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_layoutA:Landroid/widget/LinearLayout; // field@5f80 │ │ +433126: 1304 0800 |0115: const/16 v4, #int 8 // #8 │ │ +43312a: 6e20 e859 4300 |0117: invoke-virtual {v3, v4}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ +433130: 5423 8e5f |011a: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +433134: 1405 8e00 087f |011c: const v5, #float 1.80778e+38 // #7f08008e │ │ +43313a: 6e20 dd55 5300 |011f: invoke-virtual {v3, v5}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433140: 0c03 |0122: move-result-object v3 │ │ +433142: 1f03 730a |0123: check-cast v3, Landroid/widget/LinearLayout; // type@0a73 │ │ +433146: 5b23 815f |0125: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_layoutB:Landroid/widget/LinearLayout; // field@5f81 │ │ +43314a: 6e20 e859 4300 |0127: invoke-virtual {v3, v4}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ +433150: 5423 8e5f |012a: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +433154: 1404 9800 087f |012c: const v4, #float 1.80778e+38 // #7f080098 │ │ +43315a: 6e20 dd55 4300 |012f: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433160: 0c03 |0132: move-result-object v3 │ │ +433162: 1f03 970a |0133: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +433166: 5b23 825f |0135: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f82 │ │ +43316a: 5423 8e5f |0137: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +43316e: 1404 9c00 087f |0139: const v4, #float 1.80778e+38 // #7f08009c │ │ +433174: 6e20 dd55 4300 |013c: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +43317a: 0c03 |013f: move-result-object v3 │ │ +43317c: 1f03 6f0a |0140: check-cast v3, Landroid/widget/ImageButton; // type@0a6f │ │ +433180: 5b23 835f |0142: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_menuButton:Landroid/widget/ImageButton; // field@5f83 │ │ +433184: 2204 251b |0144: new-instance v4, Lorg/purple/smoke/SteamBubble$3; // type@1b25 │ │ +433188: 7020 ebbd 2400 |0146: invoke-direct {v4, v2}, Lorg/purple/smoke/SteamBubble$3;.:(Lorg/purple/smoke/SteamBubble;)V // method@bdeb │ │ +43318e: 6e20 9059 4300 |0149: invoke-virtual {v3, v4}, Landroid/widget/ImageButton;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@5990 │ │ +433194: 5423 8e5f |014c: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +433198: 1404 c800 087f |014e: const v4, #float 1.80779e+38 // #7f0800c8 │ │ +43319e: 6e20 dd55 4300 |0151: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +4331a4: 0c03 |0154: move-result-object v3 │ │ +4331a6: 1f03 970a |0155: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +4331aa: 5b23 855f |0157: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f85 │ │ +4331ae: 5423 8e5f |0159: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +4331b2: 1404 cf00 087f |015b: const v4, #float 1.80779e+38 // #7f0800cf │ │ +4331b8: 6e20 dd55 4300 |015e: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +4331be: 0c03 |0161: move-result-object v3 │ │ +4331c0: 1f03 7c0a |0162: check-cast v3, Landroid/widget/ProgressBar; // type@0a7c │ │ +4331c4: 5b23 865f |0164: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f86 │ │ +4331c8: 5423 8e5f |0166: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +4331cc: 1404 d700 087f |0168: const v4, #float 1.80779e+38 // #7f0800d7 │ │ +4331d2: 6e20 dd55 4300 |016b: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +4331d8: 0c03 |016e: move-result-object v3 │ │ +4331da: 1f03 880a |016f: check-cast v3, Landroid/widget/SeekBar; // type@0a88 │ │ +4331de: 5b23 875f |0171: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ +4331e2: 2204 261b |0173: new-instance v4, Lorg/purple/smoke/SteamBubble$4; // type@1b26 │ │ +4331e6: 7020 edbd 2400 |0175: invoke-direct {v4, v2}, Lorg/purple/smoke/SteamBubble$4;.:(Lorg/purple/smoke/SteamBubble;)V // method@bded │ │ +4331ec: 6e20 a65a 4300 |0178: invoke-virtual {v3, v4}, Landroid/widget/SeekBar;.setOnSeekBarChangeListener:(Landroid/widget/SeekBar$OnSeekBarChangeListener;)V // method@5aa6 │ │ +4331f2: 5423 8e5f |017b: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +4331f6: 1404 d800 087f |017d: const v4, #float 1.80779e+38 // #7f0800d8 │ │ +4331fc: 6e20 dd55 4300 |0180: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433202: 0c03 |0183: move-result-object v3 │ │ +433204: 1f03 970a |0184: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +433208: 5b23 885f |0186: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f88 │ │ +43320c: 1a04 c507 |0188: const-string v4, "4 reads / s" // string@07c5 │ │ +433210: 6e20 495b 4300 |018a: invoke-virtual {v3, v4}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433216: 5423 8e5f |018d: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +43321a: 1404 fd00 087f |018f: const v4, #float 1.8078e+38 // #7f0800fd │ │ +433220: 6e20 dd55 4300 |0192: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433226: 0c03 |0195: move-result-object v3 │ │ +433228: 1f03 970a |0196: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +43322c: 5b23 895f |0198: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f89 │ │ +433230: 5423 8e5f |019a: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +433234: 1404 fe00 087f |019c: const v4, #float 1.8078e+38 // #7f0800fe │ │ +43323a: 6e20 dd55 4300 |019f: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433240: 0c03 |01a2: move-result-object v3 │ │ +433242: 5b23 8a5f |01a3: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_separator:Landroid/view/View; // field@5f8a │ │ +433246: 5423 8e5f |01a5: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +43324a: 1404 1a01 087f |01a7: const v4, #float 1.80781e+38 // #7f08011a │ │ +433250: 6e20 dd55 4300 |01aa: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433256: 0c03 |01ad: move-result-object v3 │ │ +433258: 1f03 970a |01ae: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +43325c: 5b23 8b5f |01b0: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_status:Landroid/widget/TextView; // field@5f8b │ │ +433260: 5423 8e5f |01b2: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +433264: 1404 2f01 087f |01b4: const v4, #float 1.80781e+38 // #7f08012f │ │ +43326a: 6e20 dd55 4300 |01b7: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433270: 0c03 |01ba: move-result-object v3 │ │ +433272: 1f03 970a |01bb: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +433276: 5b23 8d5f |01bd: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_transferRate:Landroid/widget/TextView; // field@5f8d │ │ +43327a: 5423 8e5f |01bf: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +43327e: 6e20 8256 0300 |01c1: invoke-virtual {v3, v0}, Landroid/view/View;.setId:(I)V // method@5682 │ │ +433284: 6203 925f |01c4: sget-object v3, Lorg/purple/smoke/SteamBubble;.s_numberFormat:Ljava/text/NumberFormat; // field@5f92 │ │ +433288: 1214 |01c6: const/4 v4, #int 1 // #1 │ │ +43328a: 6e20 925f 4300 |01c7: invoke-virtual {v3, v4}, Ljava/text/NumberFormat;.setGroupingUsed:(Z)V // method@5f92 │ │ +433290: 0e00 |01ca: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=130 │ │ 0x0004 line=49 │ │ 0x0006 line=50 │ │ 0x0008 line=51 │ │ 0x000a line=52 │ │ @@ -746763,17 +746762,17 @@ │ │ type : '(Lorg/purple/smoke/SteamBubble;)Ljava/lang/String;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -432d0c: |[432d0c] org.purple.smoke.SteamBubble.access$000:(Lorg/purple/smoke/SteamBubble;)Ljava/lang/String; │ │ -432d1c: 5400 745f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f74 │ │ -432d20: 1100 |0002: return-object v0 │ │ +432d08: |[432d08] org.purple.smoke.SteamBubble.access$000:(Lorg/purple/smoke/SteamBubble;)Ljava/lang/String; │ │ +432d18: 5400 745f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f74 │ │ +432d1c: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=47 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamBubble; │ │ │ │ #3 : (in Lorg/purple/smoke/SteamBubble;) │ │ @@ -746781,17 +746780,17 @@ │ │ type : '(Lorg/purple/smoke/SteamBubble;)Landroid/widget/TextView;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -432cc4: |[432cc4] org.purple.smoke.SteamBubble.access$100:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/TextView; │ │ -432cd4: 5400 7a5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_eta:Landroid/widget/TextView; // field@5f7a │ │ -432cd8: 1100 |0002: return-object v0 │ │ +432cc0: |[432cc0] org.purple.smoke.SteamBubble.access$100:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/TextView; │ │ +432cd0: 5400 7a5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_eta:Landroid/widget/TextView; // field@5f7a │ │ +432cd4: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=47 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamBubble; │ │ │ │ #4 : (in Lorg/purple/smoke/SteamBubble;) │ │ @@ -746799,34 +746798,34 @@ │ │ type : '()Lorg/purple/smoke/Cryptography;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -432e60: |[432e60] org.purple.smoke.SteamBubble.access$200:()Lorg/purple/smoke/Cryptography; │ │ -432e70: 6200 8f5f |0000: sget-object v0, Lorg/purple/smoke/SteamBubble;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f8f │ │ -432e74: 1100 |0002: return-object v0 │ │ +432e5c: |[432e5c] org.purple.smoke.SteamBubble.access$200:()Lorg/purple/smoke/Cryptography; │ │ +432e6c: 6200 8f5f |0000: sget-object v0, Lorg/purple/smoke/SteamBubble;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f8f │ │ +432e70: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=47 │ │ locals : │ │ │ │ #5 : (in Lorg/purple/smoke/SteamBubble;) │ │ name : 'access$300' │ │ type : '(Lorg/purple/smoke/SteamBubble;)I' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -432cf4: |[432cf4] org.purple.smoke.SteamBubble.access$300:(Lorg/purple/smoke/SteamBubble;)I │ │ -432d04: 5200 845f |0000: iget v0, v0, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f84 │ │ -432d08: 0f00 |0002: return v0 │ │ +432cf0: |[432cf0] org.purple.smoke.SteamBubble.access$300:(Lorg/purple/smoke/SteamBubble;)I │ │ +432d00: 5200 845f |0000: iget v0, v0, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f84 │ │ +432d04: 0f00 |0002: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=47 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamBubble; │ │ │ │ #6 : (in Lorg/purple/smoke/SteamBubble;) │ │ @@ -746834,34 +746833,34 @@ │ │ type : '()Lorg/purple/smoke/Database;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -432e78: |[432e78] org.purple.smoke.SteamBubble.access$400:()Lorg/purple/smoke/Database; │ │ -432e88: 6200 905f |0000: sget-object v0, Lorg/purple/smoke/SteamBubble;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5f90 │ │ -432e8c: 1100 |0002: return-object v0 │ │ +432e74: |[432e74] org.purple.smoke.SteamBubble.access$400:()Lorg/purple/smoke/Database; │ │ +432e84: 6200 905f |0000: sget-object v0, Lorg/purple/smoke/SteamBubble;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5f90 │ │ +432e88: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=47 │ │ locals : │ │ │ │ #7 : (in Lorg/purple/smoke/SteamBubble;) │ │ name : 'access$500' │ │ type : '(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -432c94: |[432c94] org.purple.smoke.SteamBubble.access$500:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; │ │ -432ca4: 5400 805f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_layoutA:Landroid/widget/LinearLayout; // field@5f80 │ │ -432ca8: 1100 |0002: return-object v0 │ │ +432c90: |[432c90] org.purple.smoke.SteamBubble.access$500:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; │ │ +432ca0: 5400 805f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_layoutA:Landroid/widget/LinearLayout; // field@5f80 │ │ +432ca4: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=47 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamBubble; │ │ │ │ #8 : (in Lorg/purple/smoke/SteamBubble;) │ │ @@ -746869,17 +746868,17 @@ │ │ type : '(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -432cac: |[432cac] org.purple.smoke.SteamBubble.access$600:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; │ │ -432cbc: 5400 815f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_layoutB:Landroid/widget/LinearLayout; // field@5f81 │ │ -432cc0: 1100 |0002: return-object v0 │ │ +432ca8: |[432ca8] org.purple.smoke.SteamBubble.access$600:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; │ │ +432cb8: 5400 815f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_layoutB:Landroid/widget/LinearLayout; // field@5f81 │ │ +432cbc: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=47 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamBubble; │ │ │ │ #9 : (in Lorg/purple/smoke/SteamBubble;) │ │ @@ -746887,17 +746886,17 @@ │ │ type : '(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Steam;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -432e90: |[432e90] org.purple.smoke.SteamBubble.access$700:(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Steam; │ │ -432ea0: 5400 8c5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_steam:Lorg/purple/smoke/Steam; // field@5f8c │ │ -432ea4: 1100 |0002: return-object v0 │ │ +432e8c: |[432e8c] org.purple.smoke.SteamBubble.access$700:(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Steam; │ │ +432e9c: 5400 8c5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_steam:Lorg/purple/smoke/Steam; // field@5f8c │ │ +432ea0: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=47 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamBubble; │ │ │ │ #10 : (in Lorg/purple/smoke/SteamBubble;) │ │ @@ -746905,17 +746904,17 @@ │ │ type : '(Lorg/purple/smoke/SteamBubble;)Landroid/widget/TextView;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -432cdc: |[432cdc] org.purple.smoke.SteamBubble.access$800:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/TextView; │ │ -432cec: 5400 885f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f88 │ │ -432cf0: 1100 |0002: return-object v0 │ │ +432cd8: |[432cd8] org.purple.smoke.SteamBubble.access$800:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/TextView; │ │ +432ce8: 5400 885f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f88 │ │ +432cec: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=47 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamBubble; │ │ │ │ #11 : (in Lorg/purple/smoke/SteamBubble;) │ │ @@ -746923,20 +746922,20 @@ │ │ type : '(J)Ljava/lang/String;' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 2 │ │ insns size : 9 16-bit code units │ │ -432d24: |[432d24] org.purple.smoke.SteamBubble.formatSize:(J)Ljava/lang/String; │ │ -432d34: 7120 d65c 2100 |0000: invoke-static {v1, v2}, Ljava/lang/String;.valueOf:(J)Ljava/lang/String; // method@5cd6 │ │ -432d3a: 0c01 |0003: move-result-object v1 │ │ -432d3c: 7110 e8bb 0100 |0004: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbe8 │ │ -432d42: 0c01 |0007: move-result-object v1 │ │ -432d44: 1101 |0008: return-object v1 │ │ +432d20: |[432d20] org.purple.smoke.SteamBubble.formatSize:(J)Ljava/lang/String; │ │ +432d30: 7120 d65c 2100 |0000: invoke-static {v1, v2}, Ljava/lang/String;.valueOf:(J)Ljava/lang/String; // method@5cd6 │ │ +432d36: 0c01 |0003: move-result-object v1 │ │ +432d38: 7110 e8bb 0100 |0004: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbe8 │ │ +432d3e: 0c01 |0007: move-result-object v1 │ │ +432d40: 1101 |0008: return-object v1 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=88 │ │ locals : │ │ 0x0000 - 0x0009 reg=0 this Lorg/purple/smoke/SteamBubble; │ │ 0x0000 - 0x0009 reg=1 (null) J │ │ │ │ @@ -746945,19 +746944,19 @@ │ │ type : '(J)Ljava/lang/String;' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 7 16-bit code units │ │ -432d48: |[432d48] org.purple.smoke.SteamBubble.niceBytes:(J)Ljava/lang/String; │ │ -432d58: 6200 925f |0000: sget-object v0, Lorg/purple/smoke/SteamBubble;.s_numberFormat:Ljava/text/NumberFormat; // field@5f92 │ │ -432d5c: 6e30 8f5f 2003 |0002: invoke-virtual {v0, v2, v3}, Ljava/text/NumberFormat;.format:(J)Ljava/lang/String; // method@5f8f │ │ -432d62: 0c02 |0005: move-result-object v2 │ │ -432d64: 1102 |0006: return-object v2 │ │ +432d44: |[432d44] org.purple.smoke.SteamBubble.niceBytes:(J)Ljava/lang/String; │ │ +432d54: 6200 925f |0000: sget-object v0, Lorg/purple/smoke/SteamBubble;.s_numberFormat:Ljava/text/NumberFormat; // field@5f92 │ │ +432d58: 6e30 8f5f 2003 |0002: invoke-virtual {v0, v2, v3}, Ljava/text/NumberFormat;.format:(J)Ljava/lang/String; // method@5f8f │ │ +432d5e: 0c02 |0005: move-result-object v2 │ │ +432d60: 1102 |0006: return-object v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=93 │ │ locals : │ │ 0x0000 - 0x0007 reg=1 this Lorg/purple/smoke/SteamBubble; │ │ 0x0000 - 0x0007 reg=2 (null) J │ │ │ │ @@ -746966,70 +746965,70 @@ │ │ type : '(Ljava/lang/String;JJ)Ljava/lang/String;' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 10 │ │ ins : 6 │ │ outs : 3 │ │ insns size : 104 16-bit code units │ │ -432d68: |[432d68] org.purple.smoke.SteamBubble.prettyEta:(Ljava/lang/String;JJ)Ljava/lang/String; │ │ -432d78: 3100 0608 |0000: cmp-long v0, v6, v8 │ │ -432d7c: 3900 0500 |0002: if-nez v0, 0007 // +0005 │ │ -432d80: 1a05 b918 |0004: const-string v5, "ETA: completed" // string@18b9 │ │ -432d84: 1105 |0006: return-object v5 │ │ -432d86: 1200 |0007: const/4 v0, #int 0 // #0 │ │ -432d88: 1301 2000 |0008: const/16 v1, #int 32 // #20 │ │ -432d8c: 6e20 c05c 1500 |000a: invoke-virtual {v5, v1}, Ljava/lang/String;.indexOf:(I)I // method@5cc0 │ │ -432d92: 0a01 |000d: move-result v1 │ │ -432d94: 6e30 cd5c 0501 |000e: invoke-virtual {v5, v0, v1}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ -432d9a: 0c00 |0011: move-result-object v0 │ │ -432d9c: 7110 2d5c 0000 |0012: invoke-static {v0}, Ljava/lang/Double;.parseDouble:(Ljava/lang/String;)D // method@5c2d │ │ -432da2: 0b00 |0015: move-result-wide v0 │ │ -432da4: 1a02 c01b |0016: const-string v2, "GiB" // string@1bc0 │ │ -432da8: 6e20 b65c 2500 |0018: invoke-virtual {v5, v2}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -432dae: 0a02 |001b: move-result v2 │ │ -432db0: 3802 0700 |001c: if-eqz v2, 0023 // +0007 │ │ -432db4: 1902 d041 |001e: const-wide/high16 v2, #long 4742290407621132288 // #41d0 │ │ -432db8: ad00 0002 |0020: mul-double v0, v0, v2 │ │ -432dbc: 2817 |0022: goto 0039 // +0017 │ │ -432dbe: 1a02 a620 |0023: const-string v2, "KiB" // string@20a6 │ │ -432dc2: 6e20 b65c 2500 |0025: invoke-virtual {v5, v2}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -432dc8: 0a02 |0028: move-result v2 │ │ -432dca: 3802 0500 |0029: if-eqz v2, 002e // +0005 │ │ -432dce: 1902 9040 |002b: const-wide/high16 v2, #long 4652218415073722368 // #4090 │ │ -432dd2: 28f3 |002d: goto 0020 // -000d │ │ -432dd4: 1a02 9e40 |002e: const-string v2, "MiB" // string@409e │ │ -432dd8: 6e20 b65c 2500 |0030: invoke-virtual {v5, v2}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -432dde: 0a05 |0033: move-result v5 │ │ -432de0: 3805 0500 |0034: if-eqz v5, 0039 // +0005 │ │ -432de4: 1902 3041 |0036: const-wide/high16 v2, #long 4697254411347427328 // #4130 │ │ -432de8: 28e8 |0038: goto 0020 // -0018 │ │ -432dea: 1602 0000 |0039: const-wide/16 v2, #int 0 // #0 │ │ -432dee: 2f05 0002 |003b: cmpl-double v5, v0, v2 │ │ -432df2: 3d05 2800 |003d: if-lez v5, 0065 // +0028 │ │ -432df6: 2205 f10a |003f: new-instance v5, Ljava/lang/StringBuilder; // type@0af1 │ │ -432dfa: 7010 ee5c 0500 |0041: invoke-direct {v5}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -432e00: 1a02 b818 |0044: const-string v2, "ETA: " // string@18b8 │ │ -432e04: 6e20 f95c 2500 |0046: invoke-virtual {v5, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -432e0a: 6202 915f |0049: sget-object v2, Lorg/purple/smoke/SteamBubble;.s_decimalFormat:Ljava/text/DecimalFormat; // field@5f91 │ │ -432e0e: bc86 |004b: sub-long/2addr v6, v8 │ │ -432e10: 8666 |004c: long-to-double v6, v6 │ │ -432e12: 7120 2c5c 7600 |004d: invoke-static {v6, v7}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ -432e18: ce06 |0050: div-double/2addr v6, v0 │ │ -432e1a: 1908 4e40 |0051: const-wide/high16 v8, #long 4633641066610819072 // #404e │ │ -432e1e: ce86 |0053: div-double/2addr v6, v8 │ │ -432e20: 6e30 875f 6207 |0054: invoke-virtual {v2, v6, v7}, Ljava/text/DecimalFormat;.format:(D)Ljava/lang/String; // method@5f87 │ │ -432e26: 0c06 |0057: move-result-object v6 │ │ -432e28: 6e20 f95c 6500 |0058: invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -432e2e: 1a06 8501 |005b: const-string v6, " minute(s)" // string@0185 │ │ -432e32: 6e20 f95c 6500 |005d: invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -432e38: 6e10 035d 0500 |0060: invoke-virtual {v5}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -432e3e: 0c05 |0063: move-result-object v5 │ │ -432e40: 1105 |0064: return-object v5 │ │ -432e42: 1a05 ba18 |0065: const-string v5, "ETA: stalled" // string@18ba │ │ -432e46: 1105 |0067: return-object v5 │ │ +432d64: |[432d64] org.purple.smoke.SteamBubble.prettyEta:(Ljava/lang/String;JJ)Ljava/lang/String; │ │ +432d74: 3100 0608 |0000: cmp-long v0, v6, v8 │ │ +432d78: 3900 0500 |0002: if-nez v0, 0007 // +0005 │ │ +432d7c: 1a05 b918 |0004: const-string v5, "ETA: completed" // string@18b9 │ │ +432d80: 1105 |0006: return-object v5 │ │ +432d82: 1200 |0007: const/4 v0, #int 0 // #0 │ │ +432d84: 1301 2000 |0008: const/16 v1, #int 32 // #20 │ │ +432d88: 6e20 c05c 1500 |000a: invoke-virtual {v5, v1}, Ljava/lang/String;.indexOf:(I)I // method@5cc0 │ │ +432d8e: 0a01 |000d: move-result v1 │ │ +432d90: 6e30 cd5c 0501 |000e: invoke-virtual {v5, v0, v1}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ +432d96: 0c00 |0011: move-result-object v0 │ │ +432d98: 7110 2d5c 0000 |0012: invoke-static {v0}, Ljava/lang/Double;.parseDouble:(Ljava/lang/String;)D // method@5c2d │ │ +432d9e: 0b00 |0015: move-result-wide v0 │ │ +432da0: 1a02 c01b |0016: const-string v2, "GiB" // string@1bc0 │ │ +432da4: 6e20 b65c 2500 |0018: invoke-virtual {v5, v2}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +432daa: 0a02 |001b: move-result v2 │ │ +432dac: 3802 0700 |001c: if-eqz v2, 0023 // +0007 │ │ +432db0: 1902 d041 |001e: const-wide/high16 v2, #long 4742290407621132288 // #41d0 │ │ +432db4: ad00 0002 |0020: mul-double v0, v0, v2 │ │ +432db8: 2817 |0022: goto 0039 // +0017 │ │ +432dba: 1a02 a620 |0023: const-string v2, "KiB" // string@20a6 │ │ +432dbe: 6e20 b65c 2500 |0025: invoke-virtual {v5, v2}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +432dc4: 0a02 |0028: move-result v2 │ │ +432dc6: 3802 0500 |0029: if-eqz v2, 002e // +0005 │ │ +432dca: 1902 9040 |002b: const-wide/high16 v2, #long 4652218415073722368 // #4090 │ │ +432dce: 28f3 |002d: goto 0020 // -000d │ │ +432dd0: 1a02 9e40 |002e: const-string v2, "MiB" // string@409e │ │ +432dd4: 6e20 b65c 2500 |0030: invoke-virtual {v5, v2}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +432dda: 0a05 |0033: move-result v5 │ │ +432ddc: 3805 0500 |0034: if-eqz v5, 0039 // +0005 │ │ +432de0: 1902 3041 |0036: const-wide/high16 v2, #long 4697254411347427328 // #4130 │ │ +432de4: 28e8 |0038: goto 0020 // -0018 │ │ +432de6: 1602 0000 |0039: const-wide/16 v2, #int 0 // #0 │ │ +432dea: 2f05 0002 |003b: cmpl-double v5, v0, v2 │ │ +432dee: 3d05 2800 |003d: if-lez v5, 0065 // +0028 │ │ +432df2: 2205 f10a |003f: new-instance v5, Ljava/lang/StringBuilder; // type@0af1 │ │ +432df6: 7010 ee5c 0500 |0041: invoke-direct {v5}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +432dfc: 1a02 b818 |0044: const-string v2, "ETA: " // string@18b8 │ │ +432e00: 6e20 f95c 2500 |0046: invoke-virtual {v5, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +432e06: 6202 915f |0049: sget-object v2, Lorg/purple/smoke/SteamBubble;.s_decimalFormat:Ljava/text/DecimalFormat; // field@5f91 │ │ +432e0a: bc86 |004b: sub-long/2addr v6, v8 │ │ +432e0c: 8666 |004c: long-to-double v6, v6 │ │ +432e0e: 7120 2c5c 7600 |004d: invoke-static {v6, v7}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ +432e14: ce06 |0050: div-double/2addr v6, v0 │ │ +432e16: 1908 4e40 |0051: const-wide/high16 v8, #long 4633641066610819072 // #404e │ │ +432e1a: ce86 |0053: div-double/2addr v6, v8 │ │ +432e1c: 6e30 875f 6207 |0054: invoke-virtual {v2, v6, v7}, Ljava/text/DecimalFormat;.format:(D)Ljava/lang/String; // method@5f87 │ │ +432e22: 0c06 |0057: move-result-object v6 │ │ +432e24: 6e20 f95c 6500 |0058: invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +432e2a: 1a06 8501 |005b: const-string v6, " minute(s)" // string@0185 │ │ +432e2e: 6e20 f95c 6500 |005d: invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +432e34: 6e10 035d 0500 |0060: invoke-virtual {v5}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +432e3a: 0c05 |0063: move-result-object v5 │ │ +432e3c: 1105 |0064: return-object v5 │ │ +432e3e: 1a05 ba18 |0065: const-string v5, "ETA: stalled" // string@18ba │ │ +432e42: 1105 |0067: return-object v5 │ │ catches : 2 │ │ 0x000a - 0x004b │ │ Ljava/lang/Exception; -> 0x0065 │ │ 0x0054 - 0x0064 │ │ Ljava/lang/Exception; -> 0x0065 │ │ positions : │ │ 0x000a line=106 │ │ @@ -747050,502 +747049,502 @@ │ │ type : '(Lorg/purple/smoke/SteamElement;II)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 20 │ │ ins : 4 │ │ outs : 6 │ │ insns size : 1080 16-bit code units │ │ -433298: |[433298] org.purple.smoke.SteamBubble.setData:(Lorg/purple/smoke/SteamElement;II)V │ │ -4332a8: 0806 1000 |0000: move-object/from16 v6, v16 │ │ -4332ac: 0807 1100 |0002: move-object/from16 v7, v17 │ │ -4332b0: 3907 0300 |0004: if-nez v7, 0007 // +0003 │ │ -4332b4: 0e00 |0006: return-void │ │ -4332b6: 5270 a15f |0007: iget v0, v7, Lorg/purple/smoke/SteamElement;.m_oid:I // field@5fa1 │ │ -4332ba: 5960 845f |0009: iput v0, v6, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f84 │ │ -4332be: 5470 a55f |000b: iget-object v0, v7, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa5 │ │ -4332c2: 6e10 bf5c 0000 |000d: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -4332c8: 6e10 bf5c 0000 |0010: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -4332ce: 0a01 |0013: move-result v1 │ │ -4332d0: 1238 |0014: const/4 v8, #int 3 // #3 │ │ -4332d2: 12f2 |0015: const/4 v2, #int -1 // #ff │ │ -4332d4: 121a |0016: const/4 v10, #int 1 // #1 │ │ -4332d6: 120b |0017: const/4 v11, #int 0 // #0 │ │ -4332d8: 2c01 0204 0000 |0018: sparse-switch v1, 0000041a // +00000402 │ │ -4332de: 12f0 |001b: const/4 v0, #int -1 // #ff │ │ -4332e0: 282c |001c: goto 0048 // +002c │ │ -4332e2: 1a01 7c96 |001d: const-string v1, "receiving" // string@967c │ │ -4332e6: 6e20 b85c 1000 |001f: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4332ec: 0a00 |0022: move-result v0 │ │ -4332ee: 3900 0300 |0023: if-nez v0, 0026 // +0003 │ │ -4332f2: 28f6 |0025: goto 001b // -000a │ │ -4332f4: 1230 |0026: const/4 v0, #int 3 // #3 │ │ -4332f6: 2821 |0027: goto 0048 // +0021 │ │ -4332f8: 1a01 2993 |0028: const-string v1, "paused" // string@9329 │ │ -4332fc: 6e20 b85c 1000 |002a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -433302: 0a00 |002d: move-result v0 │ │ -433304: 3900 0300 |002e: if-nez v0, 0031 // +0003 │ │ -433308: 28eb |0030: goto 001b // -0015 │ │ -43330a: 1220 |0031: const/4 v0, #int 2 // #2 │ │ -43330c: 2816 |0032: goto 0048 // +0016 │ │ -43330e: 1a01 fb5f |0033: const-string v1, "completed" // string@5ffb │ │ -433312: 6e20 b85c 1000 |0035: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -433318: 0a00 |0038: move-result v0 │ │ -43331a: 3900 0300 |0039: if-nez v0, 003c // +0003 │ │ -43331e: 28e0 |003b: goto 001b // -0020 │ │ -433320: 1210 |003c: const/4 v0, #int 1 // #1 │ │ -433322: 280b |003d: goto 0048 // +000b │ │ -433324: 1a01 66a5 |003e: const-string v1, "transferring" // string@a566 │ │ -433328: 6e20 b85c 1000 |0040: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -43332e: 0a00 |0043: move-result v0 │ │ -433330: 3900 0300 |0044: if-nez v0, 0047 // +0003 │ │ -433334: 28d5 |0046: goto 001b // -002b │ │ -433336: 1200 |0047: const/4 v0, #int 0 // #0 │ │ -433338: 1a01 ad44 |0048: const-string v1, "Pause" // string@44ad │ │ -43333c: 130c 0800 |004a: const/16 v12, #int 8 // #8 │ │ -433340: 2b00 e003 0000 |004c: packed-switch v0, 0000042c // +000003e0 │ │ -433346: 2859 |004f: goto 00a8 // +0059 │ │ -433348: 5460 855f |0050: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f85 │ │ -43334c: 6e20 535b b000 |0052: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -433352: 5460 865f |0055: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f86 │ │ -433356: 6e20 5f5a b000 |0057: invoke-virtual {v0, v11}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -43335c: 284e |005a: goto 00a8 // +004e │ │ -43335e: 5460 735f |005b: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ -433362: 1a01 0747 |005d: const-string v1, "Resume" // string@4707 │ │ -433366: 6e20 e358 1000 |005f: invoke-virtual {v0, v1}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@58e3 │ │ -43336c: 1a00 2598 |0062: const-string v0, "resume" // string@9825 │ │ -433370: 5b60 745f |0064: iput-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f74 │ │ -433374: 5460 855f |0066: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f85 │ │ -433378: 6e20 535b c000 |0068: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -43337e: 5460 865f |006b: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f86 │ │ -433382: 6e20 5f5a c000 |006d: invoke-virtual {v0, v12}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -433388: 2838 |0070: goto 00a8 // +0038 │ │ -43338a: 5870 965f |0071: iget-short v0, v7, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f96 │ │ -43338e: 3900 0c00 |0073: if-nez v0, 007f // +000c │ │ -433392: 5460 735f |0075: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ -433396: 6e20 e358 1000 |0077: invoke-virtual {v0, v1}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@58e3 │ │ -43339c: 1a00 0000 |007a: const-string v0, "" // string@0000 │ │ -4333a0: 5b60 745f |007c: iput-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f74 │ │ -4333a4: 280c |007e: goto 008a // +000c │ │ -4333a6: 5460 735f |007f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ -4333aa: 1a01 0c47 |0081: const-string v1, "Rewind" // string@470c │ │ -4333ae: 6e20 e358 1000 |0083: invoke-virtual {v0, v1}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@58e3 │ │ -4333b4: 1a00 4998 |0086: const-string v0, "rewind" // string@9849 │ │ -4333b8: 5b60 745f |0088: iput-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f74 │ │ -4333bc: 5460 855f |008a: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f85 │ │ -4333c0: 6e20 535b c000 |008c: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -4333c6: 5460 865f |008f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f86 │ │ -4333ca: 6e20 5f5a c000 |0091: invoke-virtual {v0, v12}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -4333d0: 2814 |0094: goto 00a8 // +0014 │ │ -4333d2: 5460 735f |0095: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ -4333d6: 6e20 e358 1000 |0097: invoke-virtual {v0, v1}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@58e3 │ │ -4333dc: 1a00 2593 |009a: const-string v0, "pause" // string@9325 │ │ -4333e0: 5b60 745f |009c: iput-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f74 │ │ -4333e4: 5460 855f |009e: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f85 │ │ -4333e8: 6e20 535b b000 |00a0: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -4333ee: 5460 865f |00a3: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f86 │ │ -4333f2: 6e20 5f5a b000 |00a5: invoke-virtual {v0, v11}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -4333f8: 5470 955f |00a8: iget-object v0, v7, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ -4333fc: 1a01 b542 |00aa: const-string v1, "Other (Non-Smoke)" // string@42b5 │ │ -433400: 6e20 b85c 1000 |00ac: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -433406: 0a00 |00af: move-result v0 │ │ -433408: 1a0d ec03 |00b0: const-string v13, ")" // string@03ec │ │ -43340c: 1a0e 9800 |00b2: const-string v14, " (" // string@0098 │ │ -433410: 1a01 254b |00b4: const-string v1, "Sent: " // string@4b25 │ │ -433414: 1403 8a00 077f |00b6: const v3, #float 1.79449e+38 // #7f07008a │ │ -43341a: 1a04 3f17 |00b9: const-string v4, "Destination: " // string@173f │ │ -43341e: 130f 6000 |00bb: const/16 v15, #int 96 // #60 │ │ -433422: 3800 7300 |00bd: if-eqz v0, 0130 // +0073 │ │ -433426: 7100 0bbb 0000 |00bf: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -43342c: 0c00 |00c2: move-result-object v0 │ │ -43342e: 6e10 10bb 0000 |00c3: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.nextSimpleSteamOid:()I // method@bb10 │ │ -433434: 0a00 |00c6: move-result v0 │ │ -433436: 5465 735f |00c7: iget-object v5, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ -43343a: 5269 845f |00c9: iget v9, v6, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f84 │ │ -43343e: 3209 0700 |00cb: if-eq v9, v0, 00d2 // +0007 │ │ -433442: 3320 0300 |00cd: if-ne v0, v2, 00d0 // +0003 │ │ -433446: 2803 |00cf: goto 00d2 // +0003 │ │ -433448: 1200 |00d0: const/4 v0, #int 0 // #0 │ │ -43344a: 2802 |00d1: goto 00d3 // +0002 │ │ -43344c: 1210 |00d2: const/4 v0, #int 1 // #1 │ │ -43344e: 6e20 e058 0500 |00d3: invoke-virtual {v5, v0}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -433454: 5460 735f |00d6: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ -433458: 6e20 e558 b000 |00d8: invoke-virtual {v0, v11}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ -43345e: 5460 755f |00db: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f75 │ │ -433462: 2202 f10a |00dd: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -433466: 7010 ee5c 0200 |00df: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -43346c: 6e20 f95c 4200 |00e2: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433472: 5474 955f |00e5: iget-object v4, v7, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ -433476: 6e20 f95c 4200 |00e7: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43347c: 6e10 035d 0200 |00ea: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433482: 0c02 |00ed: move-result-object v2 │ │ -433484: 6e20 495b 2000 |00ee: invoke-virtual {v0, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43348a: 5460 785f |00f1: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f78 │ │ -43348e: 6e20 7756 3000 |00f3: invoke-virtual {v0, v3}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ -433494: 5460 795f |00f6: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f79 │ │ -433498: 6e20 535b c000 |00f8: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -43349e: 5460 7e5f |00fb: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f7e │ │ -4334a2: 6e20 ac56 c000 |00fd: invoke-virtual {v0, v12}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -4334a8: 5460 7f5f |0100: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f7f │ │ -4334ac: 6e20 535b c000 |0102: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -4334b2: 5460 825f |0105: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f82 │ │ -4334b6: 6e20 535b c000 |0107: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -4334bc: 5460 875f |010a: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ -4334c0: 6e20 a95a b000 |010c: invoke-virtual {v0, v11}, Landroid/widget/SeekBar;.setVisibility:(I)V // method@5aa9 │ │ -4334c6: 5460 885f |010f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f88 │ │ -4334ca: 6e20 535b b000 |0111: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -4334d0: 5460 895f |0114: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f89 │ │ -4334d4: 2202 f10a |0116: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -4334d8: 7010 ee5c 0200 |0118: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -4334de: 6e20 f95c 1200 |011b: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4334e4: 5373 a35f |011e: iget-wide v3, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa3 │ │ -4334e8: 7030 fcbd 3604 |0120: invoke-direct {v6, v3, v4}, Lorg/purple/smoke/SteamBubble;.formatSize:(J)Ljava/lang/String; // method@bdfc │ │ -4334ee: 0c01 |0123: move-result-object v1 │ │ -4334f0: 6e20 f95c 1200 |0124: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4334f6: 6e10 035d 0200 |0127: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4334fc: 0c01 |012a: move-result-object v1 │ │ -4334fe: 6e20 495b 1000 |012b: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -433504: 2900 2301 |012e: goto/16 0251 // +0123 │ │ -433508: 5870 965f |0130: iget-short v0, v7, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f96 │ │ -43350c: 1402 7100 077f |0132: const v2, #float 1.79448e+38 // #7f070071 │ │ -433512: 1405 8900 077f |0135: const v5, #float 1.79449e+38 // #7f070089 │ │ -433518: 3900 a300 |0138: if-nez v0, 01db // +00a3 │ │ -43351c: 5460 735f |013a: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ -433520: 6e20 e558 c000 |013c: invoke-virtual {v0, v12}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ -433526: 5460 755f |013f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f75 │ │ -43352a: 2201 f10a |0141: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -43352e: 7010 ee5c 0100 |0143: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433534: 1a03 b442 |0146: const-string v3, "Origin: " // string@42b4 │ │ -433538: 6e20 f95c 3100 |0148: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43353e: 5473 955f |014b: iget-object v3, v7, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ -433542: 6e20 f95c 3100 |014d: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433548: 6e10 035d 0100 |0150: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -43354e: 0c01 |0153: move-result-object v1 │ │ -433550: 6e20 495b 1000 |0154: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -433556: 5460 785f |0157: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f78 │ │ -43355a: 1401 6900 077f |0159: const v1, #float 1.79448e+38 // #7f070069 │ │ -433560: 6e20 7756 1000 |015c: invoke-virtual {v0, v1}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ -433566: 5460 795f |015f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f79 │ │ -43356a: 6e20 535b b000 |0161: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -433570: 5460 7e5f |0164: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f7e │ │ -433574: 5471 9e5f |0166: iget-object v1, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ -433578: 3801 0800 |0168: if-eqz v1, 0170 // +0008 │ │ -43357c: 5471 9e5f |016a: iget-object v1, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ -433580: 2111 |016c: array-length v1, v1 │ │ -433582: 33f1 0300 |016d: if-ne v1, v15, 0170 // +0003 │ │ -433586: 2804 |016f: goto 0173 // +0004 │ │ -433588: 1402 8900 077f |0170: const v2, #float 1.79449e+38 // #7f070089 │ │ -43358e: 6e20 7756 2000 |0173: invoke-virtual {v0, v2}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ -433594: 5460 7e5f |0176: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f7e │ │ -433598: 6e20 ac56 b000 |0178: invoke-virtual {v0, v11}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -43359e: 5460 7f5f |017b: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f7f │ │ -4335a2: 6e20 535b b000 |017d: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -4335a8: 5460 825f |0180: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f82 │ │ -4335ac: 6e20 535b b000 |0182: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -4335b2: 5460 825f |0185: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f82 │ │ -4335b6: 2201 f10a |0187: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -4335ba: 7010 ee5c 0100 |0189: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -4335c0: 1a02 e42e |018c: const-string v2, "Locked: " // string@2ee4 │ │ -4335c4: 6e20 f95c 2100 |018e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4335ca: 5572 a05f |0191: iget-boolean v2, v7, Lorg/purple/smoke/SteamElement;.m_locked:Z // field@5fa0 │ │ -4335ce: 3802 0500 |0193: if-eqz v2, 0198 // +0005 │ │ -4335d2: 1a02 3454 |0195: const-string v2, "Yes" // string@5434 │ │ -4335d6: 2803 |0197: goto 019a // +0003 │ │ -4335d8: 1a02 4b41 |0198: const-string v2, "No" // string@414b │ │ -4335dc: 6e20 f95c 2100 |019a: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4335e2: 6e10 035d 0100 |019d: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4335e8: 0c01 |01a0: move-result-object v1 │ │ -4335ea: 6e20 495b 1000 |01a1: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -4335f0: 5460 875f |01a4: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ -4335f4: 6e20 a95a c000 |01a6: invoke-virtual {v0, v12}, Landroid/widget/SeekBar;.setVisibility:(I)V // method@5aa9 │ │ -4335fa: 5460 885f |01a9: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f88 │ │ -4335fe: 6e20 535b c000 |01ab: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -433604: 5460 895f |01ae: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f89 │ │ -433608: 2201 f10a |01b0: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -43360c: 7010 ee5c 0100 |01b2: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433612: 1a02 b346 |01b5: const-string v2, "Received: " // string@46b3 │ │ -433616: 6e20 f95c 2100 |01b7: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43361c: 5372 a35f |01ba: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa3 │ │ -433620: 7030 fcbd 2603 |01bc: invoke-direct {v6, v2, v3}, Lorg/purple/smoke/SteamBubble;.formatSize:(J)Ljava/lang/String; // method@bdfc │ │ -433626: 0c02 |01bf: move-result-object v2 │ │ -433628: 6e20 f95c 2100 |01c0: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43362e: 6e20 f95c e100 |01c3: invoke-virtual {v1, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433634: 5372 a35f |01c6: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa3 │ │ -433638: 7030 fdbd 2603 |01c8: invoke-direct {v6, v2, v3}, Lorg/purple/smoke/SteamBubble;.niceBytes:(J)Ljava/lang/String; // method@bdfd │ │ -43363e: 0c02 |01cb: move-result-object v2 │ │ -433640: 6e20 f95c 2100 |01cc: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433646: 6e20 f95c d100 |01cf: invoke-virtual {v1, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43364c: 6e10 035d 0100 |01d2: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433652: 0c01 |01d5: move-result-object v1 │ │ -433654: 6e20 495b 1000 |01d6: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43365a: 2900 7800 |01d9: goto/16 0251 // +0078 │ │ -43365e: 5460 735f |01db: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ -433662: 5479 9e5f |01dd: iget-object v9, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ -433666: 3809 0900 |01df: if-eqz v9, 01e8 // +0009 │ │ -43366a: 5479 9e5f |01e1: iget-object v9, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ -43366e: 2199 |01e3: array-length v9, v9 │ │ -433670: 33f9 0400 |01e4: if-ne v9, v15, 01e8 // +0004 │ │ -433674: 1219 |01e6: const/4 v9, #int 1 // #1 │ │ -433676: 2802 |01e7: goto 01e9 // +0002 │ │ -433678: 1209 |01e8: const/4 v9, #int 0 // #0 │ │ -43367a: 6e20 e058 9000 |01e9: invoke-virtual {v0, v9}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -433680: 5460 735f |01ec: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ -433684: 6e20 e558 b000 |01ee: invoke-virtual {v0, v11}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ -43368a: 5460 755f |01f1: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f75 │ │ -43368e: 2209 f10a |01f3: new-instance v9, Ljava/lang/StringBuilder; // type@0af1 │ │ -433692: 7010 ee5c 0900 |01f5: invoke-direct {v9}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433698: 6e20 f95c 4900 |01f8: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43369e: 5474 955f |01fb: iget-object v4, v7, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ -4336a2: 6e20 f95c 4900 |01fd: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4336a8: 6e10 035d 0900 |0200: invoke-virtual {v9}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4336ae: 0c04 |0203: move-result-object v4 │ │ -4336b0: 6e20 495b 4000 |0204: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -4336b6: 5460 785f |0207: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f78 │ │ -4336ba: 6e20 7756 3000 |0209: invoke-virtual {v0, v3}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ -4336c0: 5460 795f |020c: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f79 │ │ -4336c4: 6e20 535b b000 |020e: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -4336ca: 5460 7e5f |0211: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f7e │ │ -4336ce: 5473 9e5f |0213: iget-object v3, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ -4336d2: 3803 0800 |0215: if-eqz v3, 021d // +0008 │ │ -4336d6: 5473 9e5f |0217: iget-object v3, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ -4336da: 2133 |0219: array-length v3, v3 │ │ -4336dc: 33f3 0300 |021a: if-ne v3, v15, 021d // +0003 │ │ -4336e0: 2804 |021c: goto 0220 // +0004 │ │ -4336e2: 1402 8900 077f |021d: const v2, #float 1.79449e+38 // #7f070089 │ │ -4336e8: 6e20 7756 2000 |0220: invoke-virtual {v0, v2}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ -4336ee: 5460 7e5f |0223: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f7e │ │ -4336f2: 6e20 ac56 b000 |0225: invoke-virtual {v0, v11}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -4336f8: 5460 7f5f |0228: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f7f │ │ -4336fc: 6e20 535b b000 |022a: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -433702: 5460 825f |022d: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f82 │ │ -433706: 6e20 535b c000 |022f: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -43370c: 5460 875f |0232: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ -433710: 6e20 a95a c000 |0234: invoke-virtual {v0, v12}, Landroid/widget/SeekBar;.setVisibility:(I)V // method@5aa9 │ │ -433716: 5460 895f |0237: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f89 │ │ -43371a: 2202 f10a |0239: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -43371e: 7010 ee5c 0200 |023b: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433724: 6e20 f95c 1200 |023e: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43372a: 5373 a35f |0241: iget-wide v3, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa3 │ │ -43372e: 7030 fcbd 3604 |0243: invoke-direct {v6, v3, v4}, Lorg/purple/smoke/SteamBubble;.formatSize:(J)Ljava/lang/String; // method@bdfc │ │ -433734: 0c01 |0246: move-result-object v1 │ │ -433736: 6e20 f95c 1200 |0247: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43373c: 6e10 035d 0200 |024a: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433742: 0c01 |024d: move-result-object v1 │ │ -433744: 6e20 495b 1000 |024e: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43374a: 5460 765f |0251: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_details:Landroid/widget/Switch; // field@5f76 │ │ -43374e: 7100 6fbd 0000 |0253: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -433754: 0c01 |0256: move-result-object v1 │ │ -433756: 5262 845f |0257: iget v2, v6, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f84 │ │ -43375a: 6e20 8dbd 2100 |0259: invoke-virtual {v1, v2}, Lorg/purple/smoke/State;.steamDetailsState:(I)Z // method@bd8d │ │ -433760: 0a01 |025c: move-result v1 │ │ -433762: 6e20 db5a 1000 |025d: invoke-virtual {v0, v1}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -433768: 5460 775f |0260: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_digest:Landroid/widget/TextView; // field@5f77 │ │ -43376c: 2201 f10a |0262: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -433770: 7010 ee5c 0100 |0264: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433776: 1a02 4648 |0267: const-string v2, "SHA-256: " // string@4846 │ │ -43377a: 6e20 f95c 2100 |0269: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433780: 5472 9a5f |026c: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9a │ │ -433784: 7110 dfbb 0200 |026e: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayAsHexString:([B)Ljava/lang/String; // method@bbdf │ │ -43378a: 0c02 |0271: move-result-object v2 │ │ -43378c: 6e20 f95c 2100 |0272: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433792: 6e10 035d 0100 |0275: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433798: 0c01 |0278: move-result-object v1 │ │ -43379a: 6e20 495b 1000 |0279: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -4337a0: 5460 795f |027c: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f79 │ │ -4337a4: 2201 f10a |027e: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -4337a8: 7010 ee5c 0100 |0280: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -4337ae: 1a02 4a19 |0283: const-string v2, "Ephemeral Key Type: " // string@194a │ │ -4337b2: 6e20 f95c 2100 |0285: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4337b8: 5472 9f5f |0288: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5f9f │ │ -4337bc: 6e20 f95c 2100 |028a: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4337c2: 6e10 035d 0100 |028d: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4337c8: 0c01 |0290: move-result-object v1 │ │ -4337ca: 6e20 495b 1000 |0291: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -4337d0: 5469 7a5f |0294: iget-object v9, v6, Lorg/purple/smoke/SteamBubble;.m_eta:Landroid/widget/TextView; // field@5f7a │ │ -4337d4: 5471 a65f |0296: iget-object v1, v7, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa6 │ │ -4337d8: 5372 9d5f |0298: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ -4337dc: 5374 a35f |029a: iget-wide v4, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa3 │ │ -4337e0: 0800 1000 |029c: move-object/from16 v0, v16 │ │ -4337e4: 7606 febd 0000 |029e: invoke-direct/range {v0, v1, v2, v3, v4, v5}, Lorg/purple/smoke/SteamBubble;.prettyEta:(Ljava/lang/String;JJ)Ljava/lang/String; // method@bdfe │ │ -4337ea: 0c00 |02a1: move-result-object v0 │ │ -4337ec: 6e20 495b 0900 |02a2: invoke-virtual {v9, v0}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -4337f2: 5460 7b5f |02a5: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_fileIdentity:Landroid/widget/TextView; // field@5f7b │ │ -4337f6: 2201 f10a |02a7: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -4337fa: 7010 ee5c 0100 |02a9: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433800: 1a02 dd1a |02ac: const-string v2, "File Identity: " // string@1add │ │ -433804: 6e20 f95c 2100 |02ae: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43380a: 5472 9b5f |02b1: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9b │ │ -43380e: 7110 dfbb 0200 |02b3: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayAsHexString:([B)Ljava/lang/String; // method@bbdf │ │ -433814: 0c02 |02b6: move-result-object v2 │ │ -433816: 6e20 f95c 2100 |02b7: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43381c: 6e10 035d 0100 |02ba: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433822: 0c01 |02bd: move-result-object v1 │ │ -433824: 6e20 495b 1000 |02be: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43382a: 5460 7c5f |02c1: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_fileName:Landroid/widget/TextView; // field@5f7c │ │ -43382e: 2201 f10a |02c3: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -433832: 7010 ee5c 0100 |02c5: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433838: 1a02 df1a |02c8: const-string v2, "File: " // string@1adf │ │ -43383c: 6e20 f95c 2100 |02ca: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433842: 5472 975f |02cd: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f97 │ │ -433846: 6e20 f95c 2100 |02cf: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43384c: 6e10 035d 0100 |02d2: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433852: 0c01 |02d5: move-result-object v1 │ │ -433854: 6e20 495b 1000 |02d6: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43385a: 5460 7d5f |02d9: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_fileSize:Landroid/widget/TextView; // field@5f7d │ │ -43385e: 2201 f10a |02db: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -433862: 7010 ee5c 0100 |02dd: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433868: 1a02 dc4b |02e0: const-string v2, "Size: " // string@4bdc │ │ -43386c: 6e20 f95c 2100 |02e2: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433872: 5372 9d5f |02e5: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ -433876: 7030 fcbd 2603 |02e7: invoke-direct {v6, v2, v3}, Lorg/purple/smoke/SteamBubble;.formatSize:(J)Ljava/lang/String; // method@bdfc │ │ -43387c: 0c02 |02ea: move-result-object v2 │ │ -43387e: 6e20 f95c 2100 |02eb: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433884: 6e20 f95c e100 |02ee: invoke-virtual {v1, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43388a: 5372 9d5f |02f1: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ -43388e: 7030 fdbd 2603 |02f3: invoke-direct {v6, v2, v3}, Lorg/purple/smoke/SteamBubble;.niceBytes:(J)Ljava/lang/String; // method@bdfd │ │ -433894: 0c02 |02f6: move-result-object v2 │ │ -433896: 6e20 f95c 2100 |02f7: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43389c: 6e20 f95c d100 |02fa: invoke-virtual {v1, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4338a2: 6e10 035d 0100 |02fd: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4338a8: 0c01 |0300: move-result-object v1 │ │ -4338aa: 6e20 495b 1000 |0301: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -4338b0: 5470 9e5f |0304: iget-object v0, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ -4338b4: 3800 2d00 |0306: if-eqz v0, 0333 // +002d │ │ -4338b8: 5470 9e5f |0308: iget-object v0, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ -4338bc: 2100 |030a: array-length v0, v0 │ │ -4338be: 32f0 0300 |030b: if-eq v0, v15, 030e // +0003 │ │ -4338c2: 2826 |030d: goto 0333 // +0026 │ │ -4338c4: 5460 7f5f |030e: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f7f │ │ -4338c8: 2201 f10a |0310: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -4338cc: 7010 ee5c 0100 |0312: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -4338d2: 1a02 731f |0315: const-string v2, "Key Stream SHA-256: " // string@1f73 │ │ -4338d6: 6e20 f95c 2100 |0317: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4338dc: 23a2 0f1c |031a: new-array v2, v10, [[B // type@1c0f │ │ -4338e0: 5473 9e5f |031c: iget-object v3, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ -4338e4: 4d03 020b |031e: aput-object v3, v2, v11 │ │ -4338e8: 7110 b5b9 0200 |0320: invoke-static {v2}, Lorg/purple/smoke/Cryptography;.sha256:([[B)[B // method@b9b5 │ │ -4338ee: 0c02 |0323: move-result-object v2 │ │ -4338f0: 7110 dfbb 0200 |0324: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayAsHexString:([B)Ljava/lang/String; // method@bbdf │ │ -4338f6: 0c02 |0327: move-result-object v2 │ │ -4338f8: 6e20 f95c 2100 |0328: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4338fe: 6e10 035d 0100 |032b: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433904: 0c01 |032e: move-result-object v1 │ │ -433906: 6e20 495b 1000 |032f: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43390c: 2808 |0332: goto 033a // +0008 │ │ -43390e: 5460 7f5f |0333: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f7f │ │ -433912: 1a01 741f |0335: const-string v1, "Key Stream SHA-256: N/A" // string@1f74 │ │ -433916: 6e20 495b 1000 |0337: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43391c: 5370 9d5f |033a: iget-wide v0, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ -433920: 1602 0000 |033c: const-wide/16 v2, #int 0 // #0 │ │ -433924: 3104 0002 |033e: cmp-long v4, v0, v2 │ │ -433928: 3d04 2b00 |0340: if-lez v4, 036b // +002b │ │ -43392c: 5460 855f |0342: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f85 │ │ -433930: 2201 f10a |0344: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -433934: 7010 ee5c 0100 |0346: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -43393a: 1902 5940 |0349: const-wide/high16 v2, #long 4636737291354636288 // #4059 │ │ -43393e: 5374 a35f |034b: iget-wide v4, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa3 │ │ -433942: 8644 |034d: long-to-double v4, v4 │ │ -433944: 7120 2c5c 5400 |034e: invoke-static {v4, v5}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ -43394a: ad04 0402 |0351: mul-double v4, v4, v2 │ │ -43394e: 5372 9d5f |0353: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ -433952: 8622 |0355: long-to-double v2, v2 │ │ -433954: 7120 2c5c 3200 |0356: invoke-static {v2, v3}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ -43395a: ce24 |0359: div-double/2addr v4, v2 │ │ -43395c: 8a42 |035a: double-to-int v2, v4 │ │ -43395e: 6e20 f45c 2100 |035b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ -433964: 1a02 1003 |035e: const-string v2, "%" // string@0310 │ │ -433968: 6e20 f95c 2100 |0360: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43396e: 6e10 035d 0100 |0363: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433974: 0c01 |0366: move-result-object v1 │ │ -433976: 6e20 495b 1000 |0367: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43397c: 2808 |036a: goto 0372 // +0008 │ │ -43397e: 5460 855f |036b: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f85 │ │ -433982: 1a01 c804 |036d: const-string v1, "0%" // string@04c8 │ │ -433986: 6e20 495b 1000 |036f: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43398c: 5460 865f |0372: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f86 │ │ -433990: 5371 9d5f |0374: iget-wide v1, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ -433994: 8412 |0376: long-to-int v2, v1 │ │ -433996: 6e20 5c5a 2000 |0377: invoke-virtual {v0, v2}, Landroid/widget/ProgressBar;.setMax:(I)V // method@5a5c │ │ -43399c: 5460 865f |037a: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f86 │ │ -4339a0: 5371 a35f |037c: iget-wide v1, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa3 │ │ -4339a4: 8412 |037e: long-to-int v2, v1 │ │ -4339a6: 6e20 5d5a 2000 |037f: invoke-virtual {v0, v2}, Landroid/widget/ProgressBar;.setProgress:(I)V // method@5a5d │ │ -4339ac: 5370 a25f |0382: iget-wide v0, v7, Lorg/purple/smoke/SteamElement;.m_readInterval:J // field@5fa2 │ │ -4339b0: 8401 |0384: long-to-int v1, v0 │ │ -4339b2: 1240 |0385: const/4 v0, #int 4 // #4 │ │ -4339b4: 3201 2c00 |0386: if-eq v1, v0, 03b2 // +002c │ │ -4339b8: 1302 0a00 |0388: const/16 v2, #int 10 // #a │ │ -4339bc: 3221 2200 |038a: if-eq v1, v2, 03ac // +0022 │ │ -4339c0: 1302 1400 |038c: const/16 v2, #int 20 // #14 │ │ -4339c4: 3221 1700 |038e: if-eq v1, v2, 03a5 // +0017 │ │ -4339c8: 1302 3200 |0390: const/16 v2, #int 50 // #32 │ │ -4339cc: 3221 0d00 |0392: if-eq v1, v2, 039f // +000d │ │ -4339d0: 1302 6400 |0394: const/16 v2, #int 100 // #64 │ │ -4339d4: 3221 0300 |0396: if-eq v1, v2, 0399 // +0003 │ │ -4339d8: 281f |0398: goto 03b7 // +001f │ │ -4339da: 5461 875f |0399: iget-object v1, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ -4339de: 6e20 a75a 0100 |039b: invoke-virtual {v1, v0}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ -4339e4: 2819 |039e: goto 03b7 // +0019 │ │ -4339e6: 5460 875f |039f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ -4339ea: 6e20 a75a 8000 |03a1: invoke-virtual {v0, v8}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ -4339f0: 2813 |03a4: goto 03b7 // +0013 │ │ -4339f2: 5460 875f |03a5: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ -4339f6: 1221 |03a7: const/4 v1, #int 2 // #2 │ │ -4339f8: 6e20 a75a 1000 |03a8: invoke-virtual {v0, v1}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ -4339fe: 280c |03ab: goto 03b7 // +000c │ │ -433a00: 5460 875f |03ac: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ -433a04: 6e20 a75a a000 |03ae: invoke-virtual {v0, v10}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ -433a0a: 2806 |03b1: goto 03b7 // +0006 │ │ -433a0c: 5460 875f |03b2: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ -433a10: 6e20 a75a b000 |03b4: invoke-virtual {v0, v11}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ -433a16: 5460 8a5f |03b7: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_separator:Landroid/view/View; // field@5f8a │ │ -433a1a: d801 12ff |03b9: add-int/lit8 v1, v18, #int -1 // #ff │ │ -433a1e: 0202 1300 |03bb: move/from16 v2, v19 │ │ -433a22: 3321 0400 |03bd: if-ne v1, v2, 03c1 // +0004 │ │ -433a26: 130b 0800 |03bf: const/16 v11, #int 8 // #8 │ │ -433a2a: 6e20 ac56 b000 |03c1: invoke-virtual {v0, v11}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -433a30: 5460 8b5f |03c4: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_status:Landroid/widget/TextView; // field@5f8b │ │ -433a34: 2201 f10a |03c6: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -433a38: 7010 ee5c 0100 |03c8: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433a3e: 1a02 764c |03cb: const-string v2, "Status: " // string@4c76 │ │ -433a42: 6e20 f95c 2100 |03cd: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433a48: 5472 a55f |03d0: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa5 │ │ -433a4c: 6e20 f95c 2100 |03d2: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433a52: 6e10 035d 0100 |03d5: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433a58: 0c01 |03d8: move-result-object v1 │ │ -433a5a: 6e20 495b 1000 |03d9: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -433a60: 5870 965f |03dc: iget-short v0, v7, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f96 │ │ -433a64: 3900 1b00 |03de: if-nez v0, 03f9 // +001b │ │ -433a68: 5460 8d5f |03e0: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_transferRate:Landroid/widget/TextView; // field@5f8d │ │ -433a6c: 2201 f10a |03e2: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -433a70: 7010 ee5c 0100 |03e4: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433a76: 1a02 ab46 |03e7: const-string v2, "Receive Rate: " // string@46ab │ │ -433a7a: 6e20 f95c 2100 |03e9: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433a80: 5472 a65f |03ec: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa6 │ │ -433a84: 6e20 f95c 2100 |03ee: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433a8a: 6e10 035d 0100 |03f1: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433a90: 0c01 |03f4: move-result-object v1 │ │ -433a92: 6e20 495b 1000 |03f5: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -433a98: 2819 |03f8: goto 0411 // +0019 │ │ -433a9a: 5460 8d5f |03f9: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_transferRate:Landroid/widget/TextView; // field@5f8d │ │ -433a9e: 2201 f10a |03fb: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -433aa2: 7010 ee5c 0100 |03fd: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433aa8: 1a02 b24f |0400: const-string v2, "Transfer Rate: " // string@4fb2 │ │ -433aac: 6e20 f95c 2100 |0402: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433ab2: 5472 a65f |0405: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa6 │ │ -433ab6: 6e20 f95c 2100 |0407: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433abc: 6e10 035d 0100 |040a: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433ac2: 0c01 |040d: move-result-object v1 │ │ -433ac4: 6e20 495b 1000 |040e: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -433aca: 5460 8e5f |0411: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -433ace: 5261 845f |0413: iget v1, v6, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f84 │ │ -433ad2: 6e20 8256 1000 |0415: invoke-virtual {v0, v1}, Landroid/view/View;.setId:(I)V // method@5682 │ │ -433ad8: 0e00 |0418: return-void │ │ -433ada: 0000 |0419: nop // spacer │ │ -433adc: 0002 0400 9b34 4a80 4bf6 60ac 2e99 ... |041a: sparse-switch-data (18 units) │ │ -433b00: 0001 0400 0000 0000 4900 0000 2500 ... |042c: packed-switch-data (12 units) │ │ +433294: |[433294] org.purple.smoke.SteamBubble.setData:(Lorg/purple/smoke/SteamElement;II)V │ │ +4332a4: 0806 1000 |0000: move-object/from16 v6, v16 │ │ +4332a8: 0807 1100 |0002: move-object/from16 v7, v17 │ │ +4332ac: 3907 0300 |0004: if-nez v7, 0007 // +0003 │ │ +4332b0: 0e00 |0006: return-void │ │ +4332b2: 5270 a15f |0007: iget v0, v7, Lorg/purple/smoke/SteamElement;.m_oid:I // field@5fa1 │ │ +4332b6: 5960 845f |0009: iput v0, v6, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f84 │ │ +4332ba: 5470 a55f |000b: iget-object v0, v7, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa5 │ │ +4332be: 6e10 bf5c 0000 |000d: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +4332c4: 6e10 bf5c 0000 |0010: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +4332ca: 0a01 |0013: move-result v1 │ │ +4332cc: 1238 |0014: const/4 v8, #int 3 // #3 │ │ +4332ce: 12f2 |0015: const/4 v2, #int -1 // #ff │ │ +4332d0: 121a |0016: const/4 v10, #int 1 // #1 │ │ +4332d2: 120b |0017: const/4 v11, #int 0 // #0 │ │ +4332d4: 2c01 0204 0000 |0018: sparse-switch v1, 0000041a // +00000402 │ │ +4332da: 12f0 |001b: const/4 v0, #int -1 // #ff │ │ +4332dc: 282c |001c: goto 0048 // +002c │ │ +4332de: 1a01 7c96 |001d: const-string v1, "receiving" // string@967c │ │ +4332e2: 6e20 b85c 1000 |001f: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4332e8: 0a00 |0022: move-result v0 │ │ +4332ea: 3900 0300 |0023: if-nez v0, 0026 // +0003 │ │ +4332ee: 28f6 |0025: goto 001b // -000a │ │ +4332f0: 1230 |0026: const/4 v0, #int 3 // #3 │ │ +4332f2: 2821 |0027: goto 0048 // +0021 │ │ +4332f4: 1a01 2993 |0028: const-string v1, "paused" // string@9329 │ │ +4332f8: 6e20 b85c 1000 |002a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4332fe: 0a00 |002d: move-result v0 │ │ +433300: 3900 0300 |002e: if-nez v0, 0031 // +0003 │ │ +433304: 28eb |0030: goto 001b // -0015 │ │ +433306: 1220 |0031: const/4 v0, #int 2 // #2 │ │ +433308: 2816 |0032: goto 0048 // +0016 │ │ +43330a: 1a01 fb5f |0033: const-string v1, "completed" // string@5ffb │ │ +43330e: 6e20 b85c 1000 |0035: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +433314: 0a00 |0038: move-result v0 │ │ +433316: 3900 0300 |0039: if-nez v0, 003c // +0003 │ │ +43331a: 28e0 |003b: goto 001b // -0020 │ │ +43331c: 1210 |003c: const/4 v0, #int 1 // #1 │ │ +43331e: 280b |003d: goto 0048 // +000b │ │ +433320: 1a01 66a5 |003e: const-string v1, "transferring" // string@a566 │ │ +433324: 6e20 b85c 1000 |0040: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +43332a: 0a00 |0043: move-result v0 │ │ +43332c: 3900 0300 |0044: if-nez v0, 0047 // +0003 │ │ +433330: 28d5 |0046: goto 001b // -002b │ │ +433332: 1200 |0047: const/4 v0, #int 0 // #0 │ │ +433334: 1a01 ad44 |0048: const-string v1, "Pause" // string@44ad │ │ +433338: 130c 0800 |004a: const/16 v12, #int 8 // #8 │ │ +43333c: 2b00 e003 0000 |004c: packed-switch v0, 0000042c // +000003e0 │ │ +433342: 2859 |004f: goto 00a8 // +0059 │ │ +433344: 5460 855f |0050: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f85 │ │ +433348: 6e20 535b b000 |0052: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +43334e: 5460 865f |0055: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f86 │ │ +433352: 6e20 5f5a b000 |0057: invoke-virtual {v0, v11}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +433358: 284e |005a: goto 00a8 // +004e │ │ +43335a: 5460 735f |005b: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ +43335e: 1a01 0747 |005d: const-string v1, "Resume" // string@4707 │ │ +433362: 6e20 e358 1000 |005f: invoke-virtual {v0, v1}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@58e3 │ │ +433368: 1a00 2598 |0062: const-string v0, "resume" // string@9825 │ │ +43336c: 5b60 745f |0064: iput-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f74 │ │ +433370: 5460 855f |0066: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f85 │ │ +433374: 6e20 535b c000 |0068: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +43337a: 5460 865f |006b: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f86 │ │ +43337e: 6e20 5f5a c000 |006d: invoke-virtual {v0, v12}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +433384: 2838 |0070: goto 00a8 // +0038 │ │ +433386: 5870 965f |0071: iget-short v0, v7, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f96 │ │ +43338a: 3900 0c00 |0073: if-nez v0, 007f // +000c │ │ +43338e: 5460 735f |0075: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ +433392: 6e20 e358 1000 |0077: invoke-virtual {v0, v1}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@58e3 │ │ +433398: 1a00 0000 |007a: const-string v0, "" // string@0000 │ │ +43339c: 5b60 745f |007c: iput-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f74 │ │ +4333a0: 280c |007e: goto 008a // +000c │ │ +4333a2: 5460 735f |007f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ +4333a6: 1a01 0c47 |0081: const-string v1, "Rewind" // string@470c │ │ +4333aa: 6e20 e358 1000 |0083: invoke-virtual {v0, v1}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@58e3 │ │ +4333b0: 1a00 4998 |0086: const-string v0, "rewind" // string@9849 │ │ +4333b4: 5b60 745f |0088: iput-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f74 │ │ +4333b8: 5460 855f |008a: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f85 │ │ +4333bc: 6e20 535b c000 |008c: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +4333c2: 5460 865f |008f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f86 │ │ +4333c6: 6e20 5f5a c000 |0091: invoke-virtual {v0, v12}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +4333cc: 2814 |0094: goto 00a8 // +0014 │ │ +4333ce: 5460 735f |0095: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ +4333d2: 6e20 e358 1000 |0097: invoke-virtual {v0, v1}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@58e3 │ │ +4333d8: 1a00 2593 |009a: const-string v0, "pause" // string@9325 │ │ +4333dc: 5b60 745f |009c: iput-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f74 │ │ +4333e0: 5460 855f |009e: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f85 │ │ +4333e4: 6e20 535b b000 |00a0: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +4333ea: 5460 865f |00a3: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f86 │ │ +4333ee: 6e20 5f5a b000 |00a5: invoke-virtual {v0, v11}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +4333f4: 5470 955f |00a8: iget-object v0, v7, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ +4333f8: 1a01 b542 |00aa: const-string v1, "Other (Non-Smoke)" // string@42b5 │ │ +4333fc: 6e20 b85c 1000 |00ac: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +433402: 0a00 |00af: move-result v0 │ │ +433404: 1a0d ec03 |00b0: const-string v13, ")" // string@03ec │ │ +433408: 1a0e 9800 |00b2: const-string v14, " (" // string@0098 │ │ +43340c: 1a01 254b |00b4: const-string v1, "Sent: " // string@4b25 │ │ +433410: 1403 8a00 077f |00b6: const v3, #float 1.79449e+38 // #7f07008a │ │ +433416: 1a04 3f17 |00b9: const-string v4, "Destination: " // string@173f │ │ +43341a: 130f 6000 |00bb: const/16 v15, #int 96 // #60 │ │ +43341e: 3800 7300 |00bd: if-eqz v0, 0130 // +0073 │ │ +433422: 7100 0bbb 0000 |00bf: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +433428: 0c00 |00c2: move-result-object v0 │ │ +43342a: 6e10 10bb 0000 |00c3: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.nextSimpleSteamOid:()I // method@bb10 │ │ +433430: 0a00 |00c6: move-result v0 │ │ +433432: 5465 735f |00c7: iget-object v5, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ +433436: 5269 845f |00c9: iget v9, v6, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f84 │ │ +43343a: 3209 0700 |00cb: if-eq v9, v0, 00d2 // +0007 │ │ +43343e: 3320 0300 |00cd: if-ne v0, v2, 00d0 // +0003 │ │ +433442: 2803 |00cf: goto 00d2 // +0003 │ │ +433444: 1200 |00d0: const/4 v0, #int 0 // #0 │ │ +433446: 2802 |00d1: goto 00d3 // +0002 │ │ +433448: 1210 |00d2: const/4 v0, #int 1 // #1 │ │ +43344a: 6e20 e058 0500 |00d3: invoke-virtual {v5, v0}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +433450: 5460 735f |00d6: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ +433454: 6e20 e558 b000 |00d8: invoke-virtual {v0, v11}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ +43345a: 5460 755f |00db: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f75 │ │ +43345e: 2202 f10a |00dd: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +433462: 7010 ee5c 0200 |00df: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433468: 6e20 f95c 4200 |00e2: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43346e: 5474 955f |00e5: iget-object v4, v7, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ +433472: 6e20 f95c 4200 |00e7: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433478: 6e10 035d 0200 |00ea: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +43347e: 0c02 |00ed: move-result-object v2 │ │ +433480: 6e20 495b 2000 |00ee: invoke-virtual {v0, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433486: 5460 785f |00f1: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f78 │ │ +43348a: 6e20 7756 3000 |00f3: invoke-virtual {v0, v3}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ +433490: 5460 795f |00f6: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f79 │ │ +433494: 6e20 535b c000 |00f8: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +43349a: 5460 7e5f |00fb: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f7e │ │ +43349e: 6e20 ac56 c000 |00fd: invoke-virtual {v0, v12}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +4334a4: 5460 7f5f |0100: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f7f │ │ +4334a8: 6e20 535b c000 |0102: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +4334ae: 5460 825f |0105: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f82 │ │ +4334b2: 6e20 535b c000 |0107: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +4334b8: 5460 875f |010a: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ +4334bc: 6e20 a95a b000 |010c: invoke-virtual {v0, v11}, Landroid/widget/SeekBar;.setVisibility:(I)V // method@5aa9 │ │ +4334c2: 5460 885f |010f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f88 │ │ +4334c6: 6e20 535b b000 |0111: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +4334cc: 5460 895f |0114: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f89 │ │ +4334d0: 2202 f10a |0116: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +4334d4: 7010 ee5c 0200 |0118: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4334da: 6e20 f95c 1200 |011b: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4334e0: 5373 a35f |011e: iget-wide v3, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa3 │ │ +4334e4: 7030 fcbd 3604 |0120: invoke-direct {v6, v3, v4}, Lorg/purple/smoke/SteamBubble;.formatSize:(J)Ljava/lang/String; // method@bdfc │ │ +4334ea: 0c01 |0123: move-result-object v1 │ │ +4334ec: 6e20 f95c 1200 |0124: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4334f2: 6e10 035d 0200 |0127: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4334f8: 0c01 |012a: move-result-object v1 │ │ +4334fa: 6e20 495b 1000 |012b: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433500: 2900 2301 |012e: goto/16 0251 // +0123 │ │ +433504: 5870 965f |0130: iget-short v0, v7, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f96 │ │ +433508: 1402 7100 077f |0132: const v2, #float 1.79448e+38 // #7f070071 │ │ +43350e: 1405 8900 077f |0135: const v5, #float 1.79449e+38 // #7f070089 │ │ +433514: 3900 a300 |0138: if-nez v0, 01db // +00a3 │ │ +433518: 5460 735f |013a: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ +43351c: 6e20 e558 c000 |013c: invoke-virtual {v0, v12}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ +433522: 5460 755f |013f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f75 │ │ +433526: 2201 f10a |0141: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +43352a: 7010 ee5c 0100 |0143: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433530: 1a03 b442 |0146: const-string v3, "Origin: " // string@42b4 │ │ +433534: 6e20 f95c 3100 |0148: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43353a: 5473 955f |014b: iget-object v3, v7, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ +43353e: 6e20 f95c 3100 |014d: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433544: 6e10 035d 0100 |0150: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +43354a: 0c01 |0153: move-result-object v1 │ │ +43354c: 6e20 495b 1000 |0154: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433552: 5460 785f |0157: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f78 │ │ +433556: 1401 6900 077f |0159: const v1, #float 1.79448e+38 // #7f070069 │ │ +43355c: 6e20 7756 1000 |015c: invoke-virtual {v0, v1}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ +433562: 5460 795f |015f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f79 │ │ +433566: 6e20 535b b000 |0161: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +43356c: 5460 7e5f |0164: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f7e │ │ +433570: 5471 9e5f |0166: iget-object v1, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ +433574: 3801 0800 |0168: if-eqz v1, 0170 // +0008 │ │ +433578: 5471 9e5f |016a: iget-object v1, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ +43357c: 2111 |016c: array-length v1, v1 │ │ +43357e: 33f1 0300 |016d: if-ne v1, v15, 0170 // +0003 │ │ +433582: 2804 |016f: goto 0173 // +0004 │ │ +433584: 1402 8900 077f |0170: const v2, #float 1.79449e+38 // #7f070089 │ │ +43358a: 6e20 7756 2000 |0173: invoke-virtual {v0, v2}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ +433590: 5460 7e5f |0176: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f7e │ │ +433594: 6e20 ac56 b000 |0178: invoke-virtual {v0, v11}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +43359a: 5460 7f5f |017b: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f7f │ │ +43359e: 6e20 535b b000 |017d: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +4335a4: 5460 825f |0180: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f82 │ │ +4335a8: 6e20 535b b000 |0182: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +4335ae: 5460 825f |0185: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f82 │ │ +4335b2: 2201 f10a |0187: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +4335b6: 7010 ee5c 0100 |0189: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4335bc: 1a02 e42e |018c: const-string v2, "Locked: " // string@2ee4 │ │ +4335c0: 6e20 f95c 2100 |018e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4335c6: 5572 a05f |0191: iget-boolean v2, v7, Lorg/purple/smoke/SteamElement;.m_locked:Z // field@5fa0 │ │ +4335ca: 3802 0500 |0193: if-eqz v2, 0198 // +0005 │ │ +4335ce: 1a02 3454 |0195: const-string v2, "Yes" // string@5434 │ │ +4335d2: 2803 |0197: goto 019a // +0003 │ │ +4335d4: 1a02 4b41 |0198: const-string v2, "No" // string@414b │ │ +4335d8: 6e20 f95c 2100 |019a: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4335de: 6e10 035d 0100 |019d: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4335e4: 0c01 |01a0: move-result-object v1 │ │ +4335e6: 6e20 495b 1000 |01a1: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +4335ec: 5460 875f |01a4: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ +4335f0: 6e20 a95a c000 |01a6: invoke-virtual {v0, v12}, Landroid/widget/SeekBar;.setVisibility:(I)V // method@5aa9 │ │ +4335f6: 5460 885f |01a9: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f88 │ │ +4335fa: 6e20 535b c000 |01ab: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +433600: 5460 895f |01ae: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f89 │ │ +433604: 2201 f10a |01b0: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +433608: 7010 ee5c 0100 |01b2: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +43360e: 1a02 b346 |01b5: const-string v2, "Received: " // string@46b3 │ │ +433612: 6e20 f95c 2100 |01b7: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433618: 5372 a35f |01ba: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa3 │ │ +43361c: 7030 fcbd 2603 |01bc: invoke-direct {v6, v2, v3}, Lorg/purple/smoke/SteamBubble;.formatSize:(J)Ljava/lang/String; // method@bdfc │ │ +433622: 0c02 |01bf: move-result-object v2 │ │ +433624: 6e20 f95c 2100 |01c0: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43362a: 6e20 f95c e100 |01c3: invoke-virtual {v1, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433630: 5372 a35f |01c6: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa3 │ │ +433634: 7030 fdbd 2603 |01c8: invoke-direct {v6, v2, v3}, Lorg/purple/smoke/SteamBubble;.niceBytes:(J)Ljava/lang/String; // method@bdfd │ │ +43363a: 0c02 |01cb: move-result-object v2 │ │ +43363c: 6e20 f95c 2100 |01cc: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433642: 6e20 f95c d100 |01cf: invoke-virtual {v1, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433648: 6e10 035d 0100 |01d2: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +43364e: 0c01 |01d5: move-result-object v1 │ │ +433650: 6e20 495b 1000 |01d6: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433656: 2900 7800 |01d9: goto/16 0251 // +0078 │ │ +43365a: 5460 735f |01db: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ +43365e: 5479 9e5f |01dd: iget-object v9, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ +433662: 3809 0900 |01df: if-eqz v9, 01e8 // +0009 │ │ +433666: 5479 9e5f |01e1: iget-object v9, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ +43366a: 2199 |01e3: array-length v9, v9 │ │ +43366c: 33f9 0400 |01e4: if-ne v9, v15, 01e8 // +0004 │ │ +433670: 1219 |01e6: const/4 v9, #int 1 // #1 │ │ +433672: 2802 |01e7: goto 01e9 // +0002 │ │ +433674: 1209 |01e8: const/4 v9, #int 0 // #0 │ │ +433676: 6e20 e058 9000 |01e9: invoke-virtual {v0, v9}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +43367c: 5460 735f |01ec: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f73 │ │ +433680: 6e20 e558 b000 |01ee: invoke-virtual {v0, v11}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ +433686: 5460 755f |01f1: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f75 │ │ +43368a: 2209 f10a |01f3: new-instance v9, Ljava/lang/StringBuilder; // type@0af1 │ │ +43368e: 7010 ee5c 0900 |01f5: invoke-direct {v9}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433694: 6e20 f95c 4900 |01f8: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43369a: 5474 955f |01fb: iget-object v4, v7, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ +43369e: 6e20 f95c 4900 |01fd: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4336a4: 6e10 035d 0900 |0200: invoke-virtual {v9}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4336aa: 0c04 |0203: move-result-object v4 │ │ +4336ac: 6e20 495b 4000 |0204: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +4336b2: 5460 785f |0207: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f78 │ │ +4336b6: 6e20 7756 3000 |0209: invoke-virtual {v0, v3}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ +4336bc: 5460 795f |020c: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f79 │ │ +4336c0: 6e20 535b b000 |020e: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +4336c6: 5460 7e5f |0211: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f7e │ │ +4336ca: 5473 9e5f |0213: iget-object v3, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ +4336ce: 3803 0800 |0215: if-eqz v3, 021d // +0008 │ │ +4336d2: 5473 9e5f |0217: iget-object v3, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ +4336d6: 2133 |0219: array-length v3, v3 │ │ +4336d8: 33f3 0300 |021a: if-ne v3, v15, 021d // +0003 │ │ +4336dc: 2804 |021c: goto 0220 // +0004 │ │ +4336de: 1402 8900 077f |021d: const v2, #float 1.79449e+38 // #7f070089 │ │ +4336e4: 6e20 7756 2000 |0220: invoke-virtual {v0, v2}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ +4336ea: 5460 7e5f |0223: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f7e │ │ +4336ee: 6e20 ac56 b000 |0225: invoke-virtual {v0, v11}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +4336f4: 5460 7f5f |0228: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f7f │ │ +4336f8: 6e20 535b b000 |022a: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +4336fe: 5460 825f |022d: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f82 │ │ +433702: 6e20 535b c000 |022f: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +433708: 5460 875f |0232: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ +43370c: 6e20 a95a c000 |0234: invoke-virtual {v0, v12}, Landroid/widget/SeekBar;.setVisibility:(I)V // method@5aa9 │ │ +433712: 5460 895f |0237: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f89 │ │ +433716: 2202 f10a |0239: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +43371a: 7010 ee5c 0200 |023b: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433720: 6e20 f95c 1200 |023e: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433726: 5373 a35f |0241: iget-wide v3, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa3 │ │ +43372a: 7030 fcbd 3604 |0243: invoke-direct {v6, v3, v4}, Lorg/purple/smoke/SteamBubble;.formatSize:(J)Ljava/lang/String; // method@bdfc │ │ +433730: 0c01 |0246: move-result-object v1 │ │ +433732: 6e20 f95c 1200 |0247: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433738: 6e10 035d 0200 |024a: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +43373e: 0c01 |024d: move-result-object v1 │ │ +433740: 6e20 495b 1000 |024e: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433746: 5460 765f |0251: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_details:Landroid/widget/Switch; // field@5f76 │ │ +43374a: 7100 6fbd 0000 |0253: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +433750: 0c01 |0256: move-result-object v1 │ │ +433752: 5262 845f |0257: iget v2, v6, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f84 │ │ +433756: 6e20 8dbd 2100 |0259: invoke-virtual {v1, v2}, Lorg/purple/smoke/State;.steamDetailsState:(I)Z // method@bd8d │ │ +43375c: 0a01 |025c: move-result v1 │ │ +43375e: 6e20 db5a 1000 |025d: invoke-virtual {v0, v1}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +433764: 5460 775f |0260: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_digest:Landroid/widget/TextView; // field@5f77 │ │ +433768: 2201 f10a |0262: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +43376c: 7010 ee5c 0100 |0264: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433772: 1a02 4648 |0267: const-string v2, "SHA-256: " // string@4846 │ │ +433776: 6e20 f95c 2100 |0269: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43377c: 5472 9a5f |026c: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9a │ │ +433780: 7110 dfbb 0200 |026e: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayAsHexString:([B)Ljava/lang/String; // method@bbdf │ │ +433786: 0c02 |0271: move-result-object v2 │ │ +433788: 6e20 f95c 2100 |0272: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43378e: 6e10 035d 0100 |0275: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +433794: 0c01 |0278: move-result-object v1 │ │ +433796: 6e20 495b 1000 |0279: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +43379c: 5460 795f |027c: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f79 │ │ +4337a0: 2201 f10a |027e: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +4337a4: 7010 ee5c 0100 |0280: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4337aa: 1a02 4a19 |0283: const-string v2, "Ephemeral Key Type: " // string@194a │ │ +4337ae: 6e20 f95c 2100 |0285: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4337b4: 5472 9f5f |0288: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5f9f │ │ +4337b8: 6e20 f95c 2100 |028a: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4337be: 6e10 035d 0100 |028d: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4337c4: 0c01 |0290: move-result-object v1 │ │ +4337c6: 6e20 495b 1000 |0291: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +4337cc: 5469 7a5f |0294: iget-object v9, v6, Lorg/purple/smoke/SteamBubble;.m_eta:Landroid/widget/TextView; // field@5f7a │ │ +4337d0: 5471 a65f |0296: iget-object v1, v7, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa6 │ │ +4337d4: 5372 9d5f |0298: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ +4337d8: 5374 a35f |029a: iget-wide v4, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa3 │ │ +4337dc: 0800 1000 |029c: move-object/from16 v0, v16 │ │ +4337e0: 7606 febd 0000 |029e: invoke-direct/range {v0, v1, v2, v3, v4, v5}, Lorg/purple/smoke/SteamBubble;.prettyEta:(Ljava/lang/String;JJ)Ljava/lang/String; // method@bdfe │ │ +4337e6: 0c00 |02a1: move-result-object v0 │ │ +4337e8: 6e20 495b 0900 |02a2: invoke-virtual {v9, v0}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +4337ee: 5460 7b5f |02a5: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_fileIdentity:Landroid/widget/TextView; // field@5f7b │ │ +4337f2: 2201 f10a |02a7: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +4337f6: 7010 ee5c 0100 |02a9: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4337fc: 1a02 dd1a |02ac: const-string v2, "File Identity: " // string@1add │ │ +433800: 6e20 f95c 2100 |02ae: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433806: 5472 9b5f |02b1: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9b │ │ +43380a: 7110 dfbb 0200 |02b3: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayAsHexString:([B)Ljava/lang/String; // method@bbdf │ │ +433810: 0c02 |02b6: move-result-object v2 │ │ +433812: 6e20 f95c 2100 |02b7: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433818: 6e10 035d 0100 |02ba: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +43381e: 0c01 |02bd: move-result-object v1 │ │ +433820: 6e20 495b 1000 |02be: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433826: 5460 7c5f |02c1: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_fileName:Landroid/widget/TextView; // field@5f7c │ │ +43382a: 2201 f10a |02c3: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +43382e: 7010 ee5c 0100 |02c5: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433834: 1a02 df1a |02c8: const-string v2, "File: " // string@1adf │ │ +433838: 6e20 f95c 2100 |02ca: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43383e: 5472 975f |02cd: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f97 │ │ +433842: 6e20 f95c 2100 |02cf: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433848: 6e10 035d 0100 |02d2: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +43384e: 0c01 |02d5: move-result-object v1 │ │ +433850: 6e20 495b 1000 |02d6: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433856: 5460 7d5f |02d9: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_fileSize:Landroid/widget/TextView; // field@5f7d │ │ +43385a: 2201 f10a |02db: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +43385e: 7010 ee5c 0100 |02dd: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433864: 1a02 dc4b |02e0: const-string v2, "Size: " // string@4bdc │ │ +433868: 6e20 f95c 2100 |02e2: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43386e: 5372 9d5f |02e5: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ +433872: 7030 fcbd 2603 |02e7: invoke-direct {v6, v2, v3}, Lorg/purple/smoke/SteamBubble;.formatSize:(J)Ljava/lang/String; // method@bdfc │ │ +433878: 0c02 |02ea: move-result-object v2 │ │ +43387a: 6e20 f95c 2100 |02eb: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433880: 6e20 f95c e100 |02ee: invoke-virtual {v1, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433886: 5372 9d5f |02f1: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ +43388a: 7030 fdbd 2603 |02f3: invoke-direct {v6, v2, v3}, Lorg/purple/smoke/SteamBubble;.niceBytes:(J)Ljava/lang/String; // method@bdfd │ │ +433890: 0c02 |02f6: move-result-object v2 │ │ +433892: 6e20 f95c 2100 |02f7: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433898: 6e20 f95c d100 |02fa: invoke-virtual {v1, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43389e: 6e10 035d 0100 |02fd: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4338a4: 0c01 |0300: move-result-object v1 │ │ +4338a6: 6e20 495b 1000 |0301: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +4338ac: 5470 9e5f |0304: iget-object v0, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ +4338b0: 3800 2d00 |0306: if-eqz v0, 0333 // +002d │ │ +4338b4: 5470 9e5f |0308: iget-object v0, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ +4338b8: 2100 |030a: array-length v0, v0 │ │ +4338ba: 32f0 0300 |030b: if-eq v0, v15, 030e // +0003 │ │ +4338be: 2826 |030d: goto 0333 // +0026 │ │ +4338c0: 5460 7f5f |030e: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f7f │ │ +4338c4: 2201 f10a |0310: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +4338c8: 7010 ee5c 0100 |0312: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4338ce: 1a02 731f |0315: const-string v2, "Key Stream SHA-256: " // string@1f73 │ │ +4338d2: 6e20 f95c 2100 |0317: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4338d8: 23a2 0f1c |031a: new-array v2, v10, [[B // type@1c0f │ │ +4338dc: 5473 9e5f |031c: iget-object v3, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ +4338e0: 4d03 020b |031e: aput-object v3, v2, v11 │ │ +4338e4: 7110 b5b9 0200 |0320: invoke-static {v2}, Lorg/purple/smoke/Cryptography;.sha256:([[B)[B // method@b9b5 │ │ +4338ea: 0c02 |0323: move-result-object v2 │ │ +4338ec: 7110 dfbb 0200 |0324: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayAsHexString:([B)Ljava/lang/String; // method@bbdf │ │ +4338f2: 0c02 |0327: move-result-object v2 │ │ +4338f4: 6e20 f95c 2100 |0328: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4338fa: 6e10 035d 0100 |032b: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +433900: 0c01 |032e: move-result-object v1 │ │ +433902: 6e20 495b 1000 |032f: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433908: 2808 |0332: goto 033a // +0008 │ │ +43390a: 5460 7f5f |0333: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f7f │ │ +43390e: 1a01 741f |0335: const-string v1, "Key Stream SHA-256: N/A" // string@1f74 │ │ +433912: 6e20 495b 1000 |0337: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433918: 5370 9d5f |033a: iget-wide v0, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ +43391c: 1602 0000 |033c: const-wide/16 v2, #int 0 // #0 │ │ +433920: 3104 0002 |033e: cmp-long v4, v0, v2 │ │ +433924: 3d04 2b00 |0340: if-lez v4, 036b // +002b │ │ +433928: 5460 855f |0342: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f85 │ │ +43392c: 2201 f10a |0344: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +433930: 7010 ee5c 0100 |0346: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433936: 1902 5940 |0349: const-wide/high16 v2, #long 4636737291354636288 // #4059 │ │ +43393a: 5374 a35f |034b: iget-wide v4, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa3 │ │ +43393e: 8644 |034d: long-to-double v4, v4 │ │ +433940: 7120 2c5c 5400 |034e: invoke-static {v4, v5}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ +433946: ad04 0402 |0351: mul-double v4, v4, v2 │ │ +43394a: 5372 9d5f |0353: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ +43394e: 8622 |0355: long-to-double v2, v2 │ │ +433950: 7120 2c5c 3200 |0356: invoke-static {v2, v3}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ +433956: ce24 |0359: div-double/2addr v4, v2 │ │ +433958: 8a42 |035a: double-to-int v2, v4 │ │ +43395a: 6e20 f45c 2100 |035b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ +433960: 1a02 1003 |035e: const-string v2, "%" // string@0310 │ │ +433964: 6e20 f95c 2100 |0360: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43396a: 6e10 035d 0100 |0363: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +433970: 0c01 |0366: move-result-object v1 │ │ +433972: 6e20 495b 1000 |0367: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433978: 2808 |036a: goto 0372 // +0008 │ │ +43397a: 5460 855f |036b: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f85 │ │ +43397e: 1a01 c804 |036d: const-string v1, "0%" // string@04c8 │ │ +433982: 6e20 495b 1000 |036f: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433988: 5460 865f |0372: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f86 │ │ +43398c: 5371 9d5f |0374: iget-wide v1, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ +433990: 8412 |0376: long-to-int v2, v1 │ │ +433992: 6e20 5c5a 2000 |0377: invoke-virtual {v0, v2}, Landroid/widget/ProgressBar;.setMax:(I)V // method@5a5c │ │ +433998: 5460 865f |037a: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f86 │ │ +43399c: 5371 a35f |037c: iget-wide v1, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa3 │ │ +4339a0: 8412 |037e: long-to-int v2, v1 │ │ +4339a2: 6e20 5d5a 2000 |037f: invoke-virtual {v0, v2}, Landroid/widget/ProgressBar;.setProgress:(I)V // method@5a5d │ │ +4339a8: 5370 a25f |0382: iget-wide v0, v7, Lorg/purple/smoke/SteamElement;.m_readInterval:J // field@5fa2 │ │ +4339ac: 8401 |0384: long-to-int v1, v0 │ │ +4339ae: 1240 |0385: const/4 v0, #int 4 // #4 │ │ +4339b0: 3201 2c00 |0386: if-eq v1, v0, 03b2 // +002c │ │ +4339b4: 1302 0a00 |0388: const/16 v2, #int 10 // #a │ │ +4339b8: 3221 2200 |038a: if-eq v1, v2, 03ac // +0022 │ │ +4339bc: 1302 1400 |038c: const/16 v2, #int 20 // #14 │ │ +4339c0: 3221 1700 |038e: if-eq v1, v2, 03a5 // +0017 │ │ +4339c4: 1302 3200 |0390: const/16 v2, #int 50 // #32 │ │ +4339c8: 3221 0d00 |0392: if-eq v1, v2, 039f // +000d │ │ +4339cc: 1302 6400 |0394: const/16 v2, #int 100 // #64 │ │ +4339d0: 3221 0300 |0396: if-eq v1, v2, 0399 // +0003 │ │ +4339d4: 281f |0398: goto 03b7 // +001f │ │ +4339d6: 5461 875f |0399: iget-object v1, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ +4339da: 6e20 a75a 0100 |039b: invoke-virtual {v1, v0}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ +4339e0: 2819 |039e: goto 03b7 // +0019 │ │ +4339e2: 5460 875f |039f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ +4339e6: 6e20 a75a 8000 |03a1: invoke-virtual {v0, v8}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ +4339ec: 2813 |03a4: goto 03b7 // +0013 │ │ +4339ee: 5460 875f |03a5: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ +4339f2: 1221 |03a7: const/4 v1, #int 2 // #2 │ │ +4339f4: 6e20 a75a 1000 |03a8: invoke-virtual {v0, v1}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ +4339fa: 280c |03ab: goto 03b7 // +000c │ │ +4339fc: 5460 875f |03ac: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ +433a00: 6e20 a75a a000 |03ae: invoke-virtual {v0, v10}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ +433a06: 2806 |03b1: goto 03b7 // +0006 │ │ +433a08: 5460 875f |03b2: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f87 │ │ +433a0c: 6e20 a75a b000 |03b4: invoke-virtual {v0, v11}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ +433a12: 5460 8a5f |03b7: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_separator:Landroid/view/View; // field@5f8a │ │ +433a16: d801 12ff |03b9: add-int/lit8 v1, v18, #int -1 // #ff │ │ +433a1a: 0202 1300 |03bb: move/from16 v2, v19 │ │ +433a1e: 3321 0400 |03bd: if-ne v1, v2, 03c1 // +0004 │ │ +433a22: 130b 0800 |03bf: const/16 v11, #int 8 // #8 │ │ +433a26: 6e20 ac56 b000 |03c1: invoke-virtual {v0, v11}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +433a2c: 5460 8b5f |03c4: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_status:Landroid/widget/TextView; // field@5f8b │ │ +433a30: 2201 f10a |03c6: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +433a34: 7010 ee5c 0100 |03c8: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433a3a: 1a02 764c |03cb: const-string v2, "Status: " // string@4c76 │ │ +433a3e: 6e20 f95c 2100 |03cd: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433a44: 5472 a55f |03d0: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa5 │ │ +433a48: 6e20 f95c 2100 |03d2: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433a4e: 6e10 035d 0100 |03d5: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +433a54: 0c01 |03d8: move-result-object v1 │ │ +433a56: 6e20 495b 1000 |03d9: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433a5c: 5870 965f |03dc: iget-short v0, v7, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f96 │ │ +433a60: 3900 1b00 |03de: if-nez v0, 03f9 // +001b │ │ +433a64: 5460 8d5f |03e0: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_transferRate:Landroid/widget/TextView; // field@5f8d │ │ +433a68: 2201 f10a |03e2: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +433a6c: 7010 ee5c 0100 |03e4: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433a72: 1a02 ab46 |03e7: const-string v2, "Receive Rate: " // string@46ab │ │ +433a76: 6e20 f95c 2100 |03e9: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433a7c: 5472 a65f |03ec: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa6 │ │ +433a80: 6e20 f95c 2100 |03ee: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433a86: 6e10 035d 0100 |03f1: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +433a8c: 0c01 |03f4: move-result-object v1 │ │ +433a8e: 6e20 495b 1000 |03f5: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433a94: 2819 |03f8: goto 0411 // +0019 │ │ +433a96: 5460 8d5f |03f9: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_transferRate:Landroid/widget/TextView; // field@5f8d │ │ +433a9a: 2201 f10a |03fb: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +433a9e: 7010 ee5c 0100 |03fd: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433aa4: 1a02 b24f |0400: const-string v2, "Transfer Rate: " // string@4fb2 │ │ +433aa8: 6e20 f95c 2100 |0402: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433aae: 5472 a65f |0405: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa6 │ │ +433ab2: 6e20 f95c 2100 |0407: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433ab8: 6e10 035d 0100 |040a: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +433abe: 0c01 |040d: move-result-object v1 │ │ +433ac0: 6e20 495b 1000 |040e: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433ac6: 5460 8e5f |0411: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +433aca: 5261 845f |0413: iget v1, v6, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f84 │ │ +433ace: 6e20 8256 1000 |0415: invoke-virtual {v0, v1}, Landroid/view/View;.setId:(I)V // method@5682 │ │ +433ad4: 0e00 |0418: return-void │ │ +433ad6: 0000 |0419: nop // spacer │ │ +433ad8: 0002 0400 9b34 4a80 4bf6 60ac 2e99 ... |041a: sparse-switch-data (18 units) │ │ +433afc: 0001 0400 0000 0000 4900 0000 2500 ... |042c: packed-switch-data (12 units) │ │ catches : (none) │ │ positions : │ │ 0x0007 line=308 │ │ 0x000b line=310 │ │ 0x0050 line=334 │ │ 0x0055 line=335 │ │ 0x005b line=328 │ │ @@ -747660,17 +747659,17 @@ │ │ type : '()Landroid/view/View;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -432c7c: |[432c7c] org.purple.smoke.SteamBubble.view:()Landroid/view/View; │ │ -432c8c: 5410 8e5f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ -432c90: 1100 |0002: return-object v0 │ │ +432c78: |[432c78] org.purple.smoke.SteamBubble.view:()Landroid/view/View; │ │ +432c88: 5410 8e5f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f8e │ │ +432c8c: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=300 │ │ locals : │ │ 0x0000 - 0x0003 reg=1 this Lorg/purple/smoke/SteamBubble; │ │ │ │ source_file_idx : 19583 (SteamBubble.java) │ │ @@ -747780,44 +747779,44 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 54 16-bit code units │ │ -433b18: |[433b18] org.purple.smoke.SteamElement.:()V │ │ -433b28: 7010 8f5c 0400 |0000: invoke-direct {v4}, Ljava/lang/Object;.:()V // method@5c8f │ │ -433b2e: 1a00 0000 |0003: const-string v0, "" // string@0000 │ │ -433b32: 5b40 955f |0005: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ -433b36: 5b40 975f |0007: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f97 │ │ -433b3a: 5b40 9c5f |0009: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_fileName:Ljava/lang/String; // field@5f9c │ │ -433b3e: 1a01 af3f |000b: const-string v1, "McEliece" // string@3faf │ │ -433b42: 5b41 9f5f |000d: iput-object v1, v4, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5f9f │ │ -433b46: 1a01 2993 |000f: const-string v1, "paused" // string@9329 │ │ -433b4a: 5b41 a55f |0011: iput-object v1, v4, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa5 │ │ -433b4e: 5b40 a65f |0013: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa6 │ │ -433b52: 1210 |0015: const/4 v0, #int 1 // #1 │ │ -433b54: 5c40 a05f |0016: iput-boolean v0, v4, Lorg/purple/smoke/SteamElement;.m_locked:Z // field@5fa0 │ │ -433b58: 1200 |0018: const/4 v0, #int 0 // #0 │ │ -433b5a: 5b40 985f |0019: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f98 │ │ -433b5e: 5b40 995f |001b: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f99 │ │ -433b62: 5b40 9a5f |001d: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9a │ │ -433b66: 5b40 9b5f |001f: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9b │ │ -433b6a: 5b40 9e5f |0021: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ -433b6e: 12f0 |0023: const/4 v0, #int -1 // #ff │ │ -433b70: 5940 a15f |0024: iput v0, v4, Lorg/purple/smoke/SteamElement;.m_oid:I // field@5fa1 │ │ -433b74: 5940 a45f |0026: iput v0, v4, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa4 │ │ -433b78: 1600 0000 |0028: const-wide/16 v0, #int 0 // #0 │ │ -433b7c: 5a40 9d5f |002a: iput-wide v0, v4, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ -433b80: 1602 0400 |002c: const-wide/16 v2, #int 4 // #4 │ │ -433b84: 5a42 a25f |002e: iput-wide v2, v4, Lorg/purple/smoke/SteamElement;.m_readInterval:J // field@5fa2 │ │ -433b88: 5a40 a35f |0030: iput-wide v0, v4, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa3 │ │ -433b8c: 1200 |0032: const/4 v0, #int 0 // #0 │ │ -433b8e: 5f40 965f |0033: iput-short v0, v4, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f96 │ │ -433b92: 0e00 |0035: return-void │ │ +433b14: |[433b14] org.purple.smoke.SteamElement.:()V │ │ +433b24: 7010 8f5c 0400 |0000: invoke-direct {v4}, Ljava/lang/Object;.:()V // method@5c8f │ │ +433b2a: 1a00 0000 |0003: const-string v0, "" // string@0000 │ │ +433b2e: 5b40 955f |0005: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ +433b32: 5b40 975f |0007: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f97 │ │ +433b36: 5b40 9c5f |0009: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_fileName:Ljava/lang/String; // field@5f9c │ │ +433b3a: 1a01 af3f |000b: const-string v1, "McEliece" // string@3faf │ │ +433b3e: 5b41 9f5f |000d: iput-object v1, v4, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5f9f │ │ +433b42: 1a01 2993 |000f: const-string v1, "paused" // string@9329 │ │ +433b46: 5b41 a55f |0011: iput-object v1, v4, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa5 │ │ +433b4a: 5b40 a65f |0013: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa6 │ │ +433b4e: 1210 |0015: const/4 v0, #int 1 // #1 │ │ +433b50: 5c40 a05f |0016: iput-boolean v0, v4, Lorg/purple/smoke/SteamElement;.m_locked:Z // field@5fa0 │ │ +433b54: 1200 |0018: const/4 v0, #int 0 // #0 │ │ +433b56: 5b40 985f |0019: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f98 │ │ +433b5a: 5b40 995f |001b: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f99 │ │ +433b5e: 5b40 9a5f |001d: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9a │ │ +433b62: 5b40 9b5f |001f: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9b │ │ +433b66: 5b40 9e5f |0021: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ +433b6a: 12f0 |0023: const/4 v0, #int -1 // #ff │ │ +433b6c: 5940 a15f |0024: iput v0, v4, Lorg/purple/smoke/SteamElement;.m_oid:I // field@5fa1 │ │ +433b70: 5940 a45f |0026: iput v0, v4, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa4 │ │ +433b74: 1600 0000 |0028: const-wide/16 v0, #int 0 // #0 │ │ +433b78: 5a40 9d5f |002a: iput-wide v0, v4, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ +433b7c: 1602 0400 |002c: const-wide/16 v2, #int 4 // #4 │ │ +433b80: 5a42 a25f |002e: iput-wide v2, v4, Lorg/purple/smoke/SteamElement;.m_readInterval:J // field@5fa2 │ │ +433b84: 5a40 a35f |0030: iput-wide v0, v4, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa3 │ │ +433b88: 1200 |0032: const/4 v0, #int 0 // #0 │ │ +433b8a: 5f40 965f |0033: iput-short v0, v4, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f96 │ │ +433b8e: 0e00 |0035: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=54 │ │ 0x0005 line=32 │ │ 0x0007 line=33 │ │ 0x0009 line=34 │ │ 0x000d line=35 │ │ @@ -747843,56 +747842,56 @@ │ │ type : '(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 9 │ │ ins : 4 │ │ outs : 3 │ │ insns size : 78 16-bit code units │ │ -433b94: |[433b94] org.purple.smoke.SteamElement.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V │ │ -433ba4: 7010 8f5c 0500 |0000: invoke-direct {v5}, Ljava/lang/Object;.:()V // method@5c8f │ │ -433baa: 1a00 0000 |0003: const-string v0, "" // string@0000 │ │ -433bae: 5b50 955f |0005: iput-object v0, v5, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ -433bb2: 1a01 af3f |0007: const-string v1, "McEliece" // string@3faf │ │ -433bb6: 5b51 9f5f |0009: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5f9f │ │ -433bba: 1a01 2993 |000b: const-string v1, "paused" // string@9329 │ │ -433bbe: 5b51 a55f |000d: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa5 │ │ -433bc2: 5b50 a65f |000f: iput-object v0, v5, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa6 │ │ -433bc6: 1210 |0011: const/4 v0, #int 1 // #1 │ │ -433bc8: 5c50 a05f |0012: iput-boolean v0, v5, Lorg/purple/smoke/SteamElement;.m_locked:Z // field@5fa0 │ │ -433bcc: 1201 |0014: const/4 v1, #int 0 // #0 │ │ -433bce: 5b51 985f |0015: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f98 │ │ -433bd2: 5b51 995f |0017: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f99 │ │ -433bd6: 5b51 9a5f |0019: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9a │ │ -433bda: 5b51 9b5f |001b: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9b │ │ -433bde: 5b51 9e5f |001d: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ -433be2: 12f1 |001f: const/4 v1, #int -1 // #ff │ │ -433be4: 5951 a15f |0020: iput v1, v5, Lorg/purple/smoke/SteamElement;.m_oid:I // field@5fa1 │ │ -433be8: 5951 a45f |0022: iput v1, v5, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa4 │ │ -433bec: 1601 0000 |0024: const-wide/16 v1, #int 0 // #0 │ │ -433bf0: 5a51 9d5f |0026: iput-wide v1, v5, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ -433bf4: 1603 0400 |0028: const-wide/16 v3, #int 4 // #4 │ │ -433bf8: 5a53 a25f |002a: iput-wide v3, v5, Lorg/purple/smoke/SteamElement;.m_readInterval:J // field@5fa2 │ │ -433bfc: 5a51 a35f |002c: iput-wide v1, v5, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa3 │ │ -433c00: 5f50 965f |002e: iput-short v0, v5, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f96 │ │ -433c04: 5b56 975f |0030: iput-object v6, v5, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f97 │ │ -433c08: 5b57 9c5f |0032: iput-object v7, v5, Lorg/purple/smoke/SteamElement;.m_fileName:Ljava/lang/String; // field@5f9c │ │ -433c0c: 1306 2e00 |0034: const/16 v6, #int 46 // #2e │ │ -433c10: 6e20 c45c 6700 |0036: invoke-virtual {v7, v6}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ -433c16: 0a00 |0039: move-result v0 │ │ -433c18: 3d00 0b00 |003a: if-lez v0, 0045 // +000b │ │ -433c1c: 1200 |003c: const/4 v0, #int 0 // #0 │ │ -433c1e: 6e20 c45c 6700 |003d: invoke-virtual {v7, v6}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ -433c24: 0a06 |0040: move-result v6 │ │ -433c26: 6e30 cd5c 0706 |0041: invoke-virtual {v7, v0, v6}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ -433c2c: 0c07 |0044: move-result-object v7 │ │ -433c2e: 7110 e7bb 0700 |0045: invoke-static {v7}, Lorg/purple/smoke/Miscellaneous;.fileSize:(Ljava/lang/String;)J // method@bbe7 │ │ -433c34: 0b06 |0048: move-result-wide v6 │ │ -433c36: 5a56 9d5f |0049: iput-wide v6, v5, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ -433c3a: 5b58 9f5f |004b: iput-object v8, v5, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5f9f │ │ -433c3e: 0e00 |004d: return-void │ │ +433b90: |[433b90] org.purple.smoke.SteamElement.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V │ │ +433ba0: 7010 8f5c 0500 |0000: invoke-direct {v5}, Ljava/lang/Object;.:()V // method@5c8f │ │ +433ba6: 1a00 0000 |0003: const-string v0, "" // string@0000 │ │ +433baa: 5b50 955f |0005: iput-object v0, v5, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ +433bae: 1a01 af3f |0007: const-string v1, "McEliece" // string@3faf │ │ +433bb2: 5b51 9f5f |0009: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5f9f │ │ +433bb6: 1a01 2993 |000b: const-string v1, "paused" // string@9329 │ │ +433bba: 5b51 a55f |000d: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa5 │ │ +433bbe: 5b50 a65f |000f: iput-object v0, v5, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa6 │ │ +433bc2: 1210 |0011: const/4 v0, #int 1 // #1 │ │ +433bc4: 5c50 a05f |0012: iput-boolean v0, v5, Lorg/purple/smoke/SteamElement;.m_locked:Z // field@5fa0 │ │ +433bc8: 1201 |0014: const/4 v1, #int 0 // #0 │ │ +433bca: 5b51 985f |0015: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f98 │ │ +433bce: 5b51 995f |0017: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f99 │ │ +433bd2: 5b51 9a5f |0019: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9a │ │ +433bd6: 5b51 9b5f |001b: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9b │ │ +433bda: 5b51 9e5f |001d: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ +433bde: 12f1 |001f: const/4 v1, #int -1 // #ff │ │ +433be0: 5951 a15f |0020: iput v1, v5, Lorg/purple/smoke/SteamElement;.m_oid:I // field@5fa1 │ │ +433be4: 5951 a45f |0022: iput v1, v5, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa4 │ │ +433be8: 1601 0000 |0024: const-wide/16 v1, #int 0 // #0 │ │ +433bec: 5a51 9d5f |0026: iput-wide v1, v5, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ +433bf0: 1603 0400 |0028: const-wide/16 v3, #int 4 // #4 │ │ +433bf4: 5a53 a25f |002a: iput-wide v3, v5, Lorg/purple/smoke/SteamElement;.m_readInterval:J // field@5fa2 │ │ +433bf8: 5a51 a35f |002c: iput-wide v1, v5, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa3 │ │ +433bfc: 5f50 965f |002e: iput-short v0, v5, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f96 │ │ +433c00: 5b56 975f |0030: iput-object v6, v5, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f97 │ │ +433c04: 5b57 9c5f |0032: iput-object v7, v5, Lorg/purple/smoke/SteamElement;.m_fileName:Ljava/lang/String; // field@5f9c │ │ +433c08: 1306 2e00 |0034: const/16 v6, #int 46 // #2e │ │ +433c0c: 6e20 c45c 6700 |0036: invoke-virtual {v7, v6}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ +433c12: 0a00 |0039: move-result v0 │ │ +433c14: 3d00 0b00 |003a: if-lez v0, 0045 // +000b │ │ +433c18: 1200 |003c: const/4 v0, #int 0 // #0 │ │ +433c1a: 6e20 c45c 6700 |003d: invoke-virtual {v7, v6}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ +433c20: 0a06 |0040: move-result v6 │ │ +433c22: 6e30 cd5c 0706 |0041: invoke-virtual {v7, v0, v6}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ +433c28: 0c07 |0044: move-result-object v7 │ │ +433c2a: 7110 e7bb 0700 |0045: invoke-static {v7}, Lorg/purple/smoke/Miscellaneous;.fileSize:(Ljava/lang/String;)J // method@bbe7 │ │ +433c30: 0b06 |0048: move-result-wide v6 │ │ +433c32: 5a56 9d5f |0049: iput-wide v6, v5, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ +433c36: 5b58 9f5f |004b: iput-object v8, v5, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5f9f │ │ +433c3a: 0e00 |004d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=60 │ │ 0x0005 line=32 │ │ 0x0009 line=35 │ │ 0x000d line=36 │ │ 0x000f line=37 │ │ @@ -747956,18 +747955,18 @@ │ │ type : '(Lorg/purple/smoke/SteamKeyExchange;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -433c40: |[433c40] org.purple.smoke.SteamKeyExchange$1.:(Lorg/purple/smoke/SteamKeyExchange;)V │ │ -433c50: 5b01 a75f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ -433c54: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -433c5a: 0e00 |0005: return-void │ │ +433c3c: |[433c3c] org.purple.smoke.SteamKeyExchange$1.:(Lorg/purple/smoke/SteamKeyExchange;)V │ │ +433c4c: 5b01 a75f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ +433c50: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +433c56: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=372 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/SteamKeyExchange$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/SteamKeyExchange; │ │ │ │ @@ -747977,95 +747976,95 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 147 16-bit code units │ │ -433c5c: |[433c5c] org.purple.smoke.SteamKeyExchange$1.run:()V │ │ -433c6c: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -433c6e: 5461 a75f |0001: iget-object v1, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ -433c72: 7110 0abe 0100 |0003: invoke-static {v1}, Lorg/purple/smoke/SteamKeyExchange;.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@be0a │ │ -433c78: 0c01 |0006: move-result-object v1 │ │ -433c7a: 6e10 ed60 0100 |0007: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -433c80: 0c01 |000a: move-result-object v1 │ │ -433c82: 6e10 e960 0100 |000b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ -433c88: 1211 |000e: const/4 v1, #int 1 // #1 │ │ -433c8a: 5462 a75f |000f: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ -433c8e: 7110 0bbe 0200 |0011: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$100:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/ArrayList; // method@be0b │ │ -433c94: 0c02 |0014: move-result-object v2 │ │ -433c96: 6e10 a65f 0200 |0015: invoke-virtual {v2}, Ljava/util/ArrayList;.isEmpty:()Z // method@5fa6 │ │ -433c9c: 0a02 |0018: move-result v2 │ │ -433c9e: 3902 1a00 |0019: if-nez v2, 0033 // +001a │ │ -433ca2: 5462 a75f |001b: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ -433ca6: 7110 0bbe 0200 |001d: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$100:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/ArrayList; // method@be0b │ │ -433cac: 0c02 |0020: move-result-object v2 │ │ -433cae: 5463 a75f |0021: iget-object v3, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ -433cb2: 7110 0bbe 0300 |0023: invoke-static {v3}, Lorg/purple/smoke/SteamKeyExchange;.access$100:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/ArrayList; // method@be0b │ │ -433cb8: 0c03 |0026: move-result-object v3 │ │ -433cba: 6e10 ad5f 0300 |0027: invoke-virtual {v3}, Ljava/util/ArrayList;.size:()I // method@5fad │ │ -433cc0: 0a03 |002a: move-result v3 │ │ -433cc2: b113 |002b: sub-int/2addr v3, v1 │ │ -433cc4: 6e20 a95f 3200 |002c: invoke-virtual {v2, v3}, Ljava/util/ArrayList;.remove:(I)Ljava/lang/Object; // method@5fa9 │ │ -433cca: 0c02 |002f: move-result-object v2 │ │ -433ccc: 1f02 2b1b |0030: check-cast v2, Lorg/purple/smoke/SteamKeyExchange$Pair; // type@1b2b │ │ -433cd0: 0720 |0032: move-object v0, v2 │ │ -433cd2: 5462 a75f |0033: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ -433cd6: 7110 0abe 0200 |0035: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@be0a │ │ -433cdc: 0c02 |0038: move-result-object v2 │ │ -433cde: 6e10 ed60 0200 |0039: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -433ce4: 0c02 |003c: move-result-object v2 │ │ -433ce6: 6e10 ea60 0200 |003d: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -433cec: 2817 |0040: goto 0057 // +0017 │ │ -433cee: 0d00 |0041: move-exception v0 │ │ -433cf0: 5461 a75f |0042: iget-object v1, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ -433cf4: 7110 0abe 0100 |0044: invoke-static {v1}, Lorg/purple/smoke/SteamKeyExchange;.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@be0a │ │ -433cfa: 0c01 |0047: move-result-object v1 │ │ -433cfc: 6e10 ed60 0100 |0048: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -433d02: 0c01 |004b: move-result-object v1 │ │ -433d04: 6e10 ea60 0100 |004c: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -433d0a: 2700 |004f: throw v0 │ │ -433d0c: 5462 a75f |0050: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ -433d10: 7110 0abe 0200 |0052: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@be0a │ │ -433d16: 0c02 |0055: move-result-object v2 │ │ -433d18: 28e3 |0056: goto 0039 // -001d │ │ -433d1a: 3900 1b00 |0057: if-nez v0, 0072 // +001b │ │ -433d1e: 5462 a75f |0059: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ -433d22: 7110 0cbe 0200 |005b: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$200:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/lang/Object; // method@be0c │ │ -433d28: 0c02 |005e: move-result-object v2 │ │ -433d2a: 1d02 |005f: monitor-enter v2 │ │ -433d2c: 5463 a75f |0060: iget-object v3, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ -433d30: 7110 0cbe 0300 |0062: invoke-static {v3}, Lorg/purple/smoke/SteamKeyExchange;.access$200:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/lang/Object; // method@be0c │ │ -433d36: 0c03 |0065: move-result-object v3 │ │ -433d38: 1604 1027 |0066: const-wide/16 v4, #int 10000 // #2710 │ │ -433d3c: 6e30 985c 4305 |0068: invoke-virtual {v3, v4, v5}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ -433d42: 2803 |006b: goto 006e // +0003 │ │ -433d44: 0d00 |006c: move-exception v0 │ │ -433d46: 2803 |006d: goto 0070 // +0003 │ │ -433d48: 1e02 |006e: monitor-exit v2 │ │ -433d4a: 2803 |006f: goto 0072 // +0003 │ │ -433d4c: 1e02 |0070: monitor-exit v2 │ │ -433d4e: 2700 |0071: throw v0 │ │ -433d50: 3800 2000 |0072: if-eqz v0, 0092 // +0020 │ │ -433d54: 5402 a95f |0074: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_ciphertext:[B // field@5fa9 │ │ -433d58: 1203 |0076: const/4 v3, #int 0 // #0 │ │ -433d5a: 4802 0203 |0077: aget-byte v2, v2, v3 │ │ -433d5e: 6204 1855 |0079: sget-object v4, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ -433d62: 4804 0403 |007b: aget-byte v4, v4, v3 │ │ -433d66: 3242 0c00 |007d: if-eq v2, v4, 0089 // +000c │ │ -433d6a: 5402 a95f |007f: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_ciphertext:[B // field@5fa9 │ │ -433d6e: 4802 0203 |0081: aget-byte v2, v2, v3 │ │ -433d72: 6203 1855 |0083: sget-object v3, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ -433d76: 4801 0301 |0085: aget-byte v1, v3, v1 │ │ -433d7a: 3312 0b00 |0087: if-ne v2, v1, 0092 // +000b │ │ -433d7e: 5461 a75f |0089: iget-object v1, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ -433d82: 5402 a95f |008b: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_ciphertext:[B // field@5fa9 │ │ -433d86: 5400 aa5f |008d: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_pki:[B // field@5faa │ │ -433d8a: 7130 0dbe 2100 |008f: invoke-static {v1, v2, v0}, Lorg/purple/smoke/SteamKeyExchange;.access$300:(Lorg/purple/smoke/SteamKeyExchange;[B[B)V // method@be0d │ │ -433d90: 0e00 |0092: return-void │ │ +433c58: |[433c58] org.purple.smoke.SteamKeyExchange$1.run:()V │ │ +433c68: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +433c6a: 5461 a75f |0001: iget-object v1, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ +433c6e: 7110 0abe 0100 |0003: invoke-static {v1}, Lorg/purple/smoke/SteamKeyExchange;.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@be0a │ │ +433c74: 0c01 |0006: move-result-object v1 │ │ +433c76: 6e10 ed60 0100 |0007: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +433c7c: 0c01 |000a: move-result-object v1 │ │ +433c7e: 6e10 e960 0100 |000b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ +433c84: 1211 |000e: const/4 v1, #int 1 // #1 │ │ +433c86: 5462 a75f |000f: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ +433c8a: 7110 0bbe 0200 |0011: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$100:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/ArrayList; // method@be0b │ │ +433c90: 0c02 |0014: move-result-object v2 │ │ +433c92: 6e10 a65f 0200 |0015: invoke-virtual {v2}, Ljava/util/ArrayList;.isEmpty:()Z // method@5fa6 │ │ +433c98: 0a02 |0018: move-result v2 │ │ +433c9a: 3902 1a00 |0019: if-nez v2, 0033 // +001a │ │ +433c9e: 5462 a75f |001b: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ +433ca2: 7110 0bbe 0200 |001d: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$100:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/ArrayList; // method@be0b │ │ +433ca8: 0c02 |0020: move-result-object v2 │ │ +433caa: 5463 a75f |0021: iget-object v3, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ +433cae: 7110 0bbe 0300 |0023: invoke-static {v3}, Lorg/purple/smoke/SteamKeyExchange;.access$100:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/ArrayList; // method@be0b │ │ +433cb4: 0c03 |0026: move-result-object v3 │ │ +433cb6: 6e10 ad5f 0300 |0027: invoke-virtual {v3}, Ljava/util/ArrayList;.size:()I // method@5fad │ │ +433cbc: 0a03 |002a: move-result v3 │ │ +433cbe: b113 |002b: sub-int/2addr v3, v1 │ │ +433cc0: 6e20 a95f 3200 |002c: invoke-virtual {v2, v3}, Ljava/util/ArrayList;.remove:(I)Ljava/lang/Object; // method@5fa9 │ │ +433cc6: 0c02 |002f: move-result-object v2 │ │ +433cc8: 1f02 2b1b |0030: check-cast v2, Lorg/purple/smoke/SteamKeyExchange$Pair; // type@1b2b │ │ +433ccc: 0720 |0032: move-object v0, v2 │ │ +433cce: 5462 a75f |0033: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ +433cd2: 7110 0abe 0200 |0035: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@be0a │ │ +433cd8: 0c02 |0038: move-result-object v2 │ │ +433cda: 6e10 ed60 0200 |0039: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +433ce0: 0c02 |003c: move-result-object v2 │ │ +433ce2: 6e10 ea60 0200 |003d: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +433ce8: 2817 |0040: goto 0057 // +0017 │ │ +433cea: 0d00 |0041: move-exception v0 │ │ +433cec: 5461 a75f |0042: iget-object v1, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ +433cf0: 7110 0abe 0100 |0044: invoke-static {v1}, Lorg/purple/smoke/SteamKeyExchange;.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@be0a │ │ +433cf6: 0c01 |0047: move-result-object v1 │ │ +433cf8: 6e10 ed60 0100 |0048: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +433cfe: 0c01 |004b: move-result-object v1 │ │ +433d00: 6e10 ea60 0100 |004c: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +433d06: 2700 |004f: throw v0 │ │ +433d08: 5462 a75f |0050: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ +433d0c: 7110 0abe 0200 |0052: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@be0a │ │ +433d12: 0c02 |0055: move-result-object v2 │ │ +433d14: 28e3 |0056: goto 0039 // -001d │ │ +433d16: 3900 1b00 |0057: if-nez v0, 0072 // +001b │ │ +433d1a: 5462 a75f |0059: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ +433d1e: 7110 0cbe 0200 |005b: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$200:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/lang/Object; // method@be0c │ │ +433d24: 0c02 |005e: move-result-object v2 │ │ +433d26: 1d02 |005f: monitor-enter v2 │ │ +433d28: 5463 a75f |0060: iget-object v3, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ +433d2c: 7110 0cbe 0300 |0062: invoke-static {v3}, Lorg/purple/smoke/SteamKeyExchange;.access$200:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/lang/Object; // method@be0c │ │ +433d32: 0c03 |0065: move-result-object v3 │ │ +433d34: 1604 1027 |0066: const-wide/16 v4, #int 10000 // #2710 │ │ +433d38: 6e30 985c 4305 |0068: invoke-virtual {v3, v4, v5}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ +433d3e: 2803 |006b: goto 006e // +0003 │ │ +433d40: 0d00 |006c: move-exception v0 │ │ +433d42: 2803 |006d: goto 0070 // +0003 │ │ +433d44: 1e02 |006e: monitor-exit v2 │ │ +433d46: 2803 |006f: goto 0072 // +0003 │ │ +433d48: 1e02 |0070: monitor-exit v2 │ │ +433d4a: 2700 |0071: throw v0 │ │ +433d4c: 3800 2000 |0072: if-eqz v0, 0092 // +0020 │ │ +433d50: 5402 a95f |0074: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_ciphertext:[B // field@5fa9 │ │ +433d54: 1203 |0076: const/4 v3, #int 0 // #0 │ │ +433d56: 4802 0203 |0077: aget-byte v2, v2, v3 │ │ +433d5a: 6204 1855 |0079: sget-object v4, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ +433d5e: 4804 0403 |007b: aget-byte v4, v4, v3 │ │ +433d62: 3242 0c00 |007d: if-eq v2, v4, 0089 // +000c │ │ +433d66: 5402 a95f |007f: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_ciphertext:[B // field@5fa9 │ │ +433d6a: 4802 0203 |0081: aget-byte v2, v2, v3 │ │ +433d6e: 6203 1855 |0083: sget-object v3, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ +433d72: 4801 0301 |0085: aget-byte v1, v3, v1 │ │ +433d76: 3312 0b00 |0087: if-ne v2, v1, 0092 // +000b │ │ +433d7a: 5461 a75f |0089: iget-object v1, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa7 │ │ +433d7e: 5402 a95f |008b: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_ciphertext:[B // field@5fa9 │ │ +433d82: 5400 aa5f |008d: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_pki:[B // field@5faa │ │ +433d86: 7130 0dbe 2100 |008f: invoke-static {v1, v2, v0}, Lorg/purple/smoke/SteamKeyExchange;.access$300:(Lorg/purple/smoke/SteamKeyExchange;[B[B)V // method@be0d │ │ +433d8c: 0e00 |0092: return-void │ │ catches : 6 │ │ 0x0001 - 0x000e │ │ Ljava/lang/Exception; -> 0x0092 │ │ 0x000f - 0x0032 │ │ Ljava/lang/Exception; -> 0x0050 │ │ -> 0x0041 │ │ 0x0033 - 0x0060 │ │ @@ -748127,18 +748126,18 @@ │ │ type : '(Lorg/purple/smoke/SteamKeyExchange;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -433dd8: |[433dd8] org.purple.smoke.SteamKeyExchange$2.:(Lorg/purple/smoke/SteamKeyExchange;)V │ │ -433de8: 5b01 a85f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ -433dec: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -433df2: 0e00 |0005: return-void │ │ +433dd4: |[433dd4] org.purple.smoke.SteamKeyExchange$2.:(Lorg/purple/smoke/SteamKeyExchange;)V │ │ +433de4: 5b01 a85f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ +433de8: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +433dee: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=421 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/SteamKeyExchange$2; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/SteamKeyExchange; │ │ │ │ @@ -748148,176 +748147,176 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 18 │ │ ins : 1 │ │ outs : 10 │ │ insns size : 304 16-bit code units │ │ -433df4: |[433df4] org.purple.smoke.SteamKeyExchange$2.run:()V │ │ -433e04: 0800 1100 |0000: move-object/from16 v0, v17 │ │ -433e08: 7100 6fbd 0000 |0002: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -433e0e: 0c01 |0005: move-result-object v1 │ │ -433e10: 6e10 72bd 0100 |0006: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ -433e16: 0a01 |0009: move-result v1 │ │ -433e18: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ -433e1c: 0e00 |000c: return-void │ │ -433e1e: 7100 10be 0000 |000d: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$600:()Lorg/purple/smoke/Database; // method@be10 │ │ -433e24: 0c01 |0010: move-result-object v1 │ │ -433e26: 7100 0ebe 0000 |0011: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$400:()Lorg/purple/smoke/Cryptography; // method@be0e │ │ -433e2c: 0c02 |0014: move-result-object v2 │ │ -433e2e: 5403 a85f |0015: iget-object v3, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ -433e32: 7110 0fbe 0300 |0017: invoke-static {v3}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be0f │ │ -433e38: 0c03 |001a: move-result-object v3 │ │ -433e3a: 6e10 dc60 0300 |001b: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -433e40: 0a03 |001e: move-result v3 │ │ -433e42: 12f4 |001f: const/4 v4, #int -1 // #ff │ │ -433e44: 6e40 1cba 2134 |0020: invoke-virtual {v1, v2, v4, v3}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba1c │ │ -433e4a: 0c01 |0023: move-result-object v1 │ │ -433e4c: 3801 f400 |0024: if-eqz v1, 0118 // +00f4 │ │ -433e50: 5412 955f |0026: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ -433e54: 1a03 b542 |0028: const-string v3, "Other (Non-Smoke)" // string@42b5 │ │ -433e58: 6e20 b85c 3200 |002a: invoke-virtual {v2, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -433e5e: 0a02 |002d: move-result v2 │ │ -433e60: 3902 ea00 |002e: if-nez v2, 0118 // +00ea │ │ -433e64: 5812 965f |0030: iget-short v2, v1, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f96 │ │ -433e68: 3802 e600 |0032: if-eqz v2, 0118 // +00e6 │ │ -433e6c: 5312 9d5f |0034: iget-wide v2, v1, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ -433e70: 1605 0000 |0036: const-wide/16 v5, #int 0 // #0 │ │ -433e74: 3107 0205 |0038: cmp-long v7, v2, v5 │ │ -433e78: 3907 0400 |003a: if-nez v7, 003e // +0004 │ │ -433e7c: 2900 dc00 |003c: goto/16 0118 // +00dc │ │ -433e80: 5412 9e5f |003e: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ -433e84: 3802 1500 |0040: if-eqz v2, 0055 // +0015 │ │ -433e88: 5412 9e5f |0042: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ -433e8c: 2122 |0044: array-length v2, v2 │ │ -433e8e: 1303 6000 |0045: const/16 v3, #int 96 // #60 │ │ -433e92: 3332 0e00 |0047: if-ne v2, v3, 0055 // +000e │ │ -433e96: 5402 a85f |0049: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ -433e9a: 7110 0fbe 0200 |004b: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be0f │ │ -433ea0: 0c02 |004e: move-result-object v2 │ │ -433ea2: 5211 a45f |004f: iget v1, v1, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa4 │ │ -433ea6: 6e20 de60 1200 |0051: invoke-virtual {v2, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60de │ │ -433eac: 0e00 |0054: return-void │ │ -433eae: 5412 985f |0055: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f98 │ │ -433eb2: 1a03 6c46 |0057: const-string v3, "RSA" // string@466c │ │ -433eb6: 1204 |0059: const/4 v4, #int 0 // #0 │ │ -433eb8: 1a05 af3f |005a: const-string v5, "McEliece" // string@3faf │ │ -433ebc: 1206 |005c: const/4 v6, #int 0 // #0 │ │ -433ebe: 3802 3500 |005d: if-eqz v2, 0092 // +0035 │ │ -433ec2: 5412 985f |005f: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f98 │ │ -433ec6: 2122 |0061: array-length v2, v2 │ │ -433ec8: 3802 3000 |0062: if-eqz v2, 0092 // +0030 │ │ -433ecc: 5412 995f |0064: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f99 │ │ -433ed0: 3802 2c00 |0066: if-eqz v2, 0092 // +002c │ │ -433ed4: 5412 995f |0068: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f99 │ │ -433ed8: 2122 |006a: array-length v2, v2 │ │ -433eda: 3902 0300 |006b: if-nez v2, 006e // +0003 │ │ -433ede: 2825 |006d: goto 0092 // +0025 │ │ -433ee0: 7100 0bbb 0000 |006e: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -433ee6: 0c02 |0071: move-result-object v2 │ │ -433ee8: 6e10 0ebb 0200 |0072: invoke-virtual {v2}, Lorg/purple/smoke/Kernel;.isNetworkConnected:()Z // method@bb0e │ │ -433eee: 0a02 |0075: move-result v2 │ │ -433ef0: 3802 4600 |0076: if-eqz v2, 00bc // +0046 │ │ -433ef4: 5412 9f5f |0078: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5f9f │ │ -433ef8: 6e20 b85c 5200 |007a: invoke-virtual {v2, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -433efe: 0a02 |007d: move-result v2 │ │ -433f00: 3802 0b00 |007e: if-eqz v2, 0089 // +000b │ │ -433f04: 5412 985f |0080: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f98 │ │ -433f08: 5413 995f |0082: iget-object v3, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f99 │ │ -433f0c: 7130 8cb9 2503 |0084: invoke-static {v5, v2, v3}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;[B[B)Ljava/security/KeyPair; // method@b98c │ │ -433f12: 0c04 |0087: move-result-object v4 │ │ -433f14: 2834 |0088: goto 00bc // +0034 │ │ -433f16: 5412 985f |0089: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f98 │ │ -433f1a: 5414 995f |008b: iget-object v4, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f99 │ │ -433f1e: 7130 8cb9 2304 |008d: invoke-static {v3, v2, v4}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;[B[B)Ljava/security/KeyPair; // method@b98c │ │ -433f24: 0c04 |0090: move-result-object v4 │ │ -433f26: 282b |0091: goto 00bc // +002b │ │ -433f28: 5412 9f5f |0092: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5f9f │ │ -433f2c: 6e20 b85c 5200 |0094: invoke-virtual {v2, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -433f32: 0a02 |0097: move-result v2 │ │ -433f34: 3802 0900 |0098: if-eqz v2, 00a1 // +0009 │ │ -433f38: 1a02 b33f |009a: const-string v2, "McEliece-Fujisaki (11, 50)" // string@3fb3 │ │ -433f3c: 7130 8bb9 6206 |009c: invoke-static {v2, v6, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ -433f42: 0c02 |009f: move-result-object v2 │ │ -433f44: 2807 |00a0: goto 00a7 // +0007 │ │ -433f46: 1302 000c |00a1: const/16 v2, #int 3072 // #c00 │ │ -433f4a: 7130 8bb9 2306 |00a3: invoke-static {v3, v2, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ -433f50: 0c02 |00a6: move-result-object v2 │ │ -433f52: 3902 0300 |00a7: if-nez v2, 00aa // +0003 │ │ -433f56: 0e00 |00a9: return-void │ │ -433f58: 7100 10be 0000 |00aa: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$600:()Lorg/purple/smoke/Database; // method@be10 │ │ -433f5e: 0c03 |00ad: move-result-object v3 │ │ -433f60: 7100 0ebe 0000 |00ae: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$400:()Lorg/purple/smoke/Cryptography; // method@be0e │ │ -433f66: 0c07 |00b1: move-result-object v7 │ │ -433f68: 5218 a45f |00b2: iget v8, v1, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa4 │ │ -433f6c: 6e58 3dba 7342 |00b4: invoke-virtual {v3, v7, v2, v4, v8}, Lorg/purple/smoke/Database;.writeSteamKeys:(Lorg/purple/smoke/Cryptography;Ljava/security/KeyPair;[BI)Z // method@ba3d │ │ -433f72: 0a03 |00b7: move-result v3 │ │ -433f74: 3903 0300 |00b8: if-nez v3, 00bb // +0003 │ │ -433f78: 0e00 |00ba: return-void │ │ -433f7a: 0724 |00bb: move-object v4, v2 │ │ -433f7c: 7100 0bbb 0000 |00bc: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -433f82: 0c02 |00bf: move-result-object v2 │ │ -433f84: 6e10 0ebb 0200 |00c0: invoke-virtual {v2}, Lorg/purple/smoke/Kernel;.isNetworkConnected:()Z // method@bb0e │ │ -433f8a: 0a02 |00c3: move-result v2 │ │ -433f8c: 3802 4800 |00c4: if-eqz v2, 010c // +0048 │ │ -433f90: 3804 4600 |00c6: if-eqz v4, 010c // +0046 │ │ -433f94: 5412 955f |00c8: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ -433f98: 7110 fbbb 0200 |00ca: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.sipHashIdFromDestination:(Ljava/lang/String;)Ljava/lang/String; // method@bbfb │ │ -433f9e: 0c02 |00cd: move-result-object v2 │ │ -433fa0: 7100 0ebe 0000 |00ce: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$400:()Lorg/purple/smoke/Cryptography; // method@be0e │ │ -433fa6: 0c07 |00d1: move-result-object v7 │ │ -433fa8: 5418 975f |00d2: iget-object v8, v1, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f97 │ │ -433fac: 541a 9a5f |00d4: iget-object v10, v1, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9a │ │ -433fb0: 541b 9b5f |00d6: iget-object v11, v1, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9b │ │ -433fb4: 6e10 fc5d 0400 |00d8: invoke-virtual {v4}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfc │ │ -433fba: 0c03 |00db: move-result-object v3 │ │ -433fbc: 7210 3c5e 0300 |00dc: invoke-interface {v3}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3c │ │ -433fc2: 0c0c |00df: move-result-object v12 │ │ -433fc4: 5413 9f5f |00e0: iget-object v3, v1, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5f9f │ │ -433fc8: 6e20 b85c 5300 |00e2: invoke-virtual {v3, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -433fce: 0a03 |00e5: move-result v3 │ │ -433fd0: 3803 0700 |00e6: if-eqz v3, 00ed // +0007 │ │ -433fd4: 6203 b553 |00e8: sget-object v3, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ -433fd8: 4803 0306 |00ea: aget-byte v3, v3, v6 │ │ -433fdc: 2806 |00ec: goto 00f2 // +0006 │ │ -433fde: 6203 b553 |00ed: sget-object v3, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ -433fe2: 1214 |00ef: const/4 v4, #int 1 // #1 │ │ -433fe4: 4803 0304 |00f0: aget-byte v3, v3, v4 │ │ -433fe8: 013d |00f2: move v13, v3 │ │ -433fea: 6203 1855 |00f3: sget-object v3, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ -433fee: 480e 0306 |00f5: aget-byte v14, v3, v6 │ │ -433ff2: 5313 9d5f |00f7: iget-wide v3, v1, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ -433ff6: 0729 |00f9: move-object v9, v2 │ │ -433ff8: 043f |00fa: move-wide v15, v3 │ │ -433ffa: 770a c2bb 0700 |00fb: invoke-static/range {v7, v8, v9, v10, v11, v12, v13, v14, v15, v16}, Lorg/purple/smoke/Messages;.steamCall:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;[B[B[BBBJ)[B // method@bbc2 │ │ -434000: 0c03 |00fe: move-result-object v3 │ │ -434002: 3803 0d00 |00ff: if-eqz v3, 010c // +000d │ │ -434006: 7100 0bbb 0000 |0101: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -43400c: 0c04 |0104: move-result-object v4 │ │ -43400e: 7110 b1bb 0300 |0105: invoke-static {v3}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb1 │ │ -434014: 0c03 |0108: move-result-object v3 │ │ -434016: 6e30 08bb 3402 |0109: invoke-virtual {v4, v3, v2}, Lorg/purple/smoke/Kernel;.enqueueSteamKeyExchange:(Ljava/lang/String;Ljava/lang/String;)V // method@bb08 │ │ -43401c: 5402 a85f |010c: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ -434020: 7110 0fbe 0200 |010e: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be0f │ │ -434026: 0c02 |0111: move-result-object v2 │ │ -434028: 5211 a45f |0112: iget v1, v1, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa4 │ │ -43402c: 6e20 de60 1200 |0114: invoke-virtual {v2, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60de │ │ -434032: 2818 |0117: goto 012f // +0018 │ │ -434034: 3801 0e00 |0118: if-eqz v1, 0126 // +000e │ │ -434038: 5402 a85f |011a: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ -43403c: 7110 0fbe 0200 |011c: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be0f │ │ -434042: 0c02 |011f: move-result-object v2 │ │ -434044: 5211 a45f |0120: iget v1, v1, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa4 │ │ -434048: 6e20 de60 1200 |0122: invoke-virtual {v2, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60de │ │ -43404e: 280a |0125: goto 012f // +000a │ │ -434050: 5401 a85f |0126: iget-object v1, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ -434054: 7110 0fbe 0100 |0128: invoke-static {v1}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be0f │ │ -43405a: 0c01 |012b: move-result-object v1 │ │ -43405c: 6e20 de60 4100 |012c: invoke-virtual {v1, v4}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60de │ │ -434062: 0e00 |012f: return-void │ │ +433df0: |[433df0] org.purple.smoke.SteamKeyExchange$2.run:()V │ │ +433e00: 0800 1100 |0000: move-object/from16 v0, v17 │ │ +433e04: 7100 6fbd 0000 |0002: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +433e0a: 0c01 |0005: move-result-object v1 │ │ +433e0c: 6e10 72bd 0100 |0006: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ +433e12: 0a01 |0009: move-result v1 │ │ +433e14: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ +433e18: 0e00 |000c: return-void │ │ +433e1a: 7100 10be 0000 |000d: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$600:()Lorg/purple/smoke/Database; // method@be10 │ │ +433e20: 0c01 |0010: move-result-object v1 │ │ +433e22: 7100 0ebe 0000 |0011: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$400:()Lorg/purple/smoke/Cryptography; // method@be0e │ │ +433e28: 0c02 |0014: move-result-object v2 │ │ +433e2a: 5403 a85f |0015: iget-object v3, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ +433e2e: 7110 0fbe 0300 |0017: invoke-static {v3}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be0f │ │ +433e34: 0c03 |001a: move-result-object v3 │ │ +433e36: 6e10 dc60 0300 |001b: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +433e3c: 0a03 |001e: move-result v3 │ │ +433e3e: 12f4 |001f: const/4 v4, #int -1 // #ff │ │ +433e40: 6e40 1cba 2134 |0020: invoke-virtual {v1, v2, v4, v3}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba1c │ │ +433e46: 0c01 |0023: move-result-object v1 │ │ +433e48: 3801 f400 |0024: if-eqz v1, 0118 // +00f4 │ │ +433e4c: 5412 955f |0026: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ +433e50: 1a03 b542 |0028: const-string v3, "Other (Non-Smoke)" // string@42b5 │ │ +433e54: 6e20 b85c 3200 |002a: invoke-virtual {v2, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +433e5a: 0a02 |002d: move-result v2 │ │ +433e5c: 3902 ea00 |002e: if-nez v2, 0118 // +00ea │ │ +433e60: 5812 965f |0030: iget-short v2, v1, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f96 │ │ +433e64: 3802 e600 |0032: if-eqz v2, 0118 // +00e6 │ │ +433e68: 5312 9d5f |0034: iget-wide v2, v1, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ +433e6c: 1605 0000 |0036: const-wide/16 v5, #int 0 // #0 │ │ +433e70: 3107 0205 |0038: cmp-long v7, v2, v5 │ │ +433e74: 3907 0400 |003a: if-nez v7, 003e // +0004 │ │ +433e78: 2900 dc00 |003c: goto/16 0118 // +00dc │ │ +433e7c: 5412 9e5f |003e: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ +433e80: 3802 1500 |0040: if-eqz v2, 0055 // +0015 │ │ +433e84: 5412 9e5f |0042: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ +433e88: 2122 |0044: array-length v2, v2 │ │ +433e8a: 1303 6000 |0045: const/16 v3, #int 96 // #60 │ │ +433e8e: 3332 0e00 |0047: if-ne v2, v3, 0055 // +000e │ │ +433e92: 5402 a85f |0049: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ +433e96: 7110 0fbe 0200 |004b: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be0f │ │ +433e9c: 0c02 |004e: move-result-object v2 │ │ +433e9e: 5211 a45f |004f: iget v1, v1, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa4 │ │ +433ea2: 6e20 de60 1200 |0051: invoke-virtual {v2, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60de │ │ +433ea8: 0e00 |0054: return-void │ │ +433eaa: 5412 985f |0055: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f98 │ │ +433eae: 1a03 6c46 |0057: const-string v3, "RSA" // string@466c │ │ +433eb2: 1204 |0059: const/4 v4, #int 0 // #0 │ │ +433eb4: 1a05 af3f |005a: const-string v5, "McEliece" // string@3faf │ │ +433eb8: 1206 |005c: const/4 v6, #int 0 // #0 │ │ +433eba: 3802 3500 |005d: if-eqz v2, 0092 // +0035 │ │ +433ebe: 5412 985f |005f: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f98 │ │ +433ec2: 2122 |0061: array-length v2, v2 │ │ +433ec4: 3802 3000 |0062: if-eqz v2, 0092 // +0030 │ │ +433ec8: 5412 995f |0064: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f99 │ │ +433ecc: 3802 2c00 |0066: if-eqz v2, 0092 // +002c │ │ +433ed0: 5412 995f |0068: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f99 │ │ +433ed4: 2122 |006a: array-length v2, v2 │ │ +433ed6: 3902 0300 |006b: if-nez v2, 006e // +0003 │ │ +433eda: 2825 |006d: goto 0092 // +0025 │ │ +433edc: 7100 0bbb 0000 |006e: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +433ee2: 0c02 |0071: move-result-object v2 │ │ +433ee4: 6e10 0ebb 0200 |0072: invoke-virtual {v2}, Lorg/purple/smoke/Kernel;.isNetworkConnected:()Z // method@bb0e │ │ +433eea: 0a02 |0075: move-result v2 │ │ +433eec: 3802 4600 |0076: if-eqz v2, 00bc // +0046 │ │ +433ef0: 5412 9f5f |0078: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5f9f │ │ +433ef4: 6e20 b85c 5200 |007a: invoke-virtual {v2, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +433efa: 0a02 |007d: move-result v2 │ │ +433efc: 3802 0b00 |007e: if-eqz v2, 0089 // +000b │ │ +433f00: 5412 985f |0080: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f98 │ │ +433f04: 5413 995f |0082: iget-object v3, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f99 │ │ +433f08: 7130 8cb9 2503 |0084: invoke-static {v5, v2, v3}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;[B[B)Ljava/security/KeyPair; // method@b98c │ │ +433f0e: 0c04 |0087: move-result-object v4 │ │ +433f10: 2834 |0088: goto 00bc // +0034 │ │ +433f12: 5412 985f |0089: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f98 │ │ +433f16: 5414 995f |008b: iget-object v4, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f99 │ │ +433f1a: 7130 8cb9 2304 |008d: invoke-static {v3, v2, v4}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;[B[B)Ljava/security/KeyPair; // method@b98c │ │ +433f20: 0c04 |0090: move-result-object v4 │ │ +433f22: 282b |0091: goto 00bc // +002b │ │ +433f24: 5412 9f5f |0092: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5f9f │ │ +433f28: 6e20 b85c 5200 |0094: invoke-virtual {v2, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +433f2e: 0a02 |0097: move-result v2 │ │ +433f30: 3802 0900 |0098: if-eqz v2, 00a1 // +0009 │ │ +433f34: 1a02 b33f |009a: const-string v2, "McEliece-Fujisaki (11, 50)" // string@3fb3 │ │ +433f38: 7130 8bb9 6206 |009c: invoke-static {v2, v6, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ +433f3e: 0c02 |009f: move-result-object v2 │ │ +433f40: 2807 |00a0: goto 00a7 // +0007 │ │ +433f42: 1302 000c |00a1: const/16 v2, #int 3072 // #c00 │ │ +433f46: 7130 8bb9 2306 |00a3: invoke-static {v3, v2, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98b │ │ +433f4c: 0c02 |00a6: move-result-object v2 │ │ +433f4e: 3902 0300 |00a7: if-nez v2, 00aa // +0003 │ │ +433f52: 0e00 |00a9: return-void │ │ +433f54: 7100 10be 0000 |00aa: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$600:()Lorg/purple/smoke/Database; // method@be10 │ │ +433f5a: 0c03 |00ad: move-result-object v3 │ │ +433f5c: 7100 0ebe 0000 |00ae: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$400:()Lorg/purple/smoke/Cryptography; // method@be0e │ │ +433f62: 0c07 |00b1: move-result-object v7 │ │ +433f64: 5218 a45f |00b2: iget v8, v1, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa4 │ │ +433f68: 6e58 3dba 7342 |00b4: invoke-virtual {v3, v7, v2, v4, v8}, Lorg/purple/smoke/Database;.writeSteamKeys:(Lorg/purple/smoke/Cryptography;Ljava/security/KeyPair;[BI)Z // method@ba3d │ │ +433f6e: 0a03 |00b7: move-result v3 │ │ +433f70: 3903 0300 |00b8: if-nez v3, 00bb // +0003 │ │ +433f74: 0e00 |00ba: return-void │ │ +433f76: 0724 |00bb: move-object v4, v2 │ │ +433f78: 7100 0bbb 0000 |00bc: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +433f7e: 0c02 |00bf: move-result-object v2 │ │ +433f80: 6e10 0ebb 0200 |00c0: invoke-virtual {v2}, Lorg/purple/smoke/Kernel;.isNetworkConnected:()Z // method@bb0e │ │ +433f86: 0a02 |00c3: move-result v2 │ │ +433f88: 3802 4800 |00c4: if-eqz v2, 010c // +0048 │ │ +433f8c: 3804 4600 |00c6: if-eqz v4, 010c // +0046 │ │ +433f90: 5412 955f |00c8: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ +433f94: 7110 fbbb 0200 |00ca: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.sipHashIdFromDestination:(Ljava/lang/String;)Ljava/lang/String; // method@bbfb │ │ +433f9a: 0c02 |00cd: move-result-object v2 │ │ +433f9c: 7100 0ebe 0000 |00ce: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$400:()Lorg/purple/smoke/Cryptography; // method@be0e │ │ +433fa2: 0c07 |00d1: move-result-object v7 │ │ +433fa4: 5418 975f |00d2: iget-object v8, v1, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f97 │ │ +433fa8: 541a 9a5f |00d4: iget-object v10, v1, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9a │ │ +433fac: 541b 9b5f |00d6: iget-object v11, v1, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9b │ │ +433fb0: 6e10 fc5d 0400 |00d8: invoke-virtual {v4}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfc │ │ +433fb6: 0c03 |00db: move-result-object v3 │ │ +433fb8: 7210 3c5e 0300 |00dc: invoke-interface {v3}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3c │ │ +433fbe: 0c0c |00df: move-result-object v12 │ │ +433fc0: 5413 9f5f |00e0: iget-object v3, v1, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5f9f │ │ +433fc4: 6e20 b85c 5300 |00e2: invoke-virtual {v3, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +433fca: 0a03 |00e5: move-result v3 │ │ +433fcc: 3803 0700 |00e6: if-eqz v3, 00ed // +0007 │ │ +433fd0: 6203 b553 |00e8: sget-object v3, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ +433fd4: 4803 0306 |00ea: aget-byte v3, v3, v6 │ │ +433fd8: 2806 |00ec: goto 00f2 // +0006 │ │ +433fda: 6203 b553 |00ed: sget-object v3, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ +433fde: 1214 |00ef: const/4 v4, #int 1 // #1 │ │ +433fe0: 4803 0304 |00f0: aget-byte v3, v3, v4 │ │ +433fe4: 013d |00f2: move v13, v3 │ │ +433fe6: 6203 1855 |00f3: sget-object v3, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ +433fea: 480e 0306 |00f5: aget-byte v14, v3, v6 │ │ +433fee: 5313 9d5f |00f7: iget-wide v3, v1, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ +433ff2: 0729 |00f9: move-object v9, v2 │ │ +433ff4: 043f |00fa: move-wide v15, v3 │ │ +433ff6: 770a c2bb 0700 |00fb: invoke-static/range {v7, v8, v9, v10, v11, v12, v13, v14, v15, v16}, Lorg/purple/smoke/Messages;.steamCall:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;[B[B[BBBJ)[B // method@bbc2 │ │ +433ffc: 0c03 |00fe: move-result-object v3 │ │ +433ffe: 3803 0d00 |00ff: if-eqz v3, 010c // +000d │ │ +434002: 7100 0bbb 0000 |0101: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +434008: 0c04 |0104: move-result-object v4 │ │ +43400a: 7110 b1bb 0300 |0105: invoke-static {v3}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb1 │ │ +434010: 0c03 |0108: move-result-object v3 │ │ +434012: 6e30 08bb 3402 |0109: invoke-virtual {v4, v3, v2}, Lorg/purple/smoke/Kernel;.enqueueSteamKeyExchange:(Ljava/lang/String;Ljava/lang/String;)V // method@bb08 │ │ +434018: 5402 a85f |010c: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ +43401c: 7110 0fbe 0200 |010e: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be0f │ │ +434022: 0c02 |0111: move-result-object v2 │ │ +434024: 5211 a45f |0112: iget v1, v1, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa4 │ │ +434028: 6e20 de60 1200 |0114: invoke-virtual {v2, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60de │ │ +43402e: 2818 |0117: goto 012f // +0018 │ │ +434030: 3801 0e00 |0118: if-eqz v1, 0126 // +000e │ │ +434034: 5402 a85f |011a: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ +434038: 7110 0fbe 0200 |011c: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be0f │ │ +43403e: 0c02 |011f: move-result-object v2 │ │ +434040: 5211 a45f |0120: iget v1, v1, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa4 │ │ +434044: 6e20 de60 1200 |0122: invoke-virtual {v2, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60de │ │ +43404a: 280a |0125: goto 012f // +000a │ │ +43404c: 5401 a85f |0126: iget-object v1, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ +434050: 7110 0fbe 0100 |0128: invoke-static {v1}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be0f │ │ +434056: 0c01 |012b: move-result-object v1 │ │ +434058: 6e20 de60 4100 |012c: invoke-virtual {v1, v4}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60de │ │ +43405e: 0e00 |012f: return-void │ │ catches : 2 │ │ 0x0002 - 0x0057 │ │ Ljava/lang/Exception; -> 0x012f │ │ 0x005f - 0x012f │ │ Ljava/lang/Exception; -> 0x012f │ │ positions : │ │ 0x0002 line=427 │ │ @@ -748394,19 +748393,19 @@ │ │ type : '([B[B)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 1 │ │ insns size : 8 16-bit code units │ │ -43407c: |[43407c] org.purple.smoke.SteamKeyExchange$Pair.:([B[B)V │ │ -43408c: 7010 8f5c 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -434092: 5b01 a95f |0003: iput-object v1, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_ciphertext:[B // field@5fa9 │ │ -434096: 5b02 aa5f |0005: iput-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_pki:[B // field@5faa │ │ -43409a: 0e00 |0007: return-void │ │ +434078: |[434078] org.purple.smoke.SteamKeyExchange$Pair.:([B[B)V │ │ +434088: 7010 8f5c 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43408e: 5b01 a95f |0003: iput-object v1, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_ciphertext:[B // field@5fa9 │ │ +434092: 5b02 aa5f |0005: iput-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_pki:[B // field@5faa │ │ +434096: 0e00 |0007: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=51 │ │ 0x0003 line=52 │ │ 0x0005 line=53 │ │ locals : │ │ 0x0000 - 0x0008 reg=0 this Lorg/purple/smoke/SteamKeyExchange$Pair; │ │ @@ -748497,22 +748496,22 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 13 16-bit code units │ │ -43412c: |[43412c] org.purple.smoke.SteamKeyExchange.:()V │ │ -43413c: 7100 8db9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ -434142: 0c00 |0003: move-result-object v0 │ │ -434144: 6900 b55f |0004: sput-object v0, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb5 │ │ -434148: 7100 efb9 0000 |0006: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9ef │ │ -43414e: 0c00 |0009: move-result-object v0 │ │ -434150: 6900 b65f |000a: sput-object v0, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb6 │ │ -434154: 0e00 |000c: return-void │ │ +434128: |[434128] org.purple.smoke.SteamKeyExchange.:()V │ │ +434138: 7100 8db9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ +43413e: 0c00 |0003: move-result-object v0 │ │ +434140: 6900 b55f |0004: sput-object v0, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb5 │ │ +434144: 7100 efb9 0000 |0006: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9ef │ │ +43414a: 0c00 |0009: move-result-object v0 │ │ +43414c: 6900 b65f |000a: sput-object v0, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb6 │ │ +434150: 0e00 |000c: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=65 │ │ 0x0006 line=66 │ │ locals : │ │ │ │ #1 : (in Lorg/purple/smoke/SteamKeyExchange;) │ │ @@ -748520,53 +748519,53 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 16 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 82 16-bit code units │ │ -434158: |[434158] org.purple.smoke.SteamKeyExchange.:()V │ │ -434168: 7010 8f5c 0f00 |0000: invoke-direct {v15}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43416e: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -434170: 5bf0 b05f |0004: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_pairs:Ljava/util/ArrayList; // field@5fb0 │ │ -434174: 5bf0 af5f |0006: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_lastReadSteamOid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5faf │ │ -434178: 5bf0 b25f |0008: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_parseScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5fb2 │ │ -43417c: 5bf0 b45f |000a: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_readScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5fb4 │ │ -434180: 2200 e60a |000c: new-instance v0, Ljava/lang/Object; // type@0ae6 │ │ -434184: 7010 8f5c 0000 |000e: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43418a: 5bf0 b35f |0011: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_parseSchedulerMutex:Ljava/lang/Object; // field@5fb3 │ │ -43418e: 2200 ea0b |0013: new-instance v0, Ljava/util/concurrent/locks/ReentrantReadWriteLock; // type@0bea │ │ -434192: 7010 eb60 0000 |0015: invoke-direct {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.:()V // method@60eb │ │ -434198: 5bf0 b15f |0018: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb1 │ │ -43419c: 2200 e50b |001a: new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger; // type@0be5 │ │ -4341a0: 12f1 |001c: const/4 v1, #int -1 // #ff │ │ -4341a2: 7020 db60 1000 |001d: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.:(I)V // method@60db │ │ -4341a8: 5bf0 af5f |0020: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_lastReadSteamOid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5faf │ │ -4341ac: 2200 ab0b |0022: new-instance v0, Ljava/util/ArrayList; // type@0bab │ │ -4341b0: 7010 995f 0000 |0024: invoke-direct {v0}, Ljava/util/ArrayList;.:()V // method@5f99 │ │ -4341b6: 5bf0 b05f |0027: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_pairs:Ljava/util/ArrayList; // field@5fb0 │ │ -4341ba: 7100 c660 0000 |0029: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c6 │ │ -4341c0: 0c01 |002c: move-result-object v1 │ │ -4341c2: 5bf1 b25f |002d: iput-object v1, v15, Lorg/purple/smoke/SteamKeyExchange;.m_parseScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5fb2 │ │ -4341c6: 2202 291b |002f: new-instance v2, Lorg/purple/smoke/SteamKeyExchange$1; // type@1b29 │ │ -4341ca: 7020 03be f200 |0031: invoke-direct {v2, v15}, Lorg/purple/smoke/SteamKeyExchange$1;.:(Lorg/purple/smoke/SteamKeyExchange;)V // method@be03 │ │ -4341d0: 6207 ef2c |0034: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -4341d4: 1603 dc05 |0036: const-wide/16 v3, #int 1500 // #5dc │ │ -4341d8: 1605 3200 |0038: const-wide/16 v5, #int 50 // #32 │ │ -4341dc: 7807 ce60 0100 |003a: invoke-interface/range {v1, v2, v3, v4, v5, v6, v7}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ -4341e2: 7100 c660 0000 |003d: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c6 │ │ -4341e8: 0c08 |0040: move-result-object v8 │ │ -4341ea: 5bf8 b45f |0041: iput-object v8, v15, Lorg/purple/smoke/SteamKeyExchange;.m_readScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5fb4 │ │ -4341ee: 2209 2a1b |0043: new-instance v9, Lorg/purple/smoke/SteamKeyExchange$2; // type@1b2a │ │ -4341f2: 7020 05be f900 |0045: invoke-direct {v9, v15}, Lorg/purple/smoke/SteamKeyExchange$2;.:(Lorg/purple/smoke/SteamKeyExchange;)V // method@be05 │ │ -4341f8: 620e ef2c |0048: sget-object v14, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -4341fc: 160a dc05 |004a: const-wide/16 v10, #int 1500 // #5dc │ │ -434200: 160c 4c1d |004c: const-wide/16 v12, #int 7500 // #1d4c │ │ -434204: 7807 ce60 0800 |004e: invoke-interface/range {v8, v9, v10, v11, v12, v13, v14}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ -43420a: 0e00 |0051: return-void │ │ +434154: |[434154] org.purple.smoke.SteamKeyExchange.:()V │ │ +434164: 7010 8f5c 0f00 |0000: invoke-direct {v15}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43416a: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +43416c: 5bf0 b05f |0004: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_pairs:Ljava/util/ArrayList; // field@5fb0 │ │ +434170: 5bf0 af5f |0006: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_lastReadSteamOid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5faf │ │ +434174: 5bf0 b25f |0008: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_parseScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5fb2 │ │ +434178: 5bf0 b45f |000a: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_readScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5fb4 │ │ +43417c: 2200 e60a |000c: new-instance v0, Ljava/lang/Object; // type@0ae6 │ │ +434180: 7010 8f5c 0000 |000e: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +434186: 5bf0 b35f |0011: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_parseSchedulerMutex:Ljava/lang/Object; // field@5fb3 │ │ +43418a: 2200 ea0b |0013: new-instance v0, Ljava/util/concurrent/locks/ReentrantReadWriteLock; // type@0bea │ │ +43418e: 7010 eb60 0000 |0015: invoke-direct {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.:()V // method@60eb │ │ +434194: 5bf0 b15f |0018: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb1 │ │ +434198: 2200 e50b |001a: new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger; // type@0be5 │ │ +43419c: 12f1 |001c: const/4 v1, #int -1 // #ff │ │ +43419e: 7020 db60 1000 |001d: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.:(I)V // method@60db │ │ +4341a4: 5bf0 af5f |0020: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_lastReadSteamOid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5faf │ │ +4341a8: 2200 ab0b |0022: new-instance v0, Ljava/util/ArrayList; // type@0bab │ │ +4341ac: 7010 995f 0000 |0024: invoke-direct {v0}, Ljava/util/ArrayList;.:()V // method@5f99 │ │ +4341b2: 5bf0 b05f |0027: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_pairs:Ljava/util/ArrayList; // field@5fb0 │ │ +4341b6: 7100 c660 0000 |0029: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c6 │ │ +4341bc: 0c01 |002c: move-result-object v1 │ │ +4341be: 5bf1 b25f |002d: iput-object v1, v15, Lorg/purple/smoke/SteamKeyExchange;.m_parseScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5fb2 │ │ +4341c2: 2202 291b |002f: new-instance v2, Lorg/purple/smoke/SteamKeyExchange$1; // type@1b29 │ │ +4341c6: 7020 03be f200 |0031: invoke-direct {v2, v15}, Lorg/purple/smoke/SteamKeyExchange$1;.:(Lorg/purple/smoke/SteamKeyExchange;)V // method@be03 │ │ +4341cc: 6207 ef2c |0034: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +4341d0: 1603 dc05 |0036: const-wide/16 v3, #int 1500 // #5dc │ │ +4341d4: 1605 3200 |0038: const-wide/16 v5, #int 50 // #32 │ │ +4341d8: 7807 ce60 0100 |003a: invoke-interface/range {v1, v2, v3, v4, v5, v6, v7}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ +4341de: 7100 c660 0000 |003d: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c6 │ │ +4341e4: 0c08 |0040: move-result-object v8 │ │ +4341e6: 5bf8 b45f |0041: iput-object v8, v15, Lorg/purple/smoke/SteamKeyExchange;.m_readScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5fb4 │ │ +4341ea: 2209 2a1b |0043: new-instance v9, Lorg/purple/smoke/SteamKeyExchange$2; // type@1b2a │ │ +4341ee: 7020 05be f900 |0045: invoke-direct {v9, v15}, Lorg/purple/smoke/SteamKeyExchange$2;.:(Lorg/purple/smoke/SteamKeyExchange;)V // method@be05 │ │ +4341f4: 620e ef2c |0048: sget-object v14, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +4341f8: 160a dc05 |004a: const-wide/16 v10, #int 1500 // #5dc │ │ +4341fc: 160c 4c1d |004c: const-wide/16 v12, #int 7500 // #1d4c │ │ +434200: 7807 ce60 0800 |004e: invoke-interface/range {v8, v9, v10, v11, v12, v13, v14}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ +434206: 0e00 |0051: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=367 │ │ 0x0004 line=57 │ │ 0x0006 line=58 │ │ 0x0008 line=59 │ │ 0x000a line=60 │ │ @@ -748586,17 +748585,17 @@ │ │ type : '(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -4340e4: |[4340e4] org.purple.smoke.SteamKeyExchange.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; │ │ -4340f4: 5400 b15f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb1 │ │ -4340f8: 1100 |0002: return-object v0 │ │ +4340e0: |[4340e0] org.purple.smoke.SteamKeyExchange.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; │ │ +4340f0: 5400 b15f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb1 │ │ +4340f4: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=43 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamKeyExchange; │ │ │ │ #3 : (in Lorg/purple/smoke/SteamKeyExchange;) │ │ @@ -748604,17 +748603,17 @@ │ │ type : '(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/ArrayList;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -4340b4: |[4340b4] org.purple.smoke.SteamKeyExchange.access$100:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/ArrayList; │ │ -4340c4: 5400 b05f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange;.m_pairs:Ljava/util/ArrayList; // field@5fb0 │ │ -4340c8: 1100 |0002: return-object v0 │ │ +4340b0: |[4340b0] org.purple.smoke.SteamKeyExchange.access$100:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/ArrayList; │ │ +4340c0: 5400 b05f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange;.m_pairs:Ljava/util/ArrayList; // field@5fb0 │ │ +4340c4: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=43 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamKeyExchange; │ │ │ │ #4 : (in Lorg/purple/smoke/SteamKeyExchange;) │ │ @@ -748622,17 +748621,17 @@ │ │ type : '(Lorg/purple/smoke/SteamKeyExchange;)Ljava/lang/Object;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -43409c: |[43409c] org.purple.smoke.SteamKeyExchange.access$200:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/lang/Object; │ │ -4340ac: 5400 b35f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange;.m_parseSchedulerMutex:Ljava/lang/Object; // field@5fb3 │ │ -4340b0: 1100 |0002: return-object v0 │ │ +434098: |[434098] org.purple.smoke.SteamKeyExchange.access$200:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/lang/Object; │ │ +4340a8: 5400 b35f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange;.m_parseSchedulerMutex:Ljava/lang/Object; // field@5fb3 │ │ +4340ac: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=43 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamKeyExchange; │ │ │ │ #5 : (in Lorg/purple/smoke/SteamKeyExchange;) │ │ @@ -748640,17 +748639,17 @@ │ │ type : '(Lorg/purple/smoke/SteamKeyExchange;[B[B)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 4 16-bit code units │ │ -43420c: |[43420c] org.purple.smoke.SteamKeyExchange.access$300:(Lorg/purple/smoke/SteamKeyExchange;[B[B)V │ │ -43421c: 7030 13be 1002 |0000: invoke-direct {v0, v1, v2}, Lorg/purple/smoke/SteamKeyExchange;.steamAorB:([B[B)V // method@be13 │ │ -434222: 0e00 |0003: return-void │ │ +434208: |[434208] org.purple.smoke.SteamKeyExchange.access$300:(Lorg/purple/smoke/SteamKeyExchange;[B[B)V │ │ +434218: 7030 13be 1002 |0000: invoke-direct {v0, v1, v2}, Lorg/purple/smoke/SteamKeyExchange;.steamAorB:([B[B)V // method@be13 │ │ +43421e: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=43 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/SteamKeyExchange; │ │ 0x0000 - 0x0004 reg=1 (null) [B │ │ 0x0000 - 0x0004 reg=2 (null) [B │ │ @@ -748660,34 +748659,34 @@ │ │ type : '()Lorg/purple/smoke/Cryptography;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -4340fc: |[4340fc] org.purple.smoke.SteamKeyExchange.access$400:()Lorg/purple/smoke/Cryptography; │ │ -43410c: 6200 b55f |0000: sget-object v0, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb5 │ │ -434110: 1100 |0002: return-object v0 │ │ +4340f8: |[4340f8] org.purple.smoke.SteamKeyExchange.access$400:()Lorg/purple/smoke/Cryptography; │ │ +434108: 6200 b55f |0000: sget-object v0, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb5 │ │ +43410c: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=43 │ │ locals : │ │ │ │ #7 : (in Lorg/purple/smoke/SteamKeyExchange;) │ │ name : 'access$500' │ │ type : '(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -4340cc: |[4340cc] org.purple.smoke.SteamKeyExchange.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; │ │ -4340dc: 5400 af5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange;.m_lastReadSteamOid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5faf │ │ -4340e0: 1100 |0002: return-object v0 │ │ +4340c8: |[4340c8] org.purple.smoke.SteamKeyExchange.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; │ │ +4340d8: 5400 af5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange;.m_lastReadSteamOid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5faf │ │ +4340dc: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=43 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamKeyExchange; │ │ │ │ #8 : (in Lorg/purple/smoke/SteamKeyExchange;) │ │ @@ -748695,76 +748694,76 @@ │ │ type : '()Lorg/purple/smoke/Database;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -434114: |[434114] org.purple.smoke.SteamKeyExchange.access$600:()Lorg/purple/smoke/Database; │ │ -434124: 6200 b65f |0000: sget-object v0, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb6 │ │ -434128: 1100 |0002: return-object v0 │ │ +434110: |[434110] org.purple.smoke.SteamKeyExchange.access$600:()Lorg/purple/smoke/Database; │ │ +434120: 6200 b65f |0000: sget-object v0, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb6 │ │ +434124: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=43 │ │ locals : │ │ │ │ #9 : (in Lorg/purple/smoke/SteamKeyExchange;) │ │ name : 'shareB' │ │ type : '(Lorg/purple/smoke/SteamElement;)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 14 │ │ ins : 2 │ │ outs : 10 │ │ insns size : 81 16-bit code units │ │ -4342f0: |[4342f0] org.purple.smoke.SteamKeyExchange.shareB:(Lorg/purple/smoke/SteamElement;)V │ │ -434300: 390d 0300 |0000: if-nez v13, 0003 // +0003 │ │ -434304: 0e00 |0002: return-void │ │ -434306: 54d0 995f |0003: iget-object v0, v13, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f99 │ │ -43430a: 7110 a6b9 0000 |0005: invoke-static {v0}, Lorg/purple/smoke/Cryptography;.publicKeyFromBytes:([B)Ljava/security/PublicKey; // method@b9a6 │ │ -434310: 0c00 |0008: move-result-object v0 │ │ -434312: 3900 0300 |0009: if-nez v0, 000c // +0003 │ │ -434316: 0e00 |000b: return-void │ │ -434318: 54d1 955f |000c: iget-object v1, v13, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ -43431c: 7110 fbbb 0100 |000e: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.sipHashIdFromDestination:(Ljava/lang/String;)Ljava/lang/String; // method@bbfb │ │ -434322: 0c01 |0011: move-result-object v1 │ │ -434324: 6202 b55f |0012: sget-object v2, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb5 │ │ -434328: 54d3 975f |0014: iget-object v3, v13, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f97 │ │ -43432c: 54d5 9a5f |0016: iget-object v5, v13, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9a │ │ -434330: 54d6 9b5f |0018: iget-object v6, v13, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9b │ │ -434334: 54d4 9e5f |001a: iget-object v4, v13, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ -434338: 1a07 b33f |001c: const-string v7, "McEliece-Fujisaki (11, 50)" // string@3fb3 │ │ -43433c: 7130 9fb9 7004 |001e: invoke-static {v0, v7, v4}, Lorg/purple/smoke/Cryptography;.pkiEncrypt:(Ljava/security/PublicKey;Ljava/lang/String;[B)[B // method@b99f │ │ -434342: 0c07 |0021: move-result-object v7 │ │ -434344: 54d0 9f5f |0022: iget-object v0, v13, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5f9f │ │ -434348: 1a04 af3f |0024: const-string v4, "McEliece" // string@3faf │ │ -43434c: 6e20 b85c 4000 |0026: invoke-virtual {v0, v4}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434352: 0a00 |0029: move-result v0 │ │ -434354: 1214 |002a: const/4 v4, #int 1 // #1 │ │ -434356: 3800 0800 |002b: if-eqz v0, 0033 // +0008 │ │ -43435a: 6200 b553 |002d: sget-object v0, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ -43435e: 1208 |002f: const/4 v8, #int 0 // #0 │ │ -434360: 4800 0008 |0030: aget-byte v0, v0, v8 │ │ -434364: 2805 |0032: goto 0037 // +0005 │ │ -434366: 6200 b553 |0033: sget-object v0, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ -43436a: 4800 0004 |0035: aget-byte v0, v0, v4 │ │ -43436e: 0108 |0037: move v8, v0 │ │ -434370: 6200 1855 |0038: sget-object v0, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ -434374: 4809 0004 |003a: aget-byte v9, v0, v4 │ │ -434378: 53da 9d5f |003c: iget-wide v10, v13, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ -43437c: 0714 |003e: move-object v4, v1 │ │ -43437e: 770a c2bb 0200 |003f: invoke-static/range {v2, v3, v4, v5, v6, v7, v8, v9, v10, v11}, Lorg/purple/smoke/Messages;.steamCall:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;[B[B[BBBJ)[B // method@bbc2 │ │ -434384: 0c0d |0042: move-result-object v13 │ │ -434386: 380d 0d00 |0043: if-eqz v13, 0050 // +000d │ │ -43438a: 7100 0bbb 0000 |0045: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -434390: 0c00 |0048: move-result-object v0 │ │ -434392: 7110 b1bb 0d00 |0049: invoke-static {v13}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb1 │ │ -434398: 0c0d |004c: move-result-object v13 │ │ -43439a: 6e30 08bb d001 |004d: invoke-virtual {v0, v13, v1}, Lorg/purple/smoke/Kernel;.enqueueSteamKeyExchange:(Ljava/lang/String;Ljava/lang/String;)V // method@bb08 │ │ -4343a0: 0e00 |0050: return-void │ │ +4342ec: |[4342ec] org.purple.smoke.SteamKeyExchange.shareB:(Lorg/purple/smoke/SteamElement;)V │ │ +4342fc: 390d 0300 |0000: if-nez v13, 0003 // +0003 │ │ +434300: 0e00 |0002: return-void │ │ +434302: 54d0 995f |0003: iget-object v0, v13, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f99 │ │ +434306: 7110 a6b9 0000 |0005: invoke-static {v0}, Lorg/purple/smoke/Cryptography;.publicKeyFromBytes:([B)Ljava/security/PublicKey; // method@b9a6 │ │ +43430c: 0c00 |0008: move-result-object v0 │ │ +43430e: 3900 0300 |0009: if-nez v0, 000c // +0003 │ │ +434312: 0e00 |000b: return-void │ │ +434314: 54d1 955f |000c: iget-object v1, v13, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ +434318: 7110 fbbb 0100 |000e: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.sipHashIdFromDestination:(Ljava/lang/String;)Ljava/lang/String; // method@bbfb │ │ +43431e: 0c01 |0011: move-result-object v1 │ │ +434320: 6202 b55f |0012: sget-object v2, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb5 │ │ +434324: 54d3 975f |0014: iget-object v3, v13, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f97 │ │ +434328: 54d5 9a5f |0016: iget-object v5, v13, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9a │ │ +43432c: 54d6 9b5f |0018: iget-object v6, v13, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9b │ │ +434330: 54d4 9e5f |001a: iget-object v4, v13, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ +434334: 1a07 b33f |001c: const-string v7, "McEliece-Fujisaki (11, 50)" // string@3fb3 │ │ +434338: 7130 9fb9 7004 |001e: invoke-static {v0, v7, v4}, Lorg/purple/smoke/Cryptography;.pkiEncrypt:(Ljava/security/PublicKey;Ljava/lang/String;[B)[B // method@b99f │ │ +43433e: 0c07 |0021: move-result-object v7 │ │ +434340: 54d0 9f5f |0022: iget-object v0, v13, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5f9f │ │ +434344: 1a04 af3f |0024: const-string v4, "McEliece" // string@3faf │ │ +434348: 6e20 b85c 4000 |0026: invoke-virtual {v0, v4}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +43434e: 0a00 |0029: move-result v0 │ │ +434350: 1214 |002a: const/4 v4, #int 1 // #1 │ │ +434352: 3800 0800 |002b: if-eqz v0, 0033 // +0008 │ │ +434356: 6200 b553 |002d: sget-object v0, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ +43435a: 1208 |002f: const/4 v8, #int 0 // #0 │ │ +43435c: 4800 0008 |0030: aget-byte v0, v0, v8 │ │ +434360: 2805 |0032: goto 0037 // +0005 │ │ +434362: 6200 b553 |0033: sget-object v0, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ +434366: 4800 0004 |0035: aget-byte v0, v0, v4 │ │ +43436a: 0108 |0037: move v8, v0 │ │ +43436c: 6200 1855 |0038: sget-object v0, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ +434370: 4809 0004 |003a: aget-byte v9, v0, v4 │ │ +434374: 53da 9d5f |003c: iget-wide v10, v13, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ +434378: 0714 |003e: move-object v4, v1 │ │ +43437a: 770a c2bb 0200 |003f: invoke-static/range {v2, v3, v4, v5, v6, v7, v8, v9, v10, v11}, Lorg/purple/smoke/Messages;.steamCall:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;[B[B[BBBJ)[B // method@bbc2 │ │ +434380: 0c0d |0042: move-result-object v13 │ │ +434382: 380d 0d00 |0043: if-eqz v13, 0050 // +000d │ │ +434386: 7100 0bbb 0000 |0045: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +43438c: 0c00 |0048: move-result-object v0 │ │ +43438e: 7110 b1bb 0d00 |0049: invoke-static {v13}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb1 │ │ +434394: 0c0d |004c: move-result-object v13 │ │ +434396: 6e30 08bb d001 |004d: invoke-virtual {v0, v13, v1}, Lorg/purple/smoke/Kernel;.enqueueSteamKeyExchange:(Ljava/lang/String;Ljava/lang/String;)V // method@bb08 │ │ +43439c: 0e00 |0050: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=81 │ │ 0x0005 line=82 │ │ 0x000c line=87 │ │ 0x000e line=88 │ │ 0x0012 line=91 │ │ @@ -748784,429 +748783,429 @@ │ │ type : '([B[B)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 31 │ │ ins : 3 │ │ outs : 6 │ │ insns size : 796 16-bit code units │ │ -4343a4: |[4343a4] org.purple.smoke.SteamKeyExchange.steamAorB:([B[B)V │ │ -4343b4: 0800 1c00 |0000: move-object/from16 v0, v28 │ │ -4343b8: 0801 1d00 |0002: move-object/from16 v1, v29 │ │ -4343bc: 0802 1e00 |0004: move-object/from16 v2, v30 │ │ -4343c0: 3801 ff02 |0006: if-eqz v1, 0305 // +02ff │ │ -4343c4: 2113 |0008: array-length v3, v1 │ │ -4343c6: 3803 fc02 |0009: if-eqz v3, 0305 // +02fc │ │ -4343ca: 3802 fa02 |000b: if-eqz v2, 0305 // +02fa │ │ -4343ce: 2123 |000d: array-length v3, v2 │ │ -4343d0: 3903 0400 |000e: if-nez v3, 0012 // +0004 │ │ -4343d4: 2900 f502 |0010: goto/16 0305 // +02f5 │ │ -4343d8: 1203 |0012: const/4 v3, #int 0 // #0 │ │ -4343da: 4804 0103 |0013: aget-byte v4, v1, v3 │ │ -4343de: 2115 |0015: array-length v5, v1 │ │ -4343e0: 1216 |0016: const/4 v6, #int 1 // #1 │ │ -4343e2: 7130 b65f 6105 |0017: invoke-static {v1, v6, v5}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb6 │ │ -4343e8: 0c01 |001a: move-result-object v1 │ │ -4343ea: 2205 ef0a |001b: new-instance v5, Ljava/lang/String; // type@0aef │ │ -4343ee: 7020 ac5c 1500 |001d: invoke-direct {v5, v1}, Ljava/lang/String;.:([B)V // method@5cac │ │ -4343f4: 1a01 c255 |0020: const-string v1, "\n" // string@55c2 │ │ -4343f8: 6e20 c95c 1500 |0022: invoke-virtual {v5, v1}, Ljava/lang/String;.split:(Ljava/lang/String;)[Ljava/lang/String; // method@5cc9 │ │ -4343fe: 0c01 |0025: move-result-object v1 │ │ -434400: 2115 |0026: array-length v5, v1 │ │ -434402: 1307 0900 |0027: const/16 v7, #int 9 // #9 │ │ -434406: 3275 0300 |0029: if-eq v5, v7, 002c // +0003 │ │ -43440a: 0e00 |002b: return-void │ │ -43440c: 2115 |002c: array-length v5, v1 │ │ -43440e: 1a0a 0000 |002d: const-string v10, "" // string@0000 │ │ -434412: 120b |002f: const/4 v11, #int 0 // #0 │ │ -434414: 0810 0a00 |0030: move-object/from16 v16, v10 │ │ -434418: 0811 1000 |0032: move-object/from16 v17, v16 │ │ -43441c: 07bc |0034: move-object v12, v11 │ │ -43441e: 07cd |0035: move-object v13, v12 │ │ -434420: 07de |0036: move-object v14, v13 │ │ -434422: 07ef |0037: move-object v15, v14 │ │ -434424: 1208 |0038: const/4 v8, #int 0 // #0 │ │ -434426: 1209 |0039: const/4 v9, #int 0 // #0 │ │ -434428: 1612 0000 |003a: const-wide/16 v18, #int 0 // #0 │ │ -43442c: 1227 |003c: const/4 v7, #int 2 // #2 │ │ -43442e: 3558 d001 |003d: if-ge v8, v5, 020d // +01d0 │ │ -434432: 4616 0108 |003f: aget-object v22, v1, v8 │ │ -434436: 2b09 c502 0000 |0041: packed-switch v9, 00000306 // +000002c5 │ │ -43443c: 0217 0500 |0044: move/from16 v23, v5 │ │ -434440: 0819 0a00 |0046: move-object/from16 v25, v10 │ │ -434444: 131b 0900 |0048: const/16 v27, #int 9 // #9 │ │ -434448: 2900 b701 |004a: goto/16 0201 // +01b7 │ │ -43444c: 6206 b65f |004c: sget-object v6, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb6 │ │ -434450: 6203 b55f |004e: sget-object v3, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb5 │ │ -434454: 6e30 26ba 360c |0050: invoke-virtual {v6, v3, v12}, Lorg/purple/smoke/Database;.signatureKeyForDigest:(Lorg/purple/smoke/Cryptography;[B)Ljava/security/PublicKey; // method@ba26 │ │ -43445a: 0c06 |0053: move-result-object v6 │ │ -43445c: 3906 0300 |0054: if-nez v6, 0057 // +0003 │ │ -434460: 0e00 |0056: return-void │ │ -434462: 0217 0500 |0057: move/from16 v23, v5 │ │ -434466: 7401 bc5c 1600 |0059: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -43446c: 0c05 |005c: move-result-object v5 │ │ -43446e: 7120 c254 7500 |005d: invoke-static {v5, v7}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -434474: 0c05 |0060: move-result-object v5 │ │ -434476: 1307 1300 |0061: const/16 v7, #int 19 // #13 │ │ -43447a: 2377 0f1c |0063: new-array v7, v7, [[B // type@1c0f │ │ -43447e: 1314 0000 |0065: const/16 v20, #int 0 // #0 │ │ -434482: 4d02 0714 |0067: aput-object v2, v7, v20 │ │ -434486: 0819 0a00 |0069: move-object/from16 v25, v10 │ │ -43448a: 1212 |006b: const/4 v2, #int 1 // #1 │ │ -43448c: 232a 481b |006c: new-array v10, v2, [B // type@1b48 │ │ -434490: 4f04 0a14 |006e: aput-byte v4, v10, v20 │ │ -434494: 4d0a 0702 |0070: aput-object v10, v7, v2 │ │ -434498: 460a 0114 |0072: aget-object v10, v1, v20 │ │ -43449c: 6e10 bc5c 0a00 |0074: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4344a2: 0c0a |0077: move-result-object v10 │ │ -4344a4: 1314 0200 |0078: const/16 v20, #int 2 // #2 │ │ -4344a8: 4d0a 0714 |007a: aput-object v10, v7, v20 │ │ -4344ac: 1a0a 0100 |007c: const-string v10, " │ │ +4343a0: |[4343a0] org.purple.smoke.SteamKeyExchange.steamAorB:([B[B)V │ │ +4343b0: 0800 1c00 |0000: move-object/from16 v0, v28 │ │ +4343b4: 0801 1d00 |0002: move-object/from16 v1, v29 │ │ +4343b8: 0802 1e00 |0004: move-object/from16 v2, v30 │ │ +4343bc: 3801 ff02 |0006: if-eqz v1, 0305 // +02ff │ │ +4343c0: 2113 |0008: array-length v3, v1 │ │ +4343c2: 3803 fc02 |0009: if-eqz v3, 0305 // +02fc │ │ +4343c6: 3802 fa02 |000b: if-eqz v2, 0305 // +02fa │ │ +4343ca: 2123 |000d: array-length v3, v2 │ │ +4343cc: 3903 0400 |000e: if-nez v3, 0012 // +0004 │ │ +4343d0: 2900 f502 |0010: goto/16 0305 // +02f5 │ │ +4343d4: 1203 |0012: const/4 v3, #int 0 // #0 │ │ +4343d6: 4804 0103 |0013: aget-byte v4, v1, v3 │ │ +4343da: 2115 |0015: array-length v5, v1 │ │ +4343dc: 1216 |0016: const/4 v6, #int 1 // #1 │ │ +4343de: 7130 b65f 6105 |0017: invoke-static {v1, v6, v5}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb6 │ │ +4343e4: 0c01 |001a: move-result-object v1 │ │ +4343e6: 2205 ef0a |001b: new-instance v5, Ljava/lang/String; // type@0aef │ │ +4343ea: 7020 ac5c 1500 |001d: invoke-direct {v5, v1}, Ljava/lang/String;.:([B)V // method@5cac │ │ +4343f0: 1a01 c255 |0020: const-string v1, "\n" // string@55c2 │ │ +4343f4: 6e20 c95c 1500 |0022: invoke-virtual {v5, v1}, Ljava/lang/String;.split:(Ljava/lang/String;)[Ljava/lang/String; // method@5cc9 │ │ +4343fa: 0c01 |0025: move-result-object v1 │ │ +4343fc: 2115 |0026: array-length v5, v1 │ │ +4343fe: 1307 0900 |0027: const/16 v7, #int 9 // #9 │ │ +434402: 3275 0300 |0029: if-eq v5, v7, 002c // +0003 │ │ +434406: 0e00 |002b: return-void │ │ +434408: 2115 |002c: array-length v5, v1 │ │ +43440a: 1a0a 0000 |002d: const-string v10, "" // string@0000 │ │ +43440e: 120b |002f: const/4 v11, #int 0 // #0 │ │ +434410: 0810 0a00 |0030: move-object/from16 v16, v10 │ │ +434414: 0811 1000 |0032: move-object/from16 v17, v16 │ │ +434418: 07bc |0034: move-object v12, v11 │ │ +43441a: 07cd |0035: move-object v13, v12 │ │ +43441c: 07de |0036: move-object v14, v13 │ │ +43441e: 07ef |0037: move-object v15, v14 │ │ +434420: 1208 |0038: const/4 v8, #int 0 // #0 │ │ +434422: 1209 |0039: const/4 v9, #int 0 // #0 │ │ +434424: 1612 0000 |003a: const-wide/16 v18, #int 0 // #0 │ │ +434428: 1227 |003c: const/4 v7, #int 2 // #2 │ │ +43442a: 3558 d001 |003d: if-ge v8, v5, 020d // +01d0 │ │ +43442e: 4616 0108 |003f: aget-object v22, v1, v8 │ │ +434432: 2b09 c502 0000 |0041: packed-switch v9, 00000306 // +000002c5 │ │ +434438: 0217 0500 |0044: move/from16 v23, v5 │ │ +43443c: 0819 0a00 |0046: move-object/from16 v25, v10 │ │ +434440: 131b 0900 |0048: const/16 v27, #int 9 // #9 │ │ +434444: 2900 b701 |004a: goto/16 0201 // +01b7 │ │ +434448: 6206 b65f |004c: sget-object v6, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb6 │ │ +43444c: 6203 b55f |004e: sget-object v3, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb5 │ │ +434450: 6e30 26ba 360c |0050: invoke-virtual {v6, v3, v12}, Lorg/purple/smoke/Database;.signatureKeyForDigest:(Lorg/purple/smoke/Cryptography;[B)Ljava/security/PublicKey; // method@ba26 │ │ +434456: 0c06 |0053: move-result-object v6 │ │ +434458: 3906 0300 |0054: if-nez v6, 0057 // +0003 │ │ +43445c: 0e00 |0056: return-void │ │ +43445e: 0217 0500 |0057: move/from16 v23, v5 │ │ +434462: 7401 bc5c 1600 |0059: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434468: 0c05 |005c: move-result-object v5 │ │ +43446a: 7120 c254 7500 |005d: invoke-static {v5, v7}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +434470: 0c05 |0060: move-result-object v5 │ │ +434472: 1307 1300 |0061: const/16 v7, #int 19 // #13 │ │ +434476: 2377 0f1c |0063: new-array v7, v7, [[B // type@1c0f │ │ +43447a: 1314 0000 |0065: const/16 v20, #int 0 // #0 │ │ +43447e: 4d02 0714 |0067: aput-object v2, v7, v20 │ │ +434482: 0819 0a00 |0069: move-object/from16 v25, v10 │ │ +434486: 1212 |006b: const/4 v2, #int 1 // #1 │ │ +434488: 232a 481b |006c: new-array v10, v2, [B // type@1b48 │ │ +43448c: 4f04 0a14 |006e: aput-byte v4, v10, v20 │ │ +434490: 4d0a 0702 |0070: aput-object v10, v7, v2 │ │ +434494: 460a 0114 |0072: aget-object v10, v1, v20 │ │ +434498: 6e10 bc5c 0a00 |0074: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +43449e: 0c0a |0077: move-result-object v10 │ │ +4344a0: 1314 0200 |0078: const/16 v20, #int 2 // #2 │ │ +4344a4: 4d0a 0714 |007a: aput-object v10, v7, v20 │ │ +4344a8: 1a0a 0100 |007c: const-string v10, " │ │ " // string@0001 │ │ -4344b0: 6e10 bc5c 0a00 |007e: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4344b6: 0c14 |0081: move-result-object v20 │ │ -4344b8: 1315 0300 |0082: const/16 v21, #int 3 // #3 │ │ -4344bc: 4d14 0715 |0084: aput-object v20, v7, v21 │ │ -4344c0: 4614 0102 |0086: aget-object v20, v1, v2 │ │ -4344c4: 7401 bc5c 1400 |0088: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4344ca: 0c02 |008b: move-result-object v2 │ │ -4344cc: 1314 0400 |008c: const/16 v20, #int 4 // #4 │ │ -4344d0: 4d02 0714 |008e: aput-object v2, v7, v20 │ │ -4344d4: 6e10 bc5c 0a00 |0090: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4344da: 0c02 |0093: move-result-object v2 │ │ -4344dc: 1316 0500 |0094: const/16 v22, #int 5 // #5 │ │ -4344e0: 4d02 0716 |0096: aput-object v2, v7, v22 │ │ -4344e4: 1222 |0098: const/4 v2, #int 2 // #2 │ │ -4344e6: 4602 0102 |0099: aget-object v2, v1, v2 │ │ -4344ea: 6e10 bc5c 0200 |009b: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4344f0: 0c02 |009e: move-result-object v2 │ │ -4344f2: 1318 0600 |009f: const/16 v24, #int 6 // #6 │ │ -4344f6: 4d02 0718 |00a1: aput-object v2, v7, v24 │ │ -4344fa: 6e10 bc5c 0a00 |00a3: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434500: 0c02 |00a6: move-result-object v2 │ │ -434502: 131a 0700 |00a7: const/16 v26, #int 7 // #7 │ │ -434506: 4d02 071a |00a9: aput-object v2, v7, v26 │ │ -43450a: 1302 0800 |00ab: const/16 v2, #int 8 // #8 │ │ -43450e: 4615 0115 |00ad: aget-object v21, v1, v21 │ │ -434512: 7401 bc5c 1500 |00af: invoke-virtual/range {v21}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434518: 0c15 |00b2: move-result-object v21 │ │ -43451a: 4d15 0702 |00b3: aput-object v21, v7, v2 │ │ -43451e: 6e10 bc5c 0a00 |00b5: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434524: 0c02 |00b8: move-result-object v2 │ │ -434526: 131b 0900 |00b9: const/16 v27, #int 9 // #9 │ │ -43452a: 4d02 071b |00bb: aput-object v2, v7, v27 │ │ -43452e: 1302 0a00 |00bd: const/16 v2, #int 10 // #a │ │ -434532: 4614 0114 |00bf: aget-object v20, v1, v20 │ │ -434536: 7401 bc5c 1400 |00c1: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -43453c: 0c14 |00c4: move-result-object v20 │ │ -43453e: 4d14 0702 |00c5: aput-object v20, v7, v2 │ │ -434542: 1302 0b00 |00c7: const/16 v2, #int 11 // #b │ │ -434546: 6e10 bc5c 0a00 |00c9: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -43454c: 0c14 |00cc: move-result-object v20 │ │ -43454e: 4d14 0702 |00cd: aput-object v20, v7, v2 │ │ -434552: 1302 0c00 |00cf: const/16 v2, #int 12 // #c │ │ -434556: 4614 0116 |00d1: aget-object v20, v1, v22 │ │ -43455a: 7401 bc5c 1400 |00d3: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434560: 0c14 |00d6: move-result-object v20 │ │ -434562: 4d14 0702 |00d7: aput-object v20, v7, v2 │ │ -434566: 1302 0d00 |00d9: const/16 v2, #int 13 // #d │ │ -43456a: 6e10 bc5c 0a00 |00db: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434570: 0c14 |00de: move-result-object v20 │ │ -434572: 4d14 0702 |00df: aput-object v20, v7, v2 │ │ -434576: 1302 0e00 |00e1: const/16 v2, #int 14 // #e │ │ -43457a: 4614 0118 |00e3: aget-object v20, v1, v24 │ │ -43457e: 7401 bc5c 1400 |00e5: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434584: 0c14 |00e8: move-result-object v20 │ │ -434586: 4d14 0702 |00e9: aput-object v20, v7, v2 │ │ -43458a: 1302 0f00 |00eb: const/16 v2, #int 15 // #f │ │ -43458e: 6e10 bc5c 0a00 |00ed: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434594: 0c14 |00f0: move-result-object v20 │ │ -434596: 4d14 0702 |00f1: aput-object v20, v7, v2 │ │ -43459a: 1302 1000 |00f3: const/16 v2, #int 16 // #10 │ │ -43459e: 4614 011a |00f5: aget-object v20, v1, v26 │ │ -4345a2: 7401 bc5c 1400 |00f7: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4345a8: 0c14 |00fa: move-result-object v20 │ │ -4345aa: 4d14 0702 |00fb: aput-object v20, v7, v2 │ │ -4345ae: 1302 1100 |00fd: const/16 v2, #int 17 // #11 │ │ -4345b2: 6e10 bc5c 0a00 |00ff: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4345b8: 0c0a |0102: move-result-object v10 │ │ -4345ba: 4d0a 0702 |0103: aput-object v10, v7, v2 │ │ -4345be: 1302 1200 |0105: const/16 v2, #int 18 // #12 │ │ -4345c2: 6e10 6fb9 0300 |0107: invoke-virtual {v3}, Lorg/purple/smoke/Cryptography;.chatEncryptionPublicKeyDigest:()[B // method@b96f │ │ -4345c8: 0c03 |010a: move-result-object v3 │ │ -4345ca: 4d03 0702 |010b: aput-object v3, v7, v2 │ │ -4345ce: 7110 ebbb 0700 |010d: invoke-static {v7}, Lorg/purple/smoke/Miscellaneous;.joinByteArrays:([[B)[B // method@bbeb │ │ -4345d4: 0c02 |0110: move-result-object v2 │ │ -4345d6: 7130 c0b9 5602 |0111: invoke-static {v6, v5, v2}, Lorg/purple/smoke/Cryptography;.verifySignature:(Ljava/security/PublicKey;[B[B)Z // method@b9c0 │ │ -4345dc: 0a02 |0114: move-result v2 │ │ -4345de: 3902 ea00 |0115: if-nez v2, 01ff // +00ea │ │ -4345e2: 0e00 |0117: return-void │ │ -4345e4: 0217 0500 |0118: move/from16 v23, v5 │ │ -4345e8: 0819 0a00 |011a: move-object/from16 v25, v10 │ │ -4345ec: 131b 0900 |011c: const/16 v27, #int 9 // #9 │ │ -4345f0: 7401 bc5c 1600 |011e: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4345f6: 0c02 |0121: move-result-object v2 │ │ -4345f8: 1223 |0122: const/4 v3, #int 2 // #2 │ │ -4345fa: 7120 c254 3200 |0123: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -434600: 0c02 |0126: move-result-object v2 │ │ -434602: d809 0901 |0127: add-int/lit8 v9, v9, #int 1 // #01 │ │ -434606: 072c |0129: move-object v12, v2 │ │ -434608: 2900 d700 |012a: goto/16 0201 // +00d7 │ │ -43460c: 0217 0500 |012c: move/from16 v23, v5 │ │ -434610: 0819 0a00 |012e: move-object/from16 v25, v10 │ │ -434614: 1223 |0130: const/4 v3, #int 2 // #2 │ │ -434616: 131b 0900 |0131: const/16 v27, #int 9 // #9 │ │ -43461a: 7401 bc5c 1600 |0133: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434620: 0c02 |0136: move-result-object v2 │ │ -434622: 7120 c254 3200 |0137: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -434628: 0c02 |013a: move-result-object v2 │ │ -43462a: 7110 e1bb 0200 |013b: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayToLong:([B)J // method@bbe1 │ │ -434630: 0b12 |013e: move-result-wide v18 │ │ -434632: 1602 0000 |013f: const-wide/16 v2, #int 0 // #0 │ │ -434636: 3105 1202 |0141: cmp-long v5, v18, v2 │ │ -43463a: 3b05 bc00 |0143: if-gez v5, 01ff // +00bc │ │ -43463e: 0e00 |0145: return-void │ │ -434640: 0217 0500 |0146: move/from16 v23, v5 │ │ -434644: 0819 0a00 |0148: move-object/from16 v25, v10 │ │ -434648: 1223 |014a: const/4 v3, #int 2 // #2 │ │ -43464a: 131b 0900 |014b: const/16 v27, #int 9 // #9 │ │ -43464e: 2202 ef0a |014d: new-instance v2, Ljava/lang/String; // type@0aef │ │ -434652: 7401 bc5c 1600 |014f: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434658: 0c05 |0152: move-result-object v5 │ │ -43465a: 7120 c254 3500 |0153: invoke-static {v5, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -434660: 0c03 |0156: move-result-object v3 │ │ -434662: 6205 e42c |0157: sget-object v5, Ljava/nio/charset/StandardCharsets;.UTF_8:Ljava/nio/charset/Charset; // field@2ce4 │ │ -434666: 7030 af5c 3205 |0159: invoke-direct {v2, v3, v5}, Ljava/lang/String;.:([BLjava/nio/charset/Charset;)V // method@5caf │ │ -43466c: 1303 2e00 |015c: const/16 v3, #int 46 // #2e │ │ -434670: 6e20 c05c 3200 |015e: invoke-virtual {v2, v3}, Ljava/lang/String;.indexOf:(I)I // method@5cc0 │ │ -434676: 0a05 |0161: move-result v5 │ │ -434678: 3905 0a00 |0162: if-nez v5, 016c // +000a │ │ -43467c: 6e20 c05c 3200 |0164: invoke-virtual {v2, v3}, Ljava/lang/String;.indexOf:(I)I // method@5cc0 │ │ -434682: 0a03 |0167: move-result v3 │ │ -434684: 6e20 cc5c 3200 |0168: invoke-virtual {v2, v3}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ -43468a: 0c11 |016b: move-result-object v17 │ │ -43468c: d809 0901 |016c: add-int/lit8 v9, v9, #int 1 // #01 │ │ -434690: 0810 0200 |016e: move-object/from16 v16, v2 │ │ -434694: 2900 9100 |0170: goto/16 0201 // +0091 │ │ -434698: 0217 0500 |0172: move/from16 v23, v5 │ │ -43469c: 0819 0a00 |0174: move-object/from16 v25, v10 │ │ -4346a0: 131b 0900 |0176: const/16 v27, #int 9 // #9 │ │ -4346a4: 7401 bc5c 1600 |0178: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4346aa: 0c02 |017b: move-result-object v2 │ │ -4346ac: 1223 |017c: const/4 v3, #int 2 // #2 │ │ -4346ae: 7120 c254 3200 |017d: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -4346b4: 0c02 |0180: move-result-object v2 │ │ -4346b6: 6203 1855 |0181: sget-object v3, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ -4346ba: 1205 |0183: const/4 v5, #int 0 // #0 │ │ -4346bc: 4803 0305 |0184: aget-byte v3, v3, v5 │ │ -4346c0: 3334 1900 |0186: if-ne v4, v3, 019f // +0019 │ │ -4346c4: 6203 b65f |0188: sget-object v3, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb6 │ │ -4346c8: 6205 b55f |018a: sget-object v5, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb5 │ │ -4346cc: 6e30 28ba 5302 |018c: invoke-virtual {v3, v5, v2}, Lorg/purple/smoke/Database;.steamOidFromFileIdentity:(Lorg/purple/smoke/Cryptography;[B)I // method@ba28 │ │ -4346d2: 0a06 |018f: move-result v6 │ │ -4346d4: 12f7 |0190: const/4 v7, #int -1 // #ff │ │ -4346d6: 3776 0e00 |0191: if-le v6, v7, 019f // +000e │ │ -4346da: d806 06ff |0193: add-int/lit8 v6, v6, #int -1 // #ff │ │ -4346de: 6e40 1cba 5367 |0195: invoke-virtual {v3, v5, v7, v6}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba1c │ │ -4346e4: 0c03 |0198: move-result-object v3 │ │ -4346e6: 3803 0600 |0199: if-eqz v3, 019f // +0006 │ │ -4346ea: 7020 12be 3000 |019b: invoke-direct {v0, v3}, Lorg/purple/smoke/SteamKeyExchange;.shareB:(Lorg/purple/smoke/SteamElement;)V // method@be12 │ │ -4346f0: 0e00 |019e: return-void │ │ -4346f2: d809 0901 |019f: add-int/lit8 v9, v9, #int 1 // #01 │ │ -4346f6: 072b |01a1: move-object v11, v2 │ │ -4346f8: 285f |01a2: goto 0201 // +005f │ │ -4346fa: 0217 0500 |01a3: move/from16 v23, v5 │ │ -4346fe: 0819 0a00 |01a5: move-object/from16 v25, v10 │ │ -434702: 131b 0900 |01a7: const/16 v27, #int 9 // #9 │ │ -434706: 7401 bc5c 1600 |01a9: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -43470c: 0c02 |01ac: move-result-object v2 │ │ -43470e: 1223 |01ad: const/4 v3, #int 2 // #2 │ │ -434710: 7120 c254 3200 |01ae: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -434716: 0c02 |01b1: move-result-object v2 │ │ -434718: d809 0901 |01b2: add-int/lit8 v9, v9, #int 1 // #01 │ │ -43471c: 072e |01b4: move-object v14, v2 │ │ -43471e: 284c |01b5: goto 0201 // +004c │ │ -434720: 0217 0500 |01b6: move/from16 v23, v5 │ │ -434724: 0819 0a00 |01b8: move-object/from16 v25, v10 │ │ -434728: 1223 |01ba: const/4 v3, #int 2 // #2 │ │ -43472a: 131b 0900 |01bb: const/16 v27, #int 9 // #9 │ │ -43472e: 7401 bc5c 1600 |01bd: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434734: 0c02 |01c0: move-result-object v2 │ │ -434736: 7120 c254 3200 |01c1: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -43473c: 0c02 |01c4: move-result-object v2 │ │ -43473e: d809 0901 |01c5: add-int/lit8 v9, v9, #int 1 // #01 │ │ -434742: 072f |01c7: move-object v15, v2 │ │ -434744: 2839 |01c8: goto 0201 // +0039 │ │ -434746: 0217 0500 |01c9: move/from16 v23, v5 │ │ -43474a: 0819 0a00 |01cb: move-object/from16 v25, v10 │ │ -43474e: 1223 |01cd: const/4 v3, #int 2 // #2 │ │ -434750: 131b 0900 |01ce: const/16 v27, #int 9 // #9 │ │ -434754: 7401 bc5c 1600 |01d0: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -43475a: 0c02 |01d3: move-result-object v2 │ │ -43475c: 7120 c254 3200 |01d4: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -434762: 0c02 |01d7: move-result-object v2 │ │ -434764: d809 0901 |01d8: add-int/lit8 v9, v9, #int 1 // #01 │ │ -434768: 072d |01da: move-object v13, v2 │ │ -43476a: 2826 |01db: goto 0201 // +0026 │ │ -43476c: 0217 0500 |01dc: move/from16 v23, v5 │ │ -434770: 0819 0a00 |01de: move-object/from16 v25, v10 │ │ -434774: 1223 |01e0: const/4 v3, #int 2 // #2 │ │ -434776: 131b 0900 |01e1: const/16 v27, #int 9 // #9 │ │ -43477a: 7401 bc5c 1600 |01e3: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434780: 0c02 |01e6: move-result-object v2 │ │ -434782: 7120 c254 3200 |01e7: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -434788: 0c02 |01ea: move-result-object v2 │ │ -43478a: 7110 e1bb 0200 |01eb: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayToLong:([B)J // method@bbe1 │ │ -434790: 0b02 |01ee: move-result-wide v2 │ │ -434792: 7100 065d 0000 |01ef: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -434798: 0b05 |01f2: move-result-wide v5 │ │ -43479a: bc25 |01f3: sub-long/2addr v5, v2 │ │ -43479c: 7120 735c 6500 |01f4: invoke-static {v5, v6}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ -4347a2: 0b02 |01f7: move-result-wide v2 │ │ -4347a4: 1605 3075 |01f8: const-wide/16 v5, #int 30000 // #7530 │ │ -4347a8: 3107 0205 |01fa: cmp-long v7, v2, v5 │ │ -4347ac: 3d07 0300 |01fc: if-lez v7, 01ff // +0003 │ │ -4347b0: 0e00 |01fe: return-void │ │ -4347b2: d809 0901 |01ff: add-int/lit8 v9, v9, #int 1 // #01 │ │ -4347b6: d808 0801 |0201: add-int/lit8 v8, v8, #int 1 // #01 │ │ -4347ba: 0802 1e00 |0203: move-object/from16 v2, v30 │ │ -4347be: 0205 1700 |0205: move/from16 v5, v23 │ │ -4347c2: 080a 1900 |0207: move-object/from16 v10, v25 │ │ -4347c6: 1203 |0209: const/4 v3, #int 0 // #0 │ │ -4347c8: 1216 |020a: const/4 v6, #int 1 // #1 │ │ -4347ca: 2900 31fe |020b: goto/16 003c // -01cf │ │ -4347ce: 0819 0a00 |020d: move-object/from16 v25, v10 │ │ -4347d2: 6201 1855 |020f: sget-object v1, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ -4347d6: 1202 |0211: const/4 v2, #int 0 // #0 │ │ -4347d8: 4801 0102 |0212: aget-byte v1, v1, v2 │ │ -4347dc: 3314 c000 |0214: if-ne v4, v1, 02d4 // +00c0 │ │ -4347e0: 6201 b65f |0216: sget-object v1, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb6 │ │ -4347e4: 6202 b55f |0218: sget-object v2, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb5 │ │ -4347e8: 6e30 fab9 210c |021a: invoke-virtual {v1, v2, v12}, Lorg/purple/smoke/Database;.nameSipHashIdFromDigest:(Lorg/purple/smoke/Cryptography;[B)[Ljava/lang/String; // method@b9fa │ │ -4347ee: 0c03 |021d: move-result-object v3 │ │ -4347f0: 1214 |021e: const/4 v4, #int 1 // #1 │ │ -4347f2: 4605 0304 |021f: aget-object v5, v3, v4 │ │ -4347f6: 6e30 15ba 2105 |0221: invoke-virtual {v1, v2, v5}, Lorg/purple/smoke/Database;.readParticipantOptions:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba15 │ │ -4347fc: 0c05 |0224: move-result-object v5 │ │ -4347fe: 1a06 f38f |0225: const-string v6, "optional_steam = true" // string@8ff3 │ │ -434802: 6e20 b65c 6500 |0227: invoke-virtual {v5, v6}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -434808: 0a05 |022a: move-result v5 │ │ -43480a: 3805 0300 |022b: if-eqz v5, 022e // +0003 │ │ -43480e: 0e00 |022d: return-void │ │ -434810: 2205 281b |022e: new-instance v5, Lorg/purple/smoke/SteamElement; // type@1b28 │ │ -434814: 7010 01be 0500 |0230: invoke-direct {v5}, Lorg/purple/smoke/SteamElement;.:()V // method@be01 │ │ -43481a: 4606 0304 |0233: aget-object v6, v3, v4 │ │ -43481e: 6e10 c35c 0600 |0235: invoke-virtual {v6}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -434824: 0a04 |0238: move-result v4 │ │ -434826: 3804 0800 |0239: if-eqz v4, 0241 // +0008 │ │ -43482a: 1204 |023b: const/4 v4, #int 0 // #0 │ │ -43482c: 4603 0304 |023c: aget-object v3, v3, v4 │ │ -434830: 5b53 955f |023e: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ -434834: 2822 |0240: goto 0262 // +0022 │ │ -434836: 1204 |0241: const/4 v4, #int 0 // #0 │ │ -434838: 2206 f10a |0242: new-instance v6, Ljava/lang/StringBuilder; // type@0af1 │ │ -43483c: 7010 ee5c 0600 |0244: invoke-direct {v6}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -434842: 4607 0304 |0247: aget-object v7, v3, v4 │ │ -434846: 6e20 f95c 7600 |0249: invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43484c: 1a04 9800 |024c: const-string v4, " (" // string@0098 │ │ -434850: 6e20 f95c 4600 |024e: invoke-virtual {v6, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -434856: 1214 |0251: const/4 v4, #int 1 // #1 │ │ -434858: 4603 0304 |0252: aget-object v3, v3, v4 │ │ -43485c: 6e20 f95c 3600 |0254: invoke-virtual {v6, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -434862: 1a03 ec03 |0257: const-string v3, ")" // string@03ec │ │ -434866: 6e20 f95c 3600 |0259: invoke-virtual {v6, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43486c: 6e10 035d 0600 |025c: invoke-virtual {v6}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -434872: 0c03 |025f: move-result-object v3 │ │ -434874: 5b53 955f |0260: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ -434878: 080a 1000 |0262: move-object/from16 v10, v16 │ │ -43487c: 1303 2e00 |0264: const/16 v3, #int 46 // #2e │ │ -434880: 6e20 c05c 3a00 |0266: invoke-virtual {v10, v3}, Ljava/lang/String;.indexOf:(I)I // method@5cc0 │ │ -434886: 0a03 |0269: move-result v3 │ │ -434888: 3903 2500 |026a: if-nez v3, 028f // +0025 │ │ -43488c: 2203 f10a |026c: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ -434890: 7010 ee5c 0300 |026e: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -434896: 1a04 384c |0271: const-string v4, "Smoke_" // string@4c38 │ │ -43489a: 6e20 f95c 4300 |0273: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4348a0: 1304 2000 |0276: const/16 v4, #int 32 // #20 │ │ -4348a4: 7110 a9b9 0400 |0278: invoke-static {v4}, Lorg/purple/smoke/Cryptography;.randomBytes:(I)[B // method@b9a9 │ │ -4348aa: 0c04 |027b: move-result-object v4 │ │ -4348ac: 7110 dfbb 0400 |027c: invoke-static {v4}, Lorg/purple/smoke/Miscellaneous;.byteArrayAsHexString:([B)Ljava/lang/String; // method@bbdf │ │ -4348b2: 0c04 |027f: move-result-object v4 │ │ -4348b4: 6e20 f95c 4300 |0280: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4348ba: 080a 1100 |0283: move-object/from16 v10, v17 │ │ -4348be: 6e20 f95c a300 |0285: invoke-virtual {v3, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4348c4: 6e10 035d 0300 |0288: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4348ca: 0c03 |028b: move-result-object v3 │ │ -4348cc: 5b53 975f |028c: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f97 │ │ -4348d0: 2803 |028e: goto 0291 // +0003 │ │ -4348d2: 5b5a 975f |028f: iput-object v10, v5, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f97 │ │ -4348d6: 5b5d 995f |0291: iput-object v13, v5, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f99 │ │ -4348da: 5b5e 9a5f |0293: iput-object v14, v5, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9a │ │ -4348de: 5b5b 9b5f |0295: iput-object v11, v5, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9b │ │ -4348e2: 5453 975f |0297: iget-object v3, v5, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f97 │ │ -4348e6: 5b53 9c5f |0299: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_fileName:Ljava/lang/String; // field@5f9c │ │ -4348ea: 0508 1200 |029b: move-wide/from16 v8, v18 │ │ -4348ee: 5a58 9d5f |029d: iput-wide v8, v5, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ -4348f2: 1223 |029f: const/4 v3, #int 2 // #2 │ │ -4348f4: 2333 0f1c |02a0: new-array v3, v3, [[B // type@1c0f │ │ -4348f8: 7100 6bb9 0000 |02a2: invoke-static {}, Lorg/purple/smoke/Cryptography;.aes256KeyBytes:()[B // method@b96b │ │ -4348fe: 0c04 |02a5: move-result-object v4 │ │ -434900: 1206 |02a6: const/4 v6, #int 0 // #0 │ │ -434902: 4d04 0306 |02a7: aput-object v4, v3, v6 │ │ -434906: 7100 b9b9 0000 |02a9: invoke-static {}, Lorg/purple/smoke/Cryptography;.sha512KeyBytes:()[B // method@b9b9 │ │ -43490c: 0c04 |02ac: move-result-object v4 │ │ -43490e: 1217 |02ad: const/4 v7, #int 1 // #1 │ │ -434910: 4d04 0307 |02ae: aput-object v4, v3, v7 │ │ -434914: 7110 ebbb 0300 |02b0: invoke-static {v3}, Lorg/purple/smoke/Miscellaneous;.joinByteArrays:([[B)[B // method@bbeb │ │ -43491a: 0c03 |02b3: move-result-object v3 │ │ -43491c: 5b53 9e5f |02b4: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ -434920: 4803 0f06 |02b6: aget-byte v3, v15, v6 │ │ -434924: 6204 b553 |02b8: sget-object v4, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ -434928: 4804 0406 |02ba: aget-byte v4, v4, v6 │ │ -43492c: 3343 0500 |02bc: if-ne v3, v4, 02c1 // +0005 │ │ -434930: 1a03 af3f |02be: const-string v3, "McEliece" // string@3faf │ │ -434934: 2803 |02c0: goto 02c3 // +0003 │ │ -434936: 1a03 6c46 |02c1: const-string v3, "RSA" // string@466c │ │ -43493a: 5b53 9f5f |02c3: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5f9f │ │ -43493e: 1603 0000 |02c5: const-wide/16 v3, #int 0 // #0 │ │ -434942: 5a53 a25f |02c7: iput-wide v3, v5, Lorg/purple/smoke/SteamElement;.m_readInterval:J // field@5fa2 │ │ -434946: 1a03 0062 |02c9: const-string v3, "created private-key pair" // string@6200 │ │ -43494a: 5b53 a55f |02cb: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa5 │ │ -43494e: 6e30 3bba 2105 |02cd: invoke-virtual {v1, v2, v5}, Lorg/purple/smoke/Database;.writeSteam:(Lorg/purple/smoke/Cryptography;Lorg/purple/smoke/SteamElement;)V // method@ba3b │ │ -434954: 7020 12be 5000 |02d0: invoke-direct {v0, v5}, Lorg/purple/smoke/SteamKeyExchange;.shareB:(Lorg/purple/smoke/SteamElement;)V // method@be12 │ │ -43495a: 2832 |02d3: goto 0305 // +0032 │ │ -43495c: 6201 b65f |02d4: sget-object v1, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb6 │ │ -434960: 6202 b55f |02d6: sget-object v2, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb5 │ │ -434964: 6e30 28ba 210b |02d8: invoke-virtual {v1, v2, v11}, Lorg/purple/smoke/Database;.steamOidFromFileIdentity:(Lorg/purple/smoke/Cryptography;[B)I // method@ba28 │ │ -43496a: 0a03 |02db: move-result v3 │ │ -43496c: d804 03ff |02dc: add-int/lit8 v4, v3, #int -1 // #ff │ │ -434970: 12f5 |02de: const/4 v5, #int -1 // #ff │ │ -434972: 6e40 1cba 2145 |02df: invoke-virtual {v1, v2, v5, v4}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba1c │ │ -434978: 0c04 |02e2: move-result-object v4 │ │ -43497a: 3904 0300 |02e3: if-nez v4, 02e6 // +0003 │ │ -43497e: 0e00 |02e5: return-void │ │ -434980: 5444 985f |02e6: iget-object v4, v4, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f98 │ │ -434984: 7110 a3b9 0400 |02e8: invoke-static {v4}, Lorg/purple/smoke/Cryptography;.privateKeyFromBytes:([B)Ljava/security/PrivateKey; // method@b9a3 │ │ -43498a: 0c04 |02eb: move-result-object v4 │ │ -43498c: 3904 0300 |02ec: if-nez v4, 02ef // +0003 │ │ -434990: 0e00 |02ee: return-void │ │ -434992: 7120 9db9 d400 |02ef: invoke-static {v4, v13}, Lorg/purple/smoke/Cryptography;.pkiDecrypt:(Ljava/security/PrivateKey;[B)[B // method@b99d │ │ -434998: 0c08 |02f2: move-result-object v8 │ │ -43499a: 3908 0300 |02f3: if-nez v8, 02f6 // +0003 │ │ -43499e: 0e00 |02f5: return-void │ │ -4349a0: 1209 |02f6: const/4 v9, #int 0 // #0 │ │ -4349a2: 120a |02f7: const/4 v10, #int 0 // #0 │ │ -4349a4: 0716 |02f8: move-object v6, v1 │ │ -4349a6: 0727 |02f9: move-object v7, v2 │ │ -4349a8: 013b |02fa: move v11, v3 │ │ -4349aa: 7406 3eba 0600 |02fb: invoke-virtual/range {v6, v7, v8, v9, v10, v11}, Lorg/purple/smoke/Database;.writeSteamKeys:(Lorg/purple/smoke/Cryptography;[B[B[BI)Z // method@ba3e │ │ -4349b0: 1a04 7996 |02fe: const-string v4, "received private-key pair" // string@9679 │ │ -4349b4: 0805 1900 |0300: move-object/from16 v5, v25 │ │ -4349b8: 6e53 41ba 2154 |0302: invoke-virtual {v1, v2, v4, v5, v3}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;I)V // method@ba41 │ │ -4349be: 0e00 |0305: return-void │ │ -4349c0: 0001 0900 0000 0000 9b01 0000 8801 ... |0306: packed-switch-data (22 units) │ │ +4344ac: 6e10 bc5c 0a00 |007e: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4344b2: 0c14 |0081: move-result-object v20 │ │ +4344b4: 1315 0300 |0082: const/16 v21, #int 3 // #3 │ │ +4344b8: 4d14 0715 |0084: aput-object v20, v7, v21 │ │ +4344bc: 4614 0102 |0086: aget-object v20, v1, v2 │ │ +4344c0: 7401 bc5c 1400 |0088: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4344c6: 0c02 |008b: move-result-object v2 │ │ +4344c8: 1314 0400 |008c: const/16 v20, #int 4 // #4 │ │ +4344cc: 4d02 0714 |008e: aput-object v2, v7, v20 │ │ +4344d0: 6e10 bc5c 0a00 |0090: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4344d6: 0c02 |0093: move-result-object v2 │ │ +4344d8: 1316 0500 |0094: const/16 v22, #int 5 // #5 │ │ +4344dc: 4d02 0716 |0096: aput-object v2, v7, v22 │ │ +4344e0: 1222 |0098: const/4 v2, #int 2 // #2 │ │ +4344e2: 4602 0102 |0099: aget-object v2, v1, v2 │ │ +4344e6: 6e10 bc5c 0200 |009b: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4344ec: 0c02 |009e: move-result-object v2 │ │ +4344ee: 1318 0600 |009f: const/16 v24, #int 6 // #6 │ │ +4344f2: 4d02 0718 |00a1: aput-object v2, v7, v24 │ │ +4344f6: 6e10 bc5c 0a00 |00a3: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4344fc: 0c02 |00a6: move-result-object v2 │ │ +4344fe: 131a 0700 |00a7: const/16 v26, #int 7 // #7 │ │ +434502: 4d02 071a |00a9: aput-object v2, v7, v26 │ │ +434506: 1302 0800 |00ab: const/16 v2, #int 8 // #8 │ │ +43450a: 4615 0115 |00ad: aget-object v21, v1, v21 │ │ +43450e: 7401 bc5c 1500 |00af: invoke-virtual/range {v21}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434514: 0c15 |00b2: move-result-object v21 │ │ +434516: 4d15 0702 |00b3: aput-object v21, v7, v2 │ │ +43451a: 6e10 bc5c 0a00 |00b5: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434520: 0c02 |00b8: move-result-object v2 │ │ +434522: 131b 0900 |00b9: const/16 v27, #int 9 // #9 │ │ +434526: 4d02 071b |00bb: aput-object v2, v7, v27 │ │ +43452a: 1302 0a00 |00bd: const/16 v2, #int 10 // #a │ │ +43452e: 4614 0114 |00bf: aget-object v20, v1, v20 │ │ +434532: 7401 bc5c 1400 |00c1: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434538: 0c14 |00c4: move-result-object v20 │ │ +43453a: 4d14 0702 |00c5: aput-object v20, v7, v2 │ │ +43453e: 1302 0b00 |00c7: const/16 v2, #int 11 // #b │ │ +434542: 6e10 bc5c 0a00 |00c9: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434548: 0c14 |00cc: move-result-object v20 │ │ +43454a: 4d14 0702 |00cd: aput-object v20, v7, v2 │ │ +43454e: 1302 0c00 |00cf: const/16 v2, #int 12 // #c │ │ +434552: 4614 0116 |00d1: aget-object v20, v1, v22 │ │ +434556: 7401 bc5c 1400 |00d3: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +43455c: 0c14 |00d6: move-result-object v20 │ │ +43455e: 4d14 0702 |00d7: aput-object v20, v7, v2 │ │ +434562: 1302 0d00 |00d9: const/16 v2, #int 13 // #d │ │ +434566: 6e10 bc5c 0a00 |00db: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +43456c: 0c14 |00de: move-result-object v20 │ │ +43456e: 4d14 0702 |00df: aput-object v20, v7, v2 │ │ +434572: 1302 0e00 |00e1: const/16 v2, #int 14 // #e │ │ +434576: 4614 0118 |00e3: aget-object v20, v1, v24 │ │ +43457a: 7401 bc5c 1400 |00e5: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434580: 0c14 |00e8: move-result-object v20 │ │ +434582: 4d14 0702 |00e9: aput-object v20, v7, v2 │ │ +434586: 1302 0f00 |00eb: const/16 v2, #int 15 // #f │ │ +43458a: 6e10 bc5c 0a00 |00ed: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434590: 0c14 |00f0: move-result-object v20 │ │ +434592: 4d14 0702 |00f1: aput-object v20, v7, v2 │ │ +434596: 1302 1000 |00f3: const/16 v2, #int 16 // #10 │ │ +43459a: 4614 011a |00f5: aget-object v20, v1, v26 │ │ +43459e: 7401 bc5c 1400 |00f7: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4345a4: 0c14 |00fa: move-result-object v20 │ │ +4345a6: 4d14 0702 |00fb: aput-object v20, v7, v2 │ │ +4345aa: 1302 1100 |00fd: const/16 v2, #int 17 // #11 │ │ +4345ae: 6e10 bc5c 0a00 |00ff: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4345b4: 0c0a |0102: move-result-object v10 │ │ +4345b6: 4d0a 0702 |0103: aput-object v10, v7, v2 │ │ +4345ba: 1302 1200 |0105: const/16 v2, #int 18 // #12 │ │ +4345be: 6e10 6fb9 0300 |0107: invoke-virtual {v3}, Lorg/purple/smoke/Cryptography;.chatEncryptionPublicKeyDigest:()[B // method@b96f │ │ +4345c4: 0c03 |010a: move-result-object v3 │ │ +4345c6: 4d03 0702 |010b: aput-object v3, v7, v2 │ │ +4345ca: 7110 ebbb 0700 |010d: invoke-static {v7}, Lorg/purple/smoke/Miscellaneous;.joinByteArrays:([[B)[B // method@bbeb │ │ +4345d0: 0c02 |0110: move-result-object v2 │ │ +4345d2: 7130 c0b9 5602 |0111: invoke-static {v6, v5, v2}, Lorg/purple/smoke/Cryptography;.verifySignature:(Ljava/security/PublicKey;[B[B)Z // method@b9c0 │ │ +4345d8: 0a02 |0114: move-result v2 │ │ +4345da: 3902 ea00 |0115: if-nez v2, 01ff // +00ea │ │ +4345de: 0e00 |0117: return-void │ │ +4345e0: 0217 0500 |0118: move/from16 v23, v5 │ │ +4345e4: 0819 0a00 |011a: move-object/from16 v25, v10 │ │ +4345e8: 131b 0900 |011c: const/16 v27, #int 9 // #9 │ │ +4345ec: 7401 bc5c 1600 |011e: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4345f2: 0c02 |0121: move-result-object v2 │ │ +4345f4: 1223 |0122: const/4 v3, #int 2 // #2 │ │ +4345f6: 7120 c254 3200 |0123: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +4345fc: 0c02 |0126: move-result-object v2 │ │ +4345fe: d809 0901 |0127: add-int/lit8 v9, v9, #int 1 // #01 │ │ +434602: 072c |0129: move-object v12, v2 │ │ +434604: 2900 d700 |012a: goto/16 0201 // +00d7 │ │ +434608: 0217 0500 |012c: move/from16 v23, v5 │ │ +43460c: 0819 0a00 |012e: move-object/from16 v25, v10 │ │ +434610: 1223 |0130: const/4 v3, #int 2 // #2 │ │ +434612: 131b 0900 |0131: const/16 v27, #int 9 // #9 │ │ +434616: 7401 bc5c 1600 |0133: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +43461c: 0c02 |0136: move-result-object v2 │ │ +43461e: 7120 c254 3200 |0137: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +434624: 0c02 |013a: move-result-object v2 │ │ +434626: 7110 e1bb 0200 |013b: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayToLong:([B)J // method@bbe1 │ │ +43462c: 0b12 |013e: move-result-wide v18 │ │ +43462e: 1602 0000 |013f: const-wide/16 v2, #int 0 // #0 │ │ +434632: 3105 1202 |0141: cmp-long v5, v18, v2 │ │ +434636: 3b05 bc00 |0143: if-gez v5, 01ff // +00bc │ │ +43463a: 0e00 |0145: return-void │ │ +43463c: 0217 0500 |0146: move/from16 v23, v5 │ │ +434640: 0819 0a00 |0148: move-object/from16 v25, v10 │ │ +434644: 1223 |014a: const/4 v3, #int 2 // #2 │ │ +434646: 131b 0900 |014b: const/16 v27, #int 9 // #9 │ │ +43464a: 2202 ef0a |014d: new-instance v2, Ljava/lang/String; // type@0aef │ │ +43464e: 7401 bc5c 1600 |014f: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434654: 0c05 |0152: move-result-object v5 │ │ +434656: 7120 c254 3500 |0153: invoke-static {v5, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +43465c: 0c03 |0156: move-result-object v3 │ │ +43465e: 6205 e42c |0157: sget-object v5, Ljava/nio/charset/StandardCharsets;.UTF_8:Ljava/nio/charset/Charset; // field@2ce4 │ │ +434662: 7030 af5c 3205 |0159: invoke-direct {v2, v3, v5}, Ljava/lang/String;.:([BLjava/nio/charset/Charset;)V // method@5caf │ │ +434668: 1303 2e00 |015c: const/16 v3, #int 46 // #2e │ │ +43466c: 6e20 c05c 3200 |015e: invoke-virtual {v2, v3}, Ljava/lang/String;.indexOf:(I)I // method@5cc0 │ │ +434672: 0a05 |0161: move-result v5 │ │ +434674: 3905 0a00 |0162: if-nez v5, 016c // +000a │ │ +434678: 6e20 c05c 3200 |0164: invoke-virtual {v2, v3}, Ljava/lang/String;.indexOf:(I)I // method@5cc0 │ │ +43467e: 0a03 |0167: move-result v3 │ │ +434680: 6e20 cc5c 3200 |0168: invoke-virtual {v2, v3}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ +434686: 0c11 |016b: move-result-object v17 │ │ +434688: d809 0901 |016c: add-int/lit8 v9, v9, #int 1 // #01 │ │ +43468c: 0810 0200 |016e: move-object/from16 v16, v2 │ │ +434690: 2900 9100 |0170: goto/16 0201 // +0091 │ │ +434694: 0217 0500 |0172: move/from16 v23, v5 │ │ +434698: 0819 0a00 |0174: move-object/from16 v25, v10 │ │ +43469c: 131b 0900 |0176: const/16 v27, #int 9 // #9 │ │ +4346a0: 7401 bc5c 1600 |0178: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4346a6: 0c02 |017b: move-result-object v2 │ │ +4346a8: 1223 |017c: const/4 v3, #int 2 // #2 │ │ +4346aa: 7120 c254 3200 |017d: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +4346b0: 0c02 |0180: move-result-object v2 │ │ +4346b2: 6203 1855 |0181: sget-object v3, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ +4346b6: 1205 |0183: const/4 v5, #int 0 // #0 │ │ +4346b8: 4803 0305 |0184: aget-byte v3, v3, v5 │ │ +4346bc: 3334 1900 |0186: if-ne v4, v3, 019f // +0019 │ │ +4346c0: 6203 b65f |0188: sget-object v3, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb6 │ │ +4346c4: 6205 b55f |018a: sget-object v5, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb5 │ │ +4346c8: 6e30 28ba 5302 |018c: invoke-virtual {v3, v5, v2}, Lorg/purple/smoke/Database;.steamOidFromFileIdentity:(Lorg/purple/smoke/Cryptography;[B)I // method@ba28 │ │ +4346ce: 0a06 |018f: move-result v6 │ │ +4346d0: 12f7 |0190: const/4 v7, #int -1 // #ff │ │ +4346d2: 3776 0e00 |0191: if-le v6, v7, 019f // +000e │ │ +4346d6: d806 06ff |0193: add-int/lit8 v6, v6, #int -1 // #ff │ │ +4346da: 6e40 1cba 5367 |0195: invoke-virtual {v3, v5, v7, v6}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba1c │ │ +4346e0: 0c03 |0198: move-result-object v3 │ │ +4346e2: 3803 0600 |0199: if-eqz v3, 019f // +0006 │ │ +4346e6: 7020 12be 3000 |019b: invoke-direct {v0, v3}, Lorg/purple/smoke/SteamKeyExchange;.shareB:(Lorg/purple/smoke/SteamElement;)V // method@be12 │ │ +4346ec: 0e00 |019e: return-void │ │ +4346ee: d809 0901 |019f: add-int/lit8 v9, v9, #int 1 // #01 │ │ +4346f2: 072b |01a1: move-object v11, v2 │ │ +4346f4: 285f |01a2: goto 0201 // +005f │ │ +4346f6: 0217 0500 |01a3: move/from16 v23, v5 │ │ +4346fa: 0819 0a00 |01a5: move-object/from16 v25, v10 │ │ +4346fe: 131b 0900 |01a7: const/16 v27, #int 9 // #9 │ │ +434702: 7401 bc5c 1600 |01a9: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434708: 0c02 |01ac: move-result-object v2 │ │ +43470a: 1223 |01ad: const/4 v3, #int 2 // #2 │ │ +43470c: 7120 c254 3200 |01ae: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +434712: 0c02 |01b1: move-result-object v2 │ │ +434714: d809 0901 |01b2: add-int/lit8 v9, v9, #int 1 // #01 │ │ +434718: 072e |01b4: move-object v14, v2 │ │ +43471a: 284c |01b5: goto 0201 // +004c │ │ +43471c: 0217 0500 |01b6: move/from16 v23, v5 │ │ +434720: 0819 0a00 |01b8: move-object/from16 v25, v10 │ │ +434724: 1223 |01ba: const/4 v3, #int 2 // #2 │ │ +434726: 131b 0900 |01bb: const/16 v27, #int 9 // #9 │ │ +43472a: 7401 bc5c 1600 |01bd: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434730: 0c02 |01c0: move-result-object v2 │ │ +434732: 7120 c254 3200 |01c1: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +434738: 0c02 |01c4: move-result-object v2 │ │ +43473a: d809 0901 |01c5: add-int/lit8 v9, v9, #int 1 // #01 │ │ +43473e: 072f |01c7: move-object v15, v2 │ │ +434740: 2839 |01c8: goto 0201 // +0039 │ │ +434742: 0217 0500 |01c9: move/from16 v23, v5 │ │ +434746: 0819 0a00 |01cb: move-object/from16 v25, v10 │ │ +43474a: 1223 |01cd: const/4 v3, #int 2 // #2 │ │ +43474c: 131b 0900 |01ce: const/16 v27, #int 9 // #9 │ │ +434750: 7401 bc5c 1600 |01d0: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434756: 0c02 |01d3: move-result-object v2 │ │ +434758: 7120 c254 3200 |01d4: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +43475e: 0c02 |01d7: move-result-object v2 │ │ +434760: d809 0901 |01d8: add-int/lit8 v9, v9, #int 1 // #01 │ │ +434764: 072d |01da: move-object v13, v2 │ │ +434766: 2826 |01db: goto 0201 // +0026 │ │ +434768: 0217 0500 |01dc: move/from16 v23, v5 │ │ +43476c: 0819 0a00 |01de: move-object/from16 v25, v10 │ │ +434770: 1223 |01e0: const/4 v3, #int 2 // #2 │ │ +434772: 131b 0900 |01e1: const/16 v27, #int 9 // #9 │ │ +434776: 7401 bc5c 1600 |01e3: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +43477c: 0c02 |01e6: move-result-object v2 │ │ +43477e: 7120 c254 3200 |01e7: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +434784: 0c02 |01ea: move-result-object v2 │ │ +434786: 7110 e1bb 0200 |01eb: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayToLong:([B)J // method@bbe1 │ │ +43478c: 0b02 |01ee: move-result-wide v2 │ │ +43478e: 7100 065d 0000 |01ef: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +434794: 0b05 |01f2: move-result-wide v5 │ │ +434796: bc25 |01f3: sub-long/2addr v5, v2 │ │ +434798: 7120 735c 6500 |01f4: invoke-static {v5, v6}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ +43479e: 0b02 |01f7: move-result-wide v2 │ │ +4347a0: 1605 3075 |01f8: const-wide/16 v5, #int 30000 // #7530 │ │ +4347a4: 3107 0205 |01fa: cmp-long v7, v2, v5 │ │ +4347a8: 3d07 0300 |01fc: if-lez v7, 01ff // +0003 │ │ +4347ac: 0e00 |01fe: return-void │ │ +4347ae: d809 0901 |01ff: add-int/lit8 v9, v9, #int 1 // #01 │ │ +4347b2: d808 0801 |0201: add-int/lit8 v8, v8, #int 1 // #01 │ │ +4347b6: 0802 1e00 |0203: move-object/from16 v2, v30 │ │ +4347ba: 0205 1700 |0205: move/from16 v5, v23 │ │ +4347be: 080a 1900 |0207: move-object/from16 v10, v25 │ │ +4347c2: 1203 |0209: const/4 v3, #int 0 // #0 │ │ +4347c4: 1216 |020a: const/4 v6, #int 1 // #1 │ │ +4347c6: 2900 31fe |020b: goto/16 003c // -01cf │ │ +4347ca: 0819 0a00 |020d: move-object/from16 v25, v10 │ │ +4347ce: 6201 1855 |020f: sget-object v1, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ +4347d2: 1202 |0211: const/4 v2, #int 0 // #0 │ │ +4347d4: 4801 0102 |0212: aget-byte v1, v1, v2 │ │ +4347d8: 3314 c000 |0214: if-ne v4, v1, 02d4 // +00c0 │ │ +4347dc: 6201 b65f |0216: sget-object v1, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb6 │ │ +4347e0: 6202 b55f |0218: sget-object v2, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb5 │ │ +4347e4: 6e30 fab9 210c |021a: invoke-virtual {v1, v2, v12}, Lorg/purple/smoke/Database;.nameSipHashIdFromDigest:(Lorg/purple/smoke/Cryptography;[B)[Ljava/lang/String; // method@b9fa │ │ +4347ea: 0c03 |021d: move-result-object v3 │ │ +4347ec: 1214 |021e: const/4 v4, #int 1 // #1 │ │ +4347ee: 4605 0304 |021f: aget-object v5, v3, v4 │ │ +4347f2: 6e30 15ba 2105 |0221: invoke-virtual {v1, v2, v5}, Lorg/purple/smoke/Database;.readParticipantOptions:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba15 │ │ +4347f8: 0c05 |0224: move-result-object v5 │ │ +4347fa: 1a06 f38f |0225: const-string v6, "optional_steam = true" // string@8ff3 │ │ +4347fe: 6e20 b65c 6500 |0227: invoke-virtual {v5, v6}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +434804: 0a05 |022a: move-result v5 │ │ +434806: 3805 0300 |022b: if-eqz v5, 022e // +0003 │ │ +43480a: 0e00 |022d: return-void │ │ +43480c: 2205 281b |022e: new-instance v5, Lorg/purple/smoke/SteamElement; // type@1b28 │ │ +434810: 7010 01be 0500 |0230: invoke-direct {v5}, Lorg/purple/smoke/SteamElement;.:()V // method@be01 │ │ +434816: 4606 0304 |0233: aget-object v6, v3, v4 │ │ +43481a: 6e10 c35c 0600 |0235: invoke-virtual {v6}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +434820: 0a04 |0238: move-result v4 │ │ +434822: 3804 0800 |0239: if-eqz v4, 0241 // +0008 │ │ +434826: 1204 |023b: const/4 v4, #int 0 // #0 │ │ +434828: 4603 0304 |023c: aget-object v3, v3, v4 │ │ +43482c: 5b53 955f |023e: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ +434830: 2822 |0240: goto 0262 // +0022 │ │ +434832: 1204 |0241: const/4 v4, #int 0 // #0 │ │ +434834: 2206 f10a |0242: new-instance v6, Ljava/lang/StringBuilder; // type@0af1 │ │ +434838: 7010 ee5c 0600 |0244: invoke-direct {v6}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +43483e: 4607 0304 |0247: aget-object v7, v3, v4 │ │ +434842: 6e20 f95c 7600 |0249: invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +434848: 1a04 9800 |024c: const-string v4, " (" // string@0098 │ │ +43484c: 6e20 f95c 4600 |024e: invoke-virtual {v6, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +434852: 1214 |0251: const/4 v4, #int 1 // #1 │ │ +434854: 4603 0304 |0252: aget-object v3, v3, v4 │ │ +434858: 6e20 f95c 3600 |0254: invoke-virtual {v6, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43485e: 1a03 ec03 |0257: const-string v3, ")" // string@03ec │ │ +434862: 6e20 f95c 3600 |0259: invoke-virtual {v6, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +434868: 6e10 035d 0600 |025c: invoke-virtual {v6}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +43486e: 0c03 |025f: move-result-object v3 │ │ +434870: 5b53 955f |0260: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ +434874: 080a 1000 |0262: move-object/from16 v10, v16 │ │ +434878: 1303 2e00 |0264: const/16 v3, #int 46 // #2e │ │ +43487c: 6e20 c05c 3a00 |0266: invoke-virtual {v10, v3}, Ljava/lang/String;.indexOf:(I)I // method@5cc0 │ │ +434882: 0a03 |0269: move-result v3 │ │ +434884: 3903 2500 |026a: if-nez v3, 028f // +0025 │ │ +434888: 2203 f10a |026c: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ +43488c: 7010 ee5c 0300 |026e: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +434892: 1a04 384c |0271: const-string v4, "Smoke_" // string@4c38 │ │ +434896: 6e20 f95c 4300 |0273: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43489c: 1304 2000 |0276: const/16 v4, #int 32 // #20 │ │ +4348a0: 7110 a9b9 0400 |0278: invoke-static {v4}, Lorg/purple/smoke/Cryptography;.randomBytes:(I)[B // method@b9a9 │ │ +4348a6: 0c04 |027b: move-result-object v4 │ │ +4348a8: 7110 dfbb 0400 |027c: invoke-static {v4}, Lorg/purple/smoke/Miscellaneous;.byteArrayAsHexString:([B)Ljava/lang/String; // method@bbdf │ │ +4348ae: 0c04 |027f: move-result-object v4 │ │ +4348b0: 6e20 f95c 4300 |0280: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4348b6: 080a 1100 |0283: move-object/from16 v10, v17 │ │ +4348ba: 6e20 f95c a300 |0285: invoke-virtual {v3, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4348c0: 6e10 035d 0300 |0288: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4348c6: 0c03 |028b: move-result-object v3 │ │ +4348c8: 5b53 975f |028c: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f97 │ │ +4348cc: 2803 |028e: goto 0291 // +0003 │ │ +4348ce: 5b5a 975f |028f: iput-object v10, v5, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f97 │ │ +4348d2: 5b5d 995f |0291: iput-object v13, v5, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f99 │ │ +4348d6: 5b5e 9a5f |0293: iput-object v14, v5, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9a │ │ +4348da: 5b5b 9b5f |0295: iput-object v11, v5, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9b │ │ +4348de: 5453 975f |0297: iget-object v3, v5, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f97 │ │ +4348e2: 5b53 9c5f |0299: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_fileName:Ljava/lang/String; // field@5f9c │ │ +4348e6: 0508 1200 |029b: move-wide/from16 v8, v18 │ │ +4348ea: 5a58 9d5f |029d: iput-wide v8, v5, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ +4348ee: 1223 |029f: const/4 v3, #int 2 // #2 │ │ +4348f0: 2333 0f1c |02a0: new-array v3, v3, [[B // type@1c0f │ │ +4348f4: 7100 6bb9 0000 |02a2: invoke-static {}, Lorg/purple/smoke/Cryptography;.aes256KeyBytes:()[B // method@b96b │ │ +4348fa: 0c04 |02a5: move-result-object v4 │ │ +4348fc: 1206 |02a6: const/4 v6, #int 0 // #0 │ │ +4348fe: 4d04 0306 |02a7: aput-object v4, v3, v6 │ │ +434902: 7100 b9b9 0000 |02a9: invoke-static {}, Lorg/purple/smoke/Cryptography;.sha512KeyBytes:()[B // method@b9b9 │ │ +434908: 0c04 |02ac: move-result-object v4 │ │ +43490a: 1217 |02ad: const/4 v7, #int 1 // #1 │ │ +43490c: 4d04 0307 |02ae: aput-object v4, v3, v7 │ │ +434910: 7110 ebbb 0300 |02b0: invoke-static {v3}, Lorg/purple/smoke/Miscellaneous;.joinByteArrays:([[B)[B // method@bbeb │ │ +434916: 0c03 |02b3: move-result-object v3 │ │ +434918: 5b53 9e5f |02b4: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ +43491c: 4803 0f06 |02b6: aget-byte v3, v15, v6 │ │ +434920: 6204 b553 |02b8: sget-object v4, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ +434924: 4804 0406 |02ba: aget-byte v4, v4, v6 │ │ +434928: 3343 0500 |02bc: if-ne v3, v4, 02c1 // +0005 │ │ +43492c: 1a03 af3f |02be: const-string v3, "McEliece" // string@3faf │ │ +434930: 2803 |02c0: goto 02c3 // +0003 │ │ +434932: 1a03 6c46 |02c1: const-string v3, "RSA" // string@466c │ │ +434936: 5b53 9f5f |02c3: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5f9f │ │ +43493a: 1603 0000 |02c5: const-wide/16 v3, #int 0 // #0 │ │ +43493e: 5a53 a25f |02c7: iput-wide v3, v5, Lorg/purple/smoke/SteamElement;.m_readInterval:J // field@5fa2 │ │ +434942: 1a03 0062 |02c9: const-string v3, "created private-key pair" // string@6200 │ │ +434946: 5b53 a55f |02cb: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa5 │ │ +43494a: 6e30 3bba 2105 |02cd: invoke-virtual {v1, v2, v5}, Lorg/purple/smoke/Database;.writeSteam:(Lorg/purple/smoke/Cryptography;Lorg/purple/smoke/SteamElement;)V // method@ba3b │ │ +434950: 7020 12be 5000 |02d0: invoke-direct {v0, v5}, Lorg/purple/smoke/SteamKeyExchange;.shareB:(Lorg/purple/smoke/SteamElement;)V // method@be12 │ │ +434956: 2832 |02d3: goto 0305 // +0032 │ │ +434958: 6201 b65f |02d4: sget-object v1, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb6 │ │ +43495c: 6202 b55f |02d6: sget-object v2, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb5 │ │ +434960: 6e30 28ba 210b |02d8: invoke-virtual {v1, v2, v11}, Lorg/purple/smoke/Database;.steamOidFromFileIdentity:(Lorg/purple/smoke/Cryptography;[B)I // method@ba28 │ │ +434966: 0a03 |02db: move-result v3 │ │ +434968: d804 03ff |02dc: add-int/lit8 v4, v3, #int -1 // #ff │ │ +43496c: 12f5 |02de: const/4 v5, #int -1 // #ff │ │ +43496e: 6e40 1cba 2145 |02df: invoke-virtual {v1, v2, v5, v4}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba1c │ │ +434974: 0c04 |02e2: move-result-object v4 │ │ +434976: 3904 0300 |02e3: if-nez v4, 02e6 // +0003 │ │ +43497a: 0e00 |02e5: return-void │ │ +43497c: 5444 985f |02e6: iget-object v4, v4, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f98 │ │ +434980: 7110 a3b9 0400 |02e8: invoke-static {v4}, Lorg/purple/smoke/Cryptography;.privateKeyFromBytes:([B)Ljava/security/PrivateKey; // method@b9a3 │ │ +434986: 0c04 |02eb: move-result-object v4 │ │ +434988: 3904 0300 |02ec: if-nez v4, 02ef // +0003 │ │ +43498c: 0e00 |02ee: return-void │ │ +43498e: 7120 9db9 d400 |02ef: invoke-static {v4, v13}, Lorg/purple/smoke/Cryptography;.pkiDecrypt:(Ljava/security/PrivateKey;[B)[B // method@b99d │ │ +434994: 0c08 |02f2: move-result-object v8 │ │ +434996: 3908 0300 |02f3: if-nez v8, 02f6 // +0003 │ │ +43499a: 0e00 |02f5: return-void │ │ +43499c: 1209 |02f6: const/4 v9, #int 0 // #0 │ │ +43499e: 120a |02f7: const/4 v10, #int 0 // #0 │ │ +4349a0: 0716 |02f8: move-object v6, v1 │ │ +4349a2: 0727 |02f9: move-object v7, v2 │ │ +4349a4: 013b |02fa: move v11, v3 │ │ +4349a6: 7406 3eba 0600 |02fb: invoke-virtual/range {v6, v7, v8, v9, v10, v11}, Lorg/purple/smoke/Database;.writeSteamKeys:(Lorg/purple/smoke/Cryptography;[B[B[BI)Z // method@ba3e │ │ +4349ac: 1a04 7996 |02fe: const-string v4, "received private-key pair" // string@9679 │ │ +4349b0: 0805 1900 |0300: move-object/from16 v5, v25 │ │ +4349b4: 6e53 41ba 2154 |0302: invoke-virtual {v1, v2, v4, v5, v3}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;I)V // method@ba41 │ │ +4349ba: 0e00 |0305: return-void │ │ +4349bc: 0001 0900 0000 0000 9b01 0000 8801 ... |0306: packed-switch-data (22 units) │ │ catches : (none) │ │ positions : │ │ 0x0008 line=114 │ │ 0x0013 line=120 │ │ 0x0015 line=122 │ │ 0x001b line=124 │ │ 0x0026 line=126 │ │ @@ -749295,53 +749294,53 @@ │ │ type : '([B[B)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 68 16-bit code units │ │ -434224: |[434224] org.purple.smoke.SteamKeyExchange.append:([B[B)V │ │ -434234: 3803 4300 |0000: if-eqz v3, 0043 // +0043 │ │ -434238: 2130 |0002: array-length v0, v3 │ │ -43423a: 3800 4000 |0003: if-eqz v0, 0043 // +0040 │ │ -43423e: 3804 3e00 |0005: if-eqz v4, 0043 // +003e │ │ -434242: 2140 |0007: array-length v0, v4 │ │ -434244: 3900 0300 |0008: if-nez v0, 000b // +0003 │ │ -434248: 2839 |000a: goto 0043 // +0039 │ │ -43424a: 5420 b15f |000b: iget-object v0, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb1 │ │ -43424e: 6e10 ed60 0000 |000d: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -434254: 0c00 |0010: move-result-object v0 │ │ -434256: 6e10 e960 0000 |0011: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ -43425c: 5420 b05f |0014: iget-object v0, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairs:Ljava/util/ArrayList; // field@5fb0 │ │ -434260: 2201 2b1b |0016: new-instance v1, Lorg/purple/smoke/SteamKeyExchange$Pair; // type@1b2b │ │ -434264: 7030 07be 3104 |0018: invoke-direct {v1, v3, v4}, Lorg/purple/smoke/SteamKeyExchange$Pair;.:([B[B)V // method@be07 │ │ -43426a: 6e20 9d5f 1000 |001b: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9d │ │ -434270: 5423 b15f |001e: iget-object v3, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb1 │ │ -434274: 6e10 ed60 0300 |0020: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -43427a: 0c03 |0023: move-result-object v3 │ │ -43427c: 6e10 ea60 0300 |0024: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -434282: 280f |0027: goto 0036 // +000f │ │ -434284: 0d03 |0028: move-exception v3 │ │ -434286: 5424 b15f |0029: iget-object v4, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb1 │ │ -43428a: 6e10 ed60 0400 |002b: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ -434290: 0c04 |002e: move-result-object v4 │ │ -434292: 6e10 ea60 0400 |002f: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ -434298: 2703 |0032: throw v3 │ │ -43429a: 5423 b15f |0033: iget-object v3, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb1 │ │ -43429e: 28eb |0035: goto 0020 // -0015 │ │ -4342a0: 5423 b35f |0036: iget-object v3, v2, Lorg/purple/smoke/SteamKeyExchange;.m_parseSchedulerMutex:Ljava/lang/Object; // field@5fb3 │ │ -4342a4: 1d03 |0038: monitor-enter v3 │ │ -4342a6: 5424 b35f |0039: iget-object v4, v2, Lorg/purple/smoke/SteamKeyExchange;.m_parseSchedulerMutex:Ljava/lang/Object; // field@5fb3 │ │ -4342aa: 6e10 945c 0400 |003b: invoke-virtual {v4}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ -4342b0: 1e03 |003e: monitor-exit v3 │ │ -4342b2: 2804 |003f: goto 0043 // +0004 │ │ -4342b4: 0d04 |0040: move-exception v4 │ │ -4342b6: 1e03 |0041: monitor-exit v3 │ │ -4342b8: 2704 |0042: throw v4 │ │ -4342ba: 0e00 |0043: return-void │ │ +434220: |[434220] org.purple.smoke.SteamKeyExchange.append:([B[B)V │ │ +434230: 3803 4300 |0000: if-eqz v3, 0043 // +0043 │ │ +434234: 2130 |0002: array-length v0, v3 │ │ +434236: 3800 4000 |0003: if-eqz v0, 0043 // +0040 │ │ +43423a: 3804 3e00 |0005: if-eqz v4, 0043 // +003e │ │ +43423e: 2140 |0007: array-length v0, v4 │ │ +434240: 3900 0300 |0008: if-nez v0, 000b // +0003 │ │ +434244: 2839 |000a: goto 0043 // +0039 │ │ +434246: 5420 b15f |000b: iget-object v0, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb1 │ │ +43424a: 6e10 ed60 0000 |000d: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +434250: 0c00 |0010: move-result-object v0 │ │ +434252: 6e10 e960 0000 |0011: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60e9 │ │ +434258: 5420 b05f |0014: iget-object v0, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairs:Ljava/util/ArrayList; // field@5fb0 │ │ +43425c: 2201 2b1b |0016: new-instance v1, Lorg/purple/smoke/SteamKeyExchange$Pair; // type@1b2b │ │ +434260: 7030 07be 3104 |0018: invoke-direct {v1, v3, v4}, Lorg/purple/smoke/SteamKeyExchange$Pair;.:([B[B)V // method@be07 │ │ +434266: 6e20 9d5f 1000 |001b: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9d │ │ +43426c: 5423 b15f |001e: iget-object v3, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb1 │ │ +434270: 6e10 ed60 0300 |0020: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +434276: 0c03 |0023: move-result-object v3 │ │ +434278: 6e10 ea60 0300 |0024: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +43427e: 280f |0027: goto 0036 // +000f │ │ +434280: 0d03 |0028: move-exception v3 │ │ +434282: 5424 b15f |0029: iget-object v4, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb1 │ │ +434286: 6e10 ed60 0400 |002b: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ed │ │ +43428c: 0c04 |002e: move-result-object v4 │ │ +43428e: 6e10 ea60 0400 |002f: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ea │ │ +434294: 2703 |0032: throw v3 │ │ +434296: 5423 b15f |0033: iget-object v3, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb1 │ │ +43429a: 28eb |0035: goto 0020 // -0015 │ │ +43429c: 5423 b35f |0036: iget-object v3, v2, Lorg/purple/smoke/SteamKeyExchange;.m_parseSchedulerMutex:Ljava/lang/Object; // field@5fb3 │ │ +4342a0: 1d03 |0038: monitor-enter v3 │ │ +4342a2: 5424 b35f |0039: iget-object v4, v2, Lorg/purple/smoke/SteamKeyExchange;.m_parseSchedulerMutex:Ljava/lang/Object; // field@5fb3 │ │ +4342a6: 6e10 945c 0400 |003b: invoke-virtual {v4}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ +4342ac: 1e03 |003e: monitor-exit v3 │ │ +4342ae: 2804 |003f: goto 0043 // +0004 │ │ +4342b0: 0d04 |0040: move-exception v4 │ │ +4342b2: 1e03 |0041: monitor-exit v3 │ │ +4342b4: 2704 |0042: throw v4 │ │ +4342b6: 0e00 |0043: return-void │ │ catches : 5 │ │ 0x000b - 0x0014 │ │ Ljava/lang/Exception; -> 0x0043 │ │ 0x0014 - 0x001e │ │ Ljava/lang/Exception; -> 0x0033 │ │ -> 0x0028 │ │ 0x001e - 0x0039 │ │ @@ -749443,22 +749442,22 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 13 16-bit code units │ │ -435d5c: |[435d5c] org.purple.smoke.SteamReader.:()V │ │ -435d6c: 7100 8db9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ -435d72: 0c00 |0003: move-result-object v0 │ │ -435d74: 6900 c25f |0004: sput-object v0, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ -435d78: 7100 efb9 0000 |0006: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9ef │ │ -435d7e: 0c00 |0009: move-result-object v0 │ │ -435d80: 6900 c35f |000a: sput-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ -435d84: 0e00 |000c: return-void │ │ +435d58: |[435d58] org.purple.smoke.SteamReader.:()V │ │ +435d68: 7100 8db9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ +435d6e: 0c00 |0003: move-result-object v0 │ │ +435d70: 6900 c25f |0004: sput-object v0, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ +435d74: 7100 efb9 0000 |0006: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9ef │ │ +435d7a: 0c00 |0009: move-result-object v0 │ │ +435d7c: 6900 c35f |000a: sput-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ +435d80: 0e00 |000c: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=53 │ │ 0x0006 line=54 │ │ locals : │ │ │ │ #1 : (in Lorg/purple/smoke/SteamReader;) │ │ @@ -749466,106 +749465,106 @@ │ │ type : '(Ljava/lang/String;IJ)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 12 │ │ ins : 5 │ │ outs : 4 │ │ insns size : 183 16-bit code units │ │ -435d88: |[435d88] org.purple.smoke.SteamReader.:(Ljava/lang/String;IJ)V │ │ -435d98: 7010 8f5c 0700 |0000: invoke-direct {v7}, Ljava/lang/Object;.:()V // method@5c8f │ │ -435d9e: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -435da0: 5b70 b85f |0004: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb8 │ │ -435da4: 5b70 b95f |0006: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fb9 │ │ -435da8: 5b70 ba5f |0008: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fba │ │ -435dac: 5b70 bd5f |000a: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fbd │ │ -435db0: 5b70 be5f |000c: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbe │ │ -435db4: 5b70 bf5f |000e: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbf │ │ -435db8: 5b70 c15f |0010: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fc1 │ │ -435dbc: 5b70 bb5f |0012: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ -435dc0: 5b70 c05f |0014: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc0 │ │ -435dc4: 2201 e60a |0016: new-instance v1, Ljava/lang/Object; // type@0ae6 │ │ -435dc8: 7010 8f5c 0100 |0018: invoke-direct {v1}, Ljava/lang/Object;.:()V // method@5c8f │ │ -435dce: 5b71 bc5f |001b: iput-object v1, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbc │ │ -435dd2: 1301 2e00 |001d: const/16 v1, #int 46 // #2e │ │ -435dd6: 1602 0000 |001f: const-wide/16 v2, #int 0 // #0 │ │ -435dda: 1204 |0021: const/4 v4, #int 0 // #0 │ │ -435ddc: 6e20 c45c 1800 |0022: invoke-virtual {v8, v1}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ -435de2: 0a05 |0025: move-result v5 │ │ -435de4: 3d05 2d00 |0026: if-lez v5, 0053 // +002d │ │ -435de8: 1a05 8a60 |0028: const-string v5, "content://" // string@608a │ │ -435dec: 6e20 ca5c 5800 |002a: invoke-virtual {v8, v5}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ -435df2: 0a05 |002d: move-result v5 │ │ -435df4: 3805 2500 |002e: if-eqz v5, 0053 // +0025 │ │ -435df8: 6e20 c45c 1800 |0030: invoke-virtual {v8, v1}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ -435dfe: 0a01 |0033: move-result v1 │ │ -435e00: 6e30 cd5c 4801 |0034: invoke-virtual {v8, v4, v1}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ -435e06: 0c08 |0037: move-result-object v8 │ │ -435e08: 7110 ac04 0800 |0038: invoke-static {v8}, Landroid/net/Uri;.parse:(Ljava/lang/String;)Landroid/net/Uri; // method@04ac │ │ -435e0e: 0c08 |003b: move-result-object v8 │ │ -435e10: 7100 26bd 0000 |003c: invoke-static {}, Lorg/purple/smoke/Smoke;.getApplication:()Lorg/purple/smoke/Smoke; // method@bd26 │ │ -435e16: 0c01 |003f: move-result-object v1 │ │ -435e18: 6e10 27bd 0100 |0040: invoke-virtual {v1}, Lorg/purple/smoke/Smoke;.getContentResolver:()Landroid/content/ContentResolver; // method@bd27 │ │ -435e1e: 0c01 |0043: move-result-object v1 │ │ -435e20: 1a05 fc95 |0044: const-string v5, "r" // string@95fc │ │ -435e24: 6e30 5801 8105 |0046: invoke-virtual {v1, v8, v5}, Landroid/content/ContentResolver;.openAssetFileDescriptor:(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor; // method@0158 │ │ -435e2a: 0c08 |0049: move-result-object v8 │ │ -435e2c: 5b78 b85f |004a: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb8 │ │ -435e30: 6e10 f101 0800 |004c: invoke-virtual {v8}, Landroid/content/res/AssetFileDescriptor;.createInputStream:()Ljava/io/FileInputStream; // method@01f1 │ │ -435e36: 0c08 |004f: move-result-object v8 │ │ -435e38: 5b78 bb5f |0050: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ -435e3c: 2808 |0052: goto 005a // +0008 │ │ -435e3e: 2201 ac0a |0053: new-instance v1, Ljava/io/FileInputStream; // type@0aac │ │ -435e42: 7020 a55b 8100 |0055: invoke-direct {v1, v8}, Ljava/io/FileInputStream;.:(Ljava/lang/String;)V // method@5ba5 │ │ -435e48: 5b71 bb5f |0058: iput-object v1, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ -435e4c: 5478 bb5f |005a: iget-object v8, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ -435e50: 6e10 a85b 0800 |005c: invoke-virtual {v8}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ -435e56: 0c08 |005f: move-result-object v8 │ │ -435e58: 7140 7f5c 32ba |0060: invoke-static {v2, v3, v10, v11}, Ljava/lang/Math;.max:(JJ)J // method@5c7f │ │ -435e5e: 0b05 |0063: move-result-wide v5 │ │ -435e60: 6e30 cb5d 5806 |0064: invoke-virtual {v8, v5, v6}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcb │ │ -435e66: 281d |0067: goto 0084 // +001d │ │ -435e68: 5478 b85f |0068: iget-object v8, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb8 │ │ -435e6c: 3808 0a00 |006a: if-eqz v8, 0074 // +000a │ │ -435e70: 6e10 f001 0800 |006c: invoke-virtual {v8}, Landroid/content/res/AssetFileDescriptor;.close:()V // method@01f0 │ │ -435e76: 2805 |006f: goto 0074 // +0005 │ │ -435e78: 0d08 |0070: move-exception v8 │ │ -435e7a: 5b70 b85f |0071: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb8 │ │ -435e7e: 2708 |0073: throw v8 │ │ -435e80: 5b70 b85f |0074: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb8 │ │ -435e84: 5478 bb5f |0076: iget-object v8, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ -435e88: 3808 0a00 |0078: if-eqz v8, 0082 // +000a │ │ -435e8c: 6e10 a75b 0800 |007a: invoke-virtual {v8}, Ljava/io/FileInputStream;.close:()V // method@5ba7 │ │ -435e92: 2805 |007d: goto 0082 // +0005 │ │ -435e94: 0d08 |007e: move-exception v8 │ │ -435e96: 5b70 bb5f |007f: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ -435e9a: 2708 |0081: throw v8 │ │ -435e9c: 5b70 bb5f |0082: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ -435ea0: 2208 e40b |0084: new-instance v8, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ -435ea4: 7020 d660 4800 |0086: invoke-direct {v8, v4}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d6 │ │ -435eaa: 5b78 b95f |0089: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fb9 │ │ -435eae: 2208 e40b |008b: new-instance v8, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ -435eb2: 7020 d660 4800 |008d: invoke-direct {v8, v4}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d6 │ │ -435eb8: 5b78 ba5f |0090: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fba │ │ -435ebc: 2208 e50b |0092: new-instance v8, Ljava/util/concurrent/atomic/AtomicInteger; // type@0be5 │ │ -435ec0: 7020 db60 9800 |0094: invoke-direct {v8, v9}, Ljava/util/concurrent/atomic/AtomicInteger;.:(I)V // method@60db │ │ -435ec6: 5b78 bd5f |0097: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fbd │ │ -435eca: 2208 e60b |0099: new-instance v8, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ -435ece: 7030 df60 2803 |009b: invoke-direct {v8, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60df │ │ -435ed4: 5b78 be5f |009e: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbe │ │ -435ed8: 2208 e60b |00a0: new-instance v8, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ -435edc: 7140 7f5c 32ba |00a2: invoke-static {v2, v3, v10, v11}, Ljava/lang/Math;.max:(JJ)J // method@5c7f │ │ -435ee2: 0b09 |00a5: move-result-wide v9 │ │ -435ee4: 7030 df60 980a |00a6: invoke-direct {v8, v9, v10}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60df │ │ -435eea: 5b78 bf5f |00a9: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbf │ │ -435eee: 2208 e60b |00ab: new-instance v8, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ -435ef2: 7100 065d 0000 |00ad: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -435ef8: 0b09 |00b0: move-result-wide v9 │ │ -435efa: 7030 df60 980a |00b1: invoke-direct {v8, v9, v10}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60df │ │ -435f00: 5b78 c15f |00b4: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fc1 │ │ -435f04: 0e00 |00b6: return-void │ │ +435d84: |[435d84] org.purple.smoke.SteamReader.:(Ljava/lang/String;IJ)V │ │ +435d94: 7010 8f5c 0700 |0000: invoke-direct {v7}, Ljava/lang/Object;.:()V // method@5c8f │ │ +435d9a: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +435d9c: 5b70 b85f |0004: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb8 │ │ +435da0: 5b70 b95f |0006: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fb9 │ │ +435da4: 5b70 ba5f |0008: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fba │ │ +435da8: 5b70 bd5f |000a: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fbd │ │ +435dac: 5b70 be5f |000c: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbe │ │ +435db0: 5b70 bf5f |000e: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbf │ │ +435db4: 5b70 c15f |0010: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fc1 │ │ +435db8: 5b70 bb5f |0012: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ +435dbc: 5b70 c05f |0014: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc0 │ │ +435dc0: 2201 e60a |0016: new-instance v1, Ljava/lang/Object; // type@0ae6 │ │ +435dc4: 7010 8f5c 0100 |0018: invoke-direct {v1}, Ljava/lang/Object;.:()V // method@5c8f │ │ +435dca: 5b71 bc5f |001b: iput-object v1, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbc │ │ +435dce: 1301 2e00 |001d: const/16 v1, #int 46 // #2e │ │ +435dd2: 1602 0000 |001f: const-wide/16 v2, #int 0 // #0 │ │ +435dd6: 1204 |0021: const/4 v4, #int 0 // #0 │ │ +435dd8: 6e20 c45c 1800 |0022: invoke-virtual {v8, v1}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ +435dde: 0a05 |0025: move-result v5 │ │ +435de0: 3d05 2d00 |0026: if-lez v5, 0053 // +002d │ │ +435de4: 1a05 8a60 |0028: const-string v5, "content://" // string@608a │ │ +435de8: 6e20 ca5c 5800 |002a: invoke-virtual {v8, v5}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ +435dee: 0a05 |002d: move-result v5 │ │ +435df0: 3805 2500 |002e: if-eqz v5, 0053 // +0025 │ │ +435df4: 6e20 c45c 1800 |0030: invoke-virtual {v8, v1}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ +435dfa: 0a01 |0033: move-result v1 │ │ +435dfc: 6e30 cd5c 4801 |0034: invoke-virtual {v8, v4, v1}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ +435e02: 0c08 |0037: move-result-object v8 │ │ +435e04: 7110 ac04 0800 |0038: invoke-static {v8}, Landroid/net/Uri;.parse:(Ljava/lang/String;)Landroid/net/Uri; // method@04ac │ │ +435e0a: 0c08 |003b: move-result-object v8 │ │ +435e0c: 7100 26bd 0000 |003c: invoke-static {}, Lorg/purple/smoke/Smoke;.getApplication:()Lorg/purple/smoke/Smoke; // method@bd26 │ │ +435e12: 0c01 |003f: move-result-object v1 │ │ +435e14: 6e10 27bd 0100 |0040: invoke-virtual {v1}, Lorg/purple/smoke/Smoke;.getContentResolver:()Landroid/content/ContentResolver; // method@bd27 │ │ +435e1a: 0c01 |0043: move-result-object v1 │ │ +435e1c: 1a05 fc95 |0044: const-string v5, "r" // string@95fc │ │ +435e20: 6e30 5801 8105 |0046: invoke-virtual {v1, v8, v5}, Landroid/content/ContentResolver;.openAssetFileDescriptor:(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor; // method@0158 │ │ +435e26: 0c08 |0049: move-result-object v8 │ │ +435e28: 5b78 b85f |004a: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb8 │ │ +435e2c: 6e10 f101 0800 |004c: invoke-virtual {v8}, Landroid/content/res/AssetFileDescriptor;.createInputStream:()Ljava/io/FileInputStream; // method@01f1 │ │ +435e32: 0c08 |004f: move-result-object v8 │ │ +435e34: 5b78 bb5f |0050: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ +435e38: 2808 |0052: goto 005a // +0008 │ │ +435e3a: 2201 ac0a |0053: new-instance v1, Ljava/io/FileInputStream; // type@0aac │ │ +435e3e: 7020 a55b 8100 |0055: invoke-direct {v1, v8}, Ljava/io/FileInputStream;.:(Ljava/lang/String;)V // method@5ba5 │ │ +435e44: 5b71 bb5f |0058: iput-object v1, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ +435e48: 5478 bb5f |005a: iget-object v8, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ +435e4c: 6e10 a85b 0800 |005c: invoke-virtual {v8}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ +435e52: 0c08 |005f: move-result-object v8 │ │ +435e54: 7140 7f5c 32ba |0060: invoke-static {v2, v3, v10, v11}, Ljava/lang/Math;.max:(JJ)J // method@5c7f │ │ +435e5a: 0b05 |0063: move-result-wide v5 │ │ +435e5c: 6e30 cb5d 5806 |0064: invoke-virtual {v8, v5, v6}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcb │ │ +435e62: 281d |0067: goto 0084 // +001d │ │ +435e64: 5478 b85f |0068: iget-object v8, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb8 │ │ +435e68: 3808 0a00 |006a: if-eqz v8, 0074 // +000a │ │ +435e6c: 6e10 f001 0800 |006c: invoke-virtual {v8}, Landroid/content/res/AssetFileDescriptor;.close:()V // method@01f0 │ │ +435e72: 2805 |006f: goto 0074 // +0005 │ │ +435e74: 0d08 |0070: move-exception v8 │ │ +435e76: 5b70 b85f |0071: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb8 │ │ +435e7a: 2708 |0073: throw v8 │ │ +435e7c: 5b70 b85f |0074: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb8 │ │ +435e80: 5478 bb5f |0076: iget-object v8, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ +435e84: 3808 0a00 |0078: if-eqz v8, 0082 // +000a │ │ +435e88: 6e10 a75b 0800 |007a: invoke-virtual {v8}, Ljava/io/FileInputStream;.close:()V // method@5ba7 │ │ +435e8e: 2805 |007d: goto 0082 // +0005 │ │ +435e90: 0d08 |007e: move-exception v8 │ │ +435e92: 5b70 bb5f |007f: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ +435e96: 2708 |0081: throw v8 │ │ +435e98: 5b70 bb5f |0082: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ +435e9c: 2208 e40b |0084: new-instance v8, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ +435ea0: 7020 d660 4800 |0086: invoke-direct {v8, v4}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d6 │ │ +435ea6: 5b78 b95f |0089: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fb9 │ │ +435eaa: 2208 e40b |008b: new-instance v8, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ +435eae: 7020 d660 4800 |008d: invoke-direct {v8, v4}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d6 │ │ +435eb4: 5b78 ba5f |0090: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fba │ │ +435eb8: 2208 e50b |0092: new-instance v8, Ljava/util/concurrent/atomic/AtomicInteger; // type@0be5 │ │ +435ebc: 7020 db60 9800 |0094: invoke-direct {v8, v9}, Ljava/util/concurrent/atomic/AtomicInteger;.:(I)V // method@60db │ │ +435ec2: 5b78 bd5f |0097: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fbd │ │ +435ec6: 2208 e60b |0099: new-instance v8, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ +435eca: 7030 df60 2803 |009b: invoke-direct {v8, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60df │ │ +435ed0: 5b78 be5f |009e: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbe │ │ +435ed4: 2208 e60b |00a0: new-instance v8, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ +435ed8: 7140 7f5c 32ba |00a2: invoke-static {v2, v3, v10, v11}, Ljava/lang/Math;.max:(JJ)J // method@5c7f │ │ +435ede: 0b09 |00a5: move-result-wide v9 │ │ +435ee0: 7030 df60 980a |00a6: invoke-direct {v8, v9, v10}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60df │ │ +435ee6: 5b78 bf5f |00a9: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbf │ │ +435eea: 2208 e60b |00ab: new-instance v8, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ +435eee: 7100 065d 0000 |00ad: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +435ef4: 0b09 |00b0: move-result-wide v9 │ │ +435ef6: 7030 df60 980a |00b1: invoke-direct {v8, v9, v10}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60df │ │ +435efc: 5b78 c15f |00b4: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fc1 │ │ +435f00: 0e00 |00b6: return-void │ │ catches : 3 │ │ 0x0022 - 0x0067 │ │ Ljava/lang/Exception; -> 0x0068 │ │ 0x0068 - 0x006f │ │ Ljava/lang/Exception; -> 0x0074 │ │ -> 0x0070 │ │ 0x0076 - 0x007d │ │ @@ -749620,33 +749619,33 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 33 16-bit code units │ │ -435f30: |[435f30] org.purple.smoke.SteamReader.cancelReader:()V │ │ -435f40: 5450 c05f |0000: iget-object v0, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc0 │ │ -435f44: 3800 1e00 |0002: if-eqz v0, 0020 // +001e │ │ -435f48: 7210 cf60 0000 |0004: invoke-interface {v0}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60cf │ │ -435f4e: 1200 |0007: const/4 v0, #int 0 // #0 │ │ -435f50: 5451 c05f |0008: iget-object v1, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc0 │ │ -435f54: 1602 0500 |000a: const-wide/16 v2, #int 5 // #5 │ │ -435f58: 6204 f22c |000c: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ -435f5c: 7240 cc60 2143 |000e: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60cc │ │ -435f62: 0a01 |0011: move-result v1 │ │ -435f64: 3901 0c00 |0012: if-nez v1, 001e // +000c │ │ -435f68: 5451 c05f |0014: iget-object v1, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc0 │ │ -435f6c: 7210 d060 0100 |0016: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d0 │ │ -435f72: 2805 |0019: goto 001e // +0005 │ │ -435f74: 0d01 |001a: move-exception v1 │ │ -435f76: 5b50 c05f |001b: iput-object v0, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc0 │ │ -435f7a: 2701 |001d: throw v1 │ │ -435f7c: 5b50 c05f |001e: iput-object v0, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc0 │ │ -435f80: 0e00 |0020: return-void │ │ +435f2c: |[435f2c] org.purple.smoke.SteamReader.cancelReader:()V │ │ +435f3c: 5450 c05f |0000: iget-object v0, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc0 │ │ +435f40: 3800 1e00 |0002: if-eqz v0, 0020 // +001e │ │ +435f44: 7210 cf60 0000 |0004: invoke-interface {v0}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60cf │ │ +435f4a: 1200 |0007: const/4 v0, #int 0 // #0 │ │ +435f4c: 5451 c05f |0008: iget-object v1, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc0 │ │ +435f50: 1602 0500 |000a: const-wide/16 v2, #int 5 // #5 │ │ +435f54: 6204 f22c |000c: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ +435f58: 7240 cc60 2143 |000e: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60cc │ │ +435f5e: 0a01 |0011: move-result v1 │ │ +435f60: 3901 0c00 |0012: if-nez v1, 001e // +000c │ │ +435f64: 5451 c05f |0014: iget-object v1, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc0 │ │ +435f68: 7210 d060 0100 |0016: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d0 │ │ +435f6e: 2805 |0019: goto 001e // +0005 │ │ +435f70: 0d01 |001a: move-exception v1 │ │ +435f72: 5b50 c05f |001b: iput-object v0, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc0 │ │ +435f76: 2701 |001d: throw v1 │ │ +435f78: 5b50 c05f |001e: iput-object v0, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc0 │ │ +435f7c: 0e00 |0020: return-void │ │ catches : 2 │ │ 0x0004 - 0x0007 │ │ Ljava/lang/Exception; -> 0x0007 │ │ 0x0008 - 0x0019 │ │ Ljava/lang/Exception; -> 0x001e │ │ -> 0x001a │ │ positions : │ │ @@ -749666,19 +749665,19 @@ │ │ type : '()Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -435ccc: |[435ccc] org.purple.smoke.SteamReader.completed:()Z │ │ -435cdc: 5410 ba5f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamReader;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fba │ │ -435ce0: 6e10 d860 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -435ce6: 0a00 |0005: move-result v0 │ │ -435ce8: 0f00 |0006: return v0 │ │ +435cc8: |[435cc8] org.purple.smoke.SteamReader.completed:()Z │ │ +435cd8: 5410 ba5f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamReader;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fba │ │ +435cdc: 6e10 d860 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +435ce2: 0a00 |0005: move-result v0 │ │ +435ce4: 0f00 |0006: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=159 │ │ locals : │ │ 0x0000 - 0x0007 reg=1 this Lorg/purple/smoke/SteamReader; │ │ │ │ #2 : (in Lorg/purple/smoke/SteamReader;) │ │ @@ -749686,70 +749685,70 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 87 16-bit code units │ │ -435fa0: |[435fa0] org.purple.smoke.SteamReader.delete:()V │ │ -435fb0: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -435fb2: 5431 b85f |0001: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb8 │ │ -435fb6: 3801 0a00 |0003: if-eqz v1, 000d // +000a │ │ -435fba: 6e10 f001 0100 |0005: invoke-virtual {v1}, Landroid/content/res/AssetFileDescriptor;.close:()V // method@01f0 │ │ -435fc0: 2805 |0008: goto 000d // +0005 │ │ -435fc2: 0d01 |0009: move-exception v1 │ │ -435fc4: 5b30 b85f |000a: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb8 │ │ -435fc8: 2701 |000c: throw v1 │ │ -435fca: 5b30 b85f |000d: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb8 │ │ -435fce: 5431 b95f |000f: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fb9 │ │ -435fd2: 1212 |0011: const/4 v2, #int 1 // #1 │ │ -435fd4: 6e20 da60 2100 |0012: invoke-virtual {v1, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -435fda: 5431 ba5f |0015: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fba │ │ -435fde: 1202 |0017: const/4 v2, #int 0 // #0 │ │ -435fe0: 6e20 da60 2100 |0018: invoke-virtual {v1, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -435fe6: 5431 bc5f |001b: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbc │ │ -435fea: 1d01 |001d: monitor-enter v1 │ │ -435fec: 5432 bb5f |001e: iget-object v2, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ -435ff0: 3802 0500 |0020: if-eqz v2, 0025 // +0005 │ │ -435ff4: 6e10 a75b 0200 |0022: invoke-virtual {v2}, Ljava/io/FileInputStream;.close:()V // method@5ba7 │ │ -435ffa: 1e01 |0025: monitor-exit v1 │ │ -435ffc: 5432 bc5f |0026: iget-object v2, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbc │ │ -436000: 1d02 |0028: monitor-enter v2 │ │ -436002: 5b30 bb5f |0029: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ -436006: 1e02 |002b: monitor-exit v2 │ │ -436008: 2818 |002c: goto 0044 // +0018 │ │ -43600a: 0d00 |002d: move-exception v0 │ │ -43600c: 1e02 |002e: monitor-exit v2 │ │ -43600e: 2700 |002f: throw v0 │ │ -436010: 0d02 |0030: move-exception v2 │ │ -436012: 1e01 |0031: monitor-exit v1 │ │ -436014: 2702 |0032: throw v2 │ │ -436016: 0d01 |0033: move-exception v1 │ │ -436018: 5432 bc5f |0034: iget-object v2, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbc │ │ -43601c: 1d02 |0036: monitor-enter v2 │ │ -43601e: 5b30 bb5f |0037: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ -436022: 1e02 |0039: monitor-exit v2 │ │ -436024: 2701 |003a: throw v1 │ │ -436026: 0d00 |003b: move-exception v0 │ │ -436028: 1e02 |003c: monitor-exit v2 │ │ -43602a: 2700 |003d: throw v0 │ │ -43602c: 5431 bc5f |003e: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbc │ │ -436030: 1d01 |0040: monitor-enter v1 │ │ -436032: 5b30 bb5f |0041: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ -436036: 1e01 |0043: monitor-exit v1 │ │ -436038: 5430 be5f |0044: iget-object v0, v3, Lorg/purple/smoke/SteamReader;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbe │ │ -43603c: 1601 0000 |0046: const-wide/16 v1, #int 0 // #0 │ │ -436040: 6e30 e360 1002 |0048: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -436046: 5430 bf5f |004b: iget-object v0, v3, Lorg/purple/smoke/SteamReader;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbf │ │ -43604a: 6e30 e360 1002 |004d: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -436050: 6e10 16be 0300 |0050: invoke-virtual {v3}, Lorg/purple/smoke/SteamReader;.cancelReader:()V // method@be16 │ │ -436056: 0e00 |0053: return-void │ │ -436058: 0d00 |0054: move-exception v0 │ │ -43605a: 1e01 |0055: monitor-exit v1 │ │ -43605c: 2700 |0056: throw v0 │ │ +435f9c: |[435f9c] org.purple.smoke.SteamReader.delete:()V │ │ +435fac: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +435fae: 5431 b85f |0001: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb8 │ │ +435fb2: 3801 0a00 |0003: if-eqz v1, 000d // +000a │ │ +435fb6: 6e10 f001 0100 |0005: invoke-virtual {v1}, Landroid/content/res/AssetFileDescriptor;.close:()V // method@01f0 │ │ +435fbc: 2805 |0008: goto 000d // +0005 │ │ +435fbe: 0d01 |0009: move-exception v1 │ │ +435fc0: 5b30 b85f |000a: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb8 │ │ +435fc4: 2701 |000c: throw v1 │ │ +435fc6: 5b30 b85f |000d: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb8 │ │ +435fca: 5431 b95f |000f: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fb9 │ │ +435fce: 1212 |0011: const/4 v2, #int 1 // #1 │ │ +435fd0: 6e20 da60 2100 |0012: invoke-virtual {v1, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +435fd6: 5431 ba5f |0015: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fba │ │ +435fda: 1202 |0017: const/4 v2, #int 0 // #0 │ │ +435fdc: 6e20 da60 2100 |0018: invoke-virtual {v1, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +435fe2: 5431 bc5f |001b: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbc │ │ +435fe6: 1d01 |001d: monitor-enter v1 │ │ +435fe8: 5432 bb5f |001e: iget-object v2, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ +435fec: 3802 0500 |0020: if-eqz v2, 0025 // +0005 │ │ +435ff0: 6e10 a75b 0200 |0022: invoke-virtual {v2}, Ljava/io/FileInputStream;.close:()V // method@5ba7 │ │ +435ff6: 1e01 |0025: monitor-exit v1 │ │ +435ff8: 5432 bc5f |0026: iget-object v2, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbc │ │ +435ffc: 1d02 |0028: monitor-enter v2 │ │ +435ffe: 5b30 bb5f |0029: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ +436002: 1e02 |002b: monitor-exit v2 │ │ +436004: 2818 |002c: goto 0044 // +0018 │ │ +436006: 0d00 |002d: move-exception v0 │ │ +436008: 1e02 |002e: monitor-exit v2 │ │ +43600a: 2700 |002f: throw v0 │ │ +43600c: 0d02 |0030: move-exception v2 │ │ +43600e: 1e01 |0031: monitor-exit v1 │ │ +436010: 2702 |0032: throw v2 │ │ +436012: 0d01 |0033: move-exception v1 │ │ +436014: 5432 bc5f |0034: iget-object v2, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbc │ │ +436018: 1d02 |0036: monitor-enter v2 │ │ +43601a: 5b30 bb5f |0037: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ +43601e: 1e02 |0039: monitor-exit v2 │ │ +436020: 2701 |003a: throw v1 │ │ +436022: 0d00 |003b: move-exception v0 │ │ +436024: 1e02 |003c: monitor-exit v2 │ │ +436026: 2700 |003d: throw v0 │ │ +436028: 5431 bc5f |003e: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbc │ │ +43602c: 1d01 |0040: monitor-enter v1 │ │ +43602e: 5b30 bb5f |0041: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbb │ │ +436032: 1e01 |0043: monitor-exit v1 │ │ +436034: 5430 be5f |0044: iget-object v0, v3, Lorg/purple/smoke/SteamReader;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbe │ │ +436038: 1601 0000 |0046: const-wide/16 v1, #int 0 // #0 │ │ +43603c: 6e30 e360 1002 |0048: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +436042: 5430 bf5f |004b: iget-object v0, v3, Lorg/purple/smoke/SteamReader;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbf │ │ +436046: 6e30 e360 1002 |004d: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43604c: 6e10 16be 0300 |0050: invoke-virtual {v3}, Lorg/purple/smoke/SteamReader;.cancelReader:()V // method@be16 │ │ +436052: 0e00 |0053: return-void │ │ +436054: 0d00 |0054: move-exception v0 │ │ +436056: 1e01 |0055: monitor-exit v1 │ │ +436058: 2700 |0056: throw v0 │ │ catches : 10 │ │ 0x0001 - 0x0008 │ │ Ljava/lang/Exception; -> 0x000d │ │ -> 0x0009 │ │ 0x001b - 0x001e │ │ Ljava/lang/Exception; -> 0x003e │ │ -> 0x0033 │ │ @@ -749806,19 +749805,19 @@ │ │ type : '()I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -435cec: |[435cec] org.purple.smoke.SteamReader.getOid:()I │ │ -435cfc: 5410 bd5f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamReader;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fbd │ │ -435d00: 6e10 dc60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -435d06: 0a00 |0005: move-result v0 │ │ -435d08: 0f00 |0006: return v0 │ │ +435ce8: |[435ce8] org.purple.smoke.SteamReader.getOid:()I │ │ +435cf8: 5410 bd5f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamReader;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fbd │ │ +435cfc: 6e10 dc60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +435d02: 0a00 |0005: move-result v0 │ │ +435d04: 0f00 |0006: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=164 │ │ locals : │ │ 0x0000 - 0x0007 reg=1 this Lorg/purple/smoke/SteamReader; │ │ │ │ #4 : (in Lorg/purple/smoke/SteamReader;) │ │ @@ -749826,30 +749825,30 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 32 16-bit code units │ │ -435d0c: |[435d0c] org.purple.smoke.SteamReader.prettyRate:()Ljava/lang/String; │ │ -435d1c: 2200 f10a |0000: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ -435d20: 7010 ee5c 0000 |0002: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -435d26: 5431 be5f |0005: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbe │ │ -435d2a: 6e10 e160 0100 |0007: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -435d30: 0b01 |000a: move-result-wide v1 │ │ -435d32: 7120 d65c 2100 |000b: invoke-static {v1, v2}, Ljava/lang/String;.valueOf:(J)Ljava/lang/String; // method@5cd6 │ │ -435d38: 0c01 |000e: move-result-object v1 │ │ -435d3a: 7110 e8bb 0100 |000f: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbe8 │ │ -435d40: 0c01 |0012: move-result-object v1 │ │ -435d42: 6e20 f95c 1000 |0013: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -435d48: 1a01 a800 |0016: const-string v1, " / s" // string@00a8 │ │ -435d4c: 6e20 f95c 1000 |0018: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -435d52: 6e10 035d 0000 |001b: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -435d58: 0c00 |001e: move-result-object v0 │ │ -435d5a: 1100 |001f: return-object v0 │ │ +435d08: |[435d08] org.purple.smoke.SteamReader.prettyRate:()Ljava/lang/String; │ │ +435d18: 2200 f10a |0000: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ +435d1c: 7010 ee5c 0000 |0002: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +435d22: 5431 be5f |0005: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbe │ │ +435d26: 6e10 e160 0100 |0007: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +435d2c: 0b01 |000a: move-result-wide v1 │ │ +435d2e: 7120 d65c 2100 |000b: invoke-static {v1, v2}, Ljava/lang/String;.valueOf:(J)Ljava/lang/String; // method@5cd6 │ │ +435d34: 0c01 |000e: move-result-object v1 │ │ +435d36: 7110 e8bb 0100 |000f: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbe8 │ │ +435d3c: 0c01 |0012: move-result-object v1 │ │ +435d3e: 6e20 f95c 1000 |0013: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +435d44: 1a01 a800 |0016: const-string v1, " / s" // string@00a8 │ │ +435d48: 6e20 f95c 1000 |0018: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +435d4e: 6e10 035d 0000 |001b: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +435d54: 0c00 |001e: move-result-object v0 │ │ +435d56: 1100 |001f: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=58 │ │ 0x0007 line=59 │ │ locals : │ │ 0x0000 - 0x0020 reg=3 this Lorg/purple/smoke/SteamReader; │ │ │ │ @@ -749898,20 +749897,20 @@ │ │ type : '(Lorg/purple/smoke/SteamReaderFull;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 9 16-bit code units │ │ -4349ec: |[4349ec] org.purple.smoke.SteamReaderFull$1.:(Lorg/purple/smoke/SteamReaderFull;)V │ │ -4349fc: 5b01 c55f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434a00: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -434a06: 1201 |0005: const/4 v1, #int 0 // #0 │ │ -434a08: 5b01 c45f |0006: iput-object v1, v0, Lorg/purple/smoke/SteamReaderFull$1;.m_keyStream:[B // field@5fc4 │ │ -434a0c: 0e00 |0008: return-void │ │ +4349e8: |[4349e8] org.purple.smoke.SteamReaderFull$1.:(Lorg/purple/smoke/SteamReaderFull;)V │ │ +4349f8: 5b01 c55f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +4349fc: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +434a02: 1201 |0005: const/4 v1, #int 0 // #0 │ │ +434a04: 5b01 c45f |0006: iput-object v1, v0, Lorg/purple/smoke/SteamReaderFull$1;.m_keyStream:[B // field@5fc4 │ │ +434a08: 0e00 |0008: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=82 │ │ 0x0006 line=83 │ │ locals : │ │ 0x0000 - 0x0009 reg=0 this Lorg/purple/smoke/SteamReaderFull$1; │ │ 0x0000 - 0x0009 reg=1 (null) Lorg/purple/smoke/SteamReaderFull; │ │ @@ -749922,353 +749921,353 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 25 │ │ ins : 1 │ │ outs : 8 │ │ insns size : 690 16-bit code units │ │ -434a10: |[434a10] org.purple.smoke.SteamReaderFull$1.run:()V │ │ -434a20: 0801 1800 |0000: move-object/from16 v1, v24 │ │ -434a24: 1202 |0002: const/4 v2, #int 0 // #0 │ │ -434a26: 5410 c55f |0003: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434a2a: 5400 c95f |0005: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fc9 │ │ -434a2e: 6e10 d860 0000 |0007: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -434a34: 0a00 |000a: move-result v0 │ │ -434a36: 3800 0300 |000b: if-eqz v0, 000e // +0003 │ │ -434a3a: 0e00 |000d: return-void │ │ -434a3c: 6200 c35f |000e: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ -434a40: 5413 c55f |0010: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434a44: 5433 d15f |0012: iget-object v3, v3, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ -434a48: 6e10 dc60 0300 |0014: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -434a4e: 0a03 |0017: move-result v3 │ │ -434a50: 6e20 2bba 3000 |0018: invoke-virtual {v0, v3}, Lorg/purple/smoke/Database;.steamStatus:(I)Ljava/lang/String; // method@ba2b │ │ -434a56: 0c00 |001b: move-result-object v0 │ │ -434a58: 6e10 cf5c 0000 |001c: invoke-virtual {v0}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@5ccf │ │ -434a5e: 0c00 |001f: move-result-object v0 │ │ -434a60: 6e10 d35c 0000 |0020: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -434a66: 0c00 |0023: move-result-object v0 │ │ -434a68: 6e10 bf5c 0000 |0024: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -434a6e: 0a03 |0027: move-result v3 │ │ -434a70: 12f4 |0028: const/4 v4, #int -1 // #ff │ │ -434a72: 1215 |0029: const/4 v5, #int 1 // #1 │ │ -434a74: 2c03 5202 0000 |002a: sparse-switch v3, 0000027c // +00000252 │ │ -434a7a: 2851 |002d: goto 007e // +0051 │ │ -434a7c: 1a03 0363 |002e: const-string v3, "deleted" // string@6303 │ │ -434a80: 6e20 b85c 3000 |0030: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434a86: 0a00 |0033: move-result v0 │ │ -434a88: 3800 4a00 |0034: if-eqz v0, 007e // +004a │ │ -434a8c: 1220 |0036: const/4 v0, #int 2 // #2 │ │ -434a8e: 2848 |0037: goto 007f // +0048 │ │ -434a90: 1a03 7996 |0038: const-string v3, "received private-key pair" // string@9679 │ │ -434a94: 6e20 b85c 3000 |003a: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434a9a: 0a00 |003d: move-result v0 │ │ -434a9c: 3800 4000 |003e: if-eqz v0, 007e // +0040 │ │ -434aa0: 1240 |0040: const/4 v0, #int 4 // #4 │ │ -434aa2: 283e |0041: goto 007f // +003e │ │ -434aa4: 1a03 0000 |0042: const-string v3, "" // string@0000 │ │ -434aa8: 6e20 b85c 3000 |0044: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434aae: 0a00 |0047: move-result v0 │ │ -434ab0: 3800 3600 |0048: if-eqz v0, 007e // +0036 │ │ -434ab4: 1200 |004a: const/4 v0, #int 0 // #0 │ │ -434ab6: 2834 |004b: goto 007f // +0034 │ │ -434ab8: 1a03 4a98 |004c: const-string v3, "rewind & resume" // string@984a │ │ -434abc: 6e20 b85c 3000 |004e: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434ac2: 0a00 |0051: move-result v0 │ │ -434ac4: 3800 2c00 |0052: if-eqz v0, 007e // +002c │ │ -434ac8: 1270 |0054: const/4 v0, #int 7 // #7 │ │ -434aca: 282a |0055: goto 007f // +002a │ │ -434acc: 1a03 4998 |0056: const-string v3, "rewind" // string@9849 │ │ -434ad0: 6e20 b85c 3000 |0058: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434ad6: 0a00 |005b: move-result v0 │ │ -434ad8: 3800 2200 |005c: if-eqz v0, 007e // +0022 │ │ -434adc: 1260 |005e: const/4 v0, #int 6 // #6 │ │ -434ade: 2820 |005f: goto 007f // +0020 │ │ -434ae0: 1a03 2598 |0060: const-string v3, "resume" // string@9825 │ │ -434ae4: 6e20 b85c 3000 |0062: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434aea: 0a00 |0065: move-result v0 │ │ -434aec: 3800 1800 |0066: if-eqz v0, 007e // +0018 │ │ -434af0: 1250 |0068: const/4 v0, #int 5 // #5 │ │ -434af2: 2816 |0069: goto 007f // +0016 │ │ -434af4: 1a03 2993 |006a: const-string v3, "paused" // string@9329 │ │ -434af8: 6e20 b85c 3000 |006c: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434afe: 0a00 |006f: move-result v0 │ │ -434b00: 3800 0e00 |0070: if-eqz v0, 007e // +000e │ │ -434b04: 1230 |0072: const/4 v0, #int 3 // #3 │ │ -434b06: 280c |0073: goto 007f // +000c │ │ -434b08: 1a03 fb5f |0074: const-string v3, "completed" // string@5ffb │ │ -434b0c: 6e20 b85c 3000 |0076: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434b12: 0a00 |0079: move-result v0 │ │ -434b14: 3800 0400 |007a: if-eqz v0, 007e // +0004 │ │ -434b18: 1210 |007c: const/4 v0, #int 1 // #1 │ │ -434b1a: 2802 |007d: goto 007f // +0002 │ │ -434b1c: 12f0 |007e: const/4 v0, #int -1 // #ff │ │ -434b1e: 2b00 1f02 0000 |007f: packed-switch v0, 0000029e // +0000021f │ │ -434b24: 5410 c55f |0082: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434b28: 2900 8100 |0084: goto/16 0105 // +0081 │ │ -434b2c: 5410 c55f |0086: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434b30: 7110 1fbe 0000 |0088: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$000:(Lorg/purple/smoke/SteamReaderFull;)V // method@be1f │ │ -434b36: 6206 c35f |008b: sget-object v6, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ -434b3a: 6207 c25f |008d: sget-object v7, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ -434b3e: 1a08 66a5 |008f: const-string v8, "transferring" // string@a566 │ │ -434b42: 1a09 0000 |0091: const-string v9, "" // string@0000 │ │ -434b46: 5410 c55f |0093: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434b4a: 5400 d15f |0095: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ -434b4e: 6e10 dc60 0000 |0097: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -434b54: 0a0a |009a: move-result v10 │ │ -434b56: 160b 0000 |009b: const-wide/16 v11, #int 0 // #0 │ │ -434b5a: 7407 42ba 0600 |009d: invoke-virtual/range {v6, v7, v8, v9, v10, v11, v12}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ -434b60: 2900 9b00 |00a0: goto/16 013b // +009b │ │ -434b64: 5410 c55f |00a2: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434b68: 7110 1fbe 0000 |00a4: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$000:(Lorg/purple/smoke/SteamReaderFull;)V // method@be1f │ │ -434b6e: 6203 c35f |00a7: sget-object v3, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ -434b72: 6204 c25f |00a9: sget-object v4, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ -434b76: 1a05 2993 |00ab: const-string v5, "paused" // string@9329 │ │ -434b7a: 1a06 0000 |00ad: const-string v6, "" // string@0000 │ │ -434b7e: 5410 c55f |00af: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434b82: 5400 d15f |00b1: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ -434b86: 6e10 dc60 0000 |00b3: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -434b8c: 0a07 |00b6: move-result v7 │ │ -434b8e: 1608 0000 |00b7: const-wide/16 v8, #int 0 // #0 │ │ -434b92: 7407 42ba 0300 |00b9: invoke-virtual/range {v3, v4, v5, v6, v7, v8, v9}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ -434b98: 0e00 |00bc: return-void │ │ -434b9a: 620a c35f |00bd: sget-object v10, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ -434b9e: 620b c25f |00bf: sget-object v11, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ -434ba2: 1a0c 66a5 |00c1: const-string v12, "transferring" // string@a566 │ │ -434ba6: 1a0d 0000 |00c3: const-string v13, "" // string@0000 │ │ -434baa: 5410 c55f |00c5: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434bae: 5400 d15f |00c7: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ -434bb2: 6e10 dc60 0000 |00c9: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -434bb8: 0a0e |00cc: move-result v14 │ │ -434bba: 160f 0000 |00cd: const-wide/16 v15, #int 0 // #0 │ │ -434bbe: 7407 42ba 0a00 |00cf: invoke-virtual/range {v10, v11, v12, v13, v14, v15, v16}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ -434bc4: 2869 |00d2: goto 013b // +0069 │ │ -434bc6: 6211 c35f |00d3: sget-object v17, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ -434bca: 6212 c25f |00d5: sget-object v18, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ -434bce: 1a13 66a5 |00d7: const-string v19, "transferring" // string@a566 │ │ -434bd2: 1a14 0000 |00d9: const-string v20, "" // string@0000 │ │ -434bd6: 5410 c55f |00db: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434bda: 5400 d15f |00dd: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ -434bde: 6e10 dc60 0000 |00df: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -434be4: 0a15 |00e2: move-result v21 │ │ -434be6: 1616 0000 |00e3: const-wide/16 v22, #int 0 // #0 │ │ -434bea: 7407 42ba 1100 |00e5: invoke-virtual/range {v17, v18, v19, v20, v21, v22, v23}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ -434bf0: 2853 |00e8: goto 013b // +0053 │ │ -434bf2: 6200 c35f |00e9: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ -434bf6: 6203 c25f |00eb: sget-object v3, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ -434bfa: 1a04 0000 |00ed: const-string v4, "" // string@0000 │ │ -434bfe: 1a05 cc04 |00ef: const-string v5, "0.00 B / s" // string@04cc │ │ -434c02: 5416 c55f |00f1: iget-object v6, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434c06: 5466 d15f |00f3: iget-object v6, v6, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ -434c0a: 6e10 dc60 0600 |00f5: invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -434c10: 0a06 |00f8: move-result v6 │ │ -434c12: 6e56 41ba 3054 |00f9: invoke-virtual {v0, v3, v4, v5, v6}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;I)V // method@ba41 │ │ -434c18: 0e00 |00fc: return-void │ │ -434c1a: 5410 c55f |00fd: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434c1e: 5400 ca5f |00ff: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ -434c22: 6e20 da60 5000 |0101: invoke-virtual {v0, v5}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -434c28: 0e00 |0104: return-void │ │ -434c2a: 7110 20be 0000 |0105: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$100:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; // method@be20 │ │ -434c30: 0c00 |0108: move-result-object v0 │ │ -434c32: 6e10 e160 0000 |0109: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -434c38: 0b06 |010c: move-result-wide v6 │ │ -434c3a: 5410 c55f |010d: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434c3e: 5400 d55f |010f: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ -434c42: 6e10 e160 0000 |0111: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -434c48: 0b08 |0114: move-result-wide v8 │ │ -434c4a: 3100 0608 |0115: cmp-long v0, v6, v8 │ │ -434c4e: 3900 2400 |0117: if-nez v0, 013b // +0024 │ │ -434c52: 5410 c55f |0119: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434c56: 5400 ca5f |011b: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ -434c5a: 6e20 da60 5000 |011d: invoke-virtual {v0, v5}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -434c60: 6206 c35f |0120: sget-object v6, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ -434c64: 6207 c25f |0122: sget-object v7, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ -434c68: 1a08 fb5f |0124: const-string v8, "completed" // string@5ffb │ │ -434c6c: 1a09 0000 |0126: const-string v9, "" // string@0000 │ │ -434c70: 5410 c55f |0128: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434c74: 5400 d15f |012a: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ -434c78: 6e10 dc60 0000 |012c: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -434c7e: 0a0a |012f: move-result v10 │ │ -434c80: 5410 c55f |0130: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434c84: 5400 d55f |0132: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ -434c88: 6e10 e160 0000 |0134: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -434c8e: 0b0b |0137: move-result-wide v11 │ │ -434c90: 7407 42ba 0600 |0138: invoke-virtual/range {v6, v7, v8, v9, v10, v11, v12}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ -434c96: 5410 c55f |013b: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434c9a: 7110 21be 0000 |013d: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$200:(Lorg/purple/smoke/SteamReaderFull;)V // method@be21 │ │ -434ca0: 5410 c55f |0140: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434ca4: 7110 22be 0000 |0142: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$300:(Lorg/purple/smoke/SteamReaderFull;)V // method@be22 │ │ -434caa: 5410 c55f |0145: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434cae: 5400 c95f |0147: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fc9 │ │ -434cb2: 6e10 d860 0000 |0149: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -434cb8: 0a00 |014c: move-result v0 │ │ -434cba: 3900 2401 |014d: if-nez v0, 0271 // +0124 │ │ -434cbe: 5410 c55f |014f: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434cc2: 5400 ca5f |0151: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ -434cc6: 6e10 d860 0000 |0153: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -434ccc: 0a00 |0156: move-result v0 │ │ -434cce: 3800 0400 |0157: if-eqz v0, 015b // +0004 │ │ -434cd2: 2900 1801 |0159: goto/16 0271 // +0118 │ │ -434cd6: 5410 c55f |015b: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434cda: 5403 cd5f |015d: iget-object v3, v0, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fcd │ │ -434cde: 1d03 |015f: monitor-enter v3 │ │ -434ce0: 5410 c55f |0160: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434ce4: 5400 cc5f |0162: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcc │ │ -434ce8: 3900 0400 |0164: if-nez v0, 0168 // +0004 │ │ -434cec: 1e03 |0166: monitor-exit v3 │ │ -434cee: 0e00 |0167: return-void │ │ -434cf0: 1e03 |0168: monitor-exit v3 │ │ -434cf2: 5410 c45f |0169: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.m_keyStream:[B // field@5fc4 │ │ -434cf6: 1303 6000 |016b: const/16 v3, #int 96 // #60 │ │ -434cfa: 3800 0500 |016d: if-eqz v0, 0172 // +0005 │ │ -434cfe: 2100 |016f: array-length v0, v0 │ │ -434d00: 3230 1e00 |0170: if-eq v0, v3, 018e // +001e │ │ -434d04: 6200 c35f |0172: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ -434d08: 6206 c25f |0174: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ -434d0c: 5417 c55f |0176: iget-object v7, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434d10: 5477 d15f |0178: iget-object v7, v7, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ -434d14: 6e10 dc60 0700 |017a: invoke-virtual {v7}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -434d1a: 0a07 |017d: move-result v7 │ │ -434d1c: b157 |017e: sub-int/2addr v7, v5 │ │ -434d1e: 6e40 1cba 6074 |017f: invoke-virtual {v0, v6, v4, v7}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba1c │ │ -434d24: 0c00 |0182: move-result-object v0 │ │ -434d26: 5400 9e5f |0183: iget-object v0, v0, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ -434d2a: 5b10 c45f |0185: iput-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.m_keyStream:[B // field@5fc4 │ │ -434d2e: 3800 e600 |0187: if-eqz v0, 026d // +00e6 │ │ -434d32: 2100 |0189: array-length v0, v0 │ │ -434d34: 3230 0400 |018a: if-eq v0, v3, 018e // +0004 │ │ -434d38: 2900 e100 |018c: goto/16 026d // +00e1 │ │ -434d3c: 5410 c55f |018e: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434d40: 7110 23be 0000 |0190: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$400:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/Object; // method@be23 │ │ -434d46: 0c03 |0193: move-result-object v3 │ │ -434d48: 1d03 |0194: monitor-enter v3 │ │ -434d4a: 5410 c55f |0195: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434d4e: 7110 23be 0000 |0197: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$400:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/Object; // method@be23 │ │ -434d54: 0c00 |019a: move-result-object v0 │ │ -434d56: 1605 4c1d |019b: const-wide/16 v5, #int 7500 // #1d4c │ │ -434d5a: 6e30 985c 5006 |019d: invoke-virtual {v0, v5, v6}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ -434d60: 1e03 |01a0: monitor-exit v3 │ │ -434d62: 5410 c55f |01a1: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434d66: 7110 24be 0000 |01a3: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be24 │ │ -434d6c: 0c00 |01a6: move-result-object v0 │ │ -434d6e: 6e10 d860 0000 |01a7: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -434d74: 0a00 |01aa: move-result v0 │ │ -434d76: 3900 3900 |01ab: if-nez v0, 01e4 // +0039 │ │ -434d7a: 7100 065d 0000 |01ad: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -434d80: 0b07 |01b0: move-result-wide v7 │ │ -434d82: 5410 c55f |01b1: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434d86: 7110 25be 0000 |01b3: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$600:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; // method@be25 │ │ -434d8c: 0c00 |01b6: move-result-object v0 │ │ -434d8e: 6e10 e160 0000 |01b7: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -434d94: 0b09 |01ba: move-result-wide v9 │ │ -434d96: bc97 |01bb: sub-long/2addr v7, v9 │ │ -434d98: 3100 0705 |01bc: cmp-long v0, v7, v5 │ │ -434d9c: 3d00 2500 |01be: if-lez v0, 01e3 // +0025 │ │ -434da0: 5410 c55f |01c0: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434da4: 5400 c95f |01c2: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fc9 │ │ -434da8: 6e10 d860 0000 |01c4: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -434dae: 0a00 |01c7: move-result v0 │ │ -434db0: 3900 1b00 |01c8: if-nez v0, 01e3 // +001b │ │ -434db4: 5410 c55f |01ca: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434db8: 5400 ca5f |01cc: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ -434dbc: 6e10 d860 0000 |01ce: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -434dc2: 0a00 |01d1: move-result v0 │ │ -434dc4: 3800 0300 |01d2: if-eqz v0, 01d5 // +0003 │ │ -434dc8: 280f |01d4: goto 01e3 // +000f │ │ -434dca: 5410 c55f |01d5: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434dce: 7110 25be 0000 |01d7: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$600:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; // method@be25 │ │ -434dd4: 0c00 |01da: move-result-object v0 │ │ -434dd6: 7100 065d 0000 |01db: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -434ddc: 0b05 |01de: move-result-wide v5 │ │ -434dde: 6e30 e360 5006 |01df: invoke-virtual {v0, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -434de4: 2802 |01e2: goto 01e4 // +0002 │ │ -434de6: 0e00 |01e3: return-void │ │ -434de8: 1400 0080 0000 |01e4: const v0, #float 4.59177e-41 // #00008000 │ │ -434dee: 2300 481b |01e7: new-array v0, v0, [B // type@1b48 │ │ -434df2: 5413 c55f |01e9: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434df6: 5433 cd5f |01eb: iget-object v3, v3, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fcd │ │ -434dfa: 1d03 |01ed: monitor-enter v3 │ │ -434dfc: 5415 c55f |01ee: iget-object v5, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434e00: 5455 cc5f |01f0: iget-object v5, v5, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcc │ │ -434e04: 3905 0400 |01f2: if-nez v5, 01f6 // +0004 │ │ -434e08: 1e03 |01f4: monitor-exit v3 │ │ -434e0a: 0e00 |01f5: return-void │ │ -434e0c: 5415 c55f |01f6: iget-object v5, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434e10: 5455 cc5f |01f8: iget-object v5, v5, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcc │ │ -434e14: 6e10 a85b 0500 |01fa: invoke-virtual {v5}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ -434e1a: 0c05 |01fd: move-result-object v5 │ │ -434e1c: 5416 c55f |01fe: iget-object v6, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434e20: 5466 d55f |0200: iget-object v6, v6, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ -434e24: 6e10 e160 0600 |0202: invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -434e2a: 0b06 |0205: move-result-wide v6 │ │ -434e2c: 6e30 cb5d 6507 |0206: invoke-virtual {v5, v6, v7}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcb │ │ -434e32: 5415 c55f |0209: iget-object v5, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434e36: 5455 cc5f |020b: iget-object v5, v5, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcc │ │ -434e3a: 6e20 a95b 0500 |020d: invoke-virtual {v5, v0}, Ljava/io/FileInputStream;.read:([B)I // method@5ba9 │ │ -434e40: 0a05 |0210: move-result v5 │ │ -434e42: 1e03 |0211: monitor-exit v3 │ │ -434e44: 3345 0c00 |0212: if-ne v5, v4, 021e // +000c │ │ -434e48: 5410 c55f |0214: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434e4c: 7110 24be 0000 |0216: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be24 │ │ -434e52: 0c00 |0219: move-result-object v0 │ │ -434e54: 6e20 da60 2000 |021a: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -434e5a: 0e00 |021d: return-void │ │ -434e5c: 5413 c55f |021e: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434e60: 7110 26be 0300 |0220: invoke-static {v3}, Lorg/purple/smoke/SteamReaderFull;.access$700:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; // method@be26 │ │ -434e66: 0c03 |0223: move-result-object v3 │ │ -434e68: 8156 |0224: int-to-long v6, v5 │ │ -434e6a: 6e30 e360 6307 |0225: invoke-virtual {v3, v6, v7}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -434e70: 5413 c55f |0228: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434e74: 7110 24be 0300 |022a: invoke-static {v3}, Lorg/purple/smoke/SteamReaderFull;.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be24 │ │ -434e7a: 0c03 |022d: move-result-object v3 │ │ -434e7c: 6e20 da60 2300 |022e: invoke-virtual {v3, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -434e82: 6206 c25f |0231: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ -434e86: 5413 c55f |0233: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434e8a: 7110 27be 0300 |0235: invoke-static {v3}, Lorg/purple/smoke/SteamReaderFull;.access$800:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/String; // method@be27 │ │ -434e90: 0c07 |0238: move-result-object v7 │ │ -434e92: 5413 c55f |0239: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434e96: 7110 28be 0300 |023b: invoke-static {v3}, Lorg/purple/smoke/SteamReaderFull;.access$900:(Lorg/purple/smoke/SteamReaderFull;)[B // method@be28 │ │ -434e9c: 0c08 |023e: move-result-object v8 │ │ -434e9e: 5419 c45f |023f: iget-object v9, v1, Lorg/purple/smoke/SteamReaderFull$1;.m_keyStream:[B // field@5fc4 │ │ -434ea2: 7130 b65f 2005 |0241: invoke-static {v0, v2, v5}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb6 │ │ -434ea8: 0c0a |0244: move-result-object v10 │ │ -434eaa: 6200 1a55 |0245: sget-object v0, Lorg/purple/smoke/Messages;.STEAM_SHARE:[B // field@551a │ │ -434eae: 480b 0002 |0247: aget-byte v11, v0, v2 │ │ -434eb2: 5410 c55f |0249: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434eb6: 5400 d55f |024b: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ -434eba: 6e10 e160 0000 |024d: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -434ec0: 0b0c |0250: move-result-wide v12 │ │ -434ec2: 7708 c3bb 0600 |0251: invoke-static/range {v6, v7, v8, v9, v10, v11, v12, v13}, Lorg/purple/smoke/Messages;.steamShare:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;[B[B[BBJ)[B // method@bbc3 │ │ -434ec8: 0c00 |0254: move-result-object v0 │ │ -434eca: 3800 2600 |0255: if-eqz v0, 027b // +0026 │ │ -434ece: 7100 0bbb 0000 |0257: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -434ed4: 0c03 |025a: move-result-object v3 │ │ -434ed6: 7110 b1bb 0000 |025b: invoke-static {v0}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb1 │ │ -434edc: 0c00 |025e: move-result-object v0 │ │ -434ede: 6e10 bc5c 0000 |025f: invoke-virtual {v0}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434ee4: 0c00 |0262: move-result-object v0 │ │ -434ee6: 6e30 1dbb 2300 |0263: invoke-virtual {v3, v2, v0}, Lorg/purple/smoke/Kernel;.sendSteam:(Z[B)I // method@bb1d │ │ -434eec: 2815 |0266: goto 027b // +0015 │ │ -434eee: 0d00 |0267: move-exception v0 │ │ -434ef0: 1e03 |0268: monitor-exit v3 │ │ -434ef2: 2700 |0269: throw v0 │ │ -434ef4: 0d00 |026a: move-exception v0 │ │ -434ef6: 1e03 |026b: monitor-exit v3 │ │ -434ef8: 2700 |026c: throw v0 │ │ -434efa: 0e00 |026d: return-void │ │ -434efc: 0d00 |026e: move-exception v0 │ │ -434efe: 1e03 |026f: monitor-exit v3 │ │ -434f00: 2700 |0270: throw v0 │ │ -434f02: 0e00 |0271: return-void │ │ -434f04: 5410 c55f |0272: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ -434f08: 7110 24be 0000 |0274: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be24 │ │ -434f0e: 0c00 |0277: move-result-object v0 │ │ -434f10: 6e20 da60 2000 |0278: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -434f16: 0e00 |027b: return-void │ │ -434f18: 0002 0800 4bf6 60ac 2e99 acc4 2dc8 ... |027c: sparse-switch-data (34 units) │ │ -434f5c: 0001 0800 0000 0000 8500 0000 7e00 ... |029e: packed-switch-data (20 units) │ │ +434a0c: |[434a0c] org.purple.smoke.SteamReaderFull$1.run:()V │ │ +434a1c: 0801 1800 |0000: move-object/from16 v1, v24 │ │ +434a20: 1202 |0002: const/4 v2, #int 0 // #0 │ │ +434a22: 5410 c55f |0003: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434a26: 5400 c95f |0005: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fc9 │ │ +434a2a: 6e10 d860 0000 |0007: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +434a30: 0a00 |000a: move-result v0 │ │ +434a32: 3800 0300 |000b: if-eqz v0, 000e // +0003 │ │ +434a36: 0e00 |000d: return-void │ │ +434a38: 6200 c35f |000e: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ +434a3c: 5413 c55f |0010: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434a40: 5433 d15f |0012: iget-object v3, v3, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ +434a44: 6e10 dc60 0300 |0014: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +434a4a: 0a03 |0017: move-result v3 │ │ +434a4c: 6e20 2bba 3000 |0018: invoke-virtual {v0, v3}, Lorg/purple/smoke/Database;.steamStatus:(I)Ljava/lang/String; // method@ba2b │ │ +434a52: 0c00 |001b: move-result-object v0 │ │ +434a54: 6e10 cf5c 0000 |001c: invoke-virtual {v0}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@5ccf │ │ +434a5a: 0c00 |001f: move-result-object v0 │ │ +434a5c: 6e10 d35c 0000 |0020: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +434a62: 0c00 |0023: move-result-object v0 │ │ +434a64: 6e10 bf5c 0000 |0024: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +434a6a: 0a03 |0027: move-result v3 │ │ +434a6c: 12f4 |0028: const/4 v4, #int -1 // #ff │ │ +434a6e: 1215 |0029: const/4 v5, #int 1 // #1 │ │ +434a70: 2c03 5202 0000 |002a: sparse-switch v3, 0000027c // +00000252 │ │ +434a76: 2851 |002d: goto 007e // +0051 │ │ +434a78: 1a03 0363 |002e: const-string v3, "deleted" // string@6303 │ │ +434a7c: 6e20 b85c 3000 |0030: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +434a82: 0a00 |0033: move-result v0 │ │ +434a84: 3800 4a00 |0034: if-eqz v0, 007e // +004a │ │ +434a88: 1220 |0036: const/4 v0, #int 2 // #2 │ │ +434a8a: 2848 |0037: goto 007f // +0048 │ │ +434a8c: 1a03 7996 |0038: const-string v3, "received private-key pair" // string@9679 │ │ +434a90: 6e20 b85c 3000 |003a: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +434a96: 0a00 |003d: move-result v0 │ │ +434a98: 3800 4000 |003e: if-eqz v0, 007e // +0040 │ │ +434a9c: 1240 |0040: const/4 v0, #int 4 // #4 │ │ +434a9e: 283e |0041: goto 007f // +003e │ │ +434aa0: 1a03 0000 |0042: const-string v3, "" // string@0000 │ │ +434aa4: 6e20 b85c 3000 |0044: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +434aaa: 0a00 |0047: move-result v0 │ │ +434aac: 3800 3600 |0048: if-eqz v0, 007e // +0036 │ │ +434ab0: 1200 |004a: const/4 v0, #int 0 // #0 │ │ +434ab2: 2834 |004b: goto 007f // +0034 │ │ +434ab4: 1a03 4a98 |004c: const-string v3, "rewind & resume" // string@984a │ │ +434ab8: 6e20 b85c 3000 |004e: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +434abe: 0a00 |0051: move-result v0 │ │ +434ac0: 3800 2c00 |0052: if-eqz v0, 007e // +002c │ │ +434ac4: 1270 |0054: const/4 v0, #int 7 // #7 │ │ +434ac6: 282a |0055: goto 007f // +002a │ │ +434ac8: 1a03 4998 |0056: const-string v3, "rewind" // string@9849 │ │ +434acc: 6e20 b85c 3000 |0058: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +434ad2: 0a00 |005b: move-result v0 │ │ +434ad4: 3800 2200 |005c: if-eqz v0, 007e // +0022 │ │ +434ad8: 1260 |005e: const/4 v0, #int 6 // #6 │ │ +434ada: 2820 |005f: goto 007f // +0020 │ │ +434adc: 1a03 2598 |0060: const-string v3, "resume" // string@9825 │ │ +434ae0: 6e20 b85c 3000 |0062: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +434ae6: 0a00 |0065: move-result v0 │ │ +434ae8: 3800 1800 |0066: if-eqz v0, 007e // +0018 │ │ +434aec: 1250 |0068: const/4 v0, #int 5 // #5 │ │ +434aee: 2816 |0069: goto 007f // +0016 │ │ +434af0: 1a03 2993 |006a: const-string v3, "paused" // string@9329 │ │ +434af4: 6e20 b85c 3000 |006c: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +434afa: 0a00 |006f: move-result v0 │ │ +434afc: 3800 0e00 |0070: if-eqz v0, 007e // +000e │ │ +434b00: 1230 |0072: const/4 v0, #int 3 // #3 │ │ +434b02: 280c |0073: goto 007f // +000c │ │ +434b04: 1a03 fb5f |0074: const-string v3, "completed" // string@5ffb │ │ +434b08: 6e20 b85c 3000 |0076: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +434b0e: 0a00 |0079: move-result v0 │ │ +434b10: 3800 0400 |007a: if-eqz v0, 007e // +0004 │ │ +434b14: 1210 |007c: const/4 v0, #int 1 // #1 │ │ +434b16: 2802 |007d: goto 007f // +0002 │ │ +434b18: 12f0 |007e: const/4 v0, #int -1 // #ff │ │ +434b1a: 2b00 1f02 0000 |007f: packed-switch v0, 0000029e // +0000021f │ │ +434b20: 5410 c55f |0082: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434b24: 2900 8100 |0084: goto/16 0105 // +0081 │ │ +434b28: 5410 c55f |0086: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434b2c: 7110 1fbe 0000 |0088: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$000:(Lorg/purple/smoke/SteamReaderFull;)V // method@be1f │ │ +434b32: 6206 c35f |008b: sget-object v6, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ +434b36: 6207 c25f |008d: sget-object v7, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ +434b3a: 1a08 66a5 |008f: const-string v8, "transferring" // string@a566 │ │ +434b3e: 1a09 0000 |0091: const-string v9, "" // string@0000 │ │ +434b42: 5410 c55f |0093: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434b46: 5400 d15f |0095: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ +434b4a: 6e10 dc60 0000 |0097: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +434b50: 0a0a |009a: move-result v10 │ │ +434b52: 160b 0000 |009b: const-wide/16 v11, #int 0 // #0 │ │ +434b56: 7407 42ba 0600 |009d: invoke-virtual/range {v6, v7, v8, v9, v10, v11, v12}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ +434b5c: 2900 9b00 |00a0: goto/16 013b // +009b │ │ +434b60: 5410 c55f |00a2: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434b64: 7110 1fbe 0000 |00a4: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$000:(Lorg/purple/smoke/SteamReaderFull;)V // method@be1f │ │ +434b6a: 6203 c35f |00a7: sget-object v3, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ +434b6e: 6204 c25f |00a9: sget-object v4, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ +434b72: 1a05 2993 |00ab: const-string v5, "paused" // string@9329 │ │ +434b76: 1a06 0000 |00ad: const-string v6, "" // string@0000 │ │ +434b7a: 5410 c55f |00af: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434b7e: 5400 d15f |00b1: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ +434b82: 6e10 dc60 0000 |00b3: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +434b88: 0a07 |00b6: move-result v7 │ │ +434b8a: 1608 0000 |00b7: const-wide/16 v8, #int 0 // #0 │ │ +434b8e: 7407 42ba 0300 |00b9: invoke-virtual/range {v3, v4, v5, v6, v7, v8, v9}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ +434b94: 0e00 |00bc: return-void │ │ +434b96: 620a c35f |00bd: sget-object v10, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ +434b9a: 620b c25f |00bf: sget-object v11, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ +434b9e: 1a0c 66a5 |00c1: const-string v12, "transferring" // string@a566 │ │ +434ba2: 1a0d 0000 |00c3: const-string v13, "" // string@0000 │ │ +434ba6: 5410 c55f |00c5: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434baa: 5400 d15f |00c7: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ +434bae: 6e10 dc60 0000 |00c9: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +434bb4: 0a0e |00cc: move-result v14 │ │ +434bb6: 160f 0000 |00cd: const-wide/16 v15, #int 0 // #0 │ │ +434bba: 7407 42ba 0a00 |00cf: invoke-virtual/range {v10, v11, v12, v13, v14, v15, v16}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ +434bc0: 2869 |00d2: goto 013b // +0069 │ │ +434bc2: 6211 c35f |00d3: sget-object v17, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ +434bc6: 6212 c25f |00d5: sget-object v18, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ +434bca: 1a13 66a5 |00d7: const-string v19, "transferring" // string@a566 │ │ +434bce: 1a14 0000 |00d9: const-string v20, "" // string@0000 │ │ +434bd2: 5410 c55f |00db: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434bd6: 5400 d15f |00dd: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ +434bda: 6e10 dc60 0000 |00df: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +434be0: 0a15 |00e2: move-result v21 │ │ +434be2: 1616 0000 |00e3: const-wide/16 v22, #int 0 // #0 │ │ +434be6: 7407 42ba 1100 |00e5: invoke-virtual/range {v17, v18, v19, v20, v21, v22, v23}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ +434bec: 2853 |00e8: goto 013b // +0053 │ │ +434bee: 6200 c35f |00e9: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ +434bf2: 6203 c25f |00eb: sget-object v3, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ +434bf6: 1a04 0000 |00ed: const-string v4, "" // string@0000 │ │ +434bfa: 1a05 cc04 |00ef: const-string v5, "0.00 B / s" // string@04cc │ │ +434bfe: 5416 c55f |00f1: iget-object v6, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434c02: 5466 d15f |00f3: iget-object v6, v6, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ +434c06: 6e10 dc60 0600 |00f5: invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +434c0c: 0a06 |00f8: move-result v6 │ │ +434c0e: 6e56 41ba 3054 |00f9: invoke-virtual {v0, v3, v4, v5, v6}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;I)V // method@ba41 │ │ +434c14: 0e00 |00fc: return-void │ │ +434c16: 5410 c55f |00fd: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434c1a: 5400 ca5f |00ff: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ +434c1e: 6e20 da60 5000 |0101: invoke-virtual {v0, v5}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +434c24: 0e00 |0104: return-void │ │ +434c26: 7110 20be 0000 |0105: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$100:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; // method@be20 │ │ +434c2c: 0c00 |0108: move-result-object v0 │ │ +434c2e: 6e10 e160 0000 |0109: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +434c34: 0b06 |010c: move-result-wide v6 │ │ +434c36: 5410 c55f |010d: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434c3a: 5400 d55f |010f: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ +434c3e: 6e10 e160 0000 |0111: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +434c44: 0b08 |0114: move-result-wide v8 │ │ +434c46: 3100 0608 |0115: cmp-long v0, v6, v8 │ │ +434c4a: 3900 2400 |0117: if-nez v0, 013b // +0024 │ │ +434c4e: 5410 c55f |0119: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434c52: 5400 ca5f |011b: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ +434c56: 6e20 da60 5000 |011d: invoke-virtual {v0, v5}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +434c5c: 6206 c35f |0120: sget-object v6, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ +434c60: 6207 c25f |0122: sget-object v7, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ +434c64: 1a08 fb5f |0124: const-string v8, "completed" // string@5ffb │ │ +434c68: 1a09 0000 |0126: const-string v9, "" // string@0000 │ │ +434c6c: 5410 c55f |0128: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434c70: 5400 d15f |012a: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ +434c74: 6e10 dc60 0000 |012c: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +434c7a: 0a0a |012f: move-result v10 │ │ +434c7c: 5410 c55f |0130: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434c80: 5400 d55f |0132: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ +434c84: 6e10 e160 0000 |0134: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +434c8a: 0b0b |0137: move-result-wide v11 │ │ +434c8c: 7407 42ba 0600 |0138: invoke-virtual/range {v6, v7, v8, v9, v10, v11, v12}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ +434c92: 5410 c55f |013b: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434c96: 7110 21be 0000 |013d: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$200:(Lorg/purple/smoke/SteamReaderFull;)V // method@be21 │ │ +434c9c: 5410 c55f |0140: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434ca0: 7110 22be 0000 |0142: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$300:(Lorg/purple/smoke/SteamReaderFull;)V // method@be22 │ │ +434ca6: 5410 c55f |0145: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434caa: 5400 c95f |0147: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fc9 │ │ +434cae: 6e10 d860 0000 |0149: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +434cb4: 0a00 |014c: move-result v0 │ │ +434cb6: 3900 2401 |014d: if-nez v0, 0271 // +0124 │ │ +434cba: 5410 c55f |014f: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434cbe: 5400 ca5f |0151: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ +434cc2: 6e10 d860 0000 |0153: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +434cc8: 0a00 |0156: move-result v0 │ │ +434cca: 3800 0400 |0157: if-eqz v0, 015b // +0004 │ │ +434cce: 2900 1801 |0159: goto/16 0271 // +0118 │ │ +434cd2: 5410 c55f |015b: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434cd6: 5403 cd5f |015d: iget-object v3, v0, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fcd │ │ +434cda: 1d03 |015f: monitor-enter v3 │ │ +434cdc: 5410 c55f |0160: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434ce0: 5400 cc5f |0162: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcc │ │ +434ce4: 3900 0400 |0164: if-nez v0, 0168 // +0004 │ │ +434ce8: 1e03 |0166: monitor-exit v3 │ │ +434cea: 0e00 |0167: return-void │ │ +434cec: 1e03 |0168: monitor-exit v3 │ │ +434cee: 5410 c45f |0169: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.m_keyStream:[B // field@5fc4 │ │ +434cf2: 1303 6000 |016b: const/16 v3, #int 96 // #60 │ │ +434cf6: 3800 0500 |016d: if-eqz v0, 0172 // +0005 │ │ +434cfa: 2100 |016f: array-length v0, v0 │ │ +434cfc: 3230 1e00 |0170: if-eq v0, v3, 018e // +001e │ │ +434d00: 6200 c35f |0172: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ +434d04: 6206 c25f |0174: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ +434d08: 5417 c55f |0176: iget-object v7, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434d0c: 5477 d15f |0178: iget-object v7, v7, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ +434d10: 6e10 dc60 0700 |017a: invoke-virtual {v7}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +434d16: 0a07 |017d: move-result v7 │ │ +434d18: b157 |017e: sub-int/2addr v7, v5 │ │ +434d1a: 6e40 1cba 6074 |017f: invoke-virtual {v0, v6, v4, v7}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba1c │ │ +434d20: 0c00 |0182: move-result-object v0 │ │ +434d22: 5400 9e5f |0183: iget-object v0, v0, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9e │ │ +434d26: 5b10 c45f |0185: iput-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.m_keyStream:[B // field@5fc4 │ │ +434d2a: 3800 e600 |0187: if-eqz v0, 026d // +00e6 │ │ +434d2e: 2100 |0189: array-length v0, v0 │ │ +434d30: 3230 0400 |018a: if-eq v0, v3, 018e // +0004 │ │ +434d34: 2900 e100 |018c: goto/16 026d // +00e1 │ │ +434d38: 5410 c55f |018e: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434d3c: 7110 23be 0000 |0190: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$400:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/Object; // method@be23 │ │ +434d42: 0c03 |0193: move-result-object v3 │ │ +434d44: 1d03 |0194: monitor-enter v3 │ │ +434d46: 5410 c55f |0195: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434d4a: 7110 23be 0000 |0197: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$400:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/Object; // method@be23 │ │ +434d50: 0c00 |019a: move-result-object v0 │ │ +434d52: 1605 4c1d |019b: const-wide/16 v5, #int 7500 // #1d4c │ │ +434d56: 6e30 985c 5006 |019d: invoke-virtual {v0, v5, v6}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ +434d5c: 1e03 |01a0: monitor-exit v3 │ │ +434d5e: 5410 c55f |01a1: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434d62: 7110 24be 0000 |01a3: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be24 │ │ +434d68: 0c00 |01a6: move-result-object v0 │ │ +434d6a: 6e10 d860 0000 |01a7: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +434d70: 0a00 |01aa: move-result v0 │ │ +434d72: 3900 3900 |01ab: if-nez v0, 01e4 // +0039 │ │ +434d76: 7100 065d 0000 |01ad: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +434d7c: 0b07 |01b0: move-result-wide v7 │ │ +434d7e: 5410 c55f |01b1: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434d82: 7110 25be 0000 |01b3: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$600:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; // method@be25 │ │ +434d88: 0c00 |01b6: move-result-object v0 │ │ +434d8a: 6e10 e160 0000 |01b7: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +434d90: 0b09 |01ba: move-result-wide v9 │ │ +434d92: bc97 |01bb: sub-long/2addr v7, v9 │ │ +434d94: 3100 0705 |01bc: cmp-long v0, v7, v5 │ │ +434d98: 3d00 2500 |01be: if-lez v0, 01e3 // +0025 │ │ +434d9c: 5410 c55f |01c0: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434da0: 5400 c95f |01c2: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fc9 │ │ +434da4: 6e10 d860 0000 |01c4: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +434daa: 0a00 |01c7: move-result v0 │ │ +434dac: 3900 1b00 |01c8: if-nez v0, 01e3 // +001b │ │ +434db0: 5410 c55f |01ca: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434db4: 5400 ca5f |01cc: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ +434db8: 6e10 d860 0000 |01ce: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +434dbe: 0a00 |01d1: move-result v0 │ │ +434dc0: 3800 0300 |01d2: if-eqz v0, 01d5 // +0003 │ │ +434dc4: 280f |01d4: goto 01e3 // +000f │ │ +434dc6: 5410 c55f |01d5: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434dca: 7110 25be 0000 |01d7: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$600:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; // method@be25 │ │ +434dd0: 0c00 |01da: move-result-object v0 │ │ +434dd2: 7100 065d 0000 |01db: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +434dd8: 0b05 |01de: move-result-wide v5 │ │ +434dda: 6e30 e360 5006 |01df: invoke-virtual {v0, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +434de0: 2802 |01e2: goto 01e4 // +0002 │ │ +434de2: 0e00 |01e3: return-void │ │ +434de4: 1400 0080 0000 |01e4: const v0, #float 4.59177e-41 // #00008000 │ │ +434dea: 2300 481b |01e7: new-array v0, v0, [B // type@1b48 │ │ +434dee: 5413 c55f |01e9: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434df2: 5433 cd5f |01eb: iget-object v3, v3, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fcd │ │ +434df6: 1d03 |01ed: monitor-enter v3 │ │ +434df8: 5415 c55f |01ee: iget-object v5, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434dfc: 5455 cc5f |01f0: iget-object v5, v5, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcc │ │ +434e00: 3905 0400 |01f2: if-nez v5, 01f6 // +0004 │ │ +434e04: 1e03 |01f4: monitor-exit v3 │ │ +434e06: 0e00 |01f5: return-void │ │ +434e08: 5415 c55f |01f6: iget-object v5, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434e0c: 5455 cc5f |01f8: iget-object v5, v5, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcc │ │ +434e10: 6e10 a85b 0500 |01fa: invoke-virtual {v5}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ +434e16: 0c05 |01fd: move-result-object v5 │ │ +434e18: 5416 c55f |01fe: iget-object v6, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434e1c: 5466 d55f |0200: iget-object v6, v6, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ +434e20: 6e10 e160 0600 |0202: invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +434e26: 0b06 |0205: move-result-wide v6 │ │ +434e28: 6e30 cb5d 6507 |0206: invoke-virtual {v5, v6, v7}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcb │ │ +434e2e: 5415 c55f |0209: iget-object v5, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434e32: 5455 cc5f |020b: iget-object v5, v5, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcc │ │ +434e36: 6e20 a95b 0500 |020d: invoke-virtual {v5, v0}, Ljava/io/FileInputStream;.read:([B)I // method@5ba9 │ │ +434e3c: 0a05 |0210: move-result v5 │ │ +434e3e: 1e03 |0211: monitor-exit v3 │ │ +434e40: 3345 0c00 |0212: if-ne v5, v4, 021e // +000c │ │ +434e44: 5410 c55f |0214: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434e48: 7110 24be 0000 |0216: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be24 │ │ +434e4e: 0c00 |0219: move-result-object v0 │ │ +434e50: 6e20 da60 2000 |021a: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +434e56: 0e00 |021d: return-void │ │ +434e58: 5413 c55f |021e: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434e5c: 7110 26be 0300 |0220: invoke-static {v3}, Lorg/purple/smoke/SteamReaderFull;.access$700:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; // method@be26 │ │ +434e62: 0c03 |0223: move-result-object v3 │ │ +434e64: 8156 |0224: int-to-long v6, v5 │ │ +434e66: 6e30 e360 6307 |0225: invoke-virtual {v3, v6, v7}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +434e6c: 5413 c55f |0228: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434e70: 7110 24be 0300 |022a: invoke-static {v3}, Lorg/purple/smoke/SteamReaderFull;.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be24 │ │ +434e76: 0c03 |022d: move-result-object v3 │ │ +434e78: 6e20 da60 2300 |022e: invoke-virtual {v3, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +434e7e: 6206 c25f |0231: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ +434e82: 5413 c55f |0233: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434e86: 7110 27be 0300 |0235: invoke-static {v3}, Lorg/purple/smoke/SteamReaderFull;.access$800:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/String; // method@be27 │ │ +434e8c: 0c07 |0238: move-result-object v7 │ │ +434e8e: 5413 c55f |0239: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434e92: 7110 28be 0300 |023b: invoke-static {v3}, Lorg/purple/smoke/SteamReaderFull;.access$900:(Lorg/purple/smoke/SteamReaderFull;)[B // method@be28 │ │ +434e98: 0c08 |023e: move-result-object v8 │ │ +434e9a: 5419 c45f |023f: iget-object v9, v1, Lorg/purple/smoke/SteamReaderFull$1;.m_keyStream:[B // field@5fc4 │ │ +434e9e: 7130 b65f 2005 |0241: invoke-static {v0, v2, v5}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb6 │ │ +434ea4: 0c0a |0244: move-result-object v10 │ │ +434ea6: 6200 1a55 |0245: sget-object v0, Lorg/purple/smoke/Messages;.STEAM_SHARE:[B // field@551a │ │ +434eaa: 480b 0002 |0247: aget-byte v11, v0, v2 │ │ +434eae: 5410 c55f |0249: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434eb2: 5400 d55f |024b: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ +434eb6: 6e10 e160 0000 |024d: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +434ebc: 0b0c |0250: move-result-wide v12 │ │ +434ebe: 7708 c3bb 0600 |0251: invoke-static/range {v6, v7, v8, v9, v10, v11, v12, v13}, Lorg/purple/smoke/Messages;.steamShare:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;[B[B[BBJ)[B // method@bbc3 │ │ +434ec4: 0c00 |0254: move-result-object v0 │ │ +434ec6: 3800 2600 |0255: if-eqz v0, 027b // +0026 │ │ +434eca: 7100 0bbb 0000 |0257: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +434ed0: 0c03 |025a: move-result-object v3 │ │ +434ed2: 7110 b1bb 0000 |025b: invoke-static {v0}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb1 │ │ +434ed8: 0c00 |025e: move-result-object v0 │ │ +434eda: 6e10 bc5c 0000 |025f: invoke-virtual {v0}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434ee0: 0c00 |0262: move-result-object v0 │ │ +434ee2: 6e30 1dbb 2300 |0263: invoke-virtual {v3, v2, v0}, Lorg/purple/smoke/Kernel;.sendSteam:(Z[B)I // method@bb1d │ │ +434ee8: 2815 |0266: goto 027b // +0015 │ │ +434eea: 0d00 |0267: move-exception v0 │ │ +434eec: 1e03 |0268: monitor-exit v3 │ │ +434eee: 2700 |0269: throw v0 │ │ +434ef0: 0d00 |026a: move-exception v0 │ │ +434ef2: 1e03 |026b: monitor-exit v3 │ │ +434ef4: 2700 |026c: throw v0 │ │ +434ef6: 0e00 |026d: return-void │ │ +434ef8: 0d00 |026e: move-exception v0 │ │ +434efa: 1e03 |026f: monitor-exit v3 │ │ +434efc: 2700 |0270: throw v0 │ │ +434efe: 0e00 |0271: return-void │ │ +434f00: 5410 c55f |0272: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc5 │ │ +434f04: 7110 24be 0000 |0274: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be24 │ │ +434f0a: 0c00 |0277: move-result-object v0 │ │ +434f0c: 6e20 da60 2000 |0278: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +434f12: 0e00 |027b: return-void │ │ +434f14: 0002 0800 4bf6 60ac 2e99 acc4 2dc8 ... |027c: sparse-switch-data (34 units) │ │ +434f58: 0001 0800 0000 0000 8500 0000 7e00 ... |029e: packed-switch-data (20 units) │ │ catches : 13 │ │ 0x0003 - 0x0160 │ │ Ljava/lang/Exception; -> 0x0272 │ │ 0x0160 - 0x0169 │ │ -> 0x026e │ │ 0x0169 - 0x0195 │ │ Ljava/lang/Exception; -> 0x0272 │ │ @@ -750404,18 +750403,18 @@ │ │ type : '(Lorg/purple/smoke/SteamReaderSimple;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -4355e4: |[4355e4] org.purple.smoke.SteamReaderSimple$1.:(Lorg/purple/smoke/SteamReaderSimple;)V │ │ -4355f4: 5b01 de5f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -4355f8: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -4355fe: 0e00 |0005: return-void │ │ +4355e0: |[4355e0] org.purple.smoke.SteamReaderSimple$1.:(Lorg/purple/smoke/SteamReaderSimple;)V │ │ +4355f0: 5b01 de5f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +4355f4: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +4355fa: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=67 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/SteamReaderSimple$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/SteamReaderSimple; │ │ │ │ @@ -750425,241 +750424,241 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 13 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 464 16-bit code units │ │ -435600: |[435600] org.purple.smoke.SteamReaderSimple$1.run:()V │ │ -435610: 54c0 de5f |0000: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -435614: 5400 e05f |0002: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe0 │ │ -435618: 6e10 d860 0000 |0004: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -43561e: 0a00 |0007: move-result v0 │ │ -435620: 3800 0300 |0008: if-eqz v0, 000b // +0003 │ │ -435624: 0e00 |000a: return-void │ │ -435626: 6200 c35f |000b: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ -43562a: 54c1 de5f |000d: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -43562e: 5411 e55f |000f: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe5 │ │ -435632: 6e10 dc60 0100 |0011: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -435638: 0a01 |0014: move-result v1 │ │ -43563a: 6e20 2bba 1000 |0015: invoke-virtual {v0, v1}, Lorg/purple/smoke/Database;.steamStatus:(I)Ljava/lang/String; // method@ba2b │ │ -435640: 0c00 |0018: move-result-object v0 │ │ -435642: 6e10 cf5c 0000 |0019: invoke-virtual {v0}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@5ccf │ │ -435648: 0c00 |001c: move-result-object v0 │ │ -43564a: 6e10 d35c 0000 |001d: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -435650: 0c00 |0020: move-result-object v0 │ │ -435652: 6e10 bf5c 0000 |0021: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -435658: 0a01 |0024: move-result v1 │ │ -43565a: 1202 |0025: const/4 v2, #int 0 // #0 │ │ -43565c: 12f3 |0026: const/4 v3, #int -1 // #ff │ │ -43565e: 1214 |0027: const/4 v4, #int 1 // #1 │ │ -435660: 2c01 7801 0000 |0028: sparse-switch v1, 000001a0 // +00000178 │ │ -435666: 2847 |002b: goto 0072 // +0047 │ │ -435668: 1a01 0363 |002c: const-string v1, "deleted" // string@6303 │ │ -43566c: 6e20 b85c 1000 |002e: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -435672: 0a00 |0031: move-result v0 │ │ -435674: 3800 4000 |0032: if-eqz v0, 0072 // +0040 │ │ -435678: 1220 |0034: const/4 v0, #int 2 // #2 │ │ -43567a: 283e |0035: goto 0073 // +003e │ │ -43567c: 1a01 0000 |0036: const-string v1, "" // string@0000 │ │ -435680: 6e20 b85c 1000 |0038: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -435686: 0a00 |003b: move-result v0 │ │ -435688: 3800 3600 |003c: if-eqz v0, 0072 // +0036 │ │ -43568c: 1200 |003e: const/4 v0, #int 0 // #0 │ │ -43568e: 2834 |003f: goto 0073 // +0034 │ │ -435690: 1a01 4a98 |0040: const-string v1, "rewind & resume" // string@984a │ │ -435694: 6e20 b85c 1000 |0042: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -43569a: 0a00 |0045: move-result v0 │ │ -43569c: 3800 2c00 |0046: if-eqz v0, 0072 // +002c │ │ -4356a0: 1260 |0048: const/4 v0, #int 6 // #6 │ │ -4356a2: 282a |0049: goto 0073 // +002a │ │ -4356a4: 1a01 4998 |004a: const-string v1, "rewind" // string@9849 │ │ -4356a8: 6e20 b85c 1000 |004c: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4356ae: 0a00 |004f: move-result v0 │ │ -4356b0: 3800 2200 |0050: if-eqz v0, 0072 // +0022 │ │ -4356b4: 1250 |0052: const/4 v0, #int 5 // #5 │ │ -4356b6: 2820 |0053: goto 0073 // +0020 │ │ -4356b8: 1a01 2598 |0054: const-string v1, "resume" // string@9825 │ │ -4356bc: 6e20 b85c 1000 |0056: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4356c2: 0a00 |0059: move-result v0 │ │ -4356c4: 3800 1800 |005a: if-eqz v0, 0072 // +0018 │ │ -4356c8: 1240 |005c: const/4 v0, #int 4 // #4 │ │ -4356ca: 2816 |005d: goto 0073 // +0016 │ │ -4356cc: 1a01 2993 |005e: const-string v1, "paused" // string@9329 │ │ -4356d0: 6e20 b85c 1000 |0060: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4356d6: 0a00 |0063: move-result v0 │ │ -4356d8: 3800 0e00 |0064: if-eqz v0, 0072 // +000e │ │ -4356dc: 1230 |0066: const/4 v0, #int 3 // #3 │ │ -4356de: 280c |0067: goto 0073 // +000c │ │ -4356e0: 1a01 fb5f |0068: const-string v1, "completed" // string@5ffb │ │ -4356e4: 6e20 b85c 1000 |006a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4356ea: 0a00 |006d: move-result v0 │ │ -4356ec: 3800 0400 |006e: if-eqz v0, 0072 // +0004 │ │ -4356f0: 1210 |0070: const/4 v0, #int 1 // #1 │ │ -4356f2: 2802 |0071: goto 0073 // +0002 │ │ -4356f4: 12f0 |0072: const/4 v0, #int -1 // #ff │ │ -4356f6: 2b00 4b01 0000 |0073: packed-switch v0, 000001be // +0000014b │ │ -4356fc: 2869 |0076: goto 00df // +0069 │ │ -4356fe: 54c0 de5f |0077: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -435702: 7110 35be 0000 |0079: invoke-static {v0}, Lorg/purple/smoke/SteamReaderSimple;.access$000:(Lorg/purple/smoke/SteamReaderSimple;)V // method@be35 │ │ -435708: 6205 c35f |007c: sget-object v5, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ -43570c: 6206 c25f |007e: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ -435710: 1a07 66a5 |0080: const-string v7, "transferring" // string@a566 │ │ -435714: 1a08 0000 |0082: const-string v8, "" // string@0000 │ │ -435718: 54c0 de5f |0084: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -43571c: 5400 e55f |0086: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe5 │ │ -435720: 6e10 dc60 0000 |0088: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -435726: 0a09 |008b: move-result v9 │ │ -435728: 160a 0000 |008c: const-wide/16 v10, #int 0 // #0 │ │ -43572c: 7407 42ba 0500 |008e: invoke-virtual/range {v5, v6, v7, v8, v9, v10, v11}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ -435732: 284e |0091: goto 00df // +004e │ │ -435734: 54c0 de5f |0092: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -435738: 7110 35be 0000 |0094: invoke-static {v0}, Lorg/purple/smoke/SteamReaderSimple;.access$000:(Lorg/purple/smoke/SteamReaderSimple;)V // method@be35 │ │ -43573e: 6201 c35f |0097: sget-object v1, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ -435742: 6202 c25f |0099: sget-object v2, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ -435746: 1a03 2993 |009b: const-string v3, "paused" // string@9329 │ │ -43574a: 1a04 0000 |009d: const-string v4, "" // string@0000 │ │ -43574e: 54c0 de5f |009f: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -435752: 5400 e55f |00a1: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe5 │ │ -435756: 6e10 dc60 0000 |00a3: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -43575c: 0a05 |00a6: move-result v5 │ │ -43575e: 1606 0000 |00a7: const-wide/16 v6, #int 0 // #0 │ │ -435762: 7407 42ba 0100 |00a9: invoke-virtual/range {v1, v2, v3, v4, v5, v6, v7}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ -435768: 0e00 |00ac: return-void │ │ -43576a: 6205 c35f |00ad: sget-object v5, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ -43576e: 6206 c25f |00af: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ -435772: 1a07 66a5 |00b1: const-string v7, "transferring" // string@a566 │ │ -435776: 1a08 0000 |00b3: const-string v8, "" // string@0000 │ │ -43577a: 54c0 de5f |00b5: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -43577e: 5400 e55f |00b7: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe5 │ │ -435782: 6e10 dc60 0000 |00b9: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -435788: 0a09 |00bc: move-result v9 │ │ -43578a: 160a 0000 |00bd: const-wide/16 v10, #int 0 // #0 │ │ -43578e: 7407 42ba 0500 |00bf: invoke-virtual/range {v5, v6, v7, v8, v9, v10, v11}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ -435794: 281d |00c2: goto 00df // +001d │ │ -435796: 6200 c35f |00c3: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ -43579a: 6201 c25f |00c5: sget-object v1, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ -43579e: 1a02 0000 |00c7: const-string v2, "" // string@0000 │ │ -4357a2: 1a03 cc04 |00c9: const-string v3, "0.00 B / s" // string@04cc │ │ -4357a6: 54c4 de5f |00cb: iget-object v4, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -4357aa: 5444 e55f |00cd: iget-object v4, v4, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe5 │ │ -4357ae: 6e10 dc60 0400 |00cf: invoke-virtual {v4}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -4357b4: 0a04 |00d2: move-result v4 │ │ -4357b6: 6e54 41ba 1032 |00d3: invoke-virtual {v0, v1, v2, v3, v4}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;I)V // method@ba41 │ │ -4357bc: 0e00 |00d6: return-void │ │ -4357be: 54c0 de5f |00d7: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -4357c2: 5400 e15f |00d9: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe1 │ │ -4357c6: 6e20 da60 4000 |00db: invoke-virtual {v0, v4}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -4357cc: 0e00 |00de: return-void │ │ -4357ce: 7100 0bbb 0000 |00df: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -4357d4: 0c00 |00e2: move-result-object v0 │ │ -4357d6: 6e10 10bb 0000 |00e3: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.nextSimpleSteamOid:()I // method@bb10 │ │ -4357dc: 0a00 |00e6: move-result v0 │ │ -4357de: 54c1 de5f |00e7: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -4357e2: 5411 e55f |00e9: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe5 │ │ -4357e6: 6e10 dc60 0100 |00eb: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -4357ec: 0a01 |00ee: move-result v1 │ │ -4357ee: 3310 ad00 |00ef: if-ne v0, v1, 019c // +00ad │ │ -4357f2: 54c0 de5f |00f1: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -4357f6: 5400 e05f |00f3: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe0 │ │ -4357fa: 6e10 d860 0000 |00f5: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -435800: 0a00 |00f8: move-result v0 │ │ -435802: 3800 0400 |00f9: if-eqz v0, 00fd // +0004 │ │ -435806: 2900 a100 |00fb: goto/16 019c // +00a1 │ │ -43580a: 54c0 de5f |00fd: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -43580e: 5400 e35f |00ff: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fe3 │ │ -435812: 1d00 |0101: monitor-enter v0 │ │ -435814: 54c1 de5f |0102: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -435818: 5411 e25f |0104: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe2 │ │ -43581c: 3901 0400 |0106: if-nez v1, 010a // +0004 │ │ -435820: 1e00 |0108: monitor-exit v0 │ │ -435822: 0e00 |0109: return-void │ │ -435824: 54c1 de5f |010a: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -435828: 5411 e25f |010c: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe2 │ │ -43582c: 6e10 a85b 0100 |010e: invoke-virtual {v1}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ -435832: 0c01 |0111: move-result-object v1 │ │ -435834: 54c5 de5f |0112: iget-object v5, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -435838: 5455 e85f |0114: iget-object v5, v5, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ -43583c: 6e10 e160 0500 |0116: invoke-virtual {v5}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -435842: 0b05 |0119: move-result-wide v5 │ │ -435844: 6e30 cb5d 5106 |011a: invoke-virtual {v1, v5, v6}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcb │ │ -43584a: 1e00 |011d: monitor-exit v0 │ │ -43584c: 1300 0020 |011e: const/16 v0, #int 8192 // #2000 │ │ -435850: 2300 481b |0120: new-array v0, v0, [B // type@1b48 │ │ -435854: 54c1 de5f |0122: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -435858: 5411 e35f |0124: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fe3 │ │ -43585c: 1d01 |0126: monitor-enter v1 │ │ -43585e: 54c5 de5f |0127: iget-object v5, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -435862: 5455 e25f |0129: iget-object v5, v5, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe2 │ │ -435866: 3905 0400 |012b: if-nez v5, 012f // +0004 │ │ -43586a: 1e01 |012d: monitor-exit v1 │ │ -43586c: 0e00 |012e: return-void │ │ -43586e: 54c5 de5f |012f: iget-object v5, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -435872: 5455 e25f |0131: iget-object v5, v5, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe2 │ │ -435876: 6e20 a95b 0500 |0133: invoke-virtual {v5, v0}, Ljava/io/FileInputStream;.read:([B)I // method@5ba9 │ │ -43587c: 0a05 |0136: move-result v5 │ │ -43587e: 1e01 |0137: monitor-exit v1 │ │ -435880: 3335 2500 |0138: if-ne v5, v3, 015d // +0025 │ │ -435884: 54c0 de5f |013a: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -435888: 5400 e15f |013c: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe1 │ │ -43588c: 6e20 da60 4000 |013e: invoke-virtual {v0, v4}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -435892: 6205 c35f |0141: sget-object v5, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ -435896: 6206 c25f |0143: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ -43589a: 1a07 fb5f |0145: const-string v7, "completed" // string@5ffb │ │ -43589e: 1a08 0000 |0147: const-string v8, "" // string@0000 │ │ -4358a2: 54c0 de5f |0149: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -4358a6: 5400 e55f |014b: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe5 │ │ -4358aa: 6e10 dc60 0000 |014d: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -4358b0: 0a09 |0150: move-result v9 │ │ -4358b2: 54c0 de5f |0151: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -4358b6: 5400 e85f |0153: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ -4358ba: 6e10 e160 0000 |0155: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -4358c0: 0b0a |0158: move-result-wide v10 │ │ -4358c2: 7407 42ba 0500 |0159: invoke-virtual/range {v5, v6, v7, v8, v9, v10, v11}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ -4358c8: 0e00 |015c: return-void │ │ -4358ca: 7100 0bbb 0000 |015d: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -4358d0: 0c01 |0160: move-result-object v1 │ │ -4358d2: 7130 b65f 2005 |0161: invoke-static {v0, v2, v5}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb6 │ │ -4358d8: 0c00 |0164: move-result-object v0 │ │ -4358da: 6e30 1dbb 4100 |0165: invoke-virtual {v1, v4, v0}, Lorg/purple/smoke/Kernel;.sendSteam:(Z[B)I // method@bb1d │ │ -4358e0: 0a00 |0168: move-result v0 │ │ -4358e2: 54c1 de5f |0169: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -4358e6: 8102 |016b: int-to-long v2, v0 │ │ -4358e8: 7130 36be 2103 |016c: invoke-static {v1, v2, v3}, Lorg/purple/smoke/SteamReaderSimple;.access$100:(Lorg/purple/smoke/SteamReaderSimple;J)V // method@be36 │ │ -4358ee: 54c0 de5f |016f: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -4358f2: 5400 e85f |0171: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ -4358f6: 6e30 e060 2003 |0173: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.addAndGet:(J)J // method@60e0 │ │ -4358fc: 6204 c35f |0176: sget-object v4, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ -435900: 6205 c25f |0178: sget-object v5, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ -435904: 1a06 0000 |017a: const-string v6, "" // string@0000 │ │ -435908: 54c0 de5f |017c: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -43590c: 6e10 3bbe 0000 |017e: invoke-virtual {v0}, Lorg/purple/smoke/SteamReaderSimple;.prettyRate:()Ljava/lang/String; // method@be3b │ │ -435912: 0c07 |0181: move-result-object v7 │ │ -435914: 54c0 de5f |0182: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -435918: 5400 e55f |0184: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe5 │ │ -43591c: 6e10 dc60 0000 |0186: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -435922: 0a08 |0189: move-result v8 │ │ -435924: 54c0 de5f |018a: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ -435928: 5400 e85f |018c: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ -43592c: 6e10 e160 0000 |018e: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -435932: 0b09 |0191: move-result-wide v9 │ │ -435934: 7407 42ba 0400 |0192: invoke-virtual/range {v4, v5, v6, v7, v8, v9, v10}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ -43593a: 280a |0195: goto 019f // +000a │ │ -43593c: 0d00 |0196: move-exception v0 │ │ -43593e: 1e01 |0197: monitor-exit v1 │ │ -435940: 2700 |0198: throw v0 │ │ -435942: 0d01 |0199: move-exception v1 │ │ -435944: 1e00 |019a: monitor-exit v0 │ │ -435946: 2701 |019b: throw v1 │ │ -435948: 0e00 |019c: return-void │ │ -43594a: 0d00 |019d: move-exception v0 │ │ -43594c: 2700 |019e: throw v0 │ │ -43594e: 0e00 |019f: return-void │ │ -435950: 0002 0700 4bf6 60ac 2e99 acc4 2dc8 ... |01a0: sparse-switch-data (30 units) │ │ -43598c: 0001 0700 0000 0000 6b00 0000 6400 ... |01be: packed-switch-data (18 units) │ │ +4355fc: |[4355fc] org.purple.smoke.SteamReaderSimple$1.run:()V │ │ +43560c: 54c0 de5f |0000: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +435610: 5400 e05f |0002: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe0 │ │ +435614: 6e10 d860 0000 |0004: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +43561a: 0a00 |0007: move-result v0 │ │ +43561c: 3800 0300 |0008: if-eqz v0, 000b // +0003 │ │ +435620: 0e00 |000a: return-void │ │ +435622: 6200 c35f |000b: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ +435626: 54c1 de5f |000d: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +43562a: 5411 e55f |000f: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe5 │ │ +43562e: 6e10 dc60 0100 |0011: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +435634: 0a01 |0014: move-result v1 │ │ +435636: 6e20 2bba 1000 |0015: invoke-virtual {v0, v1}, Lorg/purple/smoke/Database;.steamStatus:(I)Ljava/lang/String; // method@ba2b │ │ +43563c: 0c00 |0018: move-result-object v0 │ │ +43563e: 6e10 cf5c 0000 |0019: invoke-virtual {v0}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@5ccf │ │ +435644: 0c00 |001c: move-result-object v0 │ │ +435646: 6e10 d35c 0000 |001d: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +43564c: 0c00 |0020: move-result-object v0 │ │ +43564e: 6e10 bf5c 0000 |0021: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +435654: 0a01 |0024: move-result v1 │ │ +435656: 1202 |0025: const/4 v2, #int 0 // #0 │ │ +435658: 12f3 |0026: const/4 v3, #int -1 // #ff │ │ +43565a: 1214 |0027: const/4 v4, #int 1 // #1 │ │ +43565c: 2c01 7801 0000 |0028: sparse-switch v1, 000001a0 // +00000178 │ │ +435662: 2847 |002b: goto 0072 // +0047 │ │ +435664: 1a01 0363 |002c: const-string v1, "deleted" // string@6303 │ │ +435668: 6e20 b85c 1000 |002e: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +43566e: 0a00 |0031: move-result v0 │ │ +435670: 3800 4000 |0032: if-eqz v0, 0072 // +0040 │ │ +435674: 1220 |0034: const/4 v0, #int 2 // #2 │ │ +435676: 283e |0035: goto 0073 // +003e │ │ +435678: 1a01 0000 |0036: const-string v1, "" // string@0000 │ │ +43567c: 6e20 b85c 1000 |0038: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +435682: 0a00 |003b: move-result v0 │ │ +435684: 3800 3600 |003c: if-eqz v0, 0072 // +0036 │ │ +435688: 1200 |003e: const/4 v0, #int 0 // #0 │ │ +43568a: 2834 |003f: goto 0073 // +0034 │ │ +43568c: 1a01 4a98 |0040: const-string v1, "rewind & resume" // string@984a │ │ +435690: 6e20 b85c 1000 |0042: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +435696: 0a00 |0045: move-result v0 │ │ +435698: 3800 2c00 |0046: if-eqz v0, 0072 // +002c │ │ +43569c: 1260 |0048: const/4 v0, #int 6 // #6 │ │ +43569e: 282a |0049: goto 0073 // +002a │ │ +4356a0: 1a01 4998 |004a: const-string v1, "rewind" // string@9849 │ │ +4356a4: 6e20 b85c 1000 |004c: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4356aa: 0a00 |004f: move-result v0 │ │ +4356ac: 3800 2200 |0050: if-eqz v0, 0072 // +0022 │ │ +4356b0: 1250 |0052: const/4 v0, #int 5 // #5 │ │ +4356b2: 2820 |0053: goto 0073 // +0020 │ │ +4356b4: 1a01 2598 |0054: const-string v1, "resume" // string@9825 │ │ +4356b8: 6e20 b85c 1000 |0056: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4356be: 0a00 |0059: move-result v0 │ │ +4356c0: 3800 1800 |005a: if-eqz v0, 0072 // +0018 │ │ +4356c4: 1240 |005c: const/4 v0, #int 4 // #4 │ │ +4356c6: 2816 |005d: goto 0073 // +0016 │ │ +4356c8: 1a01 2993 |005e: const-string v1, "paused" // string@9329 │ │ +4356cc: 6e20 b85c 1000 |0060: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4356d2: 0a00 |0063: move-result v0 │ │ +4356d4: 3800 0e00 |0064: if-eqz v0, 0072 // +000e │ │ +4356d8: 1230 |0066: const/4 v0, #int 3 // #3 │ │ +4356da: 280c |0067: goto 0073 // +000c │ │ +4356dc: 1a01 fb5f |0068: const-string v1, "completed" // string@5ffb │ │ +4356e0: 6e20 b85c 1000 |006a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4356e6: 0a00 |006d: move-result v0 │ │ +4356e8: 3800 0400 |006e: if-eqz v0, 0072 // +0004 │ │ +4356ec: 1210 |0070: const/4 v0, #int 1 // #1 │ │ +4356ee: 2802 |0071: goto 0073 // +0002 │ │ +4356f0: 12f0 |0072: const/4 v0, #int -1 // #ff │ │ +4356f2: 2b00 4b01 0000 |0073: packed-switch v0, 000001be // +0000014b │ │ +4356f8: 2869 |0076: goto 00df // +0069 │ │ +4356fa: 54c0 de5f |0077: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +4356fe: 7110 35be 0000 |0079: invoke-static {v0}, Lorg/purple/smoke/SteamReaderSimple;.access$000:(Lorg/purple/smoke/SteamReaderSimple;)V // method@be35 │ │ +435704: 6205 c35f |007c: sget-object v5, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ +435708: 6206 c25f |007e: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ +43570c: 1a07 66a5 |0080: const-string v7, "transferring" // string@a566 │ │ +435710: 1a08 0000 |0082: const-string v8, "" // string@0000 │ │ +435714: 54c0 de5f |0084: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +435718: 5400 e55f |0086: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe5 │ │ +43571c: 6e10 dc60 0000 |0088: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +435722: 0a09 |008b: move-result v9 │ │ +435724: 160a 0000 |008c: const-wide/16 v10, #int 0 // #0 │ │ +435728: 7407 42ba 0500 |008e: invoke-virtual/range {v5, v6, v7, v8, v9, v10, v11}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ +43572e: 284e |0091: goto 00df // +004e │ │ +435730: 54c0 de5f |0092: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +435734: 7110 35be 0000 |0094: invoke-static {v0}, Lorg/purple/smoke/SteamReaderSimple;.access$000:(Lorg/purple/smoke/SteamReaderSimple;)V // method@be35 │ │ +43573a: 6201 c35f |0097: sget-object v1, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ +43573e: 6202 c25f |0099: sget-object v2, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ +435742: 1a03 2993 |009b: const-string v3, "paused" // string@9329 │ │ +435746: 1a04 0000 |009d: const-string v4, "" // string@0000 │ │ +43574a: 54c0 de5f |009f: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +43574e: 5400 e55f |00a1: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe5 │ │ +435752: 6e10 dc60 0000 |00a3: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +435758: 0a05 |00a6: move-result v5 │ │ +43575a: 1606 0000 |00a7: const-wide/16 v6, #int 0 // #0 │ │ +43575e: 7407 42ba 0100 |00a9: invoke-virtual/range {v1, v2, v3, v4, v5, v6, v7}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ +435764: 0e00 |00ac: return-void │ │ +435766: 6205 c35f |00ad: sget-object v5, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ +43576a: 6206 c25f |00af: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ +43576e: 1a07 66a5 |00b1: const-string v7, "transferring" // string@a566 │ │ +435772: 1a08 0000 |00b3: const-string v8, "" // string@0000 │ │ +435776: 54c0 de5f |00b5: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +43577a: 5400 e55f |00b7: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe5 │ │ +43577e: 6e10 dc60 0000 |00b9: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +435784: 0a09 |00bc: move-result v9 │ │ +435786: 160a 0000 |00bd: const-wide/16 v10, #int 0 // #0 │ │ +43578a: 7407 42ba 0500 |00bf: invoke-virtual/range {v5, v6, v7, v8, v9, v10, v11}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ +435790: 281d |00c2: goto 00df // +001d │ │ +435792: 6200 c35f |00c3: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ +435796: 6201 c25f |00c5: sget-object v1, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ +43579a: 1a02 0000 |00c7: const-string v2, "" // string@0000 │ │ +43579e: 1a03 cc04 |00c9: const-string v3, "0.00 B / s" // string@04cc │ │ +4357a2: 54c4 de5f |00cb: iget-object v4, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +4357a6: 5444 e55f |00cd: iget-object v4, v4, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe5 │ │ +4357aa: 6e10 dc60 0400 |00cf: invoke-virtual {v4}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +4357b0: 0a04 |00d2: move-result v4 │ │ +4357b2: 6e54 41ba 1032 |00d3: invoke-virtual {v0, v1, v2, v3, v4}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;I)V // method@ba41 │ │ +4357b8: 0e00 |00d6: return-void │ │ +4357ba: 54c0 de5f |00d7: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +4357be: 5400 e15f |00d9: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe1 │ │ +4357c2: 6e20 da60 4000 |00db: invoke-virtual {v0, v4}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +4357c8: 0e00 |00de: return-void │ │ +4357ca: 7100 0bbb 0000 |00df: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +4357d0: 0c00 |00e2: move-result-object v0 │ │ +4357d2: 6e10 10bb 0000 |00e3: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.nextSimpleSteamOid:()I // method@bb10 │ │ +4357d8: 0a00 |00e6: move-result v0 │ │ +4357da: 54c1 de5f |00e7: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +4357de: 5411 e55f |00e9: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe5 │ │ +4357e2: 6e10 dc60 0100 |00eb: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +4357e8: 0a01 |00ee: move-result v1 │ │ +4357ea: 3310 ad00 |00ef: if-ne v0, v1, 019c // +00ad │ │ +4357ee: 54c0 de5f |00f1: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +4357f2: 5400 e05f |00f3: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe0 │ │ +4357f6: 6e10 d860 0000 |00f5: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +4357fc: 0a00 |00f8: move-result v0 │ │ +4357fe: 3800 0400 |00f9: if-eqz v0, 00fd // +0004 │ │ +435802: 2900 a100 |00fb: goto/16 019c // +00a1 │ │ +435806: 54c0 de5f |00fd: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +43580a: 5400 e35f |00ff: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fe3 │ │ +43580e: 1d00 |0101: monitor-enter v0 │ │ +435810: 54c1 de5f |0102: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +435814: 5411 e25f |0104: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe2 │ │ +435818: 3901 0400 |0106: if-nez v1, 010a // +0004 │ │ +43581c: 1e00 |0108: monitor-exit v0 │ │ +43581e: 0e00 |0109: return-void │ │ +435820: 54c1 de5f |010a: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +435824: 5411 e25f |010c: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe2 │ │ +435828: 6e10 a85b 0100 |010e: invoke-virtual {v1}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ +43582e: 0c01 |0111: move-result-object v1 │ │ +435830: 54c5 de5f |0112: iget-object v5, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +435834: 5455 e85f |0114: iget-object v5, v5, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ +435838: 6e10 e160 0500 |0116: invoke-virtual {v5}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +43583e: 0b05 |0119: move-result-wide v5 │ │ +435840: 6e30 cb5d 5106 |011a: invoke-virtual {v1, v5, v6}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcb │ │ +435846: 1e00 |011d: monitor-exit v0 │ │ +435848: 1300 0020 |011e: const/16 v0, #int 8192 // #2000 │ │ +43584c: 2300 481b |0120: new-array v0, v0, [B // type@1b48 │ │ +435850: 54c1 de5f |0122: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +435854: 5411 e35f |0124: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fe3 │ │ +435858: 1d01 |0126: monitor-enter v1 │ │ +43585a: 54c5 de5f |0127: iget-object v5, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +43585e: 5455 e25f |0129: iget-object v5, v5, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe2 │ │ +435862: 3905 0400 |012b: if-nez v5, 012f // +0004 │ │ +435866: 1e01 |012d: monitor-exit v1 │ │ +435868: 0e00 |012e: return-void │ │ +43586a: 54c5 de5f |012f: iget-object v5, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +43586e: 5455 e25f |0131: iget-object v5, v5, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe2 │ │ +435872: 6e20 a95b 0500 |0133: invoke-virtual {v5, v0}, Ljava/io/FileInputStream;.read:([B)I // method@5ba9 │ │ +435878: 0a05 |0136: move-result v5 │ │ +43587a: 1e01 |0137: monitor-exit v1 │ │ +43587c: 3335 2500 |0138: if-ne v5, v3, 015d // +0025 │ │ +435880: 54c0 de5f |013a: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +435884: 5400 e15f |013c: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe1 │ │ +435888: 6e20 da60 4000 |013e: invoke-virtual {v0, v4}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +43588e: 6205 c35f |0141: sget-object v5, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ +435892: 6206 c25f |0143: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ +435896: 1a07 fb5f |0145: const-string v7, "completed" // string@5ffb │ │ +43589a: 1a08 0000 |0147: const-string v8, "" // string@0000 │ │ +43589e: 54c0 de5f |0149: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +4358a2: 5400 e55f |014b: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe5 │ │ +4358a6: 6e10 dc60 0000 |014d: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +4358ac: 0a09 |0150: move-result v9 │ │ +4358ae: 54c0 de5f |0151: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +4358b2: 5400 e85f |0153: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ +4358b6: 6e10 e160 0000 |0155: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +4358bc: 0b0a |0158: move-result-wide v10 │ │ +4358be: 7407 42ba 0500 |0159: invoke-virtual/range {v5, v6, v7, v8, v9, v10, v11}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ +4358c4: 0e00 |015c: return-void │ │ +4358c6: 7100 0bbb 0000 |015d: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +4358cc: 0c01 |0160: move-result-object v1 │ │ +4358ce: 7130 b65f 2005 |0161: invoke-static {v0, v2, v5}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb6 │ │ +4358d4: 0c00 |0164: move-result-object v0 │ │ +4358d6: 6e30 1dbb 4100 |0165: invoke-virtual {v1, v4, v0}, Lorg/purple/smoke/Kernel;.sendSteam:(Z[B)I // method@bb1d │ │ +4358dc: 0a00 |0168: move-result v0 │ │ +4358de: 54c1 de5f |0169: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +4358e2: 8102 |016b: int-to-long v2, v0 │ │ +4358e4: 7130 36be 2103 |016c: invoke-static {v1, v2, v3}, Lorg/purple/smoke/SteamReaderSimple;.access$100:(Lorg/purple/smoke/SteamReaderSimple;J)V // method@be36 │ │ +4358ea: 54c0 de5f |016f: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +4358ee: 5400 e85f |0171: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ +4358f2: 6e30 e060 2003 |0173: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.addAndGet:(J)J // method@60e0 │ │ +4358f8: 6204 c35f |0176: sget-object v4, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc3 │ │ +4358fc: 6205 c25f |0178: sget-object v5, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc2 │ │ +435900: 1a06 0000 |017a: const-string v6, "" // string@0000 │ │ +435904: 54c0 de5f |017c: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +435908: 6e10 3bbe 0000 |017e: invoke-virtual {v0}, Lorg/purple/smoke/SteamReaderSimple;.prettyRate:()Ljava/lang/String; // method@be3b │ │ +43590e: 0c07 |0181: move-result-object v7 │ │ +435910: 54c0 de5f |0182: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +435914: 5400 e55f |0184: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe5 │ │ +435918: 6e10 dc60 0000 |0186: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +43591e: 0a08 |0189: move-result v8 │ │ +435920: 54c0 de5f |018a: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fde │ │ +435924: 5400 e85f |018c: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ +435928: 6e10 e160 0000 |018e: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +43592e: 0b09 |0191: move-result-wide v9 │ │ +435930: 7407 42ba 0400 |0192: invoke-virtual/range {v4, v5, v6, v7, v8, v9, v10}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ +435936: 280a |0195: goto 019f // +000a │ │ +435938: 0d00 |0196: move-exception v0 │ │ +43593a: 1e01 |0197: monitor-exit v1 │ │ +43593c: 2700 |0198: throw v0 │ │ +43593e: 0d01 |0199: move-exception v1 │ │ +435940: 1e00 |019a: monitor-exit v0 │ │ +435942: 2701 |019b: throw v1 │ │ +435944: 0e00 |019c: return-void │ │ +435946: 0d00 |019d: move-exception v0 │ │ +435948: 2700 |019e: throw v0 │ │ +43594a: 0e00 |019f: return-void │ │ +43594c: 0002 0700 4bf6 60ac 2e99 acc4 2dc8 ... |01a0: sparse-switch-data (30 units) │ │ +435988: 0001 0700 0000 0000 6b00 0000 6400 ... |01be: packed-switch-data (18 units) │ │ catches : 9 │ │ 0x0000 - 0x0102 │ │ Ljava/lang/Exception; -> 0x019f │ │ -> 0x019d │ │ 0x0102 - 0x011e │ │ -> 0x0199 │ │ 0x0120 - 0x0127 │ │ @@ -750769,18 +750768,18 @@ │ │ type : '(Lorg/purple/smoke/SteamWriter;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -4360c4: |[4360c4] org.purple.smoke.SteamWriter$1.:(Lorg/purple/smoke/SteamWriter;)V │ │ -4360d4: 5b01 eb5f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5feb │ │ -4360d8: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -4360de: 0e00 |0005: return-void │ │ +4360c0: |[4360c0] org.purple.smoke.SteamWriter$1.:(Lorg/purple/smoke/SteamWriter;)V │ │ +4360d0: 5b01 eb5f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5feb │ │ +4360d4: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +4360da: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=114 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/SteamWriter$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/SteamWriter; │ │ │ │ @@ -750790,99 +750789,99 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 13 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 158 16-bit code units │ │ -4360e0: |[4360e0] org.purple.smoke.SteamWriter$1.run:()V │ │ -4360f0: 54c0 eb5f |0000: iget-object v0, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5feb │ │ -4360f4: 7110 45be 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be45 │ │ -4360fa: 0c00 |0005: move-result-object v0 │ │ -4360fc: 6e10 ae60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/ConcurrentHashMap;.isEmpty:()Z // method@60ae │ │ -436102: 0a00 |0009: move-result v0 │ │ -436104: 3800 1b00 |000a: if-eqz v0, 0025 // +001b │ │ -436108: 54c0 eb5f |000c: iget-object v0, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5feb │ │ -43610c: 7110 46be 0000 |000e: invoke-static {v0}, Lorg/purple/smoke/SteamWriter;.access$100:(Lorg/purple/smoke/SteamWriter;)Ljava/lang/Object; // method@be46 │ │ -436112: 0c00 |0011: move-result-object v0 │ │ -436114: 1d00 |0012: monitor-enter v0 │ │ -436116: 54c1 eb5f |0013: iget-object v1, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5feb │ │ -43611a: 7110 46be 0100 |0015: invoke-static {v1}, Lorg/purple/smoke/SteamWriter;.access$100:(Lorg/purple/smoke/SteamWriter;)Ljava/lang/Object; // method@be46 │ │ -436120: 0c01 |0018: move-result-object v1 │ │ -436122: 1602 dc05 |0019: const-wide/16 v2, #int 1500 // #5dc │ │ -436126: 6e30 985c 2103 |001b: invoke-virtual {v1, v2, v3}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ -43612c: 2803 |001e: goto 0021 // +0003 │ │ -43612e: 0d01 |001f: move-exception v1 │ │ -436130: 2803 |0020: goto 0023 // +0003 │ │ -436132: 1e00 |0021: monitor-exit v0 │ │ -436134: 2803 |0022: goto 0025 // +0003 │ │ -436136: 1e00 |0023: monitor-exit v0 │ │ -436138: 2701 |0024: throw v1 │ │ -43613a: 54c0 eb5f |0025: iget-object v0, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5feb │ │ -43613e: 7110 45be 0000 |0027: invoke-static {v0}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be45 │ │ -436144: 0c00 |002a: move-result-object v0 │ │ -436146: 6e10 af60 0000 |002b: invoke-virtual {v0}, Ljava/util/concurrent/ConcurrentHashMap;.keySet:()Ljava/util/Set; // method@60af │ │ -43614c: 0c00 |002e: move-result-object v0 │ │ -43614e: 7210 7360 0000 |002f: invoke-interface {v0}, Ljava/util/Set;.iterator:()Ljava/util/Iterator; // method@6073 │ │ -436154: 0c00 |0032: move-result-object v0 │ │ -436156: 7210 1b60 0000 |0033: invoke-interface {v0}, Ljava/util/Iterator;.hasNext:()Z // method@601b │ │ -43615c: 0a01 |0036: move-result v1 │ │ -43615e: 3801 6600 |0037: if-eqz v1, 009d // +0066 │ │ -436162: 7210 1c60 0000 |0039: invoke-interface {v0}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601c │ │ -436168: 0c01 |003c: move-result-object v1 │ │ -43616a: 1f01 db0a |003d: check-cast v1, Ljava/lang/Integer; // type@0adb │ │ -43616e: 54c2 eb5f |003f: iget-object v2, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5feb │ │ -436172: 7110 45be 0200 |0041: invoke-static {v2}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be45 │ │ -436178: 0c02 |0044: move-result-object v2 │ │ -43617a: 6e20 ad60 1200 |0045: invoke-virtual {v2, v1}, Ljava/util/concurrent/ConcurrentHashMap;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@60ad │ │ -436180: 0c02 |0048: move-result-object v2 │ │ -436182: 1f02 331b |0049: check-cast v2, Lorg/purple/smoke/SteamWriter$FileInformation; // type@1b33 │ │ -436186: 3902 0c00 |004b: if-nez v2, 0057 // +000c │ │ -43618a: 54c2 eb5f |004d: iget-object v2, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5feb │ │ -43618e: 7110 45be 0200 |004f: invoke-static {v2}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be45 │ │ -436194: 0c02 |0052: move-result-object v2 │ │ -436196: 6e20 b160 1200 |0053: invoke-virtual {v2, v1}, Ljava/util/concurrent/ConcurrentHashMap;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@60b1 │ │ -43619c: 28dd |0056: goto 0033 // -0023 │ │ -43619e: 7100 48be 0000 |0057: invoke-static {}, Lorg/purple/smoke/SteamWriter;.access$300:()Lorg/purple/smoke/Database; // method@be48 │ │ -4361a4: 0c03 |005a: move-result-object v3 │ │ -4361a6: 7100 47be 0000 |005b: invoke-static {}, Lorg/purple/smoke/SteamWriter;.access$200:()Lorg/purple/smoke/Cryptography; // method@be47 │ │ -4361ac: 0c04 |005e: move-result-object v4 │ │ -4361ae: 5425 ec5f |005f: iget-object v5, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_fileIdentity:[B // field@5fec │ │ -4361b2: 6e30 28ba 4305 |0061: invoke-virtual {v3, v4, v5}, Lorg/purple/smoke/Database;.steamOidFromFileIdentity:(Lorg/purple/smoke/Cryptography;[B)I // method@ba28 │ │ -4361b8: 0a03 |0064: move-result v3 │ │ -4361ba: 7100 065d 0000 |0065: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -4361c0: 0b04 |0068: move-result-wide v4 │ │ -4361c2: 5326 ed5f |0069: iget-wide v6, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_lastStatusTimestamp:J // field@5fed │ │ -4361c6: bc64 |006b: sub-long/2addr v4, v6 │ │ -4361c8: 7120 735c 5400 |006c: invoke-static {v4, v5}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ -4361ce: 0b04 |006f: move-result-wide v4 │ │ -4361d0: 1606 983a |0070: const-wide/16 v6, #int 15000 // #3a98 │ │ -4361d4: 3108 0406 |0072: cmp-long v8, v4, v6 │ │ -4361d8: 3c08 1f00 |0074: if-gtz v8, 0093 // +001f │ │ -4361dc: 12f4 |0076: const/4 v4, #int -1 // #ff │ │ -4361de: 3343 0300 |0077: if-ne v3, v4, 007a // +0003 │ │ -4361e2: 281a |0079: goto 0093 // +001a │ │ -4361e4: 6e10 41be 0200 |007a: invoke-virtual {v2}, Lorg/purple/smoke/SteamWriter$FileInformation;.computeRate:()V // method@be41 │ │ -4361ea: 7100 48be 0000 |007d: invoke-static {}, Lorg/purple/smoke/SteamWriter;.access$300:()Lorg/purple/smoke/Database; // method@be48 │ │ -4361f0: 0c05 |0080: move-result-object v5 │ │ -4361f2: 7100 47be 0000 |0081: invoke-static {}, Lorg/purple/smoke/SteamWriter;.access$200:()Lorg/purple/smoke/Cryptography; // method@be47 │ │ -4361f8: 0c06 |0084: move-result-object v6 │ │ -4361fa: 1a07 7c96 |0085: const-string v7, "receiving" // string@967c │ │ -4361fe: 6e10 42be 0200 |0087: invoke-virtual {v2}, Lorg/purple/smoke/SteamWriter$FileInformation;.prettyRate:()Ljava/lang/String; // method@be42 │ │ -436204: 0c08 |008a: move-result-object v8 │ │ -436206: 5229 ef5f |008b: iget v9, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_oid:I // field@5fef │ │ -43620a: 532a ee5f |008d: iget-wide v10, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fee │ │ -43620e: 7407 42ba 0500 |008f: invoke-virtual/range {v5, v6, v7, v8, v9, v10, v11}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ -436214: 28a1 |0092: goto 0033 // -005f │ │ -436216: 54c2 eb5f |0093: iget-object v2, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5feb │ │ -43621a: 7110 45be 0200 |0095: invoke-static {v2}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be45 │ │ -436220: 0c02 |0098: move-result-object v2 │ │ -436222: 6e20 b160 1200 |0099: invoke-virtual {v2, v1}, Ljava/util/concurrent/ConcurrentHashMap;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@60b1 │ │ -436228: 2897 |009c: goto 0033 // -0069 │ │ -43622a: 0e00 |009d: return-void │ │ +4360dc: |[4360dc] org.purple.smoke.SteamWriter$1.run:()V │ │ +4360ec: 54c0 eb5f |0000: iget-object v0, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5feb │ │ +4360f0: 7110 45be 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be45 │ │ +4360f6: 0c00 |0005: move-result-object v0 │ │ +4360f8: 6e10 ae60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/ConcurrentHashMap;.isEmpty:()Z // method@60ae │ │ +4360fe: 0a00 |0009: move-result v0 │ │ +436100: 3800 1b00 |000a: if-eqz v0, 0025 // +001b │ │ +436104: 54c0 eb5f |000c: iget-object v0, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5feb │ │ +436108: 7110 46be 0000 |000e: invoke-static {v0}, Lorg/purple/smoke/SteamWriter;.access$100:(Lorg/purple/smoke/SteamWriter;)Ljava/lang/Object; // method@be46 │ │ +43610e: 0c00 |0011: move-result-object v0 │ │ +436110: 1d00 |0012: monitor-enter v0 │ │ +436112: 54c1 eb5f |0013: iget-object v1, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5feb │ │ +436116: 7110 46be 0100 |0015: invoke-static {v1}, Lorg/purple/smoke/SteamWriter;.access$100:(Lorg/purple/smoke/SteamWriter;)Ljava/lang/Object; // method@be46 │ │ +43611c: 0c01 |0018: move-result-object v1 │ │ +43611e: 1602 dc05 |0019: const-wide/16 v2, #int 1500 // #5dc │ │ +436122: 6e30 985c 2103 |001b: invoke-virtual {v1, v2, v3}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ +436128: 2803 |001e: goto 0021 // +0003 │ │ +43612a: 0d01 |001f: move-exception v1 │ │ +43612c: 2803 |0020: goto 0023 // +0003 │ │ +43612e: 1e00 |0021: monitor-exit v0 │ │ +436130: 2803 |0022: goto 0025 // +0003 │ │ +436132: 1e00 |0023: monitor-exit v0 │ │ +436134: 2701 |0024: throw v1 │ │ +436136: 54c0 eb5f |0025: iget-object v0, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5feb │ │ +43613a: 7110 45be 0000 |0027: invoke-static {v0}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be45 │ │ +436140: 0c00 |002a: move-result-object v0 │ │ +436142: 6e10 af60 0000 |002b: invoke-virtual {v0}, Ljava/util/concurrent/ConcurrentHashMap;.keySet:()Ljava/util/Set; // method@60af │ │ +436148: 0c00 |002e: move-result-object v0 │ │ +43614a: 7210 7360 0000 |002f: invoke-interface {v0}, Ljava/util/Set;.iterator:()Ljava/util/Iterator; // method@6073 │ │ +436150: 0c00 |0032: move-result-object v0 │ │ +436152: 7210 1b60 0000 |0033: invoke-interface {v0}, Ljava/util/Iterator;.hasNext:()Z // method@601b │ │ +436158: 0a01 |0036: move-result v1 │ │ +43615a: 3801 6600 |0037: if-eqz v1, 009d // +0066 │ │ +43615e: 7210 1c60 0000 |0039: invoke-interface {v0}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601c │ │ +436164: 0c01 |003c: move-result-object v1 │ │ +436166: 1f01 db0a |003d: check-cast v1, Ljava/lang/Integer; // type@0adb │ │ +43616a: 54c2 eb5f |003f: iget-object v2, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5feb │ │ +43616e: 7110 45be 0200 |0041: invoke-static {v2}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be45 │ │ +436174: 0c02 |0044: move-result-object v2 │ │ +436176: 6e20 ad60 1200 |0045: invoke-virtual {v2, v1}, Ljava/util/concurrent/ConcurrentHashMap;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@60ad │ │ +43617c: 0c02 |0048: move-result-object v2 │ │ +43617e: 1f02 331b |0049: check-cast v2, Lorg/purple/smoke/SteamWriter$FileInformation; // type@1b33 │ │ +436182: 3902 0c00 |004b: if-nez v2, 0057 // +000c │ │ +436186: 54c2 eb5f |004d: iget-object v2, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5feb │ │ +43618a: 7110 45be 0200 |004f: invoke-static {v2}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be45 │ │ +436190: 0c02 |0052: move-result-object v2 │ │ +436192: 6e20 b160 1200 |0053: invoke-virtual {v2, v1}, Ljava/util/concurrent/ConcurrentHashMap;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@60b1 │ │ +436198: 28dd |0056: goto 0033 // -0023 │ │ +43619a: 7100 48be 0000 |0057: invoke-static {}, Lorg/purple/smoke/SteamWriter;.access$300:()Lorg/purple/smoke/Database; // method@be48 │ │ +4361a0: 0c03 |005a: move-result-object v3 │ │ +4361a2: 7100 47be 0000 |005b: invoke-static {}, Lorg/purple/smoke/SteamWriter;.access$200:()Lorg/purple/smoke/Cryptography; // method@be47 │ │ +4361a8: 0c04 |005e: move-result-object v4 │ │ +4361aa: 5425 ec5f |005f: iget-object v5, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_fileIdentity:[B // field@5fec │ │ +4361ae: 6e30 28ba 4305 |0061: invoke-virtual {v3, v4, v5}, Lorg/purple/smoke/Database;.steamOidFromFileIdentity:(Lorg/purple/smoke/Cryptography;[B)I // method@ba28 │ │ +4361b4: 0a03 |0064: move-result v3 │ │ +4361b6: 7100 065d 0000 |0065: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +4361bc: 0b04 |0068: move-result-wide v4 │ │ +4361be: 5326 ed5f |0069: iget-wide v6, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_lastStatusTimestamp:J // field@5fed │ │ +4361c2: bc64 |006b: sub-long/2addr v4, v6 │ │ +4361c4: 7120 735c 5400 |006c: invoke-static {v4, v5}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ +4361ca: 0b04 |006f: move-result-wide v4 │ │ +4361cc: 1606 983a |0070: const-wide/16 v6, #int 15000 // #3a98 │ │ +4361d0: 3108 0406 |0072: cmp-long v8, v4, v6 │ │ +4361d4: 3c08 1f00 |0074: if-gtz v8, 0093 // +001f │ │ +4361d8: 12f4 |0076: const/4 v4, #int -1 // #ff │ │ +4361da: 3343 0300 |0077: if-ne v3, v4, 007a // +0003 │ │ +4361de: 281a |0079: goto 0093 // +001a │ │ +4361e0: 6e10 41be 0200 |007a: invoke-virtual {v2}, Lorg/purple/smoke/SteamWriter$FileInformation;.computeRate:()V // method@be41 │ │ +4361e6: 7100 48be 0000 |007d: invoke-static {}, Lorg/purple/smoke/SteamWriter;.access$300:()Lorg/purple/smoke/Database; // method@be48 │ │ +4361ec: 0c05 |0080: move-result-object v5 │ │ +4361ee: 7100 47be 0000 |0081: invoke-static {}, Lorg/purple/smoke/SteamWriter;.access$200:()Lorg/purple/smoke/Cryptography; // method@be47 │ │ +4361f4: 0c06 |0084: move-result-object v6 │ │ +4361f6: 1a07 7c96 |0085: const-string v7, "receiving" // string@967c │ │ +4361fa: 6e10 42be 0200 |0087: invoke-virtual {v2}, Lorg/purple/smoke/SteamWriter$FileInformation;.prettyRate:()Ljava/lang/String; // method@be42 │ │ +436200: 0c08 |008a: move-result-object v8 │ │ +436202: 5229 ef5f |008b: iget v9, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_oid:I // field@5fef │ │ +436206: 532a ee5f |008d: iget-wide v10, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fee │ │ +43620a: 7407 42ba 0500 |008f: invoke-virtual/range {v5, v6, v7, v8, v9, v10, v11}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ +436210: 28a1 |0092: goto 0033 // -005f │ │ +436212: 54c2 eb5f |0093: iget-object v2, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5feb │ │ +436216: 7110 45be 0200 |0095: invoke-static {v2}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be45 │ │ +43621c: 0c02 |0098: move-result-object v2 │ │ +43621e: 6e20 b160 1200 |0099: invoke-virtual {v2, v1}, Ljava/util/concurrent/ConcurrentHashMap;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@60b1 │ │ +436224: 2897 |009c: goto 0033 // -0069 │ │ +436226: 0e00 |009d: return-void │ │ catches : 4 │ │ 0x0000 - 0x0013 │ │ Ljava/lang/Exception; -> 0x009d │ │ 0x0013 - 0x001e │ │ Ljava/lang/Exception; -> 0x0021 │ │ -> 0x001f │ │ 0x0021 - 0x0024 │ │ @@ -750971,36 +750970,36 @@ │ │ type : '([BIJ)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 7 │ │ ins : 5 │ │ outs : 1 │ │ insns size : 40 16-bit code units │ │ -4362a4: |[4362a4] org.purple.smoke.SteamWriter$FileInformation.:([BIJ)V │ │ -4362b4: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ -4362ba: 12f0 |0003: const/4 v0, #int -1 // #ff │ │ -4362bc: 5920 ef5f |0004: iput v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_oid:I // field@5fef │ │ -4362c0: 1600 0000 |0006: const-wide/16 v0, #int 0 // #0 │ │ -4362c4: 5a20 ed5f |0008: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_lastStatusTimestamp:J // field@5fed │ │ -4362c8: 5a20 ee5f |000a: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fee │ │ -4362cc: 5a20 f05f |000c: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_previousOffset:J // field@5ff0 │ │ -4362d0: 5a20 f15f |000e: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff1 │ │ -4362d4: 5a20 f35f |0010: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_time0:J // field@5ff3 │ │ -4362d8: 1200 |0012: const/4 v0, #int 0 // #0 │ │ -4362da: 5f20 f25f |0013: iput-short v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_stalled:S // field@5ff2 │ │ -4362de: 5b23 ec5f |0015: iput-object v3, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_fileIdentity:[B // field@5fec │ │ -4362e2: 7100 065d 0000 |0017: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -4362e8: 0b00 |001a: move-result-wide v0 │ │ -4362ea: 5a20 ed5f |001b: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_lastStatusTimestamp:J // field@5fed │ │ -4362ee: 5a25 ee5f |001d: iput-wide v5, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fee │ │ -4362f2: 5924 ef5f |001f: iput v4, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_oid:I // field@5fef │ │ -4362f6: 7100 065d 0000 |0021: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -4362fc: 0b03 |0024: move-result-wide v3 │ │ -4362fe: 5a23 f35f |0025: iput-wide v3, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_time0:J // field@5ff3 │ │ -436302: 0e00 |0027: return-void │ │ +4362a0: |[4362a0] org.purple.smoke.SteamWriter$FileInformation.:([BIJ)V │ │ +4362b0: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ +4362b6: 12f0 |0003: const/4 v0, #int -1 // #ff │ │ +4362b8: 5920 ef5f |0004: iput v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_oid:I // field@5fef │ │ +4362bc: 1600 0000 |0006: const-wide/16 v0, #int 0 // #0 │ │ +4362c0: 5a20 ed5f |0008: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_lastStatusTimestamp:J // field@5fed │ │ +4362c4: 5a20 ee5f |000a: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fee │ │ +4362c8: 5a20 f05f |000c: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_previousOffset:J // field@5ff0 │ │ +4362cc: 5a20 f15f |000e: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff1 │ │ +4362d0: 5a20 f35f |0010: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_time0:J // field@5ff3 │ │ +4362d4: 1200 |0012: const/4 v0, #int 0 // #0 │ │ +4362d6: 5f20 f25f |0013: iput-short v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_stalled:S // field@5ff2 │ │ +4362da: 5b23 ec5f |0015: iput-object v3, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_fileIdentity:[B // field@5fec │ │ +4362de: 7100 065d 0000 |0017: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +4362e4: 0b00 |001a: move-result-wide v0 │ │ +4362e6: 5a20 ed5f |001b: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_lastStatusTimestamp:J // field@5fed │ │ +4362ea: 5a25 ee5f |001d: iput-wide v5, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fee │ │ +4362ee: 5924 ef5f |001f: iput v4, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_oid:I // field@5fef │ │ +4362f2: 7100 065d 0000 |0021: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +4362f8: 0b03 |0024: move-result-wide v3 │ │ +4362fa: 5a23 f35f |0025: iput-wide v3, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_time0:J // field@5ff3 │ │ +4362fe: 0e00 |0027: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=52 │ │ 0x0004 line=43 │ │ 0x0008 line=44 │ │ 0x000a line=45 │ │ 0x000c line=46 │ │ @@ -751024,56 +751023,56 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 12 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 72 16-bit code units │ │ -436304: |[436304] org.purple.smoke.SteamWriter$FileInformation.computeRate:()V │ │ -436314: 7100 065d 0000 |0000: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -43631a: 0b00 |0003: move-result-wide v0 │ │ -43631c: 1602 e803 |0004: const-wide/16 v2, #int 1000 // #3e8 │ │ -436320: be20 |0006: div-long/2addr v0, v2 │ │ -436322: 53b4 f35f |0007: iget-wide v4, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_time0:J // field@5ff3 │ │ -436326: bc40 |0009: sub-long/2addr v0, v4 │ │ -436328: 7120 735c 1000 |000a: invoke-static {v0, v1}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ -43632e: 0b00 |000d: move-result-wide v0 │ │ -436330: 1604 0100 |000e: const-wide/16 v4, #int 1 // #1 │ │ -436334: 3106 0004 |0010: cmp-long v6, v0, v4 │ │ -436338: 3a06 3500 |0012: if-ltz v6, 0047 // +0035 │ │ -43633c: 53b4 f15f |0014: iget-wide v4, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff1 │ │ -436340: 53b6 ee5f |0016: iget-wide v6, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fee │ │ -436344: 53b8 f05f |0018: iget-wide v8, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_previousOffset:J // field@5ff0 │ │ -436348: 9c08 0608 |001a: sub-long v8, v6, v8 │ │ -43634c: 8688 |001c: long-to-double v8, v8 │ │ -43634e: 8600 |001d: long-to-double v0, v0 │ │ -436350: 7120 2c5c 9800 |001e: invoke-static {v8, v9}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ -436356: 7120 2c5c 1000 |0021: invoke-static {v0, v1}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ -43635c: ce08 |0024: div-double/2addr v8, v0 │ │ -43635e: 8b80 |0025: double-to-long v0, v8 │ │ -436360: 5ab0 f15f |0026: iput-wide v0, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff1 │ │ -436364: 1608 0000 |0028: const-wide/16 v8, #int 0 // #0 │ │ -436368: 310a 0008 |002a: cmp-long v10, v0, v8 │ │ -43636c: 3d0a 0600 |002c: if-lez v10, 0032 // +0006 │ │ -436370: 1200 |002e: const/4 v0, #int 0 // #0 │ │ -436372: 5fb0 f25f |002f: iput-short v0, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_stalled:S // field@5ff2 │ │ -436376: 280d |0031: goto 003e // +000d │ │ -436378: 58b0 f25f |0032: iget-short v0, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_stalled:S // field@5ff2 │ │ -43637c: d801 0001 |0034: add-int/lit8 v1, v0, #int 1 // #01 │ │ -436380: 8f11 |0036: int-to-short v1, v1 │ │ -436382: 5fb1 f25f |0037: iput-short v1, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_stalled:S // field@5ff2 │ │ -436386: 1251 |0039: const/4 v1, #int 5 // #5 │ │ -436388: 3610 0400 |003a: if-gt v0, v1, 003e // +0004 │ │ -43638c: 5ab4 f15f |003c: iput-wide v4, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff1 │ │ -436390: 5ab6 f05f |003e: iput-wide v6, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_previousOffset:J // field@5ff0 │ │ -436394: 7100 065d 0000 |0040: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -43639a: 0b00 |0043: move-result-wide v0 │ │ -43639c: be20 |0044: div-long/2addr v0, v2 │ │ -43639e: 5ab0 f35f |0045: iput-wide v0, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_time0:J // field@5ff3 │ │ -4363a2: 0e00 |0047: return-void │ │ +436300: |[436300] org.purple.smoke.SteamWriter$FileInformation.computeRate:()V │ │ +436310: 7100 065d 0000 |0000: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +436316: 0b00 |0003: move-result-wide v0 │ │ +436318: 1602 e803 |0004: const-wide/16 v2, #int 1000 // #3e8 │ │ +43631c: be20 |0006: div-long/2addr v0, v2 │ │ +43631e: 53b4 f35f |0007: iget-wide v4, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_time0:J // field@5ff3 │ │ +436322: bc40 |0009: sub-long/2addr v0, v4 │ │ +436324: 7120 735c 1000 |000a: invoke-static {v0, v1}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ +43632a: 0b00 |000d: move-result-wide v0 │ │ +43632c: 1604 0100 |000e: const-wide/16 v4, #int 1 // #1 │ │ +436330: 3106 0004 |0010: cmp-long v6, v0, v4 │ │ +436334: 3a06 3500 |0012: if-ltz v6, 0047 // +0035 │ │ +436338: 53b4 f15f |0014: iget-wide v4, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff1 │ │ +43633c: 53b6 ee5f |0016: iget-wide v6, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fee │ │ +436340: 53b8 f05f |0018: iget-wide v8, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_previousOffset:J // field@5ff0 │ │ +436344: 9c08 0608 |001a: sub-long v8, v6, v8 │ │ +436348: 8688 |001c: long-to-double v8, v8 │ │ +43634a: 8600 |001d: long-to-double v0, v0 │ │ +43634c: 7120 2c5c 9800 |001e: invoke-static {v8, v9}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ +436352: 7120 2c5c 1000 |0021: invoke-static {v0, v1}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ +436358: ce08 |0024: div-double/2addr v8, v0 │ │ +43635a: 8b80 |0025: double-to-long v0, v8 │ │ +43635c: 5ab0 f15f |0026: iput-wide v0, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff1 │ │ +436360: 1608 0000 |0028: const-wide/16 v8, #int 0 // #0 │ │ +436364: 310a 0008 |002a: cmp-long v10, v0, v8 │ │ +436368: 3d0a 0600 |002c: if-lez v10, 0032 // +0006 │ │ +43636c: 1200 |002e: const/4 v0, #int 0 // #0 │ │ +43636e: 5fb0 f25f |002f: iput-short v0, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_stalled:S // field@5ff2 │ │ +436372: 280d |0031: goto 003e // +000d │ │ +436374: 58b0 f25f |0032: iget-short v0, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_stalled:S // field@5ff2 │ │ +436378: d801 0001 |0034: add-int/lit8 v1, v0, #int 1 // #01 │ │ +43637c: 8f11 |0036: int-to-short v1, v1 │ │ +43637e: 5fb1 f25f |0037: iput-short v1, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_stalled:S // field@5ff2 │ │ +436382: 1251 |0039: const/4 v1, #int 5 // #5 │ │ +436384: 3610 0400 |003a: if-gt v0, v1, 003e // +0004 │ │ +436388: 5ab4 f15f |003c: iput-wide v4, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff1 │ │ +43638c: 5ab6 f05f |003e: iput-wide v6, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_previousOffset:J // field@5ff0 │ │ +436390: 7100 065d 0000 |0040: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +436396: 0b00 |0043: move-result-wide v0 │ │ +436398: be20 |0044: div-long/2addr v0, v2 │ │ +43639a: 5ab0 f35f |0045: iput-wide v0, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_time0:J // field@5ff3 │ │ +43639e: 0e00 |0047: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=69 │ │ 0x0014 line=73 │ │ 0x0016 line=75 │ │ 0x002f line=79 │ │ 0x0032 line=80 │ │ @@ -751088,28 +751087,28 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 28 16-bit code units │ │ -43625c: |[43625c] org.purple.smoke.SteamWriter$FileInformation.prettyRate:()Ljava/lang/String; │ │ -43626c: 2200 f10a |0000: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ -436270: 7010 ee5c 0000 |0002: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -436276: 5331 f15f |0005: iget-wide v1, v3, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff1 │ │ -43627a: 7120 d65c 2100 |0007: invoke-static {v1, v2}, Ljava/lang/String;.valueOf:(J)Ljava/lang/String; // method@5cd6 │ │ -436280: 0c01 |000a: move-result-object v1 │ │ -436282: 7110 e8bb 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbe8 │ │ -436288: 0c01 |000e: move-result-object v1 │ │ -43628a: 6e20 f95c 1000 |000f: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -436290: 1a01 a800 |0012: const-string v1, " / s" // string@00a8 │ │ -436294: 6e20 f95c 1000 |0014: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43629a: 6e10 035d 0000 |0017: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4362a0: 0c00 |001a: move-result-object v0 │ │ -4362a2: 1100 |001b: return-object v0 │ │ +436258: |[436258] org.purple.smoke.SteamWriter$FileInformation.prettyRate:()Ljava/lang/String; │ │ +436268: 2200 f10a |0000: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ +43626c: 7010 ee5c 0000 |0002: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +436272: 5331 f15f |0005: iget-wide v1, v3, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff1 │ │ +436276: 7120 d65c 2100 |0007: invoke-static {v1, v2}, Ljava/lang/String;.valueOf:(J)Ljava/lang/String; // method@5cd6 │ │ +43627c: 0c01 |000a: move-result-object v1 │ │ +43627e: 7110 e8bb 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbe8 │ │ +436284: 0c01 |000e: move-result-object v1 │ │ +436286: 6e20 f95c 1000 |000f: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43628c: 1a01 a800 |0012: const-string v1, " / s" // string@00a8 │ │ +436290: 6e20 f95c 1000 |0014: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +436296: 6e10 035d 0000 |0017: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +43629c: 0c00 |001a: move-result-object v0 │ │ +43629e: 1100 |001b: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=62 │ │ 0x0007 line=63 │ │ locals : │ │ 0x0000 - 0x001c reg=3 this Lorg/purple/smoke/SteamWriter$FileInformation; │ │ │ │ @@ -751174,22 +751173,22 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 13 16-bit code units │ │ -4366d0: |[4366d0] org.purple.smoke.SteamWriter.:()V │ │ -4366e0: 7100 8db9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ -4366e6: 0c00 |0003: move-result-object v0 │ │ -4366e8: 6900 f95f |0004: sput-object v0, Lorg/purple/smoke/SteamWriter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5ff9 │ │ -4366ec: 7100 efb9 0000 |0006: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9ef │ │ -4366f2: 0c00 |0009: move-result-object v0 │ │ -4366f4: 6900 fa5f |000a: sput-object v0, Lorg/purple/smoke/SteamWriter;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5ffa │ │ -4366f8: 0e00 |000c: return-void │ │ +4366cc: |[4366cc] org.purple.smoke.SteamWriter.:()V │ │ +4366dc: 7100 8db9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ +4366e2: 0c00 |0003: move-result-object v0 │ │ +4366e4: 6900 f95f |0004: sput-object v0, Lorg/purple/smoke/SteamWriter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5ff9 │ │ +4366e8: 7100 efb9 0000 |0006: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9ef │ │ +4366ee: 0c00 |0009: move-result-object v0 │ │ +4366f0: 6900 fa5f |000a: sput-object v0, Lorg/purple/smoke/SteamWriter;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5ffa │ │ +4366f4: 0e00 |000c: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=93 │ │ 0x0006 line=94 │ │ locals : │ │ │ │ #1 : (in Lorg/purple/smoke/SteamWriter;) │ │ @@ -751197,34 +751196,34 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 41 16-bit code units │ │ -4366fc: |[4366fc] org.purple.smoke.SteamWriter.:()V │ │ -43670c: 7010 8f5c 0800 |0000: invoke-direct {v8}, Ljava/lang/Object;.:()V // method@5c8f │ │ -436712: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -436714: 5b80 f75f |0004: iput-object v0, v8, Lorg/purple/smoke/SteamWriter;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5ff7 │ │ -436718: 2200 e60a |0006: new-instance v0, Ljava/lang/Object; // type@0ae6 │ │ -43671c: 7010 8f5c 0000 |0008: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -436722: 5b80 f85f |000b: iput-object v0, v8, Lorg/purple/smoke/SteamWriter;.m_schedulerMutex:Ljava/lang/Object; // field@5ff8 │ │ -436726: 2200 d40b |000d: new-instance v0, Ljava/util/concurrent/ConcurrentHashMap; // type@0bd4 │ │ -43672a: 7010 aa60 0000 |000f: invoke-direct {v0}, Ljava/util/concurrent/ConcurrentHashMap;.:()V // method@60aa │ │ -436730: 5b80 f65f |0012: iput-object v0, v8, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff6 │ │ -436734: 7100 c660 0000 |0014: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c6 │ │ -43673a: 0c01 |0017: move-result-object v1 │ │ -43673c: 5b81 f75f |0018: iput-object v1, v8, Lorg/purple/smoke/SteamWriter;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5ff7 │ │ -436740: 2202 321b |001a: new-instance v2, Lorg/purple/smoke/SteamWriter$1; // type@1b32 │ │ -436744: 7020 3ebe 8200 |001c: invoke-direct {v2, v8}, Lorg/purple/smoke/SteamWriter$1;.:(Lorg/purple/smoke/SteamWriter;)V // method@be3e │ │ -43674a: 6207 ef2c |001f: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -43674e: 1603 dc05 |0021: const-wide/16 v3, #int 1500 // #5dc │ │ -436752: 1605 dc05 |0023: const-wide/16 v5, #int 1500 // #5dc │ │ -436756: 7807 ce60 0100 |0025: invoke-interface/range {v1, v2, v3, v4, v5, v6, v7}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ -43675c: 0e00 |0028: return-void │ │ +4366f8: |[4366f8] org.purple.smoke.SteamWriter.:()V │ │ +436708: 7010 8f5c 0800 |0000: invoke-direct {v8}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43670e: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +436710: 5b80 f75f |0004: iput-object v0, v8, Lorg/purple/smoke/SteamWriter;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5ff7 │ │ +436714: 2200 e60a |0006: new-instance v0, Ljava/lang/Object; // type@0ae6 │ │ +436718: 7010 8f5c 0000 |0008: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43671e: 5b80 f85f |000b: iput-object v0, v8, Lorg/purple/smoke/SteamWriter;.m_schedulerMutex:Ljava/lang/Object; // field@5ff8 │ │ +436722: 2200 d40b |000d: new-instance v0, Ljava/util/concurrent/ConcurrentHashMap; // type@0bd4 │ │ +436726: 7010 aa60 0000 |000f: invoke-direct {v0}, Ljava/util/concurrent/ConcurrentHashMap;.:()V // method@60aa │ │ +43672c: 5b80 f65f |0012: iput-object v0, v8, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff6 │ │ +436730: 7100 c660 0000 |0014: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c6 │ │ +436736: 0c01 |0017: move-result-object v1 │ │ +436738: 5b81 f75f |0018: iput-object v1, v8, Lorg/purple/smoke/SteamWriter;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5ff7 │ │ +43673c: 2202 321b |001a: new-instance v2, Lorg/purple/smoke/SteamWriter$1; // type@1b32 │ │ +436740: 7020 3ebe 8200 |001c: invoke-direct {v2, v8}, Lorg/purple/smoke/SteamWriter$1;.:(Lorg/purple/smoke/SteamWriter;)V // method@be3e │ │ +436746: 6207 ef2c |001f: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +43674a: 1603 dc05 |0021: const-wide/16 v3, #int 1500 // #5dc │ │ +43674e: 1605 dc05 |0023: const-wide/16 v5, #int 1500 // #5dc │ │ +436752: 7807 ce60 0100 |0025: invoke-interface/range {v1, v2, v3, v4, v5, v6, v7}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ +436758: 0e00 |0028: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=110 │ │ 0x0004 line=89 │ │ 0x0006 line=91 │ │ 0x000d line=111 │ │ 0x0014 line=112 │ │ @@ -751237,17 +751236,17 @@ │ │ type : '(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -4363dc: |[4363dc] org.purple.smoke.SteamWriter.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; │ │ -4363ec: 5400 f65f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff6 │ │ -4363f0: 1100 |0002: return-object v0 │ │ +4363d8: |[4363d8] org.purple.smoke.SteamWriter.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; │ │ +4363e8: 5400 f65f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff6 │ │ +4363ec: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=38 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamWriter; │ │ │ │ #3 : (in Lorg/purple/smoke/SteamWriter;) │ │ @@ -751255,17 +751254,17 @@ │ │ type : '(Lorg/purple/smoke/SteamWriter;)Ljava/lang/Object;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -4363c4: |[4363c4] org.purple.smoke.SteamWriter.access$100:(Lorg/purple/smoke/SteamWriter;)Ljava/lang/Object; │ │ -4363d4: 5400 f85f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamWriter;.m_schedulerMutex:Ljava/lang/Object; // field@5ff8 │ │ -4363d8: 1100 |0002: return-object v0 │ │ +4363c0: |[4363c0] org.purple.smoke.SteamWriter.access$100:(Lorg/purple/smoke/SteamWriter;)Ljava/lang/Object; │ │ +4363d0: 5400 f85f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamWriter;.m_schedulerMutex:Ljava/lang/Object; // field@5ff8 │ │ +4363d4: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=38 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamWriter; │ │ │ │ #4 : (in Lorg/purple/smoke/SteamWriter;) │ │ @@ -751273,54 +751272,54 @@ │ │ type : '()Lorg/purple/smoke/Cryptography;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -4366a0: |[4366a0] org.purple.smoke.SteamWriter.access$200:()Lorg/purple/smoke/Cryptography; │ │ -4366b0: 6200 f95f |0000: sget-object v0, Lorg/purple/smoke/SteamWriter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5ff9 │ │ -4366b4: 1100 |0002: return-object v0 │ │ +43669c: |[43669c] org.purple.smoke.SteamWriter.access$200:()Lorg/purple/smoke/Cryptography; │ │ +4366ac: 6200 f95f |0000: sget-object v0, Lorg/purple/smoke/SteamWriter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5ff9 │ │ +4366b0: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=38 │ │ locals : │ │ │ │ #5 : (in Lorg/purple/smoke/SteamWriter;) │ │ name : 'access$300' │ │ type : '()Lorg/purple/smoke/Database;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -4366b8: |[4366b8] org.purple.smoke.SteamWriter.access$300:()Lorg/purple/smoke/Database; │ │ -4366c8: 6200 fa5f |0000: sget-object v0, Lorg/purple/smoke/SteamWriter;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5ffa │ │ -4366cc: 1100 |0002: return-object v0 │ │ +4366b4: |[4366b4] org.purple.smoke.SteamWriter.access$300:()Lorg/purple/smoke/Database; │ │ +4366c4: 6200 fa5f |0000: sget-object v0, Lorg/purple/smoke/SteamWriter;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5ffa │ │ +4366c8: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=38 │ │ locals : │ │ │ │ #6 : (in Lorg/purple/smoke/SteamWriter;) │ │ name : 'removeFileInformation' │ │ type : '(I)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 10 16-bit code units │ │ -436760: |[436760] org.purple.smoke.SteamWriter.removeFileInformation:(I)V │ │ -436770: 5410 f65f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff6 │ │ -436774: 7110 605c 0200 |0002: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ -43677a: 0c02 |0005: move-result-object v2 │ │ -43677c: 6e20 b160 2000 |0006: invoke-virtual {v0, v2}, Ljava/util/concurrent/ConcurrentHashMap;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@60b1 │ │ -436782: 0e00 |0009: return-void │ │ +43675c: |[43675c] org.purple.smoke.SteamWriter.removeFileInformation:(I)V │ │ +43676c: 5410 f65f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff6 │ │ +436770: 7110 605c 0200 |0002: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ +436776: 0c02 |0005: move-result-object v2 │ │ +436778: 6e20 b160 2000 |0006: invoke-virtual {v0, v2}, Ljava/util/concurrent/ConcurrentHashMap;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@60b1 │ │ +43677e: 0e00 |0009: return-void │ │ catches : 1 │ │ 0x0000 - 0x0009 │ │ Ljava/lang/Exception; -> 0x0009 │ │ positions : │ │ 0x0000 line=102 │ │ locals : │ │ 0x0000 - 0x000a reg=1 this Lorg/purple/smoke/SteamWriter; │ │ @@ -751332,19 +751331,19 @@ │ │ type : '()I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -4363a4: |[4363a4] org.purple.smoke.SteamWriter.size:()I │ │ -4363b4: 5410 f65f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff6 │ │ -4363b8: 6e10 b260 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/ConcurrentHashMap;.size:()I // method@60b2 │ │ -4363be: 0a00 |0005: move-result v0 │ │ -4363c0: 0f00 |0006: return v0 │ │ +4363a0: |[4363a0] org.purple.smoke.SteamWriter.size:()I │ │ +4363b0: 5410 f65f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff6 │ │ +4363b4: 6e10 b260 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/ConcurrentHashMap;.size:()I // method@60b2 │ │ +4363ba: 0a00 |0005: move-result v0 │ │ +4363bc: 0f00 |0006: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=178 │ │ locals : │ │ 0x0000 - 0x0007 reg=1 this Lorg/purple/smoke/SteamWriter; │ │ │ │ #1 : (in Lorg/purple/smoke/SteamWriter;) │ │ @@ -751352,157 +751351,157 @@ │ │ type : '([B[BJ)J' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 23 │ │ ins : 5 │ │ outs : 7 │ │ insns size : 247 16-bit code units │ │ -4363f4: |[4363f4] org.purple.smoke.SteamWriter.write:([B[BJ)J │ │ -436404: 0801 1200 |0000: move-object/from16 v1, v18 │ │ -436408: 0800 1300 |0002: move-object/from16 v0, v19 │ │ -43640c: 0802 1400 |0004: move-object/from16 v2, v20 │ │ -436410: 0503 1500 |0006: move-wide/from16 v3, v21 │ │ -436414: 1605 ffff |0008: const-wide/16 v5, #int -1 // #ffff │ │ -436418: 3800 eb00 |000a: if-eqz v0, 00f5 // +00eb │ │ -43641c: 2107 |000c: array-length v7, v0 │ │ -43641e: 3807 e800 |000d: if-eqz v7, 00f5 // +00e8 │ │ -436422: 1607 0000 |000f: const-wide/16 v7, #int 0 // #0 │ │ -436426: 3109 0307 |0011: cmp-long v9, v3, v7 │ │ -43642a: 3a09 e200 |0013: if-ltz v9, 00f5 // +00e2 │ │ -43642e: 3802 e000 |0015: if-eqz v2, 00f5 // +00e0 │ │ -436432: 2129 |0017: array-length v9, v2 │ │ -436434: 3909 0400 |0018: if-nez v9, 001c // +0004 │ │ -436438: 2900 db00 |001a: goto/16 00f5 // +00db │ │ -43643c: 620a fa5f |001c: sget-object v10, Lorg/purple/smoke/SteamWriter;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5ffa │ │ -436440: 620b f95f |001e: sget-object v11, Lorg/purple/smoke/SteamWriter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5ff9 │ │ -436444: 6e30 28ba ba00 |0020: invoke-virtual {v10, v11, v0}, Lorg/purple/smoke/Database;.steamOidFromFileIdentity:(Lorg/purple/smoke/Cryptography;[B)I // method@ba28 │ │ -43644a: 0a0e |0023: move-result v14 │ │ -43644c: 12f9 |0024: const/4 v9, #int -1 // #ff │ │ -43644e: 339e 0300 |0025: if-ne v14, v9, 0028 // +0003 │ │ -436452: 1005 |0027: return-wide v5 │ │ -436454: d80c 0eff |0028: add-int/lit8 v12, v14, #int -1 // #ff │ │ -436458: 6e40 1cba bac9 |002a: invoke-virtual {v10, v11, v9, v12}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba1c │ │ -43645e: 0c09 |002d: move-result-object v9 │ │ -436460: 3909 0300 |002e: if-nez v9, 0031 // +0003 │ │ -436464: 1005 |0030: return-wide v5 │ │ -436466: 212c |0031: array-length v12, v2 │ │ -436468: 81cc |0032: int-to-long v12, v12 │ │ -43646a: bb3c |0033: add-long/2addr v12, v3 │ │ -43646c: 5397 9d5f |0034: iget-wide v7, v9, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ -436470: 3111 0c07 |0036: cmp-long v17, v12, v7 │ │ -436474: 3d11 0300 |0038: if-lez v17, 003b // +0003 │ │ -436478: 1005 |003a: return-wide v5 │ │ -43647a: 5497 a55f |003b: iget-object v7, v9, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa5 │ │ -43647e: 1a08 fb5f |003d: const-string v8, "completed" // string@5ffb │ │ -436482: 6e20 b85c 8700 |003f: invoke-virtual {v7, v8}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -436488: 0a07 |0042: move-result v7 │ │ -43648a: 3807 0b00 |0043: if-eqz v7, 004e // +000b │ │ -43648e: 6e20 f4b9 ea00 |0045: invoke-virtual {v10, v14}, Lorg/purple/smoke/Database;.isSteamLocked:(I)Z // method@b9f4 │ │ -436494: 0a07 |0048: move-result v7 │ │ -436496: 3807 0500 |0049: if-eqz v7, 004e // +0005 │ │ -43649a: 5392 9d5f |004b: iget-wide v2, v9, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ -43649e: 1002 |004d: return-wide v2 │ │ -4364a0: 1207 |004e: const/4 v7, #int 0 // #0 │ │ -4364a2: 2208 aa0a |004f: new-instance v8, Ljava/io/File; // type@0aaa │ │ -4364a6: 620c 6f00 |0051: sget-object v12, Landroid/os/Environment;.DIRECTORY_DOWNLOADS:Ljava/lang/String; // field@006f │ │ -4364aa: 7110 f304 0c00 |0053: invoke-static {v12}, Landroid/os/Environment;.getExternalStoragePublicDirectory:(Ljava/lang/String;)Ljava/io/File; // method@04f3 │ │ -4364b0: 0c0c |0056: move-result-object v12 │ │ -4364b2: 549d 9c5f |0057: iget-object v13, v9, Lorg/purple/smoke/SteamElement;.m_fileName:Ljava/lang/String; // field@5f9c │ │ -4364b6: 7030 8d5b c80d |0059: invoke-direct {v8, v12, v13}, Ljava/io/File;.:(Ljava/io/File;Ljava/lang/String;)V // method@5b8d │ │ -4364bc: 6e10 945b 0800 |005c: invoke-virtual {v8}, Ljava/io/File;.exists:()Z // method@5b94 │ │ -4364c2: 0a0c |005f: move-result v12 │ │ -4364c4: 390c 0500 |0060: if-nez v12, 0065 // +0005 │ │ -4364c8: 6e10 925b 0800 |0062: invoke-virtual {v8}, Ljava/io/File;.createNewFile:()Z // method@5b92 │ │ -4364ce: 220d bc0a |0065: new-instance v13, Ljava/io/RandomAccessFile; // type@0abc │ │ -4364d2: 1a0c ec98 |0067: const-string v12, "rwd" // string@98ec │ │ -4364d6: 7030 f05b 8d0c |0069: invoke-direct {v13, v8, v12}, Ljava/io/RandomAccessFile;.:(Ljava/io/File;Ljava/lang/String;)V // method@5bf0 │ │ -4364dc: 6e30 f25b 3d04 |006c: invoke-virtual {v13, v3, v4}, Ljava/io/RandomAccessFile;.seek:(J)V // method@5bf2 │ │ -4364e2: 6e20 f35b 2d00 |006f: invoke-virtual {v13, v2}, Ljava/io/RandomAccessFile;.write:([B)V // method@5bf3 │ │ -4364e8: 160f 0000 |0072: const-wide/16 v15, #int 0 // #0 │ │ -4364ec: 3108 030f |0074: cmp-long v8, v3, v15 │ │ -4364f0: 3908 0d00 |0076: if-nez v8, 0083 // +000d │ │ -4364f4: 6e5e 30ba ba77 |0078: invoke-virtual {v10, v11, v7, v7, v14}, Lorg/purple/smoke/Database;.writeEphemeralSteamKeys:(Lorg/purple/smoke/Cryptography;[B[BI)Z // method@ba30 │ │ -4364fa: 2808 |007b: goto 0083 // +0008 │ │ -4364fc: 0d00 |007c: move-exception v0 │ │ -4364fe: 07d7 |007d: move-object v7, v13 │ │ -436500: 2900 6900 |007e: goto/16 00e7 // +0069 │ │ -436504: 07d7 |0080: move-object v7, v13 │ │ -436506: 2900 6c00 |0081: goto/16 00ed // +006c │ │ -43650a: 2127 |0083: array-length v7, v2 │ │ -43650c: 8177 |0084: int-to-long v7, v7 │ │ -43650e: bb37 |0085: add-long/2addr v7, v3 │ │ -436510: 5395 9d5f |0086: iget-wide v5, v9, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ -436514: 3109 0705 |0088: cmp-long v9, v7, v5 │ │ -436518: 3909 1600 |008a: if-nez v9, 00a0 // +0016 │ │ -43651c: 7020 49be e100 |008c: invoke-direct {v1, v14}, Lorg/purple/smoke/SteamWriter;.removeFileInformation:(I)V // method@be49 │ │ -436522: 1a0c fb5f |008f: const-string v12, "completed" // string@5ffb │ │ -436526: 1a00 0000 |0091: const-string v0, "" // string@0000 │ │ -43652a: 2122 |0093: array-length v2, v2 │ │ -43652c: 8125 |0094: int-to-long v5, v2 │ │ -43652e: 9b0f 0305 |0095: add-long v15, v3, v5 │ │ -436532: 07d5 |0097: move-object v5, v13 │ │ -436534: 070d |0098: move-object v13, v0 │ │ -436536: 7407 42ba 0a00 |0099: invoke-virtual/range {v10, v11, v12, v13, v14, v15, v16}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ -43653c: 6e10 f15b 0500 |009c: invoke-virtual {v5}, Ljava/io/RandomAccessFile;.close:()V // method@5bf1 │ │ -436542: 1003 |009f: return-wide v3 │ │ -436544: 07d5 |00a0: move-object v5, v13 │ │ -436546: 5416 f65f |00a1: iget-object v6, v1, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff6 │ │ -43654a: 7110 605c 0e00 |00a3: invoke-static {v14}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ -436550: 0c07 |00a6: move-result-object v7 │ │ -436552: 6e20 ad60 7600 |00a7: invoke-virtual {v6, v7}, Ljava/util/concurrent/ConcurrentHashMap;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@60ad │ │ -436558: 0c06 |00aa: move-result-object v6 │ │ -43655a: 1f06 331b |00ab: check-cast v6, Lorg/purple/smoke/SteamWriter$FileInformation; // type@1b33 │ │ -43655e: 3906 0b00 |00ad: if-nez v6, 00b8 // +000b │ │ -436562: 2206 331b |00af: new-instance v6, Lorg/purple/smoke/SteamWriter$FileInformation; // type@1b33 │ │ -436566: 2122 |00b1: array-length v2, v2 │ │ -436568: 8127 |00b2: int-to-long v7, v2 │ │ -43656a: bb37 |00b3: add-long/2addr v7, v3 │ │ -43656c: 7058 40be 067e |00b4: invoke-direct {v6, v0, v14, v7, v8}, Lorg/purple/smoke/SteamWriter$FileInformation;.:([BIJ)V // method@be40 │ │ -436572: 280c |00b7: goto 00c3 // +000c │ │ -436574: 7100 065d 0000 |00b8: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -43657a: 0b07 |00bb: move-result-wide v7 │ │ -43657c: 5a67 ed5f |00bc: iput-wide v7, v6, Lorg/purple/smoke/SteamWriter$FileInformation;.m_lastStatusTimestamp:J // field@5fed │ │ -436580: 2120 |00be: array-length v0, v2 │ │ -436582: 8107 |00bf: int-to-long v7, v0 │ │ -436584: bb37 |00c0: add-long/2addr v7, v3 │ │ -436586: 5a67 ee5f |00c1: iput-wide v7, v6, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fee │ │ -43658a: 5410 f65f |00c3: iget-object v0, v1, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff6 │ │ -43658e: 7110 605c 0e00 |00c5: invoke-static {v14}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ -436594: 0c02 |00c8: move-result-object v2 │ │ -436596: 6e30 b060 2006 |00c9: invoke-virtual {v0, v2, v6}, Ljava/util/concurrent/ConcurrentHashMap;.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; // method@60b0 │ │ -43659c: 2803 |00cc: goto 00cf // +0003 │ │ -43659e: 0d00 |00cd: move-exception v0 │ │ -4365a0: 2813 |00ce: goto 00e1 // +0013 │ │ -4365a2: 5412 f85f |00cf: iget-object v2, v1, Lorg/purple/smoke/SteamWriter;.m_schedulerMutex:Ljava/lang/Object; // field@5ff8 │ │ -4365a6: 1d02 |00d1: monitor-enter v2 │ │ -4365a8: 5410 f85f |00d2: iget-object v0, v1, Lorg/purple/smoke/SteamWriter;.m_schedulerMutex:Ljava/lang/Object; // field@5ff8 │ │ -4365ac: 6e10 945c 0000 |00d4: invoke-virtual {v0}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ -4365b2: 1e02 |00d7: monitor-exit v2 │ │ -4365b4: 6e10 f15b 0500 |00d8: invoke-virtual {v5}, Ljava/io/RandomAccessFile;.close:()V // method@5bf1 │ │ -4365ba: 1003 |00db: return-wide v3 │ │ -4365bc: 0d00 |00dc: move-exception v0 │ │ -4365be: 1e02 |00dd: monitor-exit v2 │ │ -4365c0: 2700 |00de: throw v0 │ │ -4365c2: 0d00 |00df: move-exception v0 │ │ -4365c4: 07d5 |00e0: move-object v5, v13 │ │ -4365c6: 0757 |00e1: move-object v7, v5 │ │ -4365c8: 2805 |00e2: goto 00e7 // +0005 │ │ -4365ca: 07d5 |00e3: move-object v5, v13 │ │ -4365cc: 0757 |00e4: move-object v7, v5 │ │ -4365ce: 2808 |00e5: goto 00ed // +0008 │ │ -4365d0: 0d00 |00e6: move-exception v0 │ │ -4365d2: 3807 0500 |00e7: if-eqz v7, 00ec // +0005 │ │ -4365d6: 6e10 f15b 0700 |00e9: invoke-virtual {v7}, Ljava/io/RandomAccessFile;.close:()V // method@5bf1 │ │ -4365dc: 2700 |00ec: throw v0 │ │ -4365de: 3807 0500 |00ed: if-eqz v7, 00f2 // +0005 │ │ -4365e2: 6e10 f15b 0700 |00ef: invoke-virtual {v7}, Ljava/io/RandomAccessFile;.close:()V // method@5bf1 │ │ -4365e8: 1602 ffff |00f2: const-wide/16 v2, #int -1 // #ffff │ │ -4365ec: 1002 |00f4: return-wide v2 │ │ -4365ee: 0452 |00f5: move-wide v2, v5 │ │ -4365f0: 1002 |00f6: return-wide v2 │ │ +4363f0: |[4363f0] org.purple.smoke.SteamWriter.write:([B[BJ)J │ │ +436400: 0801 1200 |0000: move-object/from16 v1, v18 │ │ +436404: 0800 1300 |0002: move-object/from16 v0, v19 │ │ +436408: 0802 1400 |0004: move-object/from16 v2, v20 │ │ +43640c: 0503 1500 |0006: move-wide/from16 v3, v21 │ │ +436410: 1605 ffff |0008: const-wide/16 v5, #int -1 // #ffff │ │ +436414: 3800 eb00 |000a: if-eqz v0, 00f5 // +00eb │ │ +436418: 2107 |000c: array-length v7, v0 │ │ +43641a: 3807 e800 |000d: if-eqz v7, 00f5 // +00e8 │ │ +43641e: 1607 0000 |000f: const-wide/16 v7, #int 0 // #0 │ │ +436422: 3109 0307 |0011: cmp-long v9, v3, v7 │ │ +436426: 3a09 e200 |0013: if-ltz v9, 00f5 // +00e2 │ │ +43642a: 3802 e000 |0015: if-eqz v2, 00f5 // +00e0 │ │ +43642e: 2129 |0017: array-length v9, v2 │ │ +436430: 3909 0400 |0018: if-nez v9, 001c // +0004 │ │ +436434: 2900 db00 |001a: goto/16 00f5 // +00db │ │ +436438: 620a fa5f |001c: sget-object v10, Lorg/purple/smoke/SteamWriter;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5ffa │ │ +43643c: 620b f95f |001e: sget-object v11, Lorg/purple/smoke/SteamWriter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5ff9 │ │ +436440: 6e30 28ba ba00 |0020: invoke-virtual {v10, v11, v0}, Lorg/purple/smoke/Database;.steamOidFromFileIdentity:(Lorg/purple/smoke/Cryptography;[B)I // method@ba28 │ │ +436446: 0a0e |0023: move-result v14 │ │ +436448: 12f9 |0024: const/4 v9, #int -1 // #ff │ │ +43644a: 339e 0300 |0025: if-ne v14, v9, 0028 // +0003 │ │ +43644e: 1005 |0027: return-wide v5 │ │ +436450: d80c 0eff |0028: add-int/lit8 v12, v14, #int -1 // #ff │ │ +436454: 6e40 1cba bac9 |002a: invoke-virtual {v10, v11, v9, v12}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba1c │ │ +43645a: 0c09 |002d: move-result-object v9 │ │ +43645c: 3909 0300 |002e: if-nez v9, 0031 // +0003 │ │ +436460: 1005 |0030: return-wide v5 │ │ +436462: 212c |0031: array-length v12, v2 │ │ +436464: 81cc |0032: int-to-long v12, v12 │ │ +436466: bb3c |0033: add-long/2addr v12, v3 │ │ +436468: 5397 9d5f |0034: iget-wide v7, v9, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ +43646c: 3111 0c07 |0036: cmp-long v17, v12, v7 │ │ +436470: 3d11 0300 |0038: if-lez v17, 003b // +0003 │ │ +436474: 1005 |003a: return-wide v5 │ │ +436476: 5497 a55f |003b: iget-object v7, v9, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa5 │ │ +43647a: 1a08 fb5f |003d: const-string v8, "completed" // string@5ffb │ │ +43647e: 6e20 b85c 8700 |003f: invoke-virtual {v7, v8}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +436484: 0a07 |0042: move-result v7 │ │ +436486: 3807 0b00 |0043: if-eqz v7, 004e // +000b │ │ +43648a: 6e20 f4b9 ea00 |0045: invoke-virtual {v10, v14}, Lorg/purple/smoke/Database;.isSteamLocked:(I)Z // method@b9f4 │ │ +436490: 0a07 |0048: move-result v7 │ │ +436492: 3807 0500 |0049: if-eqz v7, 004e // +0005 │ │ +436496: 5392 9d5f |004b: iget-wide v2, v9, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ +43649a: 1002 |004d: return-wide v2 │ │ +43649c: 1207 |004e: const/4 v7, #int 0 // #0 │ │ +43649e: 2208 aa0a |004f: new-instance v8, Ljava/io/File; // type@0aaa │ │ +4364a2: 620c 6f00 |0051: sget-object v12, Landroid/os/Environment;.DIRECTORY_DOWNLOADS:Ljava/lang/String; // field@006f │ │ +4364a6: 7110 f304 0c00 |0053: invoke-static {v12}, Landroid/os/Environment;.getExternalStoragePublicDirectory:(Ljava/lang/String;)Ljava/io/File; // method@04f3 │ │ +4364ac: 0c0c |0056: move-result-object v12 │ │ +4364ae: 549d 9c5f |0057: iget-object v13, v9, Lorg/purple/smoke/SteamElement;.m_fileName:Ljava/lang/String; // field@5f9c │ │ +4364b2: 7030 8d5b c80d |0059: invoke-direct {v8, v12, v13}, Ljava/io/File;.:(Ljava/io/File;Ljava/lang/String;)V // method@5b8d │ │ +4364b8: 6e10 945b 0800 |005c: invoke-virtual {v8}, Ljava/io/File;.exists:()Z // method@5b94 │ │ +4364be: 0a0c |005f: move-result v12 │ │ +4364c0: 390c 0500 |0060: if-nez v12, 0065 // +0005 │ │ +4364c4: 6e10 925b 0800 |0062: invoke-virtual {v8}, Ljava/io/File;.createNewFile:()Z // method@5b92 │ │ +4364ca: 220d bc0a |0065: new-instance v13, Ljava/io/RandomAccessFile; // type@0abc │ │ +4364ce: 1a0c ec98 |0067: const-string v12, "rwd" // string@98ec │ │ +4364d2: 7030 f05b 8d0c |0069: invoke-direct {v13, v8, v12}, Ljava/io/RandomAccessFile;.:(Ljava/io/File;Ljava/lang/String;)V // method@5bf0 │ │ +4364d8: 6e30 f25b 3d04 |006c: invoke-virtual {v13, v3, v4}, Ljava/io/RandomAccessFile;.seek:(J)V // method@5bf2 │ │ +4364de: 6e20 f35b 2d00 |006f: invoke-virtual {v13, v2}, Ljava/io/RandomAccessFile;.write:([B)V // method@5bf3 │ │ +4364e4: 160f 0000 |0072: const-wide/16 v15, #int 0 // #0 │ │ +4364e8: 3108 030f |0074: cmp-long v8, v3, v15 │ │ +4364ec: 3908 0d00 |0076: if-nez v8, 0083 // +000d │ │ +4364f0: 6e5e 30ba ba77 |0078: invoke-virtual {v10, v11, v7, v7, v14}, Lorg/purple/smoke/Database;.writeEphemeralSteamKeys:(Lorg/purple/smoke/Cryptography;[B[BI)Z // method@ba30 │ │ +4364f6: 2808 |007b: goto 0083 // +0008 │ │ +4364f8: 0d00 |007c: move-exception v0 │ │ +4364fa: 07d7 |007d: move-object v7, v13 │ │ +4364fc: 2900 6900 |007e: goto/16 00e7 // +0069 │ │ +436500: 07d7 |0080: move-object v7, v13 │ │ +436502: 2900 6c00 |0081: goto/16 00ed // +006c │ │ +436506: 2127 |0083: array-length v7, v2 │ │ +436508: 8177 |0084: int-to-long v7, v7 │ │ +43650a: bb37 |0085: add-long/2addr v7, v3 │ │ +43650c: 5395 9d5f |0086: iget-wide v5, v9, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9d │ │ +436510: 3109 0705 |0088: cmp-long v9, v7, v5 │ │ +436514: 3909 1600 |008a: if-nez v9, 00a0 // +0016 │ │ +436518: 7020 49be e100 |008c: invoke-direct {v1, v14}, Lorg/purple/smoke/SteamWriter;.removeFileInformation:(I)V // method@be49 │ │ +43651e: 1a0c fb5f |008f: const-string v12, "completed" // string@5ffb │ │ +436522: 1a00 0000 |0091: const-string v0, "" // string@0000 │ │ +436526: 2122 |0093: array-length v2, v2 │ │ +436528: 8125 |0094: int-to-long v5, v2 │ │ +43652a: 9b0f 0305 |0095: add-long v15, v3, v5 │ │ +43652e: 07d5 |0097: move-object v5, v13 │ │ +436530: 070d |0098: move-object v13, v0 │ │ +436532: 7407 42ba 0a00 |0099: invoke-virtual/range {v10, v11, v12, v13, v14, v15, v16}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ +436538: 6e10 f15b 0500 |009c: invoke-virtual {v5}, Ljava/io/RandomAccessFile;.close:()V // method@5bf1 │ │ +43653e: 1003 |009f: return-wide v3 │ │ +436540: 07d5 |00a0: move-object v5, v13 │ │ +436542: 5416 f65f |00a1: iget-object v6, v1, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff6 │ │ +436546: 7110 605c 0e00 |00a3: invoke-static {v14}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ +43654c: 0c07 |00a6: move-result-object v7 │ │ +43654e: 6e20 ad60 7600 |00a7: invoke-virtual {v6, v7}, Ljava/util/concurrent/ConcurrentHashMap;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@60ad │ │ +436554: 0c06 |00aa: move-result-object v6 │ │ +436556: 1f06 331b |00ab: check-cast v6, Lorg/purple/smoke/SteamWriter$FileInformation; // type@1b33 │ │ +43655a: 3906 0b00 |00ad: if-nez v6, 00b8 // +000b │ │ +43655e: 2206 331b |00af: new-instance v6, Lorg/purple/smoke/SteamWriter$FileInformation; // type@1b33 │ │ +436562: 2122 |00b1: array-length v2, v2 │ │ +436564: 8127 |00b2: int-to-long v7, v2 │ │ +436566: bb37 |00b3: add-long/2addr v7, v3 │ │ +436568: 7058 40be 067e |00b4: invoke-direct {v6, v0, v14, v7, v8}, Lorg/purple/smoke/SteamWriter$FileInformation;.:([BIJ)V // method@be40 │ │ +43656e: 280c |00b7: goto 00c3 // +000c │ │ +436570: 7100 065d 0000 |00b8: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +436576: 0b07 |00bb: move-result-wide v7 │ │ +436578: 5a67 ed5f |00bc: iput-wide v7, v6, Lorg/purple/smoke/SteamWriter$FileInformation;.m_lastStatusTimestamp:J // field@5fed │ │ +43657c: 2120 |00be: array-length v0, v2 │ │ +43657e: 8107 |00bf: int-to-long v7, v0 │ │ +436580: bb37 |00c0: add-long/2addr v7, v3 │ │ +436582: 5a67 ee5f |00c1: iput-wide v7, v6, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fee │ │ +436586: 5410 f65f |00c3: iget-object v0, v1, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff6 │ │ +43658a: 7110 605c 0e00 |00c5: invoke-static {v14}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ +436590: 0c02 |00c8: move-result-object v2 │ │ +436592: 6e30 b060 2006 |00c9: invoke-virtual {v0, v2, v6}, Ljava/util/concurrent/ConcurrentHashMap;.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; // method@60b0 │ │ +436598: 2803 |00cc: goto 00cf // +0003 │ │ +43659a: 0d00 |00cd: move-exception v0 │ │ +43659c: 2813 |00ce: goto 00e1 // +0013 │ │ +43659e: 5412 f85f |00cf: iget-object v2, v1, Lorg/purple/smoke/SteamWriter;.m_schedulerMutex:Ljava/lang/Object; // field@5ff8 │ │ +4365a2: 1d02 |00d1: monitor-enter v2 │ │ +4365a4: 5410 f85f |00d2: iget-object v0, v1, Lorg/purple/smoke/SteamWriter;.m_schedulerMutex:Ljava/lang/Object; // field@5ff8 │ │ +4365a8: 6e10 945c 0000 |00d4: invoke-virtual {v0}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ +4365ae: 1e02 |00d7: monitor-exit v2 │ │ +4365b0: 6e10 f15b 0500 |00d8: invoke-virtual {v5}, Ljava/io/RandomAccessFile;.close:()V // method@5bf1 │ │ +4365b6: 1003 |00db: return-wide v3 │ │ +4365b8: 0d00 |00dc: move-exception v0 │ │ +4365ba: 1e02 |00dd: monitor-exit v2 │ │ +4365bc: 2700 |00de: throw v0 │ │ +4365be: 0d00 |00df: move-exception v0 │ │ +4365c0: 07d5 |00e0: move-object v5, v13 │ │ +4365c2: 0757 |00e1: move-object v7, v5 │ │ +4365c4: 2805 |00e2: goto 00e7 // +0005 │ │ +4365c6: 07d5 |00e3: move-object v5, v13 │ │ +4365c8: 0757 |00e4: move-object v7, v5 │ │ +4365ca: 2808 |00e5: goto 00ed // +0008 │ │ +4365cc: 0d00 |00e6: move-exception v0 │ │ +4365ce: 3807 0500 |00e7: if-eqz v7, 00ec // +0005 │ │ +4365d2: 6e10 f15b 0700 |00e9: invoke-virtual {v7}, Ljava/io/RandomAccessFile;.close:()V // method@5bf1 │ │ +4365d8: 2700 |00ec: throw v0 │ │ +4365da: 3807 0500 |00ed: if-eqz v7, 00f2 // +0005 │ │ +4365de: 6e10 f15b 0700 |00ef: invoke-virtual {v7}, Ljava/io/RandomAccessFile;.close:()V // method@5bf1 │ │ +4365e4: 1602 ffff |00f2: const-wide/16 v2, #int -1 // #ffff │ │ +4365e8: 1002 |00f4: return-wide v2 │ │ +4365ea: 0452 |00f5: move-wide v2, v5 │ │ +4365ec: 1002 |00f6: return-wide v2 │ │ catches : 14 │ │ 0x004f - 0x006c │ │ Ljava/lang/Exception; -> 0x00ed │ │ -> 0x00e6 │ │ 0x006c - 0x0072 │ │ Ljava/lang/Exception; -> 0x00e3 │ │ -> 0x00df │ │ @@ -751616,20 +751615,20 @@ │ │ type : '(Lorg/purple/smoke/TcpNeighbor;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 9 16-bit code units │ │ -437610: |[437610] org.purple.smoke.TcpNeighbor$1.:(Lorg/purple/smoke/TcpNeighbor;)V │ │ -437620: 5b01 fc5f |0000: iput-object v1, v0, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -437624: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43762a: 1201 |0005: const/4 v1, #int 0 // #0 │ │ -43762c: 5c01 fb5f |0006: iput-boolean v1, v0, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffb │ │ -437630: 0e00 |0008: return-void │ │ +43760c: |[43760c] org.purple.smoke.TcpNeighbor$1.:(Lorg/purple/smoke/TcpNeighbor;)V │ │ +43761c: 5b01 fc5f |0000: iput-object v1, v0, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +437620: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +437626: 1201 |0005: const/4 v1, #int 0 // #0 │ │ +437628: 5c01 fb5f |0006: iput-boolean v1, v0, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffb │ │ +43762c: 0e00 |0008: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=287 │ │ 0x0006 line=288 │ │ locals : │ │ 0x0000 - 0x0009 reg=0 this Lorg/purple/smoke/TcpNeighbor$1; │ │ 0x0000 - 0x0009 reg=1 (null) Lorg/purple/smoke/TcpNeighbor; │ │ @@ -751640,139 +751639,139 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 230 16-bit code units │ │ -437634: |[437634] org.purple.smoke.TcpNeighbor$1.run:()V │ │ -437644: 1210 |0000: const/4 v0, #int 1 // #1 │ │ -437646: 5481 fc5f |0001: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -43764a: 6e10 52be 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be52 │ │ -437650: 0a01 |0006: move-result v1 │ │ -437652: 3901 2100 |0007: if-nez v1, 0028 // +0021 │ │ -437656: 5481 fc5f |0009: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -43765a: 5411 0160 |000b: iget-object v1, v1, Lorg/purple/smoke/TcpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6001 │ │ -43765e: 6e10 d860 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -437664: 0a01 |0010: move-result v1 │ │ -437666: 3901 1700 |0011: if-nez v1, 0028 // +0017 │ │ -43766a: 5481 fc5f |0013: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -43766e: 5411 0660 |0015: iget-object v1, v1, Lorg/purple/smoke/TcpNeighbor;.m_mutex:Ljava/lang/Object; // field@6006 │ │ -437672: 1d01 |0017: monitor-enter v1 │ │ -437674: 5482 fc5f |0018: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -437678: 5422 0660 |001a: iget-object v2, v2, Lorg/purple/smoke/TcpNeighbor;.m_mutex:Ljava/lang/Object; // field@6006 │ │ -43767c: 1603 1027 |001c: const-wide/16 v3, #int 10000 // #2710 │ │ -437680: 6e30 985c 3204 |001e: invoke-virtual {v2, v3, v4}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ -437686: 2803 |0021: goto 0024 // +0003 │ │ -437688: 0d02 |0022: move-exception v2 │ │ -43768a: 2803 |0023: goto 0026 // +0003 │ │ -43768c: 1e01 |0024: monitor-exit v1 │ │ -43768e: 2803 |0025: goto 0028 // +0003 │ │ -437690: 1e01 |0026: monitor-exit v1 │ │ -437692: 2702 |0027: throw v2 │ │ -437694: 5481 fc5f |0028: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -437698: 6e10 52be 0100 |002a: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be52 │ │ -43769e: 0a01 |002d: move-result v1 │ │ -4376a0: 3801 a800 |002e: if-eqz v1, 00d6 // +00a8 │ │ -4376a4: 5481 fc5f |0030: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -4376a8: 5411 0160 |0032: iget-object v1, v1, Lorg/purple/smoke/TcpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6001 │ │ -4376ac: 6e10 d860 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -4376b2: 0a01 |0037: move-result v1 │ │ -4376b4: 3801 0400 |0038: if-eqz v1, 003c // +0004 │ │ -4376b8: 2900 9c00 |003a: goto/16 00d6 // +009c │ │ -4376bc: 5581 fb5f |003c: iget-boolean v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffb │ │ -4376c0: 1202 |003e: const/4 v2, #int 0 // #0 │ │ -4376c2: 3801 0e00 |003f: if-eqz v1, 004d // +000e │ │ -4376c6: 5481 fc5f |0041: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -4376ca: 6e10 52be 0100 |0043: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be52 │ │ -4376d0: 0a01 |0046: move-result v1 │ │ -4376d2: 3801 0500 |0047: if-eqz v1, 004c // +0005 │ │ -4376d6: 5c82 fb5f |0049: iput-boolean v2, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffb │ │ -4376da: 2818 |004b: goto 0063 // +0018 │ │ -4376dc: 0e00 |004c: return-void │ │ -4376de: 5481 fc5f |004d: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -4376e2: 7110 50be 0100 |004f: invoke-static {v1}, Lorg/purple/smoke/TcpNeighbor;.access$000:(Lorg/purple/smoke/TcpNeighbor;)Ljava/net/Socket; // method@be50 │ │ -4376e8: 0c01 |0052: move-result-object v1 │ │ -4376ea: 3801 8300 |0053: if-eqz v1, 00d6 // +0083 │ │ -4376ee: 5481 fc5f |0055: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -4376f2: 7110 50be 0100 |0057: invoke-static {v1}, Lorg/purple/smoke/TcpNeighbor;.access$000:(Lorg/purple/smoke/TcpNeighbor;)Ljava/net/Socket; // method@be50 │ │ -4376f8: 0c01 |005a: move-result-object v1 │ │ -4376fa: 6e10 a45d 0100 |005b: invoke-virtual {v1}, Ljava/net/Socket;.getInputStream:()Ljava/io/InputStream; // method@5da4 │ │ -437700: 0c01 |005e: move-result-object v1 │ │ -437702: 3901 0400 |005f: if-nez v1, 0063 // +0004 │ │ -437706: 2900 7500 |0061: goto/16 00d6 // +0075 │ │ -43770a: 1501 1000 |0063: const/high16 v1, #int 1048576 // #10 │ │ -43770e: 2311 481b |0065: new-array v1, v1, [B // type@1b48 │ │ -437712: 5483 fc5f |0067: iget-object v3, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -437716: 7110 50be 0300 |0069: invoke-static {v3}, Lorg/purple/smoke/TcpNeighbor;.access$000:(Lorg/purple/smoke/TcpNeighbor;)Ljava/net/Socket; // method@be50 │ │ -43771c: 0c03 |006c: move-result-object v3 │ │ -43771e: 6e10 a45d 0300 |006d: invoke-virtual {v3}, Ljava/net/Socket;.getInputStream:()Ljava/io/InputStream; // method@5da4 │ │ -437724: 0c03 |0070: move-result-object v3 │ │ -437726: 6e20 c15b 1300 |0071: invoke-virtual {v3, v1}, Ljava/io/InputStream;.read:([B)I // method@5bc1 │ │ -43772c: 0a03 |0074: move-result v3 │ │ -43772e: 2806 |0075: goto 007b // +0006 │ │ -437730: 5c80 fb5f |0076: iput-boolean v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffb │ │ -437734: 2802 |0078: goto 007a // +0002 │ │ -437736: 0000 |0079: nop // spacer │ │ -437738: 1203 |007a: const/4 v3, #int 0 // #0 │ │ -43773a: 8133 |007b: int-to-long v3, v3 │ │ -43773c: 1605 0000 |007c: const-wide/16 v5, #int 0 // #0 │ │ -437740: 3107 0305 |007e: cmp-long v7, v3, v5 │ │ -437744: 3a07 4800 |0080: if-ltz v7, 00c8 // +0048 │ │ -437748: 5587 fb5f |0082: iget-boolean v7, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffb │ │ -43774c: 3807 0300 |0084: if-eqz v7, 0087 // +0003 │ │ -437750: 2842 |0086: goto 00c8 // +0042 │ │ -437752: 3107 0305 |0087: cmp-long v7, v3, v5 │ │ -437756: 3907 0300 |0089: if-nez v7, 008c // +0003 │ │ -43775a: 0e00 |008b: return-void │ │ -43775c: 5485 fc5f |008c: iget-object v5, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -437760: 5455 fe5f |008e: iget-object v5, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@5ffe │ │ -437764: 6e30 e260 3504 |0090: invoke-virtual {v5, v3, v4}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e2 │ │ -43776a: 5485 fc5f |0093: iget-object v5, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -43776e: 5455 0560 |0095: iget-object v5, v5, Lorg/purple/smoke/TcpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6005 │ │ -437772: 7100 0b5d 0000 |0097: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -437778: 0b06 |009a: move-result-wide v6 │ │ -43777a: 6e30 e360 6507 |009b: invoke-virtual {v5, v6, v7}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -437780: 5485 fc5f |009e: iget-object v5, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -437784: 5455 1060 |00a0: iget-object v5, v5, Lorg/purple/smoke/TcpNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6010 │ │ -437788: 6e10 e85c 0500 |00a2: invoke-virtual {v5}, Ljava/lang/StringBuffer;.length:()I // method@5ce8 │ │ -43778e: 0a05 |00a5: move-result v5 │ │ -437790: 1506 8000 |00a6: const/high16 v6, #int 8388608 // #80 │ │ -437794: 3565 0f00 |00a8: if-ge v5, v6, 00b7 // +000f │ │ -437798: 5485 fc5f |00aa: iget-object v5, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -43779c: 5455 1060 |00ac: iget-object v5, v5, Lorg/purple/smoke/TcpNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6010 │ │ -4377a0: 2206 ef0a |00ae: new-instance v6, Ljava/lang/String; // type@0aef │ │ -4377a4: 8434 |00b0: long-to-int v4, v3 │ │ -4377a6: 7040 ad5c 1642 |00b1: invoke-direct {v6, v1, v2, v4}, Ljava/lang/String;.:([BII)V // method@5cad │ │ -4377ac: 6e20 e05c 6500 |00b4: invoke-virtual {v5, v6}, Ljava/lang/StringBuffer;.append:(Ljava/lang/String;)Ljava/lang/StringBuffer; // method@5ce0 │ │ -4377b2: 5481 fc5f |00b7: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -4377b6: 5411 0760 |00b9: iget-object v1, v1, Lorg/purple/smoke/TcpNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6007 │ │ -4377ba: 1d01 |00bb: monitor-enter v1 │ │ -4377bc: 5482 fc5f |00bc: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -4377c0: 5422 0760 |00be: iget-object v2, v2, Lorg/purple/smoke/TcpNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6007 │ │ -4377c4: 6e10 945c 0200 |00c0: invoke-virtual {v2}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ -4377ca: 1e01 |00c3: monitor-exit v1 │ │ -4377cc: 2821 |00c4: goto 00e5 // +0021 │ │ -4377ce: 0d02 |00c5: move-exception v2 │ │ -4377d0: 1e01 |00c6: monitor-exit v1 │ │ -4377d2: 2702 |00c7: throw v2 │ │ -4377d4: 5c80 fb5f |00c8: iput-boolean v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffb │ │ -4377d8: 5481 fc5f |00ca: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -4377dc: 1a02 1009 |00cc: const-string v2, "A socket read() error occurred." // string@0910 │ │ -4377e0: 6e20 5dbe 2100 |00ce: invoke-virtual {v1, v2}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be5d │ │ -4377e6: 5481 fc5f |00d1: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -4377ea: 6e10 53be 0100 |00d3: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be53 │ │ -4377f0: 0e00 |00d6: return-void │ │ -4377f2: 5c80 fb5f |00d7: iput-boolean v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffb │ │ -4377f6: 5480 fc5f |00d9: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -4377fa: 1a01 0f09 |00db: const-string v1, "A socket error occurred while reading data." // string@090f │ │ -4377fe: 6e20 5dbe 1000 |00dd: invoke-virtual {v0, v1}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be5d │ │ -437804: 5480 fc5f |00e0: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ -437808: 6e10 53be 0000 |00e2: invoke-virtual {v0}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be53 │ │ -43780e: 0e00 |00e5: return-void │ │ +437630: |[437630] org.purple.smoke.TcpNeighbor$1.run:()V │ │ +437640: 1210 |0000: const/4 v0, #int 1 // #1 │ │ +437642: 5481 fc5f |0001: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +437646: 6e10 52be 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be52 │ │ +43764c: 0a01 |0006: move-result v1 │ │ +43764e: 3901 2100 |0007: if-nez v1, 0028 // +0021 │ │ +437652: 5481 fc5f |0009: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +437656: 5411 0160 |000b: iget-object v1, v1, Lorg/purple/smoke/TcpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6001 │ │ +43765a: 6e10 d860 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +437660: 0a01 |0010: move-result v1 │ │ +437662: 3901 1700 |0011: if-nez v1, 0028 // +0017 │ │ +437666: 5481 fc5f |0013: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +43766a: 5411 0660 |0015: iget-object v1, v1, Lorg/purple/smoke/TcpNeighbor;.m_mutex:Ljava/lang/Object; // field@6006 │ │ +43766e: 1d01 |0017: monitor-enter v1 │ │ +437670: 5482 fc5f |0018: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +437674: 5422 0660 |001a: iget-object v2, v2, Lorg/purple/smoke/TcpNeighbor;.m_mutex:Ljava/lang/Object; // field@6006 │ │ +437678: 1603 1027 |001c: const-wide/16 v3, #int 10000 // #2710 │ │ +43767c: 6e30 985c 3204 |001e: invoke-virtual {v2, v3, v4}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ +437682: 2803 |0021: goto 0024 // +0003 │ │ +437684: 0d02 |0022: move-exception v2 │ │ +437686: 2803 |0023: goto 0026 // +0003 │ │ +437688: 1e01 |0024: monitor-exit v1 │ │ +43768a: 2803 |0025: goto 0028 // +0003 │ │ +43768c: 1e01 |0026: monitor-exit v1 │ │ +43768e: 2702 |0027: throw v2 │ │ +437690: 5481 fc5f |0028: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +437694: 6e10 52be 0100 |002a: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be52 │ │ +43769a: 0a01 |002d: move-result v1 │ │ +43769c: 3801 a800 |002e: if-eqz v1, 00d6 // +00a8 │ │ +4376a0: 5481 fc5f |0030: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +4376a4: 5411 0160 |0032: iget-object v1, v1, Lorg/purple/smoke/TcpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6001 │ │ +4376a8: 6e10 d860 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +4376ae: 0a01 |0037: move-result v1 │ │ +4376b0: 3801 0400 |0038: if-eqz v1, 003c // +0004 │ │ +4376b4: 2900 9c00 |003a: goto/16 00d6 // +009c │ │ +4376b8: 5581 fb5f |003c: iget-boolean v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffb │ │ +4376bc: 1202 |003e: const/4 v2, #int 0 // #0 │ │ +4376be: 3801 0e00 |003f: if-eqz v1, 004d // +000e │ │ +4376c2: 5481 fc5f |0041: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +4376c6: 6e10 52be 0100 |0043: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be52 │ │ +4376cc: 0a01 |0046: move-result v1 │ │ +4376ce: 3801 0500 |0047: if-eqz v1, 004c // +0005 │ │ +4376d2: 5c82 fb5f |0049: iput-boolean v2, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffb │ │ +4376d6: 2818 |004b: goto 0063 // +0018 │ │ +4376d8: 0e00 |004c: return-void │ │ +4376da: 5481 fc5f |004d: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +4376de: 7110 50be 0100 |004f: invoke-static {v1}, Lorg/purple/smoke/TcpNeighbor;.access$000:(Lorg/purple/smoke/TcpNeighbor;)Ljava/net/Socket; // method@be50 │ │ +4376e4: 0c01 |0052: move-result-object v1 │ │ +4376e6: 3801 8300 |0053: if-eqz v1, 00d6 // +0083 │ │ +4376ea: 5481 fc5f |0055: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +4376ee: 7110 50be 0100 |0057: invoke-static {v1}, Lorg/purple/smoke/TcpNeighbor;.access$000:(Lorg/purple/smoke/TcpNeighbor;)Ljava/net/Socket; // method@be50 │ │ +4376f4: 0c01 |005a: move-result-object v1 │ │ +4376f6: 6e10 a45d 0100 |005b: invoke-virtual {v1}, Ljava/net/Socket;.getInputStream:()Ljava/io/InputStream; // method@5da4 │ │ +4376fc: 0c01 |005e: move-result-object v1 │ │ +4376fe: 3901 0400 |005f: if-nez v1, 0063 // +0004 │ │ +437702: 2900 7500 |0061: goto/16 00d6 // +0075 │ │ +437706: 1501 1000 |0063: const/high16 v1, #int 1048576 // #10 │ │ +43770a: 2311 481b |0065: new-array v1, v1, [B // type@1b48 │ │ +43770e: 5483 fc5f |0067: iget-object v3, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +437712: 7110 50be 0300 |0069: invoke-static {v3}, Lorg/purple/smoke/TcpNeighbor;.access$000:(Lorg/purple/smoke/TcpNeighbor;)Ljava/net/Socket; // method@be50 │ │ +437718: 0c03 |006c: move-result-object v3 │ │ +43771a: 6e10 a45d 0300 |006d: invoke-virtual {v3}, Ljava/net/Socket;.getInputStream:()Ljava/io/InputStream; // method@5da4 │ │ +437720: 0c03 |0070: move-result-object v3 │ │ +437722: 6e20 c15b 1300 |0071: invoke-virtual {v3, v1}, Ljava/io/InputStream;.read:([B)I // method@5bc1 │ │ +437728: 0a03 |0074: move-result v3 │ │ +43772a: 2806 |0075: goto 007b // +0006 │ │ +43772c: 5c80 fb5f |0076: iput-boolean v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffb │ │ +437730: 2802 |0078: goto 007a // +0002 │ │ +437732: 0000 |0079: nop // spacer │ │ +437734: 1203 |007a: const/4 v3, #int 0 // #0 │ │ +437736: 8133 |007b: int-to-long v3, v3 │ │ +437738: 1605 0000 |007c: const-wide/16 v5, #int 0 // #0 │ │ +43773c: 3107 0305 |007e: cmp-long v7, v3, v5 │ │ +437740: 3a07 4800 |0080: if-ltz v7, 00c8 // +0048 │ │ +437744: 5587 fb5f |0082: iget-boolean v7, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffb │ │ +437748: 3807 0300 |0084: if-eqz v7, 0087 // +0003 │ │ +43774c: 2842 |0086: goto 00c8 // +0042 │ │ +43774e: 3107 0305 |0087: cmp-long v7, v3, v5 │ │ +437752: 3907 0300 |0089: if-nez v7, 008c // +0003 │ │ +437756: 0e00 |008b: return-void │ │ +437758: 5485 fc5f |008c: iget-object v5, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +43775c: 5455 fe5f |008e: iget-object v5, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@5ffe │ │ +437760: 6e30 e260 3504 |0090: invoke-virtual {v5, v3, v4}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e2 │ │ +437766: 5485 fc5f |0093: iget-object v5, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +43776a: 5455 0560 |0095: iget-object v5, v5, Lorg/purple/smoke/TcpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6005 │ │ +43776e: 7100 0b5d 0000 |0097: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +437774: 0b06 |009a: move-result-wide v6 │ │ +437776: 6e30 e360 6507 |009b: invoke-virtual {v5, v6, v7}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43777c: 5485 fc5f |009e: iget-object v5, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +437780: 5455 1060 |00a0: iget-object v5, v5, Lorg/purple/smoke/TcpNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6010 │ │ +437784: 6e10 e85c 0500 |00a2: invoke-virtual {v5}, Ljava/lang/StringBuffer;.length:()I // method@5ce8 │ │ +43778a: 0a05 |00a5: move-result v5 │ │ +43778c: 1506 8000 |00a6: const/high16 v6, #int 8388608 // #80 │ │ +437790: 3565 0f00 |00a8: if-ge v5, v6, 00b7 // +000f │ │ +437794: 5485 fc5f |00aa: iget-object v5, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +437798: 5455 1060 |00ac: iget-object v5, v5, Lorg/purple/smoke/TcpNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6010 │ │ +43779c: 2206 ef0a |00ae: new-instance v6, Ljava/lang/String; // type@0aef │ │ +4377a0: 8434 |00b0: long-to-int v4, v3 │ │ +4377a2: 7040 ad5c 1642 |00b1: invoke-direct {v6, v1, v2, v4}, Ljava/lang/String;.:([BII)V // method@5cad │ │ +4377a8: 6e20 e05c 6500 |00b4: invoke-virtual {v5, v6}, Ljava/lang/StringBuffer;.append:(Ljava/lang/String;)Ljava/lang/StringBuffer; // method@5ce0 │ │ +4377ae: 5481 fc5f |00b7: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +4377b2: 5411 0760 |00b9: iget-object v1, v1, Lorg/purple/smoke/TcpNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6007 │ │ +4377b6: 1d01 |00bb: monitor-enter v1 │ │ +4377b8: 5482 fc5f |00bc: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +4377bc: 5422 0760 |00be: iget-object v2, v2, Lorg/purple/smoke/TcpNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6007 │ │ +4377c0: 6e10 945c 0200 |00c0: invoke-virtual {v2}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ +4377c6: 1e01 |00c3: monitor-exit v1 │ │ +4377c8: 2821 |00c4: goto 00e5 // +0021 │ │ +4377ca: 0d02 |00c5: move-exception v2 │ │ +4377cc: 1e01 |00c6: monitor-exit v1 │ │ +4377ce: 2702 |00c7: throw v2 │ │ +4377d0: 5c80 fb5f |00c8: iput-boolean v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffb │ │ +4377d4: 5481 fc5f |00ca: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +4377d8: 1a02 1009 |00cc: const-string v2, "A socket read() error occurred." // string@0910 │ │ +4377dc: 6e20 5dbe 2100 |00ce: invoke-virtual {v1, v2}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be5d │ │ +4377e2: 5481 fc5f |00d1: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +4377e6: 6e10 53be 0100 |00d3: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be53 │ │ +4377ec: 0e00 |00d6: return-void │ │ +4377ee: 5c80 fb5f |00d7: iput-boolean v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffb │ │ +4377f2: 5480 fc5f |00d9: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +4377f6: 1a01 0f09 |00db: const-string v1, "A socket error occurred while reading data." // string@090f │ │ +4377fa: 6e20 5dbe 1000 |00dd: invoke-virtual {v0, v1}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be5d │ │ +437800: 5480 fc5f |00e0: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffc │ │ +437804: 6e10 53be 0000 |00e2: invoke-virtual {v0}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be53 │ │ +43780a: 0e00 |00e5: return-void │ │ catches : 8 │ │ 0x0001 - 0x0018 │ │ Ljava/net/SocketException; -> 0x00d7 │ │ Ljava/lang/Exception; -> 0x00e5 │ │ 0x0018 - 0x0021 │ │ Ljava/lang/Exception; -> 0x0024 │ │ -> 0x0022 │ │ @@ -751859,18 +751858,18 @@ │ │ type : '(Lorg/purple/smoke/TcpTlsNeighbor;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -437fc0: |[437fc0] org.purple.smoke.TcpTlsNeighbor$1.:(Lorg/purple/smoke/TcpTlsNeighbor;)V │ │ -437fd0: 5b01 1260 |0000: iput-object v1, v0, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6012 │ │ -437fd4: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -437fda: 0e00 |0005: return-void │ │ +437fbc: |[437fbc] org.purple.smoke.TcpTlsNeighbor$1.:(Lorg/purple/smoke/TcpTlsNeighbor;)V │ │ +437fcc: 5b01 1260 |0000: iput-object v1, v0, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6012 │ │ +437fd0: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +437fd6: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=248 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/TcpTlsNeighbor$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/TcpTlsNeighbor; │ │ │ │ @@ -751880,52 +751879,52 @@ │ │ type : '(Ljavax/net/ssl/HandshakeCompletedEvent;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 73 16-bit code units │ │ -437fdc: |[437fdc] org.purple.smoke.TcpTlsNeighbor$1.handshakeCompleted:(Ljavax/net/ssl/HandshakeCompletedEvent;)V │ │ -437fec: 5412 1260 |0000: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6012 │ │ -437ff0: 5422 1c60 |0002: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601c │ │ -437ff4: 1200 |0004: const/4 v0, #int 0 // #0 │ │ -437ff6: 6e20 da60 0200 |0005: invoke-virtual {v2, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -437ffc: 5412 1260 |0008: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6012 │ │ -438000: 7110 69be 0200 |000a: invoke-static {v2}, Lorg/purple/smoke/TcpTlsNeighbor;.access$000:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be69 │ │ -438006: 0c02 |000d: move-result-object v2 │ │ -438008: 1210 |000e: const/4 v0, #int 1 // #1 │ │ -43800a: 6e20 da60 0200 |000f: invoke-virtual {v2, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -438010: 5412 1260 |0012: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6012 │ │ -438014: 6e10 6fbe 0200 |0014: invoke-virtual {v2}, Lorg/purple/smoke/TcpTlsNeighbor;.getCapabilities:()Ljava/lang/String; // method@be6f │ │ -43801a: 0c00 |0017: move-result-object v0 │ │ -43801c: 6e20 78be 0200 |0018: invoke-virtual {v2, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.scheduleSend:(Ljava/lang/String;)V // method@be78 │ │ -438022: 5412 1260 |001b: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6012 │ │ -438026: 6e10 70be 0200 |001d: invoke-virtual {v2}, Lorg/purple/smoke/TcpTlsNeighbor;.getIdentities:()Ljava/lang/String; // method@be70 │ │ -43802c: 0c00 |0020: move-result-object v0 │ │ -43802e: 6e20 78be 0200 |0021: invoke-virtual {v2, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.scheduleSend:(Ljava/lang/String;)V // method@be78 │ │ -438034: 7100 0bbb 0000 |0024: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -43803a: 0c02 |0027: move-result-object v2 │ │ -43803c: 5410 1260 |0028: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6012 │ │ -438040: 5400 1a60 |002a: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601a │ │ -438044: 6e10 bdb9 0000 |002c: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.sipHashId:()Ljava/lang/String; // method@b9bd │ │ -43804a: 0c00 |002f: move-result-object v0 │ │ -43804c: 6e20 1bbb 0200 |0030: invoke-virtual {v2, v0}, Lorg/purple/smoke/Kernel;.retrieveChatMessages:(Ljava/lang/String;)V // method@bb1b │ │ -438052: 1a02 fd91 |0033: const-string v2, "org.purple.smoke.neighbor_connected" // string@91fd │ │ -438056: 7110 f2bb 0200 |0035: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf2 │ │ -43805c: 5412 1260 |0038: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6012 │ │ -438060: 5422 2560 |003a: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6025 │ │ -438064: 1d02 |003c: monitor-enter v2 │ │ -438066: 5410 1260 |003d: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6012 │ │ -43806a: 5400 2560 |003f: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6025 │ │ -43806e: 6e10 955c 0000 |0041: invoke-virtual {v0}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ -438074: 1e02 |0044: monitor-exit v2 │ │ -438076: 0e00 |0045: return-void │ │ -438078: 0d00 |0046: move-exception v0 │ │ -43807a: 1e02 |0047: monitor-exit v2 │ │ -43807c: 2700 |0048: throw v0 │ │ +437fd8: |[437fd8] org.purple.smoke.TcpTlsNeighbor$1.handshakeCompleted:(Ljavax/net/ssl/HandshakeCompletedEvent;)V │ │ +437fe8: 5412 1260 |0000: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6012 │ │ +437fec: 5422 1c60 |0002: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601c │ │ +437ff0: 1200 |0004: const/4 v0, #int 0 // #0 │ │ +437ff2: 6e20 da60 0200 |0005: invoke-virtual {v2, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +437ff8: 5412 1260 |0008: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6012 │ │ +437ffc: 7110 69be 0200 |000a: invoke-static {v2}, Lorg/purple/smoke/TcpTlsNeighbor;.access$000:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be69 │ │ +438002: 0c02 |000d: move-result-object v2 │ │ +438004: 1210 |000e: const/4 v0, #int 1 // #1 │ │ +438006: 6e20 da60 0200 |000f: invoke-virtual {v2, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +43800c: 5412 1260 |0012: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6012 │ │ +438010: 6e10 6fbe 0200 |0014: invoke-virtual {v2}, Lorg/purple/smoke/TcpTlsNeighbor;.getCapabilities:()Ljava/lang/String; // method@be6f │ │ +438016: 0c00 |0017: move-result-object v0 │ │ +438018: 6e20 78be 0200 |0018: invoke-virtual {v2, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.scheduleSend:(Ljava/lang/String;)V // method@be78 │ │ +43801e: 5412 1260 |001b: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6012 │ │ +438022: 6e10 70be 0200 |001d: invoke-virtual {v2}, Lorg/purple/smoke/TcpTlsNeighbor;.getIdentities:()Ljava/lang/String; // method@be70 │ │ +438028: 0c00 |0020: move-result-object v0 │ │ +43802a: 6e20 78be 0200 |0021: invoke-virtual {v2, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.scheduleSend:(Ljava/lang/String;)V // method@be78 │ │ +438030: 7100 0bbb 0000 |0024: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +438036: 0c02 |0027: move-result-object v2 │ │ +438038: 5410 1260 |0028: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6012 │ │ +43803c: 5400 1a60 |002a: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601a │ │ +438040: 6e10 bdb9 0000 |002c: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.sipHashId:()Ljava/lang/String; // method@b9bd │ │ +438046: 0c00 |002f: move-result-object v0 │ │ +438048: 6e20 1bbb 0200 |0030: invoke-virtual {v2, v0}, Lorg/purple/smoke/Kernel;.retrieveChatMessages:(Ljava/lang/String;)V // method@bb1b │ │ +43804e: 1a02 fd91 |0033: const-string v2, "org.purple.smoke.neighbor_connected" // string@91fd │ │ +438052: 7110 f2bb 0200 |0035: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf2 │ │ +438058: 5412 1260 |0038: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6012 │ │ +43805c: 5422 2560 |003a: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6025 │ │ +438060: 1d02 |003c: monitor-enter v2 │ │ +438062: 5410 1260 |003d: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6012 │ │ +438066: 5400 2560 |003f: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6025 │ │ +43806a: 6e10 955c 0000 |0041: invoke-virtual {v0}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ +438070: 1e02 |0044: monitor-exit v2 │ │ +438072: 0e00 |0045: return-void │ │ +438074: 0d00 |0046: move-exception v0 │ │ +438076: 1e02 |0047: monitor-exit v2 │ │ +438078: 2700 |0048: throw v0 │ │ catches : 1 │ │ 0x003d - 0x0048 │ │ -> 0x0046 │ │ positions : │ │ 0x0000 line=253 │ │ 0x0008 line=254 │ │ 0x0012 line=255 │ │ @@ -751979,20 +751978,20 @@ │ │ type : '(Lorg/purple/smoke/TcpTlsNeighbor;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 9 16-bit code units │ │ -43808c: |[43808c] org.purple.smoke.TcpTlsNeighbor$2.:(Lorg/purple/smoke/TcpTlsNeighbor;)V │ │ -43809c: 5b01 1460 |0000: iput-object v1, v0, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -4380a0: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -4380a6: 1201 |0005: const/4 v1, #int 0 // #0 │ │ -4380a8: 5c01 1360 |0006: iput-boolean v1, v0, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6013 │ │ -4380ac: 0e00 |0008: return-void │ │ +438088: |[438088] org.purple.smoke.TcpTlsNeighbor$2.:(Lorg/purple/smoke/TcpTlsNeighbor;)V │ │ +438098: 5b01 1460 |0000: iput-object v1, v0, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +43809c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +4380a2: 1201 |0005: const/4 v1, #int 0 // #0 │ │ +4380a4: 5c01 1360 |0006: iput-boolean v1, v0, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6013 │ │ +4380a8: 0e00 |0008: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=365 │ │ 0x0006 line=366 │ │ locals : │ │ 0x0000 - 0x0009 reg=0 this Lorg/purple/smoke/TcpTlsNeighbor$2; │ │ 0x0000 - 0x0009 reg=1 (null) Lorg/purple/smoke/TcpTlsNeighbor; │ │ @@ -752003,150 +752002,150 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 253 16-bit code units │ │ -4380b0: |[4380b0] org.purple.smoke.TcpTlsNeighbor$2.run:()V │ │ -4380c0: 1210 |0000: const/4 v0, #int 1 // #1 │ │ -4380c2: 5481 1460 |0001: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -4380c6: 6e10 6dbe 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be6d │ │ -4380cc: 0a01 |0006: move-result v1 │ │ -4380ce: 3901 2100 |0007: if-nez v1, 0028 // +0021 │ │ -4380d2: 5481 1460 |0009: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -4380d6: 5411 1c60 |000b: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601c │ │ -4380da: 6e10 d860 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -4380e0: 0a01 |0010: move-result v1 │ │ -4380e2: 3901 1700 |0011: if-nez v1, 0028 // +0017 │ │ -4380e6: 5481 1460 |0013: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -4380ea: 5411 2560 |0015: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6025 │ │ -4380ee: 1d01 |0017: monitor-enter v1 │ │ -4380f0: 5482 1460 |0018: iget-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -4380f4: 5422 2560 |001a: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6025 │ │ -4380f8: 1603 1027 |001c: const-wide/16 v3, #int 10000 // #2710 │ │ -4380fc: 6e30 985c 3204 |001e: invoke-virtual {v2, v3, v4}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ -438102: 2803 |0021: goto 0024 // +0003 │ │ -438104: 0d02 |0022: move-exception v2 │ │ -438106: 2803 |0023: goto 0026 // +0003 │ │ -438108: 1e01 |0024: monitor-exit v1 │ │ -43810a: 2803 |0025: goto 0028 // +0003 │ │ -43810c: 1e01 |0026: monitor-exit v1 │ │ -43810e: 2702 |0027: throw v2 │ │ -438110: 5481 1460 |0028: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -438114: 6e10 6dbe 0100 |002a: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be6d │ │ -43811a: 0a01 |002d: move-result v1 │ │ -43811c: 3801 bf00 |002e: if-eqz v1, 00ed // +00bf │ │ -438120: 5481 1460 |0030: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -438124: 5411 1c60 |0032: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601c │ │ -438128: 6e10 d860 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -43812e: 0a01 |0037: move-result v1 │ │ -438130: 3801 0400 |0038: if-eqz v1, 003c // +0004 │ │ -438134: 2900 b300 |003a: goto/16 00ed // +00b3 │ │ -438138: 5581 1360 |003c: iget-boolean v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6013 │ │ -43813c: 1202 |003e: const/4 v2, #int 0 // #0 │ │ -43813e: 3801 0e00 |003f: if-eqz v1, 004d // +000e │ │ -438142: 5481 1460 |0041: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -438146: 6e10 6dbe 0100 |0043: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be6d │ │ -43814c: 0a01 |0046: move-result v1 │ │ -43814e: 3801 0500 |0047: if-eqz v1, 004c // +0005 │ │ -438152: 5c82 1360 |0049: iput-boolean v2, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6013 │ │ -438156: 282f |004b: goto 007a // +002f │ │ -438158: 0e00 |004c: return-void │ │ -43815a: 5481 1460 |004d: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -43815e: 7110 6abe 0100 |004f: invoke-static {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6a │ │ -438164: 0c01 |0052: move-result-object v1 │ │ -438166: 3801 9a00 |0053: if-eqz v1, 00ed // +009a │ │ -43816a: 5481 1460 |0055: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -43816e: 7110 6abe 0100 |0057: invoke-static {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6a │ │ -438174: 0c01 |005a: move-result-object v1 │ │ -438176: 6e10 8261 0100 |005b: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getInputStream:()Ljava/io/InputStream; // method@6182 │ │ -43817c: 0c01 |005e: move-result-object v1 │ │ -43817e: 3901 0400 |005f: if-nez v1, 0063 // +0004 │ │ -438182: 2900 8c00 |0061: goto/16 00ed // +008c │ │ -438186: 5481 1460 |0063: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -43818a: 7110 6abe 0100 |0065: invoke-static {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6a │ │ -438190: 0c01 |0068: move-result-object v1 │ │ -438192: 6e10 8861 0100 |0069: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getSoTimeout:()I // method@6188 │ │ -438198: 0a01 |006c: move-result v1 │ │ -43819a: 1303 204e |006d: const/16 v3, #int 20000 // #4e20 │ │ -43819e: 3331 0b00 |006f: if-ne v1, v3, 007a // +000b │ │ -4381a2: 5481 1460 |0071: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -4381a6: 7110 6abe 0100 |0073: invoke-static {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6a │ │ -4381ac: 0c01 |0076: move-result-object v1 │ │ -4381ae: 6e20 8e61 2100 |0077: invoke-virtual {v1, v2}, Ljavax/net/ssl/SSLSocket;.setSoTimeout:(I)V // method@618e │ │ -4381b4: 1501 1000 |007a: const/high16 v1, #int 1048576 // #10 │ │ -4381b8: 2311 481b |007c: new-array v1, v1, [B // type@1b48 │ │ -4381bc: 5483 1460 |007e: iget-object v3, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -4381c0: 7110 6abe 0300 |0080: invoke-static {v3}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6a │ │ -4381c6: 0c03 |0083: move-result-object v3 │ │ -4381c8: 6e10 8261 0300 |0084: invoke-virtual {v3}, Ljavax/net/ssl/SSLSocket;.getInputStream:()Ljava/io/InputStream; // method@6182 │ │ -4381ce: 0c03 |0087: move-result-object v3 │ │ -4381d0: 6e20 c15b 1300 |0088: invoke-virtual {v3, v1}, Ljava/io/InputStream;.read:([B)I // method@5bc1 │ │ -4381d6: 0a03 |008b: move-result v3 │ │ -4381d8: 2806 |008c: goto 0092 // +0006 │ │ -4381da: 5c80 1360 |008d: iput-boolean v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6013 │ │ -4381de: 2802 |008f: goto 0091 // +0002 │ │ -4381e0: 0000 |0090: nop // spacer │ │ -4381e2: 1203 |0091: const/4 v3, #int 0 // #0 │ │ -4381e4: 8133 |0092: int-to-long v3, v3 │ │ -4381e6: 1605 0000 |0093: const-wide/16 v5, #int 0 // #0 │ │ -4381ea: 3107 0305 |0095: cmp-long v7, v3, v5 │ │ -4381ee: 3a07 4800 |0097: if-ltz v7, 00df // +0048 │ │ -4381f2: 5587 1360 |0099: iget-boolean v7, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6013 │ │ -4381f6: 3807 0300 |009b: if-eqz v7, 009e // +0003 │ │ -4381fa: 2842 |009d: goto 00df // +0042 │ │ -4381fc: 3107 0305 |009e: cmp-long v7, v3, v5 │ │ -438200: 3907 0300 |00a0: if-nez v7, 00a3 // +0003 │ │ -438204: 0e00 |00a2: return-void │ │ -438206: 5485 1460 |00a3: iget-object v5, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -43820a: 5455 1860 |00a5: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6018 │ │ -43820e: 6e30 e260 3504 |00a7: invoke-virtual {v5, v3, v4}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e2 │ │ -438214: 5485 1460 |00aa: iget-object v5, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -438218: 5455 2460 |00ac: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6024 │ │ -43821c: 7100 0b5d 0000 |00ae: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -438222: 0b06 |00b1: move-result-wide v6 │ │ -438224: 6e30 e360 6507 |00b2: invoke-virtual {v5, v6, v7}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43822a: 5485 1460 |00b5: iget-object v5, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -43822e: 5455 3060 |00b7: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6030 │ │ -438232: 6e10 e85c 0500 |00b9: invoke-virtual {v5}, Ljava/lang/StringBuffer;.length:()I // method@5ce8 │ │ -438238: 0a05 |00bc: move-result v5 │ │ -43823a: 1506 8000 |00bd: const/high16 v6, #int 8388608 // #80 │ │ -43823e: 3565 0f00 |00bf: if-ge v5, v6, 00ce // +000f │ │ -438242: 5485 1460 |00c1: iget-object v5, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -438246: 5455 3060 |00c3: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6030 │ │ -43824a: 2206 ef0a |00c5: new-instance v6, Ljava/lang/String; // type@0aef │ │ -43824e: 8434 |00c7: long-to-int v4, v3 │ │ -438250: 7040 ad5c 1642 |00c8: invoke-direct {v6, v1, v2, v4}, Ljava/lang/String;.:([BII)V // method@5cad │ │ -438256: 6e20 e05c 6500 |00cb: invoke-virtual {v5, v6}, Ljava/lang/StringBuffer;.append:(Ljava/lang/String;)Ljava/lang/StringBuffer; // method@5ce0 │ │ -43825c: 5481 1460 |00ce: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -438260: 5411 2760 |00d0: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6027 │ │ -438264: 1d01 |00d2: monitor-enter v1 │ │ -438266: 5482 1460 |00d3: iget-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -43826a: 5422 2760 |00d5: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6027 │ │ -43826e: 6e10 945c 0200 |00d7: invoke-virtual {v2}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ -438274: 1e01 |00da: monitor-exit v1 │ │ -438276: 2821 |00db: goto 00fc // +0021 │ │ -438278: 0d02 |00dc: move-exception v2 │ │ -43827a: 1e01 |00dd: monitor-exit v1 │ │ -43827c: 2702 |00de: throw v2 │ │ -43827e: 5c80 1360 |00df: iput-boolean v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6013 │ │ -438282: 5481 1460 |00e1: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -438286: 1a02 1009 |00e3: const-string v2, "A socket read() error occurred." // string@0910 │ │ -43828a: 6e20 7bbe 2100 |00e5: invoke-virtual {v1, v2}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ -438290: 5481 1460 |00e8: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -438294: 6e10 6ebe 0100 |00ea: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be6e │ │ -43829a: 0e00 |00ed: return-void │ │ -43829c: 5c80 1360 |00ee: iput-boolean v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6013 │ │ -4382a0: 5480 1460 |00f0: iget-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -4382a4: 1a01 0f09 |00f2: const-string v1, "A socket error occurred while reading data." // string@090f │ │ -4382a8: 6e20 7bbe 1000 |00f4: invoke-virtual {v0, v1}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ -4382ae: 5480 1460 |00f7: iget-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ -4382b2: 6e10 6ebe 0000 |00f9: invoke-virtual {v0}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be6e │ │ -4382b8: 0e00 |00fc: return-void │ │ +4380ac: |[4380ac] org.purple.smoke.TcpTlsNeighbor$2.run:()V │ │ +4380bc: 1210 |0000: const/4 v0, #int 1 // #1 │ │ +4380be: 5481 1460 |0001: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +4380c2: 6e10 6dbe 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be6d │ │ +4380c8: 0a01 |0006: move-result v1 │ │ +4380ca: 3901 2100 |0007: if-nez v1, 0028 // +0021 │ │ +4380ce: 5481 1460 |0009: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +4380d2: 5411 1c60 |000b: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601c │ │ +4380d6: 6e10 d860 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +4380dc: 0a01 |0010: move-result v1 │ │ +4380de: 3901 1700 |0011: if-nez v1, 0028 // +0017 │ │ +4380e2: 5481 1460 |0013: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +4380e6: 5411 2560 |0015: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6025 │ │ +4380ea: 1d01 |0017: monitor-enter v1 │ │ +4380ec: 5482 1460 |0018: iget-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +4380f0: 5422 2560 |001a: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6025 │ │ +4380f4: 1603 1027 |001c: const-wide/16 v3, #int 10000 // #2710 │ │ +4380f8: 6e30 985c 3204 |001e: invoke-virtual {v2, v3, v4}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ +4380fe: 2803 |0021: goto 0024 // +0003 │ │ +438100: 0d02 |0022: move-exception v2 │ │ +438102: 2803 |0023: goto 0026 // +0003 │ │ +438104: 1e01 |0024: monitor-exit v1 │ │ +438106: 2803 |0025: goto 0028 // +0003 │ │ +438108: 1e01 |0026: monitor-exit v1 │ │ +43810a: 2702 |0027: throw v2 │ │ +43810c: 5481 1460 |0028: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +438110: 6e10 6dbe 0100 |002a: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be6d │ │ +438116: 0a01 |002d: move-result v1 │ │ +438118: 3801 bf00 |002e: if-eqz v1, 00ed // +00bf │ │ +43811c: 5481 1460 |0030: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +438120: 5411 1c60 |0032: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601c │ │ +438124: 6e10 d860 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +43812a: 0a01 |0037: move-result v1 │ │ +43812c: 3801 0400 |0038: if-eqz v1, 003c // +0004 │ │ +438130: 2900 b300 |003a: goto/16 00ed // +00b3 │ │ +438134: 5581 1360 |003c: iget-boolean v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6013 │ │ +438138: 1202 |003e: const/4 v2, #int 0 // #0 │ │ +43813a: 3801 0e00 |003f: if-eqz v1, 004d // +000e │ │ +43813e: 5481 1460 |0041: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +438142: 6e10 6dbe 0100 |0043: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be6d │ │ +438148: 0a01 |0046: move-result v1 │ │ +43814a: 3801 0500 |0047: if-eqz v1, 004c // +0005 │ │ +43814e: 5c82 1360 |0049: iput-boolean v2, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6013 │ │ +438152: 282f |004b: goto 007a // +002f │ │ +438154: 0e00 |004c: return-void │ │ +438156: 5481 1460 |004d: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +43815a: 7110 6abe 0100 |004f: invoke-static {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6a │ │ +438160: 0c01 |0052: move-result-object v1 │ │ +438162: 3801 9a00 |0053: if-eqz v1, 00ed // +009a │ │ +438166: 5481 1460 |0055: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +43816a: 7110 6abe 0100 |0057: invoke-static {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6a │ │ +438170: 0c01 |005a: move-result-object v1 │ │ +438172: 6e10 8261 0100 |005b: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getInputStream:()Ljava/io/InputStream; // method@6182 │ │ +438178: 0c01 |005e: move-result-object v1 │ │ +43817a: 3901 0400 |005f: if-nez v1, 0063 // +0004 │ │ +43817e: 2900 8c00 |0061: goto/16 00ed // +008c │ │ +438182: 5481 1460 |0063: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +438186: 7110 6abe 0100 |0065: invoke-static {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6a │ │ +43818c: 0c01 |0068: move-result-object v1 │ │ +43818e: 6e10 8861 0100 |0069: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getSoTimeout:()I // method@6188 │ │ +438194: 0a01 |006c: move-result v1 │ │ +438196: 1303 204e |006d: const/16 v3, #int 20000 // #4e20 │ │ +43819a: 3331 0b00 |006f: if-ne v1, v3, 007a // +000b │ │ +43819e: 5481 1460 |0071: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +4381a2: 7110 6abe 0100 |0073: invoke-static {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6a │ │ +4381a8: 0c01 |0076: move-result-object v1 │ │ +4381aa: 6e20 8e61 2100 |0077: invoke-virtual {v1, v2}, Ljavax/net/ssl/SSLSocket;.setSoTimeout:(I)V // method@618e │ │ +4381b0: 1501 1000 |007a: const/high16 v1, #int 1048576 // #10 │ │ +4381b4: 2311 481b |007c: new-array v1, v1, [B // type@1b48 │ │ +4381b8: 5483 1460 |007e: iget-object v3, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +4381bc: 7110 6abe 0300 |0080: invoke-static {v3}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6a │ │ +4381c2: 0c03 |0083: move-result-object v3 │ │ +4381c4: 6e10 8261 0300 |0084: invoke-virtual {v3}, Ljavax/net/ssl/SSLSocket;.getInputStream:()Ljava/io/InputStream; // method@6182 │ │ +4381ca: 0c03 |0087: move-result-object v3 │ │ +4381cc: 6e20 c15b 1300 |0088: invoke-virtual {v3, v1}, Ljava/io/InputStream;.read:([B)I // method@5bc1 │ │ +4381d2: 0a03 |008b: move-result v3 │ │ +4381d4: 2806 |008c: goto 0092 // +0006 │ │ +4381d6: 5c80 1360 |008d: iput-boolean v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6013 │ │ +4381da: 2802 |008f: goto 0091 // +0002 │ │ +4381dc: 0000 |0090: nop // spacer │ │ +4381de: 1203 |0091: const/4 v3, #int 0 // #0 │ │ +4381e0: 8133 |0092: int-to-long v3, v3 │ │ +4381e2: 1605 0000 |0093: const-wide/16 v5, #int 0 // #0 │ │ +4381e6: 3107 0305 |0095: cmp-long v7, v3, v5 │ │ +4381ea: 3a07 4800 |0097: if-ltz v7, 00df // +0048 │ │ +4381ee: 5587 1360 |0099: iget-boolean v7, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6013 │ │ +4381f2: 3807 0300 |009b: if-eqz v7, 009e // +0003 │ │ +4381f6: 2842 |009d: goto 00df // +0042 │ │ +4381f8: 3107 0305 |009e: cmp-long v7, v3, v5 │ │ +4381fc: 3907 0300 |00a0: if-nez v7, 00a3 // +0003 │ │ +438200: 0e00 |00a2: return-void │ │ +438202: 5485 1460 |00a3: iget-object v5, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +438206: 5455 1860 |00a5: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6018 │ │ +43820a: 6e30 e260 3504 |00a7: invoke-virtual {v5, v3, v4}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e2 │ │ +438210: 5485 1460 |00aa: iget-object v5, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +438214: 5455 2460 |00ac: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6024 │ │ +438218: 7100 0b5d 0000 |00ae: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +43821e: 0b06 |00b1: move-result-wide v6 │ │ +438220: 6e30 e360 6507 |00b2: invoke-virtual {v5, v6, v7}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +438226: 5485 1460 |00b5: iget-object v5, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +43822a: 5455 3060 |00b7: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6030 │ │ +43822e: 6e10 e85c 0500 |00b9: invoke-virtual {v5}, Ljava/lang/StringBuffer;.length:()I // method@5ce8 │ │ +438234: 0a05 |00bc: move-result v5 │ │ +438236: 1506 8000 |00bd: const/high16 v6, #int 8388608 // #80 │ │ +43823a: 3565 0f00 |00bf: if-ge v5, v6, 00ce // +000f │ │ +43823e: 5485 1460 |00c1: iget-object v5, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +438242: 5455 3060 |00c3: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6030 │ │ +438246: 2206 ef0a |00c5: new-instance v6, Ljava/lang/String; // type@0aef │ │ +43824a: 8434 |00c7: long-to-int v4, v3 │ │ +43824c: 7040 ad5c 1642 |00c8: invoke-direct {v6, v1, v2, v4}, Ljava/lang/String;.:([BII)V // method@5cad │ │ +438252: 6e20 e05c 6500 |00cb: invoke-virtual {v5, v6}, Ljava/lang/StringBuffer;.append:(Ljava/lang/String;)Ljava/lang/StringBuffer; // method@5ce0 │ │ +438258: 5481 1460 |00ce: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +43825c: 5411 2760 |00d0: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6027 │ │ +438260: 1d01 |00d2: monitor-enter v1 │ │ +438262: 5482 1460 |00d3: iget-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +438266: 5422 2760 |00d5: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6027 │ │ +43826a: 6e10 945c 0200 |00d7: invoke-virtual {v2}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ +438270: 1e01 |00da: monitor-exit v1 │ │ +438272: 2821 |00db: goto 00fc // +0021 │ │ +438274: 0d02 |00dc: move-exception v2 │ │ +438276: 1e01 |00dd: monitor-exit v1 │ │ +438278: 2702 |00de: throw v2 │ │ +43827a: 5c80 1360 |00df: iput-boolean v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6013 │ │ +43827e: 5481 1460 |00e1: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +438282: 1a02 1009 |00e3: const-string v2, "A socket read() error occurred." // string@0910 │ │ +438286: 6e20 7bbe 2100 |00e5: invoke-virtual {v1, v2}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ +43828c: 5481 1460 |00e8: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +438290: 6e10 6ebe 0100 |00ea: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be6e │ │ +438296: 0e00 |00ed: return-void │ │ +438298: 5c80 1360 |00ee: iput-boolean v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6013 │ │ +43829c: 5480 1460 |00f0: iget-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +4382a0: 1a01 0f09 |00f2: const-string v1, "A socket error occurred while reading data." // string@090f │ │ +4382a4: 6e20 7bbe 1000 |00f4: invoke-virtual {v0, v1}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ +4382aa: 5480 1460 |00f7: iget-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6014 │ │ +4382ae: 6e10 6ebe 0000 |00f9: invoke-virtual {v0}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be6e │ │ +4382b4: 0e00 |00fc: return-void │ │ catches : 8 │ │ 0x0001 - 0x0018 │ │ Ljava/net/SocketException; -> 0x00ee │ │ Ljava/lang/Exception; -> 0x00fc │ │ 0x0018 - 0x0021 │ │ Ljava/lang/Exception; -> 0x0024 │ │ -> 0x0022 │ │ @@ -752235,18 +752234,18 @@ │ │ type : '(Lorg/purple/smoke/TcpTlsNeighbor;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -438338: |[438338] org.purple.smoke.TcpTlsNeighbor$3.:(Lorg/purple/smoke/TcpTlsNeighbor;)V │ │ -438348: 5b01 1560 |0000: iput-object v1, v0, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43834c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -438352: 0e00 |0005: return-void │ │ +438334: |[438334] org.purple.smoke.TcpTlsNeighbor$3.:(Lorg/purple/smoke/TcpTlsNeighbor;)V │ │ +438344: 5b01 1560 |0000: iput-object v1, v0, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438348: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43834e: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=458 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/TcpTlsNeighbor$3; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/TcpTlsNeighbor; │ │ │ │ @@ -752256,179 +752255,179 @@ │ │ type : '([Ljava/security/cert/X509Certificate;Ljava/lang/String;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -438354: |[438354] org.purple.smoke.TcpTlsNeighbor$3.checkClientTrusted:([Ljava/security/cert/X509Certificate;Ljava/lang/String;)V │ │ -438364: 0e00 |0000: return-void │ │ +438350: |[438350] org.purple.smoke.TcpTlsNeighbor$3.checkClientTrusted:([Ljava/security/cert/X509Certificate;Ljava/lang/String;)V │ │ +438360: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #1 : (in Lorg/purple/smoke/TcpTlsNeighbor$3;) │ │ name : 'checkServerTrusted' │ │ type : '([Ljava/security/cert/X509Certificate;Ljava/lang/String;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 3 │ │ outs : 4 │ │ insns size : 302 16-bit code units │ │ -438368: |[438368] org.purple.smoke.TcpTlsNeighbor$3.checkServerTrusted:([Ljava/security/cert/X509Certificate;Ljava/lang/String;)V │ │ -438378: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -43837a: 3806 ee00 |0001: if-eqz v6, 00ef // +00ee │ │ -43837e: 6e10 c55c 0600 |0003: invoke-virtual {v6}, Ljava/lang/String;.length:()I // method@5cc5 │ │ -438384: 0a06 |0006: move-result v6 │ │ -438386: 3906 0400 |0007: if-nez v6, 000b // +0004 │ │ -43838a: 2900 e600 |0009: goto/16 00ef // +00e6 │ │ -43838e: 3805 d300 |000b: if-eqz v5, 00de // +00d3 │ │ -438392: 2156 |000d: array-length v6, v5 │ │ -438394: 3906 0400 |000e: if-nez v6, 0012 // +0004 │ │ -438398: 2900 ce00 |0010: goto/16 00de // +00ce │ │ -43839c: 4606 0500 |0012: aget-object v6, v5, v0 │ │ -4383a0: 6e10 025f 0600 |0014: invoke-virtual {v6}, Ljava/security/cert/X509Certificate;.checkValidity:()V // method@5f02 │ │ -4383a6: 5446 1560 |0017: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4383aa: 5466 1b60 |0019: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_databaseHelper:Lorg/purple/smoke/Database; // field@601b │ │ -4383ae: 5441 1560 |001b: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4383b2: 5411 1a60 |001d: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601a │ │ -4383b6: 5442 1560 |001f: iget-object v2, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4383ba: 5422 2660 |0021: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@6026 │ │ -4383be: 6e10 dc60 0200 |0023: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -4383c4: 0a02 |0026: move-result v2 │ │ -4383c6: 6e30 fdb9 1602 |0027: invoke-virtual {v6, v1, v2}, Lorg/purple/smoke/Database;.neighborRemoteCertificate:(Lorg/purple/smoke/Cryptography;I)[B // method@b9fd │ │ -4383cc: 0c06 |002a: move-result-object v6 │ │ -4383ce: 1211 |002b: const/4 v1, #int 1 // #1 │ │ -4383d0: 3806 4800 |002c: if-eqz v6, 0074 // +0048 │ │ -4383d4: 2162 |002e: array-length v2, v6 │ │ -4383d6: 3902 0300 |002f: if-nez v2, 0032 // +0003 │ │ -4383da: 2843 |0031: goto 0074 // +0043 │ │ -4383dc: 4605 0500 |0032: aget-object v5, v5, v0 │ │ -4383e0: 6e10 075f 0500 |0034: invoke-virtual {v5}, Ljava/security/cert/X509Certificate;.getEncoded:()[B // method@5f07 │ │ -4383e6: 0c05 |0037: move-result-object v5 │ │ -4383e8: 7120 98b9 5600 |0038: invoke-static {v6, v5}, Lorg/purple/smoke/Cryptography;.memcmp:([B[B)Z // method@b998 │ │ -4383ee: 0a05 |003b: move-result v5 │ │ -4383f0: 3905 2d00 |003c: if-nez v5, 0069 // +002d │ │ -4383f4: 5445 1560 |003e: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4383f8: 5455 1b60 |0040: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_databaseHelper:Lorg/purple/smoke/Database; // field@601b │ │ -4383fc: 5446 1560 |0042: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -438400: 5466 1a60 |0044: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601a │ │ -438404: 1a01 0b64 |0046: const-string v1, "disconnect" // string@640b │ │ -438408: 5442 1560 |0048: iget-object v2, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43840c: 5422 2660 |004a: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@6026 │ │ -438410: 6e10 dc60 0200 |004c: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -438416: 0a02 |004f: move-result v2 │ │ -438418: 7110 d55c 0200 |0050: invoke-static {v2}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -43841e: 0c02 |0053: move-result-object v2 │ │ -438420: 6e40 fbb9 6521 |0054: invoke-virtual {v5, v6, v1, v2}, Lorg/purple/smoke/Database;.neighborControlStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@b9fb │ │ -438426: 5445 1560 |0057: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43842a: 7110 6bbe 0500 |0059: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be6b │ │ -438430: 0c05 |005c: move-result-object v5 │ │ -438432: 6e20 da60 0500 |005d: invoke-virtual {v5, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -438438: 5445 1560 |0060: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43843c: 1a06 1b4f |0062: const-string v6, "The stored server's certificate does not match the certificate that was provided by the server." // string@4f1b │ │ -438440: 6e20 7bbe 6500 |0064: invoke-virtual {v5, v6}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ -438446: 2900 9800 |0067: goto/16 00ff // +0098 │ │ -43844a: 5445 1560 |0069: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43844e: 7110 6bbe 0500 |006b: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be6b │ │ -438454: 0c05 |006e: move-result-object v5 │ │ -438456: 6e20 da60 1500 |006f: invoke-virtual {v5, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -43845c: 2900 8d00 |0072: goto/16 00ff // +008d │ │ -438460: 5446 1560 |0074: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -438464: 5466 1b60 |0076: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_databaseHelper:Lorg/purple/smoke/Database; // field@601b │ │ -438468: 5442 1560 |0078: iget-object v2, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43846c: 5422 1a60 |007a: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601a │ │ -438470: 5443 1560 |007c: iget-object v3, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -438474: 5433 2660 |007e: iget-object v3, v3, Lorg/purple/smoke/TcpTlsNeighbor;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@6026 │ │ -438478: 6e10 dc60 0300 |0080: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -43847e: 0a03 |0083: move-result v3 │ │ -438480: 7110 d55c 0300 |0084: invoke-static {v3}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -438486: 0c03 |0087: move-result-object v3 │ │ -438488: 4605 0500 |0088: aget-object v5, v5, v0 │ │ -43848c: 6e10 075f 0500 |008a: invoke-virtual {v5}, Ljava/security/cert/X509Certificate;.getEncoded:()[B // method@5f07 │ │ -438492: 0c05 |008d: move-result-object v5 │ │ -438494: 6e40 fcb9 2653 |008e: invoke-virtual {v6, v2, v3, v5}, Lorg/purple/smoke/Database;.neighborRecordCertificate:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;[B)V // method@b9fc │ │ -43849a: 5445 1560 |0091: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43849e: 7110 6bbe 0500 |0093: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be6b │ │ -4384a4: 0c05 |0096: move-result-object v5 │ │ -4384a6: 6e20 da60 1500 |0097: invoke-virtual {v5, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -4384ac: 2865 |009a: goto 00ff // +0065 │ │ -4384ae: 0d05 |009b: move-exception v5 │ │ -4384b0: 5446 1560 |009c: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4384b4: 5466 1b60 |009e: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_databaseHelper:Lorg/purple/smoke/Database; // field@601b │ │ -4384b8: 5441 1560 |00a0: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4384bc: 5411 1a60 |00a2: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601a │ │ -4384c0: 1a02 0b64 |00a4: const-string v2, "disconnect" // string@640b │ │ -4384c4: 5443 1560 |00a6: iget-object v3, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4384c8: 5433 2660 |00a8: iget-object v3, v3, Lorg/purple/smoke/TcpTlsNeighbor;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@6026 │ │ -4384cc: 6e10 dc60 0300 |00aa: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -4384d2: 0a03 |00ad: move-result v3 │ │ -4384d4: 7110 d55c 0300 |00ae: invoke-static {v3}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -4384da: 0c03 |00b1: move-result-object v3 │ │ -4384dc: 6e40 fbb9 1632 |00b2: invoke-virtual {v6, v1, v2, v3}, Lorg/purple/smoke/Database;.neighborControlStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@b9fb │ │ -4384e2: 5446 1560 |00b5: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4384e6: 7110 6bbe 0600 |00b7: invoke-static {v6}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be6b │ │ -4384ec: 0c06 |00ba: move-result-object v6 │ │ -4384ee: 6e20 da60 0600 |00bb: invoke-virtual {v6, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -4384f4: 5446 1560 |00be: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4384f8: 2200 f10a |00c0: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ -4384fc: 7010 ee5c 0000 |00c2: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -438502: 1a01 0209 |00c5: const-string v1, "A certificate error (" // string@0902 │ │ -438506: 6e20 f95c 1000 |00c7: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43850c: 6e10 375c 0500 |00ca: invoke-virtual {v5}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ -438512: 0c05 |00cd: move-result-object v5 │ │ -438514: 6e20 f95c 5000 |00ce: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43851a: 1a05 0404 |00d1: const-string v5, ") occurred." // string@0404 │ │ -43851e: 6e20 f95c 5000 |00d3: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -438524: 6e10 035d 0000 |00d6: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -43852a: 0c05 |00d9: move-result-object v5 │ │ -43852c: 6e20 7bbe 5600 |00da: invoke-virtual {v6, v5}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ -438532: 2822 |00dd: goto 00ff // +0022 │ │ -438534: 5445 1560 |00de: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -438538: 7110 6bbe 0500 |00e0: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be6b │ │ -43853e: 0c05 |00e3: move-result-object v5 │ │ -438540: 6e20 da60 0500 |00e4: invoke-virtual {v5, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -438546: 5445 1560 |00e7: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43854a: 1a06 3919 |00e9: const-string v6, "Empty chain." // string@1939 │ │ -43854e: 6e20 7bbe 6500 |00eb: invoke-virtual {v5, v6}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ -438554: 2811 |00ee: goto 00ff // +0011 │ │ -438556: 5445 1560 |00ef: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43855a: 7110 6bbe 0500 |00f1: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be6b │ │ -438560: 0c05 |00f4: move-result-object v5 │ │ -438562: 6e20 da60 0500 |00f5: invoke-virtual {v5, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -438568: 5445 1560 |00f8: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43856c: 1a06 3819 |00fa: const-string v6, "Empty authentication type." // string@1938 │ │ -438570: 6e20 7bbe 6500 |00fc: invoke-virtual {v5, v6}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ -438576: 5445 1560 |00ff: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43857a: 7110 6bbe 0500 |0101: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be6b │ │ -438580: 0c05 |0104: move-result-object v5 │ │ -438582: 6e10 d860 0500 |0105: invoke-virtual {v5}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -438588: 0a05 |0108: move-result v5 │ │ -43858a: 3905 2400 |0109: if-nez v5, 012d // +0024 │ │ -43858e: 5445 1560 |010b: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -438592: 6e10 6ebe 0500 |010d: invoke-virtual {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be6e │ │ -438598: 5445 1560 |0110: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43859c: 5455 1e60 |0112: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_errorMutex:Ljava/lang/Object; // field@601e │ │ -4385a0: 1d05 |0114: monitor-enter v5 │ │ -4385a2: 5446 1560 |0115: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4385a6: 5466 1d60 |0117: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_error:Ljava/lang/StringBuilder; // field@601d │ │ -4385aa: 6e10 ff5c 0600 |0119: invoke-virtual {v6}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ -4385b0: 0a06 |011c: move-result v6 │ │ -4385b2: 3906 0b00 |011d: if-nez v6, 0128 // +000b │ │ -4385b6: 5446 1560 |011f: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4385ba: 5466 1d60 |0121: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_error:Ljava/lang/StringBuilder; // field@601d │ │ -4385be: 1a00 0409 |0123: const-string v0, "A generic certificate error occurred." // string@0904 │ │ -4385c2: 6e20 f95c 0600 |0125: invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4385c8: 1e05 |0128: monitor-exit v5 │ │ -4385ca: 2804 |0129: goto 012d // +0004 │ │ -4385cc: 0d06 |012a: move-exception v6 │ │ -4385ce: 1e05 |012b: monitor-exit v5 │ │ -4385d0: 2706 |012c: throw v6 │ │ -4385d2: 0e00 |012d: return-void │ │ +438364: |[438364] org.purple.smoke.TcpTlsNeighbor$3.checkServerTrusted:([Ljava/security/cert/X509Certificate;Ljava/lang/String;)V │ │ +438374: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +438376: 3806 ee00 |0001: if-eqz v6, 00ef // +00ee │ │ +43837a: 6e10 c55c 0600 |0003: invoke-virtual {v6}, Ljava/lang/String;.length:()I // method@5cc5 │ │ +438380: 0a06 |0006: move-result v6 │ │ +438382: 3906 0400 |0007: if-nez v6, 000b // +0004 │ │ +438386: 2900 e600 |0009: goto/16 00ef // +00e6 │ │ +43838a: 3805 d300 |000b: if-eqz v5, 00de // +00d3 │ │ +43838e: 2156 |000d: array-length v6, v5 │ │ +438390: 3906 0400 |000e: if-nez v6, 0012 // +0004 │ │ +438394: 2900 ce00 |0010: goto/16 00de // +00ce │ │ +438398: 4606 0500 |0012: aget-object v6, v5, v0 │ │ +43839c: 6e10 025f 0600 |0014: invoke-virtual {v6}, Ljava/security/cert/X509Certificate;.checkValidity:()V // method@5f02 │ │ +4383a2: 5446 1560 |0017: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4383a6: 5466 1b60 |0019: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_databaseHelper:Lorg/purple/smoke/Database; // field@601b │ │ +4383aa: 5441 1560 |001b: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4383ae: 5411 1a60 |001d: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601a │ │ +4383b2: 5442 1560 |001f: iget-object v2, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4383b6: 5422 2660 |0021: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@6026 │ │ +4383ba: 6e10 dc60 0200 |0023: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +4383c0: 0a02 |0026: move-result v2 │ │ +4383c2: 6e30 fdb9 1602 |0027: invoke-virtual {v6, v1, v2}, Lorg/purple/smoke/Database;.neighborRemoteCertificate:(Lorg/purple/smoke/Cryptography;I)[B // method@b9fd │ │ +4383c8: 0c06 |002a: move-result-object v6 │ │ +4383ca: 1211 |002b: const/4 v1, #int 1 // #1 │ │ +4383cc: 3806 4800 |002c: if-eqz v6, 0074 // +0048 │ │ +4383d0: 2162 |002e: array-length v2, v6 │ │ +4383d2: 3902 0300 |002f: if-nez v2, 0032 // +0003 │ │ +4383d6: 2843 |0031: goto 0074 // +0043 │ │ +4383d8: 4605 0500 |0032: aget-object v5, v5, v0 │ │ +4383dc: 6e10 075f 0500 |0034: invoke-virtual {v5}, Ljava/security/cert/X509Certificate;.getEncoded:()[B // method@5f07 │ │ +4383e2: 0c05 |0037: move-result-object v5 │ │ +4383e4: 7120 98b9 5600 |0038: invoke-static {v6, v5}, Lorg/purple/smoke/Cryptography;.memcmp:([B[B)Z // method@b998 │ │ +4383ea: 0a05 |003b: move-result v5 │ │ +4383ec: 3905 2d00 |003c: if-nez v5, 0069 // +002d │ │ +4383f0: 5445 1560 |003e: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4383f4: 5455 1b60 |0040: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_databaseHelper:Lorg/purple/smoke/Database; // field@601b │ │ +4383f8: 5446 1560 |0042: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4383fc: 5466 1a60 |0044: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601a │ │ +438400: 1a01 0b64 |0046: const-string v1, "disconnect" // string@640b │ │ +438404: 5442 1560 |0048: iget-object v2, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438408: 5422 2660 |004a: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@6026 │ │ +43840c: 6e10 dc60 0200 |004c: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +438412: 0a02 |004f: move-result v2 │ │ +438414: 7110 d55c 0200 |0050: invoke-static {v2}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +43841a: 0c02 |0053: move-result-object v2 │ │ +43841c: 6e40 fbb9 6521 |0054: invoke-virtual {v5, v6, v1, v2}, Lorg/purple/smoke/Database;.neighborControlStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@b9fb │ │ +438422: 5445 1560 |0057: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438426: 7110 6bbe 0500 |0059: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be6b │ │ +43842c: 0c05 |005c: move-result-object v5 │ │ +43842e: 6e20 da60 0500 |005d: invoke-virtual {v5, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +438434: 5445 1560 |0060: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438438: 1a06 1b4f |0062: const-string v6, "The stored server's certificate does not match the certificate that was provided by the server." // string@4f1b │ │ +43843c: 6e20 7bbe 6500 |0064: invoke-virtual {v5, v6}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ +438442: 2900 9800 |0067: goto/16 00ff // +0098 │ │ +438446: 5445 1560 |0069: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +43844a: 7110 6bbe 0500 |006b: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be6b │ │ +438450: 0c05 |006e: move-result-object v5 │ │ +438452: 6e20 da60 1500 |006f: invoke-virtual {v5, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +438458: 2900 8d00 |0072: goto/16 00ff // +008d │ │ +43845c: 5446 1560 |0074: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438460: 5466 1b60 |0076: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_databaseHelper:Lorg/purple/smoke/Database; // field@601b │ │ +438464: 5442 1560 |0078: iget-object v2, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438468: 5422 1a60 |007a: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601a │ │ +43846c: 5443 1560 |007c: iget-object v3, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438470: 5433 2660 |007e: iget-object v3, v3, Lorg/purple/smoke/TcpTlsNeighbor;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@6026 │ │ +438474: 6e10 dc60 0300 |0080: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +43847a: 0a03 |0083: move-result v3 │ │ +43847c: 7110 d55c 0300 |0084: invoke-static {v3}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +438482: 0c03 |0087: move-result-object v3 │ │ +438484: 4605 0500 |0088: aget-object v5, v5, v0 │ │ +438488: 6e10 075f 0500 |008a: invoke-virtual {v5}, Ljava/security/cert/X509Certificate;.getEncoded:()[B // method@5f07 │ │ +43848e: 0c05 |008d: move-result-object v5 │ │ +438490: 6e40 fcb9 2653 |008e: invoke-virtual {v6, v2, v3, v5}, Lorg/purple/smoke/Database;.neighborRecordCertificate:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;[B)V // method@b9fc │ │ +438496: 5445 1560 |0091: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +43849a: 7110 6bbe 0500 |0093: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be6b │ │ +4384a0: 0c05 |0096: move-result-object v5 │ │ +4384a2: 6e20 da60 1500 |0097: invoke-virtual {v5, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +4384a8: 2865 |009a: goto 00ff // +0065 │ │ +4384aa: 0d05 |009b: move-exception v5 │ │ +4384ac: 5446 1560 |009c: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4384b0: 5466 1b60 |009e: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_databaseHelper:Lorg/purple/smoke/Database; // field@601b │ │ +4384b4: 5441 1560 |00a0: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4384b8: 5411 1a60 |00a2: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601a │ │ +4384bc: 1a02 0b64 |00a4: const-string v2, "disconnect" // string@640b │ │ +4384c0: 5443 1560 |00a6: iget-object v3, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4384c4: 5433 2660 |00a8: iget-object v3, v3, Lorg/purple/smoke/TcpTlsNeighbor;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@6026 │ │ +4384c8: 6e10 dc60 0300 |00aa: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +4384ce: 0a03 |00ad: move-result v3 │ │ +4384d0: 7110 d55c 0300 |00ae: invoke-static {v3}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +4384d6: 0c03 |00b1: move-result-object v3 │ │ +4384d8: 6e40 fbb9 1632 |00b2: invoke-virtual {v6, v1, v2, v3}, Lorg/purple/smoke/Database;.neighborControlStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@b9fb │ │ +4384de: 5446 1560 |00b5: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4384e2: 7110 6bbe 0600 |00b7: invoke-static {v6}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be6b │ │ +4384e8: 0c06 |00ba: move-result-object v6 │ │ +4384ea: 6e20 da60 0600 |00bb: invoke-virtual {v6, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +4384f0: 5446 1560 |00be: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4384f4: 2200 f10a |00c0: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ +4384f8: 7010 ee5c 0000 |00c2: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4384fe: 1a01 0209 |00c5: const-string v1, "A certificate error (" // string@0902 │ │ +438502: 6e20 f95c 1000 |00c7: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +438508: 6e10 375c 0500 |00ca: invoke-virtual {v5}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ +43850e: 0c05 |00cd: move-result-object v5 │ │ +438510: 6e20 f95c 5000 |00ce: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +438516: 1a05 0404 |00d1: const-string v5, ") occurred." // string@0404 │ │ +43851a: 6e20 f95c 5000 |00d3: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +438520: 6e10 035d 0000 |00d6: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +438526: 0c05 |00d9: move-result-object v5 │ │ +438528: 6e20 7bbe 5600 |00da: invoke-virtual {v6, v5}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ +43852e: 2822 |00dd: goto 00ff // +0022 │ │ +438530: 5445 1560 |00de: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438534: 7110 6bbe 0500 |00e0: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be6b │ │ +43853a: 0c05 |00e3: move-result-object v5 │ │ +43853c: 6e20 da60 0500 |00e4: invoke-virtual {v5, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +438542: 5445 1560 |00e7: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438546: 1a06 3919 |00e9: const-string v6, "Empty chain." // string@1939 │ │ +43854a: 6e20 7bbe 6500 |00eb: invoke-virtual {v5, v6}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ +438550: 2811 |00ee: goto 00ff // +0011 │ │ +438552: 5445 1560 |00ef: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438556: 7110 6bbe 0500 |00f1: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be6b │ │ +43855c: 0c05 |00f4: move-result-object v5 │ │ +43855e: 6e20 da60 0500 |00f5: invoke-virtual {v5, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +438564: 5445 1560 |00f8: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438568: 1a06 3819 |00fa: const-string v6, "Empty authentication type." // string@1938 │ │ +43856c: 6e20 7bbe 6500 |00fc: invoke-virtual {v5, v6}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ +438572: 5445 1560 |00ff: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438576: 7110 6bbe 0500 |0101: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be6b │ │ +43857c: 0c05 |0104: move-result-object v5 │ │ +43857e: 6e10 d860 0500 |0105: invoke-virtual {v5}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +438584: 0a05 |0108: move-result v5 │ │ +438586: 3905 2400 |0109: if-nez v5, 012d // +0024 │ │ +43858a: 5445 1560 |010b: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +43858e: 6e10 6ebe 0500 |010d: invoke-virtual {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be6e │ │ +438594: 5445 1560 |0110: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438598: 5455 1e60 |0112: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_errorMutex:Ljava/lang/Object; // field@601e │ │ +43859c: 1d05 |0114: monitor-enter v5 │ │ +43859e: 5446 1560 |0115: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4385a2: 5466 1d60 |0117: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_error:Ljava/lang/StringBuilder; // field@601d │ │ +4385a6: 6e10 ff5c 0600 |0119: invoke-virtual {v6}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ +4385ac: 0a06 |011c: move-result v6 │ │ +4385ae: 3906 0b00 |011d: if-nez v6, 0128 // +000b │ │ +4385b2: 5446 1560 |011f: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4385b6: 5466 1d60 |0121: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_error:Ljava/lang/StringBuilder; // field@601d │ │ +4385ba: 1a00 0409 |0123: const-string v0, "A generic certificate error occurred." // string@0904 │ │ +4385be: 6e20 f95c 0600 |0125: invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4385c4: 1e05 |0128: monitor-exit v5 │ │ +4385c6: 2804 |0129: goto 012d // +0004 │ │ +4385c8: 0d06 |012a: move-exception v6 │ │ +4385ca: 1e05 |012b: monitor-exit v5 │ │ +4385cc: 2706 |012c: throw v6 │ │ +4385ce: 0e00 |012d: return-void │ │ catches : 2 │ │ 0x0012 - 0x009a │ │ Ljava/lang/Exception; -> 0x009b │ │ 0x0115 - 0x012c │ │ -> 0x012a │ │ positions : │ │ 0x0003 line=472 │ │ @@ -752479,18 +752478,18 @@ │ │ type : '()[Ljava/security/cert/X509Certificate;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 4 16-bit code units │ │ -438320: |[438320] org.purple.smoke.TcpTlsNeighbor$3.getAcceptedIssuers:()[Ljava/security/cert/X509Certificate; │ │ -438330: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -438332: 2300 b21b |0001: new-array v0, v0, [Ljava/security/cert/X509Certificate; // type@1bb2 │ │ -438336: 1100 |0003: return-object v0 │ │ +43831c: |[43831c] org.purple.smoke.TcpTlsNeighbor$3.getAcceptedIssuers:()[Ljava/security/cert/X509Certificate; │ │ +43832c: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +43832e: 2300 b21b |0001: new-array v0, v0, [Ljava/security/cert/X509Certificate; // type@1bb2 │ │ +438332: 1100 |0003: return-object v0 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ source_file_idx : 20083 (TcpTlsNeighbor.java) │ │ │ │ Class #2759 header: │ │ @@ -752526,18 +752525,18 @@ │ │ type : '(Lorg/purple/smoke/Time;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -438f74: |[438f74] org.purple.smoke.Time$1.:(Lorg/purple/smoke/Time;)V │ │ -438f84: 5b01 3360 |0000: iput-object v1, v0, Lorg/purple/smoke/Time$1;.this$0:Lorg/purple/smoke/Time; // field@6033 │ │ -438f88: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -438f8e: 0e00 |0005: return-void │ │ +438f70: |[438f70] org.purple.smoke.Time$1.:(Lorg/purple/smoke/Time;)V │ │ +438f80: 5b01 3360 |0000: iput-object v1, v0, Lorg/purple/smoke/Time$1;.this$0:Lorg/purple/smoke/Time; // field@6033 │ │ +438f84: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +438f8a: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=50 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Time$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Time; │ │ │ │ @@ -752547,116 +752546,116 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 12 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 197 16-bit code units │ │ -438f90: |[438f90] org.purple.smoke.Time$1.run:()V │ │ -438fa0: 1a00 0c92 |0000: const-string v0, "org.purple.smoke.time" // string@920c │ │ -438fa4: 7100 0bbb 0000 |0002: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -438faa: 0c01 |0005: move-result-object v1 │ │ -438fac: 6e10 0ebb 0100 |0006: invoke-virtual {v1}, Lorg/purple/smoke/Kernel;.isNetworkConnected:()Z // method@bb0e │ │ -438fb2: 0a01 |0009: move-result v1 │ │ -438fb4: 3801 ba00 |000a: if-eqz v1, 00c4 // +00ba │ │ -438fb8: 7100 6fbd 0000 |000c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -438fbe: 0c01 |000f: move-result-object v1 │ │ -438fc0: 6e10 72bd 0100 |0010: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ -438fc6: 0a01 |0013: move-result v1 │ │ -438fc8: 3801 b000 |0014: if-eqz v1, 00c4 // +00b0 │ │ -438fcc: 7100 6fbd 0000 |0016: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -438fd2: 0c01 |0019: move-result-object v1 │ │ -438fd4: 6e10 7abd 0100 |001a: invoke-virtual {v1}, Lorg/purple/smoke/State;.queryTimerServer:()Z // method@bd7a │ │ -438fda: 0a01 |001d: move-result v1 │ │ -438fdc: 3901 0400 |001e: if-nez v1, 0022 // +0004 │ │ -438fe0: 2900 a400 |0020: goto/16 00c4 // +00a4 │ │ -438fe4: 1201 |0022: const/4 v1, #int 0 // #0 │ │ -438fe6: 2202 190b |0023: new-instance v2, Ljava/net/URL; // type@0b19 │ │ -438fea: 1a03 7776 |0025: const-string v3, "https://worldtimeapi.org/api/timezone/Etc/UTC.txt" // string@7677 │ │ -438fee: 7020 b55d 3200 |0027: invoke-direct {v2, v3}, Ljava/net/URL;.:(Ljava/lang/String;)V // method@5db5 │ │ -438ff4: 6e10 b75d 0200 |002a: invoke-virtual {v2}, Ljava/net/URL;.openConnection:()Ljava/net/URLConnection; // method@5db7 │ │ -438ffa: 0c02 |002d: move-result-object v2 │ │ -438ffc: 1f02 0b0b |002e: check-cast v2, Ljava/net/HttpURLConnection; // type@0b0b │ │ -439000: 1a03 5c1b |0030: const-string v3, "GET" // string@1b5c │ │ -439004: 6e20 865d 3200 |0032: invoke-virtual {v2, v3}, Ljava/net/HttpURLConnection;.setRequestMethod:(Ljava/lang/String;)V // method@5d86 │ │ -43900a: 2203 a30a |0035: new-instance v3, Ljava/io/BufferedReader; // type@0aa3 │ │ -43900e: 2204 b30a |0037: new-instance v4, Ljava/io/InputStreamReader; // type@0ab3 │ │ -439012: 6e10 7e5d 0200 |0039: invoke-virtual {v2}, Ljava/net/HttpURLConnection;.getInputStream:()Ljava/io/InputStream; // method@5d7e │ │ -439018: 0c05 |003c: move-result-object v5 │ │ -43901a: 7020 c55b 5400 |003d: invoke-direct {v4, v5}, Ljava/io/InputStreamReader;.:(Ljava/io/InputStream;)V // method@5bc5 │ │ -439020: 7020 675b 4300 |0040: invoke-direct {v3, v4}, Ljava/io/BufferedReader;.:(Ljava/io/Reader;)V // method@5b67 │ │ -439026: 6e10 695b 0300 |0043: invoke-virtual {v3}, Ljava/io/BufferedReader;.readLine:()Ljava/lang/String; // method@5b69 │ │ -43902c: 0c01 |0046: move-result-object v1 │ │ -43902e: 3801 4800 |0047: if-eqz v1, 008f // +0048 │ │ -439032: 1a04 38a6 |0049: const-string v4, "unixtime: " // string@a638 │ │ -439036: 6e20 ca5c 4100 |004b: invoke-virtual {v1, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ -43903c: 0a04 |004e: move-result v4 │ │ -43903e: 3804 f4ff |004f: if-eqz v4, 0043 // -000c │ │ -439042: 7100 065d 0000 |0051: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -439048: 0b04 |0054: move-result-wide v4 │ │ -43904a: 1606 e803 |0055: const-wide/16 v6, #int 1000 // #3e8 │ │ -43904e: be64 |0057: div-long/2addr v4, v6 │ │ -439050: 1306 0a00 |0058: const/16 v6, #int 10 // #a │ │ -439054: 6e20 cc5c 6100 |005a: invoke-virtual {v1, v6}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ -43905a: 0c06 |005d: move-result-object v6 │ │ -43905c: 7110 675c 0600 |005e: invoke-static {v6}, Ljava/lang/Long;.parseLong:(Ljava/lang/String;)J // method@5c67 │ │ -439062: 0b06 |0061: move-result-wide v6 │ │ -439064: 9c06 0406 |0062: sub-long v6, v4, v6 │ │ -439068: 7120 735c 7600 |0064: invoke-static {v6, v7}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ -43906e: 0b06 |0067: move-result-wide v6 │ │ -439070: 1608 0500 |0068: const-wide/16 v8, #int 5 // #5 │ │ -439074: 310a 0608 |006a: cmp-long v10, v6, v8 │ │ -439078: 3d0a 2300 |006c: if-lez v10, 008f // +0023 │ │ -43907c: 2206 f10a |006e: new-instance v6, Ljava/lang/StringBuilder; // type@0af1 │ │ -439080: 7010 ee5c 0600 |0070: invoke-direct {v6}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -439086: 1a07 d744 |0073: const-string v7, "Please correct the device's time as it is incorrect by at least 5 seconds. Local Unix Time: " // string@44d7 │ │ -43908a: 6e20 f95c 7600 |0075: invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -439090: 6e30 f55c 4605 |0078: invoke-virtual {v6, v4, v5}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@5cf5 │ │ -439096: 1a04 9d04 |007b: const-string v4, ". Source Unix Time: " // string@049d │ │ -43909a: 6e20 f95c 4600 |007d: invoke-virtual {v6, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4390a0: 6e20 f95c 1600 |0080: invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4390a6: 1a01 9904 |0083: const-string v1, "." // string@0499 │ │ -4390aa: 6e20 f95c 1600 |0085: invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4390b0: 6e10 035d 0600 |0088: invoke-virtual {v6}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4390b6: 0c01 |008b: move-result-object v1 │ │ -4390b8: 7120 f4bb 1000 |008c: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;Ljava/lang/String;)V // method@bbf4 │ │ -4390be: 6e10 7c5d 0200 |008f: invoke-virtual {v2}, Ljava/net/HttpURLConnection;.disconnect:()V // method@5d7c │ │ -4390c4: 6e10 685b 0300 |0092: invoke-virtual {v3}, Ljava/io/BufferedReader;.close:()V // method@5b68 │ │ -4390ca: 2802 |0095: goto 0097 // +0002 │ │ -4390cc: 0000 |0096: nop // spacer │ │ -4390ce: 3802 1e00 |0097: if-eqz v2, 00b5 // +001e │ │ -4390d2: 6e10 7c5d 0200 |0099: invoke-virtual {v2}, Ljava/net/HttpURLConnection;.disconnect:()V // method@5d7c │ │ -4390d8: 2819 |009c: goto 00b5 // +0019 │ │ -4390da: 0d00 |009d: move-exception v0 │ │ -4390dc: 0731 |009e: move-object v1, v3 │ │ -4390de: 2818 |009f: goto 00b7 // +0018 │ │ -4390e0: 0731 |00a0: move-object v1, v3 │ │ -4390e2: 2805 |00a1: goto 00a6 // +0005 │ │ -4390e4: 0d00 |00a2: move-exception v0 │ │ -4390e6: 0712 |00a3: move-object v2, v1 │ │ -4390e8: 2813 |00a4: goto 00b7 // +0013 │ │ -4390ea: 0712 |00a5: move-object v2, v1 │ │ -4390ec: 1a03 5250 |00a6: const-string v3, "Unable to query https://worldtimeapi.org/api/timezone/Etc/UTC.txt." // string@5052 │ │ -4390f0: 7120 f4bb 3000 |00a8: invoke-static {v0, v3}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;Ljava/lang/String;)V // method@bbf4 │ │ -4390f6: 3801 0700 |00ab: if-eqz v1, 00b2 // +0007 │ │ -4390fa: 6e10 685b 0100 |00ad: invoke-virtual {v1}, Ljava/io/BufferedReader;.close:()V // method@5b68 │ │ -439100: 2802 |00b0: goto 00b2 // +0002 │ │ -439102: 0000 |00b1: nop // spacer │ │ -439104: 3802 0300 |00b2: if-eqz v2, 00b5 // +0003 │ │ -439108: 28e5 |00b4: goto 0099 // -001b │ │ -43910a: 0e00 |00b5: return-void │ │ -43910c: 0d00 |00b6: move-exception v0 │ │ -43910e: 3801 0700 |00b7: if-eqz v1, 00be // +0007 │ │ -439112: 6e10 685b 0100 |00b9: invoke-virtual {v1}, Ljava/io/BufferedReader;.close:()V // method@5b68 │ │ -439118: 2802 |00bc: goto 00be // +0002 │ │ -43911a: 0000 |00bd: nop // spacer │ │ -43911c: 3802 0500 |00be: if-eqz v2, 00c3 // +0005 │ │ -439120: 6e10 7c5d 0200 |00c0: invoke-virtual {v2}, Ljava/net/HttpURLConnection;.disconnect:()V // method@5d7c │ │ -439126: 2700 |00c3: throw v0 │ │ -439128: 0e00 |00c4: return-void │ │ +438f8c: |[438f8c] org.purple.smoke.Time$1.run:()V │ │ +438f9c: 1a00 0c92 |0000: const-string v0, "org.purple.smoke.time" // string@920c │ │ +438fa0: 7100 0bbb 0000 |0002: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +438fa6: 0c01 |0005: move-result-object v1 │ │ +438fa8: 6e10 0ebb 0100 |0006: invoke-virtual {v1}, Lorg/purple/smoke/Kernel;.isNetworkConnected:()Z // method@bb0e │ │ +438fae: 0a01 |0009: move-result v1 │ │ +438fb0: 3801 ba00 |000a: if-eqz v1, 00c4 // +00ba │ │ +438fb4: 7100 6fbd 0000 |000c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +438fba: 0c01 |000f: move-result-object v1 │ │ +438fbc: 6e10 72bd 0100 |0010: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ +438fc2: 0a01 |0013: move-result v1 │ │ +438fc4: 3801 b000 |0014: if-eqz v1, 00c4 // +00b0 │ │ +438fc8: 7100 6fbd 0000 |0016: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +438fce: 0c01 |0019: move-result-object v1 │ │ +438fd0: 6e10 7abd 0100 |001a: invoke-virtual {v1}, Lorg/purple/smoke/State;.queryTimerServer:()Z // method@bd7a │ │ +438fd6: 0a01 |001d: move-result v1 │ │ +438fd8: 3901 0400 |001e: if-nez v1, 0022 // +0004 │ │ +438fdc: 2900 a400 |0020: goto/16 00c4 // +00a4 │ │ +438fe0: 1201 |0022: const/4 v1, #int 0 // #0 │ │ +438fe2: 2202 190b |0023: new-instance v2, Ljava/net/URL; // type@0b19 │ │ +438fe6: 1a03 7776 |0025: const-string v3, "https://worldtimeapi.org/api/timezone/Etc/UTC.txt" // string@7677 │ │ +438fea: 7020 b55d 3200 |0027: invoke-direct {v2, v3}, Ljava/net/URL;.:(Ljava/lang/String;)V // method@5db5 │ │ +438ff0: 6e10 b75d 0200 |002a: invoke-virtual {v2}, Ljava/net/URL;.openConnection:()Ljava/net/URLConnection; // method@5db7 │ │ +438ff6: 0c02 |002d: move-result-object v2 │ │ +438ff8: 1f02 0b0b |002e: check-cast v2, Ljava/net/HttpURLConnection; // type@0b0b │ │ +438ffc: 1a03 5c1b |0030: const-string v3, "GET" // string@1b5c │ │ +439000: 6e20 865d 3200 |0032: invoke-virtual {v2, v3}, Ljava/net/HttpURLConnection;.setRequestMethod:(Ljava/lang/String;)V // method@5d86 │ │ +439006: 2203 a30a |0035: new-instance v3, Ljava/io/BufferedReader; // type@0aa3 │ │ +43900a: 2204 b30a |0037: new-instance v4, Ljava/io/InputStreamReader; // type@0ab3 │ │ +43900e: 6e10 7e5d 0200 |0039: invoke-virtual {v2}, Ljava/net/HttpURLConnection;.getInputStream:()Ljava/io/InputStream; // method@5d7e │ │ +439014: 0c05 |003c: move-result-object v5 │ │ +439016: 7020 c55b 5400 |003d: invoke-direct {v4, v5}, Ljava/io/InputStreamReader;.:(Ljava/io/InputStream;)V // method@5bc5 │ │ +43901c: 7020 675b 4300 |0040: invoke-direct {v3, v4}, Ljava/io/BufferedReader;.:(Ljava/io/Reader;)V // method@5b67 │ │ +439022: 6e10 695b 0300 |0043: invoke-virtual {v3}, Ljava/io/BufferedReader;.readLine:()Ljava/lang/String; // method@5b69 │ │ +439028: 0c01 |0046: move-result-object v1 │ │ +43902a: 3801 4800 |0047: if-eqz v1, 008f // +0048 │ │ +43902e: 1a04 38a6 |0049: const-string v4, "unixtime: " // string@a638 │ │ +439032: 6e20 ca5c 4100 |004b: invoke-virtual {v1, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ +439038: 0a04 |004e: move-result v4 │ │ +43903a: 3804 f4ff |004f: if-eqz v4, 0043 // -000c │ │ +43903e: 7100 065d 0000 |0051: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +439044: 0b04 |0054: move-result-wide v4 │ │ +439046: 1606 e803 |0055: const-wide/16 v6, #int 1000 // #3e8 │ │ +43904a: be64 |0057: div-long/2addr v4, v6 │ │ +43904c: 1306 0a00 |0058: const/16 v6, #int 10 // #a │ │ +439050: 6e20 cc5c 6100 |005a: invoke-virtual {v1, v6}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ +439056: 0c06 |005d: move-result-object v6 │ │ +439058: 7110 675c 0600 |005e: invoke-static {v6}, Ljava/lang/Long;.parseLong:(Ljava/lang/String;)J // method@5c67 │ │ +43905e: 0b06 |0061: move-result-wide v6 │ │ +439060: 9c06 0406 |0062: sub-long v6, v4, v6 │ │ +439064: 7120 735c 7600 |0064: invoke-static {v6, v7}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ +43906a: 0b06 |0067: move-result-wide v6 │ │ +43906c: 1608 0500 |0068: const-wide/16 v8, #int 5 // #5 │ │ +439070: 310a 0608 |006a: cmp-long v10, v6, v8 │ │ +439074: 3d0a 2300 |006c: if-lez v10, 008f // +0023 │ │ +439078: 2206 f10a |006e: new-instance v6, Ljava/lang/StringBuilder; // type@0af1 │ │ +43907c: 7010 ee5c 0600 |0070: invoke-direct {v6}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +439082: 1a07 d744 |0073: const-string v7, "Please correct the device's time as it is incorrect by at least 5 seconds. Local Unix Time: " // string@44d7 │ │ +439086: 6e20 f95c 7600 |0075: invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43908c: 6e30 f55c 4605 |0078: invoke-virtual {v6, v4, v5}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@5cf5 │ │ +439092: 1a04 9d04 |007b: const-string v4, ". Source Unix Time: " // string@049d │ │ +439096: 6e20 f95c 4600 |007d: invoke-virtual {v6, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43909c: 6e20 f95c 1600 |0080: invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4390a2: 1a01 9904 |0083: const-string v1, "." // string@0499 │ │ +4390a6: 6e20 f95c 1600 |0085: invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4390ac: 6e10 035d 0600 |0088: invoke-virtual {v6}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4390b2: 0c01 |008b: move-result-object v1 │ │ +4390b4: 7120 f4bb 1000 |008c: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;Ljava/lang/String;)V // method@bbf4 │ │ +4390ba: 6e10 7c5d 0200 |008f: invoke-virtual {v2}, Ljava/net/HttpURLConnection;.disconnect:()V // method@5d7c │ │ +4390c0: 6e10 685b 0300 |0092: invoke-virtual {v3}, Ljava/io/BufferedReader;.close:()V // method@5b68 │ │ +4390c6: 2802 |0095: goto 0097 // +0002 │ │ +4390c8: 0000 |0096: nop // spacer │ │ +4390ca: 3802 1e00 |0097: if-eqz v2, 00b5 // +001e │ │ +4390ce: 6e10 7c5d 0200 |0099: invoke-virtual {v2}, Ljava/net/HttpURLConnection;.disconnect:()V // method@5d7c │ │ +4390d4: 2819 |009c: goto 00b5 // +0019 │ │ +4390d6: 0d00 |009d: move-exception v0 │ │ +4390d8: 0731 |009e: move-object v1, v3 │ │ +4390da: 2818 |009f: goto 00b7 // +0018 │ │ +4390dc: 0731 |00a0: move-object v1, v3 │ │ +4390de: 2805 |00a1: goto 00a6 // +0005 │ │ +4390e0: 0d00 |00a2: move-exception v0 │ │ +4390e2: 0712 |00a3: move-object v2, v1 │ │ +4390e4: 2813 |00a4: goto 00b7 // +0013 │ │ +4390e6: 0712 |00a5: move-object v2, v1 │ │ +4390e8: 1a03 5250 |00a6: const-string v3, "Unable to query https://worldtimeapi.org/api/timezone/Etc/UTC.txt." // string@5052 │ │ +4390ec: 7120 f4bb 3000 |00a8: invoke-static {v0, v3}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;Ljava/lang/String;)V // method@bbf4 │ │ +4390f2: 3801 0700 |00ab: if-eqz v1, 00b2 // +0007 │ │ +4390f6: 6e10 685b 0100 |00ad: invoke-virtual {v1}, Ljava/io/BufferedReader;.close:()V // method@5b68 │ │ +4390fc: 2802 |00b0: goto 00b2 // +0002 │ │ +4390fe: 0000 |00b1: nop // spacer │ │ +439100: 3802 0300 |00b2: if-eqz v2, 00b5 // +0003 │ │ +439104: 28e5 |00b4: goto 0099 // -001b │ │ +439106: 0e00 |00b5: return-void │ │ +439108: 0d00 |00b6: move-exception v0 │ │ +43910a: 3801 0700 |00b7: if-eqz v1, 00be // +0007 │ │ +43910e: 6e10 685b 0100 |00b9: invoke-virtual {v1}, Ljava/io/BufferedReader;.close:()V // method@5b68 │ │ +439114: 2802 |00bc: goto 00be // +0002 │ │ +439116: 0000 |00bd: nop // spacer │ │ +439118: 3802 0500 |00be: if-eqz v2, 00c3 // +0005 │ │ +43911c: 6e10 7c5d 0200 |00c0: invoke-virtual {v2}, Ljava/net/HttpURLConnection;.disconnect:()V // method@5d7c │ │ +439122: 2700 |00c3: throw v0 │ │ +439124: 0e00 |00c4: return-void │ │ catches : 9 │ │ 0x0023 - 0x0030 │ │ Ljava/lang/Exception; -> 0x00a5 │ │ -> 0x00a2 │ │ 0x0030 - 0x0043 │ │ Ljava/lang/Exception; -> 0x00a6 │ │ -> 0x00b6 │ │ @@ -752745,28 +752744,28 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 27 16-bit code units │ │ -4391a8: |[4391a8] org.purple.smoke.Time.:()V │ │ -4391b8: 7010 8f5c 0800 |0000: invoke-direct {v8}, Ljava/lang/Object;.:()V // method@5c8f │ │ -4391be: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -4391c0: 5b80 3760 |0004: iput-object v0, v8, Lorg/purple/smoke/Time;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6037 │ │ -4391c4: 7100 c660 0000 |0006: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c6 │ │ -4391ca: 0c01 |0009: move-result-object v1 │ │ -4391cc: 5b81 3760 |000a: iput-object v1, v8, Lorg/purple/smoke/Time;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6037 │ │ -4391d0: 2202 3b1b |000c: new-instance v2, Lorg/purple/smoke/Time$1; // type@1b3b │ │ -4391d4: 7020 7dbe 8200 |000e: invoke-direct {v2, v8}, Lorg/purple/smoke/Time$1;.:(Lorg/purple/smoke/Time;)V // method@be7d │ │ -4391da: 6207 f22c |0011: sget-object v7, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ -4391de: 1603 0100 |0013: const-wide/16 v3, #int 1 // #1 │ │ -4391e2: 1605 1e00 |0015: const-wide/16 v5, #int 30 // #1e │ │ -4391e6: 7807 ce60 0100 |0017: invoke-interface/range {v1, v2, v3, v4, v5, v6, v7}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ -4391ec: 0e00 |001a: return-void │ │ +4391a4: |[4391a4] org.purple.smoke.Time.:()V │ │ +4391b4: 7010 8f5c 0800 |0000: invoke-direct {v8}, Ljava/lang/Object;.:()V // method@5c8f │ │ +4391ba: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +4391bc: 5b80 3760 |0004: iput-object v0, v8, Lorg/purple/smoke/Time;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6037 │ │ +4391c0: 7100 c660 0000 |0006: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c6 │ │ +4391c6: 0c01 |0009: move-result-object v1 │ │ +4391c8: 5b81 3760 |000a: iput-object v1, v8, Lorg/purple/smoke/Time;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6037 │ │ +4391cc: 2202 3b1b |000c: new-instance v2, Lorg/purple/smoke/Time$1; // type@1b3b │ │ +4391d0: 7020 7dbe 8200 |000e: invoke-direct {v2, v8}, Lorg/purple/smoke/Time$1;.:(Lorg/purple/smoke/Time;)V // method@be7d │ │ +4391d6: 6207 f22c |0011: sget-object v7, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ +4391da: 1603 0100 |0013: const-wide/16 v3, #int 1 // #1 │ │ +4391de: 1605 1e00 |0015: const-wide/16 v5, #int 30 // #1e │ │ +4391e2: 7807 ce60 0100 |0017: invoke-interface/range {v1, v2, v3, v4, v5, v6, v7}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ +4391e8: 0e00 |001a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=47 │ │ 0x0004 line=40 │ │ 0x0006 line=48 │ │ 0x000c line=49 │ │ locals : │ │ @@ -752812,20 +752811,20 @@ │ │ type : '(Lorg/purple/smoke/UdpMulticastNeighbor;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 9 16-bit code units │ │ -4391f0: |[4391f0] org.purple.smoke.UdpMulticastNeighbor$1.:(Lorg/purple/smoke/UdpMulticastNeighbor;)V │ │ -439200: 5b01 3960 |0000: iput-object v1, v0, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -439204: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43920a: 1201 |0005: const/4 v1, #int 0 // #0 │ │ -43920c: 5c01 3860 |0006: iput-boolean v1, v0, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6038 │ │ -439210: 0e00 |0008: return-void │ │ +4391ec: |[4391ec] org.purple.smoke.UdpMulticastNeighbor$1.:(Lorg/purple/smoke/UdpMulticastNeighbor;)V │ │ +4391fc: 5b01 3960 |0000: iput-object v1, v0, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +439200: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +439206: 1201 |0005: const/4 v1, #int 0 // #0 │ │ +439208: 5c01 3860 |0006: iput-boolean v1, v0, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6038 │ │ +43920c: 0e00 |0008: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=226 │ │ 0x0006 line=227 │ │ locals : │ │ 0x0000 - 0x0009 reg=0 this Lorg/purple/smoke/UdpMulticastNeighbor$1; │ │ 0x0000 - 0x0009 reg=1 (null) Lorg/purple/smoke/UdpMulticastNeighbor; │ │ @@ -752836,154 +752835,154 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 262 16-bit code units │ │ -439214: |[439214] org.purple.smoke.UdpMulticastNeighbor$1.run:()V │ │ -439224: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -439226: 5461 3960 |0001: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -43922a: 6e10 86be 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be86 │ │ -439230: 0a01 |0006: move-result v1 │ │ -439232: 3901 2100 |0007: if-nez v1, 0028 // +0021 │ │ -439236: 5461 3960 |0009: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -43923a: 5411 3d60 |000b: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@603d │ │ -43923e: 6e10 d860 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -439244: 0a01 |0010: move-result v1 │ │ -439246: 3901 1700 |0011: if-nez v1, 0028 // +0017 │ │ -43924a: 5461 3960 |0013: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -43924e: 5411 4260 |0015: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_mutex:Ljava/lang/Object; // field@6042 │ │ -439252: 1d01 |0017: monitor-enter v1 │ │ -439254: 5462 3960 |0018: iget-object v2, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -439258: 5422 4260 |001a: iget-object v2, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_mutex:Ljava/lang/Object; // field@6042 │ │ -43925c: 1603 1027 |001c: const-wide/16 v3, #int 10000 // #2710 │ │ -439260: 6e30 985c 3204 |001e: invoke-virtual {v2, v3, v4}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ -439266: 2803 |0021: goto 0024 // +0003 │ │ -439268: 0d02 |0022: move-exception v2 │ │ -43926a: 2803 |0023: goto 0026 // +0003 │ │ -43926c: 1e01 |0024: monitor-exit v1 │ │ -43926e: 2803 |0025: goto 0028 // +0003 │ │ -439270: 1e01 |0026: monitor-exit v1 │ │ -439272: 2702 |0027: throw v2 │ │ -439274: 5461 3960 |0028: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -439278: 6e10 86be 0100 |002a: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be86 │ │ -43927e: 0a01 |002d: move-result v1 │ │ -439280: 3801 cc00 |002e: if-eqz v1, 00fa // +00cc │ │ -439284: 5461 3960 |0030: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -439288: 5411 3d60 |0032: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@603d │ │ -43928c: 6e10 d860 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -439292: 0a01 |0037: move-result v1 │ │ -439294: 3801 0400 |0038: if-eqz v1, 003c // +0004 │ │ -439298: 2900 c000 |003a: goto/16 00fa // +00c0 │ │ -43929c: 5561 3860 |003c: iget-boolean v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6038 │ │ -4392a0: 1202 |003e: const/4 v2, #int 0 // #0 │ │ -4392a2: 3801 0e00 |003f: if-eqz v1, 004d // +000e │ │ -4392a6: 5461 3960 |0041: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -4392aa: 6e10 86be 0100 |0043: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be86 │ │ -4392b0: 0a01 |0046: move-result v1 │ │ -4392b2: 3801 0500 |0047: if-eqz v1, 004c // +0005 │ │ -4392b6: 5c62 3860 |0049: iput-boolean v2, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6038 │ │ -4392ba: 280b |004b: goto 0056 // +000b │ │ -4392bc: 0e00 |004c: return-void │ │ -4392be: 5461 3960 |004d: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -4392c2: 7110 84be 0100 |004f: invoke-static {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.access$000:(Lorg/purple/smoke/UdpMulticastNeighbor;)Ljava/net/MulticastSocket; // method@be84 │ │ -4392c8: 0c01 |0052: move-result-object v1 │ │ -4392ca: 3901 0300 |0053: if-nez v1, 0056 // +0003 │ │ -4392ce: 0e00 |0055: return-void │ │ -4392d0: 1501 1000 |0056: const/high16 v1, #int 1048576 // #10 │ │ -4392d4: 2313 481b |0058: new-array v3, v1, [B // type@1b48 │ │ -4392d8: 2204 090b |005a: new-instance v4, Ljava/net/DatagramPacket; // type@0b09 │ │ -4392dc: 7030 6c5d 3401 |005c: invoke-direct {v4, v3, v1}, Ljava/net/DatagramPacket;.:([BI)V // method@5d6c │ │ -4392e2: 1211 |005f: const/4 v1, #int 1 // #1 │ │ -4392e4: 5463 3960 |0060: iget-object v3, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -4392e8: 7110 84be 0300 |0062: invoke-static {v3}, Lorg/purple/smoke/UdpMulticastNeighbor;.access$000:(Lorg/purple/smoke/UdpMulticastNeighbor;)Ljava/net/MulticastSocket; // method@be84 │ │ -4392ee: 0c03 |0065: move-result-object v3 │ │ -4392f0: 6e20 985d 4300 |0066: invoke-virtual {v3, v4}, Ljava/net/MulticastSocket;.receive:(Ljava/net/DatagramPacket;)V // method@5d98 │ │ -4392f6: 6e10 6f5d 0400 |0069: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ -4392fc: 0a03 |006c: move-result v3 │ │ -4392fe: 3d03 1b00 |006d: if-lez v3, 0088 // +001b │ │ -439302: 2203 a60a |006f: new-instance v3, Ljava/io/ByteArrayOutputStream; // type@0aa6 │ │ -439306: 7010 715b 0300 |0071: invoke-direct {v3}, Ljava/io/ByteArrayOutputStream;.:()V // method@5b71 │ │ -43930c: 6e10 6e5d 0400 |0074: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getData:()[B // method@5d6e │ │ -439312: 0c00 |0077: move-result-object v0 │ │ -439314: 6e10 6f5d 0400 |0078: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ -43931a: 0a05 |007b: move-result v5 │ │ -43931c: 6e40 7a5b 0352 |007c: invoke-virtual {v3, v0, v2, v5}, Ljava/io/ByteArrayOutputStream;.write:([BII)V // method@5b7a │ │ -439322: 0730 |007f: move-object v0, v3 │ │ -439324: 2808 |0080: goto 0088 // +0008 │ │ -439326: 0d01 |0081: move-exception v1 │ │ -439328: 0730 |0082: move-object v0, v3 │ │ -43932a: 2900 7900 |0083: goto/16 00fc // +0079 │ │ -43932e: 0730 |0085: move-object v0, v3 │ │ -439330: 2900 7c00 |0086: goto/16 0102 // +007c │ │ -439334: 6e10 6f5d 0400 |0088: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ -43933a: 0a02 |008b: move-result v2 │ │ -43933c: 3b02 1600 |008c: if-gez v2, 00a2 // +0016 │ │ -439340: 5c61 3860 |008e: iput-boolean v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6038 │ │ -439344: 5461 3960 |0090: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -439348: 1a02 1109 |0092: const-string v2, "A socket receive() error occurred." // string@0911 │ │ -43934c: 6e20 90be 2100 |0094: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be90 │ │ -439352: 5461 3960 |0097: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -439356: 6e10 87be 0100 |0099: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be87 │ │ -43935c: 3800 0500 |009c: if-eqz v0, 00a1 // +0005 │ │ -439360: 6e10 735b 0000 |009e: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ -439366: 0e00 |00a1: return-void │ │ -439368: 3902 0800 |00a2: if-nez v2, 00aa // +0008 │ │ -43936c: 3800 0500 |00a4: if-eqz v0, 00a9 // +0005 │ │ -439370: 6e10 735b 0000 |00a6: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ -439376: 0e00 |00a9: return-void │ │ -439378: 5461 3960 |00aa: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -43937c: 5411 3b60 |00ac: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@603b │ │ -439380: 8122 |00ae: int-to-long v2, v2 │ │ -439382: 6e30 e260 2103 |00af: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e2 │ │ -439388: 5461 3960 |00b2: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -43938c: 5411 4160 |00b4: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6041 │ │ -439390: 7100 0b5d 0000 |00b6: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -439396: 0b02 |00b9: move-result-wide v2 │ │ -439398: 6e30 e360 2103 |00ba: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43939e: 3800 1900 |00bd: if-eqz v0, 00d6 // +0019 │ │ -4393a2: 5461 3960 |00bf: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -4393a6: 5411 4760 |00c1: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6047 │ │ -4393aa: 6e10 e85c 0100 |00c3: invoke-virtual {v1}, Ljava/lang/StringBuffer;.length:()I // method@5ce8 │ │ -4393b0: 0a01 |00c6: move-result v1 │ │ -4393b2: 1502 8000 |00c7: const/high16 v2, #int 8388608 // #80 │ │ -4393b6: 3521 0d00 |00c9: if-ge v1, v2, 00d6 // +000d │ │ -4393ba: 5461 3960 |00cb: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -4393be: 5411 4760 |00cd: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6047 │ │ -4393c2: 6e10 775b 0000 |00cf: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.toString:()Ljava/lang/String; // method@5b77 │ │ -4393c8: 0c02 |00d2: move-result-object v2 │ │ -4393ca: 6e20 e05c 2100 |00d3: invoke-virtual {v1, v2}, Ljava/lang/StringBuffer;.append:(Ljava/lang/String;)Ljava/lang/StringBuffer; // method@5ce0 │ │ -4393d0: 5461 3960 |00d6: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -4393d4: 5411 4360 |00d8: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6043 │ │ -4393d8: 1d01 |00da: monitor-enter v1 │ │ -4393da: 5462 3960 |00db: iget-object v2, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -4393de: 5422 4360 |00dd: iget-object v2, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6043 │ │ -4393e2: 6e10 945c 0200 |00df: invoke-virtual {v2}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ -4393e8: 1e01 |00e2: monitor-exit v1 │ │ -4393ea: 3800 2200 |00e3: if-eqz v0, 0105 // +0022 │ │ -4393ee: 6e10 735b 0000 |00e5: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ -4393f4: 281d |00e8: goto 0105 // +001d │ │ -4393f6: 0d02 |00e9: move-exception v2 │ │ -4393f8: 1e01 |00ea: monitor-exit v1 │ │ -4393fa: 2702 |00eb: throw v2 │ │ -4393fc: 5c61 3860 |00ec: iput-boolean v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6038 │ │ -439400: 5461 3960 |00ee: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -439404: 1a02 1109 |00f0: const-string v2, "A socket receive() error occurred." // string@0911 │ │ -439408: 6e20 90be 2100 |00f2: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be90 │ │ -43940e: 5461 3960 |00f5: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ -439412: 6e10 87be 0100 |00f7: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be87 │ │ -439418: 0e00 |00fa: return-void │ │ -43941a: 0d01 |00fb: move-exception v1 │ │ -43941c: 3800 0500 |00fc: if-eqz v0, 0101 // +0005 │ │ -439420: 6e10 735b 0000 |00fe: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ -439426: 2701 |0101: throw v1 │ │ -439428: 3800 0300 |0102: if-eqz v0, 0105 // +0003 │ │ -43942c: 28e1 |0104: goto 00e5 // -001f │ │ -43942e: 0e00 |0105: return-void │ │ +439210: |[439210] org.purple.smoke.UdpMulticastNeighbor$1.run:()V │ │ +439220: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +439222: 5461 3960 |0001: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +439226: 6e10 86be 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be86 │ │ +43922c: 0a01 |0006: move-result v1 │ │ +43922e: 3901 2100 |0007: if-nez v1, 0028 // +0021 │ │ +439232: 5461 3960 |0009: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +439236: 5411 3d60 |000b: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@603d │ │ +43923a: 6e10 d860 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +439240: 0a01 |0010: move-result v1 │ │ +439242: 3901 1700 |0011: if-nez v1, 0028 // +0017 │ │ +439246: 5461 3960 |0013: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +43924a: 5411 4260 |0015: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_mutex:Ljava/lang/Object; // field@6042 │ │ +43924e: 1d01 |0017: monitor-enter v1 │ │ +439250: 5462 3960 |0018: iget-object v2, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +439254: 5422 4260 |001a: iget-object v2, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_mutex:Ljava/lang/Object; // field@6042 │ │ +439258: 1603 1027 |001c: const-wide/16 v3, #int 10000 // #2710 │ │ +43925c: 6e30 985c 3204 |001e: invoke-virtual {v2, v3, v4}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ +439262: 2803 |0021: goto 0024 // +0003 │ │ +439264: 0d02 |0022: move-exception v2 │ │ +439266: 2803 |0023: goto 0026 // +0003 │ │ +439268: 1e01 |0024: monitor-exit v1 │ │ +43926a: 2803 |0025: goto 0028 // +0003 │ │ +43926c: 1e01 |0026: monitor-exit v1 │ │ +43926e: 2702 |0027: throw v2 │ │ +439270: 5461 3960 |0028: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +439274: 6e10 86be 0100 |002a: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be86 │ │ +43927a: 0a01 |002d: move-result v1 │ │ +43927c: 3801 cc00 |002e: if-eqz v1, 00fa // +00cc │ │ +439280: 5461 3960 |0030: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +439284: 5411 3d60 |0032: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@603d │ │ +439288: 6e10 d860 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +43928e: 0a01 |0037: move-result v1 │ │ +439290: 3801 0400 |0038: if-eqz v1, 003c // +0004 │ │ +439294: 2900 c000 |003a: goto/16 00fa // +00c0 │ │ +439298: 5561 3860 |003c: iget-boolean v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6038 │ │ +43929c: 1202 |003e: const/4 v2, #int 0 // #0 │ │ +43929e: 3801 0e00 |003f: if-eqz v1, 004d // +000e │ │ +4392a2: 5461 3960 |0041: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +4392a6: 6e10 86be 0100 |0043: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be86 │ │ +4392ac: 0a01 |0046: move-result v1 │ │ +4392ae: 3801 0500 |0047: if-eqz v1, 004c // +0005 │ │ +4392b2: 5c62 3860 |0049: iput-boolean v2, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6038 │ │ +4392b6: 280b |004b: goto 0056 // +000b │ │ +4392b8: 0e00 |004c: return-void │ │ +4392ba: 5461 3960 |004d: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +4392be: 7110 84be 0100 |004f: invoke-static {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.access$000:(Lorg/purple/smoke/UdpMulticastNeighbor;)Ljava/net/MulticastSocket; // method@be84 │ │ +4392c4: 0c01 |0052: move-result-object v1 │ │ +4392c6: 3901 0300 |0053: if-nez v1, 0056 // +0003 │ │ +4392ca: 0e00 |0055: return-void │ │ +4392cc: 1501 1000 |0056: const/high16 v1, #int 1048576 // #10 │ │ +4392d0: 2313 481b |0058: new-array v3, v1, [B // type@1b48 │ │ +4392d4: 2204 090b |005a: new-instance v4, Ljava/net/DatagramPacket; // type@0b09 │ │ +4392d8: 7030 6c5d 3401 |005c: invoke-direct {v4, v3, v1}, Ljava/net/DatagramPacket;.:([BI)V // method@5d6c │ │ +4392de: 1211 |005f: const/4 v1, #int 1 // #1 │ │ +4392e0: 5463 3960 |0060: iget-object v3, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +4392e4: 7110 84be 0300 |0062: invoke-static {v3}, Lorg/purple/smoke/UdpMulticastNeighbor;.access$000:(Lorg/purple/smoke/UdpMulticastNeighbor;)Ljava/net/MulticastSocket; // method@be84 │ │ +4392ea: 0c03 |0065: move-result-object v3 │ │ +4392ec: 6e20 985d 4300 |0066: invoke-virtual {v3, v4}, Ljava/net/MulticastSocket;.receive:(Ljava/net/DatagramPacket;)V // method@5d98 │ │ +4392f2: 6e10 6f5d 0400 |0069: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ +4392f8: 0a03 |006c: move-result v3 │ │ +4392fa: 3d03 1b00 |006d: if-lez v3, 0088 // +001b │ │ +4392fe: 2203 a60a |006f: new-instance v3, Ljava/io/ByteArrayOutputStream; // type@0aa6 │ │ +439302: 7010 715b 0300 |0071: invoke-direct {v3}, Ljava/io/ByteArrayOutputStream;.:()V // method@5b71 │ │ +439308: 6e10 6e5d 0400 |0074: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getData:()[B // method@5d6e │ │ +43930e: 0c00 |0077: move-result-object v0 │ │ +439310: 6e10 6f5d 0400 |0078: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ +439316: 0a05 |007b: move-result v5 │ │ +439318: 6e40 7a5b 0352 |007c: invoke-virtual {v3, v0, v2, v5}, Ljava/io/ByteArrayOutputStream;.write:([BII)V // method@5b7a │ │ +43931e: 0730 |007f: move-object v0, v3 │ │ +439320: 2808 |0080: goto 0088 // +0008 │ │ +439322: 0d01 |0081: move-exception v1 │ │ +439324: 0730 |0082: move-object v0, v3 │ │ +439326: 2900 7900 |0083: goto/16 00fc // +0079 │ │ +43932a: 0730 |0085: move-object v0, v3 │ │ +43932c: 2900 7c00 |0086: goto/16 0102 // +007c │ │ +439330: 6e10 6f5d 0400 |0088: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ +439336: 0a02 |008b: move-result v2 │ │ +439338: 3b02 1600 |008c: if-gez v2, 00a2 // +0016 │ │ +43933c: 5c61 3860 |008e: iput-boolean v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6038 │ │ +439340: 5461 3960 |0090: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +439344: 1a02 1109 |0092: const-string v2, "A socket receive() error occurred." // string@0911 │ │ +439348: 6e20 90be 2100 |0094: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be90 │ │ +43934e: 5461 3960 |0097: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +439352: 6e10 87be 0100 |0099: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be87 │ │ +439358: 3800 0500 |009c: if-eqz v0, 00a1 // +0005 │ │ +43935c: 6e10 735b 0000 |009e: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ +439362: 0e00 |00a1: return-void │ │ +439364: 3902 0800 |00a2: if-nez v2, 00aa // +0008 │ │ +439368: 3800 0500 |00a4: if-eqz v0, 00a9 // +0005 │ │ +43936c: 6e10 735b 0000 |00a6: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ +439372: 0e00 |00a9: return-void │ │ +439374: 5461 3960 |00aa: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +439378: 5411 3b60 |00ac: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@603b │ │ +43937c: 8122 |00ae: int-to-long v2, v2 │ │ +43937e: 6e30 e260 2103 |00af: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e2 │ │ +439384: 5461 3960 |00b2: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +439388: 5411 4160 |00b4: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6041 │ │ +43938c: 7100 0b5d 0000 |00b6: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +439392: 0b02 |00b9: move-result-wide v2 │ │ +439394: 6e30 e360 2103 |00ba: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43939a: 3800 1900 |00bd: if-eqz v0, 00d6 // +0019 │ │ +43939e: 5461 3960 |00bf: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +4393a2: 5411 4760 |00c1: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6047 │ │ +4393a6: 6e10 e85c 0100 |00c3: invoke-virtual {v1}, Ljava/lang/StringBuffer;.length:()I // method@5ce8 │ │ +4393ac: 0a01 |00c6: move-result v1 │ │ +4393ae: 1502 8000 |00c7: const/high16 v2, #int 8388608 // #80 │ │ +4393b2: 3521 0d00 |00c9: if-ge v1, v2, 00d6 // +000d │ │ +4393b6: 5461 3960 |00cb: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +4393ba: 5411 4760 |00cd: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6047 │ │ +4393be: 6e10 775b 0000 |00cf: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.toString:()Ljava/lang/String; // method@5b77 │ │ +4393c4: 0c02 |00d2: move-result-object v2 │ │ +4393c6: 6e20 e05c 2100 |00d3: invoke-virtual {v1, v2}, Ljava/lang/StringBuffer;.append:(Ljava/lang/String;)Ljava/lang/StringBuffer; // method@5ce0 │ │ +4393cc: 5461 3960 |00d6: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +4393d0: 5411 4360 |00d8: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6043 │ │ +4393d4: 1d01 |00da: monitor-enter v1 │ │ +4393d6: 5462 3960 |00db: iget-object v2, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +4393da: 5422 4360 |00dd: iget-object v2, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6043 │ │ +4393de: 6e10 945c 0200 |00df: invoke-virtual {v2}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ +4393e4: 1e01 |00e2: monitor-exit v1 │ │ +4393e6: 3800 2200 |00e3: if-eqz v0, 0105 // +0022 │ │ +4393ea: 6e10 735b 0000 |00e5: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ +4393f0: 281d |00e8: goto 0105 // +001d │ │ +4393f2: 0d02 |00e9: move-exception v2 │ │ +4393f4: 1e01 |00ea: monitor-exit v1 │ │ +4393f6: 2702 |00eb: throw v2 │ │ +4393f8: 5c61 3860 |00ec: iput-boolean v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6038 │ │ +4393fc: 5461 3960 |00ee: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +439400: 1a02 1109 |00f0: const-string v2, "A socket receive() error occurred." // string@0911 │ │ +439404: 6e20 90be 2100 |00f2: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be90 │ │ +43940a: 5461 3960 |00f5: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@6039 │ │ +43940e: 6e10 87be 0100 |00f7: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be87 │ │ +439414: 0e00 |00fa: return-void │ │ +439416: 0d01 |00fb: move-exception v1 │ │ +439418: 3800 0500 |00fc: if-eqz v0, 0101 // +0005 │ │ +43941c: 6e10 735b 0000 |00fe: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ +439422: 2701 |0101: throw v1 │ │ +439424: 3800 0300 |0102: if-eqz v0, 0105 // +0003 │ │ +439428: 28e1 |0104: goto 00e5 // -001f │ │ +43942a: 0e00 |0105: return-void │ │ catches : 16 │ │ 0x0001 - 0x0018 │ │ Ljava/lang/Exception; -> 0x0102 │ │ -> 0x00fb │ │ 0x0018 - 0x0021 │ │ Ljava/lang/Exception; -> 0x0024 │ │ -> 0x0022 │ │ @@ -753101,20 +753100,20 @@ │ │ type : '(Lorg/purple/smoke/UdpNeighbor;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 9 16-bit code units │ │ -439a7c: |[439a7c] org.purple.smoke.UdpNeighbor$1.:(Lorg/purple/smoke/UdpNeighbor;)V │ │ -439a8c: 5b01 4a60 |0000: iput-object v1, v0, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439a90: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -439a96: 1201 |0005: const/4 v1, #int 0 // #0 │ │ -439a98: 5c01 4960 |0006: iput-boolean v1, v0, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@6049 │ │ -439a9c: 0e00 |0008: return-void │ │ +439a78: |[439a78] org.purple.smoke.UdpNeighbor$1.:(Lorg/purple/smoke/UdpNeighbor;)V │ │ +439a88: 5b01 4a60 |0000: iput-object v1, v0, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439a8c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +439a92: 1201 |0005: const/4 v1, #int 0 // #0 │ │ +439a94: 5c01 4960 |0006: iput-boolean v1, v0, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@6049 │ │ +439a98: 0e00 |0008: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=233 │ │ 0x0006 line=234 │ │ locals : │ │ 0x0000 - 0x0009 reg=0 this Lorg/purple/smoke/UdpNeighbor$1; │ │ 0x0000 - 0x0009 reg=1 (null) Lorg/purple/smoke/UdpNeighbor; │ │ @@ -753125,154 +753124,154 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 262 16-bit code units │ │ -439aa0: |[439aa0] org.purple.smoke.UdpNeighbor$1.run:()V │ │ -439ab0: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -439ab2: 5461 4a60 |0001: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439ab6: 6e10 98be 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be98 │ │ -439abc: 0a01 |0006: move-result v1 │ │ -439abe: 3901 2100 |0007: if-nez v1, 0028 // +0021 │ │ -439ac2: 5461 4a60 |0009: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439ac6: 5411 4d60 |000b: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@604d │ │ -439aca: 6e10 d860 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -439ad0: 0a01 |0010: move-result v1 │ │ -439ad2: 3901 1700 |0011: if-nez v1, 0028 // +0017 │ │ -439ad6: 5461 4a60 |0013: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439ada: 5411 5260 |0015: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_mutex:Ljava/lang/Object; // field@6052 │ │ -439ade: 1d01 |0017: monitor-enter v1 │ │ -439ae0: 5462 4a60 |0018: iget-object v2, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439ae4: 5422 5260 |001a: iget-object v2, v2, Lorg/purple/smoke/UdpNeighbor;.m_mutex:Ljava/lang/Object; // field@6052 │ │ -439ae8: 1603 1027 |001c: const-wide/16 v3, #int 10000 // #2710 │ │ -439aec: 6e30 985c 3204 |001e: invoke-virtual {v2, v3, v4}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ -439af2: 2803 |0021: goto 0024 // +0003 │ │ -439af4: 0d02 |0022: move-exception v2 │ │ -439af6: 2803 |0023: goto 0026 // +0003 │ │ -439af8: 1e01 |0024: monitor-exit v1 │ │ -439afa: 2803 |0025: goto 0028 // +0003 │ │ -439afc: 1e01 |0026: monitor-exit v1 │ │ -439afe: 2702 |0027: throw v2 │ │ -439b00: 5461 4a60 |0028: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439b04: 6e10 98be 0100 |002a: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be98 │ │ -439b0a: 0a01 |002d: move-result v1 │ │ -439b0c: 3801 cc00 |002e: if-eqz v1, 00fa // +00cc │ │ -439b10: 5461 4a60 |0030: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439b14: 5411 4d60 |0032: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@604d │ │ -439b18: 6e10 d860 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -439b1e: 0a01 |0037: move-result v1 │ │ -439b20: 3801 0400 |0038: if-eqz v1, 003c // +0004 │ │ -439b24: 2900 c000 |003a: goto/16 00fa // +00c0 │ │ -439b28: 5561 4960 |003c: iget-boolean v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@6049 │ │ -439b2c: 1202 |003e: const/4 v2, #int 0 // #0 │ │ -439b2e: 3801 0e00 |003f: if-eqz v1, 004d // +000e │ │ -439b32: 5461 4a60 |0041: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439b36: 6e10 98be 0100 |0043: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be98 │ │ -439b3c: 0a01 |0046: move-result v1 │ │ -439b3e: 3801 0500 |0047: if-eqz v1, 004c // +0005 │ │ -439b42: 5c62 4960 |0049: iput-boolean v2, v6, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@6049 │ │ -439b46: 280b |004b: goto 0056 // +000b │ │ -439b48: 0e00 |004c: return-void │ │ -439b4a: 5461 4a60 |004d: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439b4e: 7110 96be 0100 |004f: invoke-static {v1}, Lorg/purple/smoke/UdpNeighbor;.access$000:(Lorg/purple/smoke/UdpNeighbor;)Ljava/net/DatagramSocket; // method@be96 │ │ -439b54: 0c01 |0052: move-result-object v1 │ │ -439b56: 3901 0300 |0053: if-nez v1, 0056 // +0003 │ │ -439b5a: 0e00 |0055: return-void │ │ -439b5c: 1501 1000 |0056: const/high16 v1, #int 1048576 // #10 │ │ -439b60: 2313 481b |0058: new-array v3, v1, [B // type@1b48 │ │ -439b64: 2204 090b |005a: new-instance v4, Ljava/net/DatagramPacket; // type@0b09 │ │ -439b68: 7030 6c5d 3401 |005c: invoke-direct {v4, v3, v1}, Ljava/net/DatagramPacket;.:([BI)V // method@5d6c │ │ -439b6e: 1211 |005f: const/4 v1, #int 1 // #1 │ │ -439b70: 5463 4a60 |0060: iget-object v3, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439b74: 7110 96be 0300 |0062: invoke-static {v3}, Lorg/purple/smoke/UdpNeighbor;.access$000:(Lorg/purple/smoke/UdpNeighbor;)Ljava/net/DatagramSocket; // method@be96 │ │ -439b7a: 0c03 |0065: move-result-object v3 │ │ -439b7c: 6e20 785d 4300 |0066: invoke-virtual {v3, v4}, Ljava/net/DatagramSocket;.receive:(Ljava/net/DatagramPacket;)V // method@5d78 │ │ -439b82: 6e10 6f5d 0400 |0069: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ -439b88: 0a03 |006c: move-result v3 │ │ -439b8a: 3d03 1b00 |006d: if-lez v3, 0088 // +001b │ │ -439b8e: 2203 a60a |006f: new-instance v3, Ljava/io/ByteArrayOutputStream; // type@0aa6 │ │ -439b92: 7010 715b 0300 |0071: invoke-direct {v3}, Ljava/io/ByteArrayOutputStream;.:()V // method@5b71 │ │ -439b98: 6e10 6e5d 0400 |0074: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getData:()[B // method@5d6e │ │ -439b9e: 0c00 |0077: move-result-object v0 │ │ -439ba0: 6e10 6f5d 0400 |0078: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ -439ba6: 0a05 |007b: move-result v5 │ │ -439ba8: 6e40 7a5b 0352 |007c: invoke-virtual {v3, v0, v2, v5}, Ljava/io/ByteArrayOutputStream;.write:([BII)V // method@5b7a │ │ -439bae: 0730 |007f: move-object v0, v3 │ │ -439bb0: 2808 |0080: goto 0088 // +0008 │ │ -439bb2: 0d01 |0081: move-exception v1 │ │ -439bb4: 0730 |0082: move-object v0, v3 │ │ -439bb6: 2900 7900 |0083: goto/16 00fc // +0079 │ │ -439bba: 0730 |0085: move-object v0, v3 │ │ -439bbc: 2900 7c00 |0086: goto/16 0102 // +007c │ │ -439bc0: 6e10 6f5d 0400 |0088: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ -439bc6: 0a02 |008b: move-result v2 │ │ -439bc8: 3b02 1600 |008c: if-gez v2, 00a2 // +0016 │ │ -439bcc: 5c61 4960 |008e: iput-boolean v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@6049 │ │ -439bd0: 5461 4a60 |0090: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439bd4: 1a02 1109 |0092: const-string v2, "A socket receive() error occurred." // string@0911 │ │ -439bd8: 6e20 a2be 2100 |0094: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea2 │ │ -439bde: 5461 4a60 |0097: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439be2: 6e10 99be 0100 |0099: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be99 │ │ -439be8: 3800 0500 |009c: if-eqz v0, 00a1 // +0005 │ │ -439bec: 6e10 735b 0000 |009e: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ -439bf2: 0e00 |00a1: return-void │ │ -439bf4: 3902 0800 |00a2: if-nez v2, 00aa // +0008 │ │ -439bf8: 3800 0500 |00a4: if-eqz v0, 00a9 // +0005 │ │ -439bfc: 6e10 735b 0000 |00a6: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ -439c02: 0e00 |00a9: return-void │ │ -439c04: 5461 4a60 |00aa: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439c08: 5411 4b60 |00ac: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@604b │ │ -439c0c: 8122 |00ae: int-to-long v2, v2 │ │ -439c0e: 6e30 e260 2103 |00af: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e2 │ │ -439c14: 5461 4a60 |00b2: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439c18: 5411 5160 |00b4: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6051 │ │ -439c1c: 7100 0b5d 0000 |00b6: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -439c22: 0b02 |00b9: move-result-wide v2 │ │ -439c24: 6e30 e360 2103 |00ba: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -439c2a: 3800 1900 |00bd: if-eqz v0, 00d6 // +0019 │ │ -439c2e: 5461 4a60 |00bf: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439c32: 5411 5760 |00c1: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6057 │ │ -439c36: 6e10 e85c 0100 |00c3: invoke-virtual {v1}, Ljava/lang/StringBuffer;.length:()I // method@5ce8 │ │ -439c3c: 0a01 |00c6: move-result v1 │ │ -439c3e: 1502 8000 |00c7: const/high16 v2, #int 8388608 // #80 │ │ -439c42: 3521 0d00 |00c9: if-ge v1, v2, 00d6 // +000d │ │ -439c46: 5461 4a60 |00cb: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439c4a: 5411 5760 |00cd: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6057 │ │ -439c4e: 6e10 775b 0000 |00cf: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.toString:()Ljava/lang/String; // method@5b77 │ │ -439c54: 0c02 |00d2: move-result-object v2 │ │ -439c56: 6e20 e05c 2100 |00d3: invoke-virtual {v1, v2}, Ljava/lang/StringBuffer;.append:(Ljava/lang/String;)Ljava/lang/StringBuffer; // method@5ce0 │ │ -439c5c: 5461 4a60 |00d6: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439c60: 5411 5360 |00d8: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6053 │ │ -439c64: 1d01 |00da: monitor-enter v1 │ │ -439c66: 5462 4a60 |00db: iget-object v2, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439c6a: 5422 5360 |00dd: iget-object v2, v2, Lorg/purple/smoke/UdpNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6053 │ │ -439c6e: 6e10 945c 0200 |00df: invoke-virtual {v2}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ -439c74: 1e01 |00e2: monitor-exit v1 │ │ -439c76: 3800 2200 |00e3: if-eqz v0, 0105 // +0022 │ │ -439c7a: 6e10 735b 0000 |00e5: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ -439c80: 281d |00e8: goto 0105 // +001d │ │ -439c82: 0d02 |00e9: move-exception v2 │ │ -439c84: 1e01 |00ea: monitor-exit v1 │ │ -439c86: 2702 |00eb: throw v2 │ │ -439c88: 5c61 4960 |00ec: iput-boolean v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@6049 │ │ -439c8c: 5461 4a60 |00ee: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439c90: 1a02 1109 |00f0: const-string v2, "A socket receive() error occurred." // string@0911 │ │ -439c94: 6e20 a2be 2100 |00f2: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea2 │ │ -439c9a: 5461 4a60 |00f5: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ -439c9e: 6e10 99be 0100 |00f7: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be99 │ │ -439ca4: 0e00 |00fa: return-void │ │ -439ca6: 0d01 |00fb: move-exception v1 │ │ -439ca8: 3800 0500 |00fc: if-eqz v0, 0101 // +0005 │ │ -439cac: 6e10 735b 0000 |00fe: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ -439cb2: 2701 |0101: throw v1 │ │ -439cb4: 3800 0300 |0102: if-eqz v0, 0105 // +0003 │ │ -439cb8: 28e1 |0104: goto 00e5 // -001f │ │ -439cba: 0e00 |0105: return-void │ │ +439a9c: |[439a9c] org.purple.smoke.UdpNeighbor$1.run:()V │ │ +439aac: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +439aae: 5461 4a60 |0001: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439ab2: 6e10 98be 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be98 │ │ +439ab8: 0a01 |0006: move-result v1 │ │ +439aba: 3901 2100 |0007: if-nez v1, 0028 // +0021 │ │ +439abe: 5461 4a60 |0009: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439ac2: 5411 4d60 |000b: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@604d │ │ +439ac6: 6e10 d860 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +439acc: 0a01 |0010: move-result v1 │ │ +439ace: 3901 1700 |0011: if-nez v1, 0028 // +0017 │ │ +439ad2: 5461 4a60 |0013: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439ad6: 5411 5260 |0015: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_mutex:Ljava/lang/Object; // field@6052 │ │ +439ada: 1d01 |0017: monitor-enter v1 │ │ +439adc: 5462 4a60 |0018: iget-object v2, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439ae0: 5422 5260 |001a: iget-object v2, v2, Lorg/purple/smoke/UdpNeighbor;.m_mutex:Ljava/lang/Object; // field@6052 │ │ +439ae4: 1603 1027 |001c: const-wide/16 v3, #int 10000 // #2710 │ │ +439ae8: 6e30 985c 3204 |001e: invoke-virtual {v2, v3, v4}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ +439aee: 2803 |0021: goto 0024 // +0003 │ │ +439af0: 0d02 |0022: move-exception v2 │ │ +439af2: 2803 |0023: goto 0026 // +0003 │ │ +439af4: 1e01 |0024: monitor-exit v1 │ │ +439af6: 2803 |0025: goto 0028 // +0003 │ │ +439af8: 1e01 |0026: monitor-exit v1 │ │ +439afa: 2702 |0027: throw v2 │ │ +439afc: 5461 4a60 |0028: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439b00: 6e10 98be 0100 |002a: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be98 │ │ +439b06: 0a01 |002d: move-result v1 │ │ +439b08: 3801 cc00 |002e: if-eqz v1, 00fa // +00cc │ │ +439b0c: 5461 4a60 |0030: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439b10: 5411 4d60 |0032: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@604d │ │ +439b14: 6e10 d860 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +439b1a: 0a01 |0037: move-result v1 │ │ +439b1c: 3801 0400 |0038: if-eqz v1, 003c // +0004 │ │ +439b20: 2900 c000 |003a: goto/16 00fa // +00c0 │ │ +439b24: 5561 4960 |003c: iget-boolean v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@6049 │ │ +439b28: 1202 |003e: const/4 v2, #int 0 // #0 │ │ +439b2a: 3801 0e00 |003f: if-eqz v1, 004d // +000e │ │ +439b2e: 5461 4a60 |0041: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439b32: 6e10 98be 0100 |0043: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be98 │ │ +439b38: 0a01 |0046: move-result v1 │ │ +439b3a: 3801 0500 |0047: if-eqz v1, 004c // +0005 │ │ +439b3e: 5c62 4960 |0049: iput-boolean v2, v6, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@6049 │ │ +439b42: 280b |004b: goto 0056 // +000b │ │ +439b44: 0e00 |004c: return-void │ │ +439b46: 5461 4a60 |004d: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439b4a: 7110 96be 0100 |004f: invoke-static {v1}, Lorg/purple/smoke/UdpNeighbor;.access$000:(Lorg/purple/smoke/UdpNeighbor;)Ljava/net/DatagramSocket; // method@be96 │ │ +439b50: 0c01 |0052: move-result-object v1 │ │ +439b52: 3901 0300 |0053: if-nez v1, 0056 // +0003 │ │ +439b56: 0e00 |0055: return-void │ │ +439b58: 1501 1000 |0056: const/high16 v1, #int 1048576 // #10 │ │ +439b5c: 2313 481b |0058: new-array v3, v1, [B // type@1b48 │ │ +439b60: 2204 090b |005a: new-instance v4, Ljava/net/DatagramPacket; // type@0b09 │ │ +439b64: 7030 6c5d 3401 |005c: invoke-direct {v4, v3, v1}, Ljava/net/DatagramPacket;.:([BI)V // method@5d6c │ │ +439b6a: 1211 |005f: const/4 v1, #int 1 // #1 │ │ +439b6c: 5463 4a60 |0060: iget-object v3, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439b70: 7110 96be 0300 |0062: invoke-static {v3}, Lorg/purple/smoke/UdpNeighbor;.access$000:(Lorg/purple/smoke/UdpNeighbor;)Ljava/net/DatagramSocket; // method@be96 │ │ +439b76: 0c03 |0065: move-result-object v3 │ │ +439b78: 6e20 785d 4300 |0066: invoke-virtual {v3, v4}, Ljava/net/DatagramSocket;.receive:(Ljava/net/DatagramPacket;)V // method@5d78 │ │ +439b7e: 6e10 6f5d 0400 |0069: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ +439b84: 0a03 |006c: move-result v3 │ │ +439b86: 3d03 1b00 |006d: if-lez v3, 0088 // +001b │ │ +439b8a: 2203 a60a |006f: new-instance v3, Ljava/io/ByteArrayOutputStream; // type@0aa6 │ │ +439b8e: 7010 715b 0300 |0071: invoke-direct {v3}, Ljava/io/ByteArrayOutputStream;.:()V // method@5b71 │ │ +439b94: 6e10 6e5d 0400 |0074: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getData:()[B // method@5d6e │ │ +439b9a: 0c00 |0077: move-result-object v0 │ │ +439b9c: 6e10 6f5d 0400 |0078: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ +439ba2: 0a05 |007b: move-result v5 │ │ +439ba4: 6e40 7a5b 0352 |007c: invoke-virtual {v3, v0, v2, v5}, Ljava/io/ByteArrayOutputStream;.write:([BII)V // method@5b7a │ │ +439baa: 0730 |007f: move-object v0, v3 │ │ +439bac: 2808 |0080: goto 0088 // +0008 │ │ +439bae: 0d01 |0081: move-exception v1 │ │ +439bb0: 0730 |0082: move-object v0, v3 │ │ +439bb2: 2900 7900 |0083: goto/16 00fc // +0079 │ │ +439bb6: 0730 |0085: move-object v0, v3 │ │ +439bb8: 2900 7c00 |0086: goto/16 0102 // +007c │ │ +439bbc: 6e10 6f5d 0400 |0088: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ +439bc2: 0a02 |008b: move-result v2 │ │ +439bc4: 3b02 1600 |008c: if-gez v2, 00a2 // +0016 │ │ +439bc8: 5c61 4960 |008e: iput-boolean v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@6049 │ │ +439bcc: 5461 4a60 |0090: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439bd0: 1a02 1109 |0092: const-string v2, "A socket receive() error occurred." // string@0911 │ │ +439bd4: 6e20 a2be 2100 |0094: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea2 │ │ +439bda: 5461 4a60 |0097: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439bde: 6e10 99be 0100 |0099: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be99 │ │ +439be4: 3800 0500 |009c: if-eqz v0, 00a1 // +0005 │ │ +439be8: 6e10 735b 0000 |009e: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ +439bee: 0e00 |00a1: return-void │ │ +439bf0: 3902 0800 |00a2: if-nez v2, 00aa // +0008 │ │ +439bf4: 3800 0500 |00a4: if-eqz v0, 00a9 // +0005 │ │ +439bf8: 6e10 735b 0000 |00a6: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ +439bfe: 0e00 |00a9: return-void │ │ +439c00: 5461 4a60 |00aa: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439c04: 5411 4b60 |00ac: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@604b │ │ +439c08: 8122 |00ae: int-to-long v2, v2 │ │ +439c0a: 6e30 e260 2103 |00af: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e2 │ │ +439c10: 5461 4a60 |00b2: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439c14: 5411 5160 |00b4: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6051 │ │ +439c18: 7100 0b5d 0000 |00b6: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +439c1e: 0b02 |00b9: move-result-wide v2 │ │ +439c20: 6e30 e360 2103 |00ba: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +439c26: 3800 1900 |00bd: if-eqz v0, 00d6 // +0019 │ │ +439c2a: 5461 4a60 |00bf: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439c2e: 5411 5760 |00c1: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6057 │ │ +439c32: 6e10 e85c 0100 |00c3: invoke-virtual {v1}, Ljava/lang/StringBuffer;.length:()I // method@5ce8 │ │ +439c38: 0a01 |00c6: move-result v1 │ │ +439c3a: 1502 8000 |00c7: const/high16 v2, #int 8388608 // #80 │ │ +439c3e: 3521 0d00 |00c9: if-ge v1, v2, 00d6 // +000d │ │ +439c42: 5461 4a60 |00cb: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439c46: 5411 5760 |00cd: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6057 │ │ +439c4a: 6e10 775b 0000 |00cf: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.toString:()Ljava/lang/String; // method@5b77 │ │ +439c50: 0c02 |00d2: move-result-object v2 │ │ +439c52: 6e20 e05c 2100 |00d3: invoke-virtual {v1, v2}, Ljava/lang/StringBuffer;.append:(Ljava/lang/String;)Ljava/lang/StringBuffer; // method@5ce0 │ │ +439c58: 5461 4a60 |00d6: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439c5c: 5411 5360 |00d8: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6053 │ │ +439c60: 1d01 |00da: monitor-enter v1 │ │ +439c62: 5462 4a60 |00db: iget-object v2, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439c66: 5422 5360 |00dd: iget-object v2, v2, Lorg/purple/smoke/UdpNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6053 │ │ +439c6a: 6e10 945c 0200 |00df: invoke-virtual {v2}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ +439c70: 1e01 |00e2: monitor-exit v1 │ │ +439c72: 3800 2200 |00e3: if-eqz v0, 0105 // +0022 │ │ +439c76: 6e10 735b 0000 |00e5: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ +439c7c: 281d |00e8: goto 0105 // +001d │ │ +439c7e: 0d02 |00e9: move-exception v2 │ │ +439c80: 1e01 |00ea: monitor-exit v1 │ │ +439c82: 2702 |00eb: throw v2 │ │ +439c84: 5c61 4960 |00ec: iput-boolean v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@6049 │ │ +439c88: 5461 4a60 |00ee: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439c8c: 1a02 1109 |00f0: const-string v2, "A socket receive() error occurred." // string@0911 │ │ +439c90: 6e20 a2be 2100 |00f2: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea2 │ │ +439c96: 5461 4a60 |00f5: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604a │ │ +439c9a: 6e10 99be 0100 |00f7: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be99 │ │ +439ca0: 0e00 |00fa: return-void │ │ +439ca2: 0d01 |00fb: move-exception v1 │ │ +439ca4: 3800 0500 |00fc: if-eqz v0, 0101 // +0005 │ │ +439ca8: 6e10 735b 0000 |00fe: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ +439cae: 2701 |0101: throw v1 │ │ +439cb0: 3800 0300 |0102: if-eqz v0, 0105 // +0003 │ │ +439cb4: 28e1 |0104: goto 00e5 // -001f │ │ +439cb6: 0e00 |0105: return-void │ │ catches : 16 │ │ 0x0001 - 0x0018 │ │ Ljava/lang/Exception; -> 0x0102 │ │ -> 0x00fb │ │ 0x0018 - 0x0021 │ │ Ljava/lang/Exception; -> 0x0024 │ │ -> 0x0022 │ │ @@ -753376,17 +753375,17 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -43a32c: |[43a32c] org.purple.smoke.Windows.:()V │ │ -43a33c: 7010 8f5c 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43a342: 0e00 |0003: return-void │ │ +43a328: |[43a328] org.purple.smoke.Windows.:()V │ │ +43a338: 7010 8f5c 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43a33e: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=37 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lorg/purple/smoke/Windows; │ │ │ │ #1 : (in Lorg/purple/smoke/Windows;) │ │ @@ -753394,52 +753393,52 @@ │ │ type : '(Landroid/content/Context;Landroid/app/Dialog;Ljava/lang/String;)V' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 5 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 74 16-bit code units │ │ -43a344: |[43a344] org.purple.smoke.Windows.showProgressDialog:(Landroid/content/Context;Landroid/app/Dialog;Ljava/lang/String;)V │ │ -43a354: 3802 4900 |0000: if-eqz v2, 0049 // +0049 │ │ -43a358: 2020 1700 |0002: instance-of v0, v2, Landroid/app/Activity; // type@0017 │ │ -43a35c: 3800 4500 |0004: if-eqz v0, 0049 // +0045 │ │ -43a360: 3803 4300 |0006: if-eqz v3, 0049 // +0043 │ │ -43a364: 3804 4100 |0008: if-eqz v4, 0049 // +0041 │ │ -43a368: 6e10 d35c 0400 |000a: invoke-virtual {v4}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -43a36e: 0c00 |000d: move-result-object v0 │ │ -43a370: 6e10 c35c 0000 |000e: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -43a376: 0a00 |0011: move-result v0 │ │ -43a378: 3800 0300 |0012: if-eqz v0, 0015 // +0003 │ │ -43a37c: 2835 |0014: goto 0049 // +0035 │ │ -43a37e: 0720 |0015: move-object v0, v2 │ │ -43a380: 1f00 1700 |0016: check-cast v0, Landroid/app/Activity; // type@0017 │ │ -43a384: 6e10 7900 0000 |0018: invoke-virtual {v0}, Landroid/app/Activity;.isFinishing:()Z // method@0079 │ │ -43a38a: 0a00 |001b: move-result v0 │ │ -43a38c: 3800 0300 |001c: if-eqz v0, 001f // +0003 │ │ -43a390: 0e00 |001e: return-void │ │ -43a392: 1a00 547d |001f: const-string v0, "layout_inflater" // string@7d54 │ │ -43a396: 6e20 7f01 0200 |0021: invoke-virtual {v2, v0}, Landroid/content/Context;.getSystemService:(Ljava/lang/String;)Ljava/lang/Object; // method@017f │ │ -43a39c: 0c02 |0024: move-result-object v2 │ │ -43a39e: 1f02 000a |0025: check-cast v2, Landroid/view/LayoutInflater; // type@0a00 │ │ -43a3a2: 1400 4500 0a7f |0027: const v0, #float 1.83435e+38 // #7f0a0045 │ │ -43a3a8: 1201 |002a: const/4 v1, #int 0 // #0 │ │ -43a3aa: 6e30 5455 0201 |002b: invoke-virtual {v2, v0, v1}, Landroid/view/LayoutInflater;.inflate:(ILandroid/view/ViewGroup;)Landroid/view/View; // method@5554 │ │ -43a3b0: 0c02 |002e: move-result-object v2 │ │ -43a3b2: 1400 1f01 087f |002f: const v0, #float 1.80781e+38 // #7f08011f │ │ -43a3b8: 6e20 dd55 0200 |0032: invoke-virtual {v2, v0}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -43a3be: 0c00 |0035: move-result-object v0 │ │ -43a3c0: 1f00 970a |0036: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -43a3c4: 6e20 495b 4000 |0038: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43a3ca: 1204 |003b: const/4 v4, #int 0 // #0 │ │ -43a3cc: 6e20 b400 4300 |003c: invoke-virtual {v3, v4}, Landroid/app/Dialog;.setCancelable:(Z)V // method@00b4 │ │ -43a3d2: 6e20 b500 2300 |003f: invoke-virtual {v3, v2}, Landroid/app/Dialog;.setContentView:(Landroid/view/View;)V // method@00b5 │ │ -43a3d8: 6e10 bb00 0300 |0042: invoke-virtual {v3}, Landroid/app/Dialog;.show:()V // method@00bb │ │ -43a3de: 2804 |0045: goto 0049 // +0004 │ │ -43a3e0: 6e10 ab00 0300 |0046: invoke-virtual {v3}, Landroid/app/Dialog;.dismiss:()V // method@00ab │ │ -43a3e6: 0e00 |0049: return-void │ │ +43a340: |[43a340] org.purple.smoke.Windows.showProgressDialog:(Landroid/content/Context;Landroid/app/Dialog;Ljava/lang/String;)V │ │ +43a350: 3802 4900 |0000: if-eqz v2, 0049 // +0049 │ │ +43a354: 2020 1700 |0002: instance-of v0, v2, Landroid/app/Activity; // type@0017 │ │ +43a358: 3800 4500 |0004: if-eqz v0, 0049 // +0045 │ │ +43a35c: 3803 4300 |0006: if-eqz v3, 0049 // +0043 │ │ +43a360: 3804 4100 |0008: if-eqz v4, 0049 // +0041 │ │ +43a364: 6e10 d35c 0400 |000a: invoke-virtual {v4}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +43a36a: 0c00 |000d: move-result-object v0 │ │ +43a36c: 6e10 c35c 0000 |000e: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +43a372: 0a00 |0011: move-result v0 │ │ +43a374: 3800 0300 |0012: if-eqz v0, 0015 // +0003 │ │ +43a378: 2835 |0014: goto 0049 // +0035 │ │ +43a37a: 0720 |0015: move-object v0, v2 │ │ +43a37c: 1f00 1700 |0016: check-cast v0, Landroid/app/Activity; // type@0017 │ │ +43a380: 6e10 7900 0000 |0018: invoke-virtual {v0}, Landroid/app/Activity;.isFinishing:()Z // method@0079 │ │ +43a386: 0a00 |001b: move-result v0 │ │ +43a388: 3800 0300 |001c: if-eqz v0, 001f // +0003 │ │ +43a38c: 0e00 |001e: return-void │ │ +43a38e: 1a00 547d |001f: const-string v0, "layout_inflater" // string@7d54 │ │ +43a392: 6e20 7f01 0200 |0021: invoke-virtual {v2, v0}, Landroid/content/Context;.getSystemService:(Ljava/lang/String;)Ljava/lang/Object; // method@017f │ │ +43a398: 0c02 |0024: move-result-object v2 │ │ +43a39a: 1f02 000a |0025: check-cast v2, Landroid/view/LayoutInflater; // type@0a00 │ │ +43a39e: 1400 4500 0a7f |0027: const v0, #float 1.83435e+38 // #7f0a0045 │ │ +43a3a4: 1201 |002a: const/4 v1, #int 0 // #0 │ │ +43a3a6: 6e30 5455 0201 |002b: invoke-virtual {v2, v0, v1}, Landroid/view/LayoutInflater;.inflate:(ILandroid/view/ViewGroup;)Landroid/view/View; // method@5554 │ │ +43a3ac: 0c02 |002e: move-result-object v2 │ │ +43a3ae: 1400 1f01 087f |002f: const v0, #float 1.80781e+38 // #7f08011f │ │ +43a3b4: 6e20 dd55 0200 |0032: invoke-virtual {v2, v0}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +43a3ba: 0c00 |0035: move-result-object v0 │ │ +43a3bc: 1f00 970a |0036: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +43a3c0: 6e20 495b 4000 |0038: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +43a3c6: 1204 |003b: const/4 v4, #int 0 // #0 │ │ +43a3c8: 6e20 b400 4300 |003c: invoke-virtual {v3, v4}, Landroid/app/Dialog;.setCancelable:(Z)V // method@00b4 │ │ +43a3ce: 6e20 b500 2300 |003f: invoke-virtual {v3, v2}, Landroid/app/Dialog;.setContentView:(Landroid/view/View;)V // method@00b5 │ │ +43a3d4: 6e10 bb00 0300 |0042: invoke-virtual {v3}, Landroid/app/Dialog;.show:()V // method@00bb │ │ +43a3da: 2804 |0045: goto 0049 // +0004 │ │ +43a3dc: 6e10 ab00 0300 |0046: invoke-virtual {v3}, Landroid/app/Dialog;.dismiss:()V // method@00ab │ │ +43a3e2: 0e00 |0049: return-void │ │ catches : 2 │ │ 0x0015 - 0x0045 │ │ Ljava/lang/Exception; -> 0x0046 │ │ 0x0046 - 0x0049 │ │ Ljava/lang/Exception; -> 0x0049 │ │ positions : │ │ 0x0002 line=43 │ │ @@ -1189410,18 +1189409,18 @@ │ │ type : '(Lorg/purple/smoke/Steam;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -4321d4: |[4321d4] org.purple.smoke.Steam$5.:(Lorg/purple/smoke/Steam;)V │ │ -4321e4: 5b01 485f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ -4321e8: 7010 564c 0000 |0002: invoke-direct {v0}, Landroid/support/v7/widget/RecyclerView$AdapterDataObserver;.:()V // method@4c56 │ │ -4321ee: 0e00 |0005: return-void │ │ +4321d0: |[4321d0] org.purple.smoke.Steam$5.:(Lorg/purple/smoke/Steam;)V │ │ +4321e0: 5b01 485f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ +4321e4: 7010 564c 0000 |0002: invoke-direct {v0}, Landroid/support/v7/widget/RecyclerView$AdapterDataObserver;.:()V // method@4c56 │ │ +4321ea: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=301 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Steam$5; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Steam; │ │ │ │ @@ -1189431,24 +1189430,24 @@ │ │ type : '(II)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 3 │ │ outs : 4 │ │ insns size : 17 16-bit code units │ │ -4321f0: |[4321f0] org.purple.smoke.Steam$5.onItemRangeInserted:(II)V │ │ -432200: 5424 485f |0000: iget-object v4, v2, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ -432204: 7110 b2bd 0400 |0002: invoke-static {v4}, Lorg/purple/smoke/Steam;.access$800:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // method@bdb2 │ │ -43220a: 0c04 |0005: move-result-object v4 │ │ -43220c: 5420 485f |0006: iget-object v0, v2, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ -432210: 7110 b1bd 0000 |0008: invoke-static {v0}, Lorg/purple/smoke/Steam;.access$700:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView; // method@bdb1 │ │ -432216: 0c00 |000b: move-result-object v0 │ │ -432218: 1201 |000c: const/4 v1, #int 0 // #0 │ │ -43221a: 6e40 a6bd 0431 |000d: invoke-virtual {v4, v0, v1, v3}, Lorg/purple/smoke/Steam$SteamLinearLayoutManager;.smoothScrollToPosition:(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$State;I)V // method@bda6 │ │ -432220: 0e00 |0010: return-void │ │ +4321ec: |[4321ec] org.purple.smoke.Steam$5.onItemRangeInserted:(II)V │ │ +4321fc: 5424 485f |0000: iget-object v4, v2, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ +432200: 7110 b2bd 0400 |0002: invoke-static {v4}, Lorg/purple/smoke/Steam;.access$800:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // method@bdb2 │ │ +432206: 0c04 |0005: move-result-object v4 │ │ +432208: 5420 485f |0006: iget-object v0, v2, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ +43220c: 7110 b1bd 0000 |0008: invoke-static {v0}, Lorg/purple/smoke/Steam;.access$700:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView; // method@bdb1 │ │ +432212: 0c00 |000b: move-result-object v0 │ │ +432214: 1201 |000c: const/4 v1, #int 0 // #0 │ │ +432216: 6e40 a6bd 0431 |000d: invoke-virtual {v4, v0, v1, v3}, Lorg/purple/smoke/Steam$SteamLinearLayoutManager;.smoothScrollToPosition:(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$State;I)V // method@bda6 │ │ +43221c: 0e00 |0010: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=306 │ │ 0x0008 line=307 │ │ locals : │ │ 0x0000 - 0x0011 reg=2 this Lorg/purple/smoke/Steam$5; │ │ 0x0000 - 0x0011 reg=3 (null) I │ │ @@ -1189459,25 +1189458,25 @@ │ │ type : '(II)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 3 │ │ outs : 4 │ │ insns size : 18 16-bit code units │ │ -432224: |[432224] org.purple.smoke.Steam$5.onItemRangeRemoved:(II)V │ │ -432234: 5420 485f |0000: iget-object v0, v2, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ -432238: 7110 b2bd 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Steam;.access$800:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // method@bdb2 │ │ -43223e: 0c00 |0005: move-result-object v0 │ │ -432240: 5421 485f |0006: iget-object v1, v2, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ -432244: 7110 b1bd 0100 |0008: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$700:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView; // method@bdb1 │ │ -43224a: 0c01 |000b: move-result-object v1 │ │ -43224c: b143 |000c: sub-int/2addr v3, v4 │ │ -43224e: 1204 |000d: const/4 v4, #int 0 // #0 │ │ -432250: 6e40 a6bd 1034 |000e: invoke-virtual {v0, v1, v4, v3}, Lorg/purple/smoke/Steam$SteamLinearLayoutManager;.smoothScrollToPosition:(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$State;I)V // method@bda6 │ │ -432256: 0e00 |0011: return-void │ │ +432220: |[432220] org.purple.smoke.Steam$5.onItemRangeRemoved:(II)V │ │ +432230: 5420 485f |0000: iget-object v0, v2, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ +432234: 7110 b2bd 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Steam;.access$800:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // method@bdb2 │ │ +43223a: 0c00 |0005: move-result-object v0 │ │ +43223c: 5421 485f |0006: iget-object v1, v2, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ +432240: 7110 b1bd 0100 |0008: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$700:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView; // method@bdb1 │ │ +432246: 0c01 |000b: move-result-object v1 │ │ +432248: b143 |000c: sub-int/2addr v3, v4 │ │ +43224a: 1204 |000d: const/4 v4, #int 0 // #0 │ │ +43224c: 6e40 a6bd 1034 |000e: invoke-virtual {v0, v1, v4, v3}, Lorg/purple/smoke/Steam$SteamLinearLayoutManager;.smoothScrollToPosition:(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$State;I)V // method@bda6 │ │ +432252: 0e00 |0011: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=314 │ │ 0x0008 line=315 │ │ locals : │ │ 0x0000 - 0x0012 reg=2 this Lorg/purple/smoke/Steam$5; │ │ 0x0000 - 0x0012 reg=3 (null) I │ │ @@ -1189518,25 +1189517,25 @@ │ │ type : '(Lorg/purple/smoke/SteamBubble;)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 20 16-bit code units │ │ -43261c: |[43261c] org.purple.smoke.SteamAdapter$ViewHolder.:(Lorg/purple/smoke/SteamBubble;)V │ │ -43262c: 6e10 00be 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/SteamBubble;.view:()Landroid/view/View; // method@be00 │ │ -432632: 0c00 |0003: move-result-object v0 │ │ -432634: 7020 f14d 0100 |0004: invoke-direct {v1, v0}, Landroid/support/v7/widget/RecyclerView$ViewHolder;.:(Landroid/view/View;)V // method@4df1 │ │ -43263a: 1200 |0007: const/4 v0, #int 0 // #0 │ │ -43263c: 5b10 6a5f |0008: iput-object v0, v1, Lorg/purple/smoke/SteamAdapter$ViewHolder;.m_steamBubble:Lorg/purple/smoke/SteamBubble; // field@5f6a │ │ -432640: 6e10 00be 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/SteamBubble;.view:()Landroid/view/View; // method@be00 │ │ -432646: 0c00 |000d: move-result-object v0 │ │ -432648: 6e20 9056 1000 |000e: invoke-virtual {v0, v1}, Landroid/view/View;.setOnCreateContextMenuListener:(Landroid/view/View$OnCreateContextMenuListener;)V // method@5690 │ │ -43264e: 5b12 6a5f |0011: iput-object v2, v1, Lorg/purple/smoke/SteamAdapter$ViewHolder;.m_steamBubble:Lorg/purple/smoke/SteamBubble; // field@5f6a │ │ -432652: 0e00 |0013: return-void │ │ +432618: |[432618] org.purple.smoke.SteamAdapter$ViewHolder.:(Lorg/purple/smoke/SteamBubble;)V │ │ +432628: 6e10 00be 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/SteamBubble;.view:()Landroid/view/View; // method@be00 │ │ +43262e: 0c00 |0003: move-result-object v0 │ │ +432630: 7020 f14d 0100 |0004: invoke-direct {v1, v0}, Landroid/support/v7/widget/RecyclerView$ViewHolder;.:(Landroid/view/View;)V // method@4df1 │ │ +432636: 1200 |0007: const/4 v0, #int 0 // #0 │ │ +432638: 5b10 6a5f |0008: iput-object v0, v1, Lorg/purple/smoke/SteamAdapter$ViewHolder;.m_steamBubble:Lorg/purple/smoke/SteamBubble; // field@5f6a │ │ +43263c: 6e10 00be 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/SteamBubble;.view:()Landroid/view/View; // method@be00 │ │ +432642: 0c00 |000d: move-result-object v0 │ │ +432644: 6e20 9056 1000 |000e: invoke-virtual {v0, v1}, Landroid/view/View;.setOnCreateContextMenuListener:(Landroid/view/View$OnCreateContextMenuListener;)V // method@5690 │ │ +43264a: 5b12 6a5f |0011: iput-object v2, v1, Lorg/purple/smoke/SteamAdapter$ViewHolder;.m_steamBubble:Lorg/purple/smoke/SteamBubble; // field@5f6a │ │ +43264e: 0e00 |0013: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=52 │ │ 0x0008 line=48 │ │ 0x000a line=53 │ │ 0x0011 line=54 │ │ locals : │ │ @@ -1189549,107 +1189548,107 @@ │ │ type : '(Landroid/view/ContextMenu;Landroid/view/View;Landroid/view/ContextMenu$ContextMenuInfo;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 10 │ │ ins : 4 │ │ outs : 5 │ │ insns size : 174 16-bit code units │ │ -432654: |[432654] org.purple.smoke.SteamAdapter$ViewHolder.onCreateContextMenu:(Landroid/view/ContextMenu;Landroid/view/View;Landroid/view/ContextMenu$ContextMenuInfo;)V │ │ -432664: 3807 ad00 |0000: if-eqz v7, 00ad // +00ad │ │ -432668: 3908 0400 |0002: if-nez v8, 0006 // +0004 │ │ -43266c: 2900 a900 |0004: goto/16 00ad // +00a9 │ │ -432670: 1209 |0006: const/4 v9, #int 0 // #0 │ │ -432672: 12f0 |0007: const/4 v0, #int -1 // #ff │ │ -432674: 1a01 2d17 |0008: const-string v1, "Delete All Steams" // string@172d │ │ -432678: 7251 0c55 9790 |000a: invoke-interface {v7, v9, v0, v9, v1}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -43267e: 6e10 f455 0800 |000d: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ -432684: 0a01 |0010: move-result v1 │ │ -432686: 1212 |0011: const/4 v2, #int 1 // #1 │ │ -432688: 1a03 3217 |0012: const-string v3, "Delete Steam" // string@1732 │ │ -43268c: 7253 0c55 2721 |0014: invoke-interface {v7, v2, v1, v2, v3}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -432692: 0c01 |0017: move-result-object v1 │ │ -432694: 6e10 f455 0800 |0018: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ -43269a: 0a03 |001b: move-result v3 │ │ -43269c: 3203 0400 |001c: if-eq v3, v0, 0020 // +0004 │ │ -4326a0: 1213 |001e: const/4 v3, #int 1 // #1 │ │ -4326a2: 2802 |001f: goto 0021 // +0002 │ │ -4326a4: 1203 |0020: const/4 v3, #int 0 // #0 │ │ -4326a6: 7220 7a55 3100 |0021: invoke-interface {v1, v3}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -4326ac: 1221 |0024: const/4 v1, #int 2 // #2 │ │ -4326ae: 1a03 ae44 |0025: const-string v3, "Pause All Steams" // string@44ae │ │ -4326b2: 7253 0c55 1710 |0027: invoke-interface {v7, v1, v0, v1, v3}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -4326b8: 1231 |002a: const/4 v1, #int 3 // #3 │ │ -4326ba: 1a03 0847 |002b: const-string v3, "Resume All Steams" // string@4708 │ │ -4326be: 7253 0c55 1710 |002d: invoke-interface {v7, v1, v0, v1, v3}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -4326c4: 1251 |0030: const/4 v1, #int 5 // #5 │ │ -4326c6: 1243 |0031: const/4 v3, #int 4 // #4 │ │ -4326c8: 1a04 0d47 |0032: const-string v4, "Rewind & Resume All Steams" // string@470d │ │ -4326cc: 7254 0c55 1730 |0034: invoke-interface {v7, v1, v0, v3, v4}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -4326d2: 1a04 0e47 |0037: const-string v4, "Rewind All Steams" // string@470e │ │ -4326d6: 7254 0c55 3710 |0039: invoke-interface {v7, v3, v0, v1, v4}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -4326dc: 7100 e1bd 0000 |003c: invoke-static {}, Lorg/purple/smoke/SteamAdapter;.access$100:()Lorg/purple/smoke/Database; // method@bde1 │ │ -4326e2: 0c01 |003f: move-result-object v1 │ │ -4326e4: 7100 e0bd 0000 |0040: invoke-static {}, Lorg/purple/smoke/SteamAdapter;.access$000:()Lorg/purple/smoke/Cryptography; // method@bde0 │ │ -4326ea: 0c03 |0043: move-result-object v3 │ │ -4326ec: 6e10 f455 0800 |0044: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ -4326f2: 0a04 |0047: move-result v4 │ │ -4326f4: b124 |0048: sub-int/2addr v4, v2 │ │ -4326f6: 6e40 1cba 3140 |0049: invoke-virtual {v1, v3, v0, v4}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba1c │ │ -4326fc: 0c01 |004c: move-result-object v1 │ │ -4326fe: 6e10 f455 0800 |004d: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ -432704: 0a03 |0050: move-result v3 │ │ -432706: 1264 |0051: const/4 v4, #int 6 // #6 │ │ -432708: 1a05 0f47 |0052: const-string v5, "Rewind Steam" // string@470f │ │ -43270c: 7255 0c55 4743 |0054: invoke-interface {v7, v4, v3, v4, v5}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -432712: 0c03 |0057: move-result-object v3 │ │ -432714: 3901 0400 |0058: if-nez v1, 005c // +0004 │ │ -432718: 1204 |005a: const/4 v4, #int 0 // #0 │ │ -43271a: 2806 |005b: goto 0061 // +0006 │ │ -43271c: 5814 965f |005c: iget-short v4, v1, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f96 │ │ -432720: 3324 fcff |005e: if-ne v4, v2, 005a // -0004 │ │ -432724: 1214 |0060: const/4 v4, #int 1 // #1 │ │ -432726: 7220 7a55 4300 |0061: invoke-interface {v3, v4}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -43272c: 6e10 f455 0800 |0064: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ -432732: 0a04 |0067: move-result v4 │ │ -432734: 3304 0500 |0068: if-ne v4, v0, 006d // +0005 │ │ -432738: 7220 7a55 9300 |006a: invoke-interface {v3, v9}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -43273e: 6e10 f455 0800 |006d: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ -432744: 0a03 |0070: move-result v3 │ │ -432746: 1274 |0071: const/4 v4, #int 7 // #7 │ │ -432748: 1a05 884c |0072: const-string v5, "Steamroll Steam" // string@4c88 │ │ -43274c: 7255 0c55 4743 |0074: invoke-interface {v7, v4, v3, v4, v5}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -432752: 0c03 |0077: move-result-object v3 │ │ -432754: 3901 0400 |0078: if-nez v1, 007c // +0004 │ │ -432758: 1204 |007a: const/4 v4, #int 0 // #0 │ │ -43275a: 2806 |007b: goto 0081 // +0006 │ │ -43275c: 5814 965f |007c: iget-short v4, v1, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f96 │ │ -432760: 3904 fcff |007e: if-nez v4, 007a // -0004 │ │ -432764: 1214 |0080: const/4 v4, #int 1 // #1 │ │ -432766: 7220 7a55 4300 |0081: invoke-interface {v3, v4}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -43276c: 6e10 f455 0800 |0084: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ -432772: 0a04 |0087: move-result v4 │ │ -432774: 3304 0500 |0088: if-ne v4, v0, 008d // +0005 │ │ -432778: 7220 7a55 9300 |008a: invoke-interface {v3, v9}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -43277e: 6e10 f455 0800 |008d: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ -432784: 0a03 |0090: move-result v3 │ │ -432786: 1304 0800 |0091: const/16 v4, #int 8 // #8 │ │ -43278a: 1a05 8250 |0093: const-string v5, "Unlock Steam" // string@5082 │ │ -43278e: 7255 0c55 4743 |0095: invoke-interface {v7, v4, v3, v4, v5}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -432794: 0c07 |0098: move-result-object v7 │ │ -432796: 3901 0400 |0099: if-nez v1, 009d // +0004 │ │ -43279a: 1202 |009b: const/4 v2, #int 0 // #0 │ │ -43279c: 2805 |009c: goto 00a1 // +0005 │ │ -43279e: 5811 965f |009d: iget-short v1, v1, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f96 │ │ -4327a2: 3901 fcff |009f: if-nez v1, 009b // -0004 │ │ -4327a6: 7220 7a55 2700 |00a1: invoke-interface {v7, v2}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -4327ac: 6e10 f455 0800 |00a4: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ -4327b2: 0a08 |00a7: move-result v8 │ │ -4327b4: 3308 0500 |00a8: if-ne v8, v0, 00ad // +0005 │ │ -4327b8: 7220 7a55 9700 |00aa: invoke-interface {v7, v9}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -4327be: 0e00 |00ad: return-void │ │ +432650: |[432650] org.purple.smoke.SteamAdapter$ViewHolder.onCreateContextMenu:(Landroid/view/ContextMenu;Landroid/view/View;Landroid/view/ContextMenu$ContextMenuInfo;)V │ │ +432660: 3807 ad00 |0000: if-eqz v7, 00ad // +00ad │ │ +432664: 3908 0400 |0002: if-nez v8, 0006 // +0004 │ │ +432668: 2900 a900 |0004: goto/16 00ad // +00a9 │ │ +43266c: 1209 |0006: const/4 v9, #int 0 // #0 │ │ +43266e: 12f0 |0007: const/4 v0, #int -1 // #ff │ │ +432670: 1a01 2d17 |0008: const-string v1, "Delete All Steams" // string@172d │ │ +432674: 7251 0c55 9790 |000a: invoke-interface {v7, v9, v0, v9, v1}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +43267a: 6e10 f455 0800 |000d: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ +432680: 0a01 |0010: move-result v1 │ │ +432682: 1212 |0011: const/4 v2, #int 1 // #1 │ │ +432684: 1a03 3217 |0012: const-string v3, "Delete Steam" // string@1732 │ │ +432688: 7253 0c55 2721 |0014: invoke-interface {v7, v2, v1, v2, v3}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +43268e: 0c01 |0017: move-result-object v1 │ │ +432690: 6e10 f455 0800 |0018: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ +432696: 0a03 |001b: move-result v3 │ │ +432698: 3203 0400 |001c: if-eq v3, v0, 0020 // +0004 │ │ +43269c: 1213 |001e: const/4 v3, #int 1 // #1 │ │ +43269e: 2802 |001f: goto 0021 // +0002 │ │ +4326a0: 1203 |0020: const/4 v3, #int 0 // #0 │ │ +4326a2: 7220 7a55 3100 |0021: invoke-interface {v1, v3}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +4326a8: 1221 |0024: const/4 v1, #int 2 // #2 │ │ +4326aa: 1a03 ae44 |0025: const-string v3, "Pause All Steams" // string@44ae │ │ +4326ae: 7253 0c55 1710 |0027: invoke-interface {v7, v1, v0, v1, v3}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +4326b4: 1231 |002a: const/4 v1, #int 3 // #3 │ │ +4326b6: 1a03 0847 |002b: const-string v3, "Resume All Steams" // string@4708 │ │ +4326ba: 7253 0c55 1710 |002d: invoke-interface {v7, v1, v0, v1, v3}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +4326c0: 1251 |0030: const/4 v1, #int 5 // #5 │ │ +4326c2: 1243 |0031: const/4 v3, #int 4 // #4 │ │ +4326c4: 1a04 0d47 |0032: const-string v4, "Rewind & Resume All Steams" // string@470d │ │ +4326c8: 7254 0c55 1730 |0034: invoke-interface {v7, v1, v0, v3, v4}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +4326ce: 1a04 0e47 |0037: const-string v4, "Rewind All Steams" // string@470e │ │ +4326d2: 7254 0c55 3710 |0039: invoke-interface {v7, v3, v0, v1, v4}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +4326d8: 7100 e1bd 0000 |003c: invoke-static {}, Lorg/purple/smoke/SteamAdapter;.access$100:()Lorg/purple/smoke/Database; // method@bde1 │ │ +4326de: 0c01 |003f: move-result-object v1 │ │ +4326e0: 7100 e0bd 0000 |0040: invoke-static {}, Lorg/purple/smoke/SteamAdapter;.access$000:()Lorg/purple/smoke/Cryptography; // method@bde0 │ │ +4326e6: 0c03 |0043: move-result-object v3 │ │ +4326e8: 6e10 f455 0800 |0044: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ +4326ee: 0a04 |0047: move-result v4 │ │ +4326f0: b124 |0048: sub-int/2addr v4, v2 │ │ +4326f2: 6e40 1cba 3140 |0049: invoke-virtual {v1, v3, v0, v4}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba1c │ │ +4326f8: 0c01 |004c: move-result-object v1 │ │ +4326fa: 6e10 f455 0800 |004d: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ +432700: 0a03 |0050: move-result v3 │ │ +432702: 1264 |0051: const/4 v4, #int 6 // #6 │ │ +432704: 1a05 0f47 |0052: const-string v5, "Rewind Steam" // string@470f │ │ +432708: 7255 0c55 4743 |0054: invoke-interface {v7, v4, v3, v4, v5}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +43270e: 0c03 |0057: move-result-object v3 │ │ +432710: 3901 0400 |0058: if-nez v1, 005c // +0004 │ │ +432714: 1204 |005a: const/4 v4, #int 0 // #0 │ │ +432716: 2806 |005b: goto 0061 // +0006 │ │ +432718: 5814 965f |005c: iget-short v4, v1, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f96 │ │ +43271c: 3324 fcff |005e: if-ne v4, v2, 005a // -0004 │ │ +432720: 1214 |0060: const/4 v4, #int 1 // #1 │ │ +432722: 7220 7a55 4300 |0061: invoke-interface {v3, v4}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +432728: 6e10 f455 0800 |0064: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ +43272e: 0a04 |0067: move-result v4 │ │ +432730: 3304 0500 |0068: if-ne v4, v0, 006d // +0005 │ │ +432734: 7220 7a55 9300 |006a: invoke-interface {v3, v9}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +43273a: 6e10 f455 0800 |006d: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ +432740: 0a03 |0070: move-result v3 │ │ +432742: 1274 |0071: const/4 v4, #int 7 // #7 │ │ +432744: 1a05 884c |0072: const-string v5, "Steamroll Steam" // string@4c88 │ │ +432748: 7255 0c55 4743 |0074: invoke-interface {v7, v4, v3, v4, v5}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +43274e: 0c03 |0077: move-result-object v3 │ │ +432750: 3901 0400 |0078: if-nez v1, 007c // +0004 │ │ +432754: 1204 |007a: const/4 v4, #int 0 // #0 │ │ +432756: 2806 |007b: goto 0081 // +0006 │ │ +432758: 5814 965f |007c: iget-short v4, v1, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f96 │ │ +43275c: 3904 fcff |007e: if-nez v4, 007a // -0004 │ │ +432760: 1214 |0080: const/4 v4, #int 1 // #1 │ │ +432762: 7220 7a55 4300 |0081: invoke-interface {v3, v4}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +432768: 6e10 f455 0800 |0084: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ +43276e: 0a04 |0087: move-result v4 │ │ +432770: 3304 0500 |0088: if-ne v4, v0, 008d // +0005 │ │ +432774: 7220 7a55 9300 |008a: invoke-interface {v3, v9}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +43277a: 6e10 f455 0800 |008d: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ +432780: 0a03 |0090: move-result v3 │ │ +432782: 1304 0800 |0091: const/16 v4, #int 8 // #8 │ │ +432786: 1a05 8250 |0093: const-string v5, "Unlock Steam" // string@5082 │ │ +43278a: 7255 0c55 4743 |0095: invoke-interface {v7, v4, v3, v4, v5}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +432790: 0c07 |0098: move-result-object v7 │ │ +432792: 3901 0400 |0099: if-nez v1, 009d // +0004 │ │ +432796: 1202 |009b: const/4 v2, #int 0 // #0 │ │ +432798: 2805 |009c: goto 00a1 // +0005 │ │ +43279a: 5811 965f |009d: iget-short v1, v1, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f96 │ │ +43279e: 3901 fcff |009f: if-nez v1, 009b // -0004 │ │ +4327a2: 7220 7a55 2700 |00a1: invoke-interface {v7, v2}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +4327a8: 6e10 f455 0800 |00a4: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ +4327ae: 0a08 |00a7: move-result v8 │ │ +4327b0: 3308 0500 |00a8: if-ne v8, v0, 00ad // +0005 │ │ +4327b4: 7220 7a55 9700 |00aa: invoke-interface {v7, v9}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +4327ba: 0e00 |00ad: return-void │ │ catches : (none) │ │ positions : │ │ 0x000a line=71 │ │ 0x000d line=76 │ │ 0x0014 line=75 │ │ 0x0018 line=78 │ │ 0x0027 line=79 │ │ @@ -1189687,22 +1189686,22 @@ │ │ type : '(Lorg/purple/smoke/SteamElement;II)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 4 │ │ outs : 4 │ │ insns size : 12 16-bit code units │ │ -4327c0: |[4327c0] org.purple.smoke.SteamAdapter$ViewHolder.setData:(Lorg/purple/smoke/SteamElement;II)V │ │ -4327d0: 5410 6a5f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamAdapter$ViewHolder;.m_steamBubble:Lorg/purple/smoke/SteamBubble; // field@5f6a │ │ -4327d4: 3900 0300 |0002: if-nez v0, 0005 // +0003 │ │ -4327d8: 0e00 |0004: return-void │ │ -4327da: 3902 0300 |0005: if-nez v2, 0008 // +0003 │ │ -4327de: 0e00 |0007: return-void │ │ -4327e0: 6e40 ffbd 2043 |0008: invoke-virtual {v0, v2, v3, v4}, Lorg/purple/smoke/SteamBubble;.setData:(Lorg/purple/smoke/SteamElement;II)V // method@bdff │ │ -4327e6: 0e00 |000b: return-void │ │ +4327bc: |[4327bc] org.purple.smoke.SteamAdapter$ViewHolder.setData:(Lorg/purple/smoke/SteamElement;II)V │ │ +4327cc: 5410 6a5f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamAdapter$ViewHolder;.m_steamBubble:Lorg/purple/smoke/SteamBubble; // field@5f6a │ │ +4327d0: 3900 0300 |0002: if-nez v0, 0005 // +0003 │ │ +4327d4: 0e00 |0004: return-void │ │ +4327d6: 3902 0300 |0005: if-nez v2, 0008 // +0003 │ │ +4327da: 0e00 |0007: return-void │ │ +4327dc: 6e40 ffbd 2043 |0008: invoke-virtual {v0, v2, v3, v4}, Lorg/purple/smoke/SteamBubble;.setData:(Lorg/purple/smoke/SteamElement;II)V // method@bdff │ │ +4327e2: 0e00 |000b: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=135 │ │ 0x0008 line=140 │ │ locals : │ │ 0x0000 - 0x000c reg=1 this Lorg/purple/smoke/SteamAdapter$ViewHolder; │ │ 0x0000 - 0x000c reg=2 (null) Lorg/purple/smoke/SteamElement; │ │ @@ -1189751,22 +1189750,22 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 13 16-bit code units │ │ -432888: |[432888] org.purple.smoke.SteamAdapter.:()V │ │ -432898: 7100 8db9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ -43289e: 0c00 |0003: move-result-object v0 │ │ -4328a0: 6900 6c5f |0004: sput-object v0, Lorg/purple/smoke/SteamAdapter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f6c │ │ -4328a4: 7100 efb9 0000 |0006: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9ef │ │ -4328aa: 0c00 |0009: move-result-object v0 │ │ -4328ac: 6900 6d5f |000a: sput-object v0, Lorg/purple/smoke/SteamAdapter;.s_database:Lorg/purple/smoke/Database; // field@5f6d │ │ -4328b0: 0e00 |000c: return-void │ │ +432884: |[432884] org.purple.smoke.SteamAdapter.:()V │ │ +432894: 7100 8db9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ +43289a: 0c00 |0003: move-result-object v0 │ │ +43289c: 6900 6c5f |0004: sput-object v0, Lorg/purple/smoke/SteamAdapter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f6c │ │ +4328a0: 7100 efb9 0000 |0006: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9ef │ │ +4328a6: 0c00 |0009: move-result-object v0 │ │ +4328a8: 6900 6d5f |000a: sput-object v0, Lorg/purple/smoke/SteamAdapter;.s_database:Lorg/purple/smoke/Database; // field@5f6d │ │ +4328ac: 0e00 |000c: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=42 │ │ 0x0006 line=43 │ │ locals : │ │ │ │ #1 : (in Lorg/purple/smoke/SteamAdapter;) │ │ @@ -1189774,18 +1189773,18 @@ │ │ type : '(Lorg/purple/smoke/Steam;)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -4328b4: |[4328b4] org.purple.smoke.SteamAdapter.:(Lorg/purple/smoke/Steam;)V │ │ -4328c4: 7010 2e4c 0000 |0000: invoke-direct {v0}, Landroid/support/v7/widget/RecyclerView$Adapter;.:()V // method@4c2e │ │ -4328ca: 5b01 6b5f |0003: iput-object v1, v0, Lorg/purple/smoke/SteamAdapter;.m_steam:Lorg/purple/smoke/Steam; // field@5f6b │ │ -4328ce: 0e00 |0005: return-void │ │ +4328b0: |[4328b0] org.purple.smoke.SteamAdapter.:(Lorg/purple/smoke/Steam;)V │ │ +4328c0: 7010 2e4c 0000 |0000: invoke-direct {v0}, Landroid/support/v7/widget/RecyclerView$Adapter;.:()V // method@4c2e │ │ +4328c6: 5b01 6b5f |0003: iput-object v1, v0, Lorg/purple/smoke/SteamAdapter;.m_steam:Lorg/purple/smoke/Steam; // field@5f6b │ │ +4328ca: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=145 │ │ 0x0003 line=146 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/SteamAdapter; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Steam; │ │ @@ -1189795,34 +1189794,34 @@ │ │ type : '()Lorg/purple/smoke/Cryptography;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -432824: |[432824] org.purple.smoke.SteamAdapter.access$000:()Lorg/purple/smoke/Cryptography; │ │ -432834: 6200 6c5f |0000: sget-object v0, Lorg/purple/smoke/SteamAdapter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f6c │ │ -432838: 1100 |0002: return-object v0 │ │ +432820: |[432820] org.purple.smoke.SteamAdapter.access$000:()Lorg/purple/smoke/Cryptography; │ │ +432830: 6200 6c5f |0000: sget-object v0, Lorg/purple/smoke/SteamAdapter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f6c │ │ +432834: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=38 │ │ locals : │ │ │ │ #3 : (in Lorg/purple/smoke/SteamAdapter;) │ │ name : 'access$100' │ │ type : '()Lorg/purple/smoke/Database;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -43283c: |[43283c] org.purple.smoke.SteamAdapter.access$100:()Lorg/purple/smoke/Database; │ │ -43284c: 6200 6d5f |0000: sget-object v0, Lorg/purple/smoke/SteamAdapter;.s_database:Lorg/purple/smoke/Database; // field@5f6d │ │ -432850: 1100 |0002: return-object v0 │ │ +432838: |[432838] org.purple.smoke.SteamAdapter.access$100:()Lorg/purple/smoke/Database; │ │ +432848: 6200 6d5f |0000: sget-object v0, Lorg/purple/smoke/SteamAdapter;.s_database:Lorg/purple/smoke/Database; // field@5f6d │ │ +43284c: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=38 │ │ locals : │ │ │ │ Virtual methods - │ │ #0 : (in Lorg/purple/smoke/SteamAdapter;) │ │ @@ -1189830,20 +1189829,20 @@ │ │ type : '()I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 8 16-bit code units │ │ -432804: |[432804] org.purple.smoke.SteamAdapter.getItemCount:()I │ │ -432814: 6200 6d5f |0000: sget-object v0, Lorg/purple/smoke/SteamAdapter;.s_database:Lorg/purple/smoke/Database; // field@5f6d │ │ -432818: 6e10 e5b9 0000 |0002: invoke-virtual {v0}, Lorg/purple/smoke/Database;.countOfSteams:()J // method@b9e5 │ │ -43281e: 0b00 |0005: move-result-wide v0 │ │ -432820: 8401 |0006: long-to-int v1, v0 │ │ -432822: 0f01 |0007: return v1 │ │ +432800: |[432800] org.purple.smoke.SteamAdapter.getItemCount:()I │ │ +432810: 6200 6d5f |0000: sget-object v0, Lorg/purple/smoke/SteamAdapter;.s_database:Lorg/purple/smoke/Database; // field@5f6d │ │ +432814: 6e10 e5b9 0000 |0002: invoke-virtual {v0}, Lorg/purple/smoke/Database;.countOfSteams:()J // method@b9e5 │ │ +43281a: 0b00 |0005: move-result-wide v0 │ │ +43281c: 8401 |0006: long-to-int v1, v0 │ │ +43281e: 0f01 |0007: return v1 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=160 │ │ locals : │ │ 0x0000 - 0x0008 reg=2 this Lorg/purple/smoke/SteamAdapter; │ │ │ │ #1 : (in Lorg/purple/smoke/SteamAdapter;) │ │ @@ -1189851,18 +1189850,18 @@ │ │ type : '(Landroid/support/v7/widget/RecyclerView$ViewHolder;I)V' │ │ access : 0x1041 (PUBLIC BRIDGE SYNTHETIC) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 6 16-bit code units │ │ -4328d0: |[4328d0] org.purple.smoke.SteamAdapter.onBindViewHolder:(Landroid/support/v7/widget/RecyclerView$ViewHolder;I)V │ │ -4328e0: 1f01 211b |0000: check-cast v1, Lorg/purple/smoke/SteamAdapter$ViewHolder; // type@1b21 │ │ -4328e4: 6e30 e4bd 1002 |0002: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/SteamAdapter;.onBindViewHolder:(Lorg/purple/smoke/SteamAdapter$ViewHolder;I)V // method@bde4 │ │ -4328ea: 0e00 |0005: return-void │ │ +4328cc: |[4328cc] org.purple.smoke.SteamAdapter.onBindViewHolder:(Landroid/support/v7/widget/RecyclerView$ViewHolder;I)V │ │ +4328dc: 1f01 211b |0000: check-cast v1, Lorg/purple/smoke/SteamAdapter$ViewHolder; // type@1b21 │ │ +4328e0: 6e30 e4bd 1002 |0002: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/SteamAdapter;.onBindViewHolder:(Lorg/purple/smoke/SteamAdapter$ViewHolder;I)V // method@bde4 │ │ +4328e6: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=38 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/SteamAdapter; │ │ 0x0000 - 0x0006 reg=1 (null) Landroid/support/v7/widget/RecyclerView$ViewHolder; │ │ 0x0000 - 0x0006 reg=2 (null) I │ │ @@ -1189872,29 +1189871,29 @@ │ │ type : '(Lorg/purple/smoke/SteamAdapter$ViewHolder;I)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 3 │ │ outs : 4 │ │ insns size : 25 16-bit code units │ │ -4328ec: |[4328ec] org.purple.smoke.SteamAdapter.onBindViewHolder:(Lorg/purple/smoke/SteamAdapter$ViewHolder;I)V │ │ -4328fc: 3905 0300 |0000: if-nez v5, 0003 // +0003 │ │ -432900: 0e00 |0002: return-void │ │ -432902: 6200 6d5f |0003: sget-object v0, Lorg/purple/smoke/SteamAdapter;.s_database:Lorg/purple/smoke/Database; // field@5f6d │ │ -432906: 6201 6c5f |0005: sget-object v1, Lorg/purple/smoke/SteamAdapter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f6c │ │ -43290a: 1202 |0007: const/4 v2, #int 0 // #0 │ │ -43290c: 7120 7e5c 6200 |0008: invoke-static {v2, v6}, Ljava/lang/Math;.max:(II)I // method@5c7e │ │ -432912: 0a02 |000b: move-result v2 │ │ -432914: 12f3 |000c: const/4 v3, #int -1 // #ff │ │ -432916: 6e40 1cba 1032 |000d: invoke-virtual {v0, v1, v2, v3}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba1c │ │ -43291c: 0c00 |0010: move-result-object v0 │ │ -43291e: 6e10 e2bd 0400 |0011: invoke-virtual {v4}, Lorg/purple/smoke/SteamAdapter;.getItemCount:()I // method@bde2 │ │ -432924: 0a01 |0014: move-result v1 │ │ -432926: 6e40 ddbd 0561 |0015: invoke-virtual {v5, v0, v1, v6}, Lorg/purple/smoke/SteamAdapter$ViewHolder;.setData:(Lorg/purple/smoke/SteamElement;II)V // method@bddd │ │ -43292c: 0e00 |0018: return-void │ │ +4328e8: |[4328e8] org.purple.smoke.SteamAdapter.onBindViewHolder:(Lorg/purple/smoke/SteamAdapter$ViewHolder;I)V │ │ +4328f8: 3905 0300 |0000: if-nez v5, 0003 // +0003 │ │ +4328fc: 0e00 |0002: return-void │ │ +4328fe: 6200 6d5f |0003: sget-object v0, Lorg/purple/smoke/SteamAdapter;.s_database:Lorg/purple/smoke/Database; // field@5f6d │ │ +432902: 6201 6c5f |0005: sget-object v1, Lorg/purple/smoke/SteamAdapter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f6c │ │ +432906: 1202 |0007: const/4 v2, #int 0 // #0 │ │ +432908: 7120 7e5c 6200 |0008: invoke-static {v2, v6}, Ljava/lang/Math;.max:(II)I // method@5c7e │ │ +43290e: 0a02 |000b: move-result v2 │ │ +432910: 12f3 |000c: const/4 v3, #int -1 // #ff │ │ +432912: 6e40 1cba 1032 |000d: invoke-virtual {v0, v1, v2, v3}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba1c │ │ +432918: 0c00 |0010: move-result-object v0 │ │ +43291a: 6e10 e2bd 0400 |0011: invoke-virtual {v4}, Lorg/purple/smoke/SteamAdapter;.getItemCount:()I // method@bde2 │ │ +432920: 0a01 |0014: move-result v1 │ │ +432922: 6e40 ddbd 0561 |0015: invoke-virtual {v5, v0, v1, v6}, Lorg/purple/smoke/SteamAdapter$ViewHolder;.setData:(Lorg/purple/smoke/SteamElement;II)V // method@bddd │ │ +432928: 0e00 |0018: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=169 │ │ 0x0008 line=170 │ │ 0x0011 line=172 │ │ locals : │ │ 0x0000 - 0x0019 reg=4 this Lorg/purple/smoke/SteamAdapter; │ │ @@ -1189906,18 +1189905,18 @@ │ │ type : '(Landroid/view/ViewGroup;I)Landroid/support/v7/widget/RecyclerView$ViewHolder;' │ │ access : 0x1041 (PUBLIC BRIDGE SYNTHETIC) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 5 16-bit code units │ │ -4327e8: |[4327e8] org.purple.smoke.SteamAdapter.onCreateViewHolder:(Landroid/view/ViewGroup;I)Landroid/support/v7/widget/RecyclerView$ViewHolder; │ │ -4327f8: 6e30 e6bd 1002 |0000: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/SteamAdapter;.onCreateViewHolder:(Landroid/view/ViewGroup;I)Lorg/purple/smoke/SteamAdapter$ViewHolder; // method@bde6 │ │ -4327fe: 0c01 |0003: move-result-object v1 │ │ -432800: 1101 |0004: return-object v1 │ │ +4327e4: |[4327e4] org.purple.smoke.SteamAdapter.onCreateViewHolder:(Landroid/view/ViewGroup;I)Landroid/support/v7/widget/RecyclerView$ViewHolder; │ │ +4327f4: 6e30 e6bd 1002 |0000: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/SteamAdapter;.onCreateViewHolder:(Landroid/view/ViewGroup;I)Lorg/purple/smoke/SteamAdapter$ViewHolder; // method@bde6 │ │ +4327fa: 0c01 |0003: move-result-object v1 │ │ +4327fc: 1101 |0004: return-object v1 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=38 │ │ locals : │ │ 0x0000 - 0x0005 reg=0 this Lorg/purple/smoke/SteamAdapter; │ │ 0x0000 - 0x0005 reg=1 (null) Landroid/view/ViewGroup; │ │ 0x0000 - 0x0005 reg=2 (null) I │ │ @@ -1189927,23 +1189926,23 @@ │ │ type : '(Landroid/view/ViewGroup;I)Lorg/purple/smoke/SteamAdapter$ViewHolder;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 6 │ │ ins : 3 │ │ outs : 4 │ │ insns size : 17 16-bit code units │ │ -432854: |[432854] org.purple.smoke.SteamAdapter.onCreateViewHolder:(Landroid/view/ViewGroup;I)Lorg/purple/smoke/SteamAdapter$ViewHolder; │ │ -432864: 2205 211b |0000: new-instance v5, Lorg/purple/smoke/SteamAdapter$ViewHolder; // type@1b21 │ │ -432868: 2200 271b |0002: new-instance v0, Lorg/purple/smoke/SteamBubble; // type@1b27 │ │ -43286c: 6e10 e556 0400 |0004: invoke-virtual {v4}, Landroid/view/ViewGroup;.getContext:()Landroid/content/Context; // method@56e5 │ │ -432872: 0c01 |0007: move-result-object v1 │ │ -432874: 5432 6b5f |0008: iget-object v2, v3, Lorg/purple/smoke/SteamAdapter;.m_steam:Lorg/purple/smoke/Steam; // field@5f6b │ │ -432878: 7040 f2bd 1042 |000a: invoke-direct {v0, v1, v2, v4}, Lorg/purple/smoke/SteamBubble;.:(Landroid/content/Context;Lorg/purple/smoke/Steam;Landroid/view/ViewGroup;)V // method@bdf2 │ │ -43287e: 7020 dbbd 0500 |000d: invoke-direct {v5, v0}, Lorg/purple/smoke/SteamAdapter$ViewHolder;.:(Lorg/purple/smoke/SteamBubble;)V // method@bddb │ │ -432884: 1105 |0010: return-object v5 │ │ +432850: |[432850] org.purple.smoke.SteamAdapter.onCreateViewHolder:(Landroid/view/ViewGroup;I)Lorg/purple/smoke/SteamAdapter$ViewHolder; │ │ +432860: 2205 211b |0000: new-instance v5, Lorg/purple/smoke/SteamAdapter$ViewHolder; // type@1b21 │ │ +432864: 2200 271b |0002: new-instance v0, Lorg/purple/smoke/SteamBubble; // type@1b27 │ │ +432868: 6e10 e556 0400 |0004: invoke-virtual {v4}, Landroid/view/ViewGroup;.getContext:()Landroid/content/Context; // method@56e5 │ │ +43286e: 0c01 |0007: move-result-object v1 │ │ +432870: 5432 6b5f |0008: iget-object v2, v3, Lorg/purple/smoke/SteamAdapter;.m_steam:Lorg/purple/smoke/Steam; // field@5f6b │ │ +432874: 7040 f2bd 1042 |000a: invoke-direct {v0, v1, v2, v4}, Lorg/purple/smoke/SteamBubble;.:(Landroid/content/Context;Lorg/purple/smoke/Steam;Landroid/view/ViewGroup;)V // method@bdf2 │ │ +43287a: 7020 dbbd 0500 |000d: invoke-direct {v5, v0}, Lorg/purple/smoke/SteamAdapter$ViewHolder;.:(Lorg/purple/smoke/SteamBubble;)V // method@bddb │ │ +432880: 1105 |0010: return-object v5 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=153 │ │ 0x0004 line=154 │ │ locals : │ │ 0x0000 - 0x0011 reg=3 this Lorg/purple/smoke/SteamAdapter; │ │ 0x0000 - 0x0011 reg=4 (null) Landroid/view/ViewGroup; │ │ @@ -1190029,61 +1190028,61 @@ │ │ type : '(Ljava/lang/String;Ljava/lang/String;[BIJJ)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 11 │ │ ins : 9 │ │ outs : 5 │ │ insns size : 97 16-bit code units │ │ -4350bc: |[4350bc] org.purple.smoke.SteamReaderFull.:(Ljava/lang/String;Ljava/lang/String;[BIJJ)V │ │ -4350cc: 705a 15be 4296 |0000: invoke-direct {v2, v4, v6, v9, v10}, Lorg/purple/smoke/SteamReader;.:(Ljava/lang/String;IJ)V // method@be15 │ │ -4350d2: 1204 |0003: const/4 v4, #int 0 // #0 │ │ -4350d4: 5b24 d45f |0004: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd4 │ │ -4350d8: 5b24 d95f |0006: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_stalled:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd9 │ │ -4350dc: 5b24 ce5f |0008: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fce │ │ -4350e0: 5b24 d05f |000a: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd0 │ │ -4350e4: 5b24 d25f |000c: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd2 │ │ -4350e8: 5b24 d65f |000e: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ -4350ec: 1a06 0000 |0010: const-string v6, "" // string@0000 │ │ -4350f0: 5b26 d85f |0012: iput-object v6, v2, Lorg/purple/smoke/SteamReaderFull;.m_sipHashId:Ljava/lang/String; // field@5fd8 │ │ -4350f4: 5b24 cb5f |0014: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_fileIdentity:[B // field@5fcb │ │ -4350f8: 2204 e60a |0016: new-instance v4, Ljava/lang/Object; // type@0ae6 │ │ -4350fc: 7010 8f5c 0400 |0018: invoke-direct {v4}, Ljava/lang/Object;.:()V // method@5c8f │ │ -435102: 5b24 db5f |001b: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdb │ │ -435106: 1600 ffff |001d: const-wide/16 v0, #int -1 // #ffff │ │ -43510a: 5a20 cf5f |001f: iput-wide v0, v2, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fcf │ │ -43510e: 5b25 cb5f |0021: iput-object v5, v2, Lorg/purple/smoke/SteamReaderFull;.m_fileIdentity:[B // field@5fcb │ │ -435112: 2204 e60b |0023: new-instance v4, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ -435116: 7030 df60 7408 |0025: invoke-direct {v4, v7, v8}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60df │ │ -43511c: 5b24 ce5f |0028: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fce │ │ -435120: 5a20 cf5f |002a: iput-wide v0, v2, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fcf │ │ -435124: 2204 e60b |002c: new-instance v4, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ -435128: 7100 065d 0000 |002e: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -43512e: 0b05 |0031: move-result-wide v5 │ │ -435130: 7030 df60 5406 |0032: invoke-direct {v4, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60df │ │ -435136: 5b24 d05f |0035: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd0 │ │ -43513a: 2204 e60b |0037: new-instance v4, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ -43513e: 7030 df60 940a |0039: invoke-direct {v4, v9, v10}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60df │ │ -435144: 5b24 d25f |003c: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd2 │ │ -435148: 2204 e40b |003e: new-instance v4, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ -43514c: 1215 |0040: const/4 v5, #int 1 // #1 │ │ -43514e: 7020 d660 5400 |0041: invoke-direct {v4, v5}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d6 │ │ -435154: 5b24 d45f |0044: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd4 │ │ -435158: 2204 e60b |0046: new-instance v4, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ -43515c: 1605 0000 |0048: const-wide/16 v5, #int 0 // #0 │ │ -435160: 7030 df60 5406 |004a: invoke-direct {v4, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60df │ │ -435166: 5b24 d65f |004d: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ -43516a: 7110 fbbb 0300 |004f: invoke-static {v3}, Lorg/purple/smoke/Miscellaneous;.sipHashIdFromDestination:(Ljava/lang/String;)Ljava/lang/String; // method@bbfb │ │ -435170: 0c03 |0052: move-result-object v3 │ │ -435172: 5b23 d85f |0053: iput-object v3, v2, Lorg/purple/smoke/SteamReaderFull;.m_sipHashId:Ljava/lang/String; // field@5fd8 │ │ -435176: 2203 e50b |0055: new-instance v3, Ljava/util/concurrent/atomic/AtomicInteger; // type@0be5 │ │ -43517a: 1204 |0057: const/4 v4, #int 0 // #0 │ │ -43517c: 7020 db60 4300 |0058: invoke-direct {v3, v4}, Ljava/util/concurrent/atomic/AtomicInteger;.:(I)V // method@60db │ │ -435182: 5b23 d95f |005b: iput-object v3, v2, Lorg/purple/smoke/SteamReaderFull;.m_stalled:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd9 │ │ -435186: 7010 2cbe 0200 |005d: invoke-direct {v2}, Lorg/purple/smoke/SteamReaderFull;.prepareReader:()V // method@be2c │ │ -43518c: 0e00 |0060: return-void │ │ +4350b8: |[4350b8] org.purple.smoke.SteamReaderFull.:(Ljava/lang/String;Ljava/lang/String;[BIJJ)V │ │ +4350c8: 705a 15be 4296 |0000: invoke-direct {v2, v4, v6, v9, v10}, Lorg/purple/smoke/SteamReader;.:(Ljava/lang/String;IJ)V // method@be15 │ │ +4350ce: 1204 |0003: const/4 v4, #int 0 // #0 │ │ +4350d0: 5b24 d45f |0004: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd4 │ │ +4350d4: 5b24 d95f |0006: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_stalled:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd9 │ │ +4350d8: 5b24 ce5f |0008: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fce │ │ +4350dc: 5b24 d05f |000a: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd0 │ │ +4350e0: 5b24 d25f |000c: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd2 │ │ +4350e4: 5b24 d65f |000e: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ +4350e8: 1a06 0000 |0010: const-string v6, "" // string@0000 │ │ +4350ec: 5b26 d85f |0012: iput-object v6, v2, Lorg/purple/smoke/SteamReaderFull;.m_sipHashId:Ljava/lang/String; // field@5fd8 │ │ +4350f0: 5b24 cb5f |0014: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_fileIdentity:[B // field@5fcb │ │ +4350f4: 2204 e60a |0016: new-instance v4, Ljava/lang/Object; // type@0ae6 │ │ +4350f8: 7010 8f5c 0400 |0018: invoke-direct {v4}, Ljava/lang/Object;.:()V // method@5c8f │ │ +4350fe: 5b24 db5f |001b: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdb │ │ +435102: 1600 ffff |001d: const-wide/16 v0, #int -1 // #ffff │ │ +435106: 5a20 cf5f |001f: iput-wide v0, v2, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fcf │ │ +43510a: 5b25 cb5f |0021: iput-object v5, v2, Lorg/purple/smoke/SteamReaderFull;.m_fileIdentity:[B // field@5fcb │ │ +43510e: 2204 e60b |0023: new-instance v4, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ +435112: 7030 df60 7408 |0025: invoke-direct {v4, v7, v8}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60df │ │ +435118: 5b24 ce5f |0028: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fce │ │ +43511c: 5a20 cf5f |002a: iput-wide v0, v2, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fcf │ │ +435120: 2204 e60b |002c: new-instance v4, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ +435124: 7100 065d 0000 |002e: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +43512a: 0b05 |0031: move-result-wide v5 │ │ +43512c: 7030 df60 5406 |0032: invoke-direct {v4, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60df │ │ +435132: 5b24 d05f |0035: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd0 │ │ +435136: 2204 e60b |0037: new-instance v4, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ +43513a: 7030 df60 940a |0039: invoke-direct {v4, v9, v10}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60df │ │ +435140: 5b24 d25f |003c: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd2 │ │ +435144: 2204 e40b |003e: new-instance v4, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ +435148: 1215 |0040: const/4 v5, #int 1 // #1 │ │ +43514a: 7020 d660 5400 |0041: invoke-direct {v4, v5}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d6 │ │ +435150: 5b24 d45f |0044: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd4 │ │ +435154: 2204 e60b |0046: new-instance v4, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ +435158: 1605 0000 |0048: const-wide/16 v5, #int 0 // #0 │ │ +43515c: 7030 df60 5406 |004a: invoke-direct {v4, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60df │ │ +435162: 5b24 d65f |004d: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ +435166: 7110 fbbb 0300 |004f: invoke-static {v3}, Lorg/purple/smoke/Miscellaneous;.sipHashIdFromDestination:(Ljava/lang/String;)Ljava/lang/String; // method@bbfb │ │ +43516c: 0c03 |0052: move-result-object v3 │ │ +43516e: 5b23 d85f |0053: iput-object v3, v2, Lorg/purple/smoke/SteamReaderFull;.m_sipHashId:Ljava/lang/String; // field@5fd8 │ │ +435172: 2203 e50b |0055: new-instance v3, Ljava/util/concurrent/atomic/AtomicInteger; // type@0be5 │ │ +435176: 1204 |0057: const/4 v4, #int 0 // #0 │ │ +435178: 7020 db60 4300 |0058: invoke-direct {v3, v4}, Ljava/util/concurrent/atomic/AtomicInteger;.:(I)V // method@60db │ │ +43517e: 5b23 d95f |005b: iput-object v3, v2, Lorg/purple/smoke/SteamReaderFull;.m_stalled:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd9 │ │ +435182: 7010 2cbe 0200 |005d: invoke-direct {v2}, Lorg/purple/smoke/SteamReaderFull;.prepareReader:()V // method@be2c │ │ +435188: 0e00 |0060: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=312 │ │ 0x0004 line=39 │ │ 0x0006 line=40 │ │ 0x0008 line=41 │ │ 0x000a line=42 │ │ @@ -1190117,17 +1190116,17 @@ │ │ type : '(Lorg/purple/smoke/SteamReaderFull;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -435190: |[435190] org.purple.smoke.SteamReaderFull.access$000:(Lorg/purple/smoke/SteamReaderFull;)V │ │ -4351a0: 7010 2ebe 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderFull;.rewind:()V // method@be2e │ │ -4351a6: 0e00 |0003: return-void │ │ +43518c: |[43518c] org.purple.smoke.SteamReaderFull.access$000:(Lorg/purple/smoke/SteamReaderFull;)V │ │ +43519c: 7010 2ebe 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderFull;.rewind:()V // method@be2e │ │ +4351a2: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=37 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/SteamReaderFull; │ │ │ │ #2 : (in Lorg/purple/smoke/SteamReaderFull;) │ │ @@ -1190135,17 +1190134,17 @@ │ │ type : '(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -435074: |[435074] org.purple.smoke.SteamReaderFull.access$100:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; │ │ -435084: 5400 ce5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fce │ │ -435088: 1100 |0002: return-object v0 │ │ +435070: |[435070] org.purple.smoke.SteamReaderFull.access$100:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; │ │ +435080: 5400 ce5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fce │ │ +435084: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=37 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamReaderFull; │ │ │ │ #3 : (in Lorg/purple/smoke/SteamReaderFull;) │ │ @@ -1190153,17 +1190152,17 @@ │ │ type : '(Lorg/purple/smoke/SteamReaderFull;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -4351a8: |[4351a8] org.purple.smoke.SteamReaderFull.access$200:(Lorg/purple/smoke/SteamReaderFull;)V │ │ -4351b8: 7010 29be 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderFull;.computeRate:()V // method@be29 │ │ -4351be: 0e00 |0003: return-void │ │ +4351a4: |[4351a4] org.purple.smoke.SteamReaderFull.access$200:(Lorg/purple/smoke/SteamReaderFull;)V │ │ +4351b4: 7010 29be 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderFull;.computeRate:()V // method@be29 │ │ +4351ba: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=37 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/SteamReaderFull; │ │ │ │ #4 : (in Lorg/purple/smoke/SteamReaderFull;) │ │ @@ -1190171,17 +1190170,17 @@ │ │ type : '(Lorg/purple/smoke/SteamReaderFull;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -4351c0: |[4351c0] org.purple.smoke.SteamReaderFull.access$300:(Lorg/purple/smoke/SteamReaderFull;)V │ │ -4351d0: 7010 2fbe 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderFull;.saveReadOffset:()V // method@be2f │ │ -4351d6: 0e00 |0003: return-void │ │ +4351bc: |[4351bc] org.purple.smoke.SteamReaderFull.access$300:(Lorg/purple/smoke/SteamReaderFull;)V │ │ +4351cc: 7010 2fbe 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderFull;.saveReadOffset:()V // method@be2f │ │ +4351d2: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=37 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/SteamReaderFull; │ │ │ │ #5 : (in Lorg/purple/smoke/SteamReaderFull;) │ │ @@ -1190189,17 +1190188,17 @@ │ │ type : '(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/Object;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -43502c: |[43502c] org.purple.smoke.SteamReaderFull.access$400:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/Object; │ │ -43503c: 5400 db5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdb │ │ -435040: 1100 |0002: return-object v0 │ │ +435028: |[435028] org.purple.smoke.SteamReaderFull.access$400:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/Object; │ │ +435038: 5400 db5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdb │ │ +43503c: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=37 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamReaderFull; │ │ │ │ #6 : (in Lorg/purple/smoke/SteamReaderFull;) │ │ @@ -1190207,17 +1190206,17 @@ │ │ type : '(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -43505c: |[43505c] org.purple.smoke.SteamReaderFull.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; │ │ -43506c: 5400 d45f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd4 │ │ -435070: 1100 |0002: return-object v0 │ │ +435058: |[435058] org.purple.smoke.SteamReaderFull.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; │ │ +435068: 5400 d45f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd4 │ │ +43506c: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=37 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamReaderFull; │ │ │ │ #7 : (in Lorg/purple/smoke/SteamReaderFull;) │ │ @@ -1190225,17 +1190224,17 @@ │ │ type : '(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -43508c: |[43508c] org.purple.smoke.SteamReaderFull.access$600:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; │ │ -43509c: 5400 d05f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd0 │ │ -4350a0: 1100 |0002: return-object v0 │ │ +435088: |[435088] org.purple.smoke.SteamReaderFull.access$600:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; │ │ +435098: 5400 d05f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd0 │ │ +43509c: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=37 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamReaderFull; │ │ │ │ #8 : (in Lorg/purple/smoke/SteamReaderFull;) │ │ @@ -1190243,17 +1190242,17 @@ │ │ type : '(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -4350a4: |[4350a4] org.purple.smoke.SteamReaderFull.access$700:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; │ │ -4350b4: 5400 d65f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ -4350b8: 1100 |0002: return-object v0 │ │ +4350a0: |[4350a0] org.purple.smoke.SteamReaderFull.access$700:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; │ │ +4350b0: 5400 d65f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ +4350b4: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=37 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamReaderFull; │ │ │ │ #9 : (in Lorg/purple/smoke/SteamReaderFull;) │ │ @@ -1190261,17 +1190260,17 @@ │ │ type : '(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/String;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -435044: |[435044] org.purple.smoke.SteamReaderFull.access$800:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/String; │ │ -435054: 5400 d85f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_sipHashId:Ljava/lang/String; // field@5fd8 │ │ -435058: 1100 |0002: return-object v0 │ │ +435040: |[435040] org.purple.smoke.SteamReaderFull.access$800:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/String; │ │ +435050: 5400 d85f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_sipHashId:Ljava/lang/String; // field@5fd8 │ │ +435054: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=37 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamReaderFull; │ │ │ │ #10 : (in Lorg/purple/smoke/SteamReaderFull;) │ │ @@ -1190279,17 +1190278,17 @@ │ │ type : '(Lorg/purple/smoke/SteamReaderFull;)[B' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -434ffc: |[434ffc] org.purple.smoke.SteamReaderFull.access$900:(Lorg/purple/smoke/SteamReaderFull;)[B │ │ -43500c: 5400 cb5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_fileIdentity:[B // field@5fcb │ │ -435010: 1100 |0002: return-object v0 │ │ +434ff8: |[434ff8] org.purple.smoke.SteamReaderFull.access$900:(Lorg/purple/smoke/SteamReaderFull;)[B │ │ +435008: 5400 cb5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_fileIdentity:[B // field@5fcb │ │ +43500c: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=37 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamReaderFull; │ │ │ │ #11 : (in Lorg/purple/smoke/SteamReaderFull;) │ │ @@ -1190297,74 +1190296,74 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 12 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 113 16-bit code units │ │ -4351d8: |[4351d8] org.purple.smoke.SteamReaderFull.computeRate:()V │ │ -4351e8: 7100 065d 0000 |0000: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -4351ee: 0b00 |0003: move-result-wide v0 │ │ -4351f0: 1602 e803 |0004: const-wide/16 v2, #int 1000 // #3e8 │ │ -4351f4: be20 |0006: div-long/2addr v0, v2 │ │ -4351f6: 54b4 da5f |0007: iget-object v4, v11, Lorg/purple/smoke/SteamReaderFull;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fda │ │ -4351fa: 6e10 e160 0400 |0009: invoke-virtual {v4}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -435200: 0b04 |000c: move-result-wide v4 │ │ -435202: bc40 |000d: sub-long/2addr v0, v4 │ │ -435204: 7120 735c 1000 |000e: invoke-static {v0, v1}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ -43520a: 0b00 |0011: move-result-wide v0 │ │ -43520c: 1604 0100 |0012: const-wide/16 v4, #int 1 // #1 │ │ -435210: 3106 0004 |0014: cmp-long v6, v0, v4 │ │ -435214: 3a06 5a00 |0016: if-ltz v6, 0070 // +005a │ │ -435218: 54b4 d35f |0018: iget-object v4, v11, Lorg/purple/smoke/SteamReaderFull;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ -43521c: 6e10 e160 0400 |001a: invoke-virtual {v4}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -435222: 0b04 |001d: move-result-wide v4 │ │ -435224: 54b6 d35f |001e: iget-object v6, v11, Lorg/purple/smoke/SteamReaderFull;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ -435228: 54b7 d55f |0020: iget-object v7, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ -43522c: 6e10 e160 0700 |0022: invoke-virtual {v7}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -435232: 0b07 |0025: move-result-wide v7 │ │ -435234: 54b9 d25f |0026: iget-object v9, v11, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd2 │ │ -435238: 6e10 e160 0900 |0028: invoke-virtual {v9}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -43523e: 0b09 |002b: move-result-wide v9 │ │ -435240: bc97 |002c: sub-long/2addr v7, v9 │ │ -435242: 8677 |002d: long-to-double v7, v7 │ │ -435244: 8600 |002e: long-to-double v0, v0 │ │ -435246: 7120 2c5c 8700 |002f: invoke-static {v7, v8}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ -43524c: 7120 2c5c 1000 |0032: invoke-static {v0, v1}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ -435252: ce07 |0035: div-double/2addr v7, v0 │ │ -435254: 8b70 |0036: double-to-long v0, v7 │ │ -435256: 6e30 e360 0601 |0037: invoke-virtual {v6, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43525c: 54b0 d35f |003a: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ -435260: 6e10 e160 0000 |003c: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -435266: 0b00 |003f: move-result-wide v0 │ │ -435268: 1606 0000 |0040: const-wide/16 v6, #int 0 // #0 │ │ -43526c: 3108 0006 |0042: cmp-long v8, v0, v6 │ │ -435270: 3d08 0900 |0044: if-lez v8, 004d // +0009 │ │ -435274: 54b0 d95f |0046: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_stalled:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd9 │ │ -435278: 1201 |0048: const/4 v1, #int 0 // #0 │ │ -43527a: 6e20 de60 1000 |0049: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60de │ │ -435280: 280f |004c: goto 005b // +000f │ │ -435282: 54b0 d95f |004d: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_stalled:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd9 │ │ -435286: 6e10 dd60 0000 |004f: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.getAndIncrement:()I // method@60dd │ │ -43528c: 0a00 |0052: move-result v0 │ │ -43528e: 1231 |0053: const/4 v1, #int 3 // #3 │ │ -435290: 3610 0700 |0054: if-gt v0, v1, 005b // +0007 │ │ -435294: 54b0 d35f |0056: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ -435298: 6e30 e360 4005 |0058: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43529e: 54b0 d25f |005b: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd2 │ │ -4352a2: 54b1 d55f |005d: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ -4352a6: 6e10 e160 0100 |005f: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -4352ac: 0b04 |0062: move-result-wide v4 │ │ -4352ae: 6e30 e360 4005 |0063: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -4352b4: 54b0 da5f |0066: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fda │ │ -4352b8: 7100 065d 0000 |0068: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -4352be: 0b04 |006b: move-result-wide v4 │ │ -4352c0: be24 |006c: div-long/2addr v4, v2 │ │ -4352c2: 6e30 e360 4005 |006d: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -4352c8: 0e00 |0070: return-void │ │ +4351d4: |[4351d4] org.purple.smoke.SteamReaderFull.computeRate:()V │ │ +4351e4: 7100 065d 0000 |0000: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +4351ea: 0b00 |0003: move-result-wide v0 │ │ +4351ec: 1602 e803 |0004: const-wide/16 v2, #int 1000 // #3e8 │ │ +4351f0: be20 |0006: div-long/2addr v0, v2 │ │ +4351f2: 54b4 da5f |0007: iget-object v4, v11, Lorg/purple/smoke/SteamReaderFull;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fda │ │ +4351f6: 6e10 e160 0400 |0009: invoke-virtual {v4}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +4351fc: 0b04 |000c: move-result-wide v4 │ │ +4351fe: bc40 |000d: sub-long/2addr v0, v4 │ │ +435200: 7120 735c 1000 |000e: invoke-static {v0, v1}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ +435206: 0b00 |0011: move-result-wide v0 │ │ +435208: 1604 0100 |0012: const-wide/16 v4, #int 1 // #1 │ │ +43520c: 3106 0004 |0014: cmp-long v6, v0, v4 │ │ +435210: 3a06 5a00 |0016: if-ltz v6, 0070 // +005a │ │ +435214: 54b4 d35f |0018: iget-object v4, v11, Lorg/purple/smoke/SteamReaderFull;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ +435218: 6e10 e160 0400 |001a: invoke-virtual {v4}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +43521e: 0b04 |001d: move-result-wide v4 │ │ +435220: 54b6 d35f |001e: iget-object v6, v11, Lorg/purple/smoke/SteamReaderFull;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ +435224: 54b7 d55f |0020: iget-object v7, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ +435228: 6e10 e160 0700 |0022: invoke-virtual {v7}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +43522e: 0b07 |0025: move-result-wide v7 │ │ +435230: 54b9 d25f |0026: iget-object v9, v11, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd2 │ │ +435234: 6e10 e160 0900 |0028: invoke-virtual {v9}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +43523a: 0b09 |002b: move-result-wide v9 │ │ +43523c: bc97 |002c: sub-long/2addr v7, v9 │ │ +43523e: 8677 |002d: long-to-double v7, v7 │ │ +435240: 8600 |002e: long-to-double v0, v0 │ │ +435242: 7120 2c5c 8700 |002f: invoke-static {v7, v8}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ +435248: 7120 2c5c 1000 |0032: invoke-static {v0, v1}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ +43524e: ce07 |0035: div-double/2addr v7, v0 │ │ +435250: 8b70 |0036: double-to-long v0, v7 │ │ +435252: 6e30 e360 0601 |0037: invoke-virtual {v6, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +435258: 54b0 d35f |003a: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ +43525c: 6e10 e160 0000 |003c: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +435262: 0b00 |003f: move-result-wide v0 │ │ +435264: 1606 0000 |0040: const-wide/16 v6, #int 0 // #0 │ │ +435268: 3108 0006 |0042: cmp-long v8, v0, v6 │ │ +43526c: 3d08 0900 |0044: if-lez v8, 004d // +0009 │ │ +435270: 54b0 d95f |0046: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_stalled:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd9 │ │ +435274: 1201 |0048: const/4 v1, #int 0 // #0 │ │ +435276: 6e20 de60 1000 |0049: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60de │ │ +43527c: 280f |004c: goto 005b // +000f │ │ +43527e: 54b0 d95f |004d: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_stalled:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd9 │ │ +435282: 6e10 dd60 0000 |004f: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.getAndIncrement:()I // method@60dd │ │ +435288: 0a00 |0052: move-result v0 │ │ +43528a: 1231 |0053: const/4 v1, #int 3 // #3 │ │ +43528c: 3610 0700 |0054: if-gt v0, v1, 005b // +0007 │ │ +435290: 54b0 d35f |0056: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ +435294: 6e30 e360 4005 |0058: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43529a: 54b0 d25f |005b: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd2 │ │ +43529e: 54b1 d55f |005d: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ +4352a2: 6e10 e160 0100 |005f: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +4352a8: 0b04 |0062: move-result-wide v4 │ │ +4352aa: 6e30 e360 4005 |0063: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +4352b0: 54b0 da5f |0066: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fda │ │ +4352b4: 7100 065d 0000 |0068: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +4352ba: 0b04 |006b: move-result-wide v4 │ │ +4352bc: be24 |006c: div-long/2addr v4, v2 │ │ +4352be: 6e30 e360 4005 |006d: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +4352c4: 0e00 |0070: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=56 │ │ 0x0018 line=60 │ │ 0x001e line=62 │ │ 0x0022 line=63 │ │ 0x0028 line=64 │ │ @@ -1190383,28 +1190382,28 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 27 16-bit code units │ │ -435354: |[435354] org.purple.smoke.SteamReaderFull.prepareReader:()V │ │ -435364: 5480 d75f |0000: iget-object v0, v8, Lorg/purple/smoke/SteamReaderFull;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fd7 │ │ -435368: 3900 1800 |0002: if-nez v0, 001a // +0018 │ │ -43536c: 7100 c660 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c6 │ │ -435372: 0c00 |0007: move-result-object v0 │ │ -435374: 5b80 d75f |0008: iput-object v0, v8, Lorg/purple/smoke/SteamReaderFull;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fd7 │ │ -435378: 5481 d75f |000a: iget-object v1, v8, Lorg/purple/smoke/SteamReaderFull;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fd7 │ │ -43537c: 2202 2e1b |000c: new-instance v2, Lorg/purple/smoke/SteamReaderFull$1; // type@1b2e │ │ -435380: 7020 1cbe 8200 |000e: invoke-direct {v2, v8}, Lorg/purple/smoke/SteamReaderFull$1;.:(Lorg/purple/smoke/SteamReaderFull;)V // method@be1c │ │ -435386: 1603 dc05 |0011: const-wide/16 v3, #int 1500 // #5dc │ │ -43538a: 1605 fa00 |0013: const-wide/16 v5, #int 250 // #fa │ │ -43538e: 6207 ef2c |0015: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -435392: 7807 ce60 0100 |0017: invoke-interface/range {v1, v2, v3, v4, v5, v6, v7}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ -435398: 0e00 |001a: return-void │ │ +435350: |[435350] org.purple.smoke.SteamReaderFull.prepareReader:()V │ │ +435360: 5480 d75f |0000: iget-object v0, v8, Lorg/purple/smoke/SteamReaderFull;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fd7 │ │ +435364: 3900 1800 |0002: if-nez v0, 001a // +0018 │ │ +435368: 7100 c660 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c6 │ │ +43536e: 0c00 |0007: move-result-object v0 │ │ +435370: 5b80 d75f |0008: iput-object v0, v8, Lorg/purple/smoke/SteamReaderFull;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fd7 │ │ +435374: 5481 d75f |000a: iget-object v1, v8, Lorg/purple/smoke/SteamReaderFull;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fd7 │ │ +435378: 2202 2e1b |000c: new-instance v2, Lorg/purple/smoke/SteamReaderFull$1; // type@1b2e │ │ +43537c: 7020 1cbe 8200 |000e: invoke-direct {v2, v8}, Lorg/purple/smoke/SteamReaderFull$1;.:(Lorg/purple/smoke/SteamReaderFull;)V // method@be1c │ │ +435382: 1603 dc05 |0011: const-wide/16 v3, #int 1500 // #5dc │ │ +435386: 1605 fa00 |0013: const-wide/16 v5, #int 250 // #fa │ │ +43538a: 6207 ef2c |0015: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +43538e: 7807 ce60 0100 |0017: invoke-interface/range {v1, v2, v3, v4, v5, v6, v7}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ +435394: 0e00 |001a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=78 │ │ 0x0004 line=80 │ │ 0x000a line=81 │ │ locals : │ │ 0x0000 - 0x001b reg=8 this Lorg/purple/smoke/SteamReaderFull; │ │ @@ -1190414,55 +1190413,55 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 75 16-bit code units │ │ -43539c: |[43539c] org.purple.smoke.SteamReaderFull.rewind:()V │ │ -4353ac: 5440 ca5f |0000: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ -4353b0: 1201 |0002: const/4 v1, #int 0 // #0 │ │ -4353b2: 6e20 da60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -4353b8: 1600 0000 |0006: const-wide/16 v0, #int 0 // #0 │ │ -4353bc: 5442 cd5f |0008: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fcd │ │ -4353c0: 1d02 |000a: monitor-enter v2 │ │ -4353c2: 5443 cc5f |000b: iget-object v3, v4, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcc │ │ -4353c6: 3803 0b00 |000d: if-eqz v3, 0018 // +000b │ │ -4353ca: 5443 cc5f |000f: iget-object v3, v4, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcc │ │ -4353ce: 6e10 a85b 0300 |0011: invoke-virtual {v3}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ -4353d4: 0c03 |0014: move-result-object v3 │ │ -4353d6: 6e30 cb5d 0301 |0015: invoke-virtual {v3, v0, v1}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcb │ │ -4353dc: 1e02 |0018: monitor-exit v2 │ │ -4353de: 2804 |0019: goto 001d // +0004 │ │ -4353e0: 0d03 |001a: move-exception v3 │ │ -4353e2: 1e02 |001b: monitor-exit v2 │ │ -4353e4: 2703 |001c: throw v3 │ │ -4353e6: 1602 ffff |001d: const-wide/16 v2, #int -1 // #ffff │ │ -4353ea: 5a42 cf5f |001f: iput-wide v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fcf │ │ -4353ee: 5442 d05f |0021: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd0 │ │ -4353f2: 6e30 e360 0201 |0023: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -4353f8: 5442 d25f |0026: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd2 │ │ -4353fc: 6e30 e360 0201 |0028: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -435402: 5442 d45f |002b: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd4 │ │ -435406: 1213 |002d: const/4 v3, #int 1 // #1 │ │ -435408: 6e20 da60 3200 |002e: invoke-virtual {v2, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -43540e: 5442 d55f |0031: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ -435412: 6e30 e360 0201 |0033: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -435418: 5442 d65f |0036: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ -43541c: 6e30 e360 0201 |0038: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -435422: 7010 2fbe 0400 |003b: invoke-direct {v4}, Lorg/purple/smoke/SteamReaderFull;.saveReadOffset:()V // method@be2f │ │ -435428: 5440 db5f |003e: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdb │ │ -43542c: 1d00 |0040: monitor-enter v0 │ │ -43542e: 5441 db5f |0041: iget-object v1, v4, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdb │ │ -435432: 6e10 945c 0100 |0043: invoke-virtual {v1}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ -435438: 1e00 |0046: monitor-exit v0 │ │ -43543a: 0e00 |0047: return-void │ │ -43543c: 0d01 |0048: move-exception v1 │ │ -43543e: 1e00 |0049: monitor-exit v0 │ │ -435440: 2701 |004a: throw v1 │ │ +435398: |[435398] org.purple.smoke.SteamReaderFull.rewind:()V │ │ +4353a8: 5440 ca5f |0000: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ +4353ac: 1201 |0002: const/4 v1, #int 0 // #0 │ │ +4353ae: 6e20 da60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +4353b4: 1600 0000 |0006: const-wide/16 v0, #int 0 // #0 │ │ +4353b8: 5442 cd5f |0008: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fcd │ │ +4353bc: 1d02 |000a: monitor-enter v2 │ │ +4353be: 5443 cc5f |000b: iget-object v3, v4, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcc │ │ +4353c2: 3803 0b00 |000d: if-eqz v3, 0018 // +000b │ │ +4353c6: 5443 cc5f |000f: iget-object v3, v4, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcc │ │ +4353ca: 6e10 a85b 0300 |0011: invoke-virtual {v3}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ +4353d0: 0c03 |0014: move-result-object v3 │ │ +4353d2: 6e30 cb5d 0301 |0015: invoke-virtual {v3, v0, v1}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcb │ │ +4353d8: 1e02 |0018: monitor-exit v2 │ │ +4353da: 2804 |0019: goto 001d // +0004 │ │ +4353dc: 0d03 |001a: move-exception v3 │ │ +4353de: 1e02 |001b: monitor-exit v2 │ │ +4353e0: 2703 |001c: throw v3 │ │ +4353e2: 1602 ffff |001d: const-wide/16 v2, #int -1 // #ffff │ │ +4353e6: 5a42 cf5f |001f: iput-wide v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fcf │ │ +4353ea: 5442 d05f |0021: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd0 │ │ +4353ee: 6e30 e360 0201 |0023: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +4353f4: 5442 d25f |0026: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd2 │ │ +4353f8: 6e30 e360 0201 |0028: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +4353fe: 5442 d45f |002b: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd4 │ │ +435402: 1213 |002d: const/4 v3, #int 1 // #1 │ │ +435404: 6e20 da60 3200 |002e: invoke-virtual {v2, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +43540a: 5442 d55f |0031: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ +43540e: 6e30 e360 0201 |0033: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +435414: 5442 d65f |0036: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ +435418: 6e30 e360 0201 |0038: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43541e: 7010 2fbe 0400 |003b: invoke-direct {v4}, Lorg/purple/smoke/SteamReaderFull;.saveReadOffset:()V // method@be2f │ │ +435424: 5440 db5f |003e: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdb │ │ +435428: 1d00 |0040: monitor-enter v0 │ │ +43542a: 5441 db5f |0041: iget-object v1, v4, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdb │ │ +43542e: 6e10 945c 0100 |0043: invoke-virtual {v1}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ +435434: 1e00 |0046: monitor-exit v0 │ │ +435436: 0e00 |0047: return-void │ │ +435438: 0d01 |0048: move-exception v1 │ │ +43543a: 1e00 |0049: monitor-exit v0 │ │ +43543c: 2701 |004a: throw v1 │ │ catches : 4 │ │ 0x0008 - 0x000b │ │ Ljava/lang/Exception; -> 0x001d │ │ 0x000b - 0x001c │ │ -> 0x001a │ │ 0x001c - 0x001d │ │ Ljava/lang/Exception; -> 0x001d │ │ @@ -1190492,28 +1190491,28 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 8 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 26 16-bit code units │ │ -435470: |[435470] org.purple.smoke.SteamReaderFull.saveReadOffset:()V │ │ -435480: 6200 dd5f |0000: sget-object v0, Lorg/purple/smoke/SteamReaderFull;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fdd │ │ -435484: 6201 dc5f |0002: sget-object v1, Lorg/purple/smoke/SteamReaderFull;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fdc │ │ -435488: 6e10 2dbe 0700 |0004: invoke-virtual {v7}, Lorg/purple/smoke/SteamReaderFull;.prettyRate:()Ljava/lang/String; // method@be2d │ │ -43548e: 0c03 |0007: move-result-object v3 │ │ -435490: 5472 d15f |0008: iget-object v2, v7, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ -435494: 6e10 dc60 0200 |000a: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -43549a: 0a04 |000d: move-result v4 │ │ -43549c: 5472 d55f |000e: iget-object v2, v7, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ -4354a0: 6e10 e160 0200 |0010: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -4354a6: 0b05 |0013: move-result-wide v5 │ │ -4354a8: 1a02 0000 |0014: const-string v2, "" // string@0000 │ │ -4354ac: 7407 42ba 0000 |0016: invoke-virtual/range {v0, v1, v2, v3, v4, v5, v6}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ -4354b2: 0e00 |0019: return-void │ │ +43546c: |[43546c] org.purple.smoke.SteamReaderFull.saveReadOffset:()V │ │ +43547c: 6200 dd5f |0000: sget-object v0, Lorg/purple/smoke/SteamReaderFull;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fdd │ │ +435480: 6201 dc5f |0002: sget-object v1, Lorg/purple/smoke/SteamReaderFull;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fdc │ │ +435484: 6e10 2dbe 0700 |0004: invoke-virtual {v7}, Lorg/purple/smoke/SteamReaderFull;.prettyRate:()Ljava/lang/String; // method@be2d │ │ +43548a: 0c03 |0007: move-result-object v3 │ │ +43548c: 5472 d15f |0008: iget-object v2, v7, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ +435490: 6e10 dc60 0200 |000a: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +435496: 0a04 |000d: move-result v4 │ │ +435498: 5472 d55f |000e: iget-object v2, v7, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ +43549c: 6e10 e160 0200 |0010: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +4354a2: 0b05 |0013: move-result-wide v5 │ │ +4354a4: 1a02 0000 |0014: const-string v2, "" // string@0000 │ │ +4354a8: 7407 42ba 0000 |0016: invoke-virtual/range {v0, v1, v2, v3, v4, v5, v6}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ +4354ae: 0e00 |0019: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=301 │ │ 0x0004 line=302 │ │ locals : │ │ 0x0000 - 0x001a reg=7 this Lorg/purple/smoke/SteamReaderFull; │ │ │ │ @@ -1190523,40 +1190522,40 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 49 16-bit code units │ │ -4352cc: |[4352cc] org.purple.smoke.SteamReaderFull.delete:()V │ │ -4352dc: 5440 c95f |0000: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fc9 │ │ -4352e0: 1211 |0002: const/4 v1, #int 1 // #1 │ │ -4352e2: 6e20 da60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -4352e8: 1600 ffff |0006: const-wide/16 v0, #int -1 // #ffff │ │ -4352ec: 5a40 cf5f |0008: iput-wide v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fcf │ │ -4352f0: 5440 d05f |000a: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd0 │ │ -4352f4: 1601 0000 |000c: const-wide/16 v1, #int 0 // #0 │ │ -4352f8: 6e30 e360 1002 |000e: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -4352fe: 5440 d25f |0011: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd2 │ │ -435302: 6e30 e360 1002 |0013: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -435308: 5440 d45f |0016: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd4 │ │ -43530c: 1203 |0018: const/4 v3, #int 0 // #0 │ │ -43530e: 6e20 da60 3000 |0019: invoke-virtual {v0, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -435314: 5440 d65f |001c: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ -435318: 6e30 e360 1002 |001e: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43531e: 5440 db5f |0021: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdb │ │ -435322: 1d00 |0023: monitor-enter v0 │ │ -435324: 5441 db5f |0024: iget-object v1, v4, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdb │ │ -435328: 6e10 945c 0100 |0026: invoke-virtual {v1}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ -43532e: 1e00 |0029: monitor-exit v0 │ │ -435330: 6f10 18be 0400 |002a: invoke-super {v4}, Lorg/purple/smoke/SteamReader;.delete:()V // method@be18 │ │ -435336: 0e00 |002d: return-void │ │ -435338: 0d01 |002e: move-exception v1 │ │ -43533a: 1e00 |002f: monitor-exit v0 │ │ -43533c: 2701 |0030: throw v1 │ │ +4352c8: |[4352c8] org.purple.smoke.SteamReaderFull.delete:()V │ │ +4352d8: 5440 c95f |0000: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fc9 │ │ +4352dc: 1211 |0002: const/4 v1, #int 1 // #1 │ │ +4352de: 6e20 da60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +4352e4: 1600 ffff |0006: const-wide/16 v0, #int -1 // #ffff │ │ +4352e8: 5a40 cf5f |0008: iput-wide v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fcf │ │ +4352ec: 5440 d05f |000a: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd0 │ │ +4352f0: 1601 0000 |000c: const-wide/16 v1, #int 0 // #0 │ │ +4352f4: 6e30 e360 1002 |000e: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +4352fa: 5440 d25f |0011: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd2 │ │ +4352fe: 6e30 e360 1002 |0013: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +435304: 5440 d45f |0016: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd4 │ │ +435308: 1203 |0018: const/4 v3, #int 0 // #0 │ │ +43530a: 6e20 da60 3000 |0019: invoke-virtual {v0, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +435310: 5440 d65f |001c: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ +435314: 6e30 e360 1002 |001e: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43531a: 5440 db5f |0021: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdb │ │ +43531e: 1d00 |0023: monitor-enter v0 │ │ +435320: 5441 db5f |0024: iget-object v1, v4, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdb │ │ +435324: 6e10 945c 0100 |0026: invoke-virtual {v1}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ +43532a: 1e00 |0029: monitor-exit v0 │ │ +43532c: 6f10 18be 0400 |002a: invoke-super {v4}, Lorg/purple/smoke/SteamReader;.delete:()V // method@be18 │ │ +435332: 0e00 |002d: return-void │ │ +435334: 0d01 |002e: move-exception v1 │ │ +435336: 1e00 |002f: monitor-exit v0 │ │ +435338: 2701 |0030: throw v1 │ │ catches : 2 │ │ 0x0024 - 0x002a │ │ -> 0x002e │ │ 0x002f - 0x0030 │ │ -> 0x002e │ │ positions : │ │ 0x0000 line=332 │ │ @@ -1190578,17 +1190577,17 @@ │ │ type : '()[B' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -435014: |[435014] org.purple.smoke.SteamReaderFull.fileIdentity:()[B │ │ -435024: 5410 cb5f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull;.m_fileIdentity:[B // field@5fcb │ │ -435028: 1100 |0002: return-object v0 │ │ +435010: |[435010] org.purple.smoke.SteamReaderFull.fileIdentity:()[B │ │ +435020: 5410 cb5f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull;.m_fileIdentity:[B // field@5fcb │ │ +435024: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=327 │ │ locals : │ │ 0x0000 - 0x0003 reg=1 this Lorg/purple/smoke/SteamReaderFull; │ │ │ │ #2 : (in Lorg/purple/smoke/SteamReaderFull;) │ │ @@ -1190596,83 +1190595,83 @@ │ │ type : '(J)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 14 │ │ ins : 3 │ │ outs : 7 │ │ insns size : 128 16-bit code units │ │ -4354b4: |[4354b4] org.purple.smoke.SteamReaderFull.setAcknowledgedOffset:(J)V │ │ -4354c4: 1600 0000 |0000: const-wide/16 v0, #int 0 // #0 │ │ -4354c8: 3102 0c00 |0002: cmp-long v2, v12, v0 │ │ -4354cc: 3b02 0300 |0004: if-gez v2, 0007 // +0003 │ │ -4354d0: 0e00 |0006: return-void │ │ -4354d2: 53b0 cf5f |0007: iget-wide v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fcf │ │ -4354d6: 1212 |0009: const/4 v2, #int 1 // #1 │ │ -4354d8: 1203 |000a: const/4 v3, #int 0 // #0 │ │ -4354da: 3104 000c |000b: cmp-long v4, v0, v12 │ │ -4354de: 3804 2700 |000d: if-eqz v4, 0034 // +0027 │ │ -4354e2: 54b0 d55f |000f: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ -4354e6: 6e10 e160 0000 |0011: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -4354ec: 0b00 |0014: move-result-wide v0 │ │ -4354ee: 3104 000c |0015: cmp-long v4, v0, v12 │ │ -4354f2: 3904 1d00 |0017: if-nez v4, 0034 // +001d │ │ -4354f6: 5abc cf5f |0019: iput-wide v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fcf │ │ -4354fa: 54b0 d05f |001b: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd0 │ │ -4354fe: 7100 065d 0000 |001d: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -435504: 0b04 |0020: move-result-wide v4 │ │ -435506: 6e30 e360 4005 |0021: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43550c: 54b0 d55f |0024: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ -435510: 54b1 d65f |0026: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ -435514: 6e10 e160 0100 |0028: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -43551a: 0b04 |002b: move-result-wide v4 │ │ -43551c: 6e30 e060 4005 |002c: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.addAndGet:(J)J // method@60e0 │ │ -435522: 7010 2fbe 0b00 |002f: invoke-direct {v11}, Lorg/purple/smoke/SteamReaderFull;.saveReadOffset:()V // method@be2f │ │ -435528: 1210 |0032: const/4 v0, #int 1 // #1 │ │ -43552a: 2802 |0033: goto 0035 // +0002 │ │ -43552c: 1200 |0034: const/4 v0, #int 0 // #0 │ │ -43552e: 54b1 ce5f |0035: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fce │ │ -435532: 6e10 e160 0100 |0037: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -435538: 0b04 |003a: move-result-wide v4 │ │ -43553a: 54b1 d55f |003b: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ -43553e: 6e10 e160 0100 |003d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -435544: 0b06 |0040: move-result-wide v6 │ │ -435546: 3101 0406 |0041: cmp-long v1, v4, v6 │ │ -43554a: 3801 0f00 |0043: if-eqz v1, 0052 // +000f │ │ -43554e: 54b1 ce5f |0045: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fce │ │ -435552: 6e10 e160 0100 |0047: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -435558: 0b04 |004a: move-result-wide v4 │ │ -43555a: 3101 040c |004b: cmp-long v1, v4, v12 │ │ -43555e: 3901 0300 |004d: if-nez v1, 0050 // +0003 │ │ -435562: 2803 |004f: goto 0052 // +0003 │ │ -435564: 0103 |0050: move v3, v0 │ │ -435566: 281d |0051: goto 006e // +001d │ │ -435568: 54bc ca5f |0052: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ -43556c: 6e20 da60 2c00 |0054: invoke-virtual {v12, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -435572: 6204 dd5f |0057: sget-object v4, Lorg/purple/smoke/SteamReaderFull;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fdd │ │ -435576: 6205 dc5f |0059: sget-object v5, Lorg/purple/smoke/SteamReaderFull;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fdc │ │ -43557a: 1a06 fb5f |005b: const-string v6, "completed" // string@5ffb │ │ -43557e: 1a07 0000 |005d: const-string v7, "" // string@0000 │ │ -435582: 54bc d15f |005f: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ -435586: 6e10 dc60 0c00 |0061: invoke-virtual {v12}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -43558c: 0a08 |0064: move-result v8 │ │ -43558e: 54bc d55f |0065: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ -435592: 6e10 e160 0c00 |0067: invoke-virtual {v12}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -435598: 0b09 |006a: move-result-wide v9 │ │ -43559a: 7407 42ba 0400 |006b: invoke-virtual/range {v4, v5, v6, v7, v8, v9, v10}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ -4355a0: 54bc d45f |006e: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd4 │ │ -4355a4: 6e20 da60 3c00 |0070: invoke-virtual {v12, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -4355aa: 54bc db5f |0073: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdb │ │ -4355ae: 1d0c |0075: monitor-enter v12 │ │ -4355b0: 54bd db5f |0076: iget-object v13, v11, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdb │ │ -4355b4: 6e10 945c 0d00 |0078: invoke-virtual {v13}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ -4355ba: 1e0c |007b: monitor-exit v12 │ │ -4355bc: 0e00 |007c: return-void │ │ -4355be: 0d0d |007d: move-exception v13 │ │ -4355c0: 1e0c |007e: monitor-exit v12 │ │ -4355c2: 270d |007f: throw v13 │ │ +4354b0: |[4354b0] org.purple.smoke.SteamReaderFull.setAcknowledgedOffset:(J)V │ │ +4354c0: 1600 0000 |0000: const-wide/16 v0, #int 0 // #0 │ │ +4354c4: 3102 0c00 |0002: cmp-long v2, v12, v0 │ │ +4354c8: 3b02 0300 |0004: if-gez v2, 0007 // +0003 │ │ +4354cc: 0e00 |0006: return-void │ │ +4354ce: 53b0 cf5f |0007: iget-wide v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fcf │ │ +4354d2: 1212 |0009: const/4 v2, #int 1 // #1 │ │ +4354d4: 1203 |000a: const/4 v3, #int 0 // #0 │ │ +4354d6: 3104 000c |000b: cmp-long v4, v0, v12 │ │ +4354da: 3804 2700 |000d: if-eqz v4, 0034 // +0027 │ │ +4354de: 54b0 d55f |000f: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ +4354e2: 6e10 e160 0000 |0011: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +4354e8: 0b00 |0014: move-result-wide v0 │ │ +4354ea: 3104 000c |0015: cmp-long v4, v0, v12 │ │ +4354ee: 3904 1d00 |0017: if-nez v4, 0034 // +001d │ │ +4354f2: 5abc cf5f |0019: iput-wide v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fcf │ │ +4354f6: 54b0 d05f |001b: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd0 │ │ +4354fa: 7100 065d 0000 |001d: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +435500: 0b04 |0020: move-result-wide v4 │ │ +435502: 6e30 e360 4005 |0021: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +435508: 54b0 d55f |0024: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ +43550c: 54b1 d65f |0026: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ +435510: 6e10 e160 0100 |0028: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +435516: 0b04 |002b: move-result-wide v4 │ │ +435518: 6e30 e060 4005 |002c: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.addAndGet:(J)J // method@60e0 │ │ +43551e: 7010 2fbe 0b00 |002f: invoke-direct {v11}, Lorg/purple/smoke/SteamReaderFull;.saveReadOffset:()V // method@be2f │ │ +435524: 1210 |0032: const/4 v0, #int 1 // #1 │ │ +435526: 2802 |0033: goto 0035 // +0002 │ │ +435528: 1200 |0034: const/4 v0, #int 0 // #0 │ │ +43552a: 54b1 ce5f |0035: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fce │ │ +43552e: 6e10 e160 0100 |0037: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +435534: 0b04 |003a: move-result-wide v4 │ │ +435536: 54b1 d55f |003b: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ +43553a: 6e10 e160 0100 |003d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +435540: 0b06 |0040: move-result-wide v6 │ │ +435542: 3101 0406 |0041: cmp-long v1, v4, v6 │ │ +435546: 3801 0f00 |0043: if-eqz v1, 0052 // +000f │ │ +43554a: 54b1 ce5f |0045: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fce │ │ +43554e: 6e10 e160 0100 |0047: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +435554: 0b04 |004a: move-result-wide v4 │ │ +435556: 3101 040c |004b: cmp-long v1, v4, v12 │ │ +43555a: 3901 0300 |004d: if-nez v1, 0050 // +0003 │ │ +43555e: 2803 |004f: goto 0052 // +0003 │ │ +435560: 0103 |0050: move v3, v0 │ │ +435562: 281d |0051: goto 006e // +001d │ │ +435564: 54bc ca5f |0052: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ +435568: 6e20 da60 2c00 |0054: invoke-virtual {v12, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +43556e: 6204 dd5f |0057: sget-object v4, Lorg/purple/smoke/SteamReaderFull;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fdd │ │ +435572: 6205 dc5f |0059: sget-object v5, Lorg/purple/smoke/SteamReaderFull;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fdc │ │ +435576: 1a06 fb5f |005b: const-string v6, "completed" // string@5ffb │ │ +43557a: 1a07 0000 |005d: const-string v7, "" // string@0000 │ │ +43557e: 54bc d15f |005f: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd1 │ │ +435582: 6e10 dc60 0c00 |0061: invoke-virtual {v12}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +435588: 0a08 |0064: move-result v8 │ │ +43558a: 54bc d55f |0065: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd5 │ │ +43558e: 6e10 e160 0c00 |0067: invoke-virtual {v12}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +435594: 0b09 |006a: move-result-wide v9 │ │ +435596: 7407 42ba 0400 |006b: invoke-virtual/range {v4, v5, v6, v7, v8, v9, v10}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ +43559c: 54bc d45f |006e: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd4 │ │ +4355a0: 6e20 da60 3c00 |0070: invoke-virtual {v12, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +4355a6: 54bc db5f |0073: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdb │ │ +4355aa: 1d0c |0075: monitor-enter v12 │ │ +4355ac: 54bd db5f |0076: iget-object v13, v11, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdb │ │ +4355b0: 6e10 945c 0d00 |0078: invoke-virtual {v13}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ +4355b6: 1e0c |007b: monitor-exit v12 │ │ +4355b8: 0e00 |007c: return-void │ │ +4355ba: 0d0d |007d: move-exception v13 │ │ +4355bc: 1e0c |007e: monitor-exit v12 │ │ +4355be: 270d |007f: throw v13 │ │ catches : 1 │ │ 0x0076 - 0x007f │ │ -> 0x007d │ │ positions : │ │ 0x0007 line=358 │ │ 0x0011 line=362 │ │ 0x0019 line=364 │ │ @@ -1190699,16 +1190698,16 @@ │ │ type : '(I)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -4355d0: |[4355d0] org.purple.smoke.SteamReaderFull.setReadInterval:(I)V │ │ -4355e0: 0e00 |0000: return-void │ │ +4355cc: |[4355cc] org.purple.smoke.SteamReaderFull.setReadInterval:(I)V │ │ +4355dc: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ source_file_idx : 19588 (SteamReaderFull.java) │ │ │ │ Class #4373 header: │ │ @@ -1190747,33 +1190746,33 @@ │ │ type : '(Ljava/lang/String;IJJ)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 7 │ │ ins : 7 │ │ outs : 5 │ │ insns size : 37 16-bit code units │ │ -435a08: |[435a08] org.purple.smoke.SteamReaderSimple.:(Ljava/lang/String;IJJ)V │ │ -435a18: 7056 15be 1052 |0000: invoke-direct {v0, v1, v2, v5, v6}, Lorg/purple/smoke/SteamReader;.:(Ljava/lang/String;IJ)V // method@be15 │ │ -435a1e: 1201 |0003: const/4 v1, #int 0 // #0 │ │ -435a20: 5b01 e45f |0004: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe4 │ │ -435a24: 5b01 e75f |0006: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe7 │ │ -435a28: 2201 e60b |0008: new-instance v1, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ -435a2c: 1605 0000 |000a: const-wide/16 v5, #int 0 // #0 │ │ -435a30: 7030 df60 5106 |000c: invoke-direct {v1, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60df │ │ -435a36: 5b01 e45f |000f: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe4 │ │ -435a3a: 2201 e60b |0011: new-instance v1, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ -435a3e: 1605 0400 |0013: const-wide/16 v5, #int 4 // #4 │ │ -435a42: 7140 7f5c 6543 |0015: invoke-static {v5, v6, v3, v4}, Ljava/lang/Math;.max:(JJ)J // method@5c7f │ │ -435a48: 0b02 |0018: move-result-wide v2 │ │ -435a4a: 1604 e803 |0019: const-wide/16 v4, #int 1000 // #3e8 │ │ -435a4e: be24 |001b: div-long/2addr v4, v2 │ │ -435a50: 7030 df60 4105 |001c: invoke-direct {v1, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60df │ │ -435a56: 5b01 e75f |001f: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe7 │ │ -435a5a: 7010 3abe 0000 |0021: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderSimple;.prepareReader:()V // method@be3a │ │ -435a60: 0e00 |0024: return-void │ │ +435a04: |[435a04] org.purple.smoke.SteamReaderSimple.:(Ljava/lang/String;IJJ)V │ │ +435a14: 7056 15be 1052 |0000: invoke-direct {v0, v1, v2, v5, v6}, Lorg/purple/smoke/SteamReader;.:(Ljava/lang/String;IJ)V // method@be15 │ │ +435a1a: 1201 |0003: const/4 v1, #int 0 // #0 │ │ +435a1c: 5b01 e45f |0004: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe4 │ │ +435a20: 5b01 e75f |0006: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe7 │ │ +435a24: 2201 e60b |0008: new-instance v1, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ +435a28: 1605 0000 |000a: const-wide/16 v5, #int 0 // #0 │ │ +435a2c: 7030 df60 5106 |000c: invoke-direct {v1, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60df │ │ +435a32: 5b01 e45f |000f: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe4 │ │ +435a36: 2201 e60b |0011: new-instance v1, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ +435a3a: 1605 0400 |0013: const-wide/16 v5, #int 4 // #4 │ │ +435a3e: 7140 7f5c 6543 |0015: invoke-static {v5, v6, v3, v4}, Ljava/lang/Math;.max:(JJ)J // method@5c7f │ │ +435a44: 0b02 |0018: move-result-wide v2 │ │ +435a46: 1604 e803 |0019: const-wide/16 v4, #int 1000 // #3e8 │ │ +435a4a: be24 |001b: div-long/2addr v4, v2 │ │ +435a4c: 7030 df60 4105 |001c: invoke-direct {v1, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60df │ │ +435a52: 5b01 e75f |001f: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe7 │ │ +435a56: 7010 3abe 0000 |0021: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderSimple;.prepareReader:()V // method@be3a │ │ +435a5c: 0e00 |0024: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=220 │ │ 0x0004 line=41 │ │ 0x0006 line=42 │ │ 0x0008 line=221 │ │ 0x0011 line=222 │ │ @@ -1190790,17 +1190789,17 @@ │ │ type : '(Lorg/purple/smoke/SteamReaderSimple;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -435a64: |[435a64] org.purple.smoke.SteamReaderSimple.access$000:(Lorg/purple/smoke/SteamReaderSimple;)V │ │ -435a74: 7010 3cbe 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderSimple;.rewind:()V // method@be3c │ │ -435a7a: 0e00 |0003: return-void │ │ +435a60: |[435a60] org.purple.smoke.SteamReaderSimple.access$000:(Lorg/purple/smoke/SteamReaderSimple;)V │ │ +435a70: 7010 3cbe 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderSimple;.rewind:()V // method@be3c │ │ +435a76: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=35 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/SteamReaderSimple; │ │ │ │ #2 : (in Lorg/purple/smoke/SteamReaderSimple;) │ │ @@ -1190808,17 +1190807,17 @@ │ │ type : '(Lorg/purple/smoke/SteamReaderSimple;J)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 4 16-bit code units │ │ -435a7c: |[435a7c] org.purple.smoke.SteamReaderSimple.access$100:(Lorg/purple/smoke/SteamReaderSimple;J)V │ │ -435a8c: 7030 38be 1002 |0000: invoke-direct {v0, v1, v2}, Lorg/purple/smoke/SteamReaderSimple;.computeRate:(J)V // method@be38 │ │ -435a92: 0e00 |0003: return-void │ │ +435a78: |[435a78] org.purple.smoke.SteamReaderSimple.access$100:(Lorg/purple/smoke/SteamReaderSimple;J)V │ │ +435a88: 7030 38be 1002 |0000: invoke-direct {v0, v1, v2}, Lorg/purple/smoke/SteamReaderSimple;.computeRate:(J)V // method@be38 │ │ +435a8e: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=35 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/SteamReaderSimple; │ │ 0x0000 - 0x0004 reg=1 (null) J │ │ │ │ @@ -1190827,49 +1190826,49 @@ │ │ type : '(J)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 7 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 67 16-bit code units │ │ -435a94: |[435a94] org.purple.smoke.SteamReaderSimple.computeRate:(J)V │ │ -435aa4: 7100 065d 0000 |0000: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -435aaa: 0b00 |0003: move-result-wide v0 │ │ -435aac: 5442 ea5f |0004: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fea │ │ -435ab0: 6e10 e160 0200 |0006: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -435ab6: 0b02 |0009: move-result-wide v2 │ │ -435ab8: bc20 |000a: sub-long/2addr v0, v2 │ │ -435aba: 7120 735c 1000 |000b: invoke-static {v0, v1}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ -435ac0: 0b00 |000e: move-result-wide v0 │ │ -435ac2: 1602 e803 |000f: const-wide/16 v2, #int 1000 // #3e8 │ │ -435ac6: be20 |0011: div-long/2addr v0, v2 │ │ -435ac8: 5442 e45f |0012: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe4 │ │ -435acc: 6e30 e260 5206 |0014: invoke-virtual {v2, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e2 │ │ -435ad2: 1605 0100 |0017: const-wide/16 v5, #int 1 // #1 │ │ -435ad6: 3102 0005 |0019: cmp-long v2, v0, v5 │ │ -435ada: 3a02 2700 |001b: if-ltz v2, 0042 // +0027 │ │ -435ade: 5445 e65f |001d: iget-object v5, v4, Lorg/purple/smoke/SteamReaderSimple;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe6 │ │ -435ae2: 5446 e45f |001f: iget-object v6, v4, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe4 │ │ -435ae6: 6e10 e160 0600 |0021: invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -435aec: 0b02 |0024: move-result-wide v2 │ │ -435aee: 8622 |0025: long-to-double v2, v2 │ │ -435af0: 8600 |0026: long-to-double v0, v0 │ │ -435af2: 7120 2c5c 3200 |0027: invoke-static {v2, v3}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ -435af8: 7120 2c5c 1000 |002a: invoke-static {v0, v1}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ -435afe: ce02 |002d: div-double/2addr v2, v0 │ │ -435b00: 8b20 |002e: double-to-long v0, v2 │ │ -435b02: 6e30 e360 0501 |002f: invoke-virtual {v5, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -435b08: 5445 e45f |0032: iget-object v5, v4, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe4 │ │ -435b0c: 1600 0000 |0034: const-wide/16 v0, #int 0 // #0 │ │ -435b10: 6e30 e360 0501 |0036: invoke-virtual {v5, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -435b16: 5445 ea5f |0039: iget-object v5, v4, Lorg/purple/smoke/SteamReaderSimple;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fea │ │ -435b1a: 7100 065d 0000 |003b: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -435b20: 0b00 |003e: move-result-wide v0 │ │ -435b22: 6e30 e360 0501 |003f: invoke-virtual {v5, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -435b28: 0e00 |0042: return-void │ │ +435a90: |[435a90] org.purple.smoke.SteamReaderSimple.computeRate:(J)V │ │ +435aa0: 7100 065d 0000 |0000: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +435aa6: 0b00 |0003: move-result-wide v0 │ │ +435aa8: 5442 ea5f |0004: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fea │ │ +435aac: 6e10 e160 0200 |0006: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +435ab2: 0b02 |0009: move-result-wide v2 │ │ +435ab4: bc20 |000a: sub-long/2addr v0, v2 │ │ +435ab6: 7120 735c 1000 |000b: invoke-static {v0, v1}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ +435abc: 0b00 |000e: move-result-wide v0 │ │ +435abe: 1602 e803 |000f: const-wide/16 v2, #int 1000 // #3e8 │ │ +435ac2: be20 |0011: div-long/2addr v0, v2 │ │ +435ac4: 5442 e45f |0012: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe4 │ │ +435ac8: 6e30 e260 5206 |0014: invoke-virtual {v2, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e2 │ │ +435ace: 1605 0100 |0017: const-wide/16 v5, #int 1 // #1 │ │ +435ad2: 3102 0005 |0019: cmp-long v2, v0, v5 │ │ +435ad6: 3a02 2700 |001b: if-ltz v2, 0042 // +0027 │ │ +435ada: 5445 e65f |001d: iget-object v5, v4, Lorg/purple/smoke/SteamReaderSimple;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe6 │ │ +435ade: 5446 e45f |001f: iget-object v6, v4, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe4 │ │ +435ae2: 6e10 e160 0600 |0021: invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +435ae8: 0b02 |0024: move-result-wide v2 │ │ +435aea: 8622 |0025: long-to-double v2, v2 │ │ +435aec: 8600 |0026: long-to-double v0, v0 │ │ +435aee: 7120 2c5c 3200 |0027: invoke-static {v2, v3}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ +435af4: 7120 2c5c 1000 |002a: invoke-static {v0, v1}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ +435afa: ce02 |002d: div-double/2addr v2, v0 │ │ +435afc: 8b20 |002e: double-to-long v0, v2 │ │ +435afe: 6e30 e360 0501 |002f: invoke-virtual {v5, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +435b04: 5445 e45f |0032: iget-object v5, v4, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe4 │ │ +435b08: 1600 0000 |0034: const-wide/16 v0, #int 0 // #0 │ │ +435b0c: 6e30 e360 0501 |0036: invoke-virtual {v5, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +435b12: 5445 ea5f |0039: iget-object v5, v4, Lorg/purple/smoke/SteamReaderSimple;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fea │ │ +435b16: 7100 065d 0000 |003b: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +435b1c: 0b00 |003e: move-result-wide v0 │ │ +435b1e: 6e30 e360 0501 |003f: invoke-virtual {v5, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +435b24: 0e00 |0042: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=48 │ │ 0x0012 line=50 │ │ 0x001d line=54 │ │ 0x0021 line=55 │ │ 0x0032 line=56 │ │ @@ -1190883,30 +1190882,30 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 31 16-bit code units │ │ -435b68: |[435b68] org.purple.smoke.SteamReaderSimple.prepareReader:()V │ │ -435b78: 5480 e95f |0000: iget-object v0, v8, Lorg/purple/smoke/SteamReaderSimple;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fe9 │ │ -435b7c: 3900 1c00 |0002: if-nez v0, 001e // +001c │ │ -435b80: 7100 c660 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c6 │ │ -435b86: 0c00 |0007: move-result-object v0 │ │ -435b88: 5b80 e95f |0008: iput-object v0, v8, Lorg/purple/smoke/SteamReaderSimple;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fe9 │ │ -435b8c: 5481 e95f |000a: iget-object v1, v8, Lorg/purple/smoke/SteamReaderSimple;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fe9 │ │ -435b90: 2202 301b |000c: new-instance v2, Lorg/purple/smoke/SteamReaderSimple$1; // type@1b30 │ │ -435b94: 7020 32be 8200 |000e: invoke-direct {v2, v8}, Lorg/purple/smoke/SteamReaderSimple$1;.:(Lorg/purple/smoke/SteamReaderSimple;)V // method@be32 │ │ -435b9a: 1603 dc05 |0011: const-wide/16 v3, #int 1500 // #5dc │ │ -435b9e: 5480 e75f |0013: iget-object v0, v8, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe7 │ │ -435ba2: 6e10 e160 0000 |0015: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -435ba8: 0b05 |0018: move-result-wide v5 │ │ -435baa: 6207 ef2c |0019: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -435bae: 7807 ce60 0100 |001b: invoke-interface/range {v1, v2, v3, v4, v5, v6, v7}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ -435bb4: 0e00 |001e: return-void │ │ +435b64: |[435b64] org.purple.smoke.SteamReaderSimple.prepareReader:()V │ │ +435b74: 5480 e95f |0000: iget-object v0, v8, Lorg/purple/smoke/SteamReaderSimple;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fe9 │ │ +435b78: 3900 1c00 |0002: if-nez v0, 001e // +001c │ │ +435b7c: 7100 c660 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c6 │ │ +435b82: 0c00 |0007: move-result-object v0 │ │ +435b84: 5b80 e95f |0008: iput-object v0, v8, Lorg/purple/smoke/SteamReaderSimple;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fe9 │ │ +435b88: 5481 e95f |000a: iget-object v1, v8, Lorg/purple/smoke/SteamReaderSimple;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fe9 │ │ +435b8c: 2202 301b |000c: new-instance v2, Lorg/purple/smoke/SteamReaderSimple$1; // type@1b30 │ │ +435b90: 7020 32be 8200 |000e: invoke-direct {v2, v8}, Lorg/purple/smoke/SteamReaderSimple$1;.:(Lorg/purple/smoke/SteamReaderSimple;)V // method@be32 │ │ +435b96: 1603 dc05 |0011: const-wide/16 v3, #int 1500 // #5dc │ │ +435b9a: 5480 e75f |0013: iget-object v0, v8, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe7 │ │ +435b9e: 6e10 e160 0000 |0015: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +435ba4: 0b05 |0018: move-result-wide v5 │ │ +435ba6: 6207 ef2c |0019: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +435baa: 7807 ce60 0100 |001b: invoke-interface/range {v1, v2, v3, v4, v5, v6, v7}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ +435bb0: 0e00 |001e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=63 │ │ 0x0004 line=65 │ │ 0x000a line=66 │ │ 0x0015 line=191 │ │ 0x001b line=66 │ │ @@ -1190918,37 +1190917,37 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 40 16-bit code units │ │ -435bb8: |[435bb8] org.purple.smoke.SteamReaderSimple.rewind:()V │ │ -435bc8: 5440 e15f |0000: iget-object v0, v4, Lorg/purple/smoke/SteamReaderSimple;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe1 │ │ -435bcc: 1201 |0002: const/4 v1, #int 0 // #0 │ │ -435bce: 6e20 da60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -435bd4: 1600 0000 |0006: const-wide/16 v0, #int 0 // #0 │ │ -435bd8: 5442 e35f |0008: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fe3 │ │ -435bdc: 1d02 |000a: monitor-enter v2 │ │ -435bde: 5443 e25f |000b: iget-object v3, v4, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe2 │ │ -435be2: 3803 0b00 |000d: if-eqz v3, 0018 // +000b │ │ -435be6: 5443 e25f |000f: iget-object v3, v4, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe2 │ │ -435bea: 6e10 a85b 0300 |0011: invoke-virtual {v3}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ -435bf0: 0c03 |0014: move-result-object v3 │ │ -435bf2: 6e30 cb5d 0301 |0015: invoke-virtual {v3, v0, v1}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcb │ │ -435bf8: 1e02 |0018: monitor-exit v2 │ │ -435bfa: 2804 |0019: goto 001d // +0004 │ │ -435bfc: 0d03 |001a: move-exception v3 │ │ -435bfe: 1e02 |001b: monitor-exit v2 │ │ -435c00: 2703 |001c: throw v3 │ │ -435c02: 5442 e45f |001d: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe4 │ │ -435c06: 6e30 e360 0201 |001f: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -435c0c: 5442 e85f |0022: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ -435c10: 6e30 e360 0201 |0024: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -435c16: 0e00 |0027: return-void │ │ +435bb4: |[435bb4] org.purple.smoke.SteamReaderSimple.rewind:()V │ │ +435bc4: 5440 e15f |0000: iget-object v0, v4, Lorg/purple/smoke/SteamReaderSimple;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe1 │ │ +435bc8: 1201 |0002: const/4 v1, #int 0 // #0 │ │ +435bca: 6e20 da60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +435bd0: 1600 0000 |0006: const-wide/16 v0, #int 0 // #0 │ │ +435bd4: 5442 e35f |0008: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fe3 │ │ +435bd8: 1d02 |000a: monitor-enter v2 │ │ +435bda: 5443 e25f |000b: iget-object v3, v4, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe2 │ │ +435bde: 3803 0b00 |000d: if-eqz v3, 0018 // +000b │ │ +435be2: 5443 e25f |000f: iget-object v3, v4, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe2 │ │ +435be6: 6e10 a85b 0300 |0011: invoke-virtual {v3}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ +435bec: 0c03 |0014: move-result-object v3 │ │ +435bee: 6e30 cb5d 0301 |0015: invoke-virtual {v3, v0, v1}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcb │ │ +435bf4: 1e02 |0018: monitor-exit v2 │ │ +435bf6: 2804 |0019: goto 001d // +0004 │ │ +435bf8: 0d03 |001a: move-exception v3 │ │ +435bfa: 1e02 |001b: monitor-exit v2 │ │ +435bfc: 2703 |001c: throw v3 │ │ +435bfe: 5442 e45f |001d: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe4 │ │ +435c02: 6e30 e360 0201 |001f: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +435c08: 5442 e85f |0022: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ +435c0c: 6e30 e360 0201 |0024: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +435c12: 0e00 |0027: return-void │ │ catches : 3 │ │ 0x0008 - 0x000b │ │ Ljava/lang/Exception; -> 0x001d │ │ 0x000b - 0x001c │ │ -> 0x001a │ │ 0x001c - 0x001d │ │ Ljava/lang/Exception; -> 0x001d │ │ @@ -1190969,25 +1190968,25 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 22 16-bit code units │ │ -435b2c: |[435b2c] org.purple.smoke.SteamReaderSimple.delete:()V │ │ -435b3c: 5430 e05f |0000: iget-object v0, v3, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe0 │ │ -435b40: 1211 |0002: const/4 v1, #int 1 // #1 │ │ -435b42: 6e20 da60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -435b48: 5430 e45f |0006: iget-object v0, v3, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe4 │ │ -435b4c: 1601 0000 |0008: const-wide/16 v1, #int 0 // #0 │ │ -435b50: 6e30 e360 1002 |000a: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -435b56: 5430 ea5f |000d: iget-object v0, v3, Lorg/purple/smoke/SteamReaderSimple;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fea │ │ -435b5a: 6e30 e360 1002 |000f: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -435b60: 6f10 18be 0300 |0012: invoke-super {v3}, Lorg/purple/smoke/SteamReader;.delete:()V // method@be18 │ │ -435b66: 0e00 |0015: return-void │ │ +435b28: |[435b28] org.purple.smoke.SteamReaderSimple.delete:()V │ │ +435b38: 5430 e05f |0000: iget-object v0, v3, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe0 │ │ +435b3c: 1211 |0002: const/4 v1, #int 1 // #1 │ │ +435b3e: 6e20 da60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +435b44: 5430 e45f |0006: iget-object v0, v3, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe4 │ │ +435b48: 1601 0000 |0008: const-wide/16 v1, #int 0 // #0 │ │ +435b4c: 6e30 e360 1002 |000a: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +435b52: 5430 ea5f |000d: iget-object v0, v3, Lorg/purple/smoke/SteamReaderSimple;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fea │ │ +435b56: 6e30 e360 1002 |000f: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +435b5c: 6f10 18be 0300 |0012: invoke-super {v3}, Lorg/purple/smoke/SteamReader;.delete:()V // method@be18 │ │ +435b62: 0e00 |0015: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=228 │ │ 0x0006 line=229 │ │ 0x000d line=230 │ │ 0x0012 line=231 │ │ locals : │ │ @@ -1190998,49 +1190997,49 @@ │ │ type : '(I)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 66 16-bit code units │ │ -435c38: |[435c38] org.purple.smoke.SteamReaderSimple.setReadInterval:(I)V │ │ -435c48: 8160 |0000: int-to-long v0, v6 │ │ -435c4a: 1602 e803 |0001: const-wide/16 v2, #int 1000 // #3e8 │ │ -435c4e: be02 |0003: div-long/2addr v2, v0 │ │ -435c50: 5450 e75f |0004: iget-object v0, v5, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe7 │ │ -435c54: 6e10 e160 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ -435c5a: 0b00 |0009: move-result-wide v0 │ │ -435c5c: 3104 0200 |000a: cmp-long v4, v2, v0 │ │ -435c60: 3904 0300 |000c: if-nez v4, 000f // +0003 │ │ -435c64: 0e00 |000e: return-void │ │ -435c66: 1240 |000f: const/4 v0, #int 4 // #4 │ │ -435c68: 3206 1a00 |0010: if-eq v6, v0, 002a // +001a │ │ -435c6c: 1300 0a00 |0012: const/16 v0, #int 10 // #a │ │ -435c70: 3206 1600 |0014: if-eq v6, v0, 002a // +0016 │ │ -435c74: 1300 1400 |0016: const/16 v0, #int 20 // #14 │ │ -435c78: 3206 1200 |0018: if-eq v6, v0, 002a // +0012 │ │ -435c7c: 1300 3200 |001a: const/16 v0, #int 50 // #32 │ │ -435c80: 3206 0e00 |001c: if-eq v6, v0, 002a // +000e │ │ -435c84: 1300 6400 |001e: const/16 v0, #int 100 // #64 │ │ -435c88: 3206 0a00 |0020: if-eq v6, v0, 002a // +000a │ │ -435c8c: 5456 e75f |0022: iget-object v6, v5, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe7 │ │ -435c90: 1600 fa00 |0024: const-wide/16 v0, #int 250 // #fa │ │ -435c94: 6e30 e360 0601 |0026: invoke-virtual {v6, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -435c9a: 2806 |0029: goto 002f // +0006 │ │ -435c9c: 5456 e75f |002a: iget-object v6, v5, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe7 │ │ -435ca0: 6e30 e360 2603 |002c: invoke-virtual {v6, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -435ca6: 5456 e05f |002f: iget-object v6, v5, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe0 │ │ -435caa: 1210 |0031: const/4 v0, #int 1 // #1 │ │ -435cac: 6e20 da60 0600 |0032: invoke-virtual {v6, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -435cb2: 6e10 37be 0500 |0035: invoke-virtual {v5}, Lorg/purple/smoke/SteamReaderSimple;.cancelReader:()V // method@be37 │ │ -435cb8: 5456 e05f |0038: iget-object v6, v5, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe0 │ │ -435cbc: 1200 |003a: const/4 v0, #int 0 // #0 │ │ -435cbe: 6e20 da60 0600 |003b: invoke-virtual {v6, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -435cc4: 7010 3abe 0500 |003e: invoke-direct {v5}, Lorg/purple/smoke/SteamReaderSimple;.prepareReader:()V // method@be3a │ │ -435cca: 0e00 |0041: return-void │ │ +435c34: |[435c34] org.purple.smoke.SteamReaderSimple.setReadInterval:(I)V │ │ +435c44: 8160 |0000: int-to-long v0, v6 │ │ +435c46: 1602 e803 |0001: const-wide/16 v2, #int 1000 // #3e8 │ │ +435c4a: be02 |0003: div-long/2addr v2, v0 │ │ +435c4c: 5450 e75f |0004: iget-object v0, v5, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe7 │ │ +435c50: 6e10 e160 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e1 │ │ +435c56: 0b00 |0009: move-result-wide v0 │ │ +435c58: 3104 0200 |000a: cmp-long v4, v2, v0 │ │ +435c5c: 3904 0300 |000c: if-nez v4, 000f // +0003 │ │ +435c60: 0e00 |000e: return-void │ │ +435c62: 1240 |000f: const/4 v0, #int 4 // #4 │ │ +435c64: 3206 1a00 |0010: if-eq v6, v0, 002a // +001a │ │ +435c68: 1300 0a00 |0012: const/16 v0, #int 10 // #a │ │ +435c6c: 3206 1600 |0014: if-eq v6, v0, 002a // +0016 │ │ +435c70: 1300 1400 |0016: const/16 v0, #int 20 // #14 │ │ +435c74: 3206 1200 |0018: if-eq v6, v0, 002a // +0012 │ │ +435c78: 1300 3200 |001a: const/16 v0, #int 50 // #32 │ │ +435c7c: 3206 0e00 |001c: if-eq v6, v0, 002a // +000e │ │ +435c80: 1300 6400 |001e: const/16 v0, #int 100 // #64 │ │ +435c84: 3206 0a00 |0020: if-eq v6, v0, 002a // +000a │ │ +435c88: 5456 e75f |0022: iget-object v6, v5, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe7 │ │ +435c8c: 1600 fa00 |0024: const-wide/16 v0, #int 250 // #fa │ │ +435c90: 6e30 e360 0601 |0026: invoke-virtual {v6, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +435c96: 2806 |0029: goto 002f // +0006 │ │ +435c98: 5456 e75f |002a: iget-object v6, v5, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe7 │ │ +435c9c: 6e30 e360 2603 |002c: invoke-virtual {v6, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +435ca2: 5456 e05f |002f: iget-object v6, v5, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe0 │ │ +435ca6: 1210 |0031: const/4 v0, #int 1 // #1 │ │ +435ca8: 6e20 da60 0600 |0032: invoke-virtual {v6, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +435cae: 6e10 37be 0500 |0035: invoke-virtual {v5}, Lorg/purple/smoke/SteamReaderSimple;.cancelReader:()V // method@be37 │ │ +435cb4: 5456 e05f |0038: iget-object v6, v5, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe0 │ │ +435cb8: 1200 |003a: const/4 v0, #int 0 // #0 │ │ +435cba: 6e20 da60 0600 |003b: invoke-virtual {v6, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +435cc0: 7010 3abe 0500 |003e: invoke-direct {v5}, Lorg/purple/smoke/SteamReaderSimple;.prepareReader:()V // method@be3a │ │ +435cc6: 0e00 |0041: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=236 │ │ 0x0022 line=249 │ │ 0x002a line=246 │ │ 0x002f line=253 │ │ 0x0035 line=254 │ │ @@ -1191100,71 +1191099,71 @@ │ │ type : '(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 19 │ │ ins : 10 │ │ outs : 8 │ │ insns size : 100 16-bit code units │ │ -437b4c: |[437b4c] org.purple.smoke.TcpNeighbor.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V │ │ -437b5c: 0798 |0000: move-object v8, v9 │ │ -437b5e: 1a05 0a4d |0001: const-string v5, "TCP" // string@4d0a │ │ -437b62: 0790 |0003: move-object v0, v9 │ │ -437b64: 07a1 |0004: move-object v1, v10 │ │ -437b66: 07e2 |0005: move-object v2, v14 │ │ -437b68: 07f3 |0006: move-object v3, v15 │ │ -437b6a: 0804 1000 |0007: move-object/from16 v4, v16 │ │ -437b6e: 0806 1100 |0009: move-object/from16 v6, v17 │ │ -437b72: 0207 1200 |000b: move/from16 v7, v18 │ │ -437b76: 7608 02bc 0000 |000d: invoke-direct/range {v0, v1, v2, v3, v4, v5, v6, v7}, Lorg/purple/smoke/Neighbor;.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V // method@bc02 │ │ -437b7c: 1200 |0010: const/4 v0, #int 0 // #0 │ │ -437b7e: 5b80 0960 |0011: iput-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6009 │ │ -437b82: 5b80 0e60 |0013: iput-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437b86: 1a01 0000 |0015: const-string v1, "" // string@0000 │ │ -437b8a: 5b81 0c60 |0017: iput-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyType:Ljava/lang/String; // field@600c │ │ -437b8e: 12f1 |0019: const/4 v1, #int -1 // #ff │ │ -437b90: 5981 0b60 |001a: iput v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600b │ │ -437b94: 07b2 |001c: move-object v2, v11 │ │ -437b96: 5b82 0a60 |001d: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@600a │ │ -437b9a: 7110 555c 0c00 |001f: invoke-static {v12}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@5c55 │ │ -437ba0: 0a02 |0022: move-result v2 │ │ -437ba2: 5982 0b60 |0023: iput v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600b │ │ -437ba6: 2803 |0025: goto 0028 // +0003 │ │ -437ba8: 5981 0b60 |0026: iput v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600b │ │ -437bac: 07d2 |0028: move-object v2, v13 │ │ -437bae: 5b82 0c60 |0029: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyType:Ljava/lang/String; // field@600c │ │ -437bb2: 5482 0a60 |002b: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@600a │ │ -437bb6: 6e10 c35c 0200 |002d: invoke-virtual {v2}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -437bbc: 0a02 |0030: move-result v2 │ │ -437bbe: 3902 1c00 |0031: if-nez v2, 004d // +001c │ │ -437bc2: 5282 0b60 |0033: iget v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600b │ │ -437bc6: 3212 1800 |0035: if-eq v2, v1, 004d // +0018 │ │ -437bca: 5481 0c60 |0037: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyType:Ljava/lang/String; // field@600c │ │ -437bce: 6e10 c35c 0100 |0039: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -437bd4: 0a01 |003c: move-result v1 │ │ -437bd6: 3901 1000 |003d: if-nez v1, 004d // +0010 │ │ -437bda: 2201 0d0b |003f: new-instance v1, Ljava/net/InetSocketAddress; // type@0b0d │ │ -437bde: 5482 0a60 |0041: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@600a │ │ -437be2: 5283 0b60 |0043: iget v3, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600b │ │ -437be6: 7030 8e5d 2103 |0045: invoke-direct {v1, v2, v3}, Ljava/net/InetSocketAddress;.:(Ljava/lang/String;I)V // method@5d8e │ │ -437bec: 5b81 0960 |0048: iput-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6009 │ │ -437bf0: 2803 |004a: goto 004d // +0003 │ │ -437bf2: 5b80 0960 |004b: iput-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6009 │ │ -437bf6: 5480 0d60 |004d: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600d │ │ -437bfa: 2201 351b |004f: new-instance v1, Lorg/purple/smoke/TcpNeighbor$1; // type@1b35 │ │ -437bfe: 7020 4cbe 9100 |0051: invoke-direct {v1, v9}, Lorg/purple/smoke/TcpNeighbor$1;.:(Lorg/purple/smoke/TcpNeighbor;)V // method@be4c │ │ -437c04: 1602 0000 |0054: const-wide/16 v2, #int 0 // #0 │ │ -437c08: 1604 6400 |0056: const-wide/16 v4, #int 100 // #64 │ │ -437c0c: 6206 ef2c |0058: sget-object v6, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -437c10: 070a |005a: move-object v10, v0 │ │ -437c12: 071b |005b: move-object v11, v1 │ │ -437c14: 042c |005c: move-wide v12, v2 │ │ -437c16: 044e |005d: move-wide v14, v4 │ │ -437c18: 0810 0600 |005e: move-object/from16 v16, v6 │ │ -437c1c: 7807 ce60 0a00 |0060: invoke-interface/range {v10, v11, v12, v13, v14, v15, v16}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ -437c22: 0e00 |0063: return-void │ │ +437b48: |[437b48] org.purple.smoke.TcpNeighbor.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V │ │ +437b58: 0798 |0000: move-object v8, v9 │ │ +437b5a: 1a05 0a4d |0001: const-string v5, "TCP" // string@4d0a │ │ +437b5e: 0790 |0003: move-object v0, v9 │ │ +437b60: 07a1 |0004: move-object v1, v10 │ │ +437b62: 07e2 |0005: move-object v2, v14 │ │ +437b64: 07f3 |0006: move-object v3, v15 │ │ +437b66: 0804 1000 |0007: move-object/from16 v4, v16 │ │ +437b6a: 0806 1100 |0009: move-object/from16 v6, v17 │ │ +437b6e: 0207 1200 |000b: move/from16 v7, v18 │ │ +437b72: 7608 02bc 0000 |000d: invoke-direct/range {v0, v1, v2, v3, v4, v5, v6, v7}, Lorg/purple/smoke/Neighbor;.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V // method@bc02 │ │ +437b78: 1200 |0010: const/4 v0, #int 0 // #0 │ │ +437b7a: 5b80 0960 |0011: iput-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6009 │ │ +437b7e: 5b80 0e60 |0013: iput-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437b82: 1a01 0000 |0015: const-string v1, "" // string@0000 │ │ +437b86: 5b81 0c60 |0017: iput-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyType:Ljava/lang/String; // field@600c │ │ +437b8a: 12f1 |0019: const/4 v1, #int -1 // #ff │ │ +437b8c: 5981 0b60 |001a: iput v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600b │ │ +437b90: 07b2 |001c: move-object v2, v11 │ │ +437b92: 5b82 0a60 |001d: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@600a │ │ +437b96: 7110 555c 0c00 |001f: invoke-static {v12}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@5c55 │ │ +437b9c: 0a02 |0022: move-result v2 │ │ +437b9e: 5982 0b60 |0023: iput v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600b │ │ +437ba2: 2803 |0025: goto 0028 // +0003 │ │ +437ba4: 5981 0b60 |0026: iput v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600b │ │ +437ba8: 07d2 |0028: move-object v2, v13 │ │ +437baa: 5b82 0c60 |0029: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyType:Ljava/lang/String; // field@600c │ │ +437bae: 5482 0a60 |002b: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@600a │ │ +437bb2: 6e10 c35c 0200 |002d: invoke-virtual {v2}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +437bb8: 0a02 |0030: move-result v2 │ │ +437bba: 3902 1c00 |0031: if-nez v2, 004d // +001c │ │ +437bbe: 5282 0b60 |0033: iget v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600b │ │ +437bc2: 3212 1800 |0035: if-eq v2, v1, 004d // +0018 │ │ +437bc6: 5481 0c60 |0037: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyType:Ljava/lang/String; // field@600c │ │ +437bca: 6e10 c35c 0100 |0039: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +437bd0: 0a01 |003c: move-result v1 │ │ +437bd2: 3901 1000 |003d: if-nez v1, 004d // +0010 │ │ +437bd6: 2201 0d0b |003f: new-instance v1, Ljava/net/InetSocketAddress; // type@0b0d │ │ +437bda: 5482 0a60 |0041: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@600a │ │ +437bde: 5283 0b60 |0043: iget v3, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600b │ │ +437be2: 7030 8e5d 2103 |0045: invoke-direct {v1, v2, v3}, Ljava/net/InetSocketAddress;.:(Ljava/lang/String;I)V // method@5d8e │ │ +437be8: 5b81 0960 |0048: iput-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6009 │ │ +437bec: 2803 |004a: goto 004d // +0003 │ │ +437bee: 5b80 0960 |004b: iput-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6009 │ │ +437bf2: 5480 0d60 |004d: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600d │ │ +437bf6: 2201 351b |004f: new-instance v1, Lorg/purple/smoke/TcpNeighbor$1; // type@1b35 │ │ +437bfa: 7020 4cbe 9100 |0051: invoke-direct {v1, v9}, Lorg/purple/smoke/TcpNeighbor$1;.:(Lorg/purple/smoke/TcpNeighbor;)V // method@be4c │ │ +437c00: 1602 0000 |0054: const-wide/16 v2, #int 0 // #0 │ │ +437c04: 1604 6400 |0056: const-wide/16 v4, #int 100 // #64 │ │ +437c08: 6206 ef2c |0058: sget-object v6, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +437c0c: 070a |005a: move-object v10, v0 │ │ +437c0e: 071b |005b: move-object v11, v1 │ │ +437c10: 042c |005c: move-wide v12, v2 │ │ +437c12: 044e |005d: move-wide v14, v4 │ │ +437c14: 0810 0600 |005e: move-object/from16 v16, v6 │ │ +437c18: 7807 ce60 0a00 |0060: invoke-interface/range {v10, v11, v12, v13, v14, v15, v16}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ +437c1e: 0e00 |0063: return-void │ │ catches : 2 │ │ 0x001f - 0x0025 │ │ Ljava/lang/Exception; -> 0x0026 │ │ 0x003f - 0x004a │ │ Ljava/lang/Exception; -> 0x004b │ │ positions : │ │ 0x000d line=259 │ │ @@ -1191198,17 +1191197,17 @@ │ │ type : '(Lorg/purple/smoke/TcpNeighbor;)Ljava/net/Socket;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -437b34: |[437b34] org.purple.smoke.TcpNeighbor.access$000:(Lorg/purple/smoke/TcpNeighbor;)Ljava/net/Socket; │ │ -437b44: 5400 0e60 |0000: iget-object v0, v0, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437b48: 1100 |0002: return-object v0 │ │ +437b30: |[437b30] org.purple.smoke.TcpNeighbor.access$000:(Lorg/purple/smoke/TcpNeighbor;)Ljava/net/Socket; │ │ +437b40: 5400 0e60 |0000: iget-object v0, v0, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437b44: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=35 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/TcpNeighbor; │ │ │ │ Virtual methods - │ │ @@ -1191217,36 +1191216,36 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 38 16-bit code units │ │ -437c40: |[437c40] org.purple.smoke.TcpNeighbor.abort:()V │ │ -437c50: 6e10 53be 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be53 │ │ -437c56: 6f10 03bc 0500 |0003: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.abort:()V // method@bc03 │ │ -437c5c: 5450 0d60 |0006: iget-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600d │ │ -437c60: 1d00 |0008: monitor-enter v0 │ │ -437c62: 5451 0d60 |0009: iget-object v1, v5, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600d │ │ -437c66: 7210 cf60 0100 |000b: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60cf │ │ -437c6c: 2803 |000e: goto 0011 // +0003 │ │ -437c6e: 0d01 |000f: move-exception v1 │ │ -437c70: 2814 |0010: goto 0024 // +0014 │ │ -437c72: 5451 0d60 |0011: iget-object v1, v5, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600d │ │ -437c76: 1602 0500 |0013: const-wide/16 v2, #int 5 // #5 │ │ -437c7a: 6204 f22c |0015: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ -437c7e: 7240 cc60 2143 |0017: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60cc │ │ -437c84: 0a01 |001a: move-result v1 │ │ -437c86: 3901 0700 |001b: if-nez v1, 0022 // +0007 │ │ -437c8a: 5451 0d60 |001d: iget-object v1, v5, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600d │ │ -437c8e: 7210 d060 0100 |001f: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d0 │ │ -437c94: 1e00 |0022: monitor-exit v0 │ │ -437c96: 0e00 |0023: return-void │ │ -437c98: 1e00 |0024: monitor-exit v0 │ │ -437c9a: 2701 |0025: throw v1 │ │ +437c3c: |[437c3c] org.purple.smoke.TcpNeighbor.abort:()V │ │ +437c4c: 6e10 53be 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be53 │ │ +437c52: 6f10 03bc 0500 |0003: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.abort:()V // method@bc03 │ │ +437c58: 5450 0d60 |0006: iget-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600d │ │ +437c5c: 1d00 |0008: monitor-enter v0 │ │ +437c5e: 5451 0d60 |0009: iget-object v1, v5, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600d │ │ +437c62: 7210 cf60 0100 |000b: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60cf │ │ +437c68: 2803 |000e: goto 0011 // +0003 │ │ +437c6a: 0d01 |000f: move-exception v1 │ │ +437c6c: 2814 |0010: goto 0024 // +0014 │ │ +437c6e: 5451 0d60 |0011: iget-object v1, v5, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600d │ │ +437c72: 1602 0500 |0013: const-wide/16 v2, #int 5 // #5 │ │ +437c76: 6204 f22c |0015: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ +437c7a: 7240 cc60 2143 |0017: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60cc │ │ +437c80: 0a01 |001a: move-result v1 │ │ +437c82: 3901 0700 |001b: if-nez v1, 0022 // +0007 │ │ +437c86: 5451 0d60 |001d: iget-object v1, v5, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600d │ │ +437c8a: 7210 d060 0100 |001f: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d0 │ │ +437c90: 1e00 |0022: monitor-exit v0 │ │ +437c92: 0e00 |0023: return-void │ │ +437c94: 1e00 |0024: monitor-exit v0 │ │ +437c96: 2701 |0025: throw v1 │ │ catches : 3 │ │ 0x0009 - 0x000e │ │ Ljava/lang/Exception; -> 0x0011 │ │ -> 0x000f │ │ 0x0011 - 0x0022 │ │ Ljava/lang/Exception; -> 0x0022 │ │ -> 0x000f │ │ @@ -1191269,140 +1191268,140 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 270 16-bit code units │ │ -437cc4: |[437cc4] org.purple.smoke.TcpNeighbor.connect:()V │ │ -437cd4: 6e10 52be 0800 |0000: invoke-virtual {v8}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be52 │ │ -437cda: 0a00 |0003: move-result v0 │ │ -437cdc: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -437ce0: 0e00 |0006: return-void │ │ -437ce2: 6e10 57be 0800 |0007: invoke-virtual {v8}, Lorg/purple/smoke/TcpNeighbor;.isNetworkConnected:()Z // method@be57 │ │ -437ce8: 0a00 |000a: move-result v0 │ │ -437cea: 3900 0800 |000b: if-nez v0, 0013 // +0008 │ │ -437cee: 1a00 0909 |000d: const-string v0, "A network is not available." // string@0909 │ │ -437cf2: 6e20 5dbe 0800 |000f: invoke-virtual {v8, v0}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be5d │ │ -437cf8: 0e00 |0012: return-void │ │ -437cfa: 5480 fe5f |0013: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@5ffe │ │ -437cfe: 1601 0000 |0015: const-wide/16 v1, #int 0 // #0 │ │ -437d02: 6e30 e360 1002 |0017: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -437d08: 5480 ff5f |001a: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@5fff │ │ -437d0c: 6e30 e360 1002 |001c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -437d12: 5480 0160 |001f: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6001 │ │ -437d16: 1201 |0021: const/4 v1, #int 0 // #0 │ │ -437d18: 6e20 da60 1000 |0022: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -437d1e: 5480 0460 |0025: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6004 │ │ -437d22: 7100 065d 0000 |0027: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -437d28: 0b02 |002a: move-result-wide v2 │ │ -437d2a: 6e30 e360 2003 |002b: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -437d30: 5480 0560 |002e: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6005 │ │ -437d34: 7100 0b5d 0000 |0030: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -437d3a: 0b02 |0033: move-result-wide v2 │ │ -437d3c: 6e30 e360 2003 |0034: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -437d42: 2200 0d0b |0037: new-instance v0, Ljava/net/InetSocketAddress; // type@0b0d │ │ -437d46: 5482 0260 |0039: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_ipAddress:Ljava/lang/String; // field@6002 │ │ -437d4a: 5483 0360 |003b: iget-object v3, v8, Lorg/purple/smoke/TcpNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@6003 │ │ -437d4e: 6e10 dc60 0300 |003d: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -437d54: 0a03 |0040: move-result v3 │ │ -437d56: 7030 8e5d 2003 |0041: invoke-direct {v0, v2, v3}, Ljava/net/InetSocketAddress;.:(Ljava/lang/String;I)V // method@5d8e │ │ -437d5c: 5482 0960 |0044: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6009 │ │ -437d60: 1303 1027 |0046: const/16 v3, #int 10000 // #2710 │ │ -437d64: 1504 0100 |0048: const/high16 v4, #int 65536 // #1 │ │ -437d68: 3902 1700 |004a: if-nez v2, 0061 // +0017 │ │ -437d6c: 2202 120b |004c: new-instance v2, Ljava/net/Socket; // type@0b12 │ │ -437d70: 7010 9e5d 0200 |004e: invoke-direct {v2}, Ljava/net/Socket;.:()V // method@5d9e │ │ -437d76: 5b82 0e60 |0051: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437d7a: 6e20 aa5d 4200 |0053: invoke-virtual {v2, v4}, Ljava/net/Socket;.setReceiveBufferSize:(I)V // method@5daa │ │ -437d80: 5482 0e60 |0056: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437d84: 6e20 ab5d 4200 |0058: invoke-virtual {v2, v4}, Ljava/net/Socket;.setSendBufferSize:(I)V // method@5dab │ │ -437d8a: 5482 0e60 |005b: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437d8e: 6e30 a25d 0203 |005d: invoke-virtual {v2, v0, v3}, Ljava/net/Socket;.connect:(Ljava/net/SocketAddress;I)V // method@5da2 │ │ -437d94: 283b |0060: goto 009b // +003b │ │ -437d96: 5482 0c60 |0061: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyType:Ljava/lang/String; // field@600c │ │ -437d9a: 1a05 751c |0063: const-string v5, "HTTP" // string@1c75 │ │ -437d9e: 6e20 b85c 5200 |0065: invoke-virtual {v2, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -437da4: 0a02 |0068: move-result v2 │ │ -437da6: 3802 1300 |0069: if-eqz v2, 007c // +0013 │ │ -437daa: 2202 120b |006b: new-instance v2, Ljava/net/Socket; // type@0b12 │ │ -437dae: 2205 110b |006d: new-instance v5, Ljava/net/Proxy; // type@0b11 │ │ -437db2: 6206 e12c |006f: sget-object v6, Ljava/net/Proxy$Type;.HTTP:Ljava/net/Proxy$Type; // field@2ce1 │ │ -437db6: 5487 0960 |0071: iget-object v7, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6009 │ │ -437dba: 7030 9d5d 6507 |0073: invoke-direct {v5, v6, v7}, Ljava/net/Proxy;.:(Ljava/net/Proxy$Type;Ljava/net/SocketAddress;)V // method@5d9d │ │ -437dc0: 7020 9f5d 5200 |0076: invoke-direct {v2, v5}, Ljava/net/Socket;.:(Ljava/net/Proxy;)V // method@5d9f │ │ -437dc6: 5b82 0e60 |0079: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437dca: 2811 |007b: goto 008c // +0011 │ │ -437dcc: 2202 120b |007c: new-instance v2, Ljava/net/Socket; // type@0b12 │ │ -437dd0: 2205 110b |007e: new-instance v5, Ljava/net/Proxy; // type@0b11 │ │ -437dd4: 6206 e22c |0080: sget-object v6, Ljava/net/Proxy$Type;.SOCKS:Ljava/net/Proxy$Type; // field@2ce2 │ │ -437dd8: 5487 0960 |0082: iget-object v7, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6009 │ │ -437ddc: 7030 9d5d 6507 |0084: invoke-direct {v5, v6, v7}, Ljava/net/Proxy;.:(Ljava/net/Proxy$Type;Ljava/net/SocketAddress;)V // method@5d9d │ │ -437de2: 7020 9f5d 5200 |0087: invoke-direct {v2, v5}, Ljava/net/Socket;.:(Ljava/net/Proxy;)V // method@5d9f │ │ -437de8: 5b82 0e60 |008a: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437dec: 5482 0e60 |008c: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437df0: 6e20 aa5d 4200 |008e: invoke-virtual {v2, v4}, Ljava/net/Socket;.setReceiveBufferSize:(I)V // method@5daa │ │ -437df6: 5482 0e60 |0091: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437dfa: 6e20 ab5d 4200 |0093: invoke-virtual {v2, v4}, Ljava/net/Socket;.setSendBufferSize:(I)V // method@5dab │ │ -437e00: 5482 0e60 |0096: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437e04: 6e30 a25d 0203 |0098: invoke-virtual {v2, v0, v3}, Ljava/net/Socket;.connect:(Ljava/net/SocketAddress;I)V // method@5da2 │ │ -437e0a: 5480 0e60 |009b: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437e0e: 1212 |009d: const/4 v2, #int 1 // #1 │ │ -437e10: 6e30 ac5d 2001 |009e: invoke-virtual {v0, v2, v1}, Ljava/net/Socket;.setSoLinger:(ZI)V // method@5dac │ │ -437e16: 5480 0e60 |00a1: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437e1a: 6e20 ad5d 3000 |00a3: invoke-virtual {v0, v3}, Ljava/net/Socket;.setSoTimeout:(I)V // method@5dad │ │ -437e20: 5480 0e60 |00a6: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437e24: 6e20 ae5d 2000 |00a8: invoke-virtual {v0, v2}, Ljava/net/Socket;.setTcpNoDelay:(Z)V // method@5dae │ │ -437e2a: 5480 0f60 |00ab: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@600f │ │ -437e2e: 7100 0b5d 0000 |00ad: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -437e34: 0b01 |00b0: move-result-wide v1 │ │ -437e36: 6e30 e360 1002 |00b1: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -437e3c: 1a00 0000 |00b4: const-string v0, "" // string@0000 │ │ -437e40: 6e20 5dbe 0800 |00b6: invoke-virtual {v8, v0}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be5d │ │ -437e46: 5480 0860 |00b9: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_passthrough:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6008 │ │ -437e4a: 6e10 d860 0000 |00bb: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -437e50: 0a00 |00be: move-result v0 │ │ -437e52: 3900 0f00 |00bf: if-nez v0, 00ce // +000f │ │ -437e56: 7100 0bbb 0000 |00c1: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -437e5c: 0c00 |00c4: move-result-object v0 │ │ -437e5e: 5481 0060 |00c5: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@6000 │ │ -437e62: 6e10 bdb9 0100 |00c7: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.sipHashId:()Ljava/lang/String; // method@b9bd │ │ -437e68: 0c01 |00ca: move-result-object v1 │ │ -437e6a: 6e20 1bbb 1000 |00cb: invoke-virtual {v0, v1}, Lorg/purple/smoke/Kernel;.retrieveChatMessages:(Ljava/lang/String;)V // method@bb1b │ │ -437e70: 1a00 fd91 |00ce: const-string v0, "org.purple.smoke.neighbor_connected" // string@91fd │ │ -437e74: 7110 f2bb 0000 |00d0: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf2 │ │ -437e7a: 5480 0660 |00d3: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_mutex:Ljava/lang/Object; // field@6006 │ │ -437e7e: 1d00 |00d5: monitor-enter v0 │ │ -437e80: 5481 0660 |00d6: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_mutex:Ljava/lang/Object; // field@6006 │ │ -437e84: 6e10 955c 0100 |00d8: invoke-virtual {v1}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ -437e8a: 1e00 |00db: monitor-exit v0 │ │ -437e8c: 2831 |00dc: goto 010d // +0031 │ │ -437e8e: 0d01 |00dd: move-exception v1 │ │ -437e90: 1e00 |00de: monitor-exit v0 │ │ -437e92: 2701 |00df: throw v1 │ │ -437e94: 0d00 |00e0: move-exception v0 │ │ -437e96: 2201 f10a |00e1: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -437e9a: 7010 ee5c 0100 |00e3: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -437ea0: 1a02 6a0d |00e6: const-string v2, "An error (" // string@0d6a │ │ -437ea4: 6e20 f95c 2100 |00e8: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -437eaa: 6e10 375c 0000 |00eb: invoke-virtual {v0}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ -437eb0: 0c00 |00ee: move-result-object v0 │ │ -437eb2: 6e20 f95c 0100 |00ef: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -437eb8: 1a00 fe03 |00f2: const-string v0, ") occurred while attempting a connection (" // string@03fe │ │ -437ebc: 6e20 f95c 0100 |00f4: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -437ec2: 7100 0b5d 0000 |00f7: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -437ec8: 0b02 |00fa: move-result-wide v2 │ │ -437eca: 6e30 f55c 2103 |00fb: invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@5cf5 │ │ -437ed0: 1a00 0c04 |00fe: const-string v0, ")." // string@040c │ │ -437ed4: 6e20 f95c 0100 |0100: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -437eda: 6e10 035d 0100 |0103: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -437ee0: 0c00 |0106: move-result-object v0 │ │ -437ee2: 6e20 5dbe 0800 |0107: invoke-virtual {v8, v0}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be5d │ │ -437ee8: 6e10 53be 0800 |010a: invoke-virtual {v8}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be53 │ │ -437eee: 0e00 |010d: return-void │ │ +437cc0: |[437cc0] org.purple.smoke.TcpNeighbor.connect:()V │ │ +437cd0: 6e10 52be 0800 |0000: invoke-virtual {v8}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be52 │ │ +437cd6: 0a00 |0003: move-result v0 │ │ +437cd8: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +437cdc: 0e00 |0006: return-void │ │ +437cde: 6e10 57be 0800 |0007: invoke-virtual {v8}, Lorg/purple/smoke/TcpNeighbor;.isNetworkConnected:()Z // method@be57 │ │ +437ce4: 0a00 |000a: move-result v0 │ │ +437ce6: 3900 0800 |000b: if-nez v0, 0013 // +0008 │ │ +437cea: 1a00 0909 |000d: const-string v0, "A network is not available." // string@0909 │ │ +437cee: 6e20 5dbe 0800 |000f: invoke-virtual {v8, v0}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be5d │ │ +437cf4: 0e00 |0012: return-void │ │ +437cf6: 5480 fe5f |0013: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@5ffe │ │ +437cfa: 1601 0000 |0015: const-wide/16 v1, #int 0 // #0 │ │ +437cfe: 6e30 e360 1002 |0017: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +437d04: 5480 ff5f |001a: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@5fff │ │ +437d08: 6e30 e360 1002 |001c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +437d0e: 5480 0160 |001f: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6001 │ │ +437d12: 1201 |0021: const/4 v1, #int 0 // #0 │ │ +437d14: 6e20 da60 1000 |0022: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +437d1a: 5480 0460 |0025: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6004 │ │ +437d1e: 7100 065d 0000 |0027: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +437d24: 0b02 |002a: move-result-wide v2 │ │ +437d26: 6e30 e360 2003 |002b: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +437d2c: 5480 0560 |002e: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6005 │ │ +437d30: 7100 0b5d 0000 |0030: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +437d36: 0b02 |0033: move-result-wide v2 │ │ +437d38: 6e30 e360 2003 |0034: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +437d3e: 2200 0d0b |0037: new-instance v0, Ljava/net/InetSocketAddress; // type@0b0d │ │ +437d42: 5482 0260 |0039: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_ipAddress:Ljava/lang/String; // field@6002 │ │ +437d46: 5483 0360 |003b: iget-object v3, v8, Lorg/purple/smoke/TcpNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@6003 │ │ +437d4a: 6e10 dc60 0300 |003d: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +437d50: 0a03 |0040: move-result v3 │ │ +437d52: 7030 8e5d 2003 |0041: invoke-direct {v0, v2, v3}, Ljava/net/InetSocketAddress;.:(Ljava/lang/String;I)V // method@5d8e │ │ +437d58: 5482 0960 |0044: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6009 │ │ +437d5c: 1303 1027 |0046: const/16 v3, #int 10000 // #2710 │ │ +437d60: 1504 0100 |0048: const/high16 v4, #int 65536 // #1 │ │ +437d64: 3902 1700 |004a: if-nez v2, 0061 // +0017 │ │ +437d68: 2202 120b |004c: new-instance v2, Ljava/net/Socket; // type@0b12 │ │ +437d6c: 7010 9e5d 0200 |004e: invoke-direct {v2}, Ljava/net/Socket;.:()V // method@5d9e │ │ +437d72: 5b82 0e60 |0051: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437d76: 6e20 aa5d 4200 |0053: invoke-virtual {v2, v4}, Ljava/net/Socket;.setReceiveBufferSize:(I)V // method@5daa │ │ +437d7c: 5482 0e60 |0056: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437d80: 6e20 ab5d 4200 |0058: invoke-virtual {v2, v4}, Ljava/net/Socket;.setSendBufferSize:(I)V // method@5dab │ │ +437d86: 5482 0e60 |005b: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437d8a: 6e30 a25d 0203 |005d: invoke-virtual {v2, v0, v3}, Ljava/net/Socket;.connect:(Ljava/net/SocketAddress;I)V // method@5da2 │ │ +437d90: 283b |0060: goto 009b // +003b │ │ +437d92: 5482 0c60 |0061: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyType:Ljava/lang/String; // field@600c │ │ +437d96: 1a05 751c |0063: const-string v5, "HTTP" // string@1c75 │ │ +437d9a: 6e20 b85c 5200 |0065: invoke-virtual {v2, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +437da0: 0a02 |0068: move-result v2 │ │ +437da2: 3802 1300 |0069: if-eqz v2, 007c // +0013 │ │ +437da6: 2202 120b |006b: new-instance v2, Ljava/net/Socket; // type@0b12 │ │ +437daa: 2205 110b |006d: new-instance v5, Ljava/net/Proxy; // type@0b11 │ │ +437dae: 6206 e12c |006f: sget-object v6, Ljava/net/Proxy$Type;.HTTP:Ljava/net/Proxy$Type; // field@2ce1 │ │ +437db2: 5487 0960 |0071: iget-object v7, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6009 │ │ +437db6: 7030 9d5d 6507 |0073: invoke-direct {v5, v6, v7}, Ljava/net/Proxy;.:(Ljava/net/Proxy$Type;Ljava/net/SocketAddress;)V // method@5d9d │ │ +437dbc: 7020 9f5d 5200 |0076: invoke-direct {v2, v5}, Ljava/net/Socket;.:(Ljava/net/Proxy;)V // method@5d9f │ │ +437dc2: 5b82 0e60 |0079: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437dc6: 2811 |007b: goto 008c // +0011 │ │ +437dc8: 2202 120b |007c: new-instance v2, Ljava/net/Socket; // type@0b12 │ │ +437dcc: 2205 110b |007e: new-instance v5, Ljava/net/Proxy; // type@0b11 │ │ +437dd0: 6206 e22c |0080: sget-object v6, Ljava/net/Proxy$Type;.SOCKS:Ljava/net/Proxy$Type; // field@2ce2 │ │ +437dd4: 5487 0960 |0082: iget-object v7, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6009 │ │ +437dd8: 7030 9d5d 6507 |0084: invoke-direct {v5, v6, v7}, Ljava/net/Proxy;.:(Ljava/net/Proxy$Type;Ljava/net/SocketAddress;)V // method@5d9d │ │ +437dde: 7020 9f5d 5200 |0087: invoke-direct {v2, v5}, Ljava/net/Socket;.:(Ljava/net/Proxy;)V // method@5d9f │ │ +437de4: 5b82 0e60 |008a: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437de8: 5482 0e60 |008c: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437dec: 6e20 aa5d 4200 |008e: invoke-virtual {v2, v4}, Ljava/net/Socket;.setReceiveBufferSize:(I)V // method@5daa │ │ +437df2: 5482 0e60 |0091: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437df6: 6e20 ab5d 4200 |0093: invoke-virtual {v2, v4}, Ljava/net/Socket;.setSendBufferSize:(I)V // method@5dab │ │ +437dfc: 5482 0e60 |0096: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437e00: 6e30 a25d 0203 |0098: invoke-virtual {v2, v0, v3}, Ljava/net/Socket;.connect:(Ljava/net/SocketAddress;I)V // method@5da2 │ │ +437e06: 5480 0e60 |009b: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437e0a: 1212 |009d: const/4 v2, #int 1 // #1 │ │ +437e0c: 6e30 ac5d 2001 |009e: invoke-virtual {v0, v2, v1}, Ljava/net/Socket;.setSoLinger:(ZI)V // method@5dac │ │ +437e12: 5480 0e60 |00a1: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437e16: 6e20 ad5d 3000 |00a3: invoke-virtual {v0, v3}, Ljava/net/Socket;.setSoTimeout:(I)V // method@5dad │ │ +437e1c: 5480 0e60 |00a6: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437e20: 6e20 ae5d 2000 |00a8: invoke-virtual {v0, v2}, Ljava/net/Socket;.setTcpNoDelay:(Z)V // method@5dae │ │ +437e26: 5480 0f60 |00ab: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@600f │ │ +437e2a: 7100 0b5d 0000 |00ad: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +437e30: 0b01 |00b0: move-result-wide v1 │ │ +437e32: 6e30 e360 1002 |00b1: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +437e38: 1a00 0000 |00b4: const-string v0, "" // string@0000 │ │ +437e3c: 6e20 5dbe 0800 |00b6: invoke-virtual {v8, v0}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be5d │ │ +437e42: 5480 0860 |00b9: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_passthrough:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6008 │ │ +437e46: 6e10 d860 0000 |00bb: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +437e4c: 0a00 |00be: move-result v0 │ │ +437e4e: 3900 0f00 |00bf: if-nez v0, 00ce // +000f │ │ +437e52: 7100 0bbb 0000 |00c1: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +437e58: 0c00 |00c4: move-result-object v0 │ │ +437e5a: 5481 0060 |00c5: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@6000 │ │ +437e5e: 6e10 bdb9 0100 |00c7: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.sipHashId:()Ljava/lang/String; // method@b9bd │ │ +437e64: 0c01 |00ca: move-result-object v1 │ │ +437e66: 6e20 1bbb 1000 |00cb: invoke-virtual {v0, v1}, Lorg/purple/smoke/Kernel;.retrieveChatMessages:(Ljava/lang/String;)V // method@bb1b │ │ +437e6c: 1a00 fd91 |00ce: const-string v0, "org.purple.smoke.neighbor_connected" // string@91fd │ │ +437e70: 7110 f2bb 0000 |00d0: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf2 │ │ +437e76: 5480 0660 |00d3: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_mutex:Ljava/lang/Object; // field@6006 │ │ +437e7a: 1d00 |00d5: monitor-enter v0 │ │ +437e7c: 5481 0660 |00d6: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_mutex:Ljava/lang/Object; // field@6006 │ │ +437e80: 6e10 955c 0100 |00d8: invoke-virtual {v1}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ +437e86: 1e00 |00db: monitor-exit v0 │ │ +437e88: 2831 |00dc: goto 010d // +0031 │ │ +437e8a: 0d01 |00dd: move-exception v1 │ │ +437e8c: 1e00 |00de: monitor-exit v0 │ │ +437e8e: 2701 |00df: throw v1 │ │ +437e90: 0d00 |00e0: move-exception v0 │ │ +437e92: 2201 f10a |00e1: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +437e96: 7010 ee5c 0100 |00e3: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +437e9c: 1a02 6a0d |00e6: const-string v2, "An error (" // string@0d6a │ │ +437ea0: 6e20 f95c 2100 |00e8: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +437ea6: 6e10 375c 0000 |00eb: invoke-virtual {v0}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ +437eac: 0c00 |00ee: move-result-object v0 │ │ +437eae: 6e20 f95c 0100 |00ef: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +437eb4: 1a00 fe03 |00f2: const-string v0, ") occurred while attempting a connection (" // string@03fe │ │ +437eb8: 6e20 f95c 0100 |00f4: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +437ebe: 7100 0b5d 0000 |00f7: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +437ec4: 0b02 |00fa: move-result-wide v2 │ │ +437ec6: 6e30 f55c 2103 |00fb: invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@5cf5 │ │ +437ecc: 1a00 0c04 |00fe: const-string v0, ")." // string@040c │ │ +437ed0: 6e20 f95c 0100 |0100: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +437ed6: 6e10 035d 0100 |0103: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +437edc: 0c00 |0106: move-result-object v0 │ │ +437ede: 6e20 5dbe 0800 |0107: invoke-virtual {v8, v0}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be5d │ │ +437ee4: 6e10 53be 0800 |010a: invoke-virtual {v8}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be53 │ │ +437eea: 0e00 |010d: return-void │ │ catches : 3 │ │ 0x0013 - 0x00d6 │ │ Ljava/lang/Exception; -> 0x00e0 │ │ 0x00d6 - 0x00df │ │ -> 0x00dd │ │ 0x00df - 0x00e0 │ │ Ljava/lang/Exception; -> 0x00e0 │ │ @@ -1191453,26 +1191452,26 @@ │ │ type : '()Z' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 19 16-bit code units │ │ -437870: |[437870] org.purple.smoke.TcpNeighbor.connected:()Z │ │ -437880: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -437882: 6e10 57be 0200 |0001: invoke-virtual {v2}, Lorg/purple/smoke/TcpNeighbor;.isNetworkConnected:()Z // method@be57 │ │ -437888: 0a01 |0004: move-result v1 │ │ -43788a: 3801 0d00 |0005: if-eqz v1, 0012 // +000d │ │ -43788e: 5421 0e60 |0007: iget-object v1, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437892: 3801 0900 |0009: if-eqz v1, 0012 // +0009 │ │ -437896: 6e10 a95d 0100 |000b: invoke-virtual {v1}, Ljava/net/Socket;.isClosed:()Z // method@5da9 │ │ -43789c: 0a01 |000e: move-result v1 │ │ -43789e: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ -4378a2: 1210 |0011: const/4 v0, #int 1 // #1 │ │ -4378a4: 0f00 |0012: return v0 │ │ +43786c: |[43786c] org.purple.smoke.TcpNeighbor.connected:()Z │ │ +43787c: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +43787e: 6e10 57be 0200 |0001: invoke-virtual {v2}, Lorg/purple/smoke/TcpNeighbor;.isNetworkConnected:()Z // method@be57 │ │ +437884: 0a01 |0004: move-result v1 │ │ +437886: 3801 0d00 |0005: if-eqz v1, 0012 // +000d │ │ +43788a: 5421 0e60 |0007: iget-object v1, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +43788e: 3801 0900 |0009: if-eqz v1, 0012 // +0009 │ │ +437892: 6e10 a95d 0100 |000b: invoke-virtual {v1}, Ljava/net/Socket;.isClosed:()Z // method@5da9 │ │ +437898: 0a01 |000e: move-result v1 │ │ +43789a: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ +43789e: 1210 |0011: const/4 v0, #int 1 // #1 │ │ +4378a0: 0f00 |0012: return v0 │ │ catches : 1 │ │ 0x0001 - 0x000f │ │ Ljava/lang/Exception; -> 0x0012 │ │ positions : │ │ 0x0001 line=70 │ │ 0x000b line=72 │ │ locals : │ │ @@ -1191483,47 +1191482,47 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 69 16-bit code units │ │ -437f14: |[437f14] org.purple.smoke.TcpNeighbor.disconnect:()V │ │ -437f24: 6f10 10bc 0500 |0000: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.disconnect:()V // method@bc10 │ │ -437f2a: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -437f2c: 1601 0000 |0004: const-wide/16 v1, #int 0 // #0 │ │ -437f30: 5453 0e60 |0006: iget-object v3, v5, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437f34: 3803 2200 |0008: if-eqz v3, 002a // +0022 │ │ -437f38: 6e10 a15d 0300 |000a: invoke-virtual {v3}, Ljava/net/Socket;.close:()V // method@5da1 │ │ -437f3e: 281d |000d: goto 002a // +001d │ │ -437f40: 0d03 |000e: move-exception v3 │ │ -437f42: 5454 fe5f |000f: iget-object v4, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@5ffe │ │ -437f46: 6e30 e360 1402 |0011: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -437f4c: 5454 ff5f |0014: iget-object v4, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@5fff │ │ -437f50: 6e30 e360 1402 |0016: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -437f56: 5454 0460 |0019: iget-object v4, v5, Lorg/purple/smoke/TcpNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6004 │ │ -437f5a: 6e30 e360 1402 |001b: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -437f60: 5b50 0e60 |001e: iput-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437f64: 5450 0f60 |0020: iget-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@600f │ │ -437f68: 7100 0b5d 0000 |0022: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -437f6e: 0b01 |0025: move-result-wide v1 │ │ -437f70: 6e30 e360 1002 |0026: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -437f76: 2703 |0029: throw v3 │ │ -437f78: 5453 fe5f |002a: iget-object v3, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@5ffe │ │ -437f7c: 6e30 e360 1302 |002c: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -437f82: 5453 ff5f |002f: iget-object v3, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@5fff │ │ -437f86: 6e30 e360 1302 |0031: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -437f8c: 5453 0460 |0034: iget-object v3, v5, Lorg/purple/smoke/TcpNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6004 │ │ -437f90: 6e30 e360 1302 |0036: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -437f96: 5b50 0e60 |0039: iput-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437f9a: 5450 0f60 |003b: iget-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@600f │ │ -437f9e: 7100 0b5d 0000 |003d: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -437fa4: 0b01 |0040: move-result-wide v1 │ │ -437fa6: 6e30 e360 1002 |0041: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -437fac: 0e00 |0044: return-void │ │ +437f10: |[437f10] org.purple.smoke.TcpNeighbor.disconnect:()V │ │ +437f20: 6f10 10bc 0500 |0000: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.disconnect:()V // method@bc10 │ │ +437f26: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +437f28: 1601 0000 |0004: const-wide/16 v1, #int 0 // #0 │ │ +437f2c: 5453 0e60 |0006: iget-object v3, v5, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437f30: 3803 2200 |0008: if-eqz v3, 002a // +0022 │ │ +437f34: 6e10 a15d 0300 |000a: invoke-virtual {v3}, Ljava/net/Socket;.close:()V // method@5da1 │ │ +437f3a: 281d |000d: goto 002a // +001d │ │ +437f3c: 0d03 |000e: move-exception v3 │ │ +437f3e: 5454 fe5f |000f: iget-object v4, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@5ffe │ │ +437f42: 6e30 e360 1402 |0011: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +437f48: 5454 ff5f |0014: iget-object v4, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@5fff │ │ +437f4c: 6e30 e360 1402 |0016: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +437f52: 5454 0460 |0019: iget-object v4, v5, Lorg/purple/smoke/TcpNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6004 │ │ +437f56: 6e30 e360 1402 |001b: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +437f5c: 5b50 0e60 |001e: iput-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437f60: 5450 0f60 |0020: iget-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@600f │ │ +437f64: 7100 0b5d 0000 |0022: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +437f6a: 0b01 |0025: move-result-wide v1 │ │ +437f6c: 6e30 e360 1002 |0026: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +437f72: 2703 |0029: throw v3 │ │ +437f74: 5453 fe5f |002a: iget-object v3, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@5ffe │ │ +437f78: 6e30 e360 1302 |002c: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +437f7e: 5453 ff5f |002f: iget-object v3, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@5fff │ │ +437f82: 6e30 e360 1302 |0031: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +437f88: 5453 0460 |0034: iget-object v3, v5, Lorg/purple/smoke/TcpNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6004 │ │ +437f8c: 6e30 e360 1302 |0036: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +437f92: 5b50 0e60 |0039: iput-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437f96: 5450 0f60 |003b: iget-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@600f │ │ +437f9a: 7100 0b5d 0000 |003d: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +437fa0: 0b01 |0040: move-result-wide v1 │ │ +437fa2: 6e30 e360 1002 |0041: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +437fa8: 0e00 |0044: return-void │ │ catches : 1 │ │ 0x0006 - 0x000d │ │ Ljava/lang/Exception; -> 0x002a │ │ -> 0x000e │ │ positions : │ │ 0x0000 line=229 │ │ 0x0006 line=233 │ │ @@ -1191547,36 +1191546,36 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 38 16-bit code units │ │ -4379d4: |[4379d4] org.purple.smoke.TcpNeighbor.getLocalIp:()Ljava/lang/String; │ │ -4379e4: 5420 0e60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -4379e8: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ -4379ec: 6e10 a55d 0000 |0004: invoke-virtual {v0}, Ljava/net/Socket;.getLocalAddress:()Ljava/net/InetAddress; // method@5da5 │ │ -4379f2: 0c00 |0007: move-result-object v0 │ │ -4379f4: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ -4379f8: 5420 0e60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -4379fc: 6e10 a55d 0000 |000c: invoke-virtual {v0}, Ljava/net/Socket;.getLocalAddress:()Ljava/net/InetAddress; // method@5da5 │ │ -437a02: 0c00 |000f: move-result-object v0 │ │ -437a04: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ -437a0a: 0c00 |0013: move-result-object v0 │ │ -437a0c: 1100 |0014: return-object v0 │ │ -437a0e: 0000 |0015: nop // spacer │ │ -437a10: 5420 1160 |0016: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_version:Ljava/lang/String; // field@6011 │ │ -437a14: 1a01 a91d |0018: const-string v1, "IPv4" // string@1da9 │ │ -437a18: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -437a1e: 0a00 |001d: move-result v0 │ │ -437a20: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ -437a24: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ -437a28: 1100 |0022: return-object v0 │ │ -437a2a: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ -437a2e: 1100 |0025: return-object v0 │ │ +4379d0: |[4379d0] org.purple.smoke.TcpNeighbor.getLocalIp:()Ljava/lang/String; │ │ +4379e0: 5420 0e60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +4379e4: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ +4379e8: 6e10 a55d 0000 |0004: invoke-virtual {v0}, Ljava/net/Socket;.getLocalAddress:()Ljava/net/InetAddress; // method@5da5 │ │ +4379ee: 0c00 |0007: move-result-object v0 │ │ +4379f0: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ +4379f4: 5420 0e60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +4379f8: 6e10 a55d 0000 |000c: invoke-virtual {v0}, Ljava/net/Socket;.getLocalAddress:()Ljava/net/InetAddress; // method@5da5 │ │ +4379fe: 0c00 |000f: move-result-object v0 │ │ +437a00: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ +437a06: 0c00 |0013: move-result-object v0 │ │ +437a08: 1100 |0014: return-object v0 │ │ +437a0a: 0000 |0015: nop // spacer │ │ +437a0c: 5420 1160 |0016: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_version:Ljava/lang/String; // field@6011 │ │ +437a10: 1a01 a91d |0018: const-string v1, "IPv4" // string@1da9 │ │ +437a14: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +437a1a: 0a00 |001d: move-result v0 │ │ +437a1c: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ +437a20: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ +437a24: 1100 |0022: return-object v0 │ │ +437a26: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ +437a2a: 1100 |0025: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x0014 │ │ Ljava/lang/Exception; -> 0x0015 │ │ positions : │ │ 0x0000 line=48 │ │ 0x000a line=49 │ │ 0x0016 line=55 │ │ @@ -1191588,26 +1191587,26 @@ │ │ type : '()I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 19 16-bit code units │ │ -4378b8: |[4378b8] org.purple.smoke.TcpNeighbor.getLocalPort:()I │ │ -4378c8: 5410 0e60 |0000: iget-object v0, v1, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -4378cc: 3800 0f00 |0002: if-eqz v0, 0011 // +000f │ │ -4378d0: 6e10 a95d 0000 |0004: invoke-virtual {v0}, Ljava/net/Socket;.isClosed:()Z // method@5da9 │ │ -4378d6: 0a00 |0007: move-result v0 │ │ -4378d8: 3900 0900 |0008: if-nez v0, 0011 // +0009 │ │ -4378dc: 5410 0e60 |000a: iget-object v0, v1, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -4378e0: 6e10 a65d 0000 |000c: invoke-virtual {v0}, Ljava/net/Socket;.getLocalPort:()I // method@5da6 │ │ -4378e6: 0a00 |000f: move-result v0 │ │ -4378e8: 0f00 |0010: return v0 │ │ -4378ea: 1200 |0011: const/4 v0, #int 0 // #0 │ │ -4378ec: 0f00 |0012: return v0 │ │ +4378b4: |[4378b4] org.purple.smoke.TcpNeighbor.getLocalPort:()I │ │ +4378c4: 5410 0e60 |0000: iget-object v0, v1, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +4378c8: 3800 0f00 |0002: if-eqz v0, 0011 // +000f │ │ +4378cc: 6e10 a95d 0000 |0004: invoke-virtual {v0}, Ljava/net/Socket;.isClosed:()Z // method@5da9 │ │ +4378d2: 0a00 |0007: move-result v0 │ │ +4378d4: 3900 0900 |0008: if-nez v0, 0011 // +0009 │ │ +4378d8: 5410 0e60 |000a: iget-object v0, v1, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +4378dc: 6e10 a65d 0000 |000c: invoke-virtual {v0}, Ljava/net/Socket;.getLocalPort:()I // method@5da6 │ │ +4378e2: 0a00 |000f: move-result v0 │ │ +4378e4: 0f00 |0010: return v0 │ │ +4378e6: 1200 |0011: const/4 v0, #int 0 // #0 │ │ +4378e8: 0f00 |0012: return v0 │ │ catches : 1 │ │ 0x0000 - 0x0010 │ │ Ljava/lang/Exception; -> 0x0011 │ │ positions : │ │ 0x0000 line=85 │ │ 0x000a line=86 │ │ locals : │ │ @@ -1191618,52 +1191617,52 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -437a40: |[437a40] org.purple.smoke.TcpNeighbor.getSessionCipher:()Ljava/lang/String; │ │ -437a50: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ -437a54: 1100 |0002: return-object v0 │ │ +437a3c: |[437a3c] org.purple.smoke.TcpNeighbor.getSessionCipher:()Ljava/lang/String; │ │ +437a4c: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ +437a50: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #7 : (in Lorg/purple/smoke/TcpNeighbor;) │ │ name : 'remoteIpAddress' │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 38 16-bit code units │ │ -437a58: |[437a58] org.purple.smoke.TcpNeighbor.remoteIpAddress:()Ljava/lang/String; │ │ -437a68: 5420 0e60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437a6c: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ -437a70: 6e10 a35d 0000 |0004: invoke-virtual {v0}, Ljava/net/Socket;.getInetAddress:()Ljava/net/InetAddress; // method@5da3 │ │ -437a76: 0c00 |0007: move-result-object v0 │ │ -437a78: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ -437a7c: 5420 0e60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437a80: 6e10 a35d 0000 |000c: invoke-virtual {v0}, Ljava/net/Socket;.getInetAddress:()Ljava/net/InetAddress; // method@5da3 │ │ -437a86: 0c00 |000f: move-result-object v0 │ │ -437a88: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ -437a8e: 0c00 |0013: move-result-object v0 │ │ -437a90: 1100 |0014: return-object v0 │ │ -437a92: 0000 |0015: nop // spacer │ │ -437a94: 5420 1160 |0016: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_version:Ljava/lang/String; // field@6011 │ │ -437a98: 1a01 a91d |0018: const-string v1, "IPv4" // string@1da9 │ │ -437a9c: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -437aa2: 0a00 |001d: move-result v0 │ │ -437aa4: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ -437aa8: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ -437aac: 1100 |0022: return-object v0 │ │ -437aae: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ -437ab2: 1100 |0025: return-object v0 │ │ +437a54: |[437a54] org.purple.smoke.TcpNeighbor.remoteIpAddress:()Ljava/lang/String; │ │ +437a64: 5420 0e60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437a68: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ +437a6c: 6e10 a35d 0000 |0004: invoke-virtual {v0}, Ljava/net/Socket;.getInetAddress:()Ljava/net/InetAddress; // method@5da3 │ │ +437a72: 0c00 |0007: move-result-object v0 │ │ +437a74: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ +437a78: 5420 0e60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437a7c: 6e10 a35d 0000 |000c: invoke-virtual {v0}, Ljava/net/Socket;.getInetAddress:()Ljava/net/InetAddress; // method@5da3 │ │ +437a82: 0c00 |000f: move-result-object v0 │ │ +437a84: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ +437a8a: 0c00 |0013: move-result-object v0 │ │ +437a8c: 1100 |0014: return-object v0 │ │ +437a8e: 0000 |0015: nop // spacer │ │ +437a90: 5420 1160 |0016: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_version:Ljava/lang/String; // field@6011 │ │ +437a94: 1a01 a91d |0018: const-string v1, "IPv4" // string@1da9 │ │ +437a98: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +437a9e: 0a00 |001d: move-result v0 │ │ +437aa0: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ +437aa4: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ +437aa8: 1100 |0022: return-object v0 │ │ +437aaa: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ +437aae: 1100 |0025: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x0014 │ │ Ljava/lang/Exception; -> 0x0015 │ │ positions : │ │ 0x0000 line=377 │ │ 0x000a line=378 │ │ 0x0016 line=384 │ │ @@ -1191675,24 +1191674,24 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 16 16-bit code units │ │ -437ac4: |[437ac4] org.purple.smoke.TcpNeighbor.remotePort:()Ljava/lang/String; │ │ -437ad4: 5410 0e60 |0000: iget-object v0, v1, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437ad8: 3800 0b00 |0002: if-eqz v0, 000d // +000b │ │ -437adc: 6e10 a85d 0000 |0004: invoke-virtual {v0}, Ljava/net/Socket;.getPort:()I // method@5da8 │ │ -437ae2: 0a00 |0007: move-result v0 │ │ -437ae4: 7110 d55c 0000 |0008: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -437aea: 0c00 |000b: move-result-object v0 │ │ -437aec: 1100 |000c: return-object v0 │ │ -437aee: 1a00 c704 |000d: const-string v0, "0" // string@04c7 │ │ -437af2: 1100 |000f: return-object v0 │ │ +437ac0: |[437ac0] org.purple.smoke.TcpNeighbor.remotePort:()Ljava/lang/String; │ │ +437ad0: 5410 0e60 |0000: iget-object v0, v1, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437ad4: 3800 0b00 |0002: if-eqz v0, 000d // +000b │ │ +437ad8: 6e10 a85d 0000 |0004: invoke-virtual {v0}, Ljava/net/Socket;.getPort:()I // method@5da8 │ │ +437ade: 0a00 |0007: move-result v0 │ │ +437ae0: 7110 d55c 0000 |0008: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +437ae6: 0c00 |000b: move-result-object v0 │ │ +437ae8: 1100 |000c: return-object v0 │ │ +437aea: 1a00 c704 |000d: const-string v0, "0" // string@04c7 │ │ +437aee: 1100 |000f: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x000c │ │ Ljava/lang/Exception; -> 0x000d │ │ positions : │ │ 0x0000 line=394 │ │ 0x0004 line=395 │ │ locals : │ │ @@ -1191703,46 +1191702,46 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -437b04: |[437b04] org.purple.smoke.TcpNeighbor.remoteScopeId:()Ljava/lang/String; │ │ -437b14: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ -437b18: 1100 |0002: return-object v0 │ │ +437b00: |[437b00] org.purple.smoke.TcpNeighbor.remoteScopeId:()Ljava/lang/String; │ │ +437b10: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ +437b14: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #10 : (in Lorg/purple/smoke/TcpNeighbor;) │ │ name : 'send' │ │ type : '(Ljava/lang/String;)I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 26 16-bit code units │ │ -437990: |[437990] org.purple.smoke.TcpNeighbor.send:(Ljava/lang/String;)I │ │ -4379a0: 6e10 52be 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be52 │ │ -4379a6: 0a00 |0003: move-result v0 │ │ -4379a8: 3800 1400 |0004: if-eqz v0, 0018 // +0014 │ │ -4379ac: 3802 1200 |0006: if-eqz v2, 0018 // +0012 │ │ -4379b0: 6e10 c55c 0200 |0008: invoke-virtual {v2}, Ljava/lang/String;.length:()I // method@5cc5 │ │ -4379b6: 0a00 |000b: move-result v0 │ │ -4379b8: 3900 0300 |000c: if-nez v0, 000f // +0003 │ │ -4379bc: 280a |000e: goto 0018 // +000a │ │ -4379be: 6e10 bc5c 0200 |000f: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4379c4: 0c02 |0012: move-result-object v2 │ │ -4379c6: 6e20 5cbe 2100 |0013: invoke-virtual {v1, v2}, Lorg/purple/smoke/TcpNeighbor;.send:([B)I // method@be5c │ │ -4379cc: 0a02 |0016: move-result v2 │ │ -4379ce: 0f02 |0017: return v2 │ │ -4379d0: 1202 |0018: const/4 v2, #int 0 // #0 │ │ -4379d2: 0f02 |0019: return v2 │ │ +43798c: |[43798c] org.purple.smoke.TcpNeighbor.send:(Ljava/lang/String;)I │ │ +43799c: 6e10 52be 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be52 │ │ +4379a2: 0a00 |0003: move-result v0 │ │ +4379a4: 3800 1400 |0004: if-eqz v0, 0018 // +0014 │ │ +4379a8: 3802 1200 |0006: if-eqz v2, 0018 // +0012 │ │ +4379ac: 6e10 c55c 0200 |0008: invoke-virtual {v2}, Ljava/lang/String;.length:()I // method@5cc5 │ │ +4379b2: 0a00 |000b: move-result v0 │ │ +4379b4: 3900 0300 |000c: if-nez v0, 000f // +0003 │ │ +4379b8: 280a |000e: goto 0018 // +000a │ │ +4379ba: 6e10 bc5c 0200 |000f: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4379c0: 0c02 |0012: move-result-object v2 │ │ +4379c2: 6e20 5cbe 2100 |0013: invoke-virtual {v1, v2}, Lorg/purple/smoke/TcpNeighbor;.send:([B)I // method@be5c │ │ +4379c8: 0a02 |0016: move-result v2 │ │ +4379ca: 0f02 |0017: return v2 │ │ +4379cc: 1202 |0018: const/4 v2, #int 0 // #0 │ │ +4379ce: 0f02 |0019: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=97 │ │ 0x000f line=100 │ │ locals : │ │ 0x0000 - 0x001a reg=1 this Lorg/purple/smoke/TcpNeighbor; │ │ 0x0000 - 0x001a reg=2 (null) Ljava/lang/String; │ │ @@ -1191752,46 +1191751,46 @@ │ │ type : '([B)I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 56 16-bit code units │ │ -437900: |[437900] org.purple.smoke.TcpNeighbor.send:([B)I │ │ -437910: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -437912: 3805 3600 |0001: if-eqz v5, 0037 // +0036 │ │ -437916: 2151 |0003: array-length v1, v5 │ │ -437918: 3801 3300 |0004: if-eqz v1, 0037 // +0033 │ │ -43791c: 6e10 52be 0400 |0006: invoke-virtual {v4}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be52 │ │ -437922: 0a01 |0009: move-result v1 │ │ -437924: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ -437928: 282b |000c: goto 0037 // +002b │ │ -43792a: 5441 0e60 |000d: iget-object v1, v4, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -43792e: 3801 1f00 |000f: if-eqz v1, 002e // +001f │ │ -437932: 6e10 a75d 0100 |0011: invoke-virtual {v1}, Ljava/net/Socket;.getOutputStream:()Ljava/io/OutputStream; // method@5da7 │ │ -437938: 0c01 |0014: move-result-object v1 │ │ -43793a: 3901 0300 |0015: if-nez v1, 0018 // +0003 │ │ -43793e: 2817 |0017: goto 002e // +0017 │ │ -437940: 5441 0e60 |0018: iget-object v1, v4, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ -437944: 6e10 a75d 0100 |001a: invoke-virtual {v1}, Ljava/net/Socket;.getOutputStream:()Ljava/io/OutputStream; // method@5da7 │ │ -43794a: 0c01 |001d: move-result-object v1 │ │ -43794c: 6e20 db5b 5100 |001e: invoke-virtual {v1, v5}, Ljava/io/OutputStream;.write:([B)V // method@5bdb │ │ -437952: 7110 23bb 0500 |0021: invoke-static {v5}, Lorg/purple/smoke/Kernel;.writeCongestionDigest:([B)V // method@bb23 │ │ -437958: 5441 ff5f |0024: iget-object v1, v4, Lorg/purple/smoke/TcpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@5fff │ │ -43795c: 2152 |0026: array-length v2, v5 │ │ -43795e: 8122 |0027: int-to-long v2, v2 │ │ -437960: 6e30 e260 2103 |0028: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e2 │ │ -437966: 2155 |002b: array-length v5, v5 │ │ -437968: b050 |002c: add-int/2addr v0, v5 │ │ -43796a: 280a |002d: goto 0037 // +000a │ │ -43796c: 0f00 |002e: return v0 │ │ -43796e: 1a05 0e09 |002f: const-string v5, "A socket error occurred on send()." // string@090e │ │ -437972: 6e20 5dbe 5400 |0031: invoke-virtual {v4, v5}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be5d │ │ -437978: 6e10 53be 0400 |0034: invoke-virtual {v4}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be53 │ │ -43797e: 0f00 |0037: return v0 │ │ +4378fc: |[4378fc] org.purple.smoke.TcpNeighbor.send:([B)I │ │ +43790c: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +43790e: 3805 3600 |0001: if-eqz v5, 0037 // +0036 │ │ +437912: 2151 |0003: array-length v1, v5 │ │ +437914: 3801 3300 |0004: if-eqz v1, 0037 // +0033 │ │ +437918: 6e10 52be 0400 |0006: invoke-virtual {v4}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be52 │ │ +43791e: 0a01 |0009: move-result v1 │ │ +437920: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ +437924: 282b |000c: goto 0037 // +002b │ │ +437926: 5441 0e60 |000d: iget-object v1, v4, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +43792a: 3801 1f00 |000f: if-eqz v1, 002e // +001f │ │ +43792e: 6e10 a75d 0100 |0011: invoke-virtual {v1}, Ljava/net/Socket;.getOutputStream:()Ljava/io/OutputStream; // method@5da7 │ │ +437934: 0c01 |0014: move-result-object v1 │ │ +437936: 3901 0300 |0015: if-nez v1, 0018 // +0003 │ │ +43793a: 2817 |0017: goto 002e // +0017 │ │ +43793c: 5441 0e60 |0018: iget-object v1, v4, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600e │ │ +437940: 6e10 a75d 0100 |001a: invoke-virtual {v1}, Ljava/net/Socket;.getOutputStream:()Ljava/io/OutputStream; // method@5da7 │ │ +437946: 0c01 |001d: move-result-object v1 │ │ +437948: 6e20 db5b 5100 |001e: invoke-virtual {v1, v5}, Ljava/io/OutputStream;.write:([B)V // method@5bdb │ │ +43794e: 7110 23bb 0500 |0021: invoke-static {v5}, Lorg/purple/smoke/Kernel;.writeCongestionDigest:([B)V // method@bb23 │ │ +437954: 5441 ff5f |0024: iget-object v1, v4, Lorg/purple/smoke/TcpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@5fff │ │ +437958: 2152 |0026: array-length v2, v5 │ │ +43795a: 8122 |0027: int-to-long v2, v2 │ │ +43795c: 6e30 e260 2103 |0028: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e2 │ │ +437962: 2155 |002b: array-length v5, v5 │ │ +437964: b050 |002c: add-int/2addr v0, v5 │ │ +437966: 280a |002d: goto 0037 // +000a │ │ +437968: 0f00 |002e: return v0 │ │ +43796a: 1a05 0e09 |002f: const-string v5, "A socket error occurred on send()." // string@090e │ │ +43796e: 6e20 5dbe 5400 |0031: invoke-virtual {v4, v5}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be5d │ │ +437974: 6e10 53be 0400 |0034: invoke-virtual {v4}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be53 │ │ +43797a: 0f00 |0037: return v0 │ │ catches : 1 │ │ 0x000d - 0x002c │ │ Ljava/lang/Exception; -> 0x002f │ │ positions : │ │ 0x0003 line=107 │ │ 0x000d line=112 │ │ 0x0018 line=115 │ │ @@ -1191809,17 +1191808,17 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -437b1c: |[437b1c] org.purple.smoke.TcpNeighbor.transport:()Ljava/lang/String; │ │ -437b2c: 1a00 0a4d |0000: const-string v0, "TCP" // string@4d0a │ │ -437b30: 1100 |0002: return-object v0 │ │ +437b18: |[437b18] org.purple.smoke.TcpNeighbor.transport:()Ljava/lang/String; │ │ +437b28: 1a00 0a4d |0000: const-string v0, "TCP" // string@4d0a │ │ +437b2c: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ source_file_idx : 20082 (TcpNeighbor.java) │ │ │ │ Class #4375 header: │ │ @@ -1191891,121 +1191890,121 @@ │ │ type : '(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 19 │ │ ins : 10 │ │ outs : 8 │ │ insns size : 198 16-bit code units │ │ -4389a8: |[4389a8] org.purple.smoke.TcpTlsNeighbor.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V │ │ -4389b8: 0798 |0000: move-object v8, v9 │ │ -4389ba: 1a05 0a4d |0001: const-string v5, "TCP" // string@4d0a │ │ -4389be: 0790 |0003: move-object v0, v9 │ │ -4389c0: 07a1 |0004: move-object v1, v10 │ │ -4389c2: 07e2 |0005: move-object v2, v14 │ │ -4389c4: 07f3 |0006: move-object v3, v15 │ │ -4389c6: 0804 1000 |0007: move-object/from16 v4, v16 │ │ -4389ca: 0806 1100 |0009: move-object/from16 v6, v17 │ │ -4389ce: 0207 1200 |000b: move/from16 v7, v18 │ │ -4389d2: 7608 02bc 0000 |000d: invoke-direct/range {v0, v1, v2, v3, v4, v5, v6, v7}, Lorg/purple/smoke/Neighbor;.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V // method@bc02 │ │ -4389d8: 1200 |0010: const/4 v0, #int 0 // #0 │ │ -4389da: 5b80 1f60 |0011: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601f │ │ -4389de: 5b80 2260 |0013: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6022 │ │ -4389e2: 5b80 2960 |0015: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6029 │ │ -4389e6: 5b80 2e60 |0017: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -4389ea: 5b80 2860 |0019: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6028 │ │ -4389ee: 1a01 0000 |001b: const-string v1, "" // string@0000 │ │ -4389f2: 5b81 2a60 |001d: iput-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602a │ │ -4389f6: 5b81 2c60 |001f: iput-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyType:Ljava/lang/String; // field@602c │ │ -4389fa: 5b80 3160 |0021: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_trustManagers:[Ljavax/net/ssl/TrustManager; // field@6031 │ │ -4389fe: 12f1 |0023: const/4 v1, #int -1 // #ff │ │ -438a00: 5981 2b60 |0024: iput v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602b │ │ -438a04: 2202 e40b |0026: new-instance v2, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ -438a08: 1203 |0028: const/4 v3, #int 0 // #0 │ │ -438a0a: 7020 d660 3200 |0029: invoke-direct {v2, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d6 │ │ -438a10: 5b82 1f60 |002c: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601f │ │ -438a14: 2202 e40b |002e: new-instance v2, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ -438a18: 7020 d660 3200 |0030: invoke-direct {v2, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d6 │ │ -438a1e: 5b82 2260 |0033: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6022 │ │ -438a22: 6202 6c00 |0035: sget-object v2, Landroid/os/Build$VERSION;.RELEASE:Ljava/lang/String; // field@006c │ │ -438a26: 1a04 5c06 |0037: const-string v4, "10" // string@065c │ │ -438a2a: 6e20 ca5c 4200 |0039: invoke-virtual {v2, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ -438a30: 0a02 |003c: move-result v2 │ │ -438a32: 3902 3100 |003d: if-nez v2, 006e // +0031 │ │ -438a36: 6202 6c00 |003f: sget-object v2, Landroid/os/Build$VERSION;.RELEASE:Ljava/lang/String; // field@006c │ │ -438a3a: 1a04 9306 |0041: const-string v4, "11" // string@0693 │ │ -438a3e: 6e20 ca5c 4200 |0043: invoke-virtual {v2, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ -438a44: 0a02 |0046: move-result v2 │ │ -438a46: 3902 2700 |0047: if-nez v2, 006e // +0027 │ │ -438a4a: 6202 6c00 |0049: sget-object v2, Landroid/os/Build$VERSION;.RELEASE:Ljava/lang/String; // field@006c │ │ -438a4e: 1a04 a406 |004b: const-string v4, "12" // string@06a4 │ │ -438a52: 6e20 ca5c 4200 |004d: invoke-virtual {v2, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ -438a58: 0a02 |0050: move-result v2 │ │ -438a5a: 3902 1d00 |0051: if-nez v2, 006e // +001d │ │ -438a5e: 6202 6c00 |0053: sget-object v2, Landroid/os/Build$VERSION;.RELEASE:Ljava/lang/String; // field@006c │ │ -438a62: 1a04 ae06 |0055: const-string v4, "13" // string@06ae │ │ -438a66: 6e20 ca5c 4200 |0057: invoke-virtual {v2, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ -438a6c: 0a02 |005a: move-result v2 │ │ -438a6e: 3802 0300 |005b: if-eqz v2, 005e // +0003 │ │ -438a72: 2811 |005d: goto 006e // +0011 │ │ -438a74: 6002 6d00 |005e: sget v2, Landroid/os/Build$VERSION;.SDK_INT:I // field@006d │ │ -438a78: 1304 1500 |0060: const/16 v4, #int 21 // #15 │ │ -438a7c: 3442 0700 |0062: if-lt v2, v4, 0069 // +0007 │ │ -438a80: 6202 ce53 |0064: sget-object v2, Lorg/purple/smoke/Cryptography;.TLS_V1_V12:[Ljava/lang/String; // field@53ce │ │ -438a84: 5b82 2860 |0066: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6028 │ │ -438a88: 280a |0068: goto 0072 // +000a │ │ -438a8a: 6202 cc53 |0069: sget-object v2, Lorg/purple/smoke/Cryptography;.TLS_LEGACY_V12:[Ljava/lang/String; // field@53cc │ │ -438a8e: 5b82 2860 |006b: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6028 │ │ -438a92: 2805 |006d: goto 0072 // +0005 │ │ -438a94: 6202 cd53 |006e: sget-object v2, Lorg/purple/smoke/Cryptography;.TLS_NEW:[Ljava/lang/String; // field@53cd │ │ -438a98: 5b82 2860 |0070: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6028 │ │ -438a9c: 07b2 |0072: move-object v2, v11 │ │ -438a9e: 5b82 2a60 |0073: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602a │ │ -438aa2: 7110 555c 0c00 |0075: invoke-static {v12}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@5c55 │ │ -438aa8: 0a02 |0078: move-result v2 │ │ -438aaa: 5982 2b60 |0079: iput v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602b │ │ -438aae: 2803 |007b: goto 007e // +0003 │ │ -438ab0: 5981 2b60 |007c: iput v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602b │ │ -438ab4: 07d2 |007e: move-object v2, v13 │ │ -438ab6: 5b82 2c60 |007f: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyType:Ljava/lang/String; // field@602c │ │ -438aba: 5482 2a60 |0081: iget-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602a │ │ -438abe: 6e10 c35c 0200 |0083: invoke-virtual {v2}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -438ac4: 0a02 |0086: move-result v2 │ │ -438ac6: 3902 1c00 |0087: if-nez v2, 00a3 // +001c │ │ -438aca: 5282 2b60 |0089: iget v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602b │ │ -438ace: 3212 1800 |008b: if-eq v2, v1, 00a3 // +0018 │ │ -438ad2: 5481 2c60 |008d: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyType:Ljava/lang/String; // field@602c │ │ -438ad6: 6e10 c35c 0100 |008f: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -438adc: 0a01 |0092: move-result v1 │ │ -438ade: 3901 1000 |0093: if-nez v1, 00a3 // +0010 │ │ -438ae2: 2201 0d0b |0095: new-instance v1, Ljava/net/InetSocketAddress; // type@0b0d │ │ -438ae6: 5482 2a60 |0097: iget-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602a │ │ -438aea: 5284 2b60 |0099: iget v4, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602b │ │ -438aee: 7030 8e5d 2104 |009b: invoke-direct {v1, v2, v4}, Ljava/net/InetSocketAddress;.:(Ljava/lang/String;I)V // method@5d8e │ │ -438af4: 5b81 2960 |009e: iput-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6029 │ │ -438af8: 2803 |00a0: goto 00a3 // +0003 │ │ -438afa: 5b80 2960 |00a1: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6029 │ │ -438afe: 5480 2d60 |00a3: iget-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602d │ │ -438b02: 2201 381b |00a5: new-instance v1, Lorg/purple/smoke/TcpTlsNeighbor$2; // type@1b38 │ │ -438b06: 7020 61be 9100 |00a7: invoke-direct {v1, v9}, Lorg/purple/smoke/TcpTlsNeighbor$2;.:(Lorg/purple/smoke/TcpTlsNeighbor;)V // method@be61 │ │ -438b0c: 1604 0000 |00aa: const-wide/16 v4, #int 0 // #0 │ │ -438b10: 1606 6400 |00ac: const-wide/16 v6, #int 100 // #64 │ │ -438b14: 6202 ef2c |00ae: sget-object v2, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -438b18: 070a |00b0: move-object v10, v0 │ │ -438b1a: 071b |00b1: move-object v11, v1 │ │ -438b1c: 044c |00b2: move-wide v12, v4 │ │ -438b1e: 046e |00b3: move-wide v14, v6 │ │ -438b20: 0810 0200 |00b4: move-object/from16 v16, v2 │ │ -438b24: 7807 ce60 0a00 |00b6: invoke-interface/range {v10, v11, v12, v13, v14, v15, v16}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ -438b2a: 1210 |00b9: const/4 v0, #int 1 // #1 │ │ -438b2c: 2300 ba1b |00ba: new-array v0, v0, [Ljavax/net/ssl/TrustManager; // type@1bba │ │ -438b30: 2201 391b |00bc: new-instance v1, Lorg/purple/smoke/TcpTlsNeighbor$3; // type@1b39 │ │ -438b34: 7020 63be 9100 |00be: invoke-direct {v1, v9}, Lorg/purple/smoke/TcpTlsNeighbor$3;.:(Lorg/purple/smoke/TcpTlsNeighbor;)V // method@be63 │ │ -438b3a: 4d01 0003 |00c1: aput-object v1, v0, v3 │ │ -438b3e: 5b80 3160 |00c3: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_trustManagers:[Ljavax/net/ssl/TrustManager; // field@6031 │ │ -438b42: 0e00 |00c5: return-void │ │ +4389a4: |[4389a4] org.purple.smoke.TcpTlsNeighbor.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V │ │ +4389b4: 0798 |0000: move-object v8, v9 │ │ +4389b6: 1a05 0a4d |0001: const-string v5, "TCP" // string@4d0a │ │ +4389ba: 0790 |0003: move-object v0, v9 │ │ +4389bc: 07a1 |0004: move-object v1, v10 │ │ +4389be: 07e2 |0005: move-object v2, v14 │ │ +4389c0: 07f3 |0006: move-object v3, v15 │ │ +4389c2: 0804 1000 |0007: move-object/from16 v4, v16 │ │ +4389c6: 0806 1100 |0009: move-object/from16 v6, v17 │ │ +4389ca: 0207 1200 |000b: move/from16 v7, v18 │ │ +4389ce: 7608 02bc 0000 |000d: invoke-direct/range {v0, v1, v2, v3, v4, v5, v6, v7}, Lorg/purple/smoke/Neighbor;.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V // method@bc02 │ │ +4389d4: 1200 |0010: const/4 v0, #int 0 // #0 │ │ +4389d6: 5b80 1f60 |0011: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601f │ │ +4389da: 5b80 2260 |0013: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6022 │ │ +4389de: 5b80 2960 |0015: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6029 │ │ +4389e2: 5b80 2e60 |0017: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +4389e6: 5b80 2860 |0019: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6028 │ │ +4389ea: 1a01 0000 |001b: const-string v1, "" // string@0000 │ │ +4389ee: 5b81 2a60 |001d: iput-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602a │ │ +4389f2: 5b81 2c60 |001f: iput-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyType:Ljava/lang/String; // field@602c │ │ +4389f6: 5b80 3160 |0021: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_trustManagers:[Ljavax/net/ssl/TrustManager; // field@6031 │ │ +4389fa: 12f1 |0023: const/4 v1, #int -1 // #ff │ │ +4389fc: 5981 2b60 |0024: iput v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602b │ │ +438a00: 2202 e40b |0026: new-instance v2, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ +438a04: 1203 |0028: const/4 v3, #int 0 // #0 │ │ +438a06: 7020 d660 3200 |0029: invoke-direct {v2, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d6 │ │ +438a0c: 5b82 1f60 |002c: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601f │ │ +438a10: 2202 e40b |002e: new-instance v2, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ +438a14: 7020 d660 3200 |0030: invoke-direct {v2, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d6 │ │ +438a1a: 5b82 2260 |0033: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6022 │ │ +438a1e: 6202 6c00 |0035: sget-object v2, Landroid/os/Build$VERSION;.RELEASE:Ljava/lang/String; // field@006c │ │ +438a22: 1a04 5c06 |0037: const-string v4, "10" // string@065c │ │ +438a26: 6e20 ca5c 4200 |0039: invoke-virtual {v2, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ +438a2c: 0a02 |003c: move-result v2 │ │ +438a2e: 3902 3100 |003d: if-nez v2, 006e // +0031 │ │ +438a32: 6202 6c00 |003f: sget-object v2, Landroid/os/Build$VERSION;.RELEASE:Ljava/lang/String; // field@006c │ │ +438a36: 1a04 9306 |0041: const-string v4, "11" // string@0693 │ │ +438a3a: 6e20 ca5c 4200 |0043: invoke-virtual {v2, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ +438a40: 0a02 |0046: move-result v2 │ │ +438a42: 3902 2700 |0047: if-nez v2, 006e // +0027 │ │ +438a46: 6202 6c00 |0049: sget-object v2, Landroid/os/Build$VERSION;.RELEASE:Ljava/lang/String; // field@006c │ │ +438a4a: 1a04 a406 |004b: const-string v4, "12" // string@06a4 │ │ +438a4e: 6e20 ca5c 4200 |004d: invoke-virtual {v2, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ +438a54: 0a02 |0050: move-result v2 │ │ +438a56: 3902 1d00 |0051: if-nez v2, 006e // +001d │ │ +438a5a: 6202 6c00 |0053: sget-object v2, Landroid/os/Build$VERSION;.RELEASE:Ljava/lang/String; // field@006c │ │ +438a5e: 1a04 ae06 |0055: const-string v4, "13" // string@06ae │ │ +438a62: 6e20 ca5c 4200 |0057: invoke-virtual {v2, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ +438a68: 0a02 |005a: move-result v2 │ │ +438a6a: 3802 0300 |005b: if-eqz v2, 005e // +0003 │ │ +438a6e: 2811 |005d: goto 006e // +0011 │ │ +438a70: 6002 6d00 |005e: sget v2, Landroid/os/Build$VERSION;.SDK_INT:I // field@006d │ │ +438a74: 1304 1500 |0060: const/16 v4, #int 21 // #15 │ │ +438a78: 3442 0700 |0062: if-lt v2, v4, 0069 // +0007 │ │ +438a7c: 6202 ce53 |0064: sget-object v2, Lorg/purple/smoke/Cryptography;.TLS_V1_V12:[Ljava/lang/String; // field@53ce │ │ +438a80: 5b82 2860 |0066: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6028 │ │ +438a84: 280a |0068: goto 0072 // +000a │ │ +438a86: 6202 cc53 |0069: sget-object v2, Lorg/purple/smoke/Cryptography;.TLS_LEGACY_V12:[Ljava/lang/String; // field@53cc │ │ +438a8a: 5b82 2860 |006b: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6028 │ │ +438a8e: 2805 |006d: goto 0072 // +0005 │ │ +438a90: 6202 cd53 |006e: sget-object v2, Lorg/purple/smoke/Cryptography;.TLS_NEW:[Ljava/lang/String; // field@53cd │ │ +438a94: 5b82 2860 |0070: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6028 │ │ +438a98: 07b2 |0072: move-object v2, v11 │ │ +438a9a: 5b82 2a60 |0073: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602a │ │ +438a9e: 7110 555c 0c00 |0075: invoke-static {v12}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@5c55 │ │ +438aa4: 0a02 |0078: move-result v2 │ │ +438aa6: 5982 2b60 |0079: iput v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602b │ │ +438aaa: 2803 |007b: goto 007e // +0003 │ │ +438aac: 5981 2b60 |007c: iput v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602b │ │ +438ab0: 07d2 |007e: move-object v2, v13 │ │ +438ab2: 5b82 2c60 |007f: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyType:Ljava/lang/String; // field@602c │ │ +438ab6: 5482 2a60 |0081: iget-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602a │ │ +438aba: 6e10 c35c 0200 |0083: invoke-virtual {v2}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +438ac0: 0a02 |0086: move-result v2 │ │ +438ac2: 3902 1c00 |0087: if-nez v2, 00a3 // +001c │ │ +438ac6: 5282 2b60 |0089: iget v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602b │ │ +438aca: 3212 1800 |008b: if-eq v2, v1, 00a3 // +0018 │ │ +438ace: 5481 2c60 |008d: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyType:Ljava/lang/String; // field@602c │ │ +438ad2: 6e10 c35c 0100 |008f: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +438ad8: 0a01 |0092: move-result v1 │ │ +438ada: 3901 1000 |0093: if-nez v1, 00a3 // +0010 │ │ +438ade: 2201 0d0b |0095: new-instance v1, Ljava/net/InetSocketAddress; // type@0b0d │ │ +438ae2: 5482 2a60 |0097: iget-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602a │ │ +438ae6: 5284 2b60 |0099: iget v4, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602b │ │ +438aea: 7030 8e5d 2104 |009b: invoke-direct {v1, v2, v4}, Ljava/net/InetSocketAddress;.:(Ljava/lang/String;I)V // method@5d8e │ │ +438af0: 5b81 2960 |009e: iput-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6029 │ │ +438af4: 2803 |00a0: goto 00a3 // +0003 │ │ +438af6: 5b80 2960 |00a1: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6029 │ │ +438afa: 5480 2d60 |00a3: iget-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602d │ │ +438afe: 2201 381b |00a5: new-instance v1, Lorg/purple/smoke/TcpTlsNeighbor$2; // type@1b38 │ │ +438b02: 7020 61be 9100 |00a7: invoke-direct {v1, v9}, Lorg/purple/smoke/TcpTlsNeighbor$2;.:(Lorg/purple/smoke/TcpTlsNeighbor;)V // method@be61 │ │ +438b08: 1604 0000 |00aa: const-wide/16 v4, #int 0 // #0 │ │ +438b0c: 1606 6400 |00ac: const-wide/16 v6, #int 100 // #64 │ │ +438b10: 6202 ef2c |00ae: sget-object v2, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +438b14: 070a |00b0: move-object v10, v0 │ │ +438b16: 071b |00b1: move-object v11, v1 │ │ +438b18: 044c |00b2: move-wide v12, v4 │ │ +438b1a: 046e |00b3: move-wide v14, v6 │ │ +438b1c: 0810 0200 |00b4: move-object/from16 v16, v2 │ │ +438b20: 7807 ce60 0a00 |00b6: invoke-interface/range {v10, v11, v12, v13, v14, v15, v16}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ +438b26: 1210 |00b9: const/4 v0, #int 1 // #1 │ │ +438b28: 2300 ba1b |00ba: new-array v0, v0, [Ljavax/net/ssl/TrustManager; // type@1bba │ │ +438b2c: 2201 391b |00bc: new-instance v1, Lorg/purple/smoke/TcpTlsNeighbor$3; // type@1b39 │ │ +438b30: 7020 63be 9100 |00be: invoke-direct {v1, v9}, Lorg/purple/smoke/TcpTlsNeighbor$3;.:(Lorg/purple/smoke/TcpTlsNeighbor;)V // method@be63 │ │ +438b36: 4d01 0003 |00c1: aput-object v1, v0, v3 │ │ +438b3a: 5b80 3160 |00c3: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_trustManagers:[Ljavax/net/ssl/TrustManager; // field@6031 │ │ +438b3e: 0e00 |00c5: return-void │ │ catches : 2 │ │ 0x0075 - 0x007b │ │ Ljava/lang/Exception; -> 0x007c │ │ 0x0095 - 0x00a0 │ │ Ljava/lang/Exception; -> 0x00a1 │ │ positions : │ │ 0x000d line=324 │ │ @@ -1192055,17 +1192054,17 @@ │ │ type : '(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -438960: |[438960] org.purple.smoke.TcpTlsNeighbor.access$000:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; │ │ -438970: 5400 1f60 |0000: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601f │ │ -438974: 1100 |0002: return-object v0 │ │ +43895c: |[43895c] org.purple.smoke.TcpTlsNeighbor.access$000:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; │ │ +43896c: 5400 1f60 |0000: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601f │ │ +438970: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/TcpTlsNeighbor; │ │ │ │ #2 : (in Lorg/purple/smoke/TcpTlsNeighbor;) │ │ @@ -1192073,17 +1192072,17 @@ │ │ type : '(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -438990: |[438990] org.purple.smoke.TcpTlsNeighbor.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; │ │ -4389a0: 5400 2e60 |0000: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -4389a4: 1100 |0002: return-object v0 │ │ +43898c: |[43898c] org.purple.smoke.TcpTlsNeighbor.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; │ │ +43899c: 5400 2e60 |0000: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +4389a0: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/TcpTlsNeighbor; │ │ │ │ #3 : (in Lorg/purple/smoke/TcpTlsNeighbor;) │ │ @@ -1192091,17 +1192090,17 @@ │ │ type : '(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -438978: |[438978] org.purple.smoke.TcpTlsNeighbor.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; │ │ -438988: 5400 2260 |0000: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6022 │ │ -43898c: 1100 |0002: return-object v0 │ │ +438974: |[438974] org.purple.smoke.TcpTlsNeighbor.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; │ │ +438984: 5400 2260 |0000: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6022 │ │ +438988: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/TcpTlsNeighbor; │ │ │ │ Virtual methods - │ │ @@ -1192110,41 +1192109,41 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 49 16-bit code units │ │ -438b60: |[438b60] org.purple.smoke.TcpTlsNeighbor.abort:()V │ │ -438b70: 6e10 6ebe 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be6e │ │ -438b76: 6f10 03bc 0500 |0003: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.abort:()V // method@bc03 │ │ -438b7c: 5450 1f60 |0006: iget-object v0, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601f │ │ -438b80: 1201 |0008: const/4 v1, #int 0 // #0 │ │ -438b82: 6e20 da60 1000 |0009: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -438b88: 5450 2260 |000c: iget-object v0, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6022 │ │ -438b8c: 6e20 da60 1000 |000e: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -438b92: 5450 2d60 |0011: iget-object v0, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602d │ │ -438b96: 1d00 |0013: monitor-enter v0 │ │ -438b98: 5451 2d60 |0014: iget-object v1, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602d │ │ -438b9c: 7210 cf60 0100 |0016: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60cf │ │ -438ba2: 2803 |0019: goto 001c // +0003 │ │ -438ba4: 0d01 |001a: move-exception v1 │ │ -438ba6: 2814 |001b: goto 002f // +0014 │ │ -438ba8: 5451 2d60 |001c: iget-object v1, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602d │ │ -438bac: 1602 0500 |001e: const-wide/16 v2, #int 5 // #5 │ │ -438bb0: 6204 f22c |0020: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ -438bb4: 7240 cc60 2143 |0022: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60cc │ │ -438bba: 0a01 |0025: move-result v1 │ │ -438bbc: 3901 0700 |0026: if-nez v1, 002d // +0007 │ │ -438bc0: 5451 2d60 |0028: iget-object v1, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602d │ │ -438bc4: 7210 d060 0100 |002a: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d0 │ │ -438bca: 1e00 |002d: monitor-exit v0 │ │ -438bcc: 0e00 |002e: return-void │ │ -438bce: 1e00 |002f: monitor-exit v0 │ │ -438bd0: 2701 |0030: throw v1 │ │ +438b5c: |[438b5c] org.purple.smoke.TcpTlsNeighbor.abort:()V │ │ +438b6c: 6e10 6ebe 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be6e │ │ +438b72: 6f10 03bc 0500 |0003: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.abort:()V // method@bc03 │ │ +438b78: 5450 1f60 |0006: iget-object v0, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601f │ │ +438b7c: 1201 |0008: const/4 v1, #int 0 // #0 │ │ +438b7e: 6e20 da60 1000 |0009: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +438b84: 5450 2260 |000c: iget-object v0, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6022 │ │ +438b88: 6e20 da60 1000 |000e: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +438b8e: 5450 2d60 |0011: iget-object v0, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602d │ │ +438b92: 1d00 |0013: monitor-enter v0 │ │ +438b94: 5451 2d60 |0014: iget-object v1, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602d │ │ +438b98: 7210 cf60 0100 |0016: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60cf │ │ +438b9e: 2803 |0019: goto 001c // +0003 │ │ +438ba0: 0d01 |001a: move-exception v1 │ │ +438ba2: 2814 |001b: goto 002f // +0014 │ │ +438ba4: 5451 2d60 |001c: iget-object v1, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602d │ │ +438ba8: 1602 0500 |001e: const-wide/16 v2, #int 5 // #5 │ │ +438bac: 6204 f22c |0020: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ +438bb0: 7240 cc60 2143 |0022: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60cc │ │ +438bb6: 0a01 |0025: move-result v1 │ │ +438bb8: 3901 0700 |0026: if-nez v1, 002d // +0007 │ │ +438bbc: 5451 2d60 |0028: iget-object v1, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602d │ │ +438bc0: 7210 d060 0100 |002a: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d0 │ │ +438bc6: 1e00 |002d: monitor-exit v0 │ │ +438bc8: 0e00 |002e: return-void │ │ +438bca: 1e00 |002f: monitor-exit v0 │ │ +438bcc: 2701 |0030: throw v1 │ │ catches : 3 │ │ 0x0014 - 0x0019 │ │ Ljava/lang/Exception; -> 0x001c │ │ -> 0x001a │ │ 0x001c - 0x002d │ │ Ljava/lang/Exception; -> 0x002d │ │ -> 0x001a │ │ @@ -1192169,160 +1192168,160 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 11 │ │ ins : 1 │ │ outs : 5 │ │ insns size : 312 16-bit code units │ │ -438bfc: |[438bfc] org.purple.smoke.TcpTlsNeighbor.connect:()V │ │ -438c0c: 6e10 6dbe 0a00 |0000: invoke-virtual {v10}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be6d │ │ -438c12: 0a00 |0003: move-result v0 │ │ -438c14: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -438c18: 0e00 |0006: return-void │ │ -438c1a: 6e10 74be 0a00 |0007: invoke-virtual {v10}, Lorg/purple/smoke/TcpTlsNeighbor;.isNetworkConnected:()Z // method@be74 │ │ -438c20: 0a00 |000a: move-result v0 │ │ -438c22: 3900 0800 |000b: if-nez v0, 0013 // +0008 │ │ -438c26: 1a00 0909 |000d: const-string v0, "A network is not available." // string@0909 │ │ -438c2a: 6e20 7bbe 0a00 |000f: invoke-virtual {v10, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ -438c30: 0e00 |0012: return-void │ │ -438c32: 54a0 1860 |0013: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6018 │ │ -438c36: 1601 0000 |0015: const-wide/16 v1, #int 0 // #0 │ │ -438c3a: 6e30 e360 1002 |0017: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -438c40: 54a0 1960 |001a: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@6019 │ │ -438c44: 6e30 e360 1002 |001c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -438c4a: 54a0 1f60 |001f: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601f │ │ -438c4e: 1201 |0021: const/4 v1, #int 0 // #0 │ │ -438c50: 6e20 da60 1000 |0022: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -438c56: 54a0 2360 |0025: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6023 │ │ -438c5a: 7100 065d 0000 |0027: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -438c60: 0b02 |002a: move-result-wide v2 │ │ -438c62: 6e30 e360 2003 |002b: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -438c68: 54a0 2460 |002e: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6024 │ │ -438c6c: 7100 0b5d 0000 |0030: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -438c72: 0b02 |0033: move-result-wide v2 │ │ -438c74: 6e30 e360 2003 |0034: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -438c7a: 2200 0d0b |0037: new-instance v0, Ljava/net/InetSocketAddress; // type@0b0d │ │ -438c7e: 54a2 2060 |0039: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_ipAddress:Ljava/lang/String; // field@6020 │ │ -438c82: 54a3 2160 |003b: iget-object v3, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@6021 │ │ -438c86: 6e10 dc60 0300 |003d: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -438c8c: 0a03 |0040: move-result v3 │ │ -438c8e: 7030 8e5d 2003 |0041: invoke-direct {v0, v2, v3}, Ljava/net/InetSocketAddress;.:(Ljava/lang/String;I)V // method@5d8e │ │ -438c94: 6002 6d00 |0044: sget v2, Landroid/os/Build$VERSION;.SDK_INT:I // field@006d │ │ -438c98: 1303 1500 |0046: const/16 v3, #int 21 // #15 │ │ -438c9c: 3432 0900 |0048: if-lt v2, v3, 0051 // +0009 │ │ -438ca0: 1a02 434d |004a: const-string v2, "TLS" // string@4d43 │ │ -438ca4: 7110 7861 0200 |004c: invoke-static {v2}, Ljavax/net/ssl/SSLContext;.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/SSLContext; // method@6178 │ │ -438caa: 0c02 |004f: move-result-object v2 │ │ -438cac: 2807 |0050: goto 0057 // +0007 │ │ -438cae: 1a02 a549 |0051: const-string v2, "SSL" // string@49a5 │ │ -438cb2: 7110 7861 0200 |0053: invoke-static {v2}, Ljavax/net/ssl/SSLContext;.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/SSLContext; // method@6178 │ │ -438cb8: 0c02 |0056: move-result-object v2 │ │ -438cba: 1203 |0057: const/4 v3, #int 0 // #0 │ │ -438cbc: 54a4 3160 |0058: iget-object v4, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_trustManagers:[Ljavax/net/ssl/TrustManager; // field@6031 │ │ -438cc0: 2205 4a0b |005a: new-instance v5, Ljava/security/SecureRandom; // type@0b4a │ │ -438cc4: 7010 3e5e 0500 |005c: invoke-direct {v5}, Ljava/security/SecureRandom;.:()V // method@5e3e │ │ -438cca: 6e40 7a61 3254 |005f: invoke-virtual {v2, v3, v4, v5}, Ljavax/net/ssl/SSLContext;.init:([Ljavax/net/ssl/KeyManager;[Ljavax/net/ssl/TrustManager;Ljava/security/SecureRandom;)V // method@617a │ │ -438cd0: 54a3 2960 |0062: iget-object v3, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6029 │ │ -438cd4: 1304 1027 |0064: const/16 v4, #int 10000 // #2710 │ │ -438cd8: 1505 0100 |0066: const/high16 v5, #int 65536 // #1 │ │ -438cdc: 1216 |0068: const/4 v6, #int 1 // #1 │ │ -438cde: 3903 2100 |0069: if-nez v3, 008a // +0021 │ │ -438ce2: 6e10 7961 0200 |006b: invoke-virtual {v2}, Ljavax/net/ssl/SSLContext;.getSocketFactory:()Ljavax/net/ssl/SSLSocketFactory; // method@6179 │ │ -438ce8: 0c02 |006e: move-result-object v2 │ │ -438cea: 6e10 9161 0200 |006f: invoke-virtual {v2}, Ljavax/net/ssl/SSLSocketFactory;.createSocket:()Ljava/net/Socket; // method@6191 │ │ -438cf0: 0c02 |0072: move-result-object v2 │ │ -438cf2: 1f02 1e0c |0073: check-cast v2, Ljavax/net/ssl/SSLSocket; // type@0c1e │ │ -438cf6: 5ba2 2e60 |0075: iput-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438cfa: 6e20 8b61 5200 |0077: invoke-virtual {v2, v5}, Ljavax/net/ssl/SSLSocket;.setReceiveBufferSize:(I)V // method@618b │ │ -438d00: 54a2 2e60 |007a: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438d04: 6e20 8c61 5200 |007c: invoke-virtual {v2, v5}, Ljavax/net/ssl/SSLSocket;.setSendBufferSize:(I)V // method@618c │ │ -438d0a: 54a2 2e60 |007f: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438d0e: 6e20 9061 6200 |0081: invoke-virtual {v2, v6}, Ljavax/net/ssl/SSLSocket;.setUseClientMode:(Z)V // method@6190 │ │ -438d14: 54a2 2e60 |0084: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438d18: 6e30 8061 0204 |0086: invoke-virtual {v2, v0, v4}, Ljavax/net/ssl/SSLSocket;.connect:(Ljava/net/SocketAddress;I)V // method@6180 │ │ -438d1e: 2844 |0089: goto 00cd // +0044 │ │ -438d20: 54a3 2c60 |008a: iget-object v3, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyType:Ljava/lang/String; // field@602c │ │ -438d24: 1a07 751c |008c: const-string v7, "HTTP" // string@1c75 │ │ -438d28: 6e20 b85c 7300 |008e: invoke-virtual {v3, v7}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -438d2e: 0a03 |0091: move-result v3 │ │ -438d30: 3803 1100 |0092: if-eqz v3, 00a3 // +0011 │ │ -438d34: 2203 120b |0094: new-instance v3, Ljava/net/Socket; // type@0b12 │ │ -438d38: 2207 110b |0096: new-instance v7, Ljava/net/Proxy; // type@0b11 │ │ -438d3c: 6208 e12c |0098: sget-object v8, Ljava/net/Proxy$Type;.HTTP:Ljava/net/Proxy$Type; // field@2ce1 │ │ -438d40: 54a9 2960 |009a: iget-object v9, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6029 │ │ -438d44: 7030 9d5d 8709 |009c: invoke-direct {v7, v8, v9}, Ljava/net/Proxy;.:(Ljava/net/Proxy$Type;Ljava/net/SocketAddress;)V // method@5d9d │ │ -438d4a: 7020 9f5d 7300 |009f: invoke-direct {v3, v7}, Ljava/net/Socket;.:(Ljava/net/Proxy;)V // method@5d9f │ │ -438d50: 280f |00a2: goto 00b1 // +000f │ │ -438d52: 2203 120b |00a3: new-instance v3, Ljava/net/Socket; // type@0b12 │ │ -438d56: 2207 110b |00a5: new-instance v7, Ljava/net/Proxy; // type@0b11 │ │ -438d5a: 6208 e22c |00a7: sget-object v8, Ljava/net/Proxy$Type;.SOCKS:Ljava/net/Proxy$Type; // field@2ce2 │ │ -438d5e: 54a9 2960 |00a9: iget-object v9, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6029 │ │ -438d62: 7030 9d5d 8709 |00ab: invoke-direct {v7, v8, v9}, Ljava/net/Proxy;.:(Ljava/net/Proxy$Type;Ljava/net/SocketAddress;)V // method@5d9d │ │ -438d68: 7020 9f5d 7300 |00ae: invoke-direct {v3, v7}, Ljava/net/Socket;.:(Ljava/net/Proxy;)V // method@5d9f │ │ -438d6e: 6e20 aa5d 5300 |00b1: invoke-virtual {v3, v5}, Ljava/net/Socket;.setReceiveBufferSize:(I)V // method@5daa │ │ -438d74: 6e20 ab5d 5300 |00b4: invoke-virtual {v3, v5}, Ljava/net/Socket;.setSendBufferSize:(I)V // method@5dab │ │ -438d7a: 6e30 a25d 0304 |00b7: invoke-virtual {v3, v0, v4}, Ljava/net/Socket;.connect:(Ljava/net/SocketAddress;I)V // method@5da2 │ │ -438d80: 6e10 7961 0200 |00ba: invoke-virtual {v2}, Ljavax/net/ssl/SSLContext;.getSocketFactory:()Ljavax/net/ssl/SSLSocketFactory; // method@6179 │ │ -438d86: 0c00 |00bd: move-result-object v0 │ │ -438d88: 54a2 2a60 |00be: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602a │ │ -438d8c: 52a4 2b60 |00c0: iget v4, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602b │ │ -438d90: 6e56 9261 3042 |00c2: invoke-virtual {v0, v3, v2, v4, v6}, Ljavax/net/ssl/SSLSocketFactory;.createSocket:(Ljava/net/Socket;Ljava/lang/String;IZ)Ljava/net/Socket; // method@6192 │ │ -438d96: 0c00 |00c5: move-result-object v0 │ │ -438d98: 1f00 1e0c |00c6: check-cast v0, Ljavax/net/ssl/SSLSocket; // type@0c1e │ │ -438d9c: 5ba0 2e60 |00c8: iput-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438da0: 6e20 9061 6000 |00ca: invoke-virtual {v0, v6}, Ljavax/net/ssl/SSLSocket;.setUseClientMode:(Z)V // method@6190 │ │ -438da6: 54a0 2e60 |00cd: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438daa: 2202 371b |00cf: new-instance v2, Lorg/purple/smoke/TcpTlsNeighbor$1; // type@1b37 │ │ -438dae: 7020 5fbe a200 |00d1: invoke-direct {v2, v10}, Lorg/purple/smoke/TcpTlsNeighbor$1;.:(Lorg/purple/smoke/TcpTlsNeighbor;)V // method@be5f │ │ -438db4: 6e20 7e61 2000 |00d4: invoke-virtual {v0, v2}, Ljavax/net/ssl/SSLSocket;.addHandshakeCompletedListener:(Ljavax/net/ssl/HandshakeCompletedListener;)V // method@617e │ │ -438dba: 54a0 2e60 |00d7: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438dbe: 54a2 2860 |00d9: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6028 │ │ -438dc2: 6e20 8a61 2000 |00db: invoke-virtual {v0, v2}, Ljavax/net/ssl/SSLSocket;.setEnabledProtocols:([Ljava/lang/String;)V // method@618a │ │ -438dc8: 54a0 2e60 |00de: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438dcc: 6e30 8d61 6001 |00e0: invoke-virtual {v0, v6, v1}, Ljavax/net/ssl/SSLSocket;.setSoLinger:(ZI)V // method@618d │ │ -438dd2: 54a0 2e60 |00e3: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438dd6: 1301 204e |00e5: const/16 v1, #int 20000 // #4e20 │ │ -438dda: 6e20 8e61 1000 |00e7: invoke-virtual {v0, v1}, Ljavax/net/ssl/SSLSocket;.setSoTimeout:(I)V // method@618e │ │ -438de0: 54a0 2e60 |00ea: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438de4: 6e20 8f61 6000 |00ec: invoke-virtual {v0, v6}, Ljavax/net/ssl/SSLSocket;.setTcpNoDelay:(Z)V // method@618f │ │ -438dea: 54a0 2f60 |00ef: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@602f │ │ -438dee: 7100 0b5d 0000 |00f1: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -438df4: 0b01 |00f4: move-result-wide v1 │ │ -438df6: 6e30 e360 1002 |00f5: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -438dfc: 1a00 0000 |00f8: const-string v0, "" // string@0000 │ │ -438e00: 6e20 7bbe 0a00 |00fa: invoke-virtual {v10, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ -438e06: 54a0 2560 |00fd: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6025 │ │ -438e0a: 1d00 |00ff: monitor-enter v0 │ │ -438e0c: 54a1 2560 |0100: iget-object v1, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6025 │ │ -438e10: 6e10 955c 0100 |0102: invoke-virtual {v1}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ -438e16: 1e00 |0105: monitor-exit v0 │ │ -438e18: 2831 |0106: goto 0137 // +0031 │ │ -438e1a: 0d01 |0107: move-exception v1 │ │ -438e1c: 1e00 |0108: monitor-exit v0 │ │ -438e1e: 2701 |0109: throw v1 │ │ -438e20: 0d00 |010a: move-exception v0 │ │ -438e22: 2201 f10a |010b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -438e26: 7010 ee5c 0100 |010d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -438e2c: 1a02 6a0d |0110: const-string v2, "An error (" // string@0d6a │ │ -438e30: 6e20 f95c 2100 |0112: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -438e36: 6e10 375c 0000 |0115: invoke-virtual {v0}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ -438e3c: 0c00 |0118: move-result-object v0 │ │ -438e3e: 6e20 f95c 0100 |0119: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -438e44: 1a00 fe03 |011c: const-string v0, ") occurred while attempting a connection (" // string@03fe │ │ -438e48: 6e20 f95c 0100 |011e: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -438e4e: 7100 0b5d 0000 |0121: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -438e54: 0b02 |0124: move-result-wide v2 │ │ -438e56: 6e30 f55c 2103 |0125: invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@5cf5 │ │ -438e5c: 1a00 0c04 |0128: const-string v0, ")." // string@040c │ │ -438e60: 6e20 f95c 0100 |012a: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -438e66: 6e10 035d 0100 |012d: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -438e6c: 0c00 |0130: move-result-object v0 │ │ -438e6e: 6e20 7bbe 0a00 |0131: invoke-virtual {v10, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ -438e74: 6e10 6ebe 0a00 |0134: invoke-virtual {v10}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be6e │ │ -438e7a: 0e00 |0137: return-void │ │ +438bf8: |[438bf8] org.purple.smoke.TcpTlsNeighbor.connect:()V │ │ +438c08: 6e10 6dbe 0a00 |0000: invoke-virtual {v10}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be6d │ │ +438c0e: 0a00 |0003: move-result v0 │ │ +438c10: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +438c14: 0e00 |0006: return-void │ │ +438c16: 6e10 74be 0a00 |0007: invoke-virtual {v10}, Lorg/purple/smoke/TcpTlsNeighbor;.isNetworkConnected:()Z // method@be74 │ │ +438c1c: 0a00 |000a: move-result v0 │ │ +438c1e: 3900 0800 |000b: if-nez v0, 0013 // +0008 │ │ +438c22: 1a00 0909 |000d: const-string v0, "A network is not available." // string@0909 │ │ +438c26: 6e20 7bbe 0a00 |000f: invoke-virtual {v10, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ +438c2c: 0e00 |0012: return-void │ │ +438c2e: 54a0 1860 |0013: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6018 │ │ +438c32: 1601 0000 |0015: const-wide/16 v1, #int 0 // #0 │ │ +438c36: 6e30 e360 1002 |0017: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +438c3c: 54a0 1960 |001a: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@6019 │ │ +438c40: 6e30 e360 1002 |001c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +438c46: 54a0 1f60 |001f: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601f │ │ +438c4a: 1201 |0021: const/4 v1, #int 0 // #0 │ │ +438c4c: 6e20 da60 1000 |0022: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +438c52: 54a0 2360 |0025: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6023 │ │ +438c56: 7100 065d 0000 |0027: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +438c5c: 0b02 |002a: move-result-wide v2 │ │ +438c5e: 6e30 e360 2003 |002b: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +438c64: 54a0 2460 |002e: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6024 │ │ +438c68: 7100 0b5d 0000 |0030: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +438c6e: 0b02 |0033: move-result-wide v2 │ │ +438c70: 6e30 e360 2003 |0034: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +438c76: 2200 0d0b |0037: new-instance v0, Ljava/net/InetSocketAddress; // type@0b0d │ │ +438c7a: 54a2 2060 |0039: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_ipAddress:Ljava/lang/String; // field@6020 │ │ +438c7e: 54a3 2160 |003b: iget-object v3, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@6021 │ │ +438c82: 6e10 dc60 0300 |003d: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +438c88: 0a03 |0040: move-result v3 │ │ +438c8a: 7030 8e5d 2003 |0041: invoke-direct {v0, v2, v3}, Ljava/net/InetSocketAddress;.:(Ljava/lang/String;I)V // method@5d8e │ │ +438c90: 6002 6d00 |0044: sget v2, Landroid/os/Build$VERSION;.SDK_INT:I // field@006d │ │ +438c94: 1303 1500 |0046: const/16 v3, #int 21 // #15 │ │ +438c98: 3432 0900 |0048: if-lt v2, v3, 0051 // +0009 │ │ +438c9c: 1a02 434d |004a: const-string v2, "TLS" // string@4d43 │ │ +438ca0: 7110 7861 0200 |004c: invoke-static {v2}, Ljavax/net/ssl/SSLContext;.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/SSLContext; // method@6178 │ │ +438ca6: 0c02 |004f: move-result-object v2 │ │ +438ca8: 2807 |0050: goto 0057 // +0007 │ │ +438caa: 1a02 a549 |0051: const-string v2, "SSL" // string@49a5 │ │ +438cae: 7110 7861 0200 |0053: invoke-static {v2}, Ljavax/net/ssl/SSLContext;.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/SSLContext; // method@6178 │ │ +438cb4: 0c02 |0056: move-result-object v2 │ │ +438cb6: 1203 |0057: const/4 v3, #int 0 // #0 │ │ +438cb8: 54a4 3160 |0058: iget-object v4, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_trustManagers:[Ljavax/net/ssl/TrustManager; // field@6031 │ │ +438cbc: 2205 4a0b |005a: new-instance v5, Ljava/security/SecureRandom; // type@0b4a │ │ +438cc0: 7010 3e5e 0500 |005c: invoke-direct {v5}, Ljava/security/SecureRandom;.:()V // method@5e3e │ │ +438cc6: 6e40 7a61 3254 |005f: invoke-virtual {v2, v3, v4, v5}, Ljavax/net/ssl/SSLContext;.init:([Ljavax/net/ssl/KeyManager;[Ljavax/net/ssl/TrustManager;Ljava/security/SecureRandom;)V // method@617a │ │ +438ccc: 54a3 2960 |0062: iget-object v3, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6029 │ │ +438cd0: 1304 1027 |0064: const/16 v4, #int 10000 // #2710 │ │ +438cd4: 1505 0100 |0066: const/high16 v5, #int 65536 // #1 │ │ +438cd8: 1216 |0068: const/4 v6, #int 1 // #1 │ │ +438cda: 3903 2100 |0069: if-nez v3, 008a // +0021 │ │ +438cde: 6e10 7961 0200 |006b: invoke-virtual {v2}, Ljavax/net/ssl/SSLContext;.getSocketFactory:()Ljavax/net/ssl/SSLSocketFactory; // method@6179 │ │ +438ce4: 0c02 |006e: move-result-object v2 │ │ +438ce6: 6e10 9161 0200 |006f: invoke-virtual {v2}, Ljavax/net/ssl/SSLSocketFactory;.createSocket:()Ljava/net/Socket; // method@6191 │ │ +438cec: 0c02 |0072: move-result-object v2 │ │ +438cee: 1f02 1e0c |0073: check-cast v2, Ljavax/net/ssl/SSLSocket; // type@0c1e │ │ +438cf2: 5ba2 2e60 |0075: iput-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438cf6: 6e20 8b61 5200 |0077: invoke-virtual {v2, v5}, Ljavax/net/ssl/SSLSocket;.setReceiveBufferSize:(I)V // method@618b │ │ +438cfc: 54a2 2e60 |007a: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438d00: 6e20 8c61 5200 |007c: invoke-virtual {v2, v5}, Ljavax/net/ssl/SSLSocket;.setSendBufferSize:(I)V // method@618c │ │ +438d06: 54a2 2e60 |007f: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438d0a: 6e20 9061 6200 |0081: invoke-virtual {v2, v6}, Ljavax/net/ssl/SSLSocket;.setUseClientMode:(Z)V // method@6190 │ │ +438d10: 54a2 2e60 |0084: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438d14: 6e30 8061 0204 |0086: invoke-virtual {v2, v0, v4}, Ljavax/net/ssl/SSLSocket;.connect:(Ljava/net/SocketAddress;I)V // method@6180 │ │ +438d1a: 2844 |0089: goto 00cd // +0044 │ │ +438d1c: 54a3 2c60 |008a: iget-object v3, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyType:Ljava/lang/String; // field@602c │ │ +438d20: 1a07 751c |008c: const-string v7, "HTTP" // string@1c75 │ │ +438d24: 6e20 b85c 7300 |008e: invoke-virtual {v3, v7}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +438d2a: 0a03 |0091: move-result v3 │ │ +438d2c: 3803 1100 |0092: if-eqz v3, 00a3 // +0011 │ │ +438d30: 2203 120b |0094: new-instance v3, Ljava/net/Socket; // type@0b12 │ │ +438d34: 2207 110b |0096: new-instance v7, Ljava/net/Proxy; // type@0b11 │ │ +438d38: 6208 e12c |0098: sget-object v8, Ljava/net/Proxy$Type;.HTTP:Ljava/net/Proxy$Type; // field@2ce1 │ │ +438d3c: 54a9 2960 |009a: iget-object v9, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6029 │ │ +438d40: 7030 9d5d 8709 |009c: invoke-direct {v7, v8, v9}, Ljava/net/Proxy;.:(Ljava/net/Proxy$Type;Ljava/net/SocketAddress;)V // method@5d9d │ │ +438d46: 7020 9f5d 7300 |009f: invoke-direct {v3, v7}, Ljava/net/Socket;.:(Ljava/net/Proxy;)V // method@5d9f │ │ +438d4c: 280f |00a2: goto 00b1 // +000f │ │ +438d4e: 2203 120b |00a3: new-instance v3, Ljava/net/Socket; // type@0b12 │ │ +438d52: 2207 110b |00a5: new-instance v7, Ljava/net/Proxy; // type@0b11 │ │ +438d56: 6208 e22c |00a7: sget-object v8, Ljava/net/Proxy$Type;.SOCKS:Ljava/net/Proxy$Type; // field@2ce2 │ │ +438d5a: 54a9 2960 |00a9: iget-object v9, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@6029 │ │ +438d5e: 7030 9d5d 8709 |00ab: invoke-direct {v7, v8, v9}, Ljava/net/Proxy;.:(Ljava/net/Proxy$Type;Ljava/net/SocketAddress;)V // method@5d9d │ │ +438d64: 7020 9f5d 7300 |00ae: invoke-direct {v3, v7}, Ljava/net/Socket;.:(Ljava/net/Proxy;)V // method@5d9f │ │ +438d6a: 6e20 aa5d 5300 |00b1: invoke-virtual {v3, v5}, Ljava/net/Socket;.setReceiveBufferSize:(I)V // method@5daa │ │ +438d70: 6e20 ab5d 5300 |00b4: invoke-virtual {v3, v5}, Ljava/net/Socket;.setSendBufferSize:(I)V // method@5dab │ │ +438d76: 6e30 a25d 0304 |00b7: invoke-virtual {v3, v0, v4}, Ljava/net/Socket;.connect:(Ljava/net/SocketAddress;I)V // method@5da2 │ │ +438d7c: 6e10 7961 0200 |00ba: invoke-virtual {v2}, Ljavax/net/ssl/SSLContext;.getSocketFactory:()Ljavax/net/ssl/SSLSocketFactory; // method@6179 │ │ +438d82: 0c00 |00bd: move-result-object v0 │ │ +438d84: 54a2 2a60 |00be: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602a │ │ +438d88: 52a4 2b60 |00c0: iget v4, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602b │ │ +438d8c: 6e56 9261 3042 |00c2: invoke-virtual {v0, v3, v2, v4, v6}, Ljavax/net/ssl/SSLSocketFactory;.createSocket:(Ljava/net/Socket;Ljava/lang/String;IZ)Ljava/net/Socket; // method@6192 │ │ +438d92: 0c00 |00c5: move-result-object v0 │ │ +438d94: 1f00 1e0c |00c6: check-cast v0, Ljavax/net/ssl/SSLSocket; // type@0c1e │ │ +438d98: 5ba0 2e60 |00c8: iput-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438d9c: 6e20 9061 6000 |00ca: invoke-virtual {v0, v6}, Ljavax/net/ssl/SSLSocket;.setUseClientMode:(Z)V // method@6190 │ │ +438da2: 54a0 2e60 |00cd: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438da6: 2202 371b |00cf: new-instance v2, Lorg/purple/smoke/TcpTlsNeighbor$1; // type@1b37 │ │ +438daa: 7020 5fbe a200 |00d1: invoke-direct {v2, v10}, Lorg/purple/smoke/TcpTlsNeighbor$1;.:(Lorg/purple/smoke/TcpTlsNeighbor;)V // method@be5f │ │ +438db0: 6e20 7e61 2000 |00d4: invoke-virtual {v0, v2}, Ljavax/net/ssl/SSLSocket;.addHandshakeCompletedListener:(Ljavax/net/ssl/HandshakeCompletedListener;)V // method@617e │ │ +438db6: 54a0 2e60 |00d7: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438dba: 54a2 2860 |00d9: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6028 │ │ +438dbe: 6e20 8a61 2000 |00db: invoke-virtual {v0, v2}, Ljavax/net/ssl/SSLSocket;.setEnabledProtocols:([Ljava/lang/String;)V // method@618a │ │ +438dc4: 54a0 2e60 |00de: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438dc8: 6e30 8d61 6001 |00e0: invoke-virtual {v0, v6, v1}, Ljavax/net/ssl/SSLSocket;.setSoLinger:(ZI)V // method@618d │ │ +438dce: 54a0 2e60 |00e3: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438dd2: 1301 204e |00e5: const/16 v1, #int 20000 // #4e20 │ │ +438dd6: 6e20 8e61 1000 |00e7: invoke-virtual {v0, v1}, Ljavax/net/ssl/SSLSocket;.setSoTimeout:(I)V // method@618e │ │ +438ddc: 54a0 2e60 |00ea: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438de0: 6e20 8f61 6000 |00ec: invoke-virtual {v0, v6}, Ljavax/net/ssl/SSLSocket;.setTcpNoDelay:(Z)V // method@618f │ │ +438de6: 54a0 2f60 |00ef: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@602f │ │ +438dea: 7100 0b5d 0000 |00f1: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +438df0: 0b01 |00f4: move-result-wide v1 │ │ +438df2: 6e30 e360 1002 |00f5: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +438df8: 1a00 0000 |00f8: const-string v0, "" // string@0000 │ │ +438dfc: 6e20 7bbe 0a00 |00fa: invoke-virtual {v10, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ +438e02: 54a0 2560 |00fd: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6025 │ │ +438e06: 1d00 |00ff: monitor-enter v0 │ │ +438e08: 54a1 2560 |0100: iget-object v1, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6025 │ │ +438e0c: 6e10 955c 0100 |0102: invoke-virtual {v1}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ +438e12: 1e00 |0105: monitor-exit v0 │ │ +438e14: 2831 |0106: goto 0137 // +0031 │ │ +438e16: 0d01 |0107: move-exception v1 │ │ +438e18: 1e00 |0108: monitor-exit v0 │ │ +438e1a: 2701 |0109: throw v1 │ │ +438e1c: 0d00 |010a: move-exception v0 │ │ +438e1e: 2201 f10a |010b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +438e22: 7010 ee5c 0100 |010d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +438e28: 1a02 6a0d |0110: const-string v2, "An error (" // string@0d6a │ │ +438e2c: 6e20 f95c 2100 |0112: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +438e32: 6e10 375c 0000 |0115: invoke-virtual {v0}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ +438e38: 0c00 |0118: move-result-object v0 │ │ +438e3a: 6e20 f95c 0100 |0119: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +438e40: 1a00 fe03 |011c: const-string v0, ") occurred while attempting a connection (" // string@03fe │ │ +438e44: 6e20 f95c 0100 |011e: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +438e4a: 7100 0b5d 0000 |0121: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +438e50: 0b02 |0124: move-result-wide v2 │ │ +438e52: 6e30 f55c 2103 |0125: invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@5cf5 │ │ +438e58: 1a00 0c04 |0128: const-string v0, ")." // string@040c │ │ +438e5c: 6e20 f95c 0100 |012a: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +438e62: 6e10 035d 0100 |012d: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +438e68: 0c00 |0130: move-result-object v0 │ │ +438e6a: 6e20 7bbe 0a00 |0131: invoke-virtual {v10, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ +438e70: 6e10 6ebe 0a00 |0134: invoke-virtual {v10}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be6e │ │ +438e76: 0e00 |0137: return-void │ │ catches : 3 │ │ 0x0013 - 0x0100 │ │ Ljava/lang/Exception; -> 0x010a │ │ 0x0100 - 0x0109 │ │ -> 0x0107 │ │ 0x0109 - 0x010a │ │ Ljava/lang/Exception; -> 0x010a │ │ @@ -1192381,34 +1192380,34 @@ │ │ type : '()Z' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 35 16-bit code units │ │ -4385f0: |[4385f0] org.purple.smoke.TcpTlsNeighbor.connected:()Z │ │ -438600: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -438602: 6e10 74be 0200 |0001: invoke-virtual {v2}, Lorg/purple/smoke/TcpTlsNeighbor;.isNetworkConnected:()Z // method@be74 │ │ -438608: 0a01 |0004: move-result v1 │ │ -43860a: 3801 1d00 |0005: if-eqz v1, 0022 // +001d │ │ -43860e: 5421 1f60 |0007: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601f │ │ -438612: 6e10 d860 0100 |0009: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -438618: 0a01 |000c: move-result v1 │ │ -43861a: 3801 1500 |000d: if-eqz v1, 0022 // +0015 │ │ -43861e: 5421 2260 |000f: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6022 │ │ -438622: 6e10 d860 0100 |0011: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -438628: 0a01 |0014: move-result v1 │ │ -43862a: 3801 0d00 |0015: if-eqz v1, 0022 // +000d │ │ -43862e: 5421 2e60 |0017: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438632: 3801 0900 |0019: if-eqz v1, 0022 // +0009 │ │ -438636: 6e10 8961 0100 |001b: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.isClosed:()Z // method@6189 │ │ -43863c: 0a01 |001e: move-result v1 │ │ -43863e: 3901 0300 |001f: if-nez v1, 0022 // +0003 │ │ -438642: 1210 |0021: const/4 v0, #int 1 // #1 │ │ -438644: 0f00 |0022: return v0 │ │ +4385ec: |[4385ec] org.purple.smoke.TcpTlsNeighbor.connected:()Z │ │ +4385fc: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +4385fe: 6e10 74be 0200 |0001: invoke-virtual {v2}, Lorg/purple/smoke/TcpTlsNeighbor;.isNetworkConnected:()Z // method@be74 │ │ +438604: 0a01 |0004: move-result v1 │ │ +438606: 3801 1d00 |0005: if-eqz v1, 0022 // +001d │ │ +43860a: 5421 1f60 |0007: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601f │ │ +43860e: 6e10 d860 0100 |0009: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +438614: 0a01 |000c: move-result v1 │ │ +438616: 3801 1500 |000d: if-eqz v1, 0022 // +0015 │ │ +43861a: 5421 2260 |000f: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6022 │ │ +43861e: 6e10 d860 0100 |0011: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +438624: 0a01 |0014: move-result v1 │ │ +438626: 3801 0d00 |0015: if-eqz v1, 0022 // +000d │ │ +43862a: 5421 2e60 |0017: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +43862e: 3801 0900 |0019: if-eqz v1, 0022 // +0009 │ │ +438632: 6e10 8961 0100 |001b: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.isClosed:()Z // method@6189 │ │ +438638: 0a01 |001e: move-result v1 │ │ +43863a: 3901 0300 |001f: if-nez v1, 0022 // +0003 │ │ +43863e: 1210 |0021: const/4 v0, #int 1 // #1 │ │ +438640: 0f00 |0022: return v0 │ │ catches : 1 │ │ 0x0001 - 0x001f │ │ Ljava/lang/Exception; -> 0x0022 │ │ positions : │ │ 0x0001 line=98 │ │ 0x0009 line=99 │ │ 0x0011 line=100 │ │ @@ -1192421,56 +1192420,56 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 7 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 90 16-bit code units │ │ -438ea0: |[438ea0] org.purple.smoke.TcpTlsNeighbor.disconnect:()V │ │ -438eb0: 6f10 10bc 0600 |0000: invoke-super {v6}, Lorg/purple/smoke/Neighbor;.disconnect:()V // method@bc10 │ │ -438eb6: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -438eb8: 1201 |0004: const/4 v1, #int 0 // #0 │ │ -438eba: 1602 0000 |0005: const-wide/16 v2, #int 0 // #0 │ │ -438ebe: 5464 2e60 |0007: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438ec2: 3804 2c00 |0009: if-eqz v4, 0035 // +002c │ │ -438ec6: 6e10 7f61 0400 |000b: invoke-virtual {v4}, Ljavax/net/ssl/SSLSocket;.close:()V // method@617f │ │ -438ecc: 2827 |000e: goto 0035 // +0027 │ │ -438ece: 0d04 |000f: move-exception v4 │ │ -438ed0: 5465 1860 |0010: iget-object v5, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6018 │ │ -438ed4: 6e30 e360 2503 |0012: invoke-virtual {v5, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -438eda: 5465 1960 |0015: iget-object v5, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@6019 │ │ -438ede: 6e30 e360 2503 |0017: invoke-virtual {v5, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -438ee4: 5465 1f60 |001a: iget-object v5, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601f │ │ -438ee8: 6e20 da60 1500 |001c: invoke-virtual {v5, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -438eee: 5465 2260 |001f: iget-object v5, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6022 │ │ -438ef2: 6e20 da60 1500 |0021: invoke-virtual {v5, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -438ef8: 5461 2360 |0024: iget-object v1, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6023 │ │ -438efc: 6e30 e360 2103 |0026: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -438f02: 5b60 2e60 |0029: iput-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438f06: 5460 2f60 |002b: iget-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@602f │ │ -438f0a: 7100 0b5d 0000 |002d: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -438f10: 0b01 |0030: move-result-wide v1 │ │ -438f12: 6e30 e360 1002 |0031: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -438f18: 2704 |0034: throw v4 │ │ -438f1a: 5464 1860 |0035: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6018 │ │ -438f1e: 6e30 e360 2403 |0037: invoke-virtual {v4, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -438f24: 5464 1960 |003a: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@6019 │ │ -438f28: 6e30 e360 2403 |003c: invoke-virtual {v4, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -438f2e: 5464 1f60 |003f: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601f │ │ -438f32: 6e20 da60 1400 |0041: invoke-virtual {v4, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -438f38: 5464 2260 |0044: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6022 │ │ -438f3c: 6e20 da60 1400 |0046: invoke-virtual {v4, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -438f42: 5461 2360 |0049: iget-object v1, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6023 │ │ -438f46: 6e30 e360 2103 |004b: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -438f4c: 5b60 2e60 |004e: iput-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438f50: 5460 2f60 |0050: iget-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@602f │ │ -438f54: 7100 0b5d 0000 |0052: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -438f5a: 0b01 |0055: move-result-wide v1 │ │ -438f5c: 6e30 e360 1002 |0056: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -438f62: 0e00 |0059: return-void │ │ +438e9c: |[438e9c] org.purple.smoke.TcpTlsNeighbor.disconnect:()V │ │ +438eac: 6f10 10bc 0600 |0000: invoke-super {v6}, Lorg/purple/smoke/Neighbor;.disconnect:()V // method@bc10 │ │ +438eb2: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +438eb4: 1201 |0004: const/4 v1, #int 0 // #0 │ │ +438eb6: 1602 0000 |0005: const-wide/16 v2, #int 0 // #0 │ │ +438eba: 5464 2e60 |0007: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438ebe: 3804 2c00 |0009: if-eqz v4, 0035 // +002c │ │ +438ec2: 6e10 7f61 0400 |000b: invoke-virtual {v4}, Ljavax/net/ssl/SSLSocket;.close:()V // method@617f │ │ +438ec8: 2827 |000e: goto 0035 // +0027 │ │ +438eca: 0d04 |000f: move-exception v4 │ │ +438ecc: 5465 1860 |0010: iget-object v5, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6018 │ │ +438ed0: 6e30 e360 2503 |0012: invoke-virtual {v5, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +438ed6: 5465 1960 |0015: iget-object v5, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@6019 │ │ +438eda: 6e30 e360 2503 |0017: invoke-virtual {v5, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +438ee0: 5465 1f60 |001a: iget-object v5, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601f │ │ +438ee4: 6e20 da60 1500 |001c: invoke-virtual {v5, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +438eea: 5465 2260 |001f: iget-object v5, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6022 │ │ +438eee: 6e20 da60 1500 |0021: invoke-virtual {v5, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +438ef4: 5461 2360 |0024: iget-object v1, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6023 │ │ +438ef8: 6e30 e360 2103 |0026: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +438efe: 5b60 2e60 |0029: iput-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438f02: 5460 2f60 |002b: iget-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@602f │ │ +438f06: 7100 0b5d 0000 |002d: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +438f0c: 0b01 |0030: move-result-wide v1 │ │ +438f0e: 6e30 e360 1002 |0031: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +438f14: 2704 |0034: throw v4 │ │ +438f16: 5464 1860 |0035: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6018 │ │ +438f1a: 6e30 e360 2403 |0037: invoke-virtual {v4, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +438f20: 5464 1960 |003a: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@6019 │ │ +438f24: 6e30 e360 2403 |003c: invoke-virtual {v4, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +438f2a: 5464 1f60 |003f: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601f │ │ +438f2e: 6e20 da60 1400 |0041: invoke-virtual {v4, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +438f34: 5464 2260 |0044: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6022 │ │ +438f38: 6e20 da60 1400 |0046: invoke-virtual {v4, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +438f3e: 5461 2360 |0049: iget-object v1, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6023 │ │ +438f42: 6e30 e360 2103 |004b: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +438f48: 5b60 2e60 |004e: iput-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438f4c: 5460 2f60 |0050: iget-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@602f │ │ +438f50: 7100 0b5d 0000 |0052: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +438f56: 0b01 |0055: move-result-wide v1 │ │ +438f58: 6e30 e360 1002 |0056: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +438f5e: 0e00 |0059: return-void │ │ catches : 1 │ │ 0x0007 - 0x000e │ │ Ljava/lang/Exception; -> 0x0035 │ │ -> 0x000f │ │ positions : │ │ 0x0000 line=292 │ │ 0x0007 line=296 │ │ @@ -1192498,36 +1192497,36 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 38 16-bit code units │ │ -438774: |[438774] org.purple.smoke.TcpTlsNeighbor.getLocalIp:()Ljava/lang/String; │ │ -438784: 5420 2e60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438788: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ -43878c: 6e10 8361 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getLocalAddress:()Ljava/net/InetAddress; // method@6183 │ │ -438792: 0c00 |0007: move-result-object v0 │ │ -438794: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ -438798: 5420 2e60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -43879c: 6e10 8361 0000 |000c: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getLocalAddress:()Ljava/net/InetAddress; // method@6183 │ │ -4387a2: 0c00 |000f: move-result-object v0 │ │ -4387a4: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ -4387aa: 0c00 |0013: move-result-object v0 │ │ -4387ac: 1100 |0014: return-object v0 │ │ -4387ae: 0000 |0015: nop // spacer │ │ -4387b0: 5420 3260 |0016: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_version:Ljava/lang/String; // field@6032 │ │ -4387b4: 1a01 a91d |0018: const-string v1, "IPv4" // string@1da9 │ │ -4387b8: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4387be: 0a00 |001d: move-result v0 │ │ -4387c0: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ -4387c4: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ -4387c8: 1100 |0022: return-object v0 │ │ -4387ca: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ -4387ce: 1100 |0025: return-object v0 │ │ +438770: |[438770] org.purple.smoke.TcpTlsNeighbor.getLocalIp:()Ljava/lang/String; │ │ +438780: 5420 2e60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438784: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ +438788: 6e10 8361 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getLocalAddress:()Ljava/net/InetAddress; // method@6183 │ │ +43878e: 0c00 |0007: move-result-object v0 │ │ +438790: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ +438794: 5420 2e60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438798: 6e10 8361 0000 |000c: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getLocalAddress:()Ljava/net/InetAddress; // method@6183 │ │ +43879e: 0c00 |000f: move-result-object v0 │ │ +4387a0: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ +4387a6: 0c00 |0013: move-result-object v0 │ │ +4387a8: 1100 |0014: return-object v0 │ │ +4387aa: 0000 |0015: nop // spacer │ │ +4387ac: 5420 3260 |0016: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_version:Ljava/lang/String; // field@6032 │ │ +4387b0: 1a01 a91d |0018: const-string v1, "IPv4" // string@1da9 │ │ +4387b4: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4387ba: 0a00 |001d: move-result v0 │ │ +4387bc: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ +4387c0: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ +4387c4: 1100 |0022: return-object v0 │ │ +4387c6: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ +4387ca: 1100 |0025: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x0014 │ │ Ljava/lang/Exception; -> 0x0015 │ │ positions : │ │ 0x0000 line=63 │ │ 0x000a line=64 │ │ 0x0016 line=70 │ │ @@ -1192539,26 +1192538,26 @@ │ │ type : '()I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 19 16-bit code units │ │ -438658: |[438658] org.purple.smoke.TcpTlsNeighbor.getLocalPort:()I │ │ -438668: 5410 2e60 |0000: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -43866c: 3800 0f00 |0002: if-eqz v0, 0011 // +000f │ │ -438670: 6e10 8961 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.isClosed:()Z // method@6189 │ │ -438676: 0a00 |0007: move-result v0 │ │ -438678: 3900 0900 |0008: if-nez v0, 0011 // +0009 │ │ -43867c: 5410 2e60 |000a: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438680: 6e10 8461 0000 |000c: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getLocalPort:()I // method@6184 │ │ -438686: 0a00 |000f: move-result v0 │ │ -438688: 0f00 |0010: return v0 │ │ -43868a: 1200 |0011: const/4 v0, #int 0 // #0 │ │ -43868c: 0f00 |0012: return v0 │ │ +438654: |[438654] org.purple.smoke.TcpTlsNeighbor.getLocalPort:()I │ │ +438664: 5410 2e60 |0000: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438668: 3800 0f00 |0002: if-eqz v0, 0011 // +000f │ │ +43866c: 6e10 8961 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.isClosed:()Z // method@6189 │ │ +438672: 0a00 |0007: move-result v0 │ │ +438674: 3900 0900 |0008: if-nez v0, 0011 // +0009 │ │ +438678: 5410 2e60 |000a: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +43867c: 6e10 8461 0000 |000c: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getLocalPort:()I // method@6184 │ │ +438682: 0a00 |000f: move-result v0 │ │ +438684: 0f00 |0010: return v0 │ │ +438686: 1200 |0011: const/4 v0, #int 0 // #0 │ │ +438688: 0f00 |0012: return v0 │ │ catches : 1 │ │ 0x0000 - 0x0010 │ │ Ljava/lang/Exception; -> 0x0011 │ │ positions : │ │ 0x0000 line=115 │ │ 0x000a line=116 │ │ locals : │ │ @@ -1192569,47 +1192568,47 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 66 16-bit code units │ │ -4387e0: |[4387e0] org.purple.smoke.TcpTlsNeighbor.getSessionCipher:()Ljava/lang/String; │ │ -4387f0: 5420 2e60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -4387f4: 3800 3d00 |0002: if-eqz v0, 003f // +003d │ │ -4387f8: 6e10 8761 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getSession:()Ljavax/net/ssl/SSLSession; // method@6187 │ │ -4387fe: 0c00 |0007: move-result-object v0 │ │ -438800: 3800 3700 |0008: if-eqz v0, 003f // +0037 │ │ -438804: 5420 2e60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438808: 6e10 8761 0000 |000c: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getSession:()Ljavax/net/ssl/SSLSession; // method@6187 │ │ -43880e: 0c00 |000f: move-result-object v0 │ │ -438810: 7210 7d61 0000 |0010: invoke-interface {v0}, Ljavax/net/ssl/SSLSession;.isValid:()Z // method@617d │ │ -438816: 0a00 |0013: move-result v0 │ │ -438818: 3800 2b00 |0014: if-eqz v0, 003f // +002b │ │ -43881c: 2200 f10a |0016: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ -438820: 7010 ee5c 0000 |0018: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -438826: 5421 2e60 |001b: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -43882a: 6e10 8761 0100 |001d: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getSession:()Ljavax/net/ssl/SSLSession; // method@6187 │ │ -438830: 0c01 |0020: move-result-object v1 │ │ -438832: 7210 7b61 0100 |0021: invoke-interface {v1}, Ljavax/net/ssl/SSLSession;.getCipherSuite:()Ljava/lang/String; // method@617b │ │ -438838: 0c01 |0024: move-result-object v1 │ │ -43883a: 6e20 f95c 1000 |0025: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -438840: 1a01 ca55 |0028: const-string v1, "_" // string@55ca │ │ -438844: 6e20 f95c 1000 |002a: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43884a: 5421 2e60 |002d: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -43884e: 6e10 8761 0100 |002f: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getSession:()Ljavax/net/ssl/SSLSession; // method@6187 │ │ -438854: 0c01 |0032: move-result-object v1 │ │ -438856: 7210 7c61 0100 |0033: invoke-interface {v1}, Ljavax/net/ssl/SSLSession;.getProtocol:()Ljava/lang/String; // method@617c │ │ -43885c: 0c01 |0036: move-result-object v1 │ │ -43885e: 6e20 f95c 1000 |0037: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -438864: 6e10 035d 0000 |003a: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -43886a: 0c00 |003d: move-result-object v0 │ │ -43886c: 1100 |003e: return-object v0 │ │ -43886e: 1a00 0000 |003f: const-string v0, "" // string@0000 │ │ -438872: 1100 |0041: return-object v0 │ │ +4387dc: |[4387dc] org.purple.smoke.TcpTlsNeighbor.getSessionCipher:()Ljava/lang/String; │ │ +4387ec: 5420 2e60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +4387f0: 3800 3d00 |0002: if-eqz v0, 003f // +003d │ │ +4387f4: 6e10 8761 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getSession:()Ljavax/net/ssl/SSLSession; // method@6187 │ │ +4387fa: 0c00 |0007: move-result-object v0 │ │ +4387fc: 3800 3700 |0008: if-eqz v0, 003f // +0037 │ │ +438800: 5420 2e60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438804: 6e10 8761 0000 |000c: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getSession:()Ljavax/net/ssl/SSLSession; // method@6187 │ │ +43880a: 0c00 |000f: move-result-object v0 │ │ +43880c: 7210 7d61 0000 |0010: invoke-interface {v0}, Ljavax/net/ssl/SSLSession;.isValid:()Z // method@617d │ │ +438812: 0a00 |0013: move-result v0 │ │ +438814: 3800 2b00 |0014: if-eqz v0, 003f // +002b │ │ +438818: 2200 f10a |0016: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ +43881c: 7010 ee5c 0000 |0018: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +438822: 5421 2e60 |001b: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438826: 6e10 8761 0100 |001d: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getSession:()Ljavax/net/ssl/SSLSession; // method@6187 │ │ +43882c: 0c01 |0020: move-result-object v1 │ │ +43882e: 7210 7b61 0100 |0021: invoke-interface {v1}, Ljavax/net/ssl/SSLSession;.getCipherSuite:()Ljava/lang/String; // method@617b │ │ +438834: 0c01 |0024: move-result-object v1 │ │ +438836: 6e20 f95c 1000 |0025: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43883c: 1a01 ca55 |0028: const-string v1, "_" // string@55ca │ │ +438840: 6e20 f95c 1000 |002a: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +438846: 5421 2e60 |002d: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +43884a: 6e10 8761 0100 |002f: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getSession:()Ljavax/net/ssl/SSLSession; // method@6187 │ │ +438850: 0c01 |0032: move-result-object v1 │ │ +438852: 7210 7c61 0100 |0033: invoke-interface {v1}, Ljavax/net/ssl/SSLSession;.getProtocol:()Ljava/lang/String; // method@617c │ │ +438858: 0c01 |0036: move-result-object v1 │ │ +43885a: 6e20 f95c 1000 |0037: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +438860: 6e10 035d 0000 |003a: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +438866: 0c00 |003d: move-result-object v0 │ │ +438868: 1100 |003e: return-object v0 │ │ +43886a: 1a00 0000 |003f: const-string v0, "" // string@0000 │ │ +43886e: 1100 |0041: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x003e │ │ Ljava/lang/Exception; -> 0x003f │ │ positions : │ │ 0x0000 line=80 │ │ 0x0004 line=81 │ │ 0x000c line=82 │ │ @@ -1192623,36 +1192622,36 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 38 16-bit code units │ │ -438884: |[438884] org.purple.smoke.TcpTlsNeighbor.remoteIpAddress:()Ljava/lang/String; │ │ -438894: 5420 2e60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438898: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ -43889c: 6e10 8161 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getInetAddress:()Ljava/net/InetAddress; // method@6181 │ │ -4388a2: 0c00 |0007: move-result-object v0 │ │ -4388a4: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ -4388a8: 5420 2e60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -4388ac: 6e10 8161 0000 |000c: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getInetAddress:()Ljava/net/InetAddress; // method@6181 │ │ -4388b2: 0c00 |000f: move-result-object v0 │ │ -4388b4: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ -4388ba: 0c00 |0013: move-result-object v0 │ │ -4388bc: 1100 |0014: return-object v0 │ │ -4388be: 0000 |0015: nop // spacer │ │ -4388c0: 5420 3260 |0016: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_version:Ljava/lang/String; // field@6032 │ │ -4388c4: 1a01 a91d |0018: const-string v1, "IPv4" // string@1da9 │ │ -4388c8: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4388ce: 0a00 |001d: move-result v0 │ │ -4388d0: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ -4388d4: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ -4388d8: 1100 |0022: return-object v0 │ │ -4388da: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ -4388de: 1100 |0025: return-object v0 │ │ +438880: |[438880] org.purple.smoke.TcpTlsNeighbor.remoteIpAddress:()Ljava/lang/String; │ │ +438890: 5420 2e60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438894: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ +438898: 6e10 8161 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getInetAddress:()Ljava/net/InetAddress; // method@6181 │ │ +43889e: 0c00 |0007: move-result-object v0 │ │ +4388a0: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ +4388a4: 5420 2e60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +4388a8: 6e10 8161 0000 |000c: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getInetAddress:()Ljava/net/InetAddress; // method@6181 │ │ +4388ae: 0c00 |000f: move-result-object v0 │ │ +4388b0: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ +4388b6: 0c00 |0013: move-result-object v0 │ │ +4388b8: 1100 |0014: return-object v0 │ │ +4388ba: 0000 |0015: nop // spacer │ │ +4388bc: 5420 3260 |0016: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_version:Ljava/lang/String; // field@6032 │ │ +4388c0: 1a01 a91d |0018: const-string v1, "IPv4" // string@1da9 │ │ +4388c4: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4388ca: 0a00 |001d: move-result v0 │ │ +4388cc: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ +4388d0: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ +4388d4: 1100 |0022: return-object v0 │ │ +4388d6: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ +4388da: 1100 |0025: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x0014 │ │ Ljava/lang/Exception; -> 0x0015 │ │ positions : │ │ 0x0000 line=549 │ │ 0x000a line=550 │ │ 0x0016 line=556 │ │ @@ -1192664,24 +1192663,24 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 16 16-bit code units │ │ -4388f0: |[4388f0] org.purple.smoke.TcpTlsNeighbor.remotePort:()Ljava/lang/String; │ │ -438900: 5410 2e60 |0000: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -438904: 3800 0b00 |0002: if-eqz v0, 000d // +000b │ │ -438908: 6e10 8661 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getPort:()I // method@6186 │ │ -43890e: 0a00 |0007: move-result v0 │ │ -438910: 7110 d55c 0000 |0008: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -438916: 0c00 |000b: move-result-object v0 │ │ -438918: 1100 |000c: return-object v0 │ │ -43891a: 1a00 c704 |000d: const-string v0, "0" // string@04c7 │ │ -43891e: 1100 |000f: return-object v0 │ │ +4388ec: |[4388ec] org.purple.smoke.TcpTlsNeighbor.remotePort:()Ljava/lang/String; │ │ +4388fc: 5410 2e60 |0000: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +438900: 3800 0b00 |0002: if-eqz v0, 000d // +000b │ │ +438904: 6e10 8661 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getPort:()I // method@6186 │ │ +43890a: 0a00 |0007: move-result v0 │ │ +43890c: 7110 d55c 0000 |0008: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +438912: 0c00 |000b: move-result-object v0 │ │ +438914: 1100 |000c: return-object v0 │ │ +438916: 1a00 c704 |000d: const-string v0, "0" // string@04c7 │ │ +43891a: 1100 |000f: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x000c │ │ Ljava/lang/Exception; -> 0x000d │ │ positions : │ │ 0x0000 line=566 │ │ 0x0004 line=567 │ │ locals : │ │ @@ -1192692,46 +1192691,46 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -438930: |[438930] org.purple.smoke.TcpTlsNeighbor.remoteScopeId:()Ljava/lang/String; │ │ -438940: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ -438944: 1100 |0002: return-object v0 │ │ +43892c: |[43892c] org.purple.smoke.TcpTlsNeighbor.remoteScopeId:()Ljava/lang/String; │ │ +43893c: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ +438940: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #10 : (in Lorg/purple/smoke/TcpTlsNeighbor;) │ │ name : 'send' │ │ type : '(Ljava/lang/String;)I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 26 16-bit code units │ │ -438730: |[438730] org.purple.smoke.TcpTlsNeighbor.send:(Ljava/lang/String;)I │ │ -438740: 6e10 6dbe 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be6d │ │ -438746: 0a00 |0003: move-result v0 │ │ -438748: 3800 1400 |0004: if-eqz v0, 0018 // +0014 │ │ -43874c: 3802 1200 |0006: if-eqz v2, 0018 // +0012 │ │ -438750: 6e10 c55c 0200 |0008: invoke-virtual {v2}, Ljava/lang/String;.length:()I // method@5cc5 │ │ -438756: 0a00 |000b: move-result v0 │ │ -438758: 3900 0300 |000c: if-nez v0, 000f // +0003 │ │ -43875c: 280a |000e: goto 0018 // +000a │ │ -43875e: 6e10 bc5c 0200 |000f: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -438764: 0c02 |0012: move-result-object v2 │ │ -438766: 6e20 7abe 2100 |0013: invoke-virtual {v1, v2}, Lorg/purple/smoke/TcpTlsNeighbor;.send:([B)I // method@be7a │ │ -43876c: 0a02 |0016: move-result v2 │ │ -43876e: 0f02 |0017: return v2 │ │ -438770: 1202 |0018: const/4 v2, #int 0 // #0 │ │ -438772: 0f02 |0019: return v2 │ │ +43872c: |[43872c] org.purple.smoke.TcpTlsNeighbor.send:(Ljava/lang/String;)I │ │ +43873c: 6e10 6dbe 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be6d │ │ +438742: 0a00 |0003: move-result v0 │ │ +438744: 3800 1400 |0004: if-eqz v0, 0018 // +0014 │ │ +438748: 3802 1200 |0006: if-eqz v2, 0018 // +0012 │ │ +43874c: 6e10 c55c 0200 |0008: invoke-virtual {v2}, Ljava/lang/String;.length:()I // method@5cc5 │ │ +438752: 0a00 |000b: move-result v0 │ │ +438754: 3900 0300 |000c: if-nez v0, 000f // +0003 │ │ +438758: 280a |000e: goto 0018 // +000a │ │ +43875a: 6e10 bc5c 0200 |000f: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +438760: 0c02 |0012: move-result-object v2 │ │ +438762: 6e20 7abe 2100 |0013: invoke-virtual {v1, v2}, Lorg/purple/smoke/TcpTlsNeighbor;.send:([B)I // method@be7a │ │ +438768: 0a02 |0016: move-result v2 │ │ +43876a: 0f02 |0017: return v2 │ │ +43876c: 1202 |0018: const/4 v2, #int 0 // #0 │ │ +43876e: 0f02 |0019: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=127 │ │ 0x000f line=130 │ │ locals : │ │ 0x0000 - 0x001a reg=1 this Lorg/purple/smoke/TcpTlsNeighbor; │ │ 0x0000 - 0x001a reg=2 (null) Ljava/lang/String; │ │ @@ -1192741,46 +1192740,46 @@ │ │ type : '([B)I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 56 16-bit code units │ │ -4386a0: |[4386a0] org.purple.smoke.TcpTlsNeighbor.send:([B)I │ │ -4386b0: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -4386b2: 3805 3600 |0001: if-eqz v5, 0037 // +0036 │ │ -4386b6: 2151 |0003: array-length v1, v5 │ │ -4386b8: 3801 3300 |0004: if-eqz v1, 0037 // +0033 │ │ -4386bc: 6e10 6dbe 0400 |0006: invoke-virtual {v4}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be6d │ │ -4386c2: 0a01 |0009: move-result v1 │ │ -4386c4: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ -4386c8: 282b |000c: goto 0037 // +002b │ │ -4386ca: 5441 2e60 |000d: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -4386ce: 3801 1f00 |000f: if-eqz v1, 002e // +001f │ │ -4386d2: 6e10 8561 0100 |0011: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getOutputStream:()Ljava/io/OutputStream; // method@6185 │ │ -4386d8: 0c01 |0014: move-result-object v1 │ │ -4386da: 3901 0300 |0015: if-nez v1, 0018 // +0003 │ │ -4386de: 2817 |0017: goto 002e // +0017 │ │ -4386e0: 5441 2e60 |0018: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ -4386e4: 6e10 8561 0100 |001a: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getOutputStream:()Ljava/io/OutputStream; // method@6185 │ │ -4386ea: 0c01 |001d: move-result-object v1 │ │ -4386ec: 6e20 db5b 5100 |001e: invoke-virtual {v1, v5}, Ljava/io/OutputStream;.write:([B)V // method@5bdb │ │ -4386f2: 7110 23bb 0500 |0021: invoke-static {v5}, Lorg/purple/smoke/Kernel;.writeCongestionDigest:([B)V // method@bb23 │ │ -4386f8: 5441 1960 |0024: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@6019 │ │ -4386fc: 2152 |0026: array-length v2, v5 │ │ -4386fe: 8122 |0027: int-to-long v2, v2 │ │ -438700: 6e30 e260 2103 |0028: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e2 │ │ -438706: 2155 |002b: array-length v5, v5 │ │ -438708: b050 |002c: add-int/2addr v0, v5 │ │ -43870a: 280a |002d: goto 0037 // +000a │ │ -43870c: 0f00 |002e: return v0 │ │ -43870e: 1a05 0e09 |002f: const-string v5, "A socket error occurred on send()." // string@090e │ │ -438712: 6e20 7bbe 5400 |0031: invoke-virtual {v4, v5}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ -438718: 6e10 6ebe 0400 |0034: invoke-virtual {v4}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be6e │ │ -43871e: 0f00 |0037: return v0 │ │ +43869c: |[43869c] org.purple.smoke.TcpTlsNeighbor.send:([B)I │ │ +4386ac: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +4386ae: 3805 3600 |0001: if-eqz v5, 0037 // +0036 │ │ +4386b2: 2151 |0003: array-length v1, v5 │ │ +4386b4: 3801 3300 |0004: if-eqz v1, 0037 // +0033 │ │ +4386b8: 6e10 6dbe 0400 |0006: invoke-virtual {v4}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be6d │ │ +4386be: 0a01 |0009: move-result v1 │ │ +4386c0: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ +4386c4: 282b |000c: goto 0037 // +002b │ │ +4386c6: 5441 2e60 |000d: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +4386ca: 3801 1f00 |000f: if-eqz v1, 002e // +001f │ │ +4386ce: 6e10 8561 0100 |0011: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getOutputStream:()Ljava/io/OutputStream; // method@6185 │ │ +4386d4: 0c01 |0014: move-result-object v1 │ │ +4386d6: 3901 0300 |0015: if-nez v1, 0018 // +0003 │ │ +4386da: 2817 |0017: goto 002e // +0017 │ │ +4386dc: 5441 2e60 |0018: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602e │ │ +4386e0: 6e10 8561 0100 |001a: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getOutputStream:()Ljava/io/OutputStream; // method@6185 │ │ +4386e6: 0c01 |001d: move-result-object v1 │ │ +4386e8: 6e20 db5b 5100 |001e: invoke-virtual {v1, v5}, Ljava/io/OutputStream;.write:([B)V // method@5bdb │ │ +4386ee: 7110 23bb 0500 |0021: invoke-static {v5}, Lorg/purple/smoke/Kernel;.writeCongestionDigest:([B)V // method@bb23 │ │ +4386f4: 5441 1960 |0024: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@6019 │ │ +4386f8: 2152 |0026: array-length v2, v5 │ │ +4386fa: 8122 |0027: int-to-long v2, v2 │ │ +4386fc: 6e30 e260 2103 |0028: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e2 │ │ +438702: 2155 |002b: array-length v5, v5 │ │ +438704: b050 |002c: add-int/2addr v0, v5 │ │ +438706: 280a |002d: goto 0037 // +000a │ │ +438708: 0f00 |002e: return v0 │ │ +43870a: 1a05 0e09 |002f: const-string v5, "A socket error occurred on send()." // string@090e │ │ +43870e: 6e20 7bbe 5400 |0031: invoke-virtual {v4, v5}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be7b │ │ +438714: 6e10 6ebe 0400 |0034: invoke-virtual {v4}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be6e │ │ +43871a: 0f00 |0037: return v0 │ │ catches : 1 │ │ 0x000d - 0x002c │ │ Ljava/lang/Exception; -> 0x002f │ │ positions : │ │ 0x0003 line=135 │ │ 0x000d line=142 │ │ 0x0018 line=145 │ │ @@ -1192798,17 +1192797,17 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -438948: |[438948] org.purple.smoke.TcpTlsNeighbor.transport:()Ljava/lang/String; │ │ -438958: 1a00 0a4d |0000: const-string v0, "TCP" // string@4d0a │ │ -43895c: 1100 |0002: return-object v0 │ │ +438944: |[438944] org.purple.smoke.TcpTlsNeighbor.transport:()Ljava/lang/String; │ │ +438954: 1a00 0a4d |0000: const-string v0, "TCP" // string@4d0a │ │ +438958: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ source_file_idx : 20083 (TcpTlsNeighbor.java) │ │ │ │ Class #4376 header: │ │ @@ -1192843,34 +1192842,34 @@ │ │ type : '(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 15 │ │ ins : 7 │ │ outs : 8 │ │ insns size : 32 16-bit code units │ │ -4397b0: |[4397b0] org.purple.smoke.UdpMulticastNeighbor.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V │ │ -4397c0: 1a05 ff4f |0000: const-string v5, "UDP" // string@4fff │ │ -4397c4: 0780 |0002: move-object v0, v8 │ │ -4397c6: 0791 |0003: move-object v1, v9 │ │ -4397c8: 07a2 |0004: move-object v2, v10 │ │ -4397ca: 07b3 |0005: move-object v3, v11 │ │ -4397cc: 07c4 |0006: move-object v4, v12 │ │ -4397ce: 07d6 |0007: move-object v6, v13 │ │ -4397d0: 01e7 |0008: move v7, v14 │ │ -4397d2: 7608 02bc 0000 |0009: invoke-direct/range {v0, v1, v2, v3, v4, v5, v6, v7}, Lorg/purple/smoke/Neighbor;.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V // method@bc02 │ │ -4397d8: 1209 |000c: const/4 v9, #int 0 // #0 │ │ -4397da: 5b89 4560 |000d: iput-object v9, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ -4397de: 5480 4460 |000f: iget-object v0, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6044 │ │ -4397e2: 2201 3d1b |0011: new-instance v1, Lorg/purple/smoke/UdpMulticastNeighbor$1; // type@1b3d │ │ -4397e6: 7020 80be 8100 |0013: invoke-direct {v1, v8}, Lorg/purple/smoke/UdpMulticastNeighbor$1;.:(Lorg/purple/smoke/UdpMulticastNeighbor;)V // method@be80 │ │ -4397ec: 6206 ef2c |0016: sget-object v6, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -4397f0: 1602 0000 |0018: const-wide/16 v2, #int 0 // #0 │ │ -4397f4: 1604 6400 |001a: const-wide/16 v4, #int 100 // #64 │ │ -4397f8: 7807 ce60 0000 |001c: invoke-interface/range {v0, v1, v2, v3, v4, v5, v6}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ -4397fe: 0e00 |001f: return-void │ │ +4397ac: |[4397ac] org.purple.smoke.UdpMulticastNeighbor.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V │ │ +4397bc: 1a05 ff4f |0000: const-string v5, "UDP" // string@4fff │ │ +4397c0: 0780 |0002: move-object v0, v8 │ │ +4397c2: 0791 |0003: move-object v1, v9 │ │ +4397c4: 07a2 |0004: move-object v2, v10 │ │ +4397c6: 07b3 |0005: move-object v3, v11 │ │ +4397c8: 07c4 |0006: move-object v4, v12 │ │ +4397ca: 07d6 |0007: move-object v6, v13 │ │ +4397cc: 01e7 |0008: move v7, v14 │ │ +4397ce: 7608 02bc 0000 |0009: invoke-direct/range {v0, v1, v2, v3, v4, v5, v6, v7}, Lorg/purple/smoke/Neighbor;.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V // method@bc02 │ │ +4397d4: 1209 |000c: const/4 v9, #int 0 // #0 │ │ +4397d6: 5b89 4560 |000d: iput-object v9, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ +4397da: 5480 4460 |000f: iget-object v0, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6044 │ │ +4397de: 2201 3d1b |0011: new-instance v1, Lorg/purple/smoke/UdpMulticastNeighbor$1; // type@1b3d │ │ +4397e2: 7020 80be 8100 |0013: invoke-direct {v1, v8}, Lorg/purple/smoke/UdpMulticastNeighbor$1;.:(Lorg/purple/smoke/UdpMulticastNeighbor;)V // method@be80 │ │ +4397e8: 6206 ef2c |0016: sget-object v6, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +4397ec: 1602 0000 |0018: const-wide/16 v2, #int 0 // #0 │ │ +4397f0: 1604 6400 |001a: const-wide/16 v4, #int 100 // #64 │ │ +4397f4: 7807 ce60 0000 |001c: invoke-interface/range {v0, v1, v2, v3, v4, v5, v6}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ +4397fa: 0e00 |001f: return-void │ │ catches : (none) │ │ positions : │ │ 0x0009 line=224 │ │ 0x000d line=39 │ │ 0x000f line=225 │ │ locals : │ │ 0x0000 - 0x0020 reg=8 this Lorg/purple/smoke/UdpMulticastNeighbor; │ │ @@ -1192886,17 +1192885,17 @@ │ │ type : '(Lorg/purple/smoke/UdpMulticastNeighbor;)Ljava/net/MulticastSocket;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -439798: |[439798] org.purple.smoke.UdpMulticastNeighbor.access$000:(Lorg/purple/smoke/UdpMulticastNeighbor;)Ljava/net/MulticastSocket; │ │ -4397a8: 5400 4560 |0000: iget-object v0, v0, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ -4397ac: 1100 |0002: return-object v0 │ │ +439794: |[439794] org.purple.smoke.UdpMulticastNeighbor.access$000:(Lorg/purple/smoke/UdpMulticastNeighbor;)Ljava/net/MulticastSocket; │ │ +4397a4: 5400 4560 |0000: iget-object v0, v0, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ +4397a8: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=37 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/UdpMulticastNeighbor; │ │ │ │ Virtual methods - │ │ @@ -1192905,36 +1192904,36 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 38 16-bit code units │ │ -439800: |[439800] org.purple.smoke.UdpMulticastNeighbor.abort:()V │ │ -439810: 6e10 87be 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be87 │ │ -439816: 6f10 03bc 0500 |0003: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.abort:()V // method@bc03 │ │ -43981c: 5450 4460 |0006: iget-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6044 │ │ -439820: 1d00 |0008: monitor-enter v0 │ │ -439822: 5451 4460 |0009: iget-object v1, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6044 │ │ -439826: 7210 cf60 0100 |000b: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60cf │ │ -43982c: 2803 |000e: goto 0011 // +0003 │ │ -43982e: 0d01 |000f: move-exception v1 │ │ -439830: 2814 |0010: goto 0024 // +0014 │ │ -439832: 5451 4460 |0011: iget-object v1, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6044 │ │ -439836: 1602 0500 |0013: const-wide/16 v2, #int 5 // #5 │ │ -43983a: 6204 f22c |0015: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ -43983e: 7240 cc60 2143 |0017: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60cc │ │ -439844: 0a01 |001a: move-result v1 │ │ -439846: 3901 0700 |001b: if-nez v1, 0022 // +0007 │ │ -43984a: 5451 4460 |001d: iget-object v1, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6044 │ │ -43984e: 7210 d060 0100 |001f: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d0 │ │ -439854: 1e00 |0022: monitor-exit v0 │ │ -439856: 0e00 |0023: return-void │ │ -439858: 1e00 |0024: monitor-exit v0 │ │ -43985a: 2701 |0025: throw v1 │ │ +4397fc: |[4397fc] org.purple.smoke.UdpMulticastNeighbor.abort:()V │ │ +43980c: 6e10 87be 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be87 │ │ +439812: 6f10 03bc 0500 |0003: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.abort:()V // method@bc03 │ │ +439818: 5450 4460 |0006: iget-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6044 │ │ +43981c: 1d00 |0008: monitor-enter v0 │ │ +43981e: 5451 4460 |0009: iget-object v1, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6044 │ │ +439822: 7210 cf60 0100 |000b: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60cf │ │ +439828: 2803 |000e: goto 0011 // +0003 │ │ +43982a: 0d01 |000f: move-exception v1 │ │ +43982c: 2814 |0010: goto 0024 // +0014 │ │ +43982e: 5451 4460 |0011: iget-object v1, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6044 │ │ +439832: 1602 0500 |0013: const-wide/16 v2, #int 5 // #5 │ │ +439836: 6204 f22c |0015: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ +43983a: 7240 cc60 2143 |0017: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60cc │ │ +439840: 0a01 |001a: move-result v1 │ │ +439842: 3901 0700 |001b: if-nez v1, 0022 // +0007 │ │ +439846: 5451 4460 |001d: iget-object v1, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6044 │ │ +43984a: 7210 d060 0100 |001f: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d0 │ │ +439850: 1e00 |0022: monitor-exit v0 │ │ +439852: 0e00 |0023: return-void │ │ +439854: 1e00 |0024: monitor-exit v0 │ │ +439856: 2701 |0025: throw v1 │ │ catches : 3 │ │ 0x0009 - 0x000e │ │ Ljava/lang/Exception; -> 0x0011 │ │ -> 0x000f │ │ 0x0011 - 0x0022 │ │ Ljava/lang/Exception; -> 0x0022 │ │ -> 0x000f │ │ @@ -1192957,78 +1192956,78 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 131 16-bit code units │ │ -439884: |[439884] org.purple.smoke.UdpMulticastNeighbor.connect:()V │ │ -439894: 6e10 86be 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be86 │ │ -43989a: 0a00 |0003: move-result v0 │ │ -43989c: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -4398a0: 0e00 |0006: return-void │ │ -4398a2: 6e10 8abe 0400 |0007: invoke-virtual {v4}, Lorg/purple/smoke/UdpMulticastNeighbor;.isNetworkConnected:()Z // method@be8a │ │ -4398a8: 0a00 |000a: move-result v0 │ │ -4398aa: 3900 0800 |000b: if-nez v0, 0013 // +0008 │ │ -4398ae: 1a00 0909 |000d: const-string v0, "A network is not available." // string@0909 │ │ -4398b2: 6e20 90be 0400 |000f: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be90 │ │ -4398b8: 0e00 |0012: return-void │ │ -4398ba: 5440 3b60 |0013: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@603b │ │ -4398be: 1601 0000 |0015: const-wide/16 v1, #int 0 // #0 │ │ -4398c2: 6e30 e360 1002 |0017: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -4398c8: 5440 3c60 |001a: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@603c │ │ -4398cc: 6e30 e360 1002 |001c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -4398d2: 5440 3d60 |001f: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@603d │ │ -4398d6: 1201 |0021: const/4 v1, #int 0 // #0 │ │ -4398d8: 6e20 da60 1000 |0022: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -4398de: 5440 4060 |0025: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6040 │ │ -4398e2: 7100 065d 0000 |0027: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -4398e8: 0b02 |002a: move-result-wide v2 │ │ -4398ea: 6e30 e360 2003 |002b: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -4398f0: 5440 4160 |002e: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6041 │ │ -4398f4: 7100 0b5d 0000 |0030: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -4398fa: 0b02 |0033: move-result-wide v2 │ │ -4398fc: 6e30 e360 2003 |0034: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -439902: 2200 0f0b |0037: new-instance v0, Ljava/net/MulticastSocket; // type@0b0f │ │ -439906: 5442 3f60 |0039: iget-object v2, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@603f │ │ -43990a: 6e10 dc60 0200 |003b: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -439910: 0a02 |003e: move-result v2 │ │ -439912: 7020 905d 2000 |003f: invoke-direct {v0, v2}, Ljava/net/MulticastSocket;.:(I)V // method@5d90 │ │ -439918: 5b40 4560 |0042: iput-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ -43991c: 5442 3e60 |0044: iget-object v2, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipAddress:Ljava/lang/String; // field@603e │ │ -439920: 7110 8b5d 0200 |0046: invoke-static {v2}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ -439926: 0c02 |0049: move-result-object v2 │ │ -439928: 6e20 965d 2000 |004a: invoke-virtual {v0, v2}, Ljava/net/MulticastSocket;.joinGroup:(Ljava/net/InetAddress;)V // method@5d96 │ │ -43992e: 5440 4560 |004d: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ -439932: 1212 |004f: const/4 v2, #int 1 // #1 │ │ -439934: 6e20 9a5d 2000 |0050: invoke-virtual {v0, v2}, Ljava/net/MulticastSocket;.setLoopbackMode:(Z)V // method@5d9a │ │ -43993a: 5440 4560 |0053: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ -43993e: 6e20 9b5d 1000 |0055: invoke-virtual {v0, v1}, Ljava/net/MulticastSocket;.setSoTimeout:(I)V // method@5d9b │ │ -439944: 5440 4560 |0058: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ -439948: 1301 ff00 |005a: const/16 v1, #int 255 // #ff │ │ -43994c: 6e20 9c5d 1000 |005c: invoke-virtual {v0, v1}, Ljava/net/MulticastSocket;.setTimeToLive:(I)V // method@5d9c │ │ -439952: 5440 4660 |005f: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6046 │ │ -439956: 7100 0b5d 0000 |0061: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -43995c: 0b01 |0064: move-result-wide v1 │ │ -43995e: 6e30 e360 1002 |0065: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -439964: 1a00 0000 |0068: const-string v0, "" // string@0000 │ │ -439968: 6e20 90be 0400 |006a: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be90 │ │ -43996e: 5440 4260 |006d: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_mutex:Ljava/lang/Object; // field@6042 │ │ -439972: 1d00 |006f: monitor-enter v0 │ │ -439974: 5441 4260 |0070: iget-object v1, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_mutex:Ljava/lang/Object; // field@6042 │ │ -439978: 6e10 955c 0100 |0072: invoke-virtual {v1}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ -43997e: 1e00 |0075: monitor-exit v0 │ │ -439980: 280c |0076: goto 0082 // +000c │ │ -439982: 0d01 |0077: move-exception v1 │ │ -439984: 1e00 |0078: monitor-exit v0 │ │ -439986: 2701 |0079: throw v1 │ │ -439988: 1a00 6d0d |007a: const-string v0, "An error occurred while attempting a connection." // string@0d6d │ │ -43998c: 6e20 90be 0400 |007c: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be90 │ │ -439992: 6e10 87be 0400 |007f: invoke-virtual {v4}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be87 │ │ -439998: 0e00 |0082: return-void │ │ +439880: |[439880] org.purple.smoke.UdpMulticastNeighbor.connect:()V │ │ +439890: 6e10 86be 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be86 │ │ +439896: 0a00 |0003: move-result v0 │ │ +439898: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +43989c: 0e00 |0006: return-void │ │ +43989e: 6e10 8abe 0400 |0007: invoke-virtual {v4}, Lorg/purple/smoke/UdpMulticastNeighbor;.isNetworkConnected:()Z // method@be8a │ │ +4398a4: 0a00 |000a: move-result v0 │ │ +4398a6: 3900 0800 |000b: if-nez v0, 0013 // +0008 │ │ +4398aa: 1a00 0909 |000d: const-string v0, "A network is not available." // string@0909 │ │ +4398ae: 6e20 90be 0400 |000f: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be90 │ │ +4398b4: 0e00 |0012: return-void │ │ +4398b6: 5440 3b60 |0013: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@603b │ │ +4398ba: 1601 0000 |0015: const-wide/16 v1, #int 0 // #0 │ │ +4398be: 6e30 e360 1002 |0017: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +4398c4: 5440 3c60 |001a: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@603c │ │ +4398c8: 6e30 e360 1002 |001c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +4398ce: 5440 3d60 |001f: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@603d │ │ +4398d2: 1201 |0021: const/4 v1, #int 0 // #0 │ │ +4398d4: 6e20 da60 1000 |0022: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +4398da: 5440 4060 |0025: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6040 │ │ +4398de: 7100 065d 0000 |0027: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +4398e4: 0b02 |002a: move-result-wide v2 │ │ +4398e6: 6e30 e360 2003 |002b: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +4398ec: 5440 4160 |002e: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6041 │ │ +4398f0: 7100 0b5d 0000 |0030: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +4398f6: 0b02 |0033: move-result-wide v2 │ │ +4398f8: 6e30 e360 2003 |0034: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +4398fe: 2200 0f0b |0037: new-instance v0, Ljava/net/MulticastSocket; // type@0b0f │ │ +439902: 5442 3f60 |0039: iget-object v2, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@603f │ │ +439906: 6e10 dc60 0200 |003b: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +43990c: 0a02 |003e: move-result v2 │ │ +43990e: 7020 905d 2000 |003f: invoke-direct {v0, v2}, Ljava/net/MulticastSocket;.:(I)V // method@5d90 │ │ +439914: 5b40 4560 |0042: iput-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ +439918: 5442 3e60 |0044: iget-object v2, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipAddress:Ljava/lang/String; // field@603e │ │ +43991c: 7110 8b5d 0200 |0046: invoke-static {v2}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ +439922: 0c02 |0049: move-result-object v2 │ │ +439924: 6e20 965d 2000 |004a: invoke-virtual {v0, v2}, Ljava/net/MulticastSocket;.joinGroup:(Ljava/net/InetAddress;)V // method@5d96 │ │ +43992a: 5440 4560 |004d: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ +43992e: 1212 |004f: const/4 v2, #int 1 // #1 │ │ +439930: 6e20 9a5d 2000 |0050: invoke-virtual {v0, v2}, Ljava/net/MulticastSocket;.setLoopbackMode:(Z)V // method@5d9a │ │ +439936: 5440 4560 |0053: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ +43993a: 6e20 9b5d 1000 |0055: invoke-virtual {v0, v1}, Ljava/net/MulticastSocket;.setSoTimeout:(I)V // method@5d9b │ │ +439940: 5440 4560 |0058: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ +439944: 1301 ff00 |005a: const/16 v1, #int 255 // #ff │ │ +439948: 6e20 9c5d 1000 |005c: invoke-virtual {v0, v1}, Ljava/net/MulticastSocket;.setTimeToLive:(I)V // method@5d9c │ │ +43994e: 5440 4660 |005f: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6046 │ │ +439952: 7100 0b5d 0000 |0061: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +439958: 0b01 |0064: move-result-wide v1 │ │ +43995a: 6e30 e360 1002 |0065: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +439960: 1a00 0000 |0068: const-string v0, "" // string@0000 │ │ +439964: 6e20 90be 0400 |006a: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be90 │ │ +43996a: 5440 4260 |006d: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_mutex:Ljava/lang/Object; // field@6042 │ │ +43996e: 1d00 |006f: monitor-enter v0 │ │ +439970: 5441 4260 |0070: iget-object v1, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_mutex:Ljava/lang/Object; // field@6042 │ │ +439974: 6e10 955c 0100 |0072: invoke-virtual {v1}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ +43997a: 1e00 |0075: monitor-exit v0 │ │ +43997c: 280c |0076: goto 0082 // +000c │ │ +43997e: 0d01 |0077: move-exception v1 │ │ +439980: 1e00 |0078: monitor-exit v0 │ │ +439982: 2701 |0079: throw v1 │ │ +439984: 1a00 6d0d |007a: const-string v0, "An error occurred while attempting a connection." // string@0d6d │ │ +439988: 6e20 90be 0400 |007c: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be90 │ │ +43998e: 6e10 87be 0400 |007f: invoke-virtual {v4}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be87 │ │ +439994: 0e00 |0082: return-void │ │ catches : 3 │ │ 0x0013 - 0x0070 │ │ Ljava/lang/Exception; -> 0x007a │ │ 0x0070 - 0x0079 │ │ -> 0x0077 │ │ 0x0079 - 0x007a │ │ Ljava/lang/Exception; -> 0x007a │ │ @@ -1193061,26 +1193060,26 @@ │ │ type : '()Z' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 19 16-bit code units │ │ -4394e4: |[4394e4] org.purple.smoke.UdpMulticastNeighbor.connected:()Z │ │ -4394f4: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -4394f6: 6e10 8abe 0200 |0001: invoke-virtual {v2}, Lorg/purple/smoke/UdpMulticastNeighbor;.isNetworkConnected:()Z // method@be8a │ │ -4394fc: 0a01 |0004: move-result v1 │ │ -4394fe: 3801 0d00 |0005: if-eqz v1, 0012 // +000d │ │ -439502: 5421 4560 |0007: iget-object v1, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ -439506: 3801 0900 |0009: if-eqz v1, 0012 // +0009 │ │ -43950a: 6e10 955d 0100 |000b: invoke-virtual {v1}, Ljava/net/MulticastSocket;.isClosed:()Z // method@5d95 │ │ -439510: 0a01 |000e: move-result v1 │ │ -439512: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ -439516: 1210 |0011: const/4 v0, #int 1 // #1 │ │ -439518: 0f00 |0012: return v0 │ │ +4394e0: |[4394e0] org.purple.smoke.UdpMulticastNeighbor.connected:()Z │ │ +4394f0: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +4394f2: 6e10 8abe 0200 |0001: invoke-virtual {v2}, Lorg/purple/smoke/UdpMulticastNeighbor;.isNetworkConnected:()Z // method@be8a │ │ +4394f8: 0a01 |0004: move-result v1 │ │ +4394fa: 3801 0d00 |0005: if-eqz v1, 0012 // +000d │ │ +4394fe: 5421 4560 |0007: iget-object v1, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ +439502: 3801 0900 |0009: if-eqz v1, 0012 // +0009 │ │ +439506: 6e10 955d 0100 |000b: invoke-virtual {v1}, Ljava/net/MulticastSocket;.isClosed:()Z // method@5d95 │ │ +43950c: 0a01 |000e: move-result v1 │ │ +43950e: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ +439512: 1210 |0011: const/4 v0, #int 1 // #1 │ │ +439514: 0f00 |0012: return v0 │ │ catches : 1 │ │ 0x0001 - 0x000f │ │ Ljava/lang/Exception; -> 0x0012 │ │ positions : │ │ 0x0001 line=51 │ │ 0x000b line=53 │ │ locals : │ │ @@ -1193091,52 +1193090,52 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 80 16-bit code units │ │ -4399bc: |[4399bc] org.purple.smoke.UdpMulticastNeighbor.disconnect:()V │ │ -4399cc: 6f10 10bc 0500 |0000: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.disconnect:()V // method@bc10 │ │ -4399d2: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -4399d4: 1601 0000 |0004: const-wide/16 v1, #int 0 // #0 │ │ -4399d8: 5453 4560 |0006: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ -4399dc: 3803 2d00 |0008: if-eqz v3, 0035 // +002d │ │ -4399e0: 5454 3e60 |000a: iget-object v4, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipAddress:Ljava/lang/String; // field@603e │ │ -4399e4: 7110 8b5d 0400 |000c: invoke-static {v4}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ -4399ea: 0c04 |000f: move-result-object v4 │ │ -4399ec: 6e20 975d 4300 |0010: invoke-virtual {v3, v4}, Ljava/net/MulticastSocket;.leaveGroup:(Ljava/net/InetAddress;)V // method@5d97 │ │ -4399f2: 5453 4560 |0013: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ -4399f6: 6e10 915d 0300 |0015: invoke-virtual {v3}, Ljava/net/MulticastSocket;.close:()V // method@5d91 │ │ -4399fc: 281d |0018: goto 0035 // +001d │ │ -4399fe: 0d03 |0019: move-exception v3 │ │ -439a00: 5454 3b60 |001a: iget-object v4, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@603b │ │ -439a04: 6e30 e360 1402 |001c: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -439a0a: 5454 3c60 |001f: iget-object v4, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@603c │ │ -439a0e: 6e30 e360 1402 |0021: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -439a14: 5454 4060 |0024: iget-object v4, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6040 │ │ -439a18: 6e30 e360 1402 |0026: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -439a1e: 5b50 4560 |0029: iput-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ -439a22: 5450 4660 |002b: iget-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6046 │ │ -439a26: 7100 0b5d 0000 |002d: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -439a2c: 0b01 |0030: move-result-wide v1 │ │ -439a2e: 6e30 e360 1002 |0031: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -439a34: 2703 |0034: throw v3 │ │ -439a36: 5453 3b60 |0035: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@603b │ │ -439a3a: 6e30 e360 1302 |0037: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -439a40: 5453 3c60 |003a: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@603c │ │ -439a44: 6e30 e360 1302 |003c: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -439a4a: 5453 4060 |003f: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6040 │ │ -439a4e: 6e30 e360 1302 |0041: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -439a54: 5b50 4560 |0044: iput-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ -439a58: 5450 4660 |0046: iget-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6046 │ │ -439a5c: 7100 0b5d 0000 |0048: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -439a62: 0b01 |004b: move-result-wide v1 │ │ -439a64: 6e30 e360 1002 |004c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -439a6a: 0e00 |004f: return-void │ │ +4399b8: |[4399b8] org.purple.smoke.UdpMulticastNeighbor.disconnect:()V │ │ +4399c8: 6f10 10bc 0500 |0000: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.disconnect:()V // method@bc10 │ │ +4399ce: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +4399d0: 1601 0000 |0004: const-wide/16 v1, #int 0 // #0 │ │ +4399d4: 5453 4560 |0006: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ +4399d8: 3803 2d00 |0008: if-eqz v3, 0035 // +002d │ │ +4399dc: 5454 3e60 |000a: iget-object v4, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipAddress:Ljava/lang/String; // field@603e │ │ +4399e0: 7110 8b5d 0400 |000c: invoke-static {v4}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ +4399e6: 0c04 |000f: move-result-object v4 │ │ +4399e8: 6e20 975d 4300 |0010: invoke-virtual {v3, v4}, Ljava/net/MulticastSocket;.leaveGroup:(Ljava/net/InetAddress;)V // method@5d97 │ │ +4399ee: 5453 4560 |0013: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ +4399f2: 6e10 915d 0300 |0015: invoke-virtual {v3}, Ljava/net/MulticastSocket;.close:()V // method@5d91 │ │ +4399f8: 281d |0018: goto 0035 // +001d │ │ +4399fa: 0d03 |0019: move-exception v3 │ │ +4399fc: 5454 3b60 |001a: iget-object v4, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@603b │ │ +439a00: 6e30 e360 1402 |001c: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +439a06: 5454 3c60 |001f: iget-object v4, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@603c │ │ +439a0a: 6e30 e360 1402 |0021: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +439a10: 5454 4060 |0024: iget-object v4, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6040 │ │ +439a14: 6e30 e360 1402 |0026: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +439a1a: 5b50 4560 |0029: iput-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ +439a1e: 5450 4660 |002b: iget-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6046 │ │ +439a22: 7100 0b5d 0000 |002d: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +439a28: 0b01 |0030: move-result-wide v1 │ │ +439a2a: 6e30 e360 1002 |0031: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +439a30: 2703 |0034: throw v3 │ │ +439a32: 5453 3b60 |0035: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@603b │ │ +439a36: 6e30 e360 1302 |0037: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +439a3c: 5453 3c60 |003a: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@603c │ │ +439a40: 6e30 e360 1302 |003c: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +439a46: 5453 4060 |003f: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6040 │ │ +439a4a: 6e30 e360 1302 |0041: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +439a50: 5b50 4560 |0044: iput-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ +439a54: 5450 4660 |0046: iget-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6046 │ │ +439a58: 7100 0b5d 0000 |0048: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +439a5e: 0b01 |004b: move-result-wide v1 │ │ +439a60: 6e30 e360 1002 |004c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +439a66: 0e00 |004f: return-void │ │ catches : 1 │ │ 0x0006 - 0x0018 │ │ Ljava/lang/Exception; -> 0x0035 │ │ -> 0x0019 │ │ positions : │ │ 0x0000 line=194 │ │ 0x0006 line=198 │ │ @@ -1193161,17 +1193160,17 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -4396a4: |[4396a4] org.purple.smoke.UdpMulticastNeighbor.getLocalIp:()Ljava/lang/String; │ │ -4396b4: 5410 3e60 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipAddress:Ljava/lang/String; // field@603e │ │ -4396b8: 1100 |0002: return-object v0 │ │ +4396a0: |[4396a0] org.purple.smoke.UdpMulticastNeighbor.getLocalIp:()Ljava/lang/String; │ │ +4396b0: 5410 3e60 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipAddress:Ljava/lang/String; // field@603e │ │ +4396b4: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=44 │ │ locals : │ │ 0x0000 - 0x0003 reg=1 this Lorg/purple/smoke/UdpMulticastNeighbor; │ │ │ │ #5 : (in Lorg/purple/smoke/UdpMulticastNeighbor;) │ │ @@ -1193179,26 +1193178,26 @@ │ │ type : '()I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 19 16-bit code units │ │ -43952c: |[43952c] org.purple.smoke.UdpMulticastNeighbor.getLocalPort:()I │ │ -43953c: 5410 4560 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ -439540: 3800 0f00 |0002: if-eqz v0, 0011 // +000f │ │ -439544: 6e10 955d 0000 |0004: invoke-virtual {v0}, Ljava/net/MulticastSocket;.isClosed:()Z // method@5d95 │ │ -43954a: 0a00 |0007: move-result v0 │ │ -43954c: 3900 0900 |0008: if-nez v0, 0011 // +0009 │ │ -439550: 5410 4560 |000a: iget-object v0, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ -439554: 6e10 935d 0000 |000c: invoke-virtual {v0}, Ljava/net/MulticastSocket;.getLocalPort:()I // method@5d93 │ │ -43955a: 0a00 |000f: move-result v0 │ │ -43955c: 0f00 |0010: return v0 │ │ -43955e: 1200 |0011: const/4 v0, #int 0 // #0 │ │ -439560: 0f00 |0012: return v0 │ │ +439528: |[439528] org.purple.smoke.UdpMulticastNeighbor.getLocalPort:()I │ │ +439538: 5410 4560 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ +43953c: 3800 0f00 |0002: if-eqz v0, 0011 // +000f │ │ +439540: 6e10 955d 0000 |0004: invoke-virtual {v0}, Ljava/net/MulticastSocket;.isClosed:()Z // method@5d95 │ │ +439546: 0a00 |0007: move-result v0 │ │ +439548: 3900 0900 |0008: if-nez v0, 0011 // +0009 │ │ +43954c: 5410 4560 |000a: iget-object v0, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ +439550: 6e10 935d 0000 |000c: invoke-virtual {v0}, Ljava/net/MulticastSocket;.getLocalPort:()I // method@5d93 │ │ +439556: 0a00 |000f: move-result v0 │ │ +439558: 0f00 |0010: return v0 │ │ +43955a: 1200 |0011: const/4 v0, #int 0 // #0 │ │ +43955c: 0f00 |0012: return v0 │ │ catches : 1 │ │ 0x0000 - 0x0010 │ │ Ljava/lang/Exception; -> 0x0011 │ │ positions : │ │ 0x0000 line=65 │ │ 0x000a line=66 │ │ locals : │ │ @@ -1193209,36 +1193208,36 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 38 16-bit code units │ │ -4396bc: |[4396bc] org.purple.smoke.UdpMulticastNeighbor.remoteIpAddress:()Ljava/lang/String; │ │ -4396cc: 5420 4560 |0000: iget-object v0, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ -4396d0: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ -4396d4: 6e10 925d 0000 |0004: invoke-virtual {v0}, Ljava/net/MulticastSocket;.getInetAddress:()Ljava/net/InetAddress; // method@5d92 │ │ -4396da: 0c00 |0007: move-result-object v0 │ │ -4396dc: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ -4396e0: 5420 4560 |000a: iget-object v0, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ -4396e4: 6e10 925d 0000 |000c: invoke-virtual {v0}, Ljava/net/MulticastSocket;.getInetAddress:()Ljava/net/InetAddress; // method@5d92 │ │ -4396ea: 0c00 |000f: move-result-object v0 │ │ -4396ec: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ -4396f2: 0c00 |0013: move-result-object v0 │ │ -4396f4: 1100 |0014: return-object v0 │ │ -4396f6: 0000 |0015: nop // spacer │ │ -4396f8: 5420 4860 |0016: iget-object v0, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_version:Ljava/lang/String; // field@6048 │ │ -4396fc: 1a01 a91d |0018: const-string v1, "IPv4" // string@1da9 │ │ -439700: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -439706: 0a00 |001d: move-result v0 │ │ -439708: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ -43970c: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ -439710: 1100 |0022: return-object v0 │ │ -439712: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ -439716: 1100 |0025: return-object v0 │ │ +4396b8: |[4396b8] org.purple.smoke.UdpMulticastNeighbor.remoteIpAddress:()Ljava/lang/String; │ │ +4396c8: 5420 4560 |0000: iget-object v0, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ +4396cc: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ +4396d0: 6e10 925d 0000 |0004: invoke-virtual {v0}, Ljava/net/MulticastSocket;.getInetAddress:()Ljava/net/InetAddress; // method@5d92 │ │ +4396d6: 0c00 |0007: move-result-object v0 │ │ +4396d8: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ +4396dc: 5420 4560 |000a: iget-object v0, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ +4396e0: 6e10 925d 0000 |000c: invoke-virtual {v0}, Ljava/net/MulticastSocket;.getInetAddress:()Ljava/net/InetAddress; // method@5d92 │ │ +4396e6: 0c00 |000f: move-result-object v0 │ │ +4396e8: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ +4396ee: 0c00 |0013: move-result-object v0 │ │ +4396f0: 1100 |0014: return-object v0 │ │ +4396f2: 0000 |0015: nop // spacer │ │ +4396f4: 5420 4860 |0016: iget-object v0, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_version:Ljava/lang/String; // field@6048 │ │ +4396f8: 1a01 a91d |0018: const-string v1, "IPv4" // string@1da9 │ │ +4396fc: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +439702: 0a00 |001d: move-result v0 │ │ +439704: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ +439708: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ +43970c: 1100 |0022: return-object v0 │ │ +43970e: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ +439712: 1100 |0025: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x0014 │ │ Ljava/lang/Exception; -> 0x0015 │ │ positions : │ │ 0x0000 line=332 │ │ 0x000a line=333 │ │ 0x0016 line=339 │ │ @@ -1193250,24 +1193249,24 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 16 16-bit code units │ │ -439728: |[439728] org.purple.smoke.UdpMulticastNeighbor.remotePort:()Ljava/lang/String; │ │ -439738: 5410 4560 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ -43973c: 3800 0b00 |0002: if-eqz v0, 000d // +000b │ │ -439740: 6e10 945d 0000 |0004: invoke-virtual {v0}, Ljava/net/MulticastSocket;.getPort:()I // method@5d94 │ │ -439746: 0a00 |0007: move-result v0 │ │ -439748: 7110 d55c 0000 |0008: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -43974e: 0c00 |000b: move-result-object v0 │ │ -439750: 1100 |000c: return-object v0 │ │ -439752: 1a00 c704 |000d: const-string v0, "0" // string@04c7 │ │ -439756: 1100 |000f: return-object v0 │ │ +439724: |[439724] org.purple.smoke.UdpMulticastNeighbor.remotePort:()Ljava/lang/String; │ │ +439734: 5410 4560 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ +439738: 3800 0b00 |0002: if-eqz v0, 000d // +000b │ │ +43973c: 6e10 945d 0000 |0004: invoke-virtual {v0}, Ljava/net/MulticastSocket;.getPort:()I // method@5d94 │ │ +439742: 0a00 |0007: move-result v0 │ │ +439744: 7110 d55c 0000 |0008: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +43974a: 0c00 |000b: move-result-object v0 │ │ +43974c: 1100 |000c: return-object v0 │ │ +43974e: 1a00 c704 |000d: const-string v0, "0" // string@04c7 │ │ +439752: 1100 |000f: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x000c │ │ Ljava/lang/Exception; -> 0x000d │ │ positions : │ │ 0x0000 line=349 │ │ 0x0004 line=350 │ │ locals : │ │ @@ -1193278,46 +1193277,46 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -439768: |[439768] org.purple.smoke.UdpMulticastNeighbor.remoteScopeId:()Ljava/lang/String; │ │ -439778: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ -43977c: 1100 |0002: return-object v0 │ │ +439764: |[439764] org.purple.smoke.UdpMulticastNeighbor.remoteScopeId:()Ljava/lang/String; │ │ +439774: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ +439778: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #9 : (in Lorg/purple/smoke/UdpMulticastNeighbor;) │ │ name : 'send' │ │ type : '(Ljava/lang/String;)I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 26 16-bit code units │ │ -439660: |[439660] org.purple.smoke.UdpMulticastNeighbor.send:(Ljava/lang/String;)I │ │ -439670: 6e10 86be 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be86 │ │ -439676: 0a00 |0003: move-result v0 │ │ -439678: 3800 1400 |0004: if-eqz v0, 0018 // +0014 │ │ -43967c: 3802 1200 |0006: if-eqz v2, 0018 // +0012 │ │ -439680: 6e10 c55c 0200 |0008: invoke-virtual {v2}, Ljava/lang/String;.length:()I // method@5cc5 │ │ -439686: 0a00 |000b: move-result v0 │ │ -439688: 3900 0300 |000c: if-nez v0, 000f // +0003 │ │ -43968c: 280a |000e: goto 0018 // +000a │ │ -43968e: 6e10 bc5c 0200 |000f: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -439694: 0c02 |0012: move-result-object v2 │ │ -439696: 6e20 8fbe 2100 |0013: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpMulticastNeighbor;.send:([B)I // method@be8f │ │ -43969c: 0a02 |0016: move-result v2 │ │ -43969e: 0f02 |0017: return v2 │ │ -4396a0: 1202 |0018: const/4 v2, #int 0 // #0 │ │ -4396a2: 0f02 |0019: return v2 │ │ +43965c: |[43965c] org.purple.smoke.UdpMulticastNeighbor.send:(Ljava/lang/String;)I │ │ +43966c: 6e10 86be 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be86 │ │ +439672: 0a00 |0003: move-result v0 │ │ +439674: 3800 1400 |0004: if-eqz v0, 0018 // +0014 │ │ +439678: 3802 1200 |0006: if-eqz v2, 0018 // +0012 │ │ +43967c: 6e10 c55c 0200 |0008: invoke-virtual {v2}, Ljava/lang/String;.length:()I // method@5cc5 │ │ +439682: 0a00 |000b: move-result v0 │ │ +439684: 3900 0300 |000c: if-nez v0, 000f // +0003 │ │ +439688: 280a |000e: goto 0018 // +000a │ │ +43968a: 6e10 bc5c 0200 |000f: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +439690: 0c02 |0012: move-result-object v2 │ │ +439692: 6e20 8fbe 2100 |0013: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpMulticastNeighbor;.send:([B)I // method@be8f │ │ +439698: 0a02 |0016: move-result v2 │ │ +43969a: 0f02 |0017: return v2 │ │ +43969c: 1202 |0018: const/4 v2, #int 0 // #0 │ │ +43969e: 0f02 |0019: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=77 │ │ 0x000f line=80 │ │ locals : │ │ 0x0000 - 0x001a reg=1 this Lorg/purple/smoke/UdpMulticastNeighbor; │ │ 0x0000 - 0x001a reg=2 (null) Ljava/lang/String; │ │ @@ -1193327,66 +1193326,66 @@ │ │ type : '([B)I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 10 │ │ ins : 2 │ │ outs : 5 │ │ insns size : 101 16-bit code units │ │ -439574: |[439574] org.purple.smoke.UdpMulticastNeighbor.send:([B)I │ │ -439584: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -439586: 3809 6300 |0001: if-eqz v9, 0064 // +0063 │ │ -43958a: 2191 |0003: array-length v1, v9 │ │ -43958c: 3801 6000 |0004: if-eqz v1, 0064 // +0060 │ │ -439590: 6e10 86be 0800 |0006: invoke-virtual {v8}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be86 │ │ -439596: 0a01 |0009: move-result v1 │ │ -439598: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ -43959c: 2858 |000c: goto 0064 // +0058 │ │ -43959e: 5481 4560 |000d: iget-object v1, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ -4395a2: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ -4395a6: 0f00 |0011: return v0 │ │ -4395a8: 2201 a50a |0012: new-instance v1, Ljava/io/ByteArrayInputStream; // type@0aa5 │ │ -4395ac: 7020 6b5b 9100 |0014: invoke-direct {v1, v9}, Ljava/io/ByteArrayInputStream;.:([B)V // method@5b6b │ │ -4395b2: 6e10 6d5b 0100 |0017: invoke-virtual {v1}, Ljava/io/ByteArrayInputStream;.available:()I // method@5b6d │ │ -4395b8: 0a02 |001a: move-result v2 │ │ -4395ba: 3d02 3200 |001b: if-lez v2, 004d // +0032 │ │ -4395be: 5482 3d60 |001d: iget-object v2, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@603d │ │ -4395c2: 6e10 d860 0200 |001f: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -4395c8: 0a02 |0022: move-result v2 │ │ -4395ca: 3802 0300 |0023: if-eqz v2, 0026 // +0003 │ │ -4395ce: 2828 |0025: goto 004d // +0028 │ │ -4395d0: 1302 4002 |0026: const/16 v2, #int 576 // #240 │ │ -4395d4: 6e10 6d5b 0100 |0028: invoke-virtual {v1}, Ljava/io/ByteArrayInputStream;.available:()I // method@5b6d │ │ -4395da: 0a03 |002b: move-result v3 │ │ -4395dc: 7120 825c 3200 |002c: invoke-static {v2, v3}, Ljava/lang/Math;.min:(II)I // method@5c82 │ │ -4395e2: 0a02 |002f: move-result v2 │ │ -4395e4: 2323 481b |0030: new-array v3, v2, [B // type@1b48 │ │ -4395e8: 6e20 705b 3100 |0032: invoke-virtual {v1, v3}, Ljava/io/ByteArrayInputStream;.read:([B)I // method@5b70 │ │ -4395ee: 5484 4560 |0035: iget-object v4, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ -4395f2: 2205 090b |0037: new-instance v5, Ljava/net/DatagramPacket; // type@0b09 │ │ -4395f6: 5486 3e60 |0039: iget-object v6, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipAddress:Ljava/lang/String; // field@603e │ │ -4395fa: 7110 8b5d 0600 |003b: invoke-static {v6}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ -439600: 0c06 |003e: move-result-object v6 │ │ -439602: 5487 3f60 |003f: iget-object v7, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@603f │ │ -439606: 6e10 dc60 0700 |0041: invoke-virtual {v7}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -43960c: 0a07 |0044: move-result v7 │ │ -43960e: 7057 6d5d 3562 |0045: invoke-direct {v5, v3, v2, v6, v7}, Ljava/net/DatagramPacket;.:([BILjava/net/InetAddress;I)V // method@5d6d │ │ -439614: 6e20 995d 5400 |0048: invoke-virtual {v4, v5}, Ljava/net/MulticastSocket;.send:(Ljava/net/DatagramPacket;)V // method@5d99 │ │ -43961a: b020 |004b: add-int/2addr v0, v2 │ │ -43961c: 28cb |004c: goto 0017 // -0035 │ │ -43961e: 7110 23bb 0900 |004d: invoke-static {v9}, Lorg/purple/smoke/Kernel;.writeCongestionDigest:([B)V // method@bb23 │ │ -439624: 5489 3c60 |0050: iget-object v9, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@603c │ │ -439628: 8101 |0052: int-to-long v1, v0 │ │ -43962a: 6e30 e260 1902 |0053: invoke-virtual {v9, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e2 │ │ -439630: 1a09 0000 |0056: const-string v9, "" // string@0000 │ │ -439634: 6e20 90be 9800 |0058: invoke-virtual {v8, v9}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be90 │ │ -43963a: 2809 |005b: goto 0064 // +0009 │ │ -43963c: 1a09 0e09 |005c: const-string v9, "A socket error occurred on send()." // string@090e │ │ -439640: 6e20 90be 9800 |005e: invoke-virtual {v8, v9}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be90 │ │ -439646: 6e10 87be 0800 |0061: invoke-virtual {v8}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be87 │ │ -43964c: 0f00 |0064: return v0 │ │ +439570: |[439570] org.purple.smoke.UdpMulticastNeighbor.send:([B)I │ │ +439580: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +439582: 3809 6300 |0001: if-eqz v9, 0064 // +0063 │ │ +439586: 2191 |0003: array-length v1, v9 │ │ +439588: 3801 6000 |0004: if-eqz v1, 0064 // +0060 │ │ +43958c: 6e10 86be 0800 |0006: invoke-virtual {v8}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be86 │ │ +439592: 0a01 |0009: move-result v1 │ │ +439594: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ +439598: 2858 |000c: goto 0064 // +0058 │ │ +43959a: 5481 4560 |000d: iget-object v1, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ +43959e: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ +4395a2: 0f00 |0011: return v0 │ │ +4395a4: 2201 a50a |0012: new-instance v1, Ljava/io/ByteArrayInputStream; // type@0aa5 │ │ +4395a8: 7020 6b5b 9100 |0014: invoke-direct {v1, v9}, Ljava/io/ByteArrayInputStream;.:([B)V // method@5b6b │ │ +4395ae: 6e10 6d5b 0100 |0017: invoke-virtual {v1}, Ljava/io/ByteArrayInputStream;.available:()I // method@5b6d │ │ +4395b4: 0a02 |001a: move-result v2 │ │ +4395b6: 3d02 3200 |001b: if-lez v2, 004d // +0032 │ │ +4395ba: 5482 3d60 |001d: iget-object v2, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@603d │ │ +4395be: 6e10 d860 0200 |001f: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +4395c4: 0a02 |0022: move-result v2 │ │ +4395c6: 3802 0300 |0023: if-eqz v2, 0026 // +0003 │ │ +4395ca: 2828 |0025: goto 004d // +0028 │ │ +4395cc: 1302 4002 |0026: const/16 v2, #int 576 // #240 │ │ +4395d0: 6e10 6d5b 0100 |0028: invoke-virtual {v1}, Ljava/io/ByteArrayInputStream;.available:()I // method@5b6d │ │ +4395d6: 0a03 |002b: move-result v3 │ │ +4395d8: 7120 825c 3200 |002c: invoke-static {v2, v3}, Ljava/lang/Math;.min:(II)I // method@5c82 │ │ +4395de: 0a02 |002f: move-result v2 │ │ +4395e0: 2323 481b |0030: new-array v3, v2, [B // type@1b48 │ │ +4395e4: 6e20 705b 3100 |0032: invoke-virtual {v1, v3}, Ljava/io/ByteArrayInputStream;.read:([B)I // method@5b70 │ │ +4395ea: 5484 4560 |0035: iget-object v4, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6045 │ │ +4395ee: 2205 090b |0037: new-instance v5, Ljava/net/DatagramPacket; // type@0b09 │ │ +4395f2: 5486 3e60 |0039: iget-object v6, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipAddress:Ljava/lang/String; // field@603e │ │ +4395f6: 7110 8b5d 0600 |003b: invoke-static {v6}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ +4395fc: 0c06 |003e: move-result-object v6 │ │ +4395fe: 5487 3f60 |003f: iget-object v7, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@603f │ │ +439602: 6e10 dc60 0700 |0041: invoke-virtual {v7}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +439608: 0a07 |0044: move-result v7 │ │ +43960a: 7057 6d5d 3562 |0045: invoke-direct {v5, v3, v2, v6, v7}, Ljava/net/DatagramPacket;.:([BILjava/net/InetAddress;I)V // method@5d6d │ │ +439610: 6e20 995d 5400 |0048: invoke-virtual {v4, v5}, Ljava/net/MulticastSocket;.send:(Ljava/net/DatagramPacket;)V // method@5d99 │ │ +439616: b020 |004b: add-int/2addr v0, v2 │ │ +439618: 28cb |004c: goto 0017 // -0035 │ │ +43961a: 7110 23bb 0900 |004d: invoke-static {v9}, Lorg/purple/smoke/Kernel;.writeCongestionDigest:([B)V // method@bb23 │ │ +439620: 5489 3c60 |0050: iget-object v9, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@603c │ │ +439624: 8101 |0052: int-to-long v1, v0 │ │ +439626: 6e30 e260 1902 |0053: invoke-virtual {v9, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e2 │ │ +43962c: 1a09 0000 |0056: const-string v9, "" // string@0000 │ │ +439630: 6e20 90be 9800 |0058: invoke-virtual {v8, v9}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be90 │ │ +439636: 2809 |005b: goto 0064 // +0009 │ │ +439638: 1a09 0e09 |005c: const-string v9, "A socket error occurred on send()." // string@090e │ │ +43963c: 6e20 90be 9800 |005e: invoke-virtual {v8, v9}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be90 │ │ +439642: 6e10 87be 0800 |0061: invoke-virtual {v8}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be87 │ │ +439648: 0f00 |0064: return v0 │ │ catches : 1 │ │ 0x000d - 0x005b │ │ Ljava/lang/Exception; -> 0x005c │ │ positions : │ │ 0x0003 line=87 │ │ 0x000d line=92 │ │ 0x0012 line=95 │ │ @@ -1193412,17 +1193411,17 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -439780: |[439780] org.purple.smoke.UdpMulticastNeighbor.transport:()Ljava/lang/String; │ │ -439790: 1a00 ff4f |0000: const-string v0, "UDP" // string@4fff │ │ -439794: 1100 |0002: return-object v0 │ │ +43977c: |[43977c] org.purple.smoke.UdpMulticastNeighbor.transport:()Ljava/lang/String; │ │ +43978c: 1a00 ff4f |0000: const-string v0, "UDP" // string@4fff │ │ +439790: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ source_file_idx : 20542 (UdpMulticastNeighbor.java) │ │ │ │ Class #4377 header: │ │ @@ -1193452,34 +1193451,34 @@ │ │ type : '(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 15 │ │ ins : 7 │ │ outs : 8 │ │ insns size : 32 16-bit code units │ │ -43a090: |[43a090] org.purple.smoke.UdpNeighbor.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V │ │ -43a0a0: 1a05 ff4f |0000: const-string v5, "UDP" // string@4fff │ │ -43a0a4: 0780 |0002: move-object v0, v8 │ │ -43a0a6: 0791 |0003: move-object v1, v9 │ │ -43a0a8: 07a2 |0004: move-object v2, v10 │ │ -43a0aa: 07b3 |0005: move-object v3, v11 │ │ -43a0ac: 07c4 |0006: move-object v4, v12 │ │ -43a0ae: 07d6 |0007: move-object v6, v13 │ │ -43a0b0: 01e7 |0008: move v7, v14 │ │ -43a0b2: 7608 02bc 0000 |0009: invoke-direct/range {v0, v1, v2, v3, v4, v5, v6, v7}, Lorg/purple/smoke/Neighbor;.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V // method@bc02 │ │ -43a0b8: 1209 |000c: const/4 v9, #int 0 // #0 │ │ -43a0ba: 5b89 5560 |000d: iput-object v9, v8, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ -43a0be: 5480 5460 |000f: iget-object v0, v8, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6054 │ │ -43a0c2: 2201 3f1b |0011: new-instance v1, Lorg/purple/smoke/UdpNeighbor$1; // type@1b3f │ │ -43a0c6: 7020 92be 8100 |0013: invoke-direct {v1, v8}, Lorg/purple/smoke/UdpNeighbor$1;.:(Lorg/purple/smoke/UdpNeighbor;)V // method@be92 │ │ -43a0cc: 6206 ef2c |0016: sget-object v6, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -43a0d0: 1602 0000 |0018: const-wide/16 v2, #int 0 // #0 │ │ -43a0d4: 1604 6400 |001a: const-wide/16 v4, #int 100 // #64 │ │ -43a0d8: 7807 ce60 0000 |001c: invoke-interface/range {v0, v1, v2, v3, v4, v5, v6}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ -43a0de: 0e00 |001f: return-void │ │ +43a08c: |[43a08c] org.purple.smoke.UdpNeighbor.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V │ │ +43a09c: 1a05 ff4f |0000: const-string v5, "UDP" // string@4fff │ │ +43a0a0: 0780 |0002: move-object v0, v8 │ │ +43a0a2: 0791 |0003: move-object v1, v9 │ │ +43a0a4: 07a2 |0004: move-object v2, v10 │ │ +43a0a6: 07b3 |0005: move-object v3, v11 │ │ +43a0a8: 07c4 |0006: move-object v4, v12 │ │ +43a0aa: 07d6 |0007: move-object v6, v13 │ │ +43a0ac: 01e7 |0008: move v7, v14 │ │ +43a0ae: 7608 02bc 0000 |0009: invoke-direct/range {v0, v1, v2, v3, v4, v5, v6, v7}, Lorg/purple/smoke/Neighbor;.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V // method@bc02 │ │ +43a0b4: 1209 |000c: const/4 v9, #int 0 // #0 │ │ +43a0b6: 5b89 5560 |000d: iput-object v9, v8, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ +43a0ba: 5480 5460 |000f: iget-object v0, v8, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6054 │ │ +43a0be: 2201 3f1b |0011: new-instance v1, Lorg/purple/smoke/UdpNeighbor$1; // type@1b3f │ │ +43a0c2: 7020 92be 8100 |0013: invoke-direct {v1, v8}, Lorg/purple/smoke/UdpNeighbor$1;.:(Lorg/purple/smoke/UdpNeighbor;)V // method@be92 │ │ +43a0c8: 6206 ef2c |0016: sget-object v6, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +43a0cc: 1602 0000 |0018: const-wide/16 v2, #int 0 // #0 │ │ +43a0d0: 1604 6400 |001a: const-wide/16 v4, #int 100 // #64 │ │ +43a0d4: 7807 ce60 0000 |001c: invoke-interface/range {v0, v1, v2, v3, v4, v5, v6}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ +43a0da: 0e00 |001f: return-void │ │ catches : (none) │ │ positions : │ │ 0x0009 line=231 │ │ 0x000d line=39 │ │ 0x000f line=232 │ │ locals : │ │ 0x0000 - 0x0020 reg=8 this Lorg/purple/smoke/UdpNeighbor; │ │ @@ -1193495,17 +1193494,17 @@ │ │ type : '(Lorg/purple/smoke/UdpNeighbor;)Ljava/net/DatagramSocket;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -43a078: |[43a078] org.purple.smoke.UdpNeighbor.access$000:(Lorg/purple/smoke/UdpNeighbor;)Ljava/net/DatagramSocket; │ │ -43a088: 5400 5560 |0000: iget-object v0, v0, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ -43a08c: 1100 |0002: return-object v0 │ │ +43a074: |[43a074] org.purple.smoke.UdpNeighbor.access$000:(Lorg/purple/smoke/UdpNeighbor;)Ljava/net/DatagramSocket; │ │ +43a084: 5400 5560 |0000: iget-object v0, v0, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ +43a088: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=37 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/UdpNeighbor; │ │ │ │ Virtual methods - │ │ @@ -1193514,36 +1193513,36 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 38 16-bit code units │ │ -43a0e0: |[43a0e0] org.purple.smoke.UdpNeighbor.abort:()V │ │ -43a0f0: 6e10 99be 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be99 │ │ -43a0f6: 6f10 03bc 0500 |0003: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.abort:()V // method@bc03 │ │ -43a0fc: 5450 5460 |0006: iget-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6054 │ │ -43a100: 1d00 |0008: monitor-enter v0 │ │ -43a102: 5451 5460 |0009: iget-object v1, v5, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6054 │ │ -43a106: 7210 cf60 0100 |000b: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60cf │ │ -43a10c: 2803 |000e: goto 0011 // +0003 │ │ -43a10e: 0d01 |000f: move-exception v1 │ │ -43a110: 2814 |0010: goto 0024 // +0014 │ │ -43a112: 5451 5460 |0011: iget-object v1, v5, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6054 │ │ -43a116: 1602 0500 |0013: const-wide/16 v2, #int 5 // #5 │ │ -43a11a: 6204 f22c |0015: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ -43a11e: 7240 cc60 2143 |0017: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60cc │ │ -43a124: 0a01 |001a: move-result v1 │ │ -43a126: 3901 0700 |001b: if-nez v1, 0022 // +0007 │ │ -43a12a: 5451 5460 |001d: iget-object v1, v5, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6054 │ │ -43a12e: 7210 d060 0100 |001f: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d0 │ │ -43a134: 1e00 |0022: monitor-exit v0 │ │ -43a136: 0e00 |0023: return-void │ │ -43a138: 1e00 |0024: monitor-exit v0 │ │ -43a13a: 2701 |0025: throw v1 │ │ +43a0dc: |[43a0dc] org.purple.smoke.UdpNeighbor.abort:()V │ │ +43a0ec: 6e10 99be 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be99 │ │ +43a0f2: 6f10 03bc 0500 |0003: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.abort:()V // method@bc03 │ │ +43a0f8: 5450 5460 |0006: iget-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6054 │ │ +43a0fc: 1d00 |0008: monitor-enter v0 │ │ +43a0fe: 5451 5460 |0009: iget-object v1, v5, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6054 │ │ +43a102: 7210 cf60 0100 |000b: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60cf │ │ +43a108: 2803 |000e: goto 0011 // +0003 │ │ +43a10a: 0d01 |000f: move-exception v1 │ │ +43a10c: 2814 |0010: goto 0024 // +0014 │ │ +43a10e: 5451 5460 |0011: iget-object v1, v5, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6054 │ │ +43a112: 1602 0500 |0013: const-wide/16 v2, #int 5 // #5 │ │ +43a116: 6204 f22c |0015: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ +43a11a: 7240 cc60 2143 |0017: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60cc │ │ +43a120: 0a01 |001a: move-result v1 │ │ +43a122: 3901 0700 |001b: if-nez v1, 0022 // +0007 │ │ +43a126: 5451 5460 |001d: iget-object v1, v5, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6054 │ │ +43a12a: 7210 d060 0100 |001f: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d0 │ │ +43a130: 1e00 |0022: monitor-exit v0 │ │ +43a132: 0e00 |0023: return-void │ │ +43a134: 1e00 |0024: monitor-exit v0 │ │ +43a136: 2701 |0025: throw v1 │ │ catches : 3 │ │ 0x0009 - 0x000e │ │ Ljava/lang/Exception; -> 0x0011 │ │ -> 0x000f │ │ 0x0011 - 0x0022 │ │ Ljava/lang/Exception; -> 0x0022 │ │ -> 0x000f │ │ @@ -1193566,72 +1193565,72 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 118 16-bit code units │ │ -43a164: |[43a164] org.purple.smoke.UdpNeighbor.connect:()V │ │ -43a174: 6e10 98be 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be98 │ │ -43a17a: 0a00 |0003: move-result v0 │ │ -43a17c: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -43a180: 0e00 |0006: return-void │ │ -43a182: 6e10 9cbe 0400 |0007: invoke-virtual {v4}, Lorg/purple/smoke/UdpNeighbor;.isNetworkConnected:()Z // method@be9c │ │ -43a188: 0a00 |000a: move-result v0 │ │ -43a18a: 3900 0800 |000b: if-nez v0, 0013 // +0008 │ │ -43a18e: 1a00 0909 |000d: const-string v0, "A network is not available." // string@0909 │ │ -43a192: 6e20 a2be 0400 |000f: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea2 │ │ -43a198: 0e00 |0012: return-void │ │ -43a19a: 5440 4b60 |0013: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@604b │ │ -43a19e: 1601 0000 |0015: const-wide/16 v1, #int 0 // #0 │ │ -43a1a2: 6e30 e360 1002 |0017: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43a1a8: 5440 4c60 |001a: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@604c │ │ -43a1ac: 6e30 e360 1002 |001c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43a1b2: 5440 4d60 |001f: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@604d │ │ -43a1b6: 1201 |0021: const/4 v1, #int 0 // #0 │ │ -43a1b8: 6e20 da60 1000 |0022: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ -43a1be: 5440 5060 |0025: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6050 │ │ -43a1c2: 7100 065d 0000 |0027: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -43a1c8: 0b02 |002a: move-result-wide v2 │ │ -43a1ca: 6e30 e360 2003 |002b: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43a1d0: 5440 5160 |002e: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6051 │ │ -43a1d4: 7100 0b5d 0000 |0030: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -43a1da: 0b02 |0033: move-result-wide v2 │ │ -43a1dc: 6e30 e360 2003 |0034: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43a1e2: 2200 0a0b |0037: new-instance v0, Ljava/net/DatagramSocket; // type@0b0a │ │ -43a1e6: 7010 705d 0000 |0039: invoke-direct {v0}, Ljava/net/DatagramSocket;.:()V // method@5d70 │ │ -43a1ec: 5b40 5560 |003c: iput-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ -43a1f0: 5442 4e60 |003e: iget-object v2, v4, Lorg/purple/smoke/UdpNeighbor;.m_ipAddress:Ljava/lang/String; // field@604e │ │ -43a1f4: 7110 8b5d 0200 |0040: invoke-static {v2}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ -43a1fa: 0c02 |0043: move-result-object v2 │ │ -43a1fc: 5443 4f60 |0044: iget-object v3, v4, Lorg/purple/smoke/UdpNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@604f │ │ -43a200: 6e10 dc60 0300 |0046: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -43a206: 0a03 |0049: move-result v3 │ │ -43a208: 6e30 725d 2003 |004a: invoke-virtual {v0, v2, v3}, Ljava/net/DatagramSocket;.connect:(Ljava/net/InetAddress;I)V // method@5d72 │ │ -43a20e: 5440 5560 |004d: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ -43a212: 6e20 7a5d 1000 |004f: invoke-virtual {v0, v1}, Ljava/net/DatagramSocket;.setSoTimeout:(I)V // method@5d7a │ │ -43a218: 5440 5660 |0052: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6056 │ │ -43a21c: 7100 0b5d 0000 |0054: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -43a222: 0b01 |0057: move-result-wide v1 │ │ -43a224: 6e30 e360 1002 |0058: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43a22a: 1a00 0000 |005b: const-string v0, "" // string@0000 │ │ -43a22e: 6e20 a2be 0400 |005d: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea2 │ │ -43a234: 5440 5260 |0060: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_mutex:Ljava/lang/Object; // field@6052 │ │ -43a238: 1d00 |0062: monitor-enter v0 │ │ -43a23a: 5441 5260 |0063: iget-object v1, v4, Lorg/purple/smoke/UdpNeighbor;.m_mutex:Ljava/lang/Object; // field@6052 │ │ -43a23e: 6e10 955c 0100 |0065: invoke-virtual {v1}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ -43a244: 1e00 |0068: monitor-exit v0 │ │ -43a246: 280c |0069: goto 0075 // +000c │ │ -43a248: 0d01 |006a: move-exception v1 │ │ -43a24a: 1e00 |006b: monitor-exit v0 │ │ -43a24c: 2701 |006c: throw v1 │ │ -43a24e: 1a00 6d0d |006d: const-string v0, "An error occurred while attempting a connection." // string@0d6d │ │ -43a252: 6e20 a2be 0400 |006f: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea2 │ │ -43a258: 6e10 99be 0400 |0072: invoke-virtual {v4}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be99 │ │ -43a25e: 0e00 |0075: return-void │ │ +43a160: |[43a160] org.purple.smoke.UdpNeighbor.connect:()V │ │ +43a170: 6e10 98be 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be98 │ │ +43a176: 0a00 |0003: move-result v0 │ │ +43a178: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +43a17c: 0e00 |0006: return-void │ │ +43a17e: 6e10 9cbe 0400 |0007: invoke-virtual {v4}, Lorg/purple/smoke/UdpNeighbor;.isNetworkConnected:()Z // method@be9c │ │ +43a184: 0a00 |000a: move-result v0 │ │ +43a186: 3900 0800 |000b: if-nez v0, 0013 // +0008 │ │ +43a18a: 1a00 0909 |000d: const-string v0, "A network is not available." // string@0909 │ │ +43a18e: 6e20 a2be 0400 |000f: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea2 │ │ +43a194: 0e00 |0012: return-void │ │ +43a196: 5440 4b60 |0013: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@604b │ │ +43a19a: 1601 0000 |0015: const-wide/16 v1, #int 0 // #0 │ │ +43a19e: 6e30 e360 1002 |0017: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43a1a4: 5440 4c60 |001a: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@604c │ │ +43a1a8: 6e30 e360 1002 |001c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43a1ae: 5440 4d60 |001f: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@604d │ │ +43a1b2: 1201 |0021: const/4 v1, #int 0 // #0 │ │ +43a1b4: 6e20 da60 1000 |0022: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60da │ │ +43a1ba: 5440 5060 |0025: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6050 │ │ +43a1be: 7100 065d 0000 |0027: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +43a1c4: 0b02 |002a: move-result-wide v2 │ │ +43a1c6: 6e30 e360 2003 |002b: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43a1cc: 5440 5160 |002e: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6051 │ │ +43a1d0: 7100 0b5d 0000 |0030: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +43a1d6: 0b02 |0033: move-result-wide v2 │ │ +43a1d8: 6e30 e360 2003 |0034: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43a1de: 2200 0a0b |0037: new-instance v0, Ljava/net/DatagramSocket; // type@0b0a │ │ +43a1e2: 7010 705d 0000 |0039: invoke-direct {v0}, Ljava/net/DatagramSocket;.:()V // method@5d70 │ │ +43a1e8: 5b40 5560 |003c: iput-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ +43a1ec: 5442 4e60 |003e: iget-object v2, v4, Lorg/purple/smoke/UdpNeighbor;.m_ipAddress:Ljava/lang/String; // field@604e │ │ +43a1f0: 7110 8b5d 0200 |0040: invoke-static {v2}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ +43a1f6: 0c02 |0043: move-result-object v2 │ │ +43a1f8: 5443 4f60 |0044: iget-object v3, v4, Lorg/purple/smoke/UdpNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@604f │ │ +43a1fc: 6e10 dc60 0300 |0046: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +43a202: 0a03 |0049: move-result v3 │ │ +43a204: 6e30 725d 2003 |004a: invoke-virtual {v0, v2, v3}, Ljava/net/DatagramSocket;.connect:(Ljava/net/InetAddress;I)V // method@5d72 │ │ +43a20a: 5440 5560 |004d: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ +43a20e: 6e20 7a5d 1000 |004f: invoke-virtual {v0, v1}, Ljava/net/DatagramSocket;.setSoTimeout:(I)V // method@5d7a │ │ +43a214: 5440 5660 |0052: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6056 │ │ +43a218: 7100 0b5d 0000 |0054: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +43a21e: 0b01 |0057: move-result-wide v1 │ │ +43a220: 6e30 e360 1002 |0058: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43a226: 1a00 0000 |005b: const-string v0, "" // string@0000 │ │ +43a22a: 6e20 a2be 0400 |005d: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea2 │ │ +43a230: 5440 5260 |0060: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_mutex:Ljava/lang/Object; // field@6052 │ │ +43a234: 1d00 |0062: monitor-enter v0 │ │ +43a236: 5441 5260 |0063: iget-object v1, v4, Lorg/purple/smoke/UdpNeighbor;.m_mutex:Ljava/lang/Object; // field@6052 │ │ +43a23a: 6e10 955c 0100 |0065: invoke-virtual {v1}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ +43a240: 1e00 |0068: monitor-exit v0 │ │ +43a242: 280c |0069: goto 0075 // +000c │ │ +43a244: 0d01 |006a: move-exception v1 │ │ +43a246: 1e00 |006b: monitor-exit v0 │ │ +43a248: 2701 |006c: throw v1 │ │ +43a24a: 1a00 6d0d |006d: const-string v0, "An error occurred while attempting a connection." // string@0d6d │ │ +43a24e: 6e20 a2be 0400 |006f: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea2 │ │ +43a254: 6e10 99be 0400 |0072: invoke-virtual {v4}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be99 │ │ +43a25a: 0e00 |0075: return-void │ │ catches : 3 │ │ 0x0013 - 0x0063 │ │ Ljava/lang/Exception; -> 0x006d │ │ 0x0063 - 0x006c │ │ -> 0x006a │ │ 0x006c - 0x006d │ │ Ljava/lang/Exception; -> 0x006d │ │ @@ -1193663,26 +1193662,26 @@ │ │ type : '()Z' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 19 16-bit code units │ │ -439d70: |[439d70] org.purple.smoke.UdpNeighbor.connected:()Z │ │ -439d80: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -439d82: 6e10 9cbe 0200 |0001: invoke-virtual {v2}, Lorg/purple/smoke/UdpNeighbor;.isNetworkConnected:()Z // method@be9c │ │ -439d88: 0a01 |0004: move-result v1 │ │ -439d8a: 3801 0d00 |0005: if-eqz v1, 0012 // +000d │ │ -439d8e: 5421 5560 |0007: iget-object v1, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ -439d92: 3801 0900 |0009: if-eqz v1, 0012 // +0009 │ │ -439d96: 6e10 775d 0100 |000b: invoke-virtual {v1}, Ljava/net/DatagramSocket;.isClosed:()Z // method@5d77 │ │ -439d9c: 0a01 |000e: move-result v1 │ │ -439d9e: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ -439da2: 1210 |0011: const/4 v0, #int 1 // #1 │ │ -439da4: 0f00 |0012: return v0 │ │ +439d6c: |[439d6c] org.purple.smoke.UdpNeighbor.connected:()Z │ │ +439d7c: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +439d7e: 6e10 9cbe 0200 |0001: invoke-virtual {v2}, Lorg/purple/smoke/UdpNeighbor;.isNetworkConnected:()Z // method@be9c │ │ +439d84: 0a01 |0004: move-result v1 │ │ +439d86: 3801 0d00 |0005: if-eqz v1, 0012 // +000d │ │ +439d8a: 5421 5560 |0007: iget-object v1, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ +439d8e: 3801 0900 |0009: if-eqz v1, 0012 // +0009 │ │ +439d92: 6e10 775d 0100 |000b: invoke-virtual {v1}, Ljava/net/DatagramSocket;.isClosed:()Z // method@5d77 │ │ +439d98: 0a01 |000e: move-result v1 │ │ +439d9a: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ +439d9e: 1210 |0011: const/4 v0, #int 1 // #1 │ │ +439da0: 0f00 |0012: return v0 │ │ catches : 1 │ │ 0x0001 - 0x000f │ │ Ljava/lang/Exception; -> 0x0012 │ │ positions : │ │ 0x0001 line=62 │ │ 0x000b line=64 │ │ locals : │ │ @@ -1193693,47 +1193692,47 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 69 16-bit code units │ │ -43a280: |[43a280] org.purple.smoke.UdpNeighbor.disconnect:()V │ │ -43a290: 6f10 10bc 0500 |0000: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.disconnect:()V // method@bc10 │ │ -43a296: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -43a298: 1601 0000 |0004: const-wide/16 v1, #int 0 // #0 │ │ -43a29c: 5453 5560 |0006: iget-object v3, v5, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ -43a2a0: 3803 2200 |0008: if-eqz v3, 002a // +0022 │ │ -43a2a4: 6e10 715d 0300 |000a: invoke-virtual {v3}, Ljava/net/DatagramSocket;.close:()V // method@5d71 │ │ -43a2aa: 281d |000d: goto 002a // +001d │ │ -43a2ac: 0d03 |000e: move-exception v3 │ │ -43a2ae: 5454 4b60 |000f: iget-object v4, v5, Lorg/purple/smoke/UdpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@604b │ │ -43a2b2: 6e30 e360 1402 |0011: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43a2b8: 5454 4c60 |0014: iget-object v4, v5, Lorg/purple/smoke/UdpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@604c │ │ -43a2bc: 6e30 e360 1402 |0016: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43a2c2: 5454 5160 |0019: iget-object v4, v5, Lorg/purple/smoke/UdpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6051 │ │ -43a2c6: 6e30 e360 1402 |001b: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43a2cc: 5b50 5560 |001e: iput-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ -43a2d0: 5450 5660 |0020: iget-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6056 │ │ -43a2d4: 7100 0b5d 0000 |0022: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -43a2da: 0b01 |0025: move-result-wide v1 │ │ -43a2dc: 6e30 e360 1002 |0026: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43a2e2: 2703 |0029: throw v3 │ │ -43a2e4: 5453 4b60 |002a: iget-object v3, v5, Lorg/purple/smoke/UdpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@604b │ │ -43a2e8: 6e30 e360 1302 |002c: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43a2ee: 5453 4c60 |002f: iget-object v3, v5, Lorg/purple/smoke/UdpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@604c │ │ -43a2f2: 6e30 e360 1302 |0031: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43a2f8: 5453 5160 |0034: iget-object v3, v5, Lorg/purple/smoke/UdpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6051 │ │ -43a2fc: 6e30 e360 1302 |0036: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43a302: 5b50 5560 |0039: iput-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ -43a306: 5450 5660 |003b: iget-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6056 │ │ -43a30a: 7100 0b5d 0000 |003d: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -43a310: 0b01 |0040: move-result-wide v1 │ │ -43a312: 6e30 e360 1002 |0041: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ -43a318: 0e00 |0044: return-void │ │ +43a27c: |[43a27c] org.purple.smoke.UdpNeighbor.disconnect:()V │ │ +43a28c: 6f10 10bc 0500 |0000: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.disconnect:()V // method@bc10 │ │ +43a292: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +43a294: 1601 0000 |0004: const-wide/16 v1, #int 0 // #0 │ │ +43a298: 5453 5560 |0006: iget-object v3, v5, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ +43a29c: 3803 2200 |0008: if-eqz v3, 002a // +0022 │ │ +43a2a0: 6e10 715d 0300 |000a: invoke-virtual {v3}, Ljava/net/DatagramSocket;.close:()V // method@5d71 │ │ +43a2a6: 281d |000d: goto 002a // +001d │ │ +43a2a8: 0d03 |000e: move-exception v3 │ │ +43a2aa: 5454 4b60 |000f: iget-object v4, v5, Lorg/purple/smoke/UdpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@604b │ │ +43a2ae: 6e30 e360 1402 |0011: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43a2b4: 5454 4c60 |0014: iget-object v4, v5, Lorg/purple/smoke/UdpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@604c │ │ +43a2b8: 6e30 e360 1402 |0016: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43a2be: 5454 5160 |0019: iget-object v4, v5, Lorg/purple/smoke/UdpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6051 │ │ +43a2c2: 6e30 e360 1402 |001b: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43a2c8: 5b50 5560 |001e: iput-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ +43a2cc: 5450 5660 |0020: iget-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6056 │ │ +43a2d0: 7100 0b5d 0000 |0022: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +43a2d6: 0b01 |0025: move-result-wide v1 │ │ +43a2d8: 6e30 e360 1002 |0026: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43a2de: 2703 |0029: throw v3 │ │ +43a2e0: 5453 4b60 |002a: iget-object v3, v5, Lorg/purple/smoke/UdpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@604b │ │ +43a2e4: 6e30 e360 1302 |002c: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43a2ea: 5453 4c60 |002f: iget-object v3, v5, Lorg/purple/smoke/UdpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@604c │ │ +43a2ee: 6e30 e360 1302 |0031: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43a2f4: 5453 5160 |0034: iget-object v3, v5, Lorg/purple/smoke/UdpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6051 │ │ +43a2f8: 6e30 e360 1302 |0036: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43a2fe: 5b50 5560 |0039: iput-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ +43a302: 5450 5660 |003b: iget-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6056 │ │ +43a306: 7100 0b5d 0000 |003d: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +43a30c: 0b01 |0040: move-result-wide v1 │ │ +43a30e: 6e30 e360 1002 |0041: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e3 │ │ +43a314: 0e00 |0044: return-void │ │ catches : 1 │ │ 0x0006 - 0x000d │ │ Ljava/lang/Exception; -> 0x002a │ │ -> 0x000e │ │ positions : │ │ 0x0000 line=204 │ │ 0x0006 line=208 │ │ @@ -1193757,36 +1193756,36 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 38 16-bit code units │ │ -439f30: |[439f30] org.purple.smoke.UdpNeighbor.getLocalIp:()Ljava/lang/String; │ │ -439f40: 5420 5560 |0000: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ -439f44: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ -439f48: 6e10 745d 0000 |0004: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getLocalAddress:()Ljava/net/InetAddress; // method@5d74 │ │ -439f4e: 0c00 |0007: move-result-object v0 │ │ -439f50: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ -439f54: 5420 5560 |000a: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ -439f58: 6e10 745d 0000 |000c: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getLocalAddress:()Ljava/net/InetAddress; // method@5d74 │ │ -439f5e: 0c00 |000f: move-result-object v0 │ │ -439f60: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ -439f66: 0c00 |0013: move-result-object v0 │ │ -439f68: 1100 |0014: return-object v0 │ │ -439f6a: 0000 |0015: nop // spacer │ │ -439f6c: 5420 5860 |0016: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_version:Ljava/lang/String; // field@6058 │ │ -439f70: 1a01 a91d |0018: const-string v1, "IPv4" // string@1da9 │ │ -439f74: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -439f7a: 0a00 |001d: move-result v0 │ │ -439f7c: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ -439f80: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ -439f84: 1100 |0022: return-object v0 │ │ -439f86: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ -439f8a: 1100 |0025: return-object v0 │ │ +439f2c: |[439f2c] org.purple.smoke.UdpNeighbor.getLocalIp:()Ljava/lang/String; │ │ +439f3c: 5420 5560 |0000: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ +439f40: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ +439f44: 6e10 745d 0000 |0004: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getLocalAddress:()Ljava/net/InetAddress; // method@5d74 │ │ +439f4a: 0c00 |0007: move-result-object v0 │ │ +439f4c: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ +439f50: 5420 5560 |000a: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ +439f54: 6e10 745d 0000 |000c: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getLocalAddress:()Ljava/net/InetAddress; // method@5d74 │ │ +439f5a: 0c00 |000f: move-result-object v0 │ │ +439f5c: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ +439f62: 0c00 |0013: move-result-object v0 │ │ +439f64: 1100 |0014: return-object v0 │ │ +439f66: 0000 |0015: nop // spacer │ │ +439f68: 5420 5860 |0016: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_version:Ljava/lang/String; // field@6058 │ │ +439f6c: 1a01 a91d |0018: const-string v1, "IPv4" // string@1da9 │ │ +439f70: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +439f76: 0a00 |001d: move-result v0 │ │ +439f78: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ +439f7c: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ +439f80: 1100 |0022: return-object v0 │ │ +439f82: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ +439f86: 1100 |0025: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x0014 │ │ Ljava/lang/Exception; -> 0x0015 │ │ positions : │ │ 0x0000 line=45 │ │ 0x000a line=46 │ │ 0x0016 line=52 │ │ @@ -1193798,26 +1193797,26 @@ │ │ type : '()I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 19 16-bit code units │ │ -439db8: |[439db8] org.purple.smoke.UdpNeighbor.getLocalPort:()I │ │ -439dc8: 5410 5560 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ -439dcc: 3800 0f00 |0002: if-eqz v0, 0011 // +000f │ │ -439dd0: 6e10 775d 0000 |0004: invoke-virtual {v0}, Ljava/net/DatagramSocket;.isClosed:()Z // method@5d77 │ │ -439dd6: 0a00 |0007: move-result v0 │ │ -439dd8: 3900 0900 |0008: if-nez v0, 0011 // +0009 │ │ -439ddc: 5410 5560 |000a: iget-object v0, v1, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ -439de0: 6e10 755d 0000 |000c: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getLocalPort:()I // method@5d75 │ │ -439de6: 0a00 |000f: move-result v0 │ │ -439de8: 0f00 |0010: return v0 │ │ -439dea: 1200 |0011: const/4 v0, #int 0 // #0 │ │ -439dec: 0f00 |0012: return v0 │ │ +439db4: |[439db4] org.purple.smoke.UdpNeighbor.getLocalPort:()I │ │ +439dc4: 5410 5560 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ +439dc8: 3800 0f00 |0002: if-eqz v0, 0011 // +000f │ │ +439dcc: 6e10 775d 0000 |0004: invoke-virtual {v0}, Ljava/net/DatagramSocket;.isClosed:()Z // method@5d77 │ │ +439dd2: 0a00 |0007: move-result v0 │ │ +439dd4: 3900 0900 |0008: if-nez v0, 0011 // +0009 │ │ +439dd8: 5410 5560 |000a: iget-object v0, v1, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ +439ddc: 6e10 755d 0000 |000c: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getLocalPort:()I // method@5d75 │ │ +439de2: 0a00 |000f: move-result v0 │ │ +439de4: 0f00 |0010: return v0 │ │ +439de6: 1200 |0011: const/4 v0, #int 0 // #0 │ │ +439de8: 0f00 |0012: return v0 │ │ catches : 1 │ │ 0x0000 - 0x0010 │ │ Ljava/lang/Exception; -> 0x0011 │ │ positions : │ │ 0x0000 line=76 │ │ 0x000a line=77 │ │ locals : │ │ @@ -1193828,36 +1193827,36 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 38 16-bit code units │ │ -439f9c: |[439f9c] org.purple.smoke.UdpNeighbor.remoteIpAddress:()Ljava/lang/String; │ │ -439fac: 5420 5560 |0000: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ -439fb0: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ -439fb4: 6e10 735d 0000 |0004: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getInetAddress:()Ljava/net/InetAddress; // method@5d73 │ │ -439fba: 0c00 |0007: move-result-object v0 │ │ -439fbc: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ -439fc0: 5420 5560 |000a: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ -439fc4: 6e10 735d 0000 |000c: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getInetAddress:()Ljava/net/InetAddress; // method@5d73 │ │ -439fca: 0c00 |000f: move-result-object v0 │ │ -439fcc: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ -439fd2: 0c00 |0013: move-result-object v0 │ │ -439fd4: 1100 |0014: return-object v0 │ │ -439fd6: 0000 |0015: nop // spacer │ │ -439fd8: 5420 5860 |0016: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_version:Ljava/lang/String; // field@6058 │ │ -439fdc: 1a01 a91d |0018: const-string v1, "IPv4" // string@1da9 │ │ -439fe0: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -439fe6: 0a00 |001d: move-result v0 │ │ -439fe8: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ -439fec: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ -439ff0: 1100 |0022: return-object v0 │ │ -439ff2: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ -439ff6: 1100 |0025: return-object v0 │ │ +439f98: |[439f98] org.purple.smoke.UdpNeighbor.remoteIpAddress:()Ljava/lang/String; │ │ +439fa8: 5420 5560 |0000: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ +439fac: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ +439fb0: 6e10 735d 0000 |0004: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getInetAddress:()Ljava/net/InetAddress; // method@5d73 │ │ +439fb6: 0c00 |0007: move-result-object v0 │ │ +439fb8: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ +439fbc: 5420 5560 |000a: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ +439fc0: 6e10 735d 0000 |000c: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getInetAddress:()Ljava/net/InetAddress; // method@5d73 │ │ +439fc6: 0c00 |000f: move-result-object v0 │ │ +439fc8: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ +439fce: 0c00 |0013: move-result-object v0 │ │ +439fd0: 1100 |0014: return-object v0 │ │ +439fd2: 0000 |0015: nop // spacer │ │ +439fd4: 5420 5860 |0016: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_version:Ljava/lang/String; // field@6058 │ │ +439fd8: 1a01 a91d |0018: const-string v1, "IPv4" // string@1da9 │ │ +439fdc: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +439fe2: 0a00 |001d: move-result v0 │ │ +439fe4: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ +439fe8: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ +439fec: 1100 |0022: return-object v0 │ │ +439fee: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ +439ff2: 1100 |0025: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x0014 │ │ Ljava/lang/Exception; -> 0x0015 │ │ positions : │ │ 0x0000 line=339 │ │ 0x000a line=340 │ │ 0x0016 line=346 │ │ @@ -1193869,24 +1193868,24 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 16 16-bit code units │ │ -43a008: |[43a008] org.purple.smoke.UdpNeighbor.remotePort:()Ljava/lang/String; │ │ -43a018: 5410 5560 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ -43a01c: 3800 0b00 |0002: if-eqz v0, 000d // +000b │ │ -43a020: 6e10 765d 0000 |0004: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getPort:()I // method@5d76 │ │ -43a026: 0a00 |0007: move-result v0 │ │ -43a028: 7110 d55c 0000 |0008: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -43a02e: 0c00 |000b: move-result-object v0 │ │ -43a030: 1100 |000c: return-object v0 │ │ -43a032: 1a00 c704 |000d: const-string v0, "0" // string@04c7 │ │ -43a036: 1100 |000f: return-object v0 │ │ +43a004: |[43a004] org.purple.smoke.UdpNeighbor.remotePort:()Ljava/lang/String; │ │ +43a014: 5410 5560 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ +43a018: 3800 0b00 |0002: if-eqz v0, 000d // +000b │ │ +43a01c: 6e10 765d 0000 |0004: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getPort:()I // method@5d76 │ │ +43a022: 0a00 |0007: move-result v0 │ │ +43a024: 7110 d55c 0000 |0008: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +43a02a: 0c00 |000b: move-result-object v0 │ │ +43a02c: 1100 |000c: return-object v0 │ │ +43a02e: 1a00 c704 |000d: const-string v0, "0" // string@04c7 │ │ +43a032: 1100 |000f: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x000c │ │ Ljava/lang/Exception; -> 0x000d │ │ positions : │ │ 0x0000 line=356 │ │ 0x0004 line=357 │ │ locals : │ │ @@ -1193897,46 +1193896,46 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -43a048: |[43a048] org.purple.smoke.UdpNeighbor.remoteScopeId:()Ljava/lang/String; │ │ -43a058: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ -43a05c: 1100 |0002: return-object v0 │ │ +43a044: |[43a044] org.purple.smoke.UdpNeighbor.remoteScopeId:()Ljava/lang/String; │ │ +43a054: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ +43a058: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #9 : (in Lorg/purple/smoke/UdpNeighbor;) │ │ name : 'send' │ │ type : '(Ljava/lang/String;)I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 26 16-bit code units │ │ -439eec: |[439eec] org.purple.smoke.UdpNeighbor.send:(Ljava/lang/String;)I │ │ -439efc: 6e10 98be 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be98 │ │ -439f02: 0a00 |0003: move-result v0 │ │ -439f04: 3800 1400 |0004: if-eqz v0, 0018 // +0014 │ │ -439f08: 3802 1200 |0006: if-eqz v2, 0018 // +0012 │ │ -439f0c: 6e10 c55c 0200 |0008: invoke-virtual {v2}, Ljava/lang/String;.length:()I // method@5cc5 │ │ -439f12: 0a00 |000b: move-result v0 │ │ -439f14: 3900 0300 |000c: if-nez v0, 000f // +0003 │ │ -439f18: 280a |000e: goto 0018 // +000a │ │ -439f1a: 6e10 bc5c 0200 |000f: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -439f20: 0c02 |0012: move-result-object v2 │ │ -439f22: 6e20 a1be 2100 |0013: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpNeighbor;.send:([B)I // method@bea1 │ │ -439f28: 0a02 |0016: move-result v2 │ │ -439f2a: 0f02 |0017: return v2 │ │ -439f2c: 1202 |0018: const/4 v2, #int 0 // #0 │ │ -439f2e: 0f02 |0019: return v2 │ │ +439ee8: |[439ee8] org.purple.smoke.UdpNeighbor.send:(Ljava/lang/String;)I │ │ +439ef8: 6e10 98be 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be98 │ │ +439efe: 0a00 |0003: move-result v0 │ │ +439f00: 3800 1400 |0004: if-eqz v0, 0018 // +0014 │ │ +439f04: 3802 1200 |0006: if-eqz v2, 0018 // +0012 │ │ +439f08: 6e10 c55c 0200 |0008: invoke-virtual {v2}, Ljava/lang/String;.length:()I // method@5cc5 │ │ +439f0e: 0a00 |000b: move-result v0 │ │ +439f10: 3900 0300 |000c: if-nez v0, 000f // +0003 │ │ +439f14: 280a |000e: goto 0018 // +000a │ │ +439f16: 6e10 bc5c 0200 |000f: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +439f1c: 0c02 |0012: move-result-object v2 │ │ +439f1e: 6e20 a1be 2100 |0013: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpNeighbor;.send:([B)I // method@bea1 │ │ +439f24: 0a02 |0016: move-result v2 │ │ +439f26: 0f02 |0017: return v2 │ │ +439f28: 1202 |0018: const/4 v2, #int 0 // #0 │ │ +439f2a: 0f02 |0019: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=88 │ │ 0x000f line=91 │ │ locals : │ │ 0x0000 - 0x001a reg=1 this Lorg/purple/smoke/UdpNeighbor; │ │ 0x0000 - 0x001a reg=2 (null) Ljava/lang/String; │ │ @@ -1193946,66 +1193945,66 @@ │ │ type : '([B)I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 10 │ │ ins : 2 │ │ outs : 5 │ │ insns size : 101 16-bit code units │ │ -439e00: |[439e00] org.purple.smoke.UdpNeighbor.send:([B)I │ │ -439e10: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -439e12: 3809 6300 |0001: if-eqz v9, 0064 // +0063 │ │ -439e16: 2191 |0003: array-length v1, v9 │ │ -439e18: 3801 6000 |0004: if-eqz v1, 0064 // +0060 │ │ -439e1c: 6e10 98be 0800 |0006: invoke-virtual {v8}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be98 │ │ -439e22: 0a01 |0009: move-result v1 │ │ -439e24: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ -439e28: 2858 |000c: goto 0064 // +0058 │ │ -439e2a: 5481 5560 |000d: iget-object v1, v8, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ -439e2e: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ -439e32: 0f00 |0011: return v0 │ │ -439e34: 2201 a50a |0012: new-instance v1, Ljava/io/ByteArrayInputStream; // type@0aa5 │ │ -439e38: 7020 6b5b 9100 |0014: invoke-direct {v1, v9}, Ljava/io/ByteArrayInputStream;.:([B)V // method@5b6b │ │ -439e3e: 6e10 6d5b 0100 |0017: invoke-virtual {v1}, Ljava/io/ByteArrayInputStream;.available:()I // method@5b6d │ │ -439e44: 0a02 |001a: move-result v2 │ │ -439e46: 3d02 3200 |001b: if-lez v2, 004d // +0032 │ │ -439e4a: 5482 4d60 |001d: iget-object v2, v8, Lorg/purple/smoke/UdpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@604d │ │ -439e4e: 6e10 d860 0200 |001f: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ -439e54: 0a02 |0022: move-result v2 │ │ -439e56: 3802 0300 |0023: if-eqz v2, 0026 // +0003 │ │ -439e5a: 2828 |0025: goto 004d // +0028 │ │ -439e5c: 1302 4002 |0026: const/16 v2, #int 576 // #240 │ │ -439e60: 6e10 6d5b 0100 |0028: invoke-virtual {v1}, Ljava/io/ByteArrayInputStream;.available:()I // method@5b6d │ │ -439e66: 0a03 |002b: move-result v3 │ │ -439e68: 7120 825c 3200 |002c: invoke-static {v2, v3}, Ljava/lang/Math;.min:(II)I // method@5c82 │ │ -439e6e: 0a02 |002f: move-result v2 │ │ -439e70: 2323 481b |0030: new-array v3, v2, [B // type@1b48 │ │ -439e74: 6e20 705b 3100 |0032: invoke-virtual {v1, v3}, Ljava/io/ByteArrayInputStream;.read:([B)I // method@5b70 │ │ -439e7a: 5484 5560 |0035: iget-object v4, v8, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ -439e7e: 2205 090b |0037: new-instance v5, Ljava/net/DatagramPacket; // type@0b09 │ │ -439e82: 5486 4e60 |0039: iget-object v6, v8, Lorg/purple/smoke/UdpNeighbor;.m_ipAddress:Ljava/lang/String; // field@604e │ │ -439e86: 7110 8b5d 0600 |003b: invoke-static {v6}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ -439e8c: 0c06 |003e: move-result-object v6 │ │ -439e8e: 5487 4f60 |003f: iget-object v7, v8, Lorg/purple/smoke/UdpNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@604f │ │ -439e92: 6e10 dc60 0700 |0041: invoke-virtual {v7}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ -439e98: 0a07 |0044: move-result v7 │ │ -439e9a: 7057 6d5d 3562 |0045: invoke-direct {v5, v3, v2, v6, v7}, Ljava/net/DatagramPacket;.:([BILjava/net/InetAddress;I)V // method@5d6d │ │ -439ea0: 6e20 795d 5400 |0048: invoke-virtual {v4, v5}, Ljava/net/DatagramSocket;.send:(Ljava/net/DatagramPacket;)V // method@5d79 │ │ -439ea6: b020 |004b: add-int/2addr v0, v2 │ │ -439ea8: 28cb |004c: goto 0017 // -0035 │ │ -439eaa: 7110 23bb 0900 |004d: invoke-static {v9}, Lorg/purple/smoke/Kernel;.writeCongestionDigest:([B)V // method@bb23 │ │ -439eb0: 5489 4c60 |0050: iget-object v9, v8, Lorg/purple/smoke/UdpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@604c │ │ -439eb4: 8101 |0052: int-to-long v1, v0 │ │ -439eb6: 6e30 e260 1902 |0053: invoke-virtual {v9, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e2 │ │ -439ebc: 1a09 0000 |0056: const-string v9, "" // string@0000 │ │ -439ec0: 6e20 a2be 9800 |0058: invoke-virtual {v8, v9}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea2 │ │ -439ec6: 2809 |005b: goto 0064 // +0009 │ │ -439ec8: 1a09 0e09 |005c: const-string v9, "A socket error occurred on send()." // string@090e │ │ -439ecc: 6e20 a2be 9800 |005e: invoke-virtual {v8, v9}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea2 │ │ -439ed2: 6e10 99be 0800 |0061: invoke-virtual {v8}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be99 │ │ -439ed8: 0f00 |0064: return v0 │ │ +439dfc: |[439dfc] org.purple.smoke.UdpNeighbor.send:([B)I │ │ +439e0c: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +439e0e: 3809 6300 |0001: if-eqz v9, 0064 // +0063 │ │ +439e12: 2191 |0003: array-length v1, v9 │ │ +439e14: 3801 6000 |0004: if-eqz v1, 0064 // +0060 │ │ +439e18: 6e10 98be 0800 |0006: invoke-virtual {v8}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be98 │ │ +439e1e: 0a01 |0009: move-result v1 │ │ +439e20: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ +439e24: 2858 |000c: goto 0064 // +0058 │ │ +439e26: 5481 5560 |000d: iget-object v1, v8, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ +439e2a: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ +439e2e: 0f00 |0011: return v0 │ │ +439e30: 2201 a50a |0012: new-instance v1, Ljava/io/ByteArrayInputStream; // type@0aa5 │ │ +439e34: 7020 6b5b 9100 |0014: invoke-direct {v1, v9}, Ljava/io/ByteArrayInputStream;.:([B)V // method@5b6b │ │ +439e3a: 6e10 6d5b 0100 |0017: invoke-virtual {v1}, Ljava/io/ByteArrayInputStream;.available:()I // method@5b6d │ │ +439e40: 0a02 |001a: move-result v2 │ │ +439e42: 3d02 3200 |001b: if-lez v2, 004d // +0032 │ │ +439e46: 5482 4d60 |001d: iget-object v2, v8, Lorg/purple/smoke/UdpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@604d │ │ +439e4a: 6e10 d860 0200 |001f: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60d8 │ │ +439e50: 0a02 |0022: move-result v2 │ │ +439e52: 3802 0300 |0023: if-eqz v2, 0026 // +0003 │ │ +439e56: 2828 |0025: goto 004d // +0028 │ │ +439e58: 1302 4002 |0026: const/16 v2, #int 576 // #240 │ │ +439e5c: 6e10 6d5b 0100 |0028: invoke-virtual {v1}, Ljava/io/ByteArrayInputStream;.available:()I // method@5b6d │ │ +439e62: 0a03 |002b: move-result v3 │ │ +439e64: 7120 825c 3200 |002c: invoke-static {v2, v3}, Ljava/lang/Math;.min:(II)I // method@5c82 │ │ +439e6a: 0a02 |002f: move-result v2 │ │ +439e6c: 2323 481b |0030: new-array v3, v2, [B // type@1b48 │ │ +439e70: 6e20 705b 3100 |0032: invoke-virtual {v1, v3}, Ljava/io/ByteArrayInputStream;.read:([B)I // method@5b70 │ │ +439e76: 5484 5560 |0035: iget-object v4, v8, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6055 │ │ +439e7a: 2205 090b |0037: new-instance v5, Ljava/net/DatagramPacket; // type@0b09 │ │ +439e7e: 5486 4e60 |0039: iget-object v6, v8, Lorg/purple/smoke/UdpNeighbor;.m_ipAddress:Ljava/lang/String; // field@604e │ │ +439e82: 7110 8b5d 0600 |003b: invoke-static {v6}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ +439e88: 0c06 |003e: move-result-object v6 │ │ +439e8a: 5487 4f60 |003f: iget-object v7, v8, Lorg/purple/smoke/UdpNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@604f │ │ +439e8e: 6e10 dc60 0700 |0041: invoke-virtual {v7}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60dc │ │ +439e94: 0a07 |0044: move-result v7 │ │ +439e96: 7057 6d5d 3562 |0045: invoke-direct {v5, v3, v2, v6, v7}, Ljava/net/DatagramPacket;.:([BILjava/net/InetAddress;I)V // method@5d6d │ │ +439e9c: 6e20 795d 5400 |0048: invoke-virtual {v4, v5}, Ljava/net/DatagramSocket;.send:(Ljava/net/DatagramPacket;)V // method@5d79 │ │ +439ea2: b020 |004b: add-int/2addr v0, v2 │ │ +439ea4: 28cb |004c: goto 0017 // -0035 │ │ +439ea6: 7110 23bb 0900 |004d: invoke-static {v9}, Lorg/purple/smoke/Kernel;.writeCongestionDigest:([B)V // method@bb23 │ │ +439eac: 5489 4c60 |0050: iget-object v9, v8, Lorg/purple/smoke/UdpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@604c │ │ +439eb0: 8101 |0052: int-to-long v1, v0 │ │ +439eb2: 6e30 e260 1902 |0053: invoke-virtual {v9, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e2 │ │ +439eb8: 1a09 0000 |0056: const-string v9, "" // string@0000 │ │ +439ebc: 6e20 a2be 9800 |0058: invoke-virtual {v8, v9}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea2 │ │ +439ec2: 2809 |005b: goto 0064 // +0009 │ │ +439ec4: 1a09 0e09 |005c: const-string v9, "A socket error occurred on send()." // string@090e │ │ +439ec8: 6e20 a2be 9800 |005e: invoke-virtual {v8, v9}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea2 │ │ +439ece: 6e10 99be 0800 |0061: invoke-virtual {v8}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be99 │ │ +439ed4: 0f00 |0064: return v0 │ │ catches : 1 │ │ 0x000d - 0x005b │ │ Ljava/lang/Exception; -> 0x005c │ │ positions : │ │ 0x0003 line=98 │ │ 0x000d line=103 │ │ 0x0012 line=106 │ │ @@ -1194031,17 +1194030,17 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -43a060: |[43a060] org.purple.smoke.UdpNeighbor.transport:()Ljava/lang/String; │ │ -43a070: 1a00 ff4f |0000: const-string v0, "UDP" // string@4fff │ │ -43a074: 1100 |0002: return-object v0 │ │ +43a05c: |[43a05c] org.purple.smoke.UdpNeighbor.transport:()Ljava/lang/String; │ │ +43a06c: 1a00 ff4f |0000: const-string v0, "UDP" // string@4fff │ │ +43a070: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ source_file_idx : 20543 (UdpNeighbor.java) │ │ │ │ Class #4378 header: │ │ @@ -1455139,17 +1455138,17 @@ │ │ type : '(Landroid/content/Context;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 4 16-bit code units │ │ -4325dc: |[4325dc] org.purple.smoke.Steam$SteamLinearLayoutManager.:(Landroid/content/Context;)V │ │ -4325ec: 7020 3a4a 1000 |0000: invoke-direct {v0, v1}, Landroid/support/v7/widget/LinearLayoutManager;.:(Landroid/content/Context;)V // method@4a3a │ │ -4325f2: 0e00 |0003: return-void │ │ +4325d8: |[4325d8] org.purple.smoke.Steam$SteamLinearLayoutManager.:(Landroid/content/Context;)V │ │ +4325e8: 7020 3a4a 1000 |0000: invoke-direct {v0, v1}, Landroid/support/v7/widget/LinearLayoutManager;.:(Landroid/content/Context;)V // method@4a3a │ │ +4325ee: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=106 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lorg/purple/smoke/Steam$SteamLinearLayoutManager; │ │ 0x0000 - 0x0004 reg=1 (null) Landroid/content/Context; │ │ │ │ @@ -1455159,17 +1455158,17 @@ │ │ type : '(Landroid/support/v7/widget/RecyclerView$Recycler;Landroid/support/v7/widget/RecyclerView$State;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 4 16-bit code units │ │ -4325f4: |[4325f4] org.purple.smoke.Steam$SteamLinearLayoutManager.onLayoutChildren:(Landroid/support/v7/widget/RecyclerView$Recycler;Landroid/support/v7/widget/RecyclerView$State;)V │ │ -432604: 6f30 8d4a 1002 |0000: invoke-super {v0, v1, v2}, Landroid/support/v7/widget/LinearLayoutManager;.onLayoutChildren:(Landroid/support/v7/widget/RecyclerView$Recycler;Landroid/support/v7/widget/RecyclerView$State;)V // method@4a8d │ │ -43260a: 0e00 |0003: return-void │ │ +4325f0: |[4325f0] org.purple.smoke.Steam$SteamLinearLayoutManager.onLayoutChildren:(Landroid/support/v7/widget/RecyclerView$Recycler;Landroid/support/v7/widget/RecyclerView$State;)V │ │ +432600: 6f30 8d4a 1002 |0000: invoke-super {v0, v1, v2}, Landroid/support/v7/widget/LinearLayoutManager;.onLayoutChildren:(Landroid/support/v7/widget/RecyclerView$Recycler;Landroid/support/v7/widget/RecyclerView$State;)V // method@4a8d │ │ +432606: 0e00 |0003: return-void │ │ catches : 1 │ │ 0x0000 - 0x0003 │ │ Ljava/lang/Exception; -> 0x0003 │ │ positions : │ │ 0x0000 line=119 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lorg/purple/smoke/Steam$SteamLinearLayoutManager; │ │ @@ -1568876,25 +1568875,25 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 1 │ │ insns size : 21 16-bit code units │ │ -42c354: |[42c354] org.purple.smoke.Settings.:()V │ │ -42c364: 7100 8db9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ -42c36a: 0c00 |0003: move-result-object v0 │ │ -42c36c: 6900 0a5f |0004: sput-object v0, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42c370: 2200 da1a |0006: new-instance v0, Lorg/purple/smoke/Settings$1; // type@1ada │ │ -42c374: 7010 59bc 0000 |0008: invoke-direct {v0}, Lorg/purple/smoke/Settings$1;.:()V // method@bc59 │ │ -42c37a: 6900 0b5f |000b: sput-object v0, Lorg/purple/smoke/Settings;.s_portFilter:Landroid/text/InputFilter; // field@5f0b │ │ -42c37e: 2200 e71a |000d: new-instance v0, Lorg/purple/smoke/Settings$2; // type@1ae7 │ │ -42c382: 7010 74bc 0000 |000f: invoke-direct {v0}, Lorg/purple/smoke/Settings$2;.:()V // method@bc74 │ │ -42c388: 6900 0c5f |0012: sput-object v0, Lorg/purple/smoke/Settings;.s_sipHashInputFilter:Landroid/text/InputFilter; // field@5f0c │ │ -42c38c: 0e00 |0014: return-void │ │ +42c350: |[42c350] org.purple.smoke.Settings.:()V │ │ +42c360: 7100 8db9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ +42c366: 0c00 |0003: move-result-object v0 │ │ +42c368: 6900 0a5f |0004: sput-object v0, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42c36c: 2200 da1a |0006: new-instance v0, Lorg/purple/smoke/Settings$1; // type@1ada │ │ +42c370: 7010 59bc 0000 |0008: invoke-direct {v0}, Lorg/purple/smoke/Settings$1;.:()V // method@bc59 │ │ +42c376: 6900 0b5f |000b: sput-object v0, Lorg/purple/smoke/Settings;.s_portFilter:Landroid/text/InputFilter; // field@5f0b │ │ +42c37a: 2200 e71a |000d: new-instance v0, Lorg/purple/smoke/Settings$2; // type@1ae7 │ │ +42c37e: 7010 74bc 0000 |000f: invoke-direct {v0}, Lorg/purple/smoke/Settings$2;.:()V // method@bc74 │ │ +42c384: 6900 0c5f |0012: sput-object v0, Lorg/purple/smoke/Settings;.s_sipHashInputFilter:Landroid/text/InputFilter; // field@5f0c │ │ +42c388: 0e00 |0014: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=172 │ │ 0x0006 line=173 │ │ 0x000d line=197 │ │ locals : │ │ │ │ @@ -1568903,23 +1568902,23 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 14 16-bit code units │ │ -42c390: |[42c390] org.purple.smoke.Settings.:()V │ │ -42c3a0: 7010 df3c 0100 |0000: invoke-direct {v1}, Landroid/support/v7/app/AppCompatActivity;.:()V // method@3cdf │ │ -42c3a6: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -42c3a8: 5b10 065f |0004: iput-object v0, v1, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c3ac: 5b10 095f |0006: iput-object v0, v1, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ -42c3b0: 5b10 075f |0008: iput-object v0, v1, Lorg/purple/smoke/Settings;.m_receiver:Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // field@5f07 │ │ -42c3b4: 1200 |000a: const/4 v0, #int 0 // #0 │ │ -42c3b6: 5c10 085f |000b: iput-boolean v0, v1, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ -42c3ba: 0e00 |000d: return-void │ │ +42c38c: |[42c38c] org.purple.smoke.Settings.:()V │ │ +42c39c: 7010 df3c 0100 |0000: invoke-direct {v1}, Landroid/support/v7/app/AppCompatActivity;.:()V // method@3cdf │ │ +42c3a2: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +42c3a4: 5b10 065f |0004: iput-object v0, v1, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c3a8: 5b10 095f |0006: iput-object v0, v1, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ +42c3ac: 5b10 075f |0008: iput-object v0, v1, Lorg/purple/smoke/Settings;.m_receiver:Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // field@5f07 │ │ +42c3b0: 1200 |000a: const/4 v0, #int 0 // #0 │ │ +42c3b2: 5c10 085f |000b: iput-boolean v0, v1, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ +42c3b6: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ 0x0004 line=167 │ │ 0x0006 line=168 │ │ 0x0008 line=169 │ │ 0x000b line=170 │ │ @@ -1568931,17 +1568930,17 @@ │ │ type : '(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 4 16-bit code units │ │ -42c3bc: |[42c3bc] org.purple.smoke.Settings.access$000:(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V │ │ -42c3cc: 7020 fcbc 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.populateNeighbors:(Ljava/util/ArrayList;)V // method@bcfc │ │ -42c3d2: 0e00 |0003: return-void │ │ +42c3b8: |[42c3b8] org.purple.smoke.Settings.access$000:(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V │ │ +42c3c8: 7020 fcbc 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.populateNeighbors:(Ljava/util/ArrayList;)V // method@bcfc │ │ +42c3ce: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Settings; │ │ 0x0000 - 0x0004 reg=1 (null) Ljava/util/ArrayList; │ │ │ │ @@ -1568950,17 +1568949,17 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -42c3d4: |[42c3d4] org.purple.smoke.Settings.access$100:(Lorg/purple/smoke/Settings;)V │ │ -42c3e4: 7010 f0bc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.networkStatusChanged:()V // method@bcf0 │ │ -42c3ea: 0e00 |0003: return-void │ │ +42c3d0: |[42c3d0] org.purple.smoke.Settings.access$100:(Lorg/purple/smoke/Settings;)V │ │ +42c3e0: 7010 f0bc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.networkStatusChanged:()V // method@bcf0 │ │ +42c3e6: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Settings; │ │ │ │ #4 : (in Lorg/purple/smoke/Settings;) │ │ @@ -1568968,17 +1568967,17 @@ │ │ type : '(Lorg/purple/smoke/Settings;Z)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 4 16-bit code units │ │ -42c3ec: |[42c3ec] org.purple.smoke.Settings.access$1000:(Lorg/purple/smoke/Settings;Z)V │ │ -42c3fc: 7020 e3bc 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.enableWidgets:(Z)V // method@bce3 │ │ -42c402: 0e00 |0003: return-void │ │ +42c3e8: |[42c3e8] org.purple.smoke.Settings.access$1000:(Lorg/purple/smoke/Settings;Z)V │ │ +42c3f8: 7020 e3bc 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.enableWidgets:(Z)V // method@bce3 │ │ +42c3fe: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Settings; │ │ 0x0000 - 0x0004 reg=1 (null) Z │ │ │ │ @@ -1568987,17 +1568986,17 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -42c404: |[42c404] org.purple.smoke.Settings.access$1100:(Lorg/purple/smoke/Settings;)V │ │ -42c414: 7010 11bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.showWidgets:()V // method@bd11 │ │ -42c41a: 0e00 |0003: return-void │ │ +42c400: |[42c400] org.purple.smoke.Settings.access$1100:(Lorg/purple/smoke/Settings;)V │ │ +42c410: 7010 11bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.showWidgets:()V // method@bd11 │ │ +42c416: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Settings; │ │ │ │ #6 : (in Lorg/purple/smoke/Settings;) │ │ @@ -1569005,17 +1569004,17 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -42c41c: |[42c41c] org.purple.smoke.Settings.access$1200:(Lorg/purple/smoke/Settings;)V │ │ -42c42c: 7010 fbbc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.populateFancyKeyData:()V // method@bcfb │ │ -42c432: 0e00 |0003: return-void │ │ +42c418: |[42c418] org.purple.smoke.Settings.access$1200:(Lorg/purple/smoke/Settings;)V │ │ +42c428: 7010 fbbc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.populateFancyKeyData:()V // method@bcfb │ │ +42c42e: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Settings; │ │ │ │ #7 : (in Lorg/purple/smoke/Settings;) │ │ @@ -1569023,17 +1569022,17 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -42c434: |[42c434] org.purple.smoke.Settings.access$1300:(Lorg/purple/smoke/Settings;)V │ │ -42c444: 7010 fdbc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.populateOzone:()V // method@bcfd │ │ -42c44a: 0e00 |0003: return-void │ │ +42c430: |[42c430] org.purple.smoke.Settings.access$1300:(Lorg/purple/smoke/Settings;)V │ │ +42c440: 7010 fdbc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.populateOzone:()V // method@bcfd │ │ +42c446: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Settings; │ │ │ │ #8 : (in Lorg/purple/smoke/Settings;) │ │ @@ -1569041,17 +1569040,17 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -42c44c: |[42c44c] org.purple.smoke.Settings.access$1400:(Lorg/purple/smoke/Settings;)V │ │ -42c45c: 7010 13bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.startKernel:()V // method@bd13 │ │ -42c462: 0e00 |0003: return-void │ │ +42c448: |[42c448] org.purple.smoke.Settings.access$1400:(Lorg/purple/smoke/Settings;)V │ │ +42c458: 7010 13bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.startKernel:()V // method@bd13 │ │ +42c45e: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Settings; │ │ │ │ #9 : (in Lorg/purple/smoke/Settings;) │ │ @@ -1569059,17 +1569058,17 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -42c464: |[42c464] org.purple.smoke.Settings.access$1500:(Lorg/purple/smoke/Settings;)V │ │ -42c474: 7010 14bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.startTimers:()V // method@bd14 │ │ -42c47a: 0e00 |0003: return-void │ │ +42c460: |[42c460] org.purple.smoke.Settings.access$1500:(Lorg/purple/smoke/Settings;)V │ │ +42c470: 7010 14bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.startTimers:()V // method@bd14 │ │ +42c476: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Settings; │ │ │ │ #10 : (in Lorg/purple/smoke/Settings;) │ │ @@ -1569077,17 +1569076,17 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -42c47c: |[42c47c] org.purple.smoke.Settings.access$1600:(Lorg/purple/smoke/Settings;)V │ │ -42c48c: 7010 dfbc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.addNeighbor:()V // method@bcdf │ │ -42c492: 0e00 |0003: return-void │ │ +42c478: |[42c478] org.purple.smoke.Settings.access$1600:(Lorg/purple/smoke/Settings;)V │ │ +42c488: 7010 dfbc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.addNeighbor:()V // method@bcdf │ │ +42c48e: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Settings; │ │ │ │ #11 : (in Lorg/purple/smoke/Settings;) │ │ @@ -1569095,17 +1569094,17 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -42c494: |[42c494] org.purple.smoke.Settings.access$1700:(Lorg/purple/smoke/Settings;)V │ │ -42c4a4: 7010 e0bc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.addParticipant:()V // method@bce0 │ │ -42c4aa: 0e00 |0003: return-void │ │ +42c490: |[42c490] org.purple.smoke.Settings.access$1700:(Lorg/purple/smoke/Settings;)V │ │ +42c4a0: 7010 e0bc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.addParticipant:()V // method@bce0 │ │ +42c4a6: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Settings; │ │ │ │ #12 : (in Lorg/purple/smoke/Settings;) │ │ @@ -1569113,17 +1569112,17 @@ │ │ type : '(Lorg/purple/smoke/Settings;Ljava/lang/String;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 4 16-bit code units │ │ -42c4ac: |[42c4ac] org.purple.smoke.Settings.access$1800:(Lorg/purple/smoke/Settings;Ljava/lang/String;)V │ │ -42c4bc: 7020 e4bc 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.epks:(Ljava/lang/String;)V // method@bce4 │ │ -42c4c2: 0e00 |0003: return-void │ │ +42c4a8: |[42c4a8] org.purple.smoke.Settings.access$1800:(Lorg/purple/smoke/Settings;Ljava/lang/String;)V │ │ +42c4b8: 7020 e4bc 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.epks:(Ljava/lang/String;)V // method@bce4 │ │ +42c4be: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Settings; │ │ 0x0000 - 0x0004 reg=1 (null) Ljava/lang/String; │ │ │ │ @@ -1569132,17 +1569131,17 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -42c4c4: |[42c4c4] org.purple.smoke.Settings.access$1900:(Lorg/purple/smoke/Settings;)V │ │ -42c4d4: 7010 02bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.preparePKI:()V // method@bd02 │ │ -42c4da: 0e00 |0003: return-void │ │ +42c4c0: |[42c4c0] org.purple.smoke.Settings.access$1900:(Lorg/purple/smoke/Settings;)V │ │ +42c4d0: 7010 02bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.preparePKI:()V // method@bd02 │ │ +42c4d6: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Settings; │ │ │ │ #14 : (in Lorg/purple/smoke/Settings;) │ │ @@ -1569150,17 +1569149,17 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -42c4dc: |[42c4dc] org.purple.smoke.Settings.access$200:(Lorg/purple/smoke/Settings;)V │ │ -42c4ec: 7010 febc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.populateParticipants:()V // method@bcfe │ │ -42c4f2: 0e00 |0003: return-void │ │ +42c4d8: |[42c4d8] org.purple.smoke.Settings.access$200:(Lorg/purple/smoke/Settings;)V │ │ +42c4e8: 7010 febc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.populateParticipants:()V // method@bcfe │ │ +42c4ee: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Settings; │ │ │ │ #15 : (in Lorg/purple/smoke/Settings;) │ │ @@ -1569168,17 +1569167,17 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -42c4f4: |[42c4f4] org.purple.smoke.Settings.access$2000:(Lorg/purple/smoke/Settings;)V │ │ -42c504: 7010 ffbc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.prepareCredentials:()V // method@bcff │ │ -42c50a: 0e00 |0003: return-void │ │ +42c4f0: |[42c4f0] org.purple.smoke.Settings.access$2000:(Lorg/purple/smoke/Settings;)V │ │ +42c500: 7010 ffbc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.prepareCredentials:()V // method@bcff │ │ +42c506: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Settings; │ │ │ │ #16 : (in Lorg/purple/smoke/Settings;) │ │ @@ -1569186,18 +1569185,18 @@ │ │ type : '(Lorg/purple/smoke/Settings;Ljava/lang/String;)Z' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 5 16-bit code units │ │ -42bd0c: |[42bd0c] org.purple.smoke.Settings.access$2100:(Lorg/purple/smoke/Settings;Ljava/lang/String;)Z │ │ -42bd1c: 7020 e7bc 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.generateOzone:(Ljava/lang/String;)Z // method@bce7 │ │ -42bd22: 0a00 |0003: move-result v0 │ │ -42bd24: 0f00 |0004: return v0 │ │ +42bd08: |[42bd08] org.purple.smoke.Settings.access$2100:(Lorg/purple/smoke/Settings;Ljava/lang/String;)Z │ │ +42bd18: 7020 e7bc 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.generateOzone:(Ljava/lang/String;)Z // method@bce7 │ │ +42bd1e: 0a00 |0003: move-result v0 │ │ +42bd20: 0f00 |0004: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0005 reg=0 (null) Lorg/purple/smoke/Settings; │ │ 0x0000 - 0x0005 reg=1 (null) Ljava/lang/String; │ │ │ │ @@ -1569206,17 +1569205,17 @@ │ │ type : '(Lorg/purple/smoke/Settings;I)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 4 16-bit code units │ │ -42c50c: |[42c50c] org.purple.smoke.Settings.access$2200:(Lorg/purple/smoke/Settings;I)V │ │ -42c51c: 7020 09bd 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.shareSipHashId:(I)V // method@bd09 │ │ -42c522: 0e00 |0003: return-void │ │ +42c508: |[42c508] org.purple.smoke.Settings.access$2200:(Lorg/purple/smoke/Settings;I)V │ │ +42c518: 7020 09bd 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.shareSipHashId:(I)V // method@bd09 │ │ +42c51e: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Settings; │ │ 0x0000 - 0x0004 reg=1 (null) I │ │ │ │ @@ -1569225,34 +1569224,34 @@ │ │ type : '()Landroid/text/InputFilter;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -42bcf4: |[42bcf4] org.purple.smoke.Settings.access$2300:()Landroid/text/InputFilter; │ │ -42bd04: 6200 0c5f |0000: sget-object v0, Lorg/purple/smoke/Settings;.s_sipHashInputFilter:Landroid/text/InputFilter; // field@5f0c │ │ -42bd08: 1100 |0002: return-object v0 │ │ +42bcf0: |[42bcf0] org.purple.smoke.Settings.access$2300:()Landroid/text/InputFilter; │ │ +42bd00: 6200 0c5f |0000: sget-object v0, Lorg/purple/smoke/Settings;.s_sipHashInputFilter:Landroid/text/InputFilter; // field@5f0c │ │ +42bd04: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ │ │ #19 : (in Lorg/purple/smoke/Settings;) │ │ name : 'access$2400' │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -42c524: |[42c524] org.purple.smoke.Settings.access$2400:(Lorg/purple/smoke/Settings;)V │ │ -42c534: 7010 15bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.stopTimers:()V // method@bd15 │ │ -42c53a: 0e00 |0003: return-void │ │ +42c520: |[42c520] org.purple.smoke.Settings.access$2400:(Lorg/purple/smoke/Settings;)V │ │ +42c530: 7010 15bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.stopTimers:()V // method@bd15 │ │ +42c536: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Settings; │ │ │ │ #20 : (in Lorg/purple/smoke/Settings;) │ │ @@ -1569260,34 +1569259,34 @@ │ │ type : '()Lorg/purple/smoke/Cryptography;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -42c324: |[42c324] org.purple.smoke.Settings.access$300:()Lorg/purple/smoke/Cryptography; │ │ -42c334: 6200 0a5f |0000: sget-object v0, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42c338: 1100 |0002: return-object v0 │ │ +42c320: |[42c320] org.purple.smoke.Settings.access$300:()Lorg/purple/smoke/Cryptography; │ │ +42c330: 6200 0a5f |0000: sget-object v0, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42c334: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ │ │ #21 : (in Lorg/purple/smoke/Settings;) │ │ name : 'access$400' │ │ type : '(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -42c33c: |[42c33c] org.purple.smoke.Settings.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; │ │ -42c34c: 5400 065f |0000: iget-object v0, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c350: 1100 |0002: return-object v0 │ │ +42c338: |[42c338] org.purple.smoke.Settings.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; │ │ +42c348: 5400 065f |0000: iget-object v0, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c34c: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings; │ │ │ │ #22 : (in Lorg/purple/smoke/Settings;) │ │ @@ -1569295,17 +1569294,17 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -42c53c: |[42c53c] org.purple.smoke.Settings.access$500:(Lorg/purple/smoke/Settings;)V │ │ -42c54c: 7010 e2bc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.disablePKIButtons:()V // method@bce2 │ │ -42c552: 0e00 |0003: return-void │ │ +42c538: |[42c538] org.purple.smoke.Settings.access$500:(Lorg/purple/smoke/Settings;)V │ │ +42c548: 7010 e2bc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.disablePKIButtons:()V // method@bce2 │ │ +42c54e: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Settings; │ │ │ │ #23 : (in Lorg/purple/smoke/Settings;) │ │ @@ -1569313,17 +1569312,17 @@ │ │ type : '(Lorg/purple/smoke/Settings;Ljava/lang/String;I)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 4 16-bit code units │ │ -42c554: |[42c554] org.purple.smoke.Settings.access$800:(Lorg/purple/smoke/Settings;Ljava/lang/String;I)V │ │ -42c564: 7030 e1bc 1002 |0000: invoke-direct {v0, v1, v2}, Lorg/purple/smoke/Settings;.deleteNeighbor:(Ljava/lang/String;I)V // method@bce1 │ │ -42c56a: 0e00 |0003: return-void │ │ +42c550: |[42c550] org.purple.smoke.Settings.access$800:(Lorg/purple/smoke/Settings;Ljava/lang/String;I)V │ │ +42c560: 7030 e1bc 1002 |0000: invoke-direct {v0, v1, v2}, Lorg/purple/smoke/Settings;.deleteNeighbor:(Ljava/lang/String;I)V // method@bce1 │ │ +42c566: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Settings; │ │ 0x0000 - 0x0004 reg=1 (null) Ljava/lang/String; │ │ 0x0000 - 0x0004 reg=2 (null) I │ │ @@ -1569333,172 +1569332,172 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 26 │ │ ins : 1 │ │ outs : 12 │ │ insns size : 329 16-bit code units │ │ -42c56c: |[42c56c] org.purple.smoke.Settings.addNeighbor:()V │ │ -42c57c: 0800 1900 |0000: move-object/from16 v0, v25 │ │ -42c580: 1401 ab00 087f |0002: const v1, #float 1.80778e+38 // #7f0800ab │ │ -42c586: 6e20 e5bc 1000 |0005: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42c58c: 0c01 |0008: move-result-object v1 │ │ -42c58e: 1f01 7f0a |0009: check-cast v1, Landroid/widget/RadioGroup; // type@0a7f │ │ -42c592: 1402 ae00 087f |000b: const v2, #float 1.80779e+38 // #7f0800ae │ │ -42c598: 6e20 e5bc 2000 |000e: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42c59e: 0c02 |0011: move-result-object v2 │ │ -42c5a0: 1f02 8b0a |0012: check-cast v2, Landroid/widget/Spinner; // type@0a8b │ │ -42c5a4: 1403 d400 087f |0014: const v3, #float 1.80779e+38 // #7f0800d4 │ │ -42c5aa: 6e20 e5bc 3000 |0017: invoke-virtual {v0, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42c5b0: 0c03 |001a: move-result-object v3 │ │ -42c5b2: 1f03 8b0a |001b: check-cast v3, Landroid/widget/Spinner; // type@0a8b │ │ -42c5b6: 1404 2c00 087f |001d: const v4, #float 1.80776e+38 // #7f08002c │ │ -42c5bc: 6e20 e5bc 4000 |0020: invoke-virtual {v0, v4}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42c5c2: 0c04 |0023: move-result-object v4 │ │ -42c5c4: 1f04 8d0a |0024: check-cast v4, Landroid/widget/Switch; // type@0a8d │ │ -42c5c8: 1405 8100 087f |0026: const v5, #float 1.80778e+38 // #7f080081 │ │ -42c5ce: 6e20 e5bc 5000 |0029: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42c5d4: 0c05 |002c: move-result-object v5 │ │ -42c5d6: 1f05 8d0a |002d: check-cast v5, Landroid/widget/Switch; // type@0a8d │ │ -42c5da: 1406 b000 087f |002f: const v6, #float 1.80779e+38 // #7f0800b0 │ │ -42c5e0: 6e20 e5bc 6000 |0032: invoke-virtual {v0, v6}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42c5e6: 0c06 |0035: move-result-object v6 │ │ -42c5e8: 1f06 8d0a |0036: check-cast v6, Landroid/widget/Switch; // type@0a8d │ │ -42c5ec: 1407 c100 087f |0038: const v7, #float 1.80779e+38 // #7f0800c1 │ │ -42c5f2: 6e20 e5bc 7000 |003b: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42c5f8: 0c07 |003e: move-result-object v7 │ │ -42c5fa: 1f07 8d0a |003f: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ -42c5fe: 1408 d200 087f |0041: const v8, #float 1.80779e+38 // #7f0800d2 │ │ -42c604: 6e20 e5bc 8000 |0044: invoke-virtual {v0, v8}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42c60a: 0c08 |0047: move-result-object v8 │ │ -42c60c: 1f08 970a |0048: check-cast v8, Landroid/widget/TextView; // type@0a97 │ │ -42c610: 1409 d300 087f |004a: const v9, #float 1.80779e+38 // #7f0800d3 │ │ -42c616: 6e20 e5bc 9000 |004d: invoke-virtual {v0, v9}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42c61c: 0c09 |0050: move-result-object v9 │ │ -42c61e: 1f09 970a |0051: check-cast v9, Landroid/widget/TextView; // type@0a97 │ │ -42c622: 140a a800 087f |0053: const v10, #float 1.80778e+38 // #7f0800a8 │ │ -42c628: 6e20 e5bc a000 |0056: invoke-virtual {v0, v10}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42c62e: 0c0a |0059: move-result-object v10 │ │ -42c630: 1f0a 970a |005a: check-cast v10, Landroid/widget/TextView; // type@0a97 │ │ -42c634: 140b ac00 087f |005c: const v11, #float 1.80778e+38 // #7f0800ac │ │ -42c63a: 6e20 e5bc b000 |005f: invoke-virtual {v0, v11}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42c640: 0c0b |0062: move-result-object v11 │ │ -42c642: 1f0b 970a |0063: check-cast v11, Landroid/widget/TextView; // type@0a97 │ │ -42c646: 140c ad00 087f |0065: const v12, #float 1.80779e+38 // #7f0800ad │ │ -42c64c: 6e20 e5bc c000 |0068: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42c652: 0c0c |006b: move-result-object v12 │ │ -42c654: 1f0c 970a |006c: check-cast v12, Landroid/widget/TextView; // type@0a97 │ │ -42c658: 6e10 665a 0100 |006e: invoke-virtual {v1}, Landroid/widget/RadioGroup;.getCheckedRadioButtonId:()I // method@5a66 │ │ -42c65e: 0a01 |0071: move-result v1 │ │ -42c660: 140d a900 087f |0072: const v13, #float 1.80778e+38 // #7f0800a9 │ │ -42c666: 33d1 0500 |0075: if-ne v1, v13, 007a // +0005 │ │ -42c66a: 1a01 a91d |0077: const-string v1, "IPv4" // string@1da9 │ │ -42c66e: 2803 |0079: goto 007c // +0003 │ │ -42c670: 1a01 aa1d |007a: const-string v1, "IPv6" // string@1daa │ │ -42c674: 0818 0100 |007c: move-object/from16 v24, v1 │ │ -42c678: 6e10 1c5b 0a00 |007e: invoke-virtual {v10}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c67e: 0c01 |0081: move-result-object v1 │ │ -42c680: 7210 045c 0100 |0082: invoke-interface {v1}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c686: 0c01 |0085: move-result-object v1 │ │ -42c688: 6e10 d35c 0100 |0086: invoke-virtual {v1}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42c68e: 0c01 |0089: move-result-object v1 │ │ -42c690: 6e10 c35c 0100 |008a: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42c696: 0a01 |008d: move-result v1 │ │ -42c698: 3801 0900 |008e: if-eqz v1, 0097 // +0009 │ │ -42c69c: 1a01 d544 |0090: const-string v1, "Please complete the IP Address field." // string@44d5 │ │ -42c6a0: 7120 f5bb 1000 |0092: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ -42c6a6: 2900 b300 |0095: goto/16 0148 // +00b3 │ │ -42c6aa: 540d 065f |0097: iget-object v13, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c6ae: 620e 0a5f |0099: sget-object v14, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42c6b2: 6e10 da5a 0600 |009b: invoke-virtual {v6}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42c6b8: 0a01 |009e: move-result v1 │ │ -42c6ba: 1a06 95a5 |009f: const-string v6, "true" // string@a595 │ │ -42c6be: 1a0f 2068 |00a1: const-string v15, "false" // string@6820 │ │ -42c6c2: 3801 0400 |00a3: if-eqz v1, 00a7 // +0004 │ │ -42c6c6: 0761 |00a5: move-object v1, v6 │ │ -42c6c8: 2802 |00a6: goto 00a8 // +0002 │ │ -42c6ca: 07f1 |00a7: move-object v1, v15 │ │ -42c6cc: 6e10 da5a 0700 |00a8: invoke-virtual {v7}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42c6d2: 0a07 |00ab: move-result v7 │ │ -42c6d4: 3807 0500 |00ac: if-eqz v7, 00b1 // +0005 │ │ -42c6d8: 0810 0600 |00ae: move-object/from16 v16, v6 │ │ -42c6dc: 2803 |00b0: goto 00b3 // +0003 │ │ -42c6de: 0810 0f00 |00b1: move-object/from16 v16, v15 │ │ -42c6e2: 6e10 1c5b 0800 |00b3: invoke-virtual {v8}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c6e8: 0c06 |00b6: move-result-object v6 │ │ -42c6ea: 7210 045c 0600 |00b7: invoke-interface {v6}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c6f0: 0c11 |00ba: move-result-object v17 │ │ -42c6f2: 6e10 1c5b 0900 |00bb: invoke-virtual {v9}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c6f8: 0c06 |00be: move-result-object v6 │ │ -42c6fa: 7210 045c 0600 |00bf: invoke-interface {v6}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c700: 0c12 |00c2: move-result-object v18 │ │ -42c702: 6e10 ba5a 0300 |00c3: invoke-virtual {v3}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -42c708: 0c03 |00c6: move-result-object v3 │ │ -42c70a: 6e10 965c 0300 |00c7: invoke-virtual {v3}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -42c710: 0c13 |00ca: move-result-object v19 │ │ -42c712: 6e10 1c5b 0a00 |00cb: invoke-virtual {v10}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c718: 0c03 |00ce: move-result-object v3 │ │ -42c71a: 7210 045c 0300 |00cf: invoke-interface {v3}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c720: 0c14 |00d2: move-result-object v20 │ │ -42c722: 6e10 1c5b 0b00 |00d3: invoke-virtual {v11}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c728: 0c03 |00d6: move-result-object v3 │ │ -42c72a: 7210 045c 0300 |00d7: invoke-interface {v3}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c730: 0c15 |00da: move-result-object v21 │ │ -42c732: 6e10 1c5b 0c00 |00db: invoke-virtual {v12}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c738: 0c03 |00de: move-result-object v3 │ │ -42c73a: 7210 045c 0300 |00df: invoke-interface {v3}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c740: 0c16 |00e2: move-result-object v22 │ │ -42c742: 6e10 ba5a 0200 |00e3: invoke-virtual {v2}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -42c748: 0c03 |00e6: move-result-object v3 │ │ -42c74a: 6e10 965c 0300 |00e7: invoke-virtual {v3}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -42c750: 0c17 |00ea: move-result-object v23 │ │ -42c752: 071f |00eb: move-object v15, v1 │ │ -42c754: 740c 34ba 0d00 |00ec: invoke-virtual/range {v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24}, Lorg/purple/smoke/Database;.writeNeighbor:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z // method@ba34 │ │ -42c75a: 0a01 |00ef: move-result v1 │ │ -42c75c: 3901 0800 |00f0: if-nez v1, 00f8 // +0008 │ │ -42c760: 1a01 710d |00f2: const-string v1, "An error occurred while saving the neighbor information." // string@0d71 │ │ -42c764: 7120 f5bb 1000 |00f4: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ -42c76a: 2851 |00f7: goto 0148 // +0051 │ │ -42c76c: 6e10 da5a 0400 |00f8: invoke-virtual {v4}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42c772: 0a01 |00fb: move-result v1 │ │ -42c774: 3901 0600 |00fc: if-nez v1, 0102 // +0006 │ │ -42c778: 1201 |00fe: const/4 v1, #int 0 // #0 │ │ -42c77a: 7020 fcbc 1000 |00ff: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.populateNeighbors:(Ljava/util/ArrayList;)V // method@bcfc │ │ -42c780: 6e10 da5a 0500 |0102: invoke-virtual {v5}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42c786: 0a01 |0105: move-result v1 │ │ -42c788: 3801 4200 |0106: if-eqz v1, 0148 // +0042 │ │ -42c78c: 2201 f10a |0108: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -42c790: 7010 ee5c 0100 |010a: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42c796: 6e10 1c5b 0a00 |010d: invoke-virtual {v10}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c79c: 0c03 |0110: move-result-object v3 │ │ -42c79e: 7210 045c 0300 |0111: invoke-interface {v3}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c7a4: 0c03 |0114: move-result-object v3 │ │ -42c7a6: 6e20 f95c 3100 |0115: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c7ac: 1a03 7c08 |0118: const-string v3, ":" // string@087c │ │ -42c7b0: 6e20 f95c 3100 |011a: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c7b6: 6e10 1c5b 0b00 |011d: invoke-virtual {v11}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c7bc: 0c04 |0120: move-result-object v4 │ │ -42c7be: 7210 045c 0400 |0121: invoke-interface {v4}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c7c4: 0c04 |0124: move-result-object v4 │ │ -42c7c6: 6e20 f95c 4100 |0125: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c7cc: 6e20 f95c 3100 |0128: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c7d2: 6e10 ba5a 0200 |012b: invoke-virtual {v2}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -42c7d8: 0c02 |012e: move-result-object v2 │ │ -42c7da: 6e20 f85c 2100 |012f: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ -42c7e0: 6e10 035d 0100 |0132: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42c7e6: 0c01 |0135: move-result-object v1 │ │ -42c7e8: 7020 e7bc 1000 |0136: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.generateOzone:(Ljava/lang/String;)Z // method@bce7 │ │ -42c7ee: 0a02 |0139: move-result v2 │ │ -42c7f0: 3802 0e00 |013a: if-eqz v2, 0148 // +000e │ │ -42c7f4: 1402 b700 087f |013c: const v2, #float 1.80779e+38 // #7f0800b7 │ │ -42c7fa: 6e20 e5bc 2000 |013f: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42c800: 0c02 |0142: move-result-object v2 │ │ -42c802: 1f02 970a |0143: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ -42c806: 6e20 495b 1200 |0145: invoke-virtual {v2, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42c80c: 0e00 |0148: return-void │ │ +42c568: |[42c568] org.purple.smoke.Settings.addNeighbor:()V │ │ +42c578: 0800 1900 |0000: move-object/from16 v0, v25 │ │ +42c57c: 1401 ab00 087f |0002: const v1, #float 1.80778e+38 // #7f0800ab │ │ +42c582: 6e20 e5bc 1000 |0005: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42c588: 0c01 |0008: move-result-object v1 │ │ +42c58a: 1f01 7f0a |0009: check-cast v1, Landroid/widget/RadioGroup; // type@0a7f │ │ +42c58e: 1402 ae00 087f |000b: const v2, #float 1.80779e+38 // #7f0800ae │ │ +42c594: 6e20 e5bc 2000 |000e: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42c59a: 0c02 |0011: move-result-object v2 │ │ +42c59c: 1f02 8b0a |0012: check-cast v2, Landroid/widget/Spinner; // type@0a8b │ │ +42c5a0: 1403 d400 087f |0014: const v3, #float 1.80779e+38 // #7f0800d4 │ │ +42c5a6: 6e20 e5bc 3000 |0017: invoke-virtual {v0, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42c5ac: 0c03 |001a: move-result-object v3 │ │ +42c5ae: 1f03 8b0a |001b: check-cast v3, Landroid/widget/Spinner; // type@0a8b │ │ +42c5b2: 1404 2c00 087f |001d: const v4, #float 1.80776e+38 // #7f08002c │ │ +42c5b8: 6e20 e5bc 4000 |0020: invoke-virtual {v0, v4}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42c5be: 0c04 |0023: move-result-object v4 │ │ +42c5c0: 1f04 8d0a |0024: check-cast v4, Landroid/widget/Switch; // type@0a8d │ │ +42c5c4: 1405 8100 087f |0026: const v5, #float 1.80778e+38 // #7f080081 │ │ +42c5ca: 6e20 e5bc 5000 |0029: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42c5d0: 0c05 |002c: move-result-object v5 │ │ +42c5d2: 1f05 8d0a |002d: check-cast v5, Landroid/widget/Switch; // type@0a8d │ │ +42c5d6: 1406 b000 087f |002f: const v6, #float 1.80779e+38 // #7f0800b0 │ │ +42c5dc: 6e20 e5bc 6000 |0032: invoke-virtual {v0, v6}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42c5e2: 0c06 |0035: move-result-object v6 │ │ +42c5e4: 1f06 8d0a |0036: check-cast v6, Landroid/widget/Switch; // type@0a8d │ │ +42c5e8: 1407 c100 087f |0038: const v7, #float 1.80779e+38 // #7f0800c1 │ │ +42c5ee: 6e20 e5bc 7000 |003b: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42c5f4: 0c07 |003e: move-result-object v7 │ │ +42c5f6: 1f07 8d0a |003f: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ +42c5fa: 1408 d200 087f |0041: const v8, #float 1.80779e+38 // #7f0800d2 │ │ +42c600: 6e20 e5bc 8000 |0044: invoke-virtual {v0, v8}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42c606: 0c08 |0047: move-result-object v8 │ │ +42c608: 1f08 970a |0048: check-cast v8, Landroid/widget/TextView; // type@0a97 │ │ +42c60c: 1409 d300 087f |004a: const v9, #float 1.80779e+38 // #7f0800d3 │ │ +42c612: 6e20 e5bc 9000 |004d: invoke-virtual {v0, v9}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42c618: 0c09 |0050: move-result-object v9 │ │ +42c61a: 1f09 970a |0051: check-cast v9, Landroid/widget/TextView; // type@0a97 │ │ +42c61e: 140a a800 087f |0053: const v10, #float 1.80778e+38 // #7f0800a8 │ │ +42c624: 6e20 e5bc a000 |0056: invoke-virtual {v0, v10}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42c62a: 0c0a |0059: move-result-object v10 │ │ +42c62c: 1f0a 970a |005a: check-cast v10, Landroid/widget/TextView; // type@0a97 │ │ +42c630: 140b ac00 087f |005c: const v11, #float 1.80778e+38 // #7f0800ac │ │ +42c636: 6e20 e5bc b000 |005f: invoke-virtual {v0, v11}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42c63c: 0c0b |0062: move-result-object v11 │ │ +42c63e: 1f0b 970a |0063: check-cast v11, Landroid/widget/TextView; // type@0a97 │ │ +42c642: 140c ad00 087f |0065: const v12, #float 1.80779e+38 // #7f0800ad │ │ +42c648: 6e20 e5bc c000 |0068: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42c64e: 0c0c |006b: move-result-object v12 │ │ +42c650: 1f0c 970a |006c: check-cast v12, Landroid/widget/TextView; // type@0a97 │ │ +42c654: 6e10 665a 0100 |006e: invoke-virtual {v1}, Landroid/widget/RadioGroup;.getCheckedRadioButtonId:()I // method@5a66 │ │ +42c65a: 0a01 |0071: move-result v1 │ │ +42c65c: 140d a900 087f |0072: const v13, #float 1.80778e+38 // #7f0800a9 │ │ +42c662: 33d1 0500 |0075: if-ne v1, v13, 007a // +0005 │ │ +42c666: 1a01 a91d |0077: const-string v1, "IPv4" // string@1da9 │ │ +42c66a: 2803 |0079: goto 007c // +0003 │ │ +42c66c: 1a01 aa1d |007a: const-string v1, "IPv6" // string@1daa │ │ +42c670: 0818 0100 |007c: move-object/from16 v24, v1 │ │ +42c674: 6e10 1c5b 0a00 |007e: invoke-virtual {v10}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c67a: 0c01 |0081: move-result-object v1 │ │ +42c67c: 7210 045c 0100 |0082: invoke-interface {v1}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c682: 0c01 |0085: move-result-object v1 │ │ +42c684: 6e10 d35c 0100 |0086: invoke-virtual {v1}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42c68a: 0c01 |0089: move-result-object v1 │ │ +42c68c: 6e10 c35c 0100 |008a: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42c692: 0a01 |008d: move-result v1 │ │ +42c694: 3801 0900 |008e: if-eqz v1, 0097 // +0009 │ │ +42c698: 1a01 d544 |0090: const-string v1, "Please complete the IP Address field." // string@44d5 │ │ +42c69c: 7120 f5bb 1000 |0092: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ +42c6a2: 2900 b300 |0095: goto/16 0148 // +00b3 │ │ +42c6a6: 540d 065f |0097: iget-object v13, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c6aa: 620e 0a5f |0099: sget-object v14, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42c6ae: 6e10 da5a 0600 |009b: invoke-virtual {v6}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42c6b4: 0a01 |009e: move-result v1 │ │ +42c6b6: 1a06 95a5 |009f: const-string v6, "true" // string@a595 │ │ +42c6ba: 1a0f 2068 |00a1: const-string v15, "false" // string@6820 │ │ +42c6be: 3801 0400 |00a3: if-eqz v1, 00a7 // +0004 │ │ +42c6c2: 0761 |00a5: move-object v1, v6 │ │ +42c6c4: 2802 |00a6: goto 00a8 // +0002 │ │ +42c6c6: 07f1 |00a7: move-object v1, v15 │ │ +42c6c8: 6e10 da5a 0700 |00a8: invoke-virtual {v7}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42c6ce: 0a07 |00ab: move-result v7 │ │ +42c6d0: 3807 0500 |00ac: if-eqz v7, 00b1 // +0005 │ │ +42c6d4: 0810 0600 |00ae: move-object/from16 v16, v6 │ │ +42c6d8: 2803 |00b0: goto 00b3 // +0003 │ │ +42c6da: 0810 0f00 |00b1: move-object/from16 v16, v15 │ │ +42c6de: 6e10 1c5b 0800 |00b3: invoke-virtual {v8}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c6e4: 0c06 |00b6: move-result-object v6 │ │ +42c6e6: 7210 045c 0600 |00b7: invoke-interface {v6}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c6ec: 0c11 |00ba: move-result-object v17 │ │ +42c6ee: 6e10 1c5b 0900 |00bb: invoke-virtual {v9}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c6f4: 0c06 |00be: move-result-object v6 │ │ +42c6f6: 7210 045c 0600 |00bf: invoke-interface {v6}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c6fc: 0c12 |00c2: move-result-object v18 │ │ +42c6fe: 6e10 ba5a 0300 |00c3: invoke-virtual {v3}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +42c704: 0c03 |00c6: move-result-object v3 │ │ +42c706: 6e10 965c 0300 |00c7: invoke-virtual {v3}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +42c70c: 0c13 |00ca: move-result-object v19 │ │ +42c70e: 6e10 1c5b 0a00 |00cb: invoke-virtual {v10}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c714: 0c03 |00ce: move-result-object v3 │ │ +42c716: 7210 045c 0300 |00cf: invoke-interface {v3}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c71c: 0c14 |00d2: move-result-object v20 │ │ +42c71e: 6e10 1c5b 0b00 |00d3: invoke-virtual {v11}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c724: 0c03 |00d6: move-result-object v3 │ │ +42c726: 7210 045c 0300 |00d7: invoke-interface {v3}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c72c: 0c15 |00da: move-result-object v21 │ │ +42c72e: 6e10 1c5b 0c00 |00db: invoke-virtual {v12}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c734: 0c03 |00de: move-result-object v3 │ │ +42c736: 7210 045c 0300 |00df: invoke-interface {v3}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c73c: 0c16 |00e2: move-result-object v22 │ │ +42c73e: 6e10 ba5a 0200 |00e3: invoke-virtual {v2}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +42c744: 0c03 |00e6: move-result-object v3 │ │ +42c746: 6e10 965c 0300 |00e7: invoke-virtual {v3}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +42c74c: 0c17 |00ea: move-result-object v23 │ │ +42c74e: 071f |00eb: move-object v15, v1 │ │ +42c750: 740c 34ba 0d00 |00ec: invoke-virtual/range {v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24}, Lorg/purple/smoke/Database;.writeNeighbor:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z // method@ba34 │ │ +42c756: 0a01 |00ef: move-result v1 │ │ +42c758: 3901 0800 |00f0: if-nez v1, 00f8 // +0008 │ │ +42c75c: 1a01 710d |00f2: const-string v1, "An error occurred while saving the neighbor information." // string@0d71 │ │ +42c760: 7120 f5bb 1000 |00f4: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ +42c766: 2851 |00f7: goto 0148 // +0051 │ │ +42c768: 6e10 da5a 0400 |00f8: invoke-virtual {v4}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42c76e: 0a01 |00fb: move-result v1 │ │ +42c770: 3901 0600 |00fc: if-nez v1, 0102 // +0006 │ │ +42c774: 1201 |00fe: const/4 v1, #int 0 // #0 │ │ +42c776: 7020 fcbc 1000 |00ff: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.populateNeighbors:(Ljava/util/ArrayList;)V // method@bcfc │ │ +42c77c: 6e10 da5a 0500 |0102: invoke-virtual {v5}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42c782: 0a01 |0105: move-result v1 │ │ +42c784: 3801 4200 |0106: if-eqz v1, 0148 // +0042 │ │ +42c788: 2201 f10a |0108: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +42c78c: 7010 ee5c 0100 |010a: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42c792: 6e10 1c5b 0a00 |010d: invoke-virtual {v10}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c798: 0c03 |0110: move-result-object v3 │ │ +42c79a: 7210 045c 0300 |0111: invoke-interface {v3}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c7a0: 0c03 |0114: move-result-object v3 │ │ +42c7a2: 6e20 f95c 3100 |0115: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c7a8: 1a03 7c08 |0118: const-string v3, ":" // string@087c │ │ +42c7ac: 6e20 f95c 3100 |011a: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c7b2: 6e10 1c5b 0b00 |011d: invoke-virtual {v11}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c7b8: 0c04 |0120: move-result-object v4 │ │ +42c7ba: 7210 045c 0400 |0121: invoke-interface {v4}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c7c0: 0c04 |0124: move-result-object v4 │ │ +42c7c2: 6e20 f95c 4100 |0125: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c7c8: 6e20 f95c 3100 |0128: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c7ce: 6e10 ba5a 0200 |012b: invoke-virtual {v2}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +42c7d4: 0c02 |012e: move-result-object v2 │ │ +42c7d6: 6e20 f85c 2100 |012f: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ +42c7dc: 6e10 035d 0100 |0132: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42c7e2: 0c01 |0135: move-result-object v1 │ │ +42c7e4: 7020 e7bc 1000 |0136: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.generateOzone:(Ljava/lang/String;)Z // method@bce7 │ │ +42c7ea: 0a02 |0139: move-result v2 │ │ +42c7ec: 3802 0e00 |013a: if-eqz v2, 0148 // +000e │ │ +42c7f0: 1402 b700 087f |013c: const v2, #float 1.80779e+38 // #7f0800b7 │ │ +42c7f6: 6e20 e5bc 2000 |013f: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42c7fc: 0c02 |0142: move-result-object v2 │ │ +42c7fe: 1f02 970a |0143: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ +42c802: 6e20 495b 1200 |0145: invoke-virtual {v2, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42c808: 0e00 |0148: return-void │ │ catches : (none) │ │ positions : │ │ 0x0005 line=304 │ │ 0x000e line=305 │ │ 0x0017 line=306 │ │ 0x0020 line=308 │ │ 0x0029 line=309 │ │ @@ -1569541,141 +1569540,141 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 5 │ │ insns size : 263 16-bit code units │ │ -42c810: |[42c810] org.purple.smoke.Settings.addParticipant:()V │ │ -42c820: 6e10 efbc 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ -42c826: 0a00 |0003: move-result v0 │ │ -42c828: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -42c82c: 0e00 |0006: return-void │ │ -42c82e: 1400 2500 087f |0007: const v0, #float 1.80776e+38 // #7f080025 │ │ -42c834: 6e20 e5bc 0500 |000a: invoke-virtual {v5, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42c83a: 0c00 |000d: move-result-object v0 │ │ -42c83c: 1f00 8d0a |000e: check-cast v0, Landroid/widget/Switch; // type@0a8d │ │ -42c840: 1401 be00 087f |0010: const v1, #float 1.80779e+38 // #7f0800be │ │ -42c846: 6e20 e5bc 1500 |0013: invoke-virtual {v5, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42c84c: 0c01 |0016: move-result-object v1 │ │ -42c84e: 1f01 970a |0017: check-cast v1, Landroid/widget/TextView; // type@0a97 │ │ -42c852: 1402 0b01 087f |0019: const v2, #float 1.8078e+38 // #7f08010b │ │ -42c858: 6e20 e5bc 2500 |001c: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42c85e: 0c02 |001f: move-result-object v2 │ │ -42c860: 1f02 970a |0020: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ -42c864: 6e10 da5a 0000 |0022: invoke-virtual {v0}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42c86a: 0a00 |0025: move-result v0 │ │ -42c86c: 3800 4200 |0026: if-eqz v0, 0068 // +0042 │ │ -42c870: 6e10 1c5b 0100 |0028: invoke-virtual {v1}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c876: 0c00 |002b: move-result-object v0 │ │ -42c878: 7210 045c 0000 |002c: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c87e: 0c00 |002f: move-result-object v0 │ │ -42c880: 6e10 d35c 0000 |0030: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42c886: 0c00 |0033: move-result-object v0 │ │ -42c888: 6e10 c55c 0000 |0034: invoke-virtual {v0}, Ljava/lang/String;.length:()I // method@5cc5 │ │ -42c88e: 0a01 |0037: move-result v1 │ │ -42c890: 1302 0800 |0038: const/16 v2, #int 8 // #8 │ │ -42c894: 3521 0800 |003a: if-ge v1, v2, 0042 // +0008 │ │ -42c898: 1a00 fc08 |003c: const-string v0, "A Smoke Alias must include at least eight characters." // string@08fc │ │ -42c89c: 7120 f5bb 0500 |003e: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ -42c8a2: 0e00 |0041: return-void │ │ -42c8a4: 5451 065f |0042: iget-object v1, v5, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c8a8: 6202 0a5f |0044: sget-object v2, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42c8ac: 1a03 4359 |0046: const-string v3, "alias" // string@5943 │ │ -42c8b0: 6e30 17ba 2103 |0048: invoke-virtual {v1, v2, v3}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42c8b6: 0c01 |004b: move-result-object v1 │ │ -42c8b8: 6e20 b85c 0100 |004c: invoke-virtual {v1, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42c8be: 0a01 |004f: move-result v1 │ │ -42c8c0: 3801 0800 |0050: if-eqz v1, 0058 // +0008 │ │ -42c8c4: 1a00 d844 |0052: const-string v0, "Please do not assign your Smoke Alias." // string@44d8 │ │ -42c8c8: 7120 f5bb 0500 |0054: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ -42c8ce: 0e00 |0057: return-void │ │ -42c8d0: 7110 beb9 0000 |0058: invoke-static {v0}, Lorg/purple/smoke/Cryptography;.sipHashIdFromString:(Ljava/lang/String;)Ljava/lang/String; // method@b9be │ │ -42c8d6: 0c00 |005b: move-result-object v0 │ │ -42c8d8: 6e10 c35c 0000 |005c: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42c8de: 0a01 |005f: move-result v1 │ │ -42c8e0: 3801 6400 |0060: if-eqz v1, 00c4 // +0064 │ │ -42c8e4: 1a00 1209 |0062: const-string v0, "A transformation failure occurred!" // string@0912 │ │ -42c8e8: 7120 f5bb 0500 |0064: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ -42c8ee: 0e00 |0067: return-void │ │ -42c8f0: 2200 f10a |0068: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ -42c8f4: 7010 ee5c 0000 |006a: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42c8fa: 6e10 1c5b 0100 |006d: invoke-virtual {v1}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c900: 0c01 |0070: move-result-object v1 │ │ -42c902: 7210 045c 0100 |0071: invoke-interface {v1}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c908: 0c01 |0074: move-result-object v1 │ │ -42c90a: 1a03 3800 |0075: const-string v3, " " // string@0038 │ │ -42c90e: 1a04 0000 |0077: const-string v4, "" // string@0000 │ │ -42c912: 6e30 c85c 3104 |0079: invoke-virtual {v1, v3, v4}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42c918: 0c01 |007c: move-result-object v1 │ │ -42c91a: 1a03 8604 |007d: const-string v3, "-" // string@0486 │ │ -42c91e: 6e30 c85c 3104 |007f: invoke-virtual {v1, v3, v4}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42c924: 0c01 |0082: move-result-object v1 │ │ -42c926: 1a03 7c08 |0083: const-string v3, ":" // string@087c │ │ -42c92a: 6e30 c85c 3104 |0085: invoke-virtual {v1, v3, v4}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42c930: 0c01 |0088: move-result-object v1 │ │ -42c932: 1a03 f808 |0089: const-string v3, "@" // string@08f8 │ │ -42c936: 6e30 c85c 3104 |008b: invoke-virtual {v1, v3, v4}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42c93c: 0c01 |008e: move-result-object v1 │ │ -42c93e: 6e10 d35c 0100 |008f: invoke-virtual {v1}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42c944: 0c01 |0092: move-result-object v1 │ │ -42c946: 7110 f0bb 0100 |0093: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf0 │ │ -42c94c: 0c01 |0096: move-result-object v1 │ │ -42c94e: 6e20 f95c 1000 |0097: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c954: 6e10 035d 0000 |009a: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42c95a: 0c00 |009d: move-result-object v0 │ │ -42c95c: 6e10 d35c 0000 |009e: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42c962: 0c00 |00a1: move-result-object v0 │ │ -42c964: 6e10 c55c 0000 |00a2: invoke-virtual {v0}, Ljava/lang/String;.length:()I // method@5cc5 │ │ -42c96a: 0a01 |00a5: move-result v1 │ │ -42c96c: 6003 c453 |00a6: sget v3, Lorg/purple/smoke/Cryptography;.SIPHASH_IDENTITY_LENGTH:I // field@53c4 │ │ -42c970: 3231 0800 |00a8: if-eq v1, v3, 00b0 // +0008 │ │ -42c974: 1a00 ff08 |00aa: const-string v0, "A Smoke ID must be of the form HHHH-HHHH-HHHH-HHHH-HHHH-HHHH-HHHH-HHHH." // string@08ff │ │ -42c978: 7120 f5bb 0500 |00ac: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ -42c97e: 0e00 |00af: return-void │ │ -42c980: 6e10 1c5b 0200 |00b0: invoke-virtual {v2}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c986: 0c01 |00b3: move-result-object v1 │ │ -42c988: 7210 045c 0100 |00b4: invoke-interface {v1}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c98e: 0c01 |00b7: move-result-object v1 │ │ -42c990: 6e20 b85c 0100 |00b8: invoke-virtual {v1, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42c996: 0a01 |00bb: move-result v1 │ │ -42c998: 3801 0800 |00bc: if-eqz v1, 00c4 // +0008 │ │ -42c99c: 1a00 d944 |00be: const-string v0, "Please do not assign your Smoke ID." // string@44d9 │ │ -42c9a0: 7120 f5bb 0500 |00c0: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ -42c9a6: 0e00 |00c3: return-void │ │ -42c9a8: 1401 2000 087f |00c4: const v1, #float 1.80776e+38 // #7f080020 │ │ -42c9ae: 6e20 e5bc 1500 |00c7: invoke-virtual {v5, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42c9b4: 0c01 |00ca: move-result-object v1 │ │ -42c9b6: 1f01 7c0a |00cb: check-cast v1, Landroid/widget/ProgressBar; // type@0a7c │ │ -42c9ba: 1212 |00cd: const/4 v2, #int 1 // #1 │ │ -42c9bc: 6e20 5a5a 2100 |00ce: invoke-virtual {v1, v2}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ -42c9c2: 1202 |00d1: const/4 v2, #int 0 // #0 │ │ -42c9c4: 6e20 5f5a 2100 |00d2: invoke-virtual {v1, v2}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42c9ca: 6e10 edbc 0500 |00d5: invoke-virtual {v5}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ -42c9d0: 0c03 |00d8: move-result-object v3 │ │ -42c9d2: 1304 1000 |00d9: const/16 v4, #int 16 // #10 │ │ -42c9d6: 6e30 9057 4304 |00db: invoke-virtual {v3, v4, v4}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ -42c9dc: 1403 9200 087f |00de: const v3, #float 1.80778e+38 // #7f080092 │ │ -42c9e2: 6e20 e5bc 3500 |00e1: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42c9e8: 0c03 |00e4: move-result-object v3 │ │ -42c9ea: 7120 e6bb 2300 |00e5: invoke-static {v3, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ -42c9f0: 2202 f40a |00e8: new-instance v2, Ljava/lang/Thread; // type@0af4 │ │ -42c9f4: 2203 dc1a |00ea: new-instance v3, Lorg/purple/smoke/Settings$1SingleShot; // type@1adc │ │ -42c9f8: 1404 bd00 087f |00ec: const v4, #float 1.80779e+38 // #7f0800bd │ │ -42c9fe: 6e20 e5bc 4500 |00ef: invoke-virtual {v5, v4}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ca04: 0c04 |00f2: move-result-object v4 │ │ -42ca06: 1f04 970a |00f3: check-cast v4, Landroid/widget/TextView; // type@0a97 │ │ -42ca0a: 6e10 1c5b 0400 |00f5: invoke-virtual {v4}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42ca10: 0c04 |00f8: move-result-object v4 │ │ -42ca12: 7210 045c 0400 |00f9: invoke-interface {v4}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42ca18: 0c04 |00fc: move-result-object v4 │ │ -42ca1a: 7051 5dbc 5304 |00fd: invoke-direct {v3, v5, v4, v0, v1}, Lorg/purple/smoke/Settings$1SingleShot;.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Ljava/lang/String;Landroid/widget/ProgressBar;)V // method@bc5d │ │ -42ca20: 7020 0e5d 3200 |0100: invoke-direct {v2, v3}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ -42ca26: 6e10 195d 0200 |0103: invoke-virtual {v2}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ -42ca2c: 0e00 |0106: return-void │ │ +42c80c: |[42c80c] org.purple.smoke.Settings.addParticipant:()V │ │ +42c81c: 6e10 efbc 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ +42c822: 0a00 |0003: move-result v0 │ │ +42c824: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +42c828: 0e00 |0006: return-void │ │ +42c82a: 1400 2500 087f |0007: const v0, #float 1.80776e+38 // #7f080025 │ │ +42c830: 6e20 e5bc 0500 |000a: invoke-virtual {v5, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42c836: 0c00 |000d: move-result-object v0 │ │ +42c838: 1f00 8d0a |000e: check-cast v0, Landroid/widget/Switch; // type@0a8d │ │ +42c83c: 1401 be00 087f |0010: const v1, #float 1.80779e+38 // #7f0800be │ │ +42c842: 6e20 e5bc 1500 |0013: invoke-virtual {v5, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42c848: 0c01 |0016: move-result-object v1 │ │ +42c84a: 1f01 970a |0017: check-cast v1, Landroid/widget/TextView; // type@0a97 │ │ +42c84e: 1402 0b01 087f |0019: const v2, #float 1.8078e+38 // #7f08010b │ │ +42c854: 6e20 e5bc 2500 |001c: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42c85a: 0c02 |001f: move-result-object v2 │ │ +42c85c: 1f02 970a |0020: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ +42c860: 6e10 da5a 0000 |0022: invoke-virtual {v0}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42c866: 0a00 |0025: move-result v0 │ │ +42c868: 3800 4200 |0026: if-eqz v0, 0068 // +0042 │ │ +42c86c: 6e10 1c5b 0100 |0028: invoke-virtual {v1}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c872: 0c00 |002b: move-result-object v0 │ │ +42c874: 7210 045c 0000 |002c: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c87a: 0c00 |002f: move-result-object v0 │ │ +42c87c: 6e10 d35c 0000 |0030: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42c882: 0c00 |0033: move-result-object v0 │ │ +42c884: 6e10 c55c 0000 |0034: invoke-virtual {v0}, Ljava/lang/String;.length:()I // method@5cc5 │ │ +42c88a: 0a01 |0037: move-result v1 │ │ +42c88c: 1302 0800 |0038: const/16 v2, #int 8 // #8 │ │ +42c890: 3521 0800 |003a: if-ge v1, v2, 0042 // +0008 │ │ +42c894: 1a00 fc08 |003c: const-string v0, "A Smoke Alias must include at least eight characters." // string@08fc │ │ +42c898: 7120 f5bb 0500 |003e: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ +42c89e: 0e00 |0041: return-void │ │ +42c8a0: 5451 065f |0042: iget-object v1, v5, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c8a4: 6202 0a5f |0044: sget-object v2, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42c8a8: 1a03 4359 |0046: const-string v3, "alias" // string@5943 │ │ +42c8ac: 6e30 17ba 2103 |0048: invoke-virtual {v1, v2, v3}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42c8b2: 0c01 |004b: move-result-object v1 │ │ +42c8b4: 6e20 b85c 0100 |004c: invoke-virtual {v1, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42c8ba: 0a01 |004f: move-result v1 │ │ +42c8bc: 3801 0800 |0050: if-eqz v1, 0058 // +0008 │ │ +42c8c0: 1a00 d844 |0052: const-string v0, "Please do not assign your Smoke Alias." // string@44d8 │ │ +42c8c4: 7120 f5bb 0500 |0054: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ +42c8ca: 0e00 |0057: return-void │ │ +42c8cc: 7110 beb9 0000 |0058: invoke-static {v0}, Lorg/purple/smoke/Cryptography;.sipHashIdFromString:(Ljava/lang/String;)Ljava/lang/String; // method@b9be │ │ +42c8d2: 0c00 |005b: move-result-object v0 │ │ +42c8d4: 6e10 c35c 0000 |005c: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42c8da: 0a01 |005f: move-result v1 │ │ +42c8dc: 3801 6400 |0060: if-eqz v1, 00c4 // +0064 │ │ +42c8e0: 1a00 1209 |0062: const-string v0, "A transformation failure occurred!" // string@0912 │ │ +42c8e4: 7120 f5bb 0500 |0064: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ +42c8ea: 0e00 |0067: return-void │ │ +42c8ec: 2200 f10a |0068: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ +42c8f0: 7010 ee5c 0000 |006a: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42c8f6: 6e10 1c5b 0100 |006d: invoke-virtual {v1}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c8fc: 0c01 |0070: move-result-object v1 │ │ +42c8fe: 7210 045c 0100 |0071: invoke-interface {v1}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c904: 0c01 |0074: move-result-object v1 │ │ +42c906: 1a03 3800 |0075: const-string v3, " " // string@0038 │ │ +42c90a: 1a04 0000 |0077: const-string v4, "" // string@0000 │ │ +42c90e: 6e30 c85c 3104 |0079: invoke-virtual {v1, v3, v4}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42c914: 0c01 |007c: move-result-object v1 │ │ +42c916: 1a03 8604 |007d: const-string v3, "-" // string@0486 │ │ +42c91a: 6e30 c85c 3104 |007f: invoke-virtual {v1, v3, v4}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42c920: 0c01 |0082: move-result-object v1 │ │ +42c922: 1a03 7c08 |0083: const-string v3, ":" // string@087c │ │ +42c926: 6e30 c85c 3104 |0085: invoke-virtual {v1, v3, v4}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42c92c: 0c01 |0088: move-result-object v1 │ │ +42c92e: 1a03 f808 |0089: const-string v3, "@" // string@08f8 │ │ +42c932: 6e30 c85c 3104 |008b: invoke-virtual {v1, v3, v4}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42c938: 0c01 |008e: move-result-object v1 │ │ +42c93a: 6e10 d35c 0100 |008f: invoke-virtual {v1}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42c940: 0c01 |0092: move-result-object v1 │ │ +42c942: 7110 f0bb 0100 |0093: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf0 │ │ +42c948: 0c01 |0096: move-result-object v1 │ │ +42c94a: 6e20 f95c 1000 |0097: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c950: 6e10 035d 0000 |009a: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42c956: 0c00 |009d: move-result-object v0 │ │ +42c958: 6e10 d35c 0000 |009e: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42c95e: 0c00 |00a1: move-result-object v0 │ │ +42c960: 6e10 c55c 0000 |00a2: invoke-virtual {v0}, Ljava/lang/String;.length:()I // method@5cc5 │ │ +42c966: 0a01 |00a5: move-result v1 │ │ +42c968: 6003 c453 |00a6: sget v3, Lorg/purple/smoke/Cryptography;.SIPHASH_IDENTITY_LENGTH:I // field@53c4 │ │ +42c96c: 3231 0800 |00a8: if-eq v1, v3, 00b0 // +0008 │ │ +42c970: 1a00 ff08 |00aa: const-string v0, "A Smoke ID must be of the form HHHH-HHHH-HHHH-HHHH-HHHH-HHHH-HHHH-HHHH." // string@08ff │ │ +42c974: 7120 f5bb 0500 |00ac: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ +42c97a: 0e00 |00af: return-void │ │ +42c97c: 6e10 1c5b 0200 |00b0: invoke-virtual {v2}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c982: 0c01 |00b3: move-result-object v1 │ │ +42c984: 7210 045c 0100 |00b4: invoke-interface {v1}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c98a: 0c01 |00b7: move-result-object v1 │ │ +42c98c: 6e20 b85c 0100 |00b8: invoke-virtual {v1, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42c992: 0a01 |00bb: move-result v1 │ │ +42c994: 3801 0800 |00bc: if-eqz v1, 00c4 // +0008 │ │ +42c998: 1a00 d944 |00be: const-string v0, "Please do not assign your Smoke ID." // string@44d9 │ │ +42c99c: 7120 f5bb 0500 |00c0: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ +42c9a2: 0e00 |00c3: return-void │ │ +42c9a4: 1401 2000 087f |00c4: const v1, #float 1.80776e+38 // #7f080020 │ │ +42c9aa: 6e20 e5bc 1500 |00c7: invoke-virtual {v5, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42c9b0: 0c01 |00ca: move-result-object v1 │ │ +42c9b2: 1f01 7c0a |00cb: check-cast v1, Landroid/widget/ProgressBar; // type@0a7c │ │ +42c9b6: 1212 |00cd: const/4 v2, #int 1 // #1 │ │ +42c9b8: 6e20 5a5a 2100 |00ce: invoke-virtual {v1, v2}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ +42c9be: 1202 |00d1: const/4 v2, #int 0 // #0 │ │ +42c9c0: 6e20 5f5a 2100 |00d2: invoke-virtual {v1, v2}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42c9c6: 6e10 edbc 0500 |00d5: invoke-virtual {v5}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ +42c9cc: 0c03 |00d8: move-result-object v3 │ │ +42c9ce: 1304 1000 |00d9: const/16 v4, #int 16 // #10 │ │ +42c9d2: 6e30 9057 4304 |00db: invoke-virtual {v3, v4, v4}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ +42c9d8: 1403 9200 087f |00de: const v3, #float 1.80778e+38 // #7f080092 │ │ +42c9de: 6e20 e5bc 3500 |00e1: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42c9e4: 0c03 |00e4: move-result-object v3 │ │ +42c9e6: 7120 e6bb 2300 |00e5: invoke-static {v3, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ +42c9ec: 2202 f40a |00e8: new-instance v2, Ljava/lang/Thread; // type@0af4 │ │ +42c9f0: 2203 dc1a |00ea: new-instance v3, Lorg/purple/smoke/Settings$1SingleShot; // type@1adc │ │ +42c9f4: 1404 bd00 087f |00ec: const v4, #float 1.80779e+38 // #7f0800bd │ │ +42c9fa: 6e20 e5bc 4500 |00ef: invoke-virtual {v5, v4}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ca00: 0c04 |00f2: move-result-object v4 │ │ +42ca02: 1f04 970a |00f3: check-cast v4, Landroid/widget/TextView; // type@0a97 │ │ +42ca06: 6e10 1c5b 0400 |00f5: invoke-virtual {v4}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42ca0c: 0c04 |00f8: move-result-object v4 │ │ +42ca0e: 7210 045c 0400 |00f9: invoke-interface {v4}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42ca14: 0c04 |00fc: move-result-object v4 │ │ +42ca16: 7051 5dbc 5304 |00fd: invoke-direct {v3, v5, v4, v0, v1}, Lorg/purple/smoke/Settings$1SingleShot;.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Ljava/lang/String;Landroid/widget/ProgressBar;)V // method@bc5d │ │ +42ca1c: 7020 0e5d 3200 |0100: invoke-direct {v2, v3}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ +42ca22: 6e10 195d 0200 |0103: invoke-virtual {v2}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ +42ca28: 0e00 |0106: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=364 │ │ 0x000a line=368 │ │ 0x0013 line=370 │ │ 0x001c line=371 │ │ 0x0022 line=373 │ │ @@ -1569718,28 +1569717,28 @@ │ │ type : '(Ljava/lang/String;I)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 5 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 31 16-bit code units │ │ -42ca30: |[42ca30] org.purple.smoke.Settings.deleteNeighbor:(Ljava/lang/String;I)V │ │ -42ca40: 2200 f51a |0000: new-instance v0, Lorg/purple/smoke/Settings$3; // type@1af5 │ │ -42ca44: 7030 94bc 2004 |0002: invoke-direct {v0, v2, v4}, Lorg/purple/smoke/Settings$3;.:(Lorg/purple/smoke/Settings;I)V // method@bc94 │ │ -42ca4a: 2204 f10a |0005: new-instance v4, Ljava/lang/StringBuilder; // type@0af1 │ │ -42ca4e: 7010 ee5c 0400 |0007: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42ca54: 1a01 790e |000a: const-string v1, "Are you sure that you wish to delete the neighbor " // string@0e79 │ │ -42ca58: 6e20 f95c 1400 |000c: invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42ca5e: 6e20 f95c 3400 |000f: invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42ca64: 1a03 f608 |0012: const-string v3, "?" // string@08f6 │ │ -42ca68: 6e20 f95c 3400 |0014: invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42ca6e: 6e10 035d 0400 |0017: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42ca74: 0c03 |001a: move-result-object v3 │ │ -42ca76: 7130 f7bb 0203 |001b: invoke-static {v2, v0, v3}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbf7 │ │ -42ca7c: 0e00 |001e: return-void │ │ +42ca2c: |[42ca2c] org.purple.smoke.Settings.deleteNeighbor:(Ljava/lang/String;I)V │ │ +42ca3c: 2200 f51a |0000: new-instance v0, Lorg/purple/smoke/Settings$3; // type@1af5 │ │ +42ca40: 7030 94bc 2004 |0002: invoke-direct {v0, v2, v4}, Lorg/purple/smoke/Settings$3;.:(Lorg/purple/smoke/Settings;I)V // method@bc94 │ │ +42ca46: 2204 f10a |0005: new-instance v4, Ljava/lang/StringBuilder; // type@0af1 │ │ +42ca4a: 7010 ee5c 0400 |0007: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42ca50: 1a01 790e |000a: const-string v1, "Are you sure that you wish to delete the neighbor " // string@0e79 │ │ +42ca54: 6e20 f95c 1400 |000c: invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42ca5a: 6e20 f95c 3400 |000f: invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42ca60: 1a03 f608 |0012: const-string v3, "?" // string@08f6 │ │ +42ca64: 6e20 f95c 3400 |0014: invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42ca6a: 6e10 035d 0400 |0017: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42ca70: 0c03 |001a: move-result-object v3 │ │ +42ca72: 7130 f7bb 0203 |001b: invoke-static {v2, v0, v3}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbf7 │ │ +42ca78: 0e00 |001e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=498 │ │ 0x0005 line=540 │ │ 0x001b line=541 │ │ locals : │ │ 0x0000 - 0x001f reg=2 this Lorg/purple/smoke/Settings; │ │ @@ -1569751,34 +1569750,34 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 42 16-bit code units │ │ -42ca80: |[42ca80] org.purple.smoke.Settings.disablePKIButtons:()V │ │ -42ca90: 1400 7400 087f |0000: const v0, #float 1.80777e+38 // #7f080074 │ │ -42ca96: 6e20 e5bc 0300 |0003: invoke-virtual {v3, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ca9c: 0c00 |0006: move-result-object v0 │ │ -42ca9e: 1f00 5e0a |0007: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42caa2: 1401 b600 087f |0009: const v1, #float 1.80779e+38 // #7f0800b6 │ │ -42caa8: 6e20 e5bc 1300 |000c: invoke-virtual {v3, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42caae: 0c01 |000f: move-result-object v1 │ │ -42cab0: 1f01 8d0a |0010: check-cast v1, Landroid/widget/Switch; // type@0a8d │ │ -42cab4: 6e10 da5a 0100 |0012: invoke-virtual {v1}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42caba: 0a02 |0015: move-result v2 │ │ -42cabc: 6e20 e058 2000 |0016: invoke-virtual {v0, v2}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cac2: 1400 ff00 087f |0019: const v0, #float 1.8078e+38 // #7f0800ff │ │ -42cac8: 6e20 e5bc 0300 |001c: invoke-virtual {v3, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cace: 0c00 |001f: move-result-object v0 │ │ -42cad0: 1f00 5e0a |0020: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cad4: 6e10 da5a 0100 |0022: invoke-virtual {v1}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42cada: 0a01 |0025: move-result v1 │ │ -42cadc: 6e20 e058 1000 |0026: invoke-virtual {v0, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cae2: 0e00 |0029: return-void │ │ +42ca7c: |[42ca7c] org.purple.smoke.Settings.disablePKIButtons:()V │ │ +42ca8c: 1400 7400 087f |0000: const v0, #float 1.80777e+38 // #7f080074 │ │ +42ca92: 6e20 e5bc 0300 |0003: invoke-virtual {v3, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ca98: 0c00 |0006: move-result-object v0 │ │ +42ca9a: 1f00 5e0a |0007: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42ca9e: 1401 b600 087f |0009: const v1, #float 1.80779e+38 // #7f0800b6 │ │ +42caa4: 6e20 e5bc 1300 |000c: invoke-virtual {v3, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42caaa: 0c01 |000f: move-result-object v1 │ │ +42caac: 1f01 8d0a |0010: check-cast v1, Landroid/widget/Switch; // type@0a8d │ │ +42cab0: 6e10 da5a 0100 |0012: invoke-virtual {v1}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42cab6: 0a02 |0015: move-result v2 │ │ +42cab8: 6e20 e058 2000 |0016: invoke-virtual {v0, v2}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cabe: 1400 ff00 087f |0019: const v0, #float 1.8078e+38 // #7f0800ff │ │ +42cac4: 6e20 e5bc 0300 |001c: invoke-virtual {v3, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42caca: 0c00 |001f: move-result-object v0 │ │ +42cacc: 1f00 5e0a |0020: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cad0: 6e10 da5a 0100 |0022: invoke-virtual {v1}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42cad6: 0a01 |0025: move-result v1 │ │ +42cad8: 6e20 e058 1000 |0026: invoke-virtual {v0, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cade: 0e00 |0029: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=549 │ │ 0x000c line=550 │ │ 0x0012 line=552 │ │ 0x001c line=553 │ │ 0x0022 line=554 │ │ @@ -1569790,140 +1569789,140 @@ │ │ type : '(Z)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 298 16-bit code units │ │ -42cae4: |[42cae4] org.purple.smoke.Settings.enableWidgets:(Z)V │ │ -42caf4: 1400 1e00 087f |0000: const v0, #float 1.80776e+38 // #7f08001e │ │ -42cafa: 6e20 e5bc 0200 |0003: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cb00: 0c00 |0006: move-result-object v0 │ │ -42cb02: 1f00 5e0a |0007: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cb06: 6e20 e058 3000 |0009: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cb0c: 1400 1f00 087f |000c: const v0, #float 1.80776e+38 // #7f08001f │ │ -42cb12: 6e20 e5bc 0200 |000f: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cb18: 0c00 |0012: move-result-object v0 │ │ -42cb1a: 1f00 5e0a |0013: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cb1e: 6e20 e058 3000 |0015: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cb24: 1400 6400 087f |0018: const v0, #float 1.80777e+38 // #7f080064 │ │ -42cb2a: 6e20 e5bc 0200 |001b: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cb30: 0c00 |001e: move-result-object v0 │ │ -42cb32: 1f00 5e0a |001f: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cb36: 6e20 e058 3000 |0021: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cb3c: 1400 da00 087f |0024: const v0, #float 1.80779e+38 // #7f0800da │ │ -42cb42: 6e20 e5bc 0200 |0027: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cb48: 0c00 |002a: move-result-object v0 │ │ -42cb4a: 1f00 5e0a |002b: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cb4e: 6e20 e058 3000 |002d: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cb54: 1400 db00 087f |0030: const v0, #float 1.80779e+38 // #7f0800db │ │ -42cb5a: 6e20 e5bc 0200 |0033: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cb60: 0c00 |0036: move-result-object v0 │ │ -42cb62: 1f00 5e0a |0037: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cb66: 6e20 e058 3000 |0039: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cb6c: 1400 e000 087f |003c: const v0, #float 1.8078e+38 // #7f0800e0 │ │ -42cb72: 6e20 e5bc 0200 |003f: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cb78: 0c00 |0042: move-result-object v0 │ │ -42cb7a: 1f00 5e0a |0043: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cb7e: 6e20 e058 3000 |0045: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cb84: 1400 e100 087f |0048: const v0, #float 1.8078e+38 // #7f0800e1 │ │ -42cb8a: 6e20 e5bc 0200 |004b: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cb90: 0c00 |004e: move-result-object v0 │ │ -42cb92: 1f00 5e0a |004f: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cb96: 6e20 e058 3000 |0051: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cb9c: 1400 e800 087f |0054: const v0, #float 1.8078e+38 // #7f0800e8 │ │ -42cba2: 6e20 e5bc 0200 |0057: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cba8: 0c00 |005a: move-result-object v0 │ │ -42cbaa: 1f00 5e0a |005b: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cbae: 6e20 e058 3000 |005d: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cbb4: 1400 0201 087f |0060: const v0, #float 1.8078e+38 // #7f080102 │ │ -42cbba: 6e20 e5bc 0200 |0063: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cbc0: 0c00 |0066: move-result-object v0 │ │ -42cbc2: 1f00 5e0a |0067: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cbc6: 6e20 e058 3000 |0069: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cbcc: 1400 b600 087f |006c: const v0, #float 1.80779e+38 // #7f0800b6 │ │ -42cbd2: 6e20 e5bc 0200 |006f: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cbd8: 0c00 |0072: move-result-object v0 │ │ -42cbda: 1f00 8d0a |0073: check-cast v0, Landroid/widget/Switch; // type@0a8d │ │ -42cbde: df01 0301 |0075: xor-int/lit8 v1, v3, #int 1 // #01 │ │ -42cbe2: 6e20 db5a 1000 |0077: invoke-virtual {v0, v1}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42cbe8: 6e20 de5a 3000 |007a: invoke-virtual {v0, v3}, Landroid/widget/Switch;.setEnabled:(Z)V // method@5ade │ │ -42cbee: 1400 7400 087f |007d: const v0, #float 1.80777e+38 // #7f080074 │ │ -42cbf4: 6e20 e5bc 0200 |0080: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cbfa: 0c00 |0083: move-result-object v0 │ │ -42cbfc: 1f00 5e0a |0084: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cc00: df01 0301 |0086: xor-int/lit8 v1, v3, #int 1 // #01 │ │ -42cc04: 6e20 e058 1000 |0088: invoke-virtual {v0, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cc0a: 1400 ff00 087f |008b: const v0, #float 1.8078e+38 // #7f0800ff │ │ -42cc10: 6e20 e5bc 0200 |008e: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cc16: 0c00 |0091: move-result-object v0 │ │ -42cc18: 1f00 5e0a |0092: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cc1c: df01 0301 |0094: xor-int/lit8 v1, v3, #int 1 // #01 │ │ -42cc20: 6e20 e058 1000 |0096: invoke-virtual {v0, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cc26: 1400 a900 087f |0099: const v0, #float 1.80778e+38 // #7f0800a9 │ │ -42cc2c: 6e20 e5bc 0200 |009c: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cc32: 0c00 |009f: move-result-object v0 │ │ -42cc34: 1f00 7d0a |00a0: check-cast v0, Landroid/widget/RadioButton; // type@0a7d │ │ -42cc38: 6e20 645a 3000 |00a2: invoke-virtual {v0, v3}, Landroid/widget/RadioButton;.setEnabled:(Z)V // method@5a64 │ │ -42cc3e: 1400 aa00 087f |00a5: const v0, #float 1.80778e+38 // #7f0800aa │ │ -42cc44: 6e20 e5bc 0200 |00a8: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cc4a: 0c00 |00ab: move-result-object v0 │ │ -42cc4c: 1f00 7d0a |00ac: check-cast v0, Landroid/widget/RadioButton; // type@0a7d │ │ -42cc50: 6e20 645a 3000 |00ae: invoke-virtual {v0, v3}, Landroid/widget/RadioButton;.setEnabled:(Z)V // method@5a64 │ │ -42cc56: 1400 ae00 087f |00b1: const v0, #float 1.80779e+38 // #7f0800ae │ │ -42cc5c: 6e20 e5bc 0200 |00b4: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cc62: 0c00 |00b7: move-result-object v0 │ │ -42cc64: 1f00 8b0a |00b8: check-cast v0, Landroid/widget/Spinner; // type@0a8b │ │ -42cc68: 6e20 c65a 3000 |00ba: invoke-virtual {v0, v3}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ -42cc6e: 1400 d400 087f |00bd: const v0, #float 1.80779e+38 // #7f0800d4 │ │ -42cc74: 6e20 e5bc 0200 |00c0: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cc7a: 0c00 |00c3: move-result-object v0 │ │ -42cc7c: 1f00 8b0a |00c4: check-cast v0, Landroid/widget/Spinner; // type@0a8b │ │ -42cc80: 6e20 c65a 3000 |00c6: invoke-virtual {v0, v3}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ -42cc86: 1400 a800 087f |00c9: const v0, #float 1.80778e+38 // #7f0800a8 │ │ -42cc8c: 6e20 e5bc 0200 |00cc: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cc92: 0c00 |00cf: move-result-object v0 │ │ -42cc94: 1f00 970a |00d0: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42cc98: 6e20 335b 3000 |00d2: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42cc9e: 1400 ac00 087f |00d5: const v0, #float 1.80778e+38 // #7f0800ac │ │ -42cca4: 6e20 e5bc 0200 |00d8: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ccaa: 0c00 |00db: move-result-object v0 │ │ -42ccac: 1f00 970a |00dc: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42ccb0: 6e20 335b 3000 |00de: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42ccb6: 1400 ad00 087f |00e1: const v0, #float 1.80779e+38 // #7f0800ad │ │ -42ccbc: 6e20 e5bc 0200 |00e4: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ccc2: 0c00 |00e7: move-result-object v0 │ │ -42ccc4: 1f00 970a |00e8: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42ccc8: 6e20 335b 3000 |00ea: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42ccce: 1400 b700 087f |00ed: const v0, #float 1.80779e+38 // #7f0800b7 │ │ -42ccd4: 6e20 e5bc 0200 |00f0: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ccda: 0c00 |00f3: move-result-object v0 │ │ -42ccdc: 1f00 970a |00f4: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42cce0: 6e20 335b 3000 |00f6: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42cce6: 1400 bd00 087f |00f9: const v0, #float 1.80779e+38 // #7f0800bd │ │ -42ccec: 6e20 e5bc 0200 |00fc: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ccf2: 0c00 |00ff: move-result-object v0 │ │ -42ccf4: 1f00 970a |0100: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42ccf8: 6e20 335b 3000 |0102: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42ccfe: 1400 be00 087f |0105: const v0, #float 1.80779e+38 // #7f0800be │ │ -42cd04: 6e20 e5bc 0200 |0108: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cd0a: 0c00 |010b: move-result-object v0 │ │ -42cd0c: 1f00 970a |010c: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42cd10: 6e20 335b 3000 |010e: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42cd16: 1400 d200 087f |0111: const v0, #float 1.80779e+38 // #7f0800d2 │ │ -42cd1c: 6e20 e5bc 0200 |0114: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cd22: 0c00 |0117: move-result-object v0 │ │ -42cd24: 1f00 970a |0118: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42cd28: 6e20 335b 3000 |011a: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42cd2e: 1400 d300 087f |011d: const v0, #float 1.80779e+38 // #7f0800d3 │ │ -42cd34: 6e20 e5bc 0200 |0120: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cd3a: 0c00 |0123: move-result-object v0 │ │ -42cd3c: 1f00 970a |0124: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42cd40: 6e20 335b 3000 |0126: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42cd46: 0e00 |0129: return-void │ │ +42cae0: |[42cae0] org.purple.smoke.Settings.enableWidgets:(Z)V │ │ +42caf0: 1400 1e00 087f |0000: const v0, #float 1.80776e+38 // #7f08001e │ │ +42caf6: 6e20 e5bc 0200 |0003: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cafc: 0c00 |0006: move-result-object v0 │ │ +42cafe: 1f00 5e0a |0007: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cb02: 6e20 e058 3000 |0009: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cb08: 1400 1f00 087f |000c: const v0, #float 1.80776e+38 // #7f08001f │ │ +42cb0e: 6e20 e5bc 0200 |000f: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cb14: 0c00 |0012: move-result-object v0 │ │ +42cb16: 1f00 5e0a |0013: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cb1a: 6e20 e058 3000 |0015: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cb20: 1400 6400 087f |0018: const v0, #float 1.80777e+38 // #7f080064 │ │ +42cb26: 6e20 e5bc 0200 |001b: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cb2c: 0c00 |001e: move-result-object v0 │ │ +42cb2e: 1f00 5e0a |001f: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cb32: 6e20 e058 3000 |0021: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cb38: 1400 da00 087f |0024: const v0, #float 1.80779e+38 // #7f0800da │ │ +42cb3e: 6e20 e5bc 0200 |0027: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cb44: 0c00 |002a: move-result-object v0 │ │ +42cb46: 1f00 5e0a |002b: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cb4a: 6e20 e058 3000 |002d: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cb50: 1400 db00 087f |0030: const v0, #float 1.80779e+38 // #7f0800db │ │ +42cb56: 6e20 e5bc 0200 |0033: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cb5c: 0c00 |0036: move-result-object v0 │ │ +42cb5e: 1f00 5e0a |0037: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cb62: 6e20 e058 3000 |0039: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cb68: 1400 e000 087f |003c: const v0, #float 1.8078e+38 // #7f0800e0 │ │ +42cb6e: 6e20 e5bc 0200 |003f: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cb74: 0c00 |0042: move-result-object v0 │ │ +42cb76: 1f00 5e0a |0043: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cb7a: 6e20 e058 3000 |0045: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cb80: 1400 e100 087f |0048: const v0, #float 1.8078e+38 // #7f0800e1 │ │ +42cb86: 6e20 e5bc 0200 |004b: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cb8c: 0c00 |004e: move-result-object v0 │ │ +42cb8e: 1f00 5e0a |004f: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cb92: 6e20 e058 3000 |0051: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cb98: 1400 e800 087f |0054: const v0, #float 1.8078e+38 // #7f0800e8 │ │ +42cb9e: 6e20 e5bc 0200 |0057: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cba4: 0c00 |005a: move-result-object v0 │ │ +42cba6: 1f00 5e0a |005b: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cbaa: 6e20 e058 3000 |005d: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cbb0: 1400 0201 087f |0060: const v0, #float 1.8078e+38 // #7f080102 │ │ +42cbb6: 6e20 e5bc 0200 |0063: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cbbc: 0c00 |0066: move-result-object v0 │ │ +42cbbe: 1f00 5e0a |0067: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cbc2: 6e20 e058 3000 |0069: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cbc8: 1400 b600 087f |006c: const v0, #float 1.80779e+38 // #7f0800b6 │ │ +42cbce: 6e20 e5bc 0200 |006f: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cbd4: 0c00 |0072: move-result-object v0 │ │ +42cbd6: 1f00 8d0a |0073: check-cast v0, Landroid/widget/Switch; // type@0a8d │ │ +42cbda: df01 0301 |0075: xor-int/lit8 v1, v3, #int 1 // #01 │ │ +42cbde: 6e20 db5a 1000 |0077: invoke-virtual {v0, v1}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42cbe4: 6e20 de5a 3000 |007a: invoke-virtual {v0, v3}, Landroid/widget/Switch;.setEnabled:(Z)V // method@5ade │ │ +42cbea: 1400 7400 087f |007d: const v0, #float 1.80777e+38 // #7f080074 │ │ +42cbf0: 6e20 e5bc 0200 |0080: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cbf6: 0c00 |0083: move-result-object v0 │ │ +42cbf8: 1f00 5e0a |0084: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cbfc: df01 0301 |0086: xor-int/lit8 v1, v3, #int 1 // #01 │ │ +42cc00: 6e20 e058 1000 |0088: invoke-virtual {v0, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cc06: 1400 ff00 087f |008b: const v0, #float 1.8078e+38 // #7f0800ff │ │ +42cc0c: 6e20 e5bc 0200 |008e: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cc12: 0c00 |0091: move-result-object v0 │ │ +42cc14: 1f00 5e0a |0092: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cc18: df01 0301 |0094: xor-int/lit8 v1, v3, #int 1 // #01 │ │ +42cc1c: 6e20 e058 1000 |0096: invoke-virtual {v0, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cc22: 1400 a900 087f |0099: const v0, #float 1.80778e+38 // #7f0800a9 │ │ +42cc28: 6e20 e5bc 0200 |009c: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cc2e: 0c00 |009f: move-result-object v0 │ │ +42cc30: 1f00 7d0a |00a0: check-cast v0, Landroid/widget/RadioButton; // type@0a7d │ │ +42cc34: 6e20 645a 3000 |00a2: invoke-virtual {v0, v3}, Landroid/widget/RadioButton;.setEnabled:(Z)V // method@5a64 │ │ +42cc3a: 1400 aa00 087f |00a5: const v0, #float 1.80778e+38 // #7f0800aa │ │ +42cc40: 6e20 e5bc 0200 |00a8: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cc46: 0c00 |00ab: move-result-object v0 │ │ +42cc48: 1f00 7d0a |00ac: check-cast v0, Landroid/widget/RadioButton; // type@0a7d │ │ +42cc4c: 6e20 645a 3000 |00ae: invoke-virtual {v0, v3}, Landroid/widget/RadioButton;.setEnabled:(Z)V // method@5a64 │ │ +42cc52: 1400 ae00 087f |00b1: const v0, #float 1.80779e+38 // #7f0800ae │ │ +42cc58: 6e20 e5bc 0200 |00b4: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cc5e: 0c00 |00b7: move-result-object v0 │ │ +42cc60: 1f00 8b0a |00b8: check-cast v0, Landroid/widget/Spinner; // type@0a8b │ │ +42cc64: 6e20 c65a 3000 |00ba: invoke-virtual {v0, v3}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ +42cc6a: 1400 d400 087f |00bd: const v0, #float 1.80779e+38 // #7f0800d4 │ │ +42cc70: 6e20 e5bc 0200 |00c0: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cc76: 0c00 |00c3: move-result-object v0 │ │ +42cc78: 1f00 8b0a |00c4: check-cast v0, Landroid/widget/Spinner; // type@0a8b │ │ +42cc7c: 6e20 c65a 3000 |00c6: invoke-virtual {v0, v3}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ +42cc82: 1400 a800 087f |00c9: const v0, #float 1.80778e+38 // #7f0800a8 │ │ +42cc88: 6e20 e5bc 0200 |00cc: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cc8e: 0c00 |00cf: move-result-object v0 │ │ +42cc90: 1f00 970a |00d0: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42cc94: 6e20 335b 3000 |00d2: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42cc9a: 1400 ac00 087f |00d5: const v0, #float 1.80778e+38 // #7f0800ac │ │ +42cca0: 6e20 e5bc 0200 |00d8: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cca6: 0c00 |00db: move-result-object v0 │ │ +42cca8: 1f00 970a |00dc: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42ccac: 6e20 335b 3000 |00de: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42ccb2: 1400 ad00 087f |00e1: const v0, #float 1.80779e+38 // #7f0800ad │ │ +42ccb8: 6e20 e5bc 0200 |00e4: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ccbe: 0c00 |00e7: move-result-object v0 │ │ +42ccc0: 1f00 970a |00e8: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42ccc4: 6e20 335b 3000 |00ea: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42ccca: 1400 b700 087f |00ed: const v0, #float 1.80779e+38 // #7f0800b7 │ │ +42ccd0: 6e20 e5bc 0200 |00f0: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ccd6: 0c00 |00f3: move-result-object v0 │ │ +42ccd8: 1f00 970a |00f4: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42ccdc: 6e20 335b 3000 |00f6: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42cce2: 1400 bd00 087f |00f9: const v0, #float 1.80779e+38 // #7f0800bd │ │ +42cce8: 6e20 e5bc 0200 |00fc: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ccee: 0c00 |00ff: move-result-object v0 │ │ +42ccf0: 1f00 970a |0100: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42ccf4: 6e20 335b 3000 |0102: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42ccfa: 1400 be00 087f |0105: const v0, #float 1.80779e+38 // #7f0800be │ │ +42cd00: 6e20 e5bc 0200 |0108: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cd06: 0c00 |010b: move-result-object v0 │ │ +42cd08: 1f00 970a |010c: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42cd0c: 6e20 335b 3000 |010e: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42cd12: 1400 d200 087f |0111: const v0, #float 1.80779e+38 // #7f0800d2 │ │ +42cd18: 6e20 e5bc 0200 |0114: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cd1e: 0c00 |0117: move-result-object v0 │ │ +42cd20: 1f00 970a |0118: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42cd24: 6e20 335b 3000 |011a: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42cd2a: 1400 d300 087f |011d: const v0, #float 1.80779e+38 // #7f0800d3 │ │ +42cd30: 6e20 e5bc 0200 |0120: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cd36: 0c00 |0123: move-result-object v0 │ │ +42cd38: 1f00 970a |0124: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42cd3c: 6e20 335b 3000 |0126: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42cd42: 0e00 |0129: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=561 │ │ 0x0009 line=562 │ │ 0x000f line=563 │ │ 0x0015 line=564 │ │ 0x001b line=565 │ │ @@ -1569980,41 +1569979,41 @@ │ │ type : '(Ljava/lang/String;)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 57 16-bit code units │ │ -42cd48: |[42cd48] org.purple.smoke.Settings.epks:(Ljava/lang/String;)V │ │ -42cd58: 6e10 efbc 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ -42cd5e: 0a00 |0003: move-result v0 │ │ -42cd60: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -42cd64: 0e00 |0006: return-void │ │ -42cd66: 1400 0101 087f |0007: const v0, #float 1.8078e+38 // #7f080101 │ │ -42cd6c: 6e20 e5bc 0400 |000a: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cd72: 0c00 |000d: move-result-object v0 │ │ -42cd74: 1f00 7c0a |000e: check-cast v0, Landroid/widget/ProgressBar; // type@0a7c │ │ -42cd78: 1211 |0010: const/4 v1, #int 1 // #1 │ │ -42cd7a: 6e20 5a5a 1000 |0011: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ -42cd80: 1201 |0014: const/4 v1, #int 0 // #0 │ │ -42cd82: 6e20 5f5a 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42cd88: 6e10 edbc 0400 |0018: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ -42cd8e: 0c02 |001b: move-result-object v2 │ │ -42cd90: 1303 1000 |001c: const/16 v3, #int 16 // #10 │ │ -42cd94: 6e30 9057 3203 |001e: invoke-virtual {v2, v3, v3}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ -42cd9a: 1402 9200 087f |0021: const v2, #float 1.80778e+38 // #7f080092 │ │ -42cda0: 6e20 e5bc 2400 |0024: invoke-virtual {v4, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cda6: 0c02 |0027: move-result-object v2 │ │ -42cda8: 7120 e6bb 1200 |0028: invoke-static {v2, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ -42cdae: 2201 f40a |002b: new-instance v1, Ljava/lang/Thread; // type@0af4 │ │ -42cdb2: 2202 e91a |002d: new-instance v2, Lorg/purple/smoke/Settings$2SingleShot; // type@1ae9 │ │ -42cdb6: 7040 78bc 4205 |002f: invoke-direct {v2, v4, v5, v0}, Lorg/purple/smoke/Settings$2SingleShot;.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V // method@bc78 │ │ -42cdbc: 7020 0e5d 2100 |0032: invoke-direct {v1, v2}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ -42cdc2: 6e10 195d 0100 |0035: invoke-virtual {v1}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ -42cdc8: 0e00 |0038: return-void │ │ +42cd44: |[42cd44] org.purple.smoke.Settings.epks:(Ljava/lang/String;)V │ │ +42cd54: 6e10 efbc 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ +42cd5a: 0a00 |0003: move-result v0 │ │ +42cd5c: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +42cd60: 0e00 |0006: return-void │ │ +42cd62: 1400 0101 087f |0007: const v0, #float 1.8078e+38 // #7f080101 │ │ +42cd68: 6e20 e5bc 0400 |000a: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cd6e: 0c00 |000d: move-result-object v0 │ │ +42cd70: 1f00 7c0a |000e: check-cast v0, Landroid/widget/ProgressBar; // type@0a7c │ │ +42cd74: 1211 |0010: const/4 v1, #int 1 // #1 │ │ +42cd76: 6e20 5a5a 1000 |0011: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ +42cd7c: 1201 |0014: const/4 v1, #int 0 // #0 │ │ +42cd7e: 6e20 5f5a 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42cd84: 6e10 edbc 0400 |0018: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ +42cd8a: 0c02 |001b: move-result-object v2 │ │ +42cd8c: 1303 1000 |001c: const/16 v3, #int 16 // #10 │ │ +42cd90: 6e30 9057 3203 |001e: invoke-virtual {v2, v3, v3}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ +42cd96: 1402 9200 087f |0021: const v2, #float 1.80778e+38 // #7f080092 │ │ +42cd9c: 6e20 e5bc 2400 |0024: invoke-virtual {v4, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cda2: 0c02 |0027: move-result-object v2 │ │ +42cda4: 7120 e6bb 1200 |0028: invoke-static {v2, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ +42cdaa: 2201 f40a |002b: new-instance v1, Ljava/lang/Thread; // type@0af4 │ │ +42cdae: 2202 e91a |002d: new-instance v2, Lorg/purple/smoke/Settings$2SingleShot; // type@1ae9 │ │ +42cdb2: 7040 78bc 4205 |002f: invoke-direct {v2, v4, v5, v0}, Lorg/purple/smoke/Settings$2SingleShot;.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V // method@bc78 │ │ +42cdb8: 7020 0e5d 2100 |0032: invoke-direct {v1, v2}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ +42cdbe: 6e10 195d 0100 |0035: invoke-virtual {v1}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ +42cdc4: 0e00 |0038: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=626 │ │ 0x000a line=630 │ │ 0x0011 line=632 │ │ 0x0015 line=633 │ │ 0x0018 line=634 │ │ @@ -1570030,102 +1570029,102 @@ │ │ type : '(Ljava/lang/String;)Z' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 11 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 162 16-bit code units │ │ -42bd28: |[42bd28] org.purple.smoke.Settings.generateOzone:(Ljava/lang/String;)Z │ │ -42bd38: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -42bd3a: 6e10 d35c 0a00 |0001: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42bd40: 0c01 |0004: move-result-object v1 │ │ -42bd42: 6e10 c35c 0100 |0005: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42bd48: 0a01 |0008: move-result v1 │ │ -42bd4a: 1202 |0009: const/4 v2, #int 0 // #0 │ │ -42bd4c: 1213 |000a: const/4 v3, #int 1 // #1 │ │ -42bd4e: 3901 3e00 |000b: if-nez v1, 0049 // +003e │ │ -42bd52: 2331 0f1c |000d: new-array v1, v3, [[B // type@1c0f │ │ -42bd56: 6e10 d35c 0a00 |000f: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42bd5c: 0c04 |0012: move-result-object v4 │ │ -42bd5e: 6205 e42c |0013: sget-object v5, Ljava/nio/charset/StandardCharsets;.UTF_8:Ljava/nio/charset/Charset; // field@2ce4 │ │ -42bd62: 6e20 be5c 5400 |0015: invoke-virtual {v4, v5}, Ljava/lang/String;.getBytes:(Ljava/nio/charset/Charset;)[B // method@5cbe │ │ -42bd68: 0c04 |0018: move-result-object v4 │ │ -42bd6a: 4d04 0100 |0019: aput-object v4, v1, v0 │ │ -42bd6e: 7110 b8b9 0100 |001b: invoke-static {v1}, Lorg/purple/smoke/Cryptography;.sha512:([[B)[B // method@b9b8 │ │ -42bd74: 0c01 |001e: move-result-object v1 │ │ -42bd76: 3801 1400 |001f: if-eqz v1, 0033 // +0014 │ │ -42bd7a: 6e10 d35c 0a00 |0021: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42bd80: 0c04 |0024: move-result-object v4 │ │ -42bd82: 6e10 ce5c 0400 |0025: invoke-virtual {v4}, Ljava/lang/String;.toCharArray:()[C // method@5cce │ │ -42bd88: 0c04 |0028: move-result-object v4 │ │ -42bd8a: 1305 0010 |0029: const/16 v5, #int 4096 // #1000 │ │ -42bd8e: 1306 a000 |002b: const/16 v6, #int 160 // #a0 │ │ -42bd92: 7140 9cb9 4165 |002d: invoke-static {v1, v4, v5, v6}, Lorg/purple/smoke/Cryptography;.pbkdf2:([B[CII)[B // method@b99c │ │ -42bd98: 0c04 |0030: move-result-object v4 │ │ -42bd9a: 1215 |0031: const/4 v5, #int 1 // #1 │ │ -42bd9c: 2803 |0032: goto 0035 // +0003 │ │ -42bd9e: 0724 |0033: move-object v4, v2 │ │ -42bda0: 1205 |0034: const/4 v5, #int 0 // #0 │ │ -42bda2: 3804 1200 |0035: if-eqz v4, 0047 // +0012 │ │ -42bda6: 1226 |0037: const/4 v6, #int 2 // #2 │ │ -42bda8: 7120 c454 6400 |0038: invoke-static {v4, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42bdae: 0c04 |003b: move-result-object v4 │ │ -42bdb0: 6e10 ce5c 0400 |003c: invoke-virtual {v4}, Ljava/lang/String;.toCharArray:()[C // method@5cce │ │ -42bdb6: 0c04 |003f: move-result-object v4 │ │ -42bdb8: 1306 0003 |0040: const/16 v6, #int 768 // #300 │ │ -42bdbc: 7140 9cb9 4163 |0042: invoke-static {v1, v4, v3, v6}, Lorg/purple/smoke/Cryptography;.pbkdf2:([B[CII)[B // method@b99c │ │ -42bdc2: 0c04 |0045: move-result-object v4 │ │ -42bdc4: 2805 |0046: goto 004b // +0005 │ │ -42bdc6: 1205 |0047: const/4 v5, #int 0 // #0 │ │ -42bdc8: 2803 |0048: goto 004b // +0003 │ │ -42bdca: 0724 |0049: move-object v4, v2 │ │ -42bdcc: 1215 |004a: const/4 v5, #int 1 // #1 │ │ -42bdce: 3904 0c00 |004b: if-nez v4, 0057 // +000c │ │ -42bdd2: 6e10 d35c 0a00 |004d: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42bdd8: 0c01 |0050: move-result-object v1 │ │ -42bdda: 6e10 c35c 0100 |0051: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42bde0: 0a01 |0054: move-result v1 │ │ -42bde2: 3801 4b00 |0055: if-eqz v1, 00a0 // +004b │ │ -42bde6: 5491 065f |0057: iget-object v1, v9, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42bdea: 6206 0a5f |0059: sget-object v6, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42bdee: 1a07 5892 |005b: const-string v7, "ozone_address" // string@9258 │ │ -42bdf2: 6e10 d35c 0a00 |005d: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42bdf8: 0c08 |0060: move-result-object v8 │ │ -42bdfa: 6e40 39ba 6187 |0061: invoke-virtual {v1, v6, v7, v8}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42be00: 6e10 d35c 0a00 |0064: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42be06: 0c0a |0067: move-result-object v10 │ │ -42be08: 6e10 c35c 0a00 |0068: invoke-virtual {v10}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42be0e: 0a0a |006b: move-result v10 │ │ -42be10: 1a01 5992 |006c: const-string v1, "ozone_address_stream" // string@9259 │ │ -42be14: 380a 1100 |006e: if-eqz v10, 007f // +0011 │ │ -42be18: 549a 065f |0070: iget-object v10, v9, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42be1c: 1a04 0000 |0072: const-string v4, "" // string@0000 │ │ -42be20: 6e40 39ba 6a41 |0074: invoke-virtual {v10, v6, v1, v4}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42be26: 6e20 b3b9 2600 |0077: invoke-virtual {v6, v2}, Lorg/purple/smoke/Cryptography;.setOzoneEncryptionKey:([B)V // method@b9b3 │ │ -42be2c: 6e20 b4b9 2600 |007a: invoke-virtual {v6, v2}, Lorg/purple/smoke/Cryptography;.setOzoneMacKey:([B)V // method@b9b4 │ │ -42be32: 1210 |007d: const/4 v0, #int 1 // #1 │ │ -42be34: 2823 |007e: goto 00a1 // +0023 │ │ -42be36: 3804 2100 |007f: if-eqz v4, 00a0 // +0021 │ │ -42be3a: 214a |0081: array-length v10, v4 │ │ -42be3c: 1302 6000 |0082: const/16 v2, #int 96 // #60 │ │ -42be40: 332a 1c00 |0084: if-ne v10, v2, 00a0 // +001c │ │ -42be44: 549a 065f |0086: iget-object v10, v9, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42be48: 7120 c454 0400 |0088: invoke-static {v4, v0}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42be4e: 0c02 |008b: move-result-object v2 │ │ -42be50: 6e40 39ba 6a21 |008c: invoke-virtual {v10, v6, v1, v2}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42be56: 130a 2000 |008f: const/16 v10, #int 32 // #20 │ │ -42be5a: 7130 b65f 040a |0091: invoke-static {v4, v0, v10}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb6 │ │ -42be60: 0c01 |0094: move-result-object v1 │ │ -42be62: 6e20 b3b9 1600 |0095: invoke-virtual {v6, v1}, Lorg/purple/smoke/Cryptography;.setOzoneEncryptionKey:([B)V // method@b9b3 │ │ -42be68: 2141 |0098: array-length v1, v4 │ │ -42be6a: 7130 b65f a401 |0099: invoke-static {v4, v10, v1}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb6 │ │ -42be70: 0c0a |009c: move-result-object v10 │ │ -42be72: 6e20 b4b9 a600 |009d: invoke-virtual {v6, v10}, Lorg/purple/smoke/Cryptography;.setOzoneMacKey:([B)V // method@b9b4 │ │ -42be78: 0150 |00a0: move v0, v5 │ │ -42be7a: 0f00 |00a1: return v0 │ │ +42bd24: |[42bd24] org.purple.smoke.Settings.generateOzone:(Ljava/lang/String;)Z │ │ +42bd34: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +42bd36: 6e10 d35c 0a00 |0001: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42bd3c: 0c01 |0004: move-result-object v1 │ │ +42bd3e: 6e10 c35c 0100 |0005: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42bd44: 0a01 |0008: move-result v1 │ │ +42bd46: 1202 |0009: const/4 v2, #int 0 // #0 │ │ +42bd48: 1213 |000a: const/4 v3, #int 1 // #1 │ │ +42bd4a: 3901 3e00 |000b: if-nez v1, 0049 // +003e │ │ +42bd4e: 2331 0f1c |000d: new-array v1, v3, [[B // type@1c0f │ │ +42bd52: 6e10 d35c 0a00 |000f: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42bd58: 0c04 |0012: move-result-object v4 │ │ +42bd5a: 6205 e42c |0013: sget-object v5, Ljava/nio/charset/StandardCharsets;.UTF_8:Ljava/nio/charset/Charset; // field@2ce4 │ │ +42bd5e: 6e20 be5c 5400 |0015: invoke-virtual {v4, v5}, Ljava/lang/String;.getBytes:(Ljava/nio/charset/Charset;)[B // method@5cbe │ │ +42bd64: 0c04 |0018: move-result-object v4 │ │ +42bd66: 4d04 0100 |0019: aput-object v4, v1, v0 │ │ +42bd6a: 7110 b8b9 0100 |001b: invoke-static {v1}, Lorg/purple/smoke/Cryptography;.sha512:([[B)[B // method@b9b8 │ │ +42bd70: 0c01 |001e: move-result-object v1 │ │ +42bd72: 3801 1400 |001f: if-eqz v1, 0033 // +0014 │ │ +42bd76: 6e10 d35c 0a00 |0021: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42bd7c: 0c04 |0024: move-result-object v4 │ │ +42bd7e: 6e10 ce5c 0400 |0025: invoke-virtual {v4}, Ljava/lang/String;.toCharArray:()[C // method@5cce │ │ +42bd84: 0c04 |0028: move-result-object v4 │ │ +42bd86: 1305 0010 |0029: const/16 v5, #int 4096 // #1000 │ │ +42bd8a: 1306 a000 |002b: const/16 v6, #int 160 // #a0 │ │ +42bd8e: 7140 9cb9 4165 |002d: invoke-static {v1, v4, v5, v6}, Lorg/purple/smoke/Cryptography;.pbkdf2:([B[CII)[B // method@b99c │ │ +42bd94: 0c04 |0030: move-result-object v4 │ │ +42bd96: 1215 |0031: const/4 v5, #int 1 // #1 │ │ +42bd98: 2803 |0032: goto 0035 // +0003 │ │ +42bd9a: 0724 |0033: move-object v4, v2 │ │ +42bd9c: 1205 |0034: const/4 v5, #int 0 // #0 │ │ +42bd9e: 3804 1200 |0035: if-eqz v4, 0047 // +0012 │ │ +42bda2: 1226 |0037: const/4 v6, #int 2 // #2 │ │ +42bda4: 7120 c454 6400 |0038: invoke-static {v4, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42bdaa: 0c04 |003b: move-result-object v4 │ │ +42bdac: 6e10 ce5c 0400 |003c: invoke-virtual {v4}, Ljava/lang/String;.toCharArray:()[C // method@5cce │ │ +42bdb2: 0c04 |003f: move-result-object v4 │ │ +42bdb4: 1306 0003 |0040: const/16 v6, #int 768 // #300 │ │ +42bdb8: 7140 9cb9 4163 |0042: invoke-static {v1, v4, v3, v6}, Lorg/purple/smoke/Cryptography;.pbkdf2:([B[CII)[B // method@b99c │ │ +42bdbe: 0c04 |0045: move-result-object v4 │ │ +42bdc0: 2805 |0046: goto 004b // +0005 │ │ +42bdc2: 1205 |0047: const/4 v5, #int 0 // #0 │ │ +42bdc4: 2803 |0048: goto 004b // +0003 │ │ +42bdc6: 0724 |0049: move-object v4, v2 │ │ +42bdc8: 1215 |004a: const/4 v5, #int 1 // #1 │ │ +42bdca: 3904 0c00 |004b: if-nez v4, 0057 // +000c │ │ +42bdce: 6e10 d35c 0a00 |004d: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42bdd4: 0c01 |0050: move-result-object v1 │ │ +42bdd6: 6e10 c35c 0100 |0051: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42bddc: 0a01 |0054: move-result v1 │ │ +42bdde: 3801 4b00 |0055: if-eqz v1, 00a0 // +004b │ │ +42bde2: 5491 065f |0057: iget-object v1, v9, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42bde6: 6206 0a5f |0059: sget-object v6, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42bdea: 1a07 5892 |005b: const-string v7, "ozone_address" // string@9258 │ │ +42bdee: 6e10 d35c 0a00 |005d: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42bdf4: 0c08 |0060: move-result-object v8 │ │ +42bdf6: 6e40 39ba 6187 |0061: invoke-virtual {v1, v6, v7, v8}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42bdfc: 6e10 d35c 0a00 |0064: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42be02: 0c0a |0067: move-result-object v10 │ │ +42be04: 6e10 c35c 0a00 |0068: invoke-virtual {v10}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42be0a: 0a0a |006b: move-result v10 │ │ +42be0c: 1a01 5992 |006c: const-string v1, "ozone_address_stream" // string@9259 │ │ +42be10: 380a 1100 |006e: if-eqz v10, 007f // +0011 │ │ +42be14: 549a 065f |0070: iget-object v10, v9, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42be18: 1a04 0000 |0072: const-string v4, "" // string@0000 │ │ +42be1c: 6e40 39ba 6a41 |0074: invoke-virtual {v10, v6, v1, v4}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42be22: 6e20 b3b9 2600 |0077: invoke-virtual {v6, v2}, Lorg/purple/smoke/Cryptography;.setOzoneEncryptionKey:([B)V // method@b9b3 │ │ +42be28: 6e20 b4b9 2600 |007a: invoke-virtual {v6, v2}, Lorg/purple/smoke/Cryptography;.setOzoneMacKey:([B)V // method@b9b4 │ │ +42be2e: 1210 |007d: const/4 v0, #int 1 // #1 │ │ +42be30: 2823 |007e: goto 00a1 // +0023 │ │ +42be32: 3804 2100 |007f: if-eqz v4, 00a0 // +0021 │ │ +42be36: 214a |0081: array-length v10, v4 │ │ +42be38: 1302 6000 |0082: const/16 v2, #int 96 // #60 │ │ +42be3c: 332a 1c00 |0084: if-ne v10, v2, 00a0 // +001c │ │ +42be40: 549a 065f |0086: iget-object v10, v9, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42be44: 7120 c454 0400 |0088: invoke-static {v4, v0}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42be4a: 0c02 |008b: move-result-object v2 │ │ +42be4c: 6e40 39ba 6a21 |008c: invoke-virtual {v10, v6, v1, v2}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42be52: 130a 2000 |008f: const/16 v10, #int 32 // #20 │ │ +42be56: 7130 b65f 040a |0091: invoke-static {v4, v0, v10}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb6 │ │ +42be5c: 0c01 |0094: move-result-object v1 │ │ +42be5e: 6e20 b3b9 1600 |0095: invoke-virtual {v6, v1}, Lorg/purple/smoke/Cryptography;.setOzoneEncryptionKey:([B)V // method@b9b3 │ │ +42be64: 2141 |0098: array-length v1, v4 │ │ +42be66: 7130 b65f a401 |0099: invoke-static {v4, v10, v1}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb6 │ │ +42be6c: 0c0a |009c: move-result-object v10 │ │ +42be6e: 6e20 b4b9 a600 |009d: invoke-virtual {v6, v10}, Lorg/purple/smoke/Cryptography;.setOzoneMacKey:([B)V // method@b9b4 │ │ +42be74: 0150 |00a0: move v0, v5 │ │ +42be76: 0f00 |00a1: return v0 │ │ catches : 2 │ │ 0x0001 - 0x006c │ │ Ljava/lang/Exception; -> 0x00a1 │ │ 0x0070 - 0x00a0 │ │ Ljava/lang/Exception; -> 0x00a1 │ │ positions : │ │ 0x0001 line=233 │ │ @@ -1570159,21 +1570158,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 12 16-bit code units │ │ -42cdcc: |[42cdcc] org.purple.smoke.Settings.networkStatusChanged:()V │ │ -42cddc: 6e10 ecbc 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bcec │ │ -42cde2: 0c00 |0003: move-result-object v0 │ │ -42cde4: 7100 29bd 0000 |0004: invoke-static {}, Lorg/purple/smoke/Smoke;.networkStatusString:()Ljava/lang/String; // method@bd29 │ │ -42cdea: 0c01 |0007: move-result-object v1 │ │ -42cdec: 6e20 0a3c 1000 |0008: invoke-virtual {v0, v1}, Landroid/support/v7/app/ActionBar;.setSubtitle:(Ljava/lang/CharSequence;)V // method@3c0a │ │ -42cdf2: 0e00 |000b: return-void │ │ +42cdc8: |[42cdc8] org.purple.smoke.Settings.networkStatusChanged:()V │ │ +42cdd8: 6e10 ecbc 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bcec │ │ +42cdde: 0c00 |0003: move-result-object v0 │ │ +42cde0: 7100 29bd 0000 |0004: invoke-static {}, Lorg/purple/smoke/Smoke;.networkStatusString:()Ljava/lang/String; // method@bd29 │ │ +42cde6: 0c01 |0007: move-result-object v1 │ │ +42cde8: 6e20 0a3c 1000 |0008: invoke-virtual {v0, v1}, Landroid/support/v7/app/ActionBar;.setSubtitle:(Ljava/lang/CharSequence;)V // method@3c0a │ │ +42cdee: 0e00 |000b: return-void │ │ catches : 1 │ │ 0x0000 - 0x000b │ │ Ljava/lang/Exception; -> 0x000b │ │ positions : │ │ 0x0000 line=738 │ │ locals : │ │ 0x0000 - 0x000c reg=2 this Lorg/purple/smoke/Settings; │ │ @@ -1570183,101 +1570182,101 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 8 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 180 16-bit code units │ │ -42de24: |[42de24] org.purple.smoke.Settings.populateFancyKeyData:()V │ │ -42de34: 1400 3800 087f |0000: const v0, #float 1.80776e+38 // #7f080038 │ │ -42de3a: 6e20 e5bc 0700 |0003: invoke-virtual {v7, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42de40: 0c00 |0006: move-result-object v0 │ │ -42de42: 1f00 970a |0007: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42de46: 6201 0a5f |0009: sget-object v1, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42de4a: 6e10 6cb9 0100 |000b: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatEncryptionKeyPair:()Ljava/security/KeyPair; // method@b96c │ │ -42de50: 0c02 |000e: move-result-object v2 │ │ -42de52: 1303 0800 |000f: const/16 v3, #int 8 // #8 │ │ -42de56: 1204 |0011: const/4 v4, #int 0 // #0 │ │ -42de58: 3802 2d00 |0012: if-eqz v2, 003f // +002d │ │ -42de5c: 6e10 6cb9 0100 |0014: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatEncryptionKeyPair:()Ljava/security/KeyPair; // method@b96c │ │ -42de62: 0c02 |0017: move-result-object v2 │ │ -42de64: 6e10 fc5d 0200 |0018: invoke-virtual {v2}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfc │ │ -42de6a: 0c02 |001b: move-result-object v2 │ │ -42de6c: 3902 0300 |001c: if-nez v2, 001f // +0003 │ │ -42de70: 2821 |001e: goto 003f // +0021 │ │ -42de72: 2202 f10a |001f: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -42de76: 7010 ee5c 0200 |0021: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42de7c: 1a05 4119 |0024: const-string v5, "Encryption Key │ │ +42de20: |[42de20] org.purple.smoke.Settings.populateFancyKeyData:()V │ │ +42de30: 1400 3800 087f |0000: const v0, #float 1.80776e+38 // #7f080038 │ │ +42de36: 6e20 e5bc 0700 |0003: invoke-virtual {v7, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42de3c: 0c00 |0006: move-result-object v0 │ │ +42de3e: 1f00 970a |0007: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42de42: 6201 0a5f |0009: sget-object v1, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42de46: 6e10 6cb9 0100 |000b: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatEncryptionKeyPair:()Ljava/security/KeyPair; // method@b96c │ │ +42de4c: 0c02 |000e: move-result-object v2 │ │ +42de4e: 1303 0800 |000f: const/16 v3, #int 8 // #8 │ │ +42de52: 1204 |0011: const/4 v4, #int 0 // #0 │ │ +42de54: 3802 2d00 |0012: if-eqz v2, 003f // +002d │ │ +42de58: 6e10 6cb9 0100 |0014: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatEncryptionKeyPair:()Ljava/security/KeyPair; // method@b96c │ │ +42de5e: 0c02 |0017: move-result-object v2 │ │ +42de60: 6e10 fc5d 0200 |0018: invoke-virtual {v2}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfc │ │ +42de66: 0c02 |001b: move-result-object v2 │ │ +42de68: 3902 0300 |001c: if-nez v2, 001f // +0003 │ │ +42de6c: 2821 |001e: goto 003f // +0021 │ │ +42de6e: 2202 f10a |001f: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +42de72: 7010 ee5c 0200 |0021: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42de78: 1a05 4119 |0024: const-string v5, "Encryption Key │ │ " // string@1941 │ │ -42de80: 6e20 f95c 5200 |0026: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42de86: 6e10 6cb9 0100 |0029: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatEncryptionKeyPair:()Ljava/security/KeyPair; // method@b96c │ │ -42de8c: 0c05 |002c: move-result-object v5 │ │ -42de8e: 6e10 6eb9 0100 |002d: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatEncryptionPublicKeyAlgorithm:()Ljava/lang/String; // method@b96e │ │ -42de94: 0c06 |0030: move-result-object v6 │ │ -42de96: 7120 84b9 6500 |0031: invoke-static {v5, v6}, Lorg/purple/smoke/Cryptography;.fancyKeyInformationOutput:(Ljava/security/KeyPair;Ljava/lang/String;)Ljava/lang/String; // method@b984 │ │ -42de9c: 0c05 |0034: move-result-object v5 │ │ -42de9e: 6e20 f95c 5200 |0035: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dea4: 6e20 495b 2000 |0038: invoke-virtual {v0, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42deaa: 6e20 535b 4000 |003b: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -42deb0: 2805 |003e: goto 0043 // +0005 │ │ -42deb2: 6e20 535b 3000 |003f: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -42deb8: 1202 |0042: const/4 v2, #int 0 // #0 │ │ -42deba: 1400 3c00 087f |0043: const v0, #float 1.80776e+38 // #7f08003c │ │ -42dec0: 6e20 e5bc 0700 |0046: invoke-virtual {v7, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42dec6: 0c00 |0049: move-result-object v0 │ │ -42dec8: 1f00 970a |004a: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42decc: 6e10 71b9 0100 |004c: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatSignatureKeyPair:()Ljava/security/KeyPair; // method@b971 │ │ -42ded2: 0c05 |004f: move-result-object v5 │ │ -42ded4: 3805 3500 |0050: if-eqz v5, 0085 // +0035 │ │ -42ded8: 6e10 71b9 0100 |0052: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatSignatureKeyPair:()Ljava/security/KeyPair; // method@b971 │ │ -42dede: 0c05 |0055: move-result-object v5 │ │ -42dee0: 6e10 fc5d 0500 |0056: invoke-virtual {v5}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfc │ │ -42dee6: 0c05 |0059: move-result-object v5 │ │ -42dee8: 3905 0300 |005a: if-nez v5, 005d // +0003 │ │ -42deec: 2829 |005c: goto 0085 // +0029 │ │ -42deee: 3902 0800 |005d: if-nez v2, 0065 // +0008 │ │ -42def2: 2202 f10a |005f: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -42def6: 7010 ee5c 0200 |0061: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42defc: 2808 |0064: goto 006c // +0008 │ │ -42defe: 6e10 ff5c 0200 |0065: invoke-virtual {v2}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ -42df04: 0a05 |0068: move-result v5 │ │ -42df06: 6e30 fd5c 4205 |0069: invoke-virtual {v2, v4, v5}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ -42df0c: 1a05 834b |006c: const-string v5, "Signature Key │ │ +42de7c: 6e20 f95c 5200 |0026: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42de82: 6e10 6cb9 0100 |0029: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatEncryptionKeyPair:()Ljava/security/KeyPair; // method@b96c │ │ +42de88: 0c05 |002c: move-result-object v5 │ │ +42de8a: 6e10 6eb9 0100 |002d: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatEncryptionPublicKeyAlgorithm:()Ljava/lang/String; // method@b96e │ │ +42de90: 0c06 |0030: move-result-object v6 │ │ +42de92: 7120 84b9 6500 |0031: invoke-static {v5, v6}, Lorg/purple/smoke/Cryptography;.fancyKeyInformationOutput:(Ljava/security/KeyPair;Ljava/lang/String;)Ljava/lang/String; // method@b984 │ │ +42de98: 0c05 |0034: move-result-object v5 │ │ +42de9a: 6e20 f95c 5200 |0035: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42dea0: 6e20 495b 2000 |0038: invoke-virtual {v0, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42dea6: 6e20 535b 4000 |003b: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +42deac: 2805 |003e: goto 0043 // +0005 │ │ +42deae: 6e20 535b 3000 |003f: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +42deb4: 1202 |0042: const/4 v2, #int 0 // #0 │ │ +42deb6: 1400 3c00 087f |0043: const v0, #float 1.80776e+38 // #7f08003c │ │ +42debc: 6e20 e5bc 0700 |0046: invoke-virtual {v7, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42dec2: 0c00 |0049: move-result-object v0 │ │ +42dec4: 1f00 970a |004a: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42dec8: 6e10 71b9 0100 |004c: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatSignatureKeyPair:()Ljava/security/KeyPair; // method@b971 │ │ +42dece: 0c05 |004f: move-result-object v5 │ │ +42ded0: 3805 3500 |0050: if-eqz v5, 0085 // +0035 │ │ +42ded4: 6e10 71b9 0100 |0052: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatSignatureKeyPair:()Ljava/security/KeyPair; // method@b971 │ │ +42deda: 0c05 |0055: move-result-object v5 │ │ +42dedc: 6e10 fc5d 0500 |0056: invoke-virtual {v5}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfc │ │ +42dee2: 0c05 |0059: move-result-object v5 │ │ +42dee4: 3905 0300 |005a: if-nez v5, 005d // +0003 │ │ +42dee8: 2829 |005c: goto 0085 // +0029 │ │ +42deea: 3902 0800 |005d: if-nez v2, 0065 // +0008 │ │ +42deee: 2202 f10a |005f: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +42def2: 7010 ee5c 0200 |0061: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42def8: 2808 |0064: goto 006c // +0008 │ │ +42defa: 6e10 ff5c 0200 |0065: invoke-virtual {v2}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ +42df00: 0a05 |0068: move-result v5 │ │ +42df02: 6e30 fd5c 4205 |0069: invoke-virtual {v2, v4, v5}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ +42df08: 1a05 834b |006c: const-string v5, "Signature Key │ │ " // string@4b83 │ │ -42df10: 6e20 f95c 5200 |006e: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42df16: 6e10 71b9 0100 |0071: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatSignatureKeyPair:()Ljava/security/KeyPair; // method@b971 │ │ -42df1c: 0c05 |0074: move-result-object v5 │ │ -42df1e: 1a06 0000 |0075: const-string v6, "" // string@0000 │ │ -42df22: 7120 84b9 6500 |0077: invoke-static {v5, v6}, Lorg/purple/smoke/Cryptography;.fancyKeyInformationOutput:(Ljava/security/KeyPair;Ljava/lang/String;)Ljava/lang/String; // method@b984 │ │ -42df28: 0c05 |007a: move-result-object v5 │ │ -42df2a: 6e20 f95c 5200 |007b: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42df30: 6e20 495b 2000 |007e: invoke-virtual {v0, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42df36: 6e20 535b 4000 |0081: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -42df3c: 2804 |0084: goto 0088 // +0004 │ │ -42df3e: 6e20 535b 3000 |0085: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -42df44: 1400 0b01 087f |0088: const v0, #float 1.8078e+38 // #7f08010b │ │ -42df4a: 6e20 e5bc 0700 |008b: invoke-virtual {v7, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42df50: 0c00 |008e: move-result-object v0 │ │ -42df52: 1f00 970a |008f: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42df56: 3902 0600 |0091: if-nez v2, 0097 // +0006 │ │ -42df5a: 6e20 535b 3000 |0093: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -42df60: 281d |0096: goto 00b3 // +001d │ │ -42df62: 6e10 ff5c 0200 |0097: invoke-virtual {v2}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ -42df68: 0a03 |009a: move-result v3 │ │ -42df6a: 6e30 fd5c 4203 |009b: invoke-virtual {v2, v4, v3}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ -42df70: 6e10 bdb9 0100 |009e: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.sipHashId:()Ljava/lang/String; // method@b9bd │ │ -42df76: 0c01 |00a1: move-result-object v1 │ │ -42df78: 7110 f0bb 0100 |00a2: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf0 │ │ -42df7e: 0c01 |00a5: move-result-object v1 │ │ -42df80: 6e20 f95c 1200 |00a6: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42df86: 6e20 495b 2000 |00a9: invoke-virtual {v0, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42df8c: 1211 |00ac: const/4 v1, #int 1 // #1 │ │ -42df8e: 6e20 4e5b 1000 |00ad: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setTextIsSelectable:(Z)V // method@5b4e │ │ -42df94: 6e20 535b 4000 |00b0: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -42df9a: 0e00 |00b3: return-void │ │ +42df0c: 6e20 f95c 5200 |006e: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42df12: 6e10 71b9 0100 |0071: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatSignatureKeyPair:()Ljava/security/KeyPair; // method@b971 │ │ +42df18: 0c05 |0074: move-result-object v5 │ │ +42df1a: 1a06 0000 |0075: const-string v6, "" // string@0000 │ │ +42df1e: 7120 84b9 6500 |0077: invoke-static {v5, v6}, Lorg/purple/smoke/Cryptography;.fancyKeyInformationOutput:(Ljava/security/KeyPair;Ljava/lang/String;)Ljava/lang/String; // method@b984 │ │ +42df24: 0c05 |007a: move-result-object v5 │ │ +42df26: 6e20 f95c 5200 |007b: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42df2c: 6e20 495b 2000 |007e: invoke-virtual {v0, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42df32: 6e20 535b 4000 |0081: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +42df38: 2804 |0084: goto 0088 // +0004 │ │ +42df3a: 6e20 535b 3000 |0085: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +42df40: 1400 0b01 087f |0088: const v0, #float 1.8078e+38 // #7f08010b │ │ +42df46: 6e20 e5bc 0700 |008b: invoke-virtual {v7, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42df4c: 0c00 |008e: move-result-object v0 │ │ +42df4e: 1f00 970a |008f: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42df52: 3902 0600 |0091: if-nez v2, 0097 // +0006 │ │ +42df56: 6e20 535b 3000 |0093: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +42df5c: 281d |0096: goto 00b3 // +001d │ │ +42df5e: 6e10 ff5c 0200 |0097: invoke-virtual {v2}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ +42df64: 0a03 |009a: move-result v3 │ │ +42df66: 6e30 fd5c 4203 |009b: invoke-virtual {v2, v4, v3}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ +42df6c: 6e10 bdb9 0100 |009e: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.sipHashId:()Ljava/lang/String; // method@b9bd │ │ +42df72: 0c01 |00a1: move-result-object v1 │ │ +42df74: 7110 f0bb 0100 |00a2: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf0 │ │ +42df7a: 0c01 |00a5: move-result-object v1 │ │ +42df7c: 6e20 f95c 1200 |00a6: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42df82: 6e20 495b 2000 |00a9: invoke-virtual {v0, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42df88: 1211 |00ac: const/4 v1, #int 1 // #1 │ │ +42df8a: 6e20 4e5b 1000 |00ad: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setTextIsSelectable:(Z)V // method@5b4e │ │ +42df90: 6e20 535b 4000 |00b0: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +42df96: 0e00 |00b3: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=750 │ │ 0x0009 line=752 │ │ 0x0014 line=753 │ │ 0x001f line=757 │ │ 0x0026 line=758 │ │ @@ -1570315,493 +1570314,493 @@ │ │ type : '(Ljava/util/ArrayList;)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 27 │ │ ins : 2 │ │ outs : 6 │ │ insns size : 1015 16-bit code units │ │ -42df9c: |[42df9c] org.purple.smoke.Settings.populateNeighbors:(Ljava/util/ArrayList;)V │ │ -42dfac: 0800 1900 |0000: move-object/from16 v0, v25 │ │ -42dfb0: 391a 0b00 |0002: if-nez v26, 000d // +000b │ │ -42dfb4: 5401 065f |0004: iget-object v1, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42dfb8: 6202 0a5f |0006: sget-object v2, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42dfbc: 6e20 12ba 2100 |0008: invoke-virtual {v1, v2}, Lorg/purple/smoke/Database;.readNeighbors:(Lorg/purple/smoke/Cryptography;)Ljava/util/ArrayList; // method@ba12 │ │ -42dfc2: 0c01 |000b: move-result-object v1 │ │ -42dfc4: 2803 |000c: goto 000f // +0003 │ │ -42dfc6: 0801 1a00 |000d: move-object/from16 v1, v26 │ │ -42dfca: 1402 a700 087f |000f: const v2, #float 1.80778e+38 // #7f0800a7 │ │ -42dfd0: 6e20 e5bc 2000 |0012: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42dfd6: 0c02 |0015: move-result-object v2 │ │ -42dfd8: 1f02 930a |0016: check-cast v2, Landroid/widget/TableLayout; // type@0a93 │ │ -42dfdc: 3801 db03 |0018: if-eqz v1, 03f3 // +03db │ │ -42dfe0: 6e10 a65f 0100 |001a: invoke-virtual {v1}, Ljava/util/ArrayList;.isEmpty:()Z // method@5fa6 │ │ -42dfe6: 0a03 |001d: move-result v3 │ │ -42dfe8: 3803 0400 |001e: if-eqz v3, 0022 // +0004 │ │ -42dfec: 2900 d303 |0020: goto/16 03f3 // +03d3 │ │ -42dff0: 2203 f10a |0022: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ -42dff4: 7010 ee5c 0300 |0024: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42dffa: 6e10 f55a 0200 |0027: invoke-virtual {v2}, Landroid/widget/TableLayout;.getChildCount:()I // method@5af5 │ │ -42e000: 0a04 |002a: move-result v4 │ │ -42e002: 1215 |002b: const/4 v5, #int 1 // #1 │ │ -42e004: b154 |002c: sub-int/2addr v4, v5 │ │ -42e006: 1a06 8604 |002d: const-string v6, "-" // string@0486 │ │ -42e00a: 1a07 aa1d |002f: const-string v7, "IPv6" // string@1daa │ │ -42e00e: 1a08 7c08 |0031: const-string v8, ":" // string@087c │ │ -42e012: 1209 |0033: const/4 v9, #int 0 // #0 │ │ -42e014: 3a04 7600 |0034: if-ltz v4, 00aa // +0076 │ │ -42e018: 6e20 f45a 4200 |0036: invoke-virtual {v2, v4}, Landroid/widget/TableLayout;.getChildAt:(I)Landroid/view/View; // method@5af4 │ │ -42e01e: 0c0a |0039: move-result-object v10 │ │ -42e020: 1f0a 950a |003a: check-cast v10, Landroid/widget/TableRow; // type@0a95 │ │ -42e024: 390a 0300 |003c: if-nez v10, 003f // +0003 │ │ -42e028: 2869 |003e: goto 00a7 // +0069 │ │ -42e02a: 6e20 fc5a 5a00 |003f: invoke-virtual {v10, v5}, Landroid/widget/TableRow;.getChildAt:(I)Landroid/view/View; // method@5afc │ │ -42e030: 0c0b |0042: move-result-object v11 │ │ -42e032: 1f0b 970a |0043: check-cast v11, Landroid/widget/TextView; // type@0a97 │ │ -42e036: 390b 0600 |0045: if-nez v11, 004b // +0006 │ │ -42e03a: 6e20 f75a a200 |0047: invoke-virtual {v2, v10}, Landroid/widget/TableLayout;.removeView:(Landroid/view/View;)V // method@5af7 │ │ -42e040: 285d |004a: goto 00a7 // +005d │ │ -42e042: 6e10 a75f 0100 |004b: invoke-virtual {v1}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa7 │ │ -42e048: 0c0c |004e: move-result-object v12 │ │ -42e04a: 7210 1b60 0c00 |004f: invoke-interface {v12}, Ljava/util/Iterator;.hasNext:()Z // method@601b │ │ -42e050: 0a0d |0052: move-result v13 │ │ -42e052: 380d 4f00 |0053: if-eqz v13, 00a2 // +004f │ │ -42e056: 7210 1c60 0c00 |0055: invoke-interface {v12}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601c │ │ -42e05c: 0c0d |0058: move-result-object v13 │ │ -42e05e: 1f0d bc1a |0059: check-cast v13, Lorg/purple/smoke/NeighborElement; // type@1abc │ │ -42e062: 6e10 ff5c 0300 |005b: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ -42e068: 0a0e |005e: move-result v14 │ │ -42e06a: 6e30 fd5c 930e |005f: invoke-virtual {v3, v9, v14}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ -42e070: 54de 6c55 |0062: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_remoteIpAddress:Ljava/lang/String; // field@556c │ │ -42e074: 6e20 f95c e300 |0064: invoke-virtual {v3, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e07a: 54de 6155 |0067: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_ipVersion:Ljava/lang/String; // field@5561 │ │ -42e07e: 6e20 b85c 7e00 |0069: invoke-virtual {v14, v7}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42e084: 0a0e |006c: move-result v14 │ │ -42e086: 380e 1200 |006d: if-eqz v14, 007f // +0012 │ │ -42e08a: 54de 6e55 |006f: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ -42e08e: 6e10 c35c 0e00 |0071: invoke-virtual {v14}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42e094: 0a0e |0074: move-result v14 │ │ -42e096: 390e 0a00 |0075: if-nez v14, 007f // +000a │ │ -42e09a: 6e20 f95c 6300 |0077: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e0a0: 54de 6e55 |007a: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ -42e0a4: 6e20 f95c e300 |007c: invoke-virtual {v3, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e0aa: 6e20 f95c 8300 |007f: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e0b0: 54de 6d55 |0082: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_remotePort:Ljava/lang/String; // field@556d │ │ -42e0b4: 6e20 f95c e300 |0084: invoke-virtual {v3, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e0ba: 6e20 f95c 8300 |0087: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e0c0: 54dd 7255 |008a: iget-object v13, v13, Lorg/purple/smoke/NeighborElement;.m_transport:Ljava/lang/String; // field@5572 │ │ -42e0c4: 6e20 f95c d300 |008c: invoke-virtual {v3, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e0ca: 6e10 1c5b 0b00 |008f: invoke-virtual {v11}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42e0d0: 0c0d |0092: move-result-object v13 │ │ -42e0d2: 7210 045c 0d00 |0093: invoke-interface {v13}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42e0d8: 0c0d |0096: move-result-object v13 │ │ -42e0da: 6e10 035d 0300 |0097: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42e0e0: 0c0e |009a: move-result-object v14 │ │ -42e0e2: 6e20 b65c ed00 |009b: invoke-virtual {v13, v14}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -42e0e8: 0a0d |009e: move-result v13 │ │ -42e0ea: 380d b0ff |009f: if-eqz v13, 004f // -0050 │ │ -42e0ee: 1219 |00a1: const/4 v9, #int 1 // #1 │ │ -42e0f0: 3909 0500 |00a2: if-nez v9, 00a7 // +0005 │ │ -42e0f4: 6e20 f75a a200 |00a4: invoke-virtual {v2, v10}, Landroid/widget/TableLayout;.removeView:(Landroid/view/View;)V // method@5af7 │ │ -42e0fa: d804 04ff |00a7: add-int/lit8 v4, v4, #int -1 // #ff │ │ -42e0fe: 2884 |00a9: goto 002d // -007c │ │ -42e100: 1404 a600 087f |00aa: const v4, #float 1.80778e+38 // #7f0800a6 │ │ -42e106: 6e20 e5bc 4000 |00ad: invoke-virtual {v0, v4}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42e10c: 0c04 |00b0: move-result-object v4 │ │ -42e10e: 1f04 8d0a |00b1: check-cast v4, Landroid/widget/Switch; // type@0a8d │ │ -42e112: 6e10 a75f 0100 |00b3: invoke-virtual {v1}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa7 │ │ -42e118: 0c0a |00b6: move-result-object v10 │ │ -42e11a: 120b |00b7: const/4 v11, #int 0 // #0 │ │ -42e11c: 7210 1b60 0a00 |00b8: invoke-interface {v10}, Ljava/util/Iterator;.hasNext:()Z // method@601b │ │ -42e122: 0a0c |00bb: move-result v12 │ │ -42e124: 380c 3103 |00bc: if-eqz v12, 03ed // +0331 │ │ -42e128: 7210 1c60 0a00 |00be: invoke-interface {v10}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601c │ │ -42e12e: 0c0c |00c1: move-result-object v12 │ │ -42e130: 1f0c bc1a |00c2: check-cast v12, Lorg/purple/smoke/NeighborElement; // type@1abc │ │ -42e134: 390c 0300 |00c4: if-nez v12, 00c7 // +0003 │ │ -42e138: 28f2 |00c6: goto 00b8 // -000e │ │ -42e13a: 6e10 f55a 0200 |00c7: invoke-virtual {v2}, Landroid/widget/TableLayout;.getChildCount:()I // method@5af5 │ │ -42e140: 0a0d |00ca: move-result v13 │ │ -42e142: 120e |00cb: const/4 v14, #int 0 // #0 │ │ -42e144: 35de 6200 |00cc: if-ge v14, v13, 012e // +0062 │ │ -42e148: 6e20 f45a e200 |00ce: invoke-virtual {v2, v14}, Landroid/widget/TableLayout;.getChildAt:(I)Landroid/view/View; // method@5af4 │ │ -42e14e: 0c10 |00d1: move-result-object v16 │ │ -42e150: 080f 1000 |00d2: move-object/from16 v15, v16 │ │ -42e154: 1f0f 950a |00d4: check-cast v15, Landroid/widget/TableRow; // type@0a95 │ │ -42e158: 390f 0300 |00d6: if-nez v15, 00d9 // +0003 │ │ -42e15c: 2851 |00d8: goto 0129 // +0051 │ │ -42e15e: 6e20 fc5a 5f00 |00d9: invoke-virtual {v15, v5}, Landroid/widget/TableRow;.getChildAt:(I)Landroid/view/View; // method@5afc │ │ -42e164: 0c0f |00dc: move-result-object v15 │ │ -42e166: 1f0f 970a |00dd: check-cast v15, Landroid/widget/TextView; // type@0a97 │ │ -42e16a: 390f 0300 |00df: if-nez v15, 00e2 // +0003 │ │ -42e16e: 2848 |00e1: goto 0129 // +0048 │ │ -42e170: 6e10 ff5c 0300 |00e2: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ -42e176: 0a05 |00e5: move-result v5 │ │ -42e178: 6e30 fd5c 9305 |00e6: invoke-virtual {v3, v9, v5}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ -42e17e: 54c5 6c55 |00e9: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_remoteIpAddress:Ljava/lang/String; // field@556c │ │ -42e182: 6e20 f95c 5300 |00eb: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e188: 54c5 6155 |00ee: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_ipVersion:Ljava/lang/String; // field@5561 │ │ -42e18c: 6e20 b85c 7500 |00f0: invoke-virtual {v5, v7}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42e192: 0a05 |00f3: move-result v5 │ │ -42e194: 3805 1200 |00f4: if-eqz v5, 0106 // +0012 │ │ -42e198: 54c5 6e55 |00f6: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ -42e19c: 6e10 c35c 0500 |00f8: invoke-virtual {v5}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42e1a2: 0a05 |00fb: move-result v5 │ │ -42e1a4: 3905 0a00 |00fc: if-nez v5, 0106 // +000a │ │ -42e1a8: 6e20 f95c 6300 |00fe: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e1ae: 54c5 6e55 |0101: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ -42e1b2: 6e20 f95c 5300 |0103: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e1b8: 6e20 f95c 8300 |0106: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e1be: 54c5 6d55 |0109: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_remotePort:Ljava/lang/String; // field@556d │ │ -42e1c2: 6e20 f95c 5300 |010b: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e1c8: 6e20 f95c 8300 |010e: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e1ce: 54c5 7255 |0111: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_transport:Ljava/lang/String; // field@5572 │ │ -42e1d2: 6e20 f95c 5300 |0113: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e1d8: 6e10 1c5b 0f00 |0116: invoke-virtual {v15}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42e1de: 0c05 |0119: move-result-object v5 │ │ -42e1e0: 7210 045c 0500 |011a: invoke-interface {v5}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42e1e6: 0c05 |011d: move-result-object v5 │ │ -42e1e8: 6e10 035d 0300 |011e: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42e1ee: 0c09 |0121: move-result-object v9 │ │ -42e1f0: 6e20 b65c 9500 |0122: invoke-virtual {v5, v9}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -42e1f6: 0a05 |0125: move-result v5 │ │ -42e1f8: 3805 0300 |0126: if-eqz v5, 0129 // +0003 │ │ -42e1fc: 2807 |0128: goto 012f // +0007 │ │ -42e1fe: d80e 0e01 |0129: add-int/lit8 v14, v14, #int 1 // #01 │ │ -42e202: 1215 |012b: const/4 v5, #int 1 // #1 │ │ -42e204: 1209 |012c: const/4 v9, #int 0 // #0 │ │ -42e206: 289f |012d: goto 00cc // -0061 │ │ -42e208: 120f |012e: const/4 v15, #int 0 // #0 │ │ -42e20a: 1a05 8617 |012f: const-string v5, "Disconnect" // string@1786 │ │ -42e20e: 12e9 |0131: const/4 v9, #int -2 // #fe │ │ -42e210: 390f 8000 |0132: if-nez v15, 01b2 // +0080 │ │ -42e214: 220d 940a |0134: new-instance v13, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ -42e218: 7020 f85a 9d00 |0136: invoke-direct {v13, v9}, Landroid/widget/TableRow$LayoutParams;.:(I)V // method@5af8 │ │ -42e21e: 220f 950a |0139: new-instance v15, Landroid/widget/TableRow; // type@0a95 │ │ -42e222: 7020 fa5a 0f00 |013b: invoke-direct {v15, v0}, Landroid/widget/TableRow;.:(Landroid/content/Context;)V // method@5afa │ │ -42e228: 52ce 6555 |013e: iget v14, v12, Lorg/purple/smoke/NeighborElement;.m_oid:I // field@5565 │ │ -42e22c: 6e20 fd5a ef00 |0140: invoke-virtual {v15, v14}, Landroid/widget/TableRow;.setId:(I)V // method@5afd │ │ -42e232: 6e20 fe5a df00 |0143: invoke-virtual {v15, v13}, Landroid/widget/TableRow;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5afe │ │ -42e238: 220d 8b0a |0146: new-instance v13, Landroid/widget/Spinner; // type@0a8b │ │ -42e23c: 7020 ae5a 0d00 |0148: invoke-direct {v13, v0}, Landroid/widget/Spinner;.:(Landroid/content/Context;)V // method@5aae │ │ -42e242: 220e f10a |014b: new-instance v14, Ljava/lang/StringBuilder; // type@0af1 │ │ -42e246: 7010 ee5c 0e00 |014d: invoke-direct {v14}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42e24c: 54c9 6c55 |0150: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteIpAddress:Ljava/lang/String; // field@556c │ │ -42e250: 6e20 f95c 9e00 |0152: invoke-virtual {v14, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e256: 6e20 f95c 8e00 |0155: invoke-virtual {v14, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e25c: 54c9 6d55 |0158: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remotePort:Ljava/lang/String; // field@556d │ │ -42e260: 6e20 f95c 9e00 |015a: invoke-virtual {v14, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e266: 6e10 035d 0e00 |015d: invoke-virtual {v14}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42e26c: 0c09 |0160: move-result-object v9 │ │ -42e26e: 54ce 7255 |0161: iget-object v14, v12, Lorg/purple/smoke/NeighborElement;.m_transport:Ljava/lang/String; // field@5572 │ │ -42e272: 0812 0a00 |0163: move-object/from16 v18, v10 │ │ -42e276: 1a0a 0a4d |0165: const-string v10, "TCP" // string@4d0a │ │ -42e27a: 6e20 b85c ae00 |0167: invoke-virtual {v14, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42e280: 0a0a |016a: move-result v10 │ │ -42e282: 380a 1700 |016b: if-eqz v10, 0182 // +0017 │ │ -42e286: 1a13 dd0a |016d: const-string v19, "Action" // string@0add │ │ -42e28a: 1a14 0e14 |016f: const-string v20, "Connect" // string@140e │ │ -42e28e: 1a15 2a17 |0171: const-string v21, "Delete" // string@172a │ │ -42e292: 1a16 8617 |0173: const-string v22, "Disconnect" // string@1786 │ │ -42e296: 1a17 6745 |0175: const-string v23, "Purge Queue" // string@4567 │ │ -42e29a: 1a18 ed46 |0177: const-string v24, "Reset SSL/TLS Credentials" // string@46ed │ │ -42e29e: 2506 a81b 1300 |0179: filled-new-array/range {v19, v20, v21, v22, v23, v24}, [Ljava/lang/String; // type@1ba8 │ │ -42e2a4: 0c0a |017c: move-result-object v10 │ │ -42e2a6: 0813 0100 |017d: move-object/from16 v19, v1 │ │ -42e2aa: 081a 0f00 |017f: move-object/from16 v26, v15 │ │ -42e2ae: 2811 |0181: goto 0192 // +0011 │ │ -42e2b0: 1a0a dd0a |0182: const-string v10, "Action" // string@0add │ │ -42e2b4: 1a0e 0e14 |0184: const-string v14, "Connect" // string@140e │ │ -42e2b8: 081a 0f00 |0186: move-object/from16 v26, v15 │ │ -42e2bc: 1a0f 2a17 |0188: const-string v15, "Delete" // string@172a │ │ -42e2c0: 0813 0100 |018a: move-object/from16 v19, v1 │ │ -42e2c4: 1a01 6745 |018c: const-string v1, "Purge Queue" // string@4567 │ │ -42e2c8: 2451 a81b ea5f |018e: filled-new-array {v10, v14, v15, v5, v1}, [Ljava/lang/String; // type@1ba8 │ │ -42e2ce: 0c0a |0191: move-result-object v10 │ │ -42e2d0: 2201 5b0a |0192: new-instance v1, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -42e2d4: 140e 0800 0901 |0194: const v14, #float 2.51629e-38 // #01090008 │ │ -42e2da: 7040 cb58 01ae |0197: invoke-direct {v1, v0, v14, v10}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ -42e2e0: 6e20 c05a 1d00 |019a: invoke-virtual {v13, v1}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -42e2e6: 52c1 6555 |019d: iget v1, v12, Lorg/purple/smoke/NeighborElement;.m_oid:I // field@5565 │ │ -42e2ea: 6e20 c75a 1d00 |019f: invoke-virtual {v13, v1}, Landroid/widget/Spinner;.setId:(I)V // method@5ac7 │ │ -42e2f0: 2201 f91a |01a2: new-instance v1, Lorg/purple/smoke/Settings$4; // type@1af9 │ │ -42e2f4: 7030 9dbc 0109 |01a4: invoke-direct {v1, v0, v9}, Lorg/purple/smoke/Settings$4;.:(Lorg/purple/smoke/Settings;Ljava/lang/String;)V // method@bc9d │ │ -42e2fa: 6e20 c95a 1d00 |01a7: invoke-virtual {v13, v1}, Landroid/widget/Spinner;.setOnItemSelectedListener:(Landroid/widget/AdapterView$OnItemSelectedListener;)V // method@5ac9 │ │ -42e300: 220f 970a |01aa: new-instance v15, Landroid/widget/TextView; // type@0a97 │ │ -42e304: 7020 ff5a 0f00 |01ac: invoke-direct {v15, v0}, Landroid/widget/TextView;.:(Landroid/content/Context;)V // method@5aff │ │ -42e30a: 0801 1a00 |01af: move-object/from16 v1, v26 │ │ -42e30e: 2807 |01b1: goto 01b8 // +0007 │ │ -42e310: 0813 0100 |01b2: move-object/from16 v19, v1 │ │ -42e314: 0812 0a00 |01b4: move-object/from16 v18, v10 │ │ -42e318: 1201 |01b6: const/4 v1, #int 0 // #0 │ │ -42e31a: 120d |01b7: const/4 v13, #int 0 // #0 │ │ -42e31c: 54c9 7055 |01b8: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_status:Ljava/lang/String; // field@5570 │ │ -42e320: 6e10 bf5c 0900 |01ba: invoke-virtual {v9}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -42e326: 1a0a 5c60 |01bd: const-string v10, "connecting" // string@605c │ │ -42e32a: 6e20 b85c a900 |01bf: invoke-virtual {v9, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42e330: 0a0a |01c2: move-result v10 │ │ -42e332: 390a 2500 |01c3: if-nez v10, 01e8 // +0025 │ │ -42e336: 1a0a 5960 |01c5: const-string v10, "connected" // string@6059 │ │ -42e33a: 6e20 b85c a900 |01c7: invoke-virtual {v9, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42e340: 0a09 |01ca: move-result v9 │ │ -42e342: 3909 0e00 |01cb: if-nez v9, 01d9 // +000e │ │ -42e346: 1309 b700 |01cd: const/16 v9, #int 183 // #b7 │ │ -42e34a: 130a 1c00 |01cf: const/16 v10, #int 28 // #1c │ │ -42e34e: 7130 c902 a90a |01d1: invoke-static {v9, v10, v10}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ -42e354: 0a09 |01d4: move-result v9 │ │ -42e356: 6e20 4c5b 9f00 |01d5: invoke-virtual {v15, v9}, Landroid/widget/TextView;.setTextColor:(I)V // method@5b4c │ │ -42e35c: 280e |01d8: goto 01e6 // +000e │ │ -42e35e: 1309 1b00 |01d9: const/16 v9, #int 27 // #1b │ │ -42e362: 130a 5e00 |01db: const/16 v10, #int 94 // #5e │ │ -42e366: 130e 2000 |01dd: const/16 v14, #int 32 // #20 │ │ -42e36a: 7130 c902 a90e |01df: invoke-static {v9, v10, v14}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ -42e370: 0a09 |01e2: move-result v9 │ │ -42e372: 6e20 4c5b 9f00 |01e3: invoke-virtual {v15, v9}, Landroid/widget/TextView;.setTextColor:(I)V // method@5b4c │ │ -42e378: 120e |01e6: const/4 v14, #int 0 // #0 │ │ -42e37a: 280d |01e7: goto 01f4 // +000d │ │ -42e37c: 1309 ff00 |01e8: const/16 v9, #int 255 // #ff │ │ -42e380: 130a 6f00 |01ea: const/16 v10, #int 111 // #6f │ │ -42e384: 120e |01ec: const/4 v14, #int 0 // #0 │ │ -42e386: 7130 c902 a90e |01ed: invoke-static {v9, v10, v14}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ -42e38c: 0a09 |01f0: move-result v9 │ │ -42e38e: 6e20 4c5b 9f00 |01f1: invoke-virtual {v15, v9}, Landroid/widget/TextView;.setTextColor:(I)V // method@5b4c │ │ -42e394: 6e10 ff5c 0300 |01f4: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ -42e39a: 0a09 |01f7: move-result v9 │ │ -42e39c: 6e30 fd5c e309 |01f8: invoke-virtual {v3, v14, v9}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ -42e3a2: 1a09 df14 |01fb: const-string v9, "Control: " // string@14df │ │ -42e3a6: 6e20 f95c 9300 |01fd: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e3ac: 54c9 7155 |0200: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_statusControl:Ljava/lang/String; // field@5571 │ │ -42e3b0: 121a |0202: const/4 v10, #int 1 // #1 │ │ -42e3b2: 6e30 cd5c e90a |0203: invoke-virtual {v9, v14, v10}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ -42e3b8: 0c09 |0206: move-result-object v9 │ │ -42e3ba: 6e10 d15c 0900 |0207: invoke-virtual {v9}, Ljava/lang/String;.toUpperCase:()Ljava/lang/String; // method@5cd1 │ │ -42e3c0: 0c09 |020a: move-result-object v9 │ │ -42e3c2: 6e20 f95c 9300 |020b: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e3c8: 54c9 7155 |020e: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_statusControl:Ljava/lang/String; // field@5571 │ │ -42e3cc: 6e20 cc5c a900 |0210: invoke-virtual {v9, v10}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ -42e3d2: 0c09 |0213: move-result-object v9 │ │ -42e3d4: 6e20 f95c 9300 |0214: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e3da: 2804 |0217: goto 021b // +0004 │ │ -42e3dc: 6e20 f95c 5300 |0218: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e3e2: 1a05 0100 |021b: const-string v5, " │ │ +42df98: |[42df98] org.purple.smoke.Settings.populateNeighbors:(Ljava/util/ArrayList;)V │ │ +42dfa8: 0800 1900 |0000: move-object/from16 v0, v25 │ │ +42dfac: 391a 0b00 |0002: if-nez v26, 000d // +000b │ │ +42dfb0: 5401 065f |0004: iget-object v1, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42dfb4: 6202 0a5f |0006: sget-object v2, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42dfb8: 6e20 12ba 2100 |0008: invoke-virtual {v1, v2}, Lorg/purple/smoke/Database;.readNeighbors:(Lorg/purple/smoke/Cryptography;)Ljava/util/ArrayList; // method@ba12 │ │ +42dfbe: 0c01 |000b: move-result-object v1 │ │ +42dfc0: 2803 |000c: goto 000f // +0003 │ │ +42dfc2: 0801 1a00 |000d: move-object/from16 v1, v26 │ │ +42dfc6: 1402 a700 087f |000f: const v2, #float 1.80778e+38 // #7f0800a7 │ │ +42dfcc: 6e20 e5bc 2000 |0012: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42dfd2: 0c02 |0015: move-result-object v2 │ │ +42dfd4: 1f02 930a |0016: check-cast v2, Landroid/widget/TableLayout; // type@0a93 │ │ +42dfd8: 3801 db03 |0018: if-eqz v1, 03f3 // +03db │ │ +42dfdc: 6e10 a65f 0100 |001a: invoke-virtual {v1}, Ljava/util/ArrayList;.isEmpty:()Z // method@5fa6 │ │ +42dfe2: 0a03 |001d: move-result v3 │ │ +42dfe4: 3803 0400 |001e: if-eqz v3, 0022 // +0004 │ │ +42dfe8: 2900 d303 |0020: goto/16 03f3 // +03d3 │ │ +42dfec: 2203 f10a |0022: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ +42dff0: 7010 ee5c 0300 |0024: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42dff6: 6e10 f55a 0200 |0027: invoke-virtual {v2}, Landroid/widget/TableLayout;.getChildCount:()I // method@5af5 │ │ +42dffc: 0a04 |002a: move-result v4 │ │ +42dffe: 1215 |002b: const/4 v5, #int 1 // #1 │ │ +42e000: b154 |002c: sub-int/2addr v4, v5 │ │ +42e002: 1a06 8604 |002d: const-string v6, "-" // string@0486 │ │ +42e006: 1a07 aa1d |002f: const-string v7, "IPv6" // string@1daa │ │ +42e00a: 1a08 7c08 |0031: const-string v8, ":" // string@087c │ │ +42e00e: 1209 |0033: const/4 v9, #int 0 // #0 │ │ +42e010: 3a04 7600 |0034: if-ltz v4, 00aa // +0076 │ │ +42e014: 6e20 f45a 4200 |0036: invoke-virtual {v2, v4}, Landroid/widget/TableLayout;.getChildAt:(I)Landroid/view/View; // method@5af4 │ │ +42e01a: 0c0a |0039: move-result-object v10 │ │ +42e01c: 1f0a 950a |003a: check-cast v10, Landroid/widget/TableRow; // type@0a95 │ │ +42e020: 390a 0300 |003c: if-nez v10, 003f // +0003 │ │ +42e024: 2869 |003e: goto 00a7 // +0069 │ │ +42e026: 6e20 fc5a 5a00 |003f: invoke-virtual {v10, v5}, Landroid/widget/TableRow;.getChildAt:(I)Landroid/view/View; // method@5afc │ │ +42e02c: 0c0b |0042: move-result-object v11 │ │ +42e02e: 1f0b 970a |0043: check-cast v11, Landroid/widget/TextView; // type@0a97 │ │ +42e032: 390b 0600 |0045: if-nez v11, 004b // +0006 │ │ +42e036: 6e20 f75a a200 |0047: invoke-virtual {v2, v10}, Landroid/widget/TableLayout;.removeView:(Landroid/view/View;)V // method@5af7 │ │ +42e03c: 285d |004a: goto 00a7 // +005d │ │ +42e03e: 6e10 a75f 0100 |004b: invoke-virtual {v1}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa7 │ │ +42e044: 0c0c |004e: move-result-object v12 │ │ +42e046: 7210 1b60 0c00 |004f: invoke-interface {v12}, Ljava/util/Iterator;.hasNext:()Z // method@601b │ │ +42e04c: 0a0d |0052: move-result v13 │ │ +42e04e: 380d 4f00 |0053: if-eqz v13, 00a2 // +004f │ │ +42e052: 7210 1c60 0c00 |0055: invoke-interface {v12}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601c │ │ +42e058: 0c0d |0058: move-result-object v13 │ │ +42e05a: 1f0d bc1a |0059: check-cast v13, Lorg/purple/smoke/NeighborElement; // type@1abc │ │ +42e05e: 6e10 ff5c 0300 |005b: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ +42e064: 0a0e |005e: move-result v14 │ │ +42e066: 6e30 fd5c 930e |005f: invoke-virtual {v3, v9, v14}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ +42e06c: 54de 6c55 |0062: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_remoteIpAddress:Ljava/lang/String; // field@556c │ │ +42e070: 6e20 f95c e300 |0064: invoke-virtual {v3, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e076: 54de 6155 |0067: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_ipVersion:Ljava/lang/String; // field@5561 │ │ +42e07a: 6e20 b85c 7e00 |0069: invoke-virtual {v14, v7}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42e080: 0a0e |006c: move-result v14 │ │ +42e082: 380e 1200 |006d: if-eqz v14, 007f // +0012 │ │ +42e086: 54de 6e55 |006f: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ +42e08a: 6e10 c35c 0e00 |0071: invoke-virtual {v14}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42e090: 0a0e |0074: move-result v14 │ │ +42e092: 390e 0a00 |0075: if-nez v14, 007f // +000a │ │ +42e096: 6e20 f95c 6300 |0077: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e09c: 54de 6e55 |007a: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ +42e0a0: 6e20 f95c e300 |007c: invoke-virtual {v3, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e0a6: 6e20 f95c 8300 |007f: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e0ac: 54de 6d55 |0082: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_remotePort:Ljava/lang/String; // field@556d │ │ +42e0b0: 6e20 f95c e300 |0084: invoke-virtual {v3, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e0b6: 6e20 f95c 8300 |0087: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e0bc: 54dd 7255 |008a: iget-object v13, v13, Lorg/purple/smoke/NeighborElement;.m_transport:Ljava/lang/String; // field@5572 │ │ +42e0c0: 6e20 f95c d300 |008c: invoke-virtual {v3, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e0c6: 6e10 1c5b 0b00 |008f: invoke-virtual {v11}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42e0cc: 0c0d |0092: move-result-object v13 │ │ +42e0ce: 7210 045c 0d00 |0093: invoke-interface {v13}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42e0d4: 0c0d |0096: move-result-object v13 │ │ +42e0d6: 6e10 035d 0300 |0097: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42e0dc: 0c0e |009a: move-result-object v14 │ │ +42e0de: 6e20 b65c ed00 |009b: invoke-virtual {v13, v14}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +42e0e4: 0a0d |009e: move-result v13 │ │ +42e0e6: 380d b0ff |009f: if-eqz v13, 004f // -0050 │ │ +42e0ea: 1219 |00a1: const/4 v9, #int 1 // #1 │ │ +42e0ec: 3909 0500 |00a2: if-nez v9, 00a7 // +0005 │ │ +42e0f0: 6e20 f75a a200 |00a4: invoke-virtual {v2, v10}, Landroid/widget/TableLayout;.removeView:(Landroid/view/View;)V // method@5af7 │ │ +42e0f6: d804 04ff |00a7: add-int/lit8 v4, v4, #int -1 // #ff │ │ +42e0fa: 2884 |00a9: goto 002d // -007c │ │ +42e0fc: 1404 a600 087f |00aa: const v4, #float 1.80778e+38 // #7f0800a6 │ │ +42e102: 6e20 e5bc 4000 |00ad: invoke-virtual {v0, v4}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42e108: 0c04 |00b0: move-result-object v4 │ │ +42e10a: 1f04 8d0a |00b1: check-cast v4, Landroid/widget/Switch; // type@0a8d │ │ +42e10e: 6e10 a75f 0100 |00b3: invoke-virtual {v1}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa7 │ │ +42e114: 0c0a |00b6: move-result-object v10 │ │ +42e116: 120b |00b7: const/4 v11, #int 0 // #0 │ │ +42e118: 7210 1b60 0a00 |00b8: invoke-interface {v10}, Ljava/util/Iterator;.hasNext:()Z // method@601b │ │ +42e11e: 0a0c |00bb: move-result v12 │ │ +42e120: 380c 3103 |00bc: if-eqz v12, 03ed // +0331 │ │ +42e124: 7210 1c60 0a00 |00be: invoke-interface {v10}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601c │ │ +42e12a: 0c0c |00c1: move-result-object v12 │ │ +42e12c: 1f0c bc1a |00c2: check-cast v12, Lorg/purple/smoke/NeighborElement; // type@1abc │ │ +42e130: 390c 0300 |00c4: if-nez v12, 00c7 // +0003 │ │ +42e134: 28f2 |00c6: goto 00b8 // -000e │ │ +42e136: 6e10 f55a 0200 |00c7: invoke-virtual {v2}, Landroid/widget/TableLayout;.getChildCount:()I // method@5af5 │ │ +42e13c: 0a0d |00ca: move-result v13 │ │ +42e13e: 120e |00cb: const/4 v14, #int 0 // #0 │ │ +42e140: 35de 6200 |00cc: if-ge v14, v13, 012e // +0062 │ │ +42e144: 6e20 f45a e200 |00ce: invoke-virtual {v2, v14}, Landroid/widget/TableLayout;.getChildAt:(I)Landroid/view/View; // method@5af4 │ │ +42e14a: 0c10 |00d1: move-result-object v16 │ │ +42e14c: 080f 1000 |00d2: move-object/from16 v15, v16 │ │ +42e150: 1f0f 950a |00d4: check-cast v15, Landroid/widget/TableRow; // type@0a95 │ │ +42e154: 390f 0300 |00d6: if-nez v15, 00d9 // +0003 │ │ +42e158: 2851 |00d8: goto 0129 // +0051 │ │ +42e15a: 6e20 fc5a 5f00 |00d9: invoke-virtual {v15, v5}, Landroid/widget/TableRow;.getChildAt:(I)Landroid/view/View; // method@5afc │ │ +42e160: 0c0f |00dc: move-result-object v15 │ │ +42e162: 1f0f 970a |00dd: check-cast v15, Landroid/widget/TextView; // type@0a97 │ │ +42e166: 390f 0300 |00df: if-nez v15, 00e2 // +0003 │ │ +42e16a: 2848 |00e1: goto 0129 // +0048 │ │ +42e16c: 6e10 ff5c 0300 |00e2: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ +42e172: 0a05 |00e5: move-result v5 │ │ +42e174: 6e30 fd5c 9305 |00e6: invoke-virtual {v3, v9, v5}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ +42e17a: 54c5 6c55 |00e9: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_remoteIpAddress:Ljava/lang/String; // field@556c │ │ +42e17e: 6e20 f95c 5300 |00eb: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e184: 54c5 6155 |00ee: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_ipVersion:Ljava/lang/String; // field@5561 │ │ +42e188: 6e20 b85c 7500 |00f0: invoke-virtual {v5, v7}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42e18e: 0a05 |00f3: move-result v5 │ │ +42e190: 3805 1200 |00f4: if-eqz v5, 0106 // +0012 │ │ +42e194: 54c5 6e55 |00f6: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ +42e198: 6e10 c35c 0500 |00f8: invoke-virtual {v5}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42e19e: 0a05 |00fb: move-result v5 │ │ +42e1a0: 3905 0a00 |00fc: if-nez v5, 0106 // +000a │ │ +42e1a4: 6e20 f95c 6300 |00fe: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e1aa: 54c5 6e55 |0101: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ +42e1ae: 6e20 f95c 5300 |0103: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e1b4: 6e20 f95c 8300 |0106: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e1ba: 54c5 6d55 |0109: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_remotePort:Ljava/lang/String; // field@556d │ │ +42e1be: 6e20 f95c 5300 |010b: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e1c4: 6e20 f95c 8300 |010e: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e1ca: 54c5 7255 |0111: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_transport:Ljava/lang/String; // field@5572 │ │ +42e1ce: 6e20 f95c 5300 |0113: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e1d4: 6e10 1c5b 0f00 |0116: invoke-virtual {v15}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42e1da: 0c05 |0119: move-result-object v5 │ │ +42e1dc: 7210 045c 0500 |011a: invoke-interface {v5}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42e1e2: 0c05 |011d: move-result-object v5 │ │ +42e1e4: 6e10 035d 0300 |011e: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42e1ea: 0c09 |0121: move-result-object v9 │ │ +42e1ec: 6e20 b65c 9500 |0122: invoke-virtual {v5, v9}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +42e1f2: 0a05 |0125: move-result v5 │ │ +42e1f4: 3805 0300 |0126: if-eqz v5, 0129 // +0003 │ │ +42e1f8: 2807 |0128: goto 012f // +0007 │ │ +42e1fa: d80e 0e01 |0129: add-int/lit8 v14, v14, #int 1 // #01 │ │ +42e1fe: 1215 |012b: const/4 v5, #int 1 // #1 │ │ +42e200: 1209 |012c: const/4 v9, #int 0 // #0 │ │ +42e202: 289f |012d: goto 00cc // -0061 │ │ +42e204: 120f |012e: const/4 v15, #int 0 // #0 │ │ +42e206: 1a05 8617 |012f: const-string v5, "Disconnect" // string@1786 │ │ +42e20a: 12e9 |0131: const/4 v9, #int -2 // #fe │ │ +42e20c: 390f 8000 |0132: if-nez v15, 01b2 // +0080 │ │ +42e210: 220d 940a |0134: new-instance v13, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ +42e214: 7020 f85a 9d00 |0136: invoke-direct {v13, v9}, Landroid/widget/TableRow$LayoutParams;.:(I)V // method@5af8 │ │ +42e21a: 220f 950a |0139: new-instance v15, Landroid/widget/TableRow; // type@0a95 │ │ +42e21e: 7020 fa5a 0f00 |013b: invoke-direct {v15, v0}, Landroid/widget/TableRow;.:(Landroid/content/Context;)V // method@5afa │ │ +42e224: 52ce 6555 |013e: iget v14, v12, Lorg/purple/smoke/NeighborElement;.m_oid:I // field@5565 │ │ +42e228: 6e20 fd5a ef00 |0140: invoke-virtual {v15, v14}, Landroid/widget/TableRow;.setId:(I)V // method@5afd │ │ +42e22e: 6e20 fe5a df00 |0143: invoke-virtual {v15, v13}, Landroid/widget/TableRow;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5afe │ │ +42e234: 220d 8b0a |0146: new-instance v13, Landroid/widget/Spinner; // type@0a8b │ │ +42e238: 7020 ae5a 0d00 |0148: invoke-direct {v13, v0}, Landroid/widget/Spinner;.:(Landroid/content/Context;)V // method@5aae │ │ +42e23e: 220e f10a |014b: new-instance v14, Ljava/lang/StringBuilder; // type@0af1 │ │ +42e242: 7010 ee5c 0e00 |014d: invoke-direct {v14}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42e248: 54c9 6c55 |0150: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteIpAddress:Ljava/lang/String; // field@556c │ │ +42e24c: 6e20 f95c 9e00 |0152: invoke-virtual {v14, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e252: 6e20 f95c 8e00 |0155: invoke-virtual {v14, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e258: 54c9 6d55 |0158: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remotePort:Ljava/lang/String; // field@556d │ │ +42e25c: 6e20 f95c 9e00 |015a: invoke-virtual {v14, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e262: 6e10 035d 0e00 |015d: invoke-virtual {v14}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42e268: 0c09 |0160: move-result-object v9 │ │ +42e26a: 54ce 7255 |0161: iget-object v14, v12, Lorg/purple/smoke/NeighborElement;.m_transport:Ljava/lang/String; // field@5572 │ │ +42e26e: 0812 0a00 |0163: move-object/from16 v18, v10 │ │ +42e272: 1a0a 0a4d |0165: const-string v10, "TCP" // string@4d0a │ │ +42e276: 6e20 b85c ae00 |0167: invoke-virtual {v14, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42e27c: 0a0a |016a: move-result v10 │ │ +42e27e: 380a 1700 |016b: if-eqz v10, 0182 // +0017 │ │ +42e282: 1a13 dd0a |016d: const-string v19, "Action" // string@0add │ │ +42e286: 1a14 0e14 |016f: const-string v20, "Connect" // string@140e │ │ +42e28a: 1a15 2a17 |0171: const-string v21, "Delete" // string@172a │ │ +42e28e: 1a16 8617 |0173: const-string v22, "Disconnect" // string@1786 │ │ +42e292: 1a17 6745 |0175: const-string v23, "Purge Queue" // string@4567 │ │ +42e296: 1a18 ed46 |0177: const-string v24, "Reset SSL/TLS Credentials" // string@46ed │ │ +42e29a: 2506 a81b 1300 |0179: filled-new-array/range {v19, v20, v21, v22, v23, v24}, [Ljava/lang/String; // type@1ba8 │ │ +42e2a0: 0c0a |017c: move-result-object v10 │ │ +42e2a2: 0813 0100 |017d: move-object/from16 v19, v1 │ │ +42e2a6: 081a 0f00 |017f: move-object/from16 v26, v15 │ │ +42e2aa: 2811 |0181: goto 0192 // +0011 │ │ +42e2ac: 1a0a dd0a |0182: const-string v10, "Action" // string@0add │ │ +42e2b0: 1a0e 0e14 |0184: const-string v14, "Connect" // string@140e │ │ +42e2b4: 081a 0f00 |0186: move-object/from16 v26, v15 │ │ +42e2b8: 1a0f 2a17 |0188: const-string v15, "Delete" // string@172a │ │ +42e2bc: 0813 0100 |018a: move-object/from16 v19, v1 │ │ +42e2c0: 1a01 6745 |018c: const-string v1, "Purge Queue" // string@4567 │ │ +42e2c4: 2451 a81b ea5f |018e: filled-new-array {v10, v14, v15, v5, v1}, [Ljava/lang/String; // type@1ba8 │ │ +42e2ca: 0c0a |0191: move-result-object v10 │ │ +42e2cc: 2201 5b0a |0192: new-instance v1, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +42e2d0: 140e 0800 0901 |0194: const v14, #float 2.51629e-38 // #01090008 │ │ +42e2d6: 7040 cb58 01ae |0197: invoke-direct {v1, v0, v14, v10}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ +42e2dc: 6e20 c05a 1d00 |019a: invoke-virtual {v13, v1}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +42e2e2: 52c1 6555 |019d: iget v1, v12, Lorg/purple/smoke/NeighborElement;.m_oid:I // field@5565 │ │ +42e2e6: 6e20 c75a 1d00 |019f: invoke-virtual {v13, v1}, Landroid/widget/Spinner;.setId:(I)V // method@5ac7 │ │ +42e2ec: 2201 f91a |01a2: new-instance v1, Lorg/purple/smoke/Settings$4; // type@1af9 │ │ +42e2f0: 7030 9dbc 0109 |01a4: invoke-direct {v1, v0, v9}, Lorg/purple/smoke/Settings$4;.:(Lorg/purple/smoke/Settings;Ljava/lang/String;)V // method@bc9d │ │ +42e2f6: 6e20 c95a 1d00 |01a7: invoke-virtual {v13, v1}, Landroid/widget/Spinner;.setOnItemSelectedListener:(Landroid/widget/AdapterView$OnItemSelectedListener;)V // method@5ac9 │ │ +42e2fc: 220f 970a |01aa: new-instance v15, Landroid/widget/TextView; // type@0a97 │ │ +42e300: 7020 ff5a 0f00 |01ac: invoke-direct {v15, v0}, Landroid/widget/TextView;.:(Landroid/content/Context;)V // method@5aff │ │ +42e306: 0801 1a00 |01af: move-object/from16 v1, v26 │ │ +42e30a: 2807 |01b1: goto 01b8 // +0007 │ │ +42e30c: 0813 0100 |01b2: move-object/from16 v19, v1 │ │ +42e310: 0812 0a00 |01b4: move-object/from16 v18, v10 │ │ +42e314: 1201 |01b6: const/4 v1, #int 0 // #0 │ │ +42e316: 120d |01b7: const/4 v13, #int 0 // #0 │ │ +42e318: 54c9 7055 |01b8: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_status:Ljava/lang/String; // field@5570 │ │ +42e31c: 6e10 bf5c 0900 |01ba: invoke-virtual {v9}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +42e322: 1a0a 5c60 |01bd: const-string v10, "connecting" // string@605c │ │ +42e326: 6e20 b85c a900 |01bf: invoke-virtual {v9, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42e32c: 0a0a |01c2: move-result v10 │ │ +42e32e: 390a 2500 |01c3: if-nez v10, 01e8 // +0025 │ │ +42e332: 1a0a 5960 |01c5: const-string v10, "connected" // string@6059 │ │ +42e336: 6e20 b85c a900 |01c7: invoke-virtual {v9, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42e33c: 0a09 |01ca: move-result v9 │ │ +42e33e: 3909 0e00 |01cb: if-nez v9, 01d9 // +000e │ │ +42e342: 1309 b700 |01cd: const/16 v9, #int 183 // #b7 │ │ +42e346: 130a 1c00 |01cf: const/16 v10, #int 28 // #1c │ │ +42e34a: 7130 c902 a90a |01d1: invoke-static {v9, v10, v10}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ +42e350: 0a09 |01d4: move-result v9 │ │ +42e352: 6e20 4c5b 9f00 |01d5: invoke-virtual {v15, v9}, Landroid/widget/TextView;.setTextColor:(I)V // method@5b4c │ │ +42e358: 280e |01d8: goto 01e6 // +000e │ │ +42e35a: 1309 1b00 |01d9: const/16 v9, #int 27 // #1b │ │ +42e35e: 130a 5e00 |01db: const/16 v10, #int 94 // #5e │ │ +42e362: 130e 2000 |01dd: const/16 v14, #int 32 // #20 │ │ +42e366: 7130 c902 a90e |01df: invoke-static {v9, v10, v14}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ +42e36c: 0a09 |01e2: move-result v9 │ │ +42e36e: 6e20 4c5b 9f00 |01e3: invoke-virtual {v15, v9}, Landroid/widget/TextView;.setTextColor:(I)V // method@5b4c │ │ +42e374: 120e |01e6: const/4 v14, #int 0 // #0 │ │ +42e376: 280d |01e7: goto 01f4 // +000d │ │ +42e378: 1309 ff00 |01e8: const/16 v9, #int 255 // #ff │ │ +42e37c: 130a 6f00 |01ea: const/16 v10, #int 111 // #6f │ │ +42e380: 120e |01ec: const/4 v14, #int 0 // #0 │ │ +42e382: 7130 c902 a90e |01ed: invoke-static {v9, v10, v14}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ +42e388: 0a09 |01f0: move-result v9 │ │ +42e38a: 6e20 4c5b 9f00 |01f1: invoke-virtual {v15, v9}, Landroid/widget/TextView;.setTextColor:(I)V // method@5b4c │ │ +42e390: 6e10 ff5c 0300 |01f4: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ +42e396: 0a09 |01f7: move-result v9 │ │ +42e398: 6e30 fd5c e309 |01f8: invoke-virtual {v3, v14, v9}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ +42e39e: 1a09 df14 |01fb: const-string v9, "Control: " // string@14df │ │ +42e3a2: 6e20 f95c 9300 |01fd: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e3a8: 54c9 7155 |0200: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_statusControl:Ljava/lang/String; // field@5571 │ │ +42e3ac: 121a |0202: const/4 v10, #int 1 // #1 │ │ +42e3ae: 6e30 cd5c e90a |0203: invoke-virtual {v9, v14, v10}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ +42e3b4: 0c09 |0206: move-result-object v9 │ │ +42e3b6: 6e10 d15c 0900 |0207: invoke-virtual {v9}, Ljava/lang/String;.toUpperCase:()Ljava/lang/String; // method@5cd1 │ │ +42e3bc: 0c09 |020a: move-result-object v9 │ │ +42e3be: 6e20 f95c 9300 |020b: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e3c4: 54c9 7155 |020e: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_statusControl:Ljava/lang/String; // field@5571 │ │ +42e3c8: 6e20 cc5c a900 |0210: invoke-virtual {v9, v10}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ +42e3ce: 0c09 |0213: move-result-object v9 │ │ +42e3d0: 6e20 f95c 9300 |0214: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e3d6: 2804 |0217: goto 021b // +0004 │ │ +42e3d8: 6e20 f95c 5300 |0218: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e3de: 1a05 0100 |021b: const-string v5, " │ │ " // string@0001 │ │ -42e3e6: 6e20 f95c 5300 |021d: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e3ec: 1a09 764c |0220: const-string v9, "Status: " // string@4c76 │ │ -42e3f0: 6e20 f95c 9300 |0222: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e3f6: 54c9 7055 |0225: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_status:Ljava/lang/String; // field@5570 │ │ -42e3fa: 120a |0227: const/4 v10, #int 0 // #0 │ │ -42e3fc: 121e |0228: const/4 v14, #int 1 // #1 │ │ -42e3fe: 6e30 cd5c a90e |0229: invoke-virtual {v9, v10, v14}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ -42e404: 0c09 |022c: move-result-object v9 │ │ -42e406: 6e10 d15c 0900 |022d: invoke-virtual {v9}, Ljava/lang/String;.toUpperCase:()Ljava/lang/String; // method@5cd1 │ │ -42e40c: 0c09 |0230: move-result-object v9 │ │ -42e40e: 6e20 f95c 9300 |0231: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e414: 54c9 7055 |0234: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_status:Ljava/lang/String; // field@5570 │ │ -42e418: 6e20 cc5c e900 |0236: invoke-virtual {v9, v14}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ -42e41e: 0c09 |0239: move-result-object v9 │ │ -42e420: 6e20 f95c 9300 |023a: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e426: 2806 |023d: goto 0243 // +0006 │ │ -42e428: 1a09 8717 |023e: const-string v9, "Disconnected" // string@1787 │ │ -42e42c: 6e20 f95c 9300 |0240: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e432: 6e20 f95c 5300 |0243: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e438: 54c9 6055 |0246: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_error:Ljava/lang/String; // field@5560 │ │ -42e43c: 6e10 c35c 0900 |0248: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42e442: 0a09 |024b: move-result v9 │ │ -42e444: 3909 0f00 |024c: if-nez v9, 025b // +000f │ │ -42e448: 1a09 6d19 |024e: const-string v9, "Error: " // string@196d │ │ -42e44c: 6e20 f95c 9300 |0250: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e452: 54c9 6055 |0253: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_error:Ljava/lang/String; // field@5560 │ │ -42e456: 6e20 f95c 9300 |0255: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e45c: 6e20 f95c 5300 |0258: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e462: 54c9 6c55 |025b: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteIpAddress:Ljava/lang/String; // field@556c │ │ -42e466: 6e20 f95c 9300 |025d: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e46c: 54c9 6155 |0260: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_ipVersion:Ljava/lang/String; // field@5561 │ │ -42e470: 6e20 b85c 7900 |0262: invoke-virtual {v9, v7}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42e476: 0a09 |0265: move-result v9 │ │ -42e478: 3809 1200 |0266: if-eqz v9, 0278 // +0012 │ │ -42e47c: 54c9 6e55 |0268: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ -42e480: 6e10 c35c 0900 |026a: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42e486: 0a09 |026d: move-result v9 │ │ -42e488: 3909 0a00 |026e: if-nez v9, 0278 // +000a │ │ -42e48c: 6e20 f95c 6300 |0270: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e492: 54c9 6e55 |0273: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ -42e496: 6e20 f95c 9300 |0275: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e49c: 6e20 f95c 8300 |0278: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e4a2: 54c9 6d55 |027b: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remotePort:Ljava/lang/String; // field@556d │ │ -42e4a6: 6e20 f95c 9300 |027d: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e4ac: 6e20 f95c 8300 |0280: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e4b2: 54c9 7255 |0283: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_transport:Ljava/lang/String; // field@5572 │ │ -42e4b6: 6e20 f95c 9300 |0285: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e4bc: 54c9 6255 |0288: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_localIpAddress:Ljava/lang/String; // field@5562 │ │ -42e4c0: 6e10 c35c 0900 |028a: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42e4c6: 0a09 |028d: move-result v9 │ │ -42e4c8: 3909 1a00 |028e: if-nez v9, 02a8 // +001a │ │ -42e4cc: 54c9 6355 |0290: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_localPort:Ljava/lang/String; // field@5563 │ │ -42e4d0: 6e10 c35c 0900 |0292: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42e4d6: 0a09 |0295: move-result v9 │ │ -42e4d8: 3909 1200 |0296: if-nez v9, 02a8 // +0012 │ │ -42e4dc: 6e20 f95c 5300 |0298: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e4e2: 54c9 6255 |029b: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_localIpAddress:Ljava/lang/String; // field@5562 │ │ -42e4e6: 6e20 f95c 9300 |029d: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e4ec: 6e20 f95c 8300 |02a0: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e4f2: 54c9 6355 |02a3: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_localPort:Ljava/lang/String; // field@5563 │ │ -42e4f6: 6e20 f95c 9300 |02a5: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e4fc: 1a09 1200 |02a8: const-string v9, " │ │ +42e3e2: 6e20 f95c 5300 |021d: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e3e8: 1a09 764c |0220: const-string v9, "Status: " // string@4c76 │ │ +42e3ec: 6e20 f95c 9300 |0222: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e3f2: 54c9 7055 |0225: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_status:Ljava/lang/String; // field@5570 │ │ +42e3f6: 120a |0227: const/4 v10, #int 0 // #0 │ │ +42e3f8: 121e |0228: const/4 v14, #int 1 // #1 │ │ +42e3fa: 6e30 cd5c a90e |0229: invoke-virtual {v9, v10, v14}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ +42e400: 0c09 |022c: move-result-object v9 │ │ +42e402: 6e10 d15c 0900 |022d: invoke-virtual {v9}, Ljava/lang/String;.toUpperCase:()Ljava/lang/String; // method@5cd1 │ │ +42e408: 0c09 |0230: move-result-object v9 │ │ +42e40a: 6e20 f95c 9300 |0231: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e410: 54c9 7055 |0234: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_status:Ljava/lang/String; // field@5570 │ │ +42e414: 6e20 cc5c e900 |0236: invoke-virtual {v9, v14}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ +42e41a: 0c09 |0239: move-result-object v9 │ │ +42e41c: 6e20 f95c 9300 |023a: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e422: 2806 |023d: goto 0243 // +0006 │ │ +42e424: 1a09 8717 |023e: const-string v9, "Disconnected" // string@1787 │ │ +42e428: 6e20 f95c 9300 |0240: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e42e: 6e20 f95c 5300 |0243: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e434: 54c9 6055 |0246: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_error:Ljava/lang/String; // field@5560 │ │ +42e438: 6e10 c35c 0900 |0248: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42e43e: 0a09 |024b: move-result v9 │ │ +42e440: 3909 0f00 |024c: if-nez v9, 025b // +000f │ │ +42e444: 1a09 6d19 |024e: const-string v9, "Error: " // string@196d │ │ +42e448: 6e20 f95c 9300 |0250: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e44e: 54c9 6055 |0253: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_error:Ljava/lang/String; // field@5560 │ │ +42e452: 6e20 f95c 9300 |0255: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e458: 6e20 f95c 5300 |0258: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e45e: 54c9 6c55 |025b: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteIpAddress:Ljava/lang/String; // field@556c │ │ +42e462: 6e20 f95c 9300 |025d: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e468: 54c9 6155 |0260: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_ipVersion:Ljava/lang/String; // field@5561 │ │ +42e46c: 6e20 b85c 7900 |0262: invoke-virtual {v9, v7}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42e472: 0a09 |0265: move-result v9 │ │ +42e474: 3809 1200 |0266: if-eqz v9, 0278 // +0012 │ │ +42e478: 54c9 6e55 |0268: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ +42e47c: 6e10 c35c 0900 |026a: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42e482: 0a09 |026d: move-result v9 │ │ +42e484: 3909 0a00 |026e: if-nez v9, 0278 // +000a │ │ +42e488: 6e20 f95c 6300 |0270: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e48e: 54c9 6e55 |0273: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ +42e492: 6e20 f95c 9300 |0275: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e498: 6e20 f95c 8300 |0278: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e49e: 54c9 6d55 |027b: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remotePort:Ljava/lang/String; // field@556d │ │ +42e4a2: 6e20 f95c 9300 |027d: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e4a8: 6e20 f95c 8300 |0280: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e4ae: 54c9 7255 |0283: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_transport:Ljava/lang/String; // field@5572 │ │ +42e4b2: 6e20 f95c 9300 |0285: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e4b8: 54c9 6255 |0288: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_localIpAddress:Ljava/lang/String; // field@5562 │ │ +42e4bc: 6e10 c35c 0900 |028a: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42e4c2: 0a09 |028d: move-result v9 │ │ +42e4c4: 3909 1a00 |028e: if-nez v9, 02a8 // +001a │ │ +42e4c8: 54c9 6355 |0290: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_localPort:Ljava/lang/String; // field@5563 │ │ +42e4cc: 6e10 c35c 0900 |0292: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42e4d2: 0a09 |0295: move-result v9 │ │ +42e4d4: 3909 1200 |0296: if-nez v9, 02a8 // +0012 │ │ +42e4d8: 6e20 f95c 5300 |0298: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e4de: 54c9 6255 |029b: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_localIpAddress:Ljava/lang/String; // field@5562 │ │ +42e4e2: 6e20 f95c 9300 |029d: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e4e8: 6e20 f95c 8300 |02a0: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e4ee: 54c9 6355 |02a3: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_localPort:Ljava/lang/String; // field@5563 │ │ +42e4f2: 6e20 f95c 9300 |02a5: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e4f8: 1a09 1200 |02a8: const-string v9, " │ │ Passthrough: " // string@0012 │ │ -42e500: 6e20 f95c 9300 |02aa: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e506: 54c9 6755 |02ad: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_passthrough:Ljava/lang/String; // field@5567 │ │ -42e50a: 6e20 f95c 9300 |02af: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e510: 1a09 1300 |02b2: const-string v9, " │ │ +42e4fc: 6e20 f95c 9300 |02aa: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e502: 54c9 6755 |02ad: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_passthrough:Ljava/lang/String; // field@5567 │ │ +42e506: 6e20 f95c 9300 |02af: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e50c: 1a09 1300 |02b2: const-string v9, " │ │ Proxy: " // string@0013 │ │ -42e514: 6e20 f95c 9300 |02b4: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e51a: 54c9 6855 |02b7: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyIpAddress:Ljava/lang/String; // field@5568 │ │ -42e51e: 6e10 c35c 0900 |02b9: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42e524: 0a09 |02bc: move-result v9 │ │ -42e526: 3909 1f00 |02bd: if-nez v9, 02dc // +001f │ │ -42e52a: 54c9 6955 |02bf: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyPort:Ljava/lang/String; // field@5569 │ │ -42e52e: 6e10 c35c 0900 |02c1: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42e534: 0a09 |02c4: move-result v9 │ │ -42e536: 3909 1700 |02c5: if-nez v9, 02dc // +0017 │ │ -42e53a: 54c9 6855 |02c7: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyIpAddress:Ljava/lang/String; // field@5568 │ │ -42e53e: 6e20 f95c 9300 |02c9: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e544: 6e20 f95c 8300 |02cc: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e54a: 54c9 6955 |02cf: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyPort:Ljava/lang/String; // field@5569 │ │ -42e54e: 6e20 f95c 9300 |02d1: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e554: 6e20 f95c 8300 |02d4: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e55a: 54c9 6a55 |02d7: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyType:Ljava/lang/String; // field@556a │ │ -42e55e: 6e20 f95c 9300 |02d9: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e564: 6e10 da5a 0400 |02dc: invoke-virtual {v4}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42e56a: 0a09 |02df: move-result v9 │ │ -42e56c: 3809 3900 |02e0: if-eqz v9, 0319 // +0039 │ │ -42e570: 54c9 6b55 |02e2: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteCertificate:[B // field@556b │ │ -42e574: 3809 2000 |02e4: if-eqz v9, 0304 // +0020 │ │ -42e578: 54c9 6b55 |02e6: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteCertificate:[B // field@556b │ │ -42e57c: 2199 |02e8: array-length v9, v9 │ │ -42e57e: 3d09 1b00 |02e9: if-lez v9, 0304 // +001b │ │ -42e582: 6e20 f95c 5300 |02eb: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e588: 1a09 ce46 |02ee: const-string v9, "Remote Certificate's Fingerprint: " // string@46ce │ │ -42e58c: 6e20 f95c 9300 |02f0: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e592: 54c9 6b55 |02f3: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteCertificate:[B // field@556b │ │ -42e596: 7110 efbb 0900 |02f5: invoke-static {v9}, Lorg/purple/smoke/Miscellaneous;.pemFormat:([B)Ljava/lang/String; // method@bbef │ │ -42e59c: 0c09 |02f8: move-result-object v9 │ │ -42e59e: 6e10 bc5c 0900 |02f9: invoke-virtual {v9}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -42e5a4: 0c09 |02fc: move-result-object v9 │ │ -42e5a6: 7110 86b9 0900 |02fd: invoke-static {v9}, Lorg/purple/smoke/Cryptography;.fingerPrint:([B)Ljava/lang/String; // method@b986 │ │ -42e5ac: 0c09 |0300: move-result-object v9 │ │ -42e5ae: 6e20 f95c 9300 |0301: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e5b4: 54c9 6f55 |0304: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_sessionCipher:Ljava/lang/String; // field@556f │ │ -42e5b8: 6e10 c35c 0900 |0306: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42e5be: 0a09 |0309: move-result v9 │ │ -42e5c0: 3909 0f00 |030a: if-nez v9, 0319 // +000f │ │ -42e5c4: 6e20 f95c 5300 |030c: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e5ca: 1a09 434b |030f: const-string v9, "Session Cipher: " // string@4b43 │ │ -42e5ce: 6e20 f95c 9300 |0311: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e5d4: 54c9 6f55 |0314: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_sessionCipher:Ljava/lang/String; // field@556f │ │ -42e5d8: 6e20 f95c 9300 |0316: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e5de: 6e20 f95c 5300 |0319: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e5e4: 1a09 754e |031c: const-string v9, "Temp. Queued: " // string@4e75 │ │ -42e5e8: 6e20 f95c 9300 |031e: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e5ee: 54c9 5f55 |0321: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_echoQueueSize:Ljava/lang/String; // field@555f │ │ -42e5f2: 6e20 f95c 9300 |0323: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e5f8: 1a09 a700 |0326: const-string v9, " / " // string@00a7 │ │ -42e5fc: 6e20 f95c 9300 |0328: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e602: 1309 0001 |032b: const/16 v9, #int 256 // #100 │ │ -42e606: 6e20 f45c 9300 |032d: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ -42e60c: 6e20 f95c 5300 |0330: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e612: 1a09 fe1d |0333: const-string v9, "In: " // string@1dfe │ │ -42e616: 6e20 f95c 9300 |0335: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e61c: 54c9 5d55 |0338: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_bytesRead:Ljava/lang/String; // field@555d │ │ -42e620: 7110 e8bb 0900 |033a: invoke-static {v9}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbe8 │ │ -42e626: 0c09 |033d: move-result-object v9 │ │ -42e628: 6e20 f95c 9300 |033e: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e62e: 6e20 f95c 5300 |0341: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e634: 1a09 ba42 |0344: const-string v9, "Out: " // string@42ba │ │ -42e638: 6e20 f95c 9300 |0346: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e63e: 54c9 5e55 |0349: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_bytesWritten:Ljava/lang/String; // field@555e │ │ -42e642: 7110 e8bb 0900 |034b: invoke-static {v9}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbe8 │ │ -42e648: 0c09 |034e: move-result-object v9 │ │ -42e64a: 6e20 f95c 9300 |034f: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e650: 6e20 f95c 5300 |0352: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e656: 1a09 bb42 |0355: const-string v9, "Outbound Queued: " // string@42bb │ │ -42e65a: 6e20 f95c 9300 |0357: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e660: 53c9 6655 |035a: iget-wide v9, v12, Lorg/purple/smoke/NeighborElement;.m_outboundQueued:J // field@5566 │ │ -42e664: 6e30 f55c 930a |035c: invoke-virtual {v3, v9, v10}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@5cf5 │ │ -42e66a: 6e20 f95c 5300 |035f: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e670: 1a05 9350 |0362: const-string v5, "Uptime: " // string@5093 │ │ -42e674: 6e20 f95c 5300 |0364: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e67a: 54c5 7355 |0367: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_uptime:Ljava/lang/String; // field@5573 │ │ -42e67e: 7110 675c 0500 |0369: invoke-static {v5}, Ljava/lang/Long;.parseLong:(Ljava/lang/String;)J // method@5c67 │ │ -42e684: 0b09 |036c: move-result-wide v9 │ │ -42e686: 7100 4e60 0000 |036d: invoke-static {}, Ljava/util/Locale;.getDefault:()Ljava/util/Locale; // method@604e │ │ -42e68c: 0c05 |0370: move-result-object v5 │ │ -42e68e: 1a0c 1403 |0371: const-string v12, "%d:%02d" // string@0314 │ │ -42e692: 122e |0373: const/4 v14, #int 2 // #2 │ │ -42e694: 23ee a61b |0374: new-array v14, v14, [Ljava/lang/Object; // type@1ba6 │ │ -42e698: 6200 f12c |0376: sget-object v0, Ljava/util/concurrent/TimeUnit;.NANOSECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf1 │ │ -42e69c: 6e30 d260 900a |0378: invoke-virtual {v0, v9, v10}, Ljava/util/concurrent/TimeUnit;.toMinutes:(J)J // method@60d2 │ │ -42e6a2: 0b14 |037b: move-result-wide v20 │ │ -42e6a4: 7702 6f5c 1400 |037c: invoke-static/range {v20, v21}, Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long; // method@5c6f │ │ -42e6aa: 0c00 |037f: move-result-object v0 │ │ -42e6ac: 1311 0000 |0380: const/16 v17, #int 0 // #0 │ │ -42e6b0: 4d00 0e11 |0382: aput-object v0, v14, v17 │ │ -42e6b4: 6200 f12c |0384: sget-object v0, Ljava/util/concurrent/TimeUnit;.NANOSECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf1 │ │ -42e6b8: 6e30 d460 900a |0386: invoke-virtual {v0, v9, v10}, Ljava/util/concurrent/TimeUnit;.toSeconds:(J)J // method@60d4 │ │ -42e6be: 0b14 |0389: move-result-wide v20 │ │ -42e6c0: 6200 f02c |038a: sget-object v0, Ljava/util/concurrent/TimeUnit;.MINUTES:Ljava/util/concurrent/TimeUnit; // field@2cf0 │ │ -42e6c4: 081a 0400 |038c: move-object/from16 v26, v4 │ │ -42e6c8: 6204 f12c |038e: sget-object v4, Ljava/util/concurrent/TimeUnit;.NANOSECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf1 │ │ -42e6cc: 6e30 d260 940a |0390: invoke-virtual {v4, v9, v10}, Ljava/util/concurrent/TimeUnit;.toMinutes:(J)J // method@60d2 │ │ -42e6d2: 0b09 |0393: move-result-wide v9 │ │ -42e6d4: 6e30 d460 900a |0394: invoke-virtual {v0, v9, v10}, Ljava/util/concurrent/TimeUnit;.toSeconds:(J)J // method@60d4 │ │ -42e6da: 0b09 |0397: move-result-wide v9 │ │ -42e6dc: 9c14 1409 |0398: sub-long v20, v20, v9 │ │ -42e6e0: 7702 6f5c 1400 |039a: invoke-static/range {v20, v21}, Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long; // method@5c6f │ │ -42e6e6: 0c00 |039d: move-result-object v0 │ │ -42e6e8: 1214 |039e: const/4 v4, #int 1 // #1 │ │ -42e6ea: 4d00 0e04 |039f: aput-object v0, v14, v4 │ │ -42e6ee: 7130 bb5c c50e |03a1: invoke-static {v5, v12, v14}, Ljava/lang/String;.format:(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; // method@5cbb │ │ -42e6f4: 0c00 |03a4: move-result-object v0 │ │ -42e6f6: 6e20 f95c 0300 |03a5: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e6fc: 2809 |03a8: goto 03b1 // +0009 │ │ -42e6fe: 081a 0400 |03a9: move-object/from16 v26, v4 │ │ -42e702: 1214 |03ab: const/4 v4, #int 1 // #1 │ │ -42e704: 1a00 8305 |03ac: const-string v0, "0:00" // string@0583 │ │ -42e708: 6e20 f95c 0300 |03ae: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e70e: 1a00 c900 |03b1: const-string v0, " Min. │ │ +42e510: 6e20 f95c 9300 |02b4: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e516: 54c9 6855 |02b7: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyIpAddress:Ljava/lang/String; // field@5568 │ │ +42e51a: 6e10 c35c 0900 |02b9: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42e520: 0a09 |02bc: move-result v9 │ │ +42e522: 3909 1f00 |02bd: if-nez v9, 02dc // +001f │ │ +42e526: 54c9 6955 |02bf: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyPort:Ljava/lang/String; // field@5569 │ │ +42e52a: 6e10 c35c 0900 |02c1: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42e530: 0a09 |02c4: move-result v9 │ │ +42e532: 3909 1700 |02c5: if-nez v9, 02dc // +0017 │ │ +42e536: 54c9 6855 |02c7: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyIpAddress:Ljava/lang/String; // field@5568 │ │ +42e53a: 6e20 f95c 9300 |02c9: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e540: 6e20 f95c 8300 |02cc: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e546: 54c9 6955 |02cf: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyPort:Ljava/lang/String; // field@5569 │ │ +42e54a: 6e20 f95c 9300 |02d1: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e550: 6e20 f95c 8300 |02d4: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e556: 54c9 6a55 |02d7: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyType:Ljava/lang/String; // field@556a │ │ +42e55a: 6e20 f95c 9300 |02d9: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e560: 6e10 da5a 0400 |02dc: invoke-virtual {v4}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42e566: 0a09 |02df: move-result v9 │ │ +42e568: 3809 3900 |02e0: if-eqz v9, 0319 // +0039 │ │ +42e56c: 54c9 6b55 |02e2: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteCertificate:[B // field@556b │ │ +42e570: 3809 2000 |02e4: if-eqz v9, 0304 // +0020 │ │ +42e574: 54c9 6b55 |02e6: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteCertificate:[B // field@556b │ │ +42e578: 2199 |02e8: array-length v9, v9 │ │ +42e57a: 3d09 1b00 |02e9: if-lez v9, 0304 // +001b │ │ +42e57e: 6e20 f95c 5300 |02eb: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e584: 1a09 ce46 |02ee: const-string v9, "Remote Certificate's Fingerprint: " // string@46ce │ │ +42e588: 6e20 f95c 9300 |02f0: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e58e: 54c9 6b55 |02f3: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteCertificate:[B // field@556b │ │ +42e592: 7110 efbb 0900 |02f5: invoke-static {v9}, Lorg/purple/smoke/Miscellaneous;.pemFormat:([B)Ljava/lang/String; // method@bbef │ │ +42e598: 0c09 |02f8: move-result-object v9 │ │ +42e59a: 6e10 bc5c 0900 |02f9: invoke-virtual {v9}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +42e5a0: 0c09 |02fc: move-result-object v9 │ │ +42e5a2: 7110 86b9 0900 |02fd: invoke-static {v9}, Lorg/purple/smoke/Cryptography;.fingerPrint:([B)Ljava/lang/String; // method@b986 │ │ +42e5a8: 0c09 |0300: move-result-object v9 │ │ +42e5aa: 6e20 f95c 9300 |0301: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e5b0: 54c9 6f55 |0304: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_sessionCipher:Ljava/lang/String; // field@556f │ │ +42e5b4: 6e10 c35c 0900 |0306: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42e5ba: 0a09 |0309: move-result v9 │ │ +42e5bc: 3909 0f00 |030a: if-nez v9, 0319 // +000f │ │ +42e5c0: 6e20 f95c 5300 |030c: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e5c6: 1a09 434b |030f: const-string v9, "Session Cipher: " // string@4b43 │ │ +42e5ca: 6e20 f95c 9300 |0311: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e5d0: 54c9 6f55 |0314: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_sessionCipher:Ljava/lang/String; // field@556f │ │ +42e5d4: 6e20 f95c 9300 |0316: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e5da: 6e20 f95c 5300 |0319: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e5e0: 1a09 754e |031c: const-string v9, "Temp. Queued: " // string@4e75 │ │ +42e5e4: 6e20 f95c 9300 |031e: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e5ea: 54c9 5f55 |0321: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_echoQueueSize:Ljava/lang/String; // field@555f │ │ +42e5ee: 6e20 f95c 9300 |0323: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e5f4: 1a09 a700 |0326: const-string v9, " / " // string@00a7 │ │ +42e5f8: 6e20 f95c 9300 |0328: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e5fe: 1309 0001 |032b: const/16 v9, #int 256 // #100 │ │ +42e602: 6e20 f45c 9300 |032d: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ +42e608: 6e20 f95c 5300 |0330: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e60e: 1a09 fe1d |0333: const-string v9, "In: " // string@1dfe │ │ +42e612: 6e20 f95c 9300 |0335: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e618: 54c9 5d55 |0338: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_bytesRead:Ljava/lang/String; // field@555d │ │ +42e61c: 7110 e8bb 0900 |033a: invoke-static {v9}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbe8 │ │ +42e622: 0c09 |033d: move-result-object v9 │ │ +42e624: 6e20 f95c 9300 |033e: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e62a: 6e20 f95c 5300 |0341: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e630: 1a09 ba42 |0344: const-string v9, "Out: " // string@42ba │ │ +42e634: 6e20 f95c 9300 |0346: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e63a: 54c9 5e55 |0349: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_bytesWritten:Ljava/lang/String; // field@555e │ │ +42e63e: 7110 e8bb 0900 |034b: invoke-static {v9}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbe8 │ │ +42e644: 0c09 |034e: move-result-object v9 │ │ +42e646: 6e20 f95c 9300 |034f: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e64c: 6e20 f95c 5300 |0352: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e652: 1a09 bb42 |0355: const-string v9, "Outbound Queued: " // string@42bb │ │ +42e656: 6e20 f95c 9300 |0357: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e65c: 53c9 6655 |035a: iget-wide v9, v12, Lorg/purple/smoke/NeighborElement;.m_outboundQueued:J // field@5566 │ │ +42e660: 6e30 f55c 930a |035c: invoke-virtual {v3, v9, v10}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@5cf5 │ │ +42e666: 6e20 f95c 5300 |035f: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e66c: 1a05 9350 |0362: const-string v5, "Uptime: " // string@5093 │ │ +42e670: 6e20 f95c 5300 |0364: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e676: 54c5 7355 |0367: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_uptime:Ljava/lang/String; // field@5573 │ │ +42e67a: 7110 675c 0500 |0369: invoke-static {v5}, Ljava/lang/Long;.parseLong:(Ljava/lang/String;)J // method@5c67 │ │ +42e680: 0b09 |036c: move-result-wide v9 │ │ +42e682: 7100 4e60 0000 |036d: invoke-static {}, Ljava/util/Locale;.getDefault:()Ljava/util/Locale; // method@604e │ │ +42e688: 0c05 |0370: move-result-object v5 │ │ +42e68a: 1a0c 1403 |0371: const-string v12, "%d:%02d" // string@0314 │ │ +42e68e: 122e |0373: const/4 v14, #int 2 // #2 │ │ +42e690: 23ee a61b |0374: new-array v14, v14, [Ljava/lang/Object; // type@1ba6 │ │ +42e694: 6200 f12c |0376: sget-object v0, Ljava/util/concurrent/TimeUnit;.NANOSECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf1 │ │ +42e698: 6e30 d260 900a |0378: invoke-virtual {v0, v9, v10}, Ljava/util/concurrent/TimeUnit;.toMinutes:(J)J // method@60d2 │ │ +42e69e: 0b14 |037b: move-result-wide v20 │ │ +42e6a0: 7702 6f5c 1400 |037c: invoke-static/range {v20, v21}, Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long; // method@5c6f │ │ +42e6a6: 0c00 |037f: move-result-object v0 │ │ +42e6a8: 1311 0000 |0380: const/16 v17, #int 0 // #0 │ │ +42e6ac: 4d00 0e11 |0382: aput-object v0, v14, v17 │ │ +42e6b0: 6200 f12c |0384: sget-object v0, Ljava/util/concurrent/TimeUnit;.NANOSECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf1 │ │ +42e6b4: 6e30 d460 900a |0386: invoke-virtual {v0, v9, v10}, Ljava/util/concurrent/TimeUnit;.toSeconds:(J)J // method@60d4 │ │ +42e6ba: 0b14 |0389: move-result-wide v20 │ │ +42e6bc: 6200 f02c |038a: sget-object v0, Ljava/util/concurrent/TimeUnit;.MINUTES:Ljava/util/concurrent/TimeUnit; // field@2cf0 │ │ +42e6c0: 081a 0400 |038c: move-object/from16 v26, v4 │ │ +42e6c4: 6204 f12c |038e: sget-object v4, Ljava/util/concurrent/TimeUnit;.NANOSECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf1 │ │ +42e6c8: 6e30 d260 940a |0390: invoke-virtual {v4, v9, v10}, Ljava/util/concurrent/TimeUnit;.toMinutes:(J)J // method@60d2 │ │ +42e6ce: 0b09 |0393: move-result-wide v9 │ │ +42e6d0: 6e30 d460 900a |0394: invoke-virtual {v0, v9, v10}, Ljava/util/concurrent/TimeUnit;.toSeconds:(J)J // method@60d4 │ │ +42e6d6: 0b09 |0397: move-result-wide v9 │ │ +42e6d8: 9c14 1409 |0398: sub-long v20, v20, v9 │ │ +42e6dc: 7702 6f5c 1400 |039a: invoke-static/range {v20, v21}, Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long; // method@5c6f │ │ +42e6e2: 0c00 |039d: move-result-object v0 │ │ +42e6e4: 1214 |039e: const/4 v4, #int 1 // #1 │ │ +42e6e6: 4d00 0e04 |039f: aput-object v0, v14, v4 │ │ +42e6ea: 7130 bb5c c50e |03a1: invoke-static {v5, v12, v14}, Ljava/lang/String;.format:(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; // method@5cbb │ │ +42e6f0: 0c00 |03a4: move-result-object v0 │ │ +42e6f2: 6e20 f95c 0300 |03a5: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e6f8: 2809 |03a8: goto 03b1 // +0009 │ │ +42e6fa: 081a 0400 |03a9: move-object/from16 v26, v4 │ │ +42e6fe: 1214 |03ab: const/4 v4, #int 1 // #1 │ │ +42e700: 1a00 8305 |03ac: const-string v0, "0:00" // string@0583 │ │ +42e704: 6e20 f95c 0300 |03ae: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e70a: 1a00 c900 |03b1: const-string v0, " Min. │ │ " // string@00c9 │ │ -42e712: 6e20 f95c 0300 |03b3: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e718: 1300 1000 |03b6: const/16 v0, #int 16 // #10 │ │ -42e71c: 6e20 365b 0f00 |03b8: invoke-virtual {v15, v0}, Landroid/widget/TextView;.setGravity:(I)V // method@5b36 │ │ -42e722: 2200 940a |03bb: new-instance v0, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ -42e726: 1505 803f |03bd: const/high16 v5, #int 1065353216 // #3f80 │ │ -42e72a: 12e9 |03bf: const/4 v9, #int -2 // #fe │ │ -42e72c: 120a |03c0: const/4 v10, #int 0 // #0 │ │ -42e72e: 7040 f95a a059 |03c1: invoke-direct {v0, v10, v9, v5}, Landroid/widget/TableRow$LayoutParams;.:(IIF)V // method@5af9 │ │ -42e734: 6e20 3b5b 0f00 |03c4: invoke-virtual {v15, v0}, Landroid/widget/TextView;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5b3b │ │ -42e73a: 6e20 495b 3f00 |03c7: invoke-virtual {v15, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42e740: 6200 6200 |03ca: sget-object v0, Landroid/graphics/Typeface;.MONOSPACE:Landroid/graphics/Typeface; // field@0062 │ │ -42e744: 6e20 525b 0f00 |03cc: invoke-virtual {v15, v0}, Landroid/widget/TextView;.setTypeface:(Landroid/graphics/Typeface;)V // method@5b52 │ │ -42e74a: 1300 f401 |03cf: const/16 v0, #int 500 // #1f4 │ │ -42e74e: 6e20 545b 0f00 |03d1: invoke-virtual {v15, v0}, Landroid/widget/TextView;.setWidth:(I)V // method@5b54 │ │ -42e754: 3801 0b00 |03d4: if-eqz v1, 03df // +000b │ │ -42e758: 6e20 fb5a d100 |03d6: invoke-virtual {v1, v13}, Landroid/widget/TableRow;.addView:(Landroid/view/View;)V // method@5afb │ │ -42e75e: 6e20 fb5a f100 |03d9: invoke-virtual {v1, v15}, Landroid/widget/TableRow;.addView:(Landroid/view/View;)V // method@5afb │ │ -42e764: 6e30 f35a 120b |03dc: invoke-virtual {v2, v1, v11}, Landroid/widget/TableLayout;.addView:(Landroid/view/View;I)V // method@5af3 │ │ -42e76a: d80b 0b01 |03df: add-int/lit8 v11, v11, #int 1 // #01 │ │ -42e76e: 0800 1900 |03e1: move-object/from16 v0, v25 │ │ -42e772: 0804 1a00 |03e3: move-object/from16 v4, v26 │ │ -42e776: 080a 1200 |03e5: move-object/from16 v10, v18 │ │ -42e77a: 0801 1300 |03e7: move-object/from16 v1, v19 │ │ -42e77e: 1215 |03e9: const/4 v5, #int 1 // #1 │ │ -42e780: 1209 |03ea: const/4 v9, #int 0 // #0 │ │ -42e782: 2900 cdfc |03eb: goto/16 00b8 // -0333 │ │ -42e786: 0813 0100 |03ed: move-object/from16 v19, v1 │ │ -42e78a: 7401 9f5f 1300 |03ef: invoke-virtual/range {v19}, Ljava/util/ArrayList;.clear:()V // method@5f9f │ │ -42e790: 0e00 |03f2: return-void │ │ -42e792: 6e10 f65a 0200 |03f3: invoke-virtual {v2}, Landroid/widget/TableLayout;.removeAllViews:()V // method@5af6 │ │ -42e798: 0e00 |03f6: return-void │ │ +42e70e: 6e20 f95c 0300 |03b3: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e714: 1300 1000 |03b6: const/16 v0, #int 16 // #10 │ │ +42e718: 6e20 365b 0f00 |03b8: invoke-virtual {v15, v0}, Landroid/widget/TextView;.setGravity:(I)V // method@5b36 │ │ +42e71e: 2200 940a |03bb: new-instance v0, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ +42e722: 1505 803f |03bd: const/high16 v5, #int 1065353216 // #3f80 │ │ +42e726: 12e9 |03bf: const/4 v9, #int -2 // #fe │ │ +42e728: 120a |03c0: const/4 v10, #int 0 // #0 │ │ +42e72a: 7040 f95a a059 |03c1: invoke-direct {v0, v10, v9, v5}, Landroid/widget/TableRow$LayoutParams;.:(IIF)V // method@5af9 │ │ +42e730: 6e20 3b5b 0f00 |03c4: invoke-virtual {v15, v0}, Landroid/widget/TextView;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5b3b │ │ +42e736: 6e20 495b 3f00 |03c7: invoke-virtual {v15, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42e73c: 6200 6200 |03ca: sget-object v0, Landroid/graphics/Typeface;.MONOSPACE:Landroid/graphics/Typeface; // field@0062 │ │ +42e740: 6e20 525b 0f00 |03cc: invoke-virtual {v15, v0}, Landroid/widget/TextView;.setTypeface:(Landroid/graphics/Typeface;)V // method@5b52 │ │ +42e746: 1300 f401 |03cf: const/16 v0, #int 500 // #1f4 │ │ +42e74a: 6e20 545b 0f00 |03d1: invoke-virtual {v15, v0}, Landroid/widget/TextView;.setWidth:(I)V // method@5b54 │ │ +42e750: 3801 0b00 |03d4: if-eqz v1, 03df // +000b │ │ +42e754: 6e20 fb5a d100 |03d6: invoke-virtual {v1, v13}, Landroid/widget/TableRow;.addView:(Landroid/view/View;)V // method@5afb │ │ +42e75a: 6e20 fb5a f100 |03d9: invoke-virtual {v1, v15}, Landroid/widget/TableRow;.addView:(Landroid/view/View;)V // method@5afb │ │ +42e760: 6e30 f35a 120b |03dc: invoke-virtual {v2, v1, v11}, Landroid/widget/TableLayout;.addView:(Landroid/view/View;I)V // method@5af3 │ │ +42e766: d80b 0b01 |03df: add-int/lit8 v11, v11, #int 1 // #01 │ │ +42e76a: 0800 1900 |03e1: move-object/from16 v0, v25 │ │ +42e76e: 0804 1a00 |03e3: move-object/from16 v4, v26 │ │ +42e772: 080a 1200 |03e5: move-object/from16 v10, v18 │ │ +42e776: 0801 1300 |03e7: move-object/from16 v1, v19 │ │ +42e77a: 1215 |03e9: const/4 v5, #int 1 // #1 │ │ +42e77c: 1209 |03ea: const/4 v9, #int 0 // #0 │ │ +42e77e: 2900 cdfc |03eb: goto/16 00b8 // -0333 │ │ +42e782: 0813 0100 |03ed: move-object/from16 v19, v1 │ │ +42e786: 7401 9f5f 1300 |03ef: invoke-virtual/range {v19}, Ljava/util/ArrayList;.clear:()V // method@5f9f │ │ +42e78c: 0e00 |03f2: return-void │ │ +42e78e: 6e10 f65a 0200 |03f3: invoke-virtual {v2}, Landroid/widget/TableLayout;.removeAllViews:()V // method@5af6 │ │ +42e794: 0e00 |03f6: return-void │ │ catches : 5 │ │ 0x0200 - 0x0217 │ │ Ljava/lang/Exception; -> 0x0218 │ │ 0x0225 - 0x023d │ │ Ljava/lang/Exception; -> 0x023e │ │ 0x0367 - 0x038c │ │ Ljava/lang/Exception; -> 0x03a9 │ │ @@ -1570976,26 +1570975,26 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 23 16-bit code units │ │ -42e7e0: |[42e7e0] org.purple.smoke.Settings.populateOzone:()V │ │ -42e7f0: 1400 b700 087f |0000: const v0, #float 1.80779e+38 // #7f0800b7 │ │ -42e7f6: 6e20 e5bc 0400 |0003: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42e7fc: 0c00 |0006: move-result-object v0 │ │ -42e7fe: 1f00 970a |0007: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42e802: 5441 065f |0009: iget-object v1, v4, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42e806: 6202 0a5f |000b: sget-object v2, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42e80a: 1a03 5892 |000d: const-string v3, "ozone_address" // string@9258 │ │ -42e80e: 6e30 17ba 2103 |000f: invoke-virtual {v1, v2, v3}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42e814: 0c01 |0012: move-result-object v1 │ │ -42e816: 6e20 495b 1000 |0013: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42e81c: 0e00 |0016: return-void │ │ +42e7dc: |[42e7dc] org.purple.smoke.Settings.populateOzone:()V │ │ +42e7ec: 1400 b700 087f |0000: const v0, #float 1.80779e+38 // #7f0800b7 │ │ +42e7f2: 6e20 e5bc 0400 |0003: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42e7f8: 0c00 |0006: move-result-object v0 │ │ +42e7fa: 1f00 970a |0007: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42e7fe: 5441 065f |0009: iget-object v1, v4, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42e802: 6202 0a5f |000b: sget-object v2, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42e806: 1a03 5892 |000d: const-string v3, "ozone_address" // string@9258 │ │ +42e80a: 6e30 17ba 2103 |000f: invoke-virtual {v1, v2, v3}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42e810: 0c01 |0012: move-result-object v1 │ │ +42e812: 6e20 495b 1000 |0013: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42e818: 0e00 |0016: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=1193 │ │ 0x0009 line=1195 │ │ 0x000f line=1196 │ │ locals : │ │ 0x0000 - 0x0017 reg=4 this Lorg/purple/smoke/Settings; │ │ @@ -1571005,126 +1571004,126 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 17 │ │ ins : 1 │ │ outs : 5 │ │ insns size : 239 16-bit code units │ │ -42e820: |[42e820] org.purple.smoke.Settings.populateParticipants:()V │ │ -42e830: 0800 1000 |0000: move-object/from16 v0, v16 │ │ -42e834: 5401 065f |0002: iget-object v1, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42e838: 6202 0a5f |0004: sget-object v2, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42e83c: 1a03 0000 |0006: const-string v3, "" // string@0000 │ │ -42e840: 6e30 1bba 2103 |0008: invoke-virtual {v1, v2, v3}, Lorg/purple/smoke/Database;.readSipHashIds:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/util/ArrayList; // method@ba1b │ │ -42e846: 0c01 |000b: move-result-object v1 │ │ -42e848: 1402 bf00 087f |000c: const v2, #float 1.80779e+38 // #7f0800bf │ │ -42e84e: 6e20 e5bc 2000 |000f: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42e854: 0c03 |0012: move-result-object v3 │ │ -42e856: 1f03 930a |0013: check-cast v3, Landroid/widget/TableLayout; // type@0a93 │ │ -42e85a: 6e10 f65a 0300 |0015: invoke-virtual {v3}, Landroid/widget/TableLayout;.removeAllViews:()V // method@5af6 │ │ -42e860: 3801 d600 |0018: if-eqz v1, 00ee // +00d6 │ │ -42e864: 6e10 a65f 0100 |001a: invoke-virtual {v1}, Ljava/util/ArrayList;.isEmpty:()Z // method@5fa6 │ │ -42e86a: 0a04 |001d: move-result v4 │ │ -42e86c: 3804 0400 |001e: if-eqz v4, 0022 // +0004 │ │ -42e870: 2900 ce00 |0020: goto/16 00ee // +00ce │ │ -42e874: 6e10 a75f 0100 |0022: invoke-virtual {v1}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa7 │ │ -42e87a: 0c04 |0025: move-result-object v4 │ │ -42e87c: 1205 |0026: const/4 v5, #int 0 // #0 │ │ -42e87e: 1206 |0027: const/4 v6, #int 0 // #0 │ │ -42e880: 7210 1b60 0400 |0028: invoke-interface {v4}, Ljava/util/Iterator;.hasNext:()Z // method@601b │ │ -42e886: 0a07 |002b: move-result v7 │ │ -42e888: 3807 bf00 |002c: if-eqz v7, 00eb // +00bf │ │ -42e88c: 7210 1c60 0400 |002e: invoke-interface {v4}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601c │ │ -42e892: 0c07 |0031: move-result-object v7 │ │ -42e894: 1f07 0c1b |0032: check-cast v7, Lorg/purple/smoke/SipHashIdElement; // type@1b0c │ │ -42e898: 3907 0300 |0034: if-nez v7, 0037 // +0003 │ │ -42e89c: 28f2 |0036: goto 0028 // -000e │ │ -42e89e: 5478 235f |0037: iget-object v8, v7, Lorg/purple/smoke/SipHashIdElement;.m_sipHashId:Ljava/lang/String; // field@5f23 │ │ -42e8a2: 7110 f0bb 0800 |0039: invoke-static {v8}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf0 │ │ -42e8a8: 0c08 |003c: move-result-object v8 │ │ -42e8aa: 2209 940a |003d: new-instance v9, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ -42e8ae: 12ea |003f: const/4 v10, #int -2 // #fe │ │ -42e8b0: 7020 f85a a900 |0040: invoke-direct {v9, v10}, Landroid/widget/TableRow$LayoutParams;.:(I)V // method@5af8 │ │ -42e8b6: 220b 950a |0043: new-instance v11, Landroid/widget/TableRow; // type@0a95 │ │ -42e8ba: 7020 fa5a 0b00 |0045: invoke-direct {v11, v0}, Landroid/widget/TableRow;.:(Landroid/content/Context;)V // method@5afa │ │ -42e8c0: 6e20 fe5a 9b00 |0048: invoke-virtual {v11, v9}, Landroid/widget/TableRow;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5afe │ │ -42e8c6: 1209 |004b: const/4 v9, #int 0 // #0 │ │ -42e8c8: 123c |004c: const/4 v12, #int 3 // #3 │ │ -42e8ca: 35c9 9700 |004d: if-ge v9, v12, 00e4 // +0097 │ │ -42e8ce: 220c 970a |004f: new-instance v12, Landroid/widget/TextView; // type@0a97 │ │ -42e8d2: 7020 ff5a 0c00 |0051: invoke-direct {v12, v0}, Landroid/widget/TextView;.:(Landroid/content/Context;)V // method@5aff │ │ -42e8d8: 527d 215f |0054: iget v13, v7, Lorg/purple/smoke/SipHashIdElement;.m_oid:I // field@5f21 │ │ -42e8dc: 6e20 395b dc00 |0056: invoke-virtual {v12, v13}, Landroid/widget/TextView;.setId:(I)V // method@5b39 │ │ -42e8e2: 12fd |0059: const/4 v13, #int -1 // #ff │ │ -42e8e4: 130e 1000 |005a: const/16 v14, #int 16 // #10 │ │ -42e8e8: 150f 803f |005c: const/high16 v15, #int 1065353216 // #3f80 │ │ -42e8ec: 3809 5b00 |005e: if-eqz v9, 00b9 // +005b │ │ -42e8f0: 121a |0060: const/4 v10, #int 1 // #1 │ │ -42e8f2: 32a9 2100 |0061: if-eq v9, v10, 0082 // +0021 │ │ -42e8f6: 122a |0063: const/4 v10, #int 2 // #2 │ │ -42e8f8: 32a9 0400 |0064: if-eq v9, v10, 0068 // +0004 │ │ -42e8fc: 12ea |0066: const/4 v10, #int -2 // #fe │ │ -42e8fe: 2867 |0067: goto 00ce // +0067 │ │ -42e900: 130a 1100 |0068: const/16 v10, #int 17 // #11 │ │ -42e904: 6e20 365b ac00 |006a: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setGravity:(I)V // method@5b36 │ │ -42e90a: 220a 940a |006d: new-instance v10, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ -42e90e: 7040 f95a 5afd |006f: invoke-direct {v10, v5, v13, v15}, Landroid/widget/TableRow$LayoutParams;.:(IIF)V // method@5af9 │ │ -42e914: 6e20 3b5b ac00 |0072: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5b3b │ │ -42e91a: 6e30 485b 2c08 |0075: invoke-virtual {v12, v2, v8}, Landroid/widget/TextView;.setTag:(ILjava/lang/Object;)V // method@5b48 │ │ -42e920: 527a 1e5f |0078: iget v10, v7, Lorg/purple/smoke/SipHashIdElement;.m_fiascoKeys:I // field@5f1e │ │ -42e924: 7110 d55c 0a00 |007a: invoke-static {v10}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42e92a: 0c0a |007d: move-result-object v10 │ │ -42e92c: 6e20 495b ac00 |007e: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42e932: 28e5 |0081: goto 0066 // -001b │ │ -42e934: 557a 1d5f |0082: iget-boolean v10, v7, Lorg/purple/smoke/SipHashIdElement;.m_epksCompleted:Z // field@5f1d │ │ -42e938: 380a 0d00 |0084: if-eqz v10, 0091 // +000d │ │ -42e93c: 557a 1f5f |0086: iget-boolean v10, v7, Lorg/purple/smoke/SipHashIdElement;.m_keysSigned:Z // field@5f1f │ │ -42e940: 380a 0900 |0088: if-eqz v10, 0091 // +0009 │ │ -42e944: 140a 7000 077f |008a: const v10, #float 1.79448e+38 // #7f070070 │ │ -42e94a: 6e55 2f5b ac55 |008d: invoke-virtual {v12, v10, v5, v5, v5}, Landroid/widget/TextView;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@5b2f │ │ -42e950: 2812 |0090: goto 00a2 // +0012 │ │ -42e952: 557a 1d5f |0091: iget-boolean v10, v7, Lorg/purple/smoke/SipHashIdElement;.m_epksCompleted:Z // field@5f1d │ │ -42e956: 380a 0900 |0093: if-eqz v10, 009c // +0009 │ │ -42e95a: 140a 6f00 077f |0095: const v10, #float 1.79448e+38 // #7f07006f │ │ -42e960: 6e55 2f5b ac55 |0098: invoke-virtual {v12, v10, v5, v5, v5}, Landroid/widget/TextView;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@5b2f │ │ -42e966: 2807 |009b: goto 00a2 // +0007 │ │ -42e968: 140a 8c00 077f |009c: const v10, #float 1.79449e+38 // #7f07008c │ │ -42e96e: 6e55 2f5b ac55 |009f: invoke-virtual {v12, v10, v5, v5, v5}, Landroid/widget/TextView;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@5b2f │ │ -42e974: 125a |00a2: const/4 v10, #int 5 // #5 │ │ -42e976: 6e20 2a5b ac00 |00a3: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setCompoundDrawablePadding:(I)V // method@5b2a │ │ -42e97c: 6e20 365b ec00 |00a6: invoke-virtual {v12, v14}, Landroid/widget/TextView;.setGravity:(I)V // method@5b36 │ │ -42e982: 220a 940a |00a9: new-instance v10, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ -42e986: 12ed |00ab: const/4 v13, #int -2 // #fe │ │ -42e988: 7040 f95a 5afd |00ac: invoke-direct {v10, v5, v13, v15}, Landroid/widget/TableRow$LayoutParams;.:(IIF)V // method@5af9 │ │ -42e98e: 6e20 3b5b ac00 |00af: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5b3b │ │ -42e994: 6e30 485b 2c08 |00b2: invoke-virtual {v12, v2, v8}, Landroid/widget/TextView;.setTag:(ILjava/lang/Object;)V // method@5b48 │ │ -42e99a: 6e20 495b 8c00 |00b5: invoke-virtual {v12, v8}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42e9a0: 28ae |00b8: goto 0066 // -0052 │ │ -42e9a2: 6e20 365b ec00 |00b9: invoke-virtual {v12, v14}, Landroid/widget/TextView;.setGravity:(I)V // method@5b36 │ │ -42e9a8: 220e 940a |00bc: new-instance v14, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ -42e9ac: 7040 f95a 5efd |00be: invoke-direct {v14, v5, v13, v15}, Landroid/widget/TableRow$LayoutParams;.:(IIF)V // method@5af9 │ │ -42e9b2: 6e20 3b5b ec00 |00c1: invoke-virtual {v12, v14}, Landroid/widget/TextView;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5b3b │ │ -42e9b8: 547d 205f |00c4: iget-object v13, v7, Lorg/purple/smoke/SipHashIdElement;.m_name:Ljava/lang/String; // field@5f20 │ │ -42e9bc: 6e30 485b 2c0d |00c6: invoke-virtual {v12, v2, v13}, Landroid/widget/TextView;.setTag:(ILjava/lang/Object;)V // method@5b48 │ │ -42e9c2: 547d 205f |00c9: iget-object v13, v7, Lorg/purple/smoke/SipHashIdElement;.m_name:Ljava/lang/String; // field@5f20 │ │ -42e9c6: 6e20 495b dc00 |00cb: invoke-virtual {v12, v13}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42e9cc: 140d db00 087f |00ce: const v13, #float 1.80779e+38 // #7f0800db │ │ -42e9d2: 557e 1d5f |00d1: iget-boolean v14, v7, Lorg/purple/smoke/SipHashIdElement;.m_epksCompleted:Z // field@5f1d │ │ -42e9d6: 7110 ff5b 0e00 |00d3: invoke-static {v14}, Ljava/lang/Boolean;.valueOf:(Z)Ljava/lang/Boolean; // method@5bff │ │ -42e9dc: 0c0e |00d6: move-result-object v14 │ │ -42e9de: 6e30 485b dc0e |00d7: invoke-virtual {v12, v13, v14}, Landroid/widget/TextView;.setTag:(ILjava/lang/Object;)V // method@5b48 │ │ -42e9e4: 6e20 03bd c000 |00da: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.registerForContextMenu:(Landroid/view/View;)V // method@bd03 │ │ -42e9ea: 6e20 fb5a cb00 |00dd: invoke-virtual {v11, v12}, Landroid/widget/TableRow;.addView:(Landroid/view/View;)V // method@5afb │ │ -42e9f0: d809 0901 |00e0: add-int/lit8 v9, v9, #int 1 // #01 │ │ -42e9f4: 2900 6aff |00e2: goto/16 004c // -0096 │ │ -42e9f8: 6e30 f35a b306 |00e4: invoke-virtual {v3, v11, v6}, Landroid/widget/TableLayout;.addView:(Landroid/view/View;I)V // method@5af3 │ │ -42e9fe: d806 0601 |00e7: add-int/lit8 v6, v6, #int 1 // #01 │ │ -42ea02: 2900 3fff |00e9: goto/16 0028 // -00c1 │ │ -42ea06: 6e10 9f5f 0100 |00eb: invoke-virtual {v1}, Ljava/util/ArrayList;.clear:()V // method@5f9f │ │ -42ea0c: 0e00 |00ee: return-void │ │ +42e81c: |[42e81c] org.purple.smoke.Settings.populateParticipants:()V │ │ +42e82c: 0800 1000 |0000: move-object/from16 v0, v16 │ │ +42e830: 5401 065f |0002: iget-object v1, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42e834: 6202 0a5f |0004: sget-object v2, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42e838: 1a03 0000 |0006: const-string v3, "" // string@0000 │ │ +42e83c: 6e30 1bba 2103 |0008: invoke-virtual {v1, v2, v3}, Lorg/purple/smoke/Database;.readSipHashIds:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/util/ArrayList; // method@ba1b │ │ +42e842: 0c01 |000b: move-result-object v1 │ │ +42e844: 1402 bf00 087f |000c: const v2, #float 1.80779e+38 // #7f0800bf │ │ +42e84a: 6e20 e5bc 2000 |000f: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42e850: 0c03 |0012: move-result-object v3 │ │ +42e852: 1f03 930a |0013: check-cast v3, Landroid/widget/TableLayout; // type@0a93 │ │ +42e856: 6e10 f65a 0300 |0015: invoke-virtual {v3}, Landroid/widget/TableLayout;.removeAllViews:()V // method@5af6 │ │ +42e85c: 3801 d600 |0018: if-eqz v1, 00ee // +00d6 │ │ +42e860: 6e10 a65f 0100 |001a: invoke-virtual {v1}, Ljava/util/ArrayList;.isEmpty:()Z // method@5fa6 │ │ +42e866: 0a04 |001d: move-result v4 │ │ +42e868: 3804 0400 |001e: if-eqz v4, 0022 // +0004 │ │ +42e86c: 2900 ce00 |0020: goto/16 00ee // +00ce │ │ +42e870: 6e10 a75f 0100 |0022: invoke-virtual {v1}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa7 │ │ +42e876: 0c04 |0025: move-result-object v4 │ │ +42e878: 1205 |0026: const/4 v5, #int 0 // #0 │ │ +42e87a: 1206 |0027: const/4 v6, #int 0 // #0 │ │ +42e87c: 7210 1b60 0400 |0028: invoke-interface {v4}, Ljava/util/Iterator;.hasNext:()Z // method@601b │ │ +42e882: 0a07 |002b: move-result v7 │ │ +42e884: 3807 bf00 |002c: if-eqz v7, 00eb // +00bf │ │ +42e888: 7210 1c60 0400 |002e: invoke-interface {v4}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601c │ │ +42e88e: 0c07 |0031: move-result-object v7 │ │ +42e890: 1f07 0c1b |0032: check-cast v7, Lorg/purple/smoke/SipHashIdElement; // type@1b0c │ │ +42e894: 3907 0300 |0034: if-nez v7, 0037 // +0003 │ │ +42e898: 28f2 |0036: goto 0028 // -000e │ │ +42e89a: 5478 235f |0037: iget-object v8, v7, Lorg/purple/smoke/SipHashIdElement;.m_sipHashId:Ljava/lang/String; // field@5f23 │ │ +42e89e: 7110 f0bb 0800 |0039: invoke-static {v8}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf0 │ │ +42e8a4: 0c08 |003c: move-result-object v8 │ │ +42e8a6: 2209 940a |003d: new-instance v9, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ +42e8aa: 12ea |003f: const/4 v10, #int -2 // #fe │ │ +42e8ac: 7020 f85a a900 |0040: invoke-direct {v9, v10}, Landroid/widget/TableRow$LayoutParams;.:(I)V // method@5af8 │ │ +42e8b2: 220b 950a |0043: new-instance v11, Landroid/widget/TableRow; // type@0a95 │ │ +42e8b6: 7020 fa5a 0b00 |0045: invoke-direct {v11, v0}, Landroid/widget/TableRow;.:(Landroid/content/Context;)V // method@5afa │ │ +42e8bc: 6e20 fe5a 9b00 |0048: invoke-virtual {v11, v9}, Landroid/widget/TableRow;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5afe │ │ +42e8c2: 1209 |004b: const/4 v9, #int 0 // #0 │ │ +42e8c4: 123c |004c: const/4 v12, #int 3 // #3 │ │ +42e8c6: 35c9 9700 |004d: if-ge v9, v12, 00e4 // +0097 │ │ +42e8ca: 220c 970a |004f: new-instance v12, Landroid/widget/TextView; // type@0a97 │ │ +42e8ce: 7020 ff5a 0c00 |0051: invoke-direct {v12, v0}, Landroid/widget/TextView;.:(Landroid/content/Context;)V // method@5aff │ │ +42e8d4: 527d 215f |0054: iget v13, v7, Lorg/purple/smoke/SipHashIdElement;.m_oid:I // field@5f21 │ │ +42e8d8: 6e20 395b dc00 |0056: invoke-virtual {v12, v13}, Landroid/widget/TextView;.setId:(I)V // method@5b39 │ │ +42e8de: 12fd |0059: const/4 v13, #int -1 // #ff │ │ +42e8e0: 130e 1000 |005a: const/16 v14, #int 16 // #10 │ │ +42e8e4: 150f 803f |005c: const/high16 v15, #int 1065353216 // #3f80 │ │ +42e8e8: 3809 5b00 |005e: if-eqz v9, 00b9 // +005b │ │ +42e8ec: 121a |0060: const/4 v10, #int 1 // #1 │ │ +42e8ee: 32a9 2100 |0061: if-eq v9, v10, 0082 // +0021 │ │ +42e8f2: 122a |0063: const/4 v10, #int 2 // #2 │ │ +42e8f4: 32a9 0400 |0064: if-eq v9, v10, 0068 // +0004 │ │ +42e8f8: 12ea |0066: const/4 v10, #int -2 // #fe │ │ +42e8fa: 2867 |0067: goto 00ce // +0067 │ │ +42e8fc: 130a 1100 |0068: const/16 v10, #int 17 // #11 │ │ +42e900: 6e20 365b ac00 |006a: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setGravity:(I)V // method@5b36 │ │ +42e906: 220a 940a |006d: new-instance v10, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ +42e90a: 7040 f95a 5afd |006f: invoke-direct {v10, v5, v13, v15}, Landroid/widget/TableRow$LayoutParams;.:(IIF)V // method@5af9 │ │ +42e910: 6e20 3b5b ac00 |0072: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5b3b │ │ +42e916: 6e30 485b 2c08 |0075: invoke-virtual {v12, v2, v8}, Landroid/widget/TextView;.setTag:(ILjava/lang/Object;)V // method@5b48 │ │ +42e91c: 527a 1e5f |0078: iget v10, v7, Lorg/purple/smoke/SipHashIdElement;.m_fiascoKeys:I // field@5f1e │ │ +42e920: 7110 d55c 0a00 |007a: invoke-static {v10}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42e926: 0c0a |007d: move-result-object v10 │ │ +42e928: 6e20 495b ac00 |007e: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42e92e: 28e5 |0081: goto 0066 // -001b │ │ +42e930: 557a 1d5f |0082: iget-boolean v10, v7, Lorg/purple/smoke/SipHashIdElement;.m_epksCompleted:Z // field@5f1d │ │ +42e934: 380a 0d00 |0084: if-eqz v10, 0091 // +000d │ │ +42e938: 557a 1f5f |0086: iget-boolean v10, v7, Lorg/purple/smoke/SipHashIdElement;.m_keysSigned:Z // field@5f1f │ │ +42e93c: 380a 0900 |0088: if-eqz v10, 0091 // +0009 │ │ +42e940: 140a 7000 077f |008a: const v10, #float 1.79448e+38 // #7f070070 │ │ +42e946: 6e55 2f5b ac55 |008d: invoke-virtual {v12, v10, v5, v5, v5}, Landroid/widget/TextView;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@5b2f │ │ +42e94c: 2812 |0090: goto 00a2 // +0012 │ │ +42e94e: 557a 1d5f |0091: iget-boolean v10, v7, Lorg/purple/smoke/SipHashIdElement;.m_epksCompleted:Z // field@5f1d │ │ +42e952: 380a 0900 |0093: if-eqz v10, 009c // +0009 │ │ +42e956: 140a 6f00 077f |0095: const v10, #float 1.79448e+38 // #7f07006f │ │ +42e95c: 6e55 2f5b ac55 |0098: invoke-virtual {v12, v10, v5, v5, v5}, Landroid/widget/TextView;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@5b2f │ │ +42e962: 2807 |009b: goto 00a2 // +0007 │ │ +42e964: 140a 8c00 077f |009c: const v10, #float 1.79449e+38 // #7f07008c │ │ +42e96a: 6e55 2f5b ac55 |009f: invoke-virtual {v12, v10, v5, v5, v5}, Landroid/widget/TextView;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@5b2f │ │ +42e970: 125a |00a2: const/4 v10, #int 5 // #5 │ │ +42e972: 6e20 2a5b ac00 |00a3: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setCompoundDrawablePadding:(I)V // method@5b2a │ │ +42e978: 6e20 365b ec00 |00a6: invoke-virtual {v12, v14}, Landroid/widget/TextView;.setGravity:(I)V // method@5b36 │ │ +42e97e: 220a 940a |00a9: new-instance v10, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ +42e982: 12ed |00ab: const/4 v13, #int -2 // #fe │ │ +42e984: 7040 f95a 5afd |00ac: invoke-direct {v10, v5, v13, v15}, Landroid/widget/TableRow$LayoutParams;.:(IIF)V // method@5af9 │ │ +42e98a: 6e20 3b5b ac00 |00af: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5b3b │ │ +42e990: 6e30 485b 2c08 |00b2: invoke-virtual {v12, v2, v8}, Landroid/widget/TextView;.setTag:(ILjava/lang/Object;)V // method@5b48 │ │ +42e996: 6e20 495b 8c00 |00b5: invoke-virtual {v12, v8}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42e99c: 28ae |00b8: goto 0066 // -0052 │ │ +42e99e: 6e20 365b ec00 |00b9: invoke-virtual {v12, v14}, Landroid/widget/TextView;.setGravity:(I)V // method@5b36 │ │ +42e9a4: 220e 940a |00bc: new-instance v14, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ +42e9a8: 7040 f95a 5efd |00be: invoke-direct {v14, v5, v13, v15}, Landroid/widget/TableRow$LayoutParams;.:(IIF)V // method@5af9 │ │ +42e9ae: 6e20 3b5b ec00 |00c1: invoke-virtual {v12, v14}, Landroid/widget/TextView;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5b3b │ │ +42e9b4: 547d 205f |00c4: iget-object v13, v7, Lorg/purple/smoke/SipHashIdElement;.m_name:Ljava/lang/String; // field@5f20 │ │ +42e9b8: 6e30 485b 2c0d |00c6: invoke-virtual {v12, v2, v13}, Landroid/widget/TextView;.setTag:(ILjava/lang/Object;)V // method@5b48 │ │ +42e9be: 547d 205f |00c9: iget-object v13, v7, Lorg/purple/smoke/SipHashIdElement;.m_name:Ljava/lang/String; // field@5f20 │ │ +42e9c2: 6e20 495b dc00 |00cb: invoke-virtual {v12, v13}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42e9c8: 140d db00 087f |00ce: const v13, #float 1.80779e+38 // #7f0800db │ │ +42e9ce: 557e 1d5f |00d1: iget-boolean v14, v7, Lorg/purple/smoke/SipHashIdElement;.m_epksCompleted:Z // field@5f1d │ │ +42e9d2: 7110 ff5b 0e00 |00d3: invoke-static {v14}, Ljava/lang/Boolean;.valueOf:(Z)Ljava/lang/Boolean; // method@5bff │ │ +42e9d8: 0c0e |00d6: move-result-object v14 │ │ +42e9da: 6e30 485b dc0e |00d7: invoke-virtual {v12, v13, v14}, Landroid/widget/TextView;.setTag:(ILjava/lang/Object;)V // method@5b48 │ │ +42e9e0: 6e20 03bd c000 |00da: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.registerForContextMenu:(Landroid/view/View;)V // method@bd03 │ │ +42e9e6: 6e20 fb5a cb00 |00dd: invoke-virtual {v11, v12}, Landroid/widget/TableRow;.addView:(Landroid/view/View;)V // method@5afb │ │ +42e9ec: d809 0901 |00e0: add-int/lit8 v9, v9, #int 1 // #01 │ │ +42e9f0: 2900 6aff |00e2: goto/16 004c // -0096 │ │ +42e9f4: 6e30 f35a b306 |00e4: invoke-virtual {v3, v11, v6}, Landroid/widget/TableLayout;.addView:(Landroid/view/View;I)V // method@5af3 │ │ +42e9fa: d806 0601 |00e7: add-int/lit8 v6, v6, #int 1 // #01 │ │ +42e9fe: 2900 3fff |00e9: goto/16 0028 // -00c1 │ │ +42ea02: 6e10 9f5f 0100 |00eb: invoke-virtual {v1}, Ljava/util/ArrayList;.clear:()V // method@5f9f │ │ +42ea08: 0e00 |00ee: return-void │ │ catches : (none) │ │ positions : │ │ 0x0002 line=1201 │ │ 0x0008 line=1202 │ │ 0x000f line=1204 │ │ 0x0015 line=1206 │ │ 0x001a line=1208 │ │ @@ -1571174,116 +1571173,116 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 16 │ │ ins : 1 │ │ outs : 12 │ │ insns size : 196 16-bit code units │ │ -42ea10: |[42ea10] org.purple.smoke.Settings.prepareCredentials:()V │ │ -42ea20: 6e10 efbc 0f00 |0000: invoke-virtual {v15}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ -42ea26: 0a00 |0003: move-result v0 │ │ -42ea28: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -42ea2c: 0e00 |0006: return-void │ │ -42ea2e: 1400 8500 087f |0007: const v0, #float 1.80778e+38 // #7f080085 │ │ -42ea34: 6e20 e5bc 0f00 |000a: invoke-virtual {v15, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ea3a: 0c00 |000d: move-result-object v0 │ │ -42ea3c: 1f00 8b0a |000e: check-cast v0, Landroid/widget/Spinner; // type@0a8b │ │ -42ea40: 1401 8700 087f |0010: const v1, #float 1.80778e+38 // #7f080087 │ │ -42ea46: 6e20 e5bc 1f00 |0013: invoke-virtual {v15, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ea4c: 0c01 |0016: move-result-object v1 │ │ -42ea4e: 1f01 8b0a |0017: check-cast v1, Landroid/widget/Spinner; // type@0a8b │ │ -42ea52: 1402 ca00 087f |0019: const v2, #float 1.80779e+38 // #7f0800ca │ │ -42ea58: 6e20 e5bc 2f00 |001c: invoke-virtual {v15, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ea5e: 0c02 |001f: move-result-object v2 │ │ -42ea60: 072b |0020: move-object v11, v2 │ │ -42ea62: 1f0b 8b0a |0021: check-cast v11, Landroid/widget/Spinner; // type@0a8b │ │ -42ea66: 1402 cc00 087f |0023: const v2, #float 1.80779e+38 // #7f0800cc │ │ -42ea6c: 6e20 e5bc 2f00 |0026: invoke-virtual {v15, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ea72: 0c02 |0029: move-result-object v2 │ │ -42ea74: 072c |002a: move-object v12, v2 │ │ -42ea76: 1f0c 8b0a |002b: check-cast v12, Landroid/widget/Spinner; // type@0a8b │ │ -42ea7a: 1402 c400 087f |002d: const v2, #float 1.80779e+38 // #7f0800c4 │ │ -42ea80: 6e20 e5bc 2f00 |0030: invoke-virtual {v15, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ea86: 0c02 |0033: move-result-object v2 │ │ -42ea88: 072d |0034: move-object v13, v2 │ │ -42ea8a: 1f0d 970a |0035: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ -42ea8e: 1402 c500 087f |0037: const v2, #float 1.80779e+38 // #7f0800c5 │ │ -42ea94: 6e20 e5bc 2f00 |003a: invoke-virtual {v15, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ea9a: 0c02 |003d: move-result-object v2 │ │ -42ea9c: 072e |003e: move-object v14, v2 │ │ -42ea9e: 1f0e 970a |003f: check-cast v14, Landroid/widget/TextView; // type@0a97 │ │ -42eaa2: 6e10 ba5a 0000 |0041: invoke-virtual {v0}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -42eaa8: 0c00 |0044: move-result-object v0 │ │ -42eaaa: 6e10 965c 0000 |0045: invoke-virtual {v0}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -42eab0: 0c00 |0048: move-result-object v0 │ │ -42eab2: 7110 555c 0000 |0049: invoke-static {v0}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@5c55 │ │ -42eab8: 0a00 |004c: move-result v0 │ │ -42eaba: 0108 |004d: move v8, v0 │ │ -42eabc: 2805 |004e: goto 0053 // +0005 │ │ -42eabe: 1300 e803 |004f: const/16 v0, #int 1000 // #3e8 │ │ -42eac2: 1308 e803 |0051: const/16 v8, #int 1000 // #3e8 │ │ -42eac6: 1210 |0053: const/4 v0, #int 1 // #1 │ │ -42eac8: 1202 |0054: const/4 v2, #int 0 // #0 │ │ -42eaca: 6e10 ba5a 0100 |0055: invoke-virtual {v1}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -42ead0: 0c01 |0058: move-result-object v1 │ │ -42ead2: 6e10 965c 0100 |0059: invoke-virtual {v1}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -42ead8: 0c01 |005c: move-result-object v1 │ │ -42eada: 12f3 |005d: const/4 v3, #int -1 // #ff │ │ -42eadc: 6e10 bf5c 0100 |005e: invoke-virtual {v1}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -42eae2: 0a04 |0061: move-result v4 │ │ -42eae4: 1405 18ea c4a4 |0062: const v5, #float -8.5398e-17 // #a4c4ea18 │ │ -42eaea: 3254 0300 |0065: if-eq v4, v5, 0068 // +0003 │ │ -42eaee: 280a |0067: goto 0071 // +000a │ │ -42eaf0: 1a04 820e |0068: const-string v4, "Argon2id" // string@0e82 │ │ -42eaf4: 6e20 b85c 4100 |006a: invoke-virtual {v1, v4}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42eafa: 0a01 |006d: move-result v1 │ │ -42eafc: 3801 0300 |006e: if-eqz v1, 0071 // +0003 │ │ -42eb00: 1203 |0070: const/4 v3, #int 0 // #0 │ │ -42eb02: 3803 0400 |0071: if-eqz v3, 0075 // +0004 │ │ -42eb06: 1211 |0073: const/4 v1, #int 1 // #1 │ │ -42eb08: 2802 |0074: goto 0076 // +0002 │ │ -42eb0a: 1201 |0075: const/4 v1, #int 0 // #0 │ │ -42eb0c: 0119 |0076: move v9, v1 │ │ -42eb0e: 2802 |0077: goto 0079 // +0002 │ │ -42eb10: 1219 |0078: const/4 v9, #int 1 // #1 │ │ -42eb12: 1401 7500 087f |0079: const v1, #float 1.80777e+38 // #7f080075 │ │ -42eb18: 6e20 e5bc 1f00 |007c: invoke-virtual {v15, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42eb1e: 0c01 |007f: move-result-object v1 │ │ -42eb20: 071a |0080: move-object v10, v1 │ │ -42eb22: 1f0a 7c0a |0081: check-cast v10, Landroid/widget/ProgressBar; // type@0a7c │ │ -42eb26: 6e20 5a5a 0a00 |0083: invoke-virtual {v10, v0}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ -42eb2c: 6e20 5f5a 2a00 |0086: invoke-virtual {v10, v2}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42eb32: 6e10 edbc 0f00 |0089: invoke-virtual {v15}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ -42eb38: 0c00 |008c: move-result-object v0 │ │ -42eb3a: 1301 1000 |008d: const/16 v1, #int 16 // #10 │ │ -42eb3e: 6e30 9057 1001 |008f: invoke-virtual {v0, v1, v1}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ -42eb44: 1400 9200 087f |0092: const v0, #float 1.80778e+38 // #7f080092 │ │ -42eb4a: 6e20 e5bc 0f00 |0095: invoke-virtual {v15, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42eb50: 0c00 |0098: move-result-object v0 │ │ -42eb52: 7120 e6bb 2000 |0099: invoke-static {v0, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ -42eb58: 2200 f40a |009c: new-instance v0, Ljava/lang/Thread; // type@0af4 │ │ -42eb5c: 2201 f71a |009e: new-instance v1, Lorg/purple/smoke/Settings$3SingleShot; // type@1af7 │ │ -42eb60: 6e10 ba5a 0b00 |00a0: invoke-virtual {v11}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -42eb66: 0c02 |00a3: move-result-object v2 │ │ -42eb68: 6e10 965c 0200 |00a4: invoke-virtual {v2}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -42eb6e: 0c05 |00a7: move-result-object v5 │ │ -42eb70: 6e10 1c5b 0d00 |00a8: invoke-virtual {v13}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42eb76: 0c02 |00ab: move-result-object v2 │ │ -42eb78: 7210 045c 0200 |00ac: invoke-interface {v2}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42eb7e: 0c06 |00af: move-result-object v6 │ │ -42eb80: 6e10 ba5a 0c00 |00b0: invoke-virtual {v12}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -42eb86: 0c02 |00b3: move-result-object v2 │ │ -42eb88: 6e10 965c 0200 |00b4: invoke-virtual {v2}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -42eb8e: 0c07 |00b7: move-result-object v7 │ │ -42eb90: 0713 |00b8: move-object v3, v1 │ │ -42eb92: 07f4 |00b9: move-object v4, v15 │ │ -42eb94: 760c 98bc 0300 |00ba: invoke-direct/range {v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14}, Lorg/purple/smoke/Settings$3SingleShot;.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;IILandroid/widget/ProgressBar;Landroid/widget/Spinner;Landroid/widget/Spinner;Landroid/widget/TextView;Landroid/widget/TextView;)V // method@bc98 │ │ -42eb9a: 7020 0e5d 1000 |00bd: invoke-direct {v0, v1}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ -42eba0: 6e10 195d 0000 |00c0: invoke-virtual {v0}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ -42eba6: 0e00 |00c3: return-void │ │ +42ea0c: |[42ea0c] org.purple.smoke.Settings.prepareCredentials:()V │ │ +42ea1c: 6e10 efbc 0f00 |0000: invoke-virtual {v15}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ +42ea22: 0a00 |0003: move-result v0 │ │ +42ea24: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +42ea28: 0e00 |0006: return-void │ │ +42ea2a: 1400 8500 087f |0007: const v0, #float 1.80778e+38 // #7f080085 │ │ +42ea30: 6e20 e5bc 0f00 |000a: invoke-virtual {v15, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ea36: 0c00 |000d: move-result-object v0 │ │ +42ea38: 1f00 8b0a |000e: check-cast v0, Landroid/widget/Spinner; // type@0a8b │ │ +42ea3c: 1401 8700 087f |0010: const v1, #float 1.80778e+38 // #7f080087 │ │ +42ea42: 6e20 e5bc 1f00 |0013: invoke-virtual {v15, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ea48: 0c01 |0016: move-result-object v1 │ │ +42ea4a: 1f01 8b0a |0017: check-cast v1, Landroid/widget/Spinner; // type@0a8b │ │ +42ea4e: 1402 ca00 087f |0019: const v2, #float 1.80779e+38 // #7f0800ca │ │ +42ea54: 6e20 e5bc 2f00 |001c: invoke-virtual {v15, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ea5a: 0c02 |001f: move-result-object v2 │ │ +42ea5c: 072b |0020: move-object v11, v2 │ │ +42ea5e: 1f0b 8b0a |0021: check-cast v11, Landroid/widget/Spinner; // type@0a8b │ │ +42ea62: 1402 cc00 087f |0023: const v2, #float 1.80779e+38 // #7f0800cc │ │ +42ea68: 6e20 e5bc 2f00 |0026: invoke-virtual {v15, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ea6e: 0c02 |0029: move-result-object v2 │ │ +42ea70: 072c |002a: move-object v12, v2 │ │ +42ea72: 1f0c 8b0a |002b: check-cast v12, Landroid/widget/Spinner; // type@0a8b │ │ +42ea76: 1402 c400 087f |002d: const v2, #float 1.80779e+38 // #7f0800c4 │ │ +42ea7c: 6e20 e5bc 2f00 |0030: invoke-virtual {v15, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ea82: 0c02 |0033: move-result-object v2 │ │ +42ea84: 072d |0034: move-object v13, v2 │ │ +42ea86: 1f0d 970a |0035: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ +42ea8a: 1402 c500 087f |0037: const v2, #float 1.80779e+38 // #7f0800c5 │ │ +42ea90: 6e20 e5bc 2f00 |003a: invoke-virtual {v15, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ea96: 0c02 |003d: move-result-object v2 │ │ +42ea98: 072e |003e: move-object v14, v2 │ │ +42ea9a: 1f0e 970a |003f: check-cast v14, Landroid/widget/TextView; // type@0a97 │ │ +42ea9e: 6e10 ba5a 0000 |0041: invoke-virtual {v0}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +42eaa4: 0c00 |0044: move-result-object v0 │ │ +42eaa6: 6e10 965c 0000 |0045: invoke-virtual {v0}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +42eaac: 0c00 |0048: move-result-object v0 │ │ +42eaae: 7110 555c 0000 |0049: invoke-static {v0}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@5c55 │ │ +42eab4: 0a00 |004c: move-result v0 │ │ +42eab6: 0108 |004d: move v8, v0 │ │ +42eab8: 2805 |004e: goto 0053 // +0005 │ │ +42eaba: 1300 e803 |004f: const/16 v0, #int 1000 // #3e8 │ │ +42eabe: 1308 e803 |0051: const/16 v8, #int 1000 // #3e8 │ │ +42eac2: 1210 |0053: const/4 v0, #int 1 // #1 │ │ +42eac4: 1202 |0054: const/4 v2, #int 0 // #0 │ │ +42eac6: 6e10 ba5a 0100 |0055: invoke-virtual {v1}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +42eacc: 0c01 |0058: move-result-object v1 │ │ +42eace: 6e10 965c 0100 |0059: invoke-virtual {v1}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +42ead4: 0c01 |005c: move-result-object v1 │ │ +42ead6: 12f3 |005d: const/4 v3, #int -1 // #ff │ │ +42ead8: 6e10 bf5c 0100 |005e: invoke-virtual {v1}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +42eade: 0a04 |0061: move-result v4 │ │ +42eae0: 1405 18ea c4a4 |0062: const v5, #float -8.5398e-17 // #a4c4ea18 │ │ +42eae6: 3254 0300 |0065: if-eq v4, v5, 0068 // +0003 │ │ +42eaea: 280a |0067: goto 0071 // +000a │ │ +42eaec: 1a04 820e |0068: const-string v4, "Argon2id" // string@0e82 │ │ +42eaf0: 6e20 b85c 4100 |006a: invoke-virtual {v1, v4}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42eaf6: 0a01 |006d: move-result v1 │ │ +42eaf8: 3801 0300 |006e: if-eqz v1, 0071 // +0003 │ │ +42eafc: 1203 |0070: const/4 v3, #int 0 // #0 │ │ +42eafe: 3803 0400 |0071: if-eqz v3, 0075 // +0004 │ │ +42eb02: 1211 |0073: const/4 v1, #int 1 // #1 │ │ +42eb04: 2802 |0074: goto 0076 // +0002 │ │ +42eb06: 1201 |0075: const/4 v1, #int 0 // #0 │ │ +42eb08: 0119 |0076: move v9, v1 │ │ +42eb0a: 2802 |0077: goto 0079 // +0002 │ │ +42eb0c: 1219 |0078: const/4 v9, #int 1 // #1 │ │ +42eb0e: 1401 7500 087f |0079: const v1, #float 1.80777e+38 // #7f080075 │ │ +42eb14: 6e20 e5bc 1f00 |007c: invoke-virtual {v15, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42eb1a: 0c01 |007f: move-result-object v1 │ │ +42eb1c: 071a |0080: move-object v10, v1 │ │ +42eb1e: 1f0a 7c0a |0081: check-cast v10, Landroid/widget/ProgressBar; // type@0a7c │ │ +42eb22: 6e20 5a5a 0a00 |0083: invoke-virtual {v10, v0}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ +42eb28: 6e20 5f5a 2a00 |0086: invoke-virtual {v10, v2}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42eb2e: 6e10 edbc 0f00 |0089: invoke-virtual {v15}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ +42eb34: 0c00 |008c: move-result-object v0 │ │ +42eb36: 1301 1000 |008d: const/16 v1, #int 16 // #10 │ │ +42eb3a: 6e30 9057 1001 |008f: invoke-virtual {v0, v1, v1}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ +42eb40: 1400 9200 087f |0092: const v0, #float 1.80778e+38 // #7f080092 │ │ +42eb46: 6e20 e5bc 0f00 |0095: invoke-virtual {v15, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42eb4c: 0c00 |0098: move-result-object v0 │ │ +42eb4e: 7120 e6bb 2000 |0099: invoke-static {v0, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ +42eb54: 2200 f40a |009c: new-instance v0, Ljava/lang/Thread; // type@0af4 │ │ +42eb58: 2201 f71a |009e: new-instance v1, Lorg/purple/smoke/Settings$3SingleShot; // type@1af7 │ │ +42eb5c: 6e10 ba5a 0b00 |00a0: invoke-virtual {v11}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +42eb62: 0c02 |00a3: move-result-object v2 │ │ +42eb64: 6e10 965c 0200 |00a4: invoke-virtual {v2}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +42eb6a: 0c05 |00a7: move-result-object v5 │ │ +42eb6c: 6e10 1c5b 0d00 |00a8: invoke-virtual {v13}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42eb72: 0c02 |00ab: move-result-object v2 │ │ +42eb74: 7210 045c 0200 |00ac: invoke-interface {v2}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42eb7a: 0c06 |00af: move-result-object v6 │ │ +42eb7c: 6e10 ba5a 0c00 |00b0: invoke-virtual {v12}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +42eb82: 0c02 |00b3: move-result-object v2 │ │ +42eb84: 6e10 965c 0200 |00b4: invoke-virtual {v2}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +42eb8a: 0c07 |00b7: move-result-object v7 │ │ +42eb8c: 0713 |00b8: move-object v3, v1 │ │ +42eb8e: 07f4 |00b9: move-object v4, v15 │ │ +42eb90: 760c 98bc 0300 |00ba: invoke-direct/range {v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14}, Lorg/purple/smoke/Settings$3SingleShot;.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;IILandroid/widget/ProgressBar;Landroid/widget/Spinner;Landroid/widget/Spinner;Landroid/widget/TextView;Landroid/widget/TextView;)V // method@bc98 │ │ +42eb96: 7020 0e5d 1000 |00bd: invoke-direct {v0, v1}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ +42eb9c: 6e10 195d 0000 |00c0: invoke-virtual {v0}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ +42eba2: 0e00 |00c3: return-void │ │ catches : 2 │ │ 0x0041 - 0x004d │ │ Ljava/lang/Exception; -> 0x004f │ │ 0x0055 - 0x006e │ │ Ljava/lang/Exception; -> 0x0078 │ │ positions : │ │ 0x0000 line=1295 │ │ @@ -1571313,28 +1571312,28 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 25 16-bit code units │ │ -42ebc4: |[42ebc4] org.purple.smoke.Settings.prepareForegroundService:()V │ │ -42ebd4: 5430 065f |0000: iget-object v0, v3, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42ebd8: 1201 |0002: const/4 v1, #int 0 // #0 │ │ -42ebda: 1a02 5569 |0003: const-string v2, "foreground_service" // string@6955 │ │ -42ebde: 6e30 17ba 1002 |0005: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42ebe4: 0c00 |0008: move-result-object v0 │ │ -42ebe6: 1a01 2068 |0009: const-string v1, "false" // string@6820 │ │ -42ebea: 6e20 b85c 1000 |000b: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42ebf0: 0a00 |000e: move-result v0 │ │ -42ebf2: 3800 0600 |000f: if-eqz v0, 0015 // +0006 │ │ -42ebf6: 7110 36bd 0300 |0011: invoke-static {v3}, Lorg/purple/smoke/SmokeService;.stopForegroundTask:(Landroid/content/Context;)V // method@bd36 │ │ -42ebfc: 2804 |0014: goto 0018 // +0004 │ │ -42ebfe: 7110 33bd 0300 |0015: invoke-static {v3}, Lorg/purple/smoke/SmokeService;.startForegroundTask:(Landroid/content/Context;)V // method@bd33 │ │ -42ec04: 0e00 |0018: return-void │ │ +42ebc0: |[42ebc0] org.purple.smoke.Settings.prepareForegroundService:()V │ │ +42ebd0: 5430 065f |0000: iget-object v0, v3, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42ebd4: 1201 |0002: const/4 v1, #int 0 // #0 │ │ +42ebd6: 1a02 5569 |0003: const-string v2, "foreground_service" // string@6955 │ │ +42ebda: 6e30 17ba 1002 |0005: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42ebe0: 0c00 |0008: move-result-object v0 │ │ +42ebe2: 1a01 2068 |0009: const-string v1, "false" // string@6820 │ │ +42ebe6: 6e20 b85c 1000 |000b: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42ebec: 0a00 |000e: move-result v0 │ │ +42ebee: 3800 0600 |000f: if-eqz v0, 0015 // +0006 │ │ +42ebf2: 7110 36bd 0300 |0011: invoke-static {v3}, Lorg/purple/smoke/SmokeService;.stopForegroundTask:(Landroid/content/Context;)V // method@bd36 │ │ +42ebf8: 2804 |0014: goto 0018 // +0004 │ │ +42ebfa: 7110 33bd 0300 |0015: invoke-static {v3}, Lorg/purple/smoke/SmokeService;.startForegroundTask:(Landroid/content/Context;)V // method@bd33 │ │ +42ec00: 0e00 |0018: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1642 │ │ 0x0005 line=1643 │ │ 0x0011 line=1644 │ │ 0x0015 line=1646 │ │ locals : │ │ @@ -1571345,237 +1571344,237 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 538 16-bit code units │ │ -42ec08: |[42ec08] org.purple.smoke.Settings.prepareListeners:()V │ │ -42ec18: 1400 ae00 087f |0000: const v0, #float 1.80779e+38 // #7f0800ae │ │ -42ec1e: 6e20 e5bc 0500 |0003: invoke-virtual {v5, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ec24: 0c00 |0006: move-result-object v0 │ │ -42ec26: 1f00 8b0a |0007: check-cast v0, Landroid/widget/Spinner; // type@0a8b │ │ -42ec2a: 1401 bd00 087f |0009: const v1, #float 1.80779e+38 // #7f0800bd │ │ -42ec30: 6e20 e5bc 1500 |000c: invoke-virtual {v5, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ec36: 0c01 |000f: move-result-object v1 │ │ -42ec38: 1f01 970a |0010: check-cast v1, Landroid/widget/TextView; // type@0a97 │ │ -42ec3c: 1402 1e00 087f |0012: const v2, #float 1.80776e+38 // #7f08001e │ │ -42ec42: 6e20 e5bc 2500 |0015: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ec48: 0c02 |0018: move-result-object v2 │ │ -42ec4a: 1f02 5e0a |0019: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ec4e: 2203 fc1a |001b: new-instance v3, Lorg/purple/smoke/Settings$5; // type@1afc │ │ -42ec52: 7020 a5bc 5300 |001d: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$5;.:(Lorg/purple/smoke/Settings;)V // method@bca5 │ │ -42ec58: 6e20 e258 3200 |0020: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ec5e: 1402 1f00 087f |0023: const v2, #float 1.80776e+38 // #7f08001f │ │ -42ec64: 6e20 e5bc 2500 |0026: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ec6a: 0c02 |0029: move-result-object v2 │ │ -42ec6c: 1f02 5e0a |002a: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ec70: 2203 ff1a |002c: new-instance v3, Lorg/purple/smoke/Settings$6; // type@1aff │ │ -42ec74: 7020 acbc 5300 |002e: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$6;.:(Lorg/purple/smoke/Settings;)V // method@bcac │ │ -42ec7a: 6e20 e258 3200 |0031: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ec80: 1402 4000 087f |0034: const v2, #float 1.80776e+38 // #7f080040 │ │ -42ec86: 6e20 e5bc 2500 |0037: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ec8c: 0c02 |003a: move-result-object v2 │ │ -42ec8e: 1f02 5e0a |003b: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ec92: 2203 021b |003d: new-instance v3, Lorg/purple/smoke/Settings$7; // type@1b02 │ │ -42ec96: 7020 b3bc 5300 |003f: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$7;.:(Lorg/purple/smoke/Settings;)V // method@bcb3 │ │ -42ec9c: 6e20 e258 3200 |0042: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42eca2: 1402 5d00 087f |0045: const v2, #float 1.80777e+38 // #7f08005d │ │ -42eca8: 6e20 e5bc 2500 |0048: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ecae: 0c02 |004b: move-result-object v2 │ │ -42ecb0: 1f02 5e0a |004c: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ecb4: 2203 051b |004e: new-instance v3, Lorg/purple/smoke/Settings$8; // type@1b05 │ │ -42ecb8: 7020 bebc 5300 |0050: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$8;.:(Lorg/purple/smoke/Settings;)V // method@bcbe │ │ -42ecbe: 6e20 e258 3200 |0053: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ecc4: 1402 6400 087f |0056: const v2, #float 1.80777e+38 // #7f080064 │ │ -42ecca: 6e20 e5bc 2500 |0059: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ecd0: 0c02 |005c: move-result-object v2 │ │ -42ecd2: 1f02 5e0a |005d: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ecd6: 2203 061b |005f: new-instance v3, Lorg/purple/smoke/Settings$9; // type@1b06 │ │ -42ecda: 7020 c0bc 5300 |0061: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$9;.:(Lorg/purple/smoke/Settings;)V // method@bcc0 │ │ -42ece0: 6e20 e258 3200 |0064: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ece6: 1402 7400 087f |0067: const v2, #float 1.80777e+38 // #7f080074 │ │ -42ecec: 6e20 e5bc 2500 |006a: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ecf2: 0c02 |006d: move-result-object v2 │ │ -42ecf4: 1f02 5e0a |006e: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ecf8: 2203 d01a |0070: new-instance v3, Lorg/purple/smoke/Settings$10; // type@1ad0 │ │ -42ecfc: 7020 45bc 5300 |0072: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$10;.:(Lorg/purple/smoke/Settings;)V // method@bc45 │ │ -42ed02: 6e20 e258 3200 |0075: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ed08: 1402 8200 087f |0078: const v2, #float 1.80778e+38 // #7f080082 │ │ -42ed0e: 6e20 e5bc 2500 |007b: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ed14: 0c02 |007e: move-result-object v2 │ │ -42ed16: 1f02 5e0a |007f: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ed1a: 2203 d11a |0081: new-instance v3, Lorg/purple/smoke/Settings$11; // type@1ad1 │ │ -42ed1e: 7020 47bc 5300 |0083: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$11;.:(Lorg/purple/smoke/Settings;)V // method@bc47 │ │ -42ed24: 6e20 e258 3200 |0086: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ed2a: 1402 b800 087f |0089: const v2, #float 1.80779e+38 // #7f0800b8 │ │ -42ed30: 6e20 e5bc 2500 |008c: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ed36: 0c02 |008f: move-result-object v2 │ │ -42ed38: 1f02 5e0a |0090: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ed3c: 2203 d21a |0092: new-instance v3, Lorg/purple/smoke/Settings$12; // type@1ad2 │ │ -42ed40: 7020 49bc 5300 |0094: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$12;.:(Lorg/purple/smoke/Settings;)V // method@bc49 │ │ -42ed46: 6e20 e258 3200 |0097: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ed4c: 1402 c200 087f |009a: const v2, #float 1.80779e+38 // #7f0800c2 │ │ -42ed52: 6e20 e5bc 2500 |009d: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ed58: 0c02 |00a0: move-result-object v2 │ │ -42ed5a: 1f02 5e0a |00a1: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ed5e: 2203 d31a |00a3: new-instance v3, Lorg/purple/smoke/Settings$13; // type@1ad3 │ │ -42ed62: 7020 4bbc 5300 |00a5: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$13;.:(Lorg/purple/smoke/Settings;)V // method@bc4b │ │ -42ed68: 6e20 e258 3200 |00a8: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ed6e: 1402 da00 087f |00ab: const v2, #float 1.80779e+38 // #7f0800da │ │ -42ed74: 6e20 e5bc 2500 |00ae: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ed7a: 0c02 |00b1: move-result-object v2 │ │ -42ed7c: 1f02 5e0a |00b2: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ed80: 2203 d41a |00b4: new-instance v3, Lorg/purple/smoke/Settings$14; // type@1ad4 │ │ -42ed84: 7020 4dbc 5300 |00b6: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$14;.:(Lorg/purple/smoke/Settings;)V // method@bc4d │ │ -42ed8a: 6e20 e258 3200 |00b9: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ed90: 1402 db00 087f |00bc: const v2, #float 1.80779e+38 // #7f0800db │ │ -42ed96: 6e20 e5bc 2500 |00bf: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ed9c: 0c02 |00c2: move-result-object v2 │ │ -42ed9e: 1f02 5e0a |00c3: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42eda2: 2203 d51a |00c5: new-instance v3, Lorg/purple/smoke/Settings$15; // type@1ad5 │ │ -42eda6: 7020 4fbc 5300 |00c7: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$15;.:(Lorg/purple/smoke/Settings;)V // method@bc4f │ │ -42edac: 6e20 e258 3200 |00ca: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42edb2: 2202 d61a |00cd: new-instance v2, Lorg/purple/smoke/Settings$16; // type@1ad6 │ │ -42edb6: 7020 51bc 5200 |00cf: invoke-direct {v2, v5}, Lorg/purple/smoke/Settings$16;.:(Lorg/purple/smoke/Settings;)V // method@bc51 │ │ -42edbc: 1403 de00 087f |00d2: const v3, #float 1.8078e+38 // #7f0800de │ │ -42edc2: 6e20 e5bc 3500 |00d5: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42edc8: 0c03 |00d8: move-result-object v3 │ │ -42edca: 1f03 5e0a |00d9: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ -42edce: 2204 d71a |00db: new-instance v4, Lorg/purple/smoke/Settings$17; // type@1ad7 │ │ -42edd2: 7030 53bc 5402 |00dd: invoke-direct {v4, v5, v2}, Lorg/purple/smoke/Settings$17;.:(Lorg/purple/smoke/Settings;Landroid/content/DialogInterface$OnCancelListener;)V // method@bc53 │ │ -42edd8: 6e20 e258 4300 |00e0: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42edde: 1402 e000 087f |00e3: const v2, #float 1.8078e+38 // #7f0800e0 │ │ -42ede4: 6e20 e5bc 2500 |00e6: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42edea: 0c02 |00e9: move-result-object v2 │ │ -42edec: 1f02 5e0a |00ea: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42edf0: 2203 d81a |00ec: new-instance v3, Lorg/purple/smoke/Settings$18; // type@1ad8 │ │ -42edf4: 7020 55bc 5300 |00ee: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$18;.:(Lorg/purple/smoke/Settings;)V // method@bc55 │ │ -42edfa: 6e20 e258 3200 |00f1: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ee00: 1402 e100 087f |00f4: const v2, #float 1.8078e+38 // #7f0800e1 │ │ -42ee06: 6e20 e5bc 2500 |00f7: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ee0c: 0c02 |00fa: move-result-object v2 │ │ -42ee0e: 1f02 5e0a |00fb: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ee12: 2203 d91a |00fd: new-instance v3, Lorg/purple/smoke/Settings$19; // type@1ad9 │ │ -42ee16: 7020 57bc 5300 |00ff: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$19;.:(Lorg/purple/smoke/Settings;)V // method@bc57 │ │ -42ee1c: 6e20 e258 3200 |0102: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ee22: 2202 dd1a |0105: new-instance v2, Lorg/purple/smoke/Settings$20; // type@1add │ │ -42ee26: 7020 60bc 5200 |0107: invoke-direct {v2, v5}, Lorg/purple/smoke/Settings$20;.:(Lorg/purple/smoke/Settings;)V // method@bc60 │ │ -42ee2c: 1403 e600 087f |010a: const v3, #float 1.8078e+38 // #7f0800e6 │ │ -42ee32: 6e20 e5bc 3500 |010d: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ee38: 0c03 |0110: move-result-object v3 │ │ -42ee3a: 1f03 5e0a |0111: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ -42ee3e: 2204 de1a |0113: new-instance v4, Lorg/purple/smoke/Settings$21; // type@1ade │ │ -42ee42: 7020 62bc 5400 |0115: invoke-direct {v4, v5}, Lorg/purple/smoke/Settings$21;.:(Lorg/purple/smoke/Settings;)V // method@bc62 │ │ -42ee48: 6e20 e258 4300 |0118: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ee4e: 1403 e800 087f |011b: const v3, #float 1.8078e+38 // #7f0800e8 │ │ -42ee54: 6e20 e5bc 3500 |011e: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ee5a: 0c03 |0121: move-result-object v3 │ │ -42ee5c: 1f03 5e0a |0122: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ -42ee60: 2204 df1a |0124: new-instance v4, Lorg/purple/smoke/Settings$22; // type@1adf │ │ -42ee64: 7020 64bc 5400 |0126: invoke-direct {v4, v5}, Lorg/purple/smoke/Settings$22;.:(Lorg/purple/smoke/Settings;)V // method@bc64 │ │ -42ee6a: 6e20 e258 4300 |0129: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ee70: 1403 ff00 087f |012c: const v3, #float 1.8078e+38 // #7f0800ff │ │ -42ee76: 6e20 e5bc 3500 |012f: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ee7c: 0c03 |0132: move-result-object v3 │ │ -42ee7e: 1f03 5e0a |0133: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ -42ee82: 2204 e01a |0135: new-instance v4, Lorg/purple/smoke/Settings$23; // type@1ae0 │ │ -42ee86: 7030 66bc 5402 |0137: invoke-direct {v4, v5, v2}, Lorg/purple/smoke/Settings$23;.:(Lorg/purple/smoke/Settings;Landroid/content/DialogInterface$OnCancelListener;)V // method@bc66 │ │ -42ee8c: 6e20 e258 4300 |013a: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ee92: 1402 0201 087f |013d: const v2, #float 1.8078e+38 // #7f080102 │ │ -42ee98: 6e20 e5bc 2500 |0140: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ee9e: 0c02 |0143: move-result-object v2 │ │ -42eea0: 1f02 5e0a |0144: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42eea4: 2203 e11a |0146: new-instance v3, Lorg/purple/smoke/Settings$24; // type@1ae1 │ │ -42eea8: 7020 68bc 5300 |0148: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$24;.:(Lorg/purple/smoke/Settings;)V // method@bc68 │ │ -42eeae: 6e20 e258 3200 |014b: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42eeb4: 1402 0901 087f |014e: const v2, #float 1.8078e+38 // #7f080109 │ │ -42eeba: 6e20 e5bc 2500 |0151: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42eec0: 0c02 |0154: move-result-object v2 │ │ -42eec2: 1f02 5e0a |0155: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42eec6: 2203 e21a |0157: new-instance v3, Lorg/purple/smoke/Settings$25; // type@1ae2 │ │ -42eeca: 7020 6abc 5300 |0159: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$25;.:(Lorg/purple/smoke/Settings;)V // method@bc6a │ │ -42eed0: 6e20 e258 3200 |015c: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42eed6: 1402 0a01 087f |015f: const v2, #float 1.8078e+38 // #7f08010a │ │ -42eedc: 6e20 e5bc 2500 |0162: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42eee2: 0c02 |0165: move-result-object v2 │ │ -42eee4: 1f02 5e0a |0166: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42eee8: 2203 e31a |0168: new-instance v3, Lorg/purple/smoke/Settings$26; // type@1ae3 │ │ -42eeec: 7020 6cbc 5300 |016a: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$26;.:(Lorg/purple/smoke/Settings;)V // method@bc6c │ │ -42eef2: 6e20 e258 3200 |016d: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42eef8: 1402 2500 087f |0170: const v2, #float 1.80776e+38 // #7f080025 │ │ -42eefe: 6e20 e5bc 2500 |0173: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ef04: 0c02 |0176: move-result-object v2 │ │ -42ef06: 1f02 8d0a |0177: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42ef0a: 2203 e41a |0179: new-instance v3, Lorg/purple/smoke/Settings$27; // type@1ae4 │ │ -42ef0e: 7020 6ebc 5300 |017b: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$27;.:(Lorg/purple/smoke/Settings;)V // method@bc6e │ │ -42ef14: 6e20 e25a 3200 |017e: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -42ef1a: 1402 2c00 087f |0181: const v2, #float 1.80776e+38 // #7f08002c │ │ -42ef20: 6e20 e5bc 2500 |0184: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ef26: 0c02 |0187: move-result-object v2 │ │ -42ef28: 1f02 8d0a |0188: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42ef2c: 2203 e51a |018a: new-instance v3, Lorg/purple/smoke/Settings$28; // type@1ae5 │ │ -42ef30: 7020 70bc 5300 |018c: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$28;.:(Lorg/purple/smoke/Settings;)V // method@bc70 │ │ -42ef36: 6e20 e25a 3200 |018f: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -42ef3c: 1402 5c00 087f |0192: const v2, #float 1.80777e+38 // #7f08005c │ │ -42ef42: 6e20 e5bc 2500 |0195: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ef48: 0c02 |0198: move-result-object v2 │ │ -42ef4a: 1f02 8d0a |0199: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42ef4e: 2203 e61a |019b: new-instance v3, Lorg/purple/smoke/Settings$29; // type@1ae6 │ │ -42ef52: 7020 72bc 5300 |019d: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$29;.:(Lorg/purple/smoke/Settings;)V // method@bc72 │ │ -42ef58: 6e20 e25a 3200 |01a0: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -42ef5e: 1402 7300 087f |01a3: const v2, #float 1.80777e+38 // #7f080073 │ │ -42ef64: 6e20 e5bc 2500 |01a6: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ef6a: 0c02 |01a9: move-result-object v2 │ │ -42ef6c: 1f02 8d0a |01aa: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42ef70: 2203 eb1a |01ac: new-instance v3, Lorg/purple/smoke/Settings$30; // type@1aeb │ │ -42ef74: 7020 7dbc 5300 |01ae: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$30;.:(Lorg/purple/smoke/Settings;)V // method@bc7d │ │ -42ef7a: 6e20 e25a 3200 |01b1: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -42ef80: 1402 a600 087f |01b4: const v2, #float 1.80778e+38 // #7f0800a6 │ │ -42ef86: 6e20 e5bc 2500 |01b7: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42ef8c: 0c02 |01ba: move-result-object v2 │ │ -42ef8e: 1f02 8d0a |01bb: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42ef92: 2203 ec1a |01bd: new-instance v3, Lorg/purple/smoke/Settings$31; // type@1aec │ │ -42ef96: 7020 7fbc 5300 |01bf: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$31;.:(Lorg/purple/smoke/Settings;)V // method@bc7f │ │ -42ef9c: 6e20 e25a 3200 |01c2: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -42efa2: 1402 b600 087f |01c5: const v2, #float 1.80779e+38 // #7f0800b6 │ │ -42efa8: 6e20 e5bc 2500 |01c8: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42efae: 0c02 |01cb: move-result-object v2 │ │ -42efb0: 1f02 8d0a |01cc: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42efb4: 2203 ed1a |01ce: new-instance v3, Lorg/purple/smoke/Settings$32; // type@1aed │ │ -42efb8: 7020 81bc 5300 |01d0: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$32;.:(Lorg/purple/smoke/Settings;)V // method@bc81 │ │ -42efbe: 6e20 e25a 3200 |01d3: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -42efc4: 1402 d500 087f |01d6: const v2, #float 1.80779e+38 // #7f0800d5 │ │ -42efca: 6e20 e5bc 2500 |01d9: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42efd0: 0c02 |01dc: move-result-object v2 │ │ -42efd2: 1f02 8d0a |01dd: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42efd6: 2203 ee1a |01df: new-instance v3, Lorg/purple/smoke/Settings$33; // type@1aee │ │ -42efda: 7020 83bc 5300 |01e1: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$33;.:(Lorg/purple/smoke/Settings;)V // method@bc83 │ │ -42efe0: 6e20 e25a 3200 |01e4: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -42efe6: 1402 0801 087f |01e7: const v2, #float 1.8078e+38 // #7f080108 │ │ -42efec: 6e20 e5bc 2500 |01ea: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42eff2: 0c02 |01ed: move-result-object v2 │ │ -42eff4: 1f02 8d0a |01ee: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42eff8: 2203 ef1a |01f0: new-instance v3, Lorg/purple/smoke/Settings$34; // type@1aef │ │ -42effc: 7020 85bc 5300 |01f2: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$34;.:(Lorg/purple/smoke/Settings;)V // method@bc85 │ │ -42f002: 6e20 e25a 3200 |01f5: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -42f008: 1402 0c01 087f |01f8: const v2, #float 1.8078e+38 // #7f08010c │ │ -42f00e: 6e20 e5bc 2500 |01fb: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42f014: 0c02 |01fe: move-result-object v2 │ │ -42f016: 1f02 8d0a |01ff: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42f01a: 2203 f01a |0201: new-instance v3, Lorg/purple/smoke/Settings$35; // type@1af0 │ │ -42f01e: 7020 87bc 5300 |0203: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$35;.:(Lorg/purple/smoke/Settings;)V // method@bc87 │ │ -42f024: 6e20 e25a 3200 |0206: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -42f02a: 2202 f11a |0209: new-instance v2, Lorg/purple/smoke/Settings$36; // type@1af1 │ │ -42f02e: 7020 89bc 5200 |020b: invoke-direct {v2, v5}, Lorg/purple/smoke/Settings$36;.:(Lorg/purple/smoke/Settings;)V // method@bc89 │ │ -42f034: 6e20 c95a 2000 |020e: invoke-virtual {v0, v2}, Landroid/widget/Spinner;.setOnItemSelectedListener:(Landroid/widget/AdapterView$OnItemSelectedListener;)V // method@5ac9 │ │ -42f03a: 2200 f21a |0211: new-instance v0, Lorg/purple/smoke/Settings$37; // type@1af2 │ │ -42f03e: 7020 8cbc 5000 |0213: invoke-direct {v0, v5}, Lorg/purple/smoke/Settings$37;.:(Lorg/purple/smoke/Settings;)V // method@bc8c │ │ -42f044: 6e20 025b 0100 |0216: invoke-virtual {v1, v0}, Landroid/widget/TextView;.addTextChangedListener:(Landroid/text/TextWatcher;)V // method@5b02 │ │ -42f04a: 0e00 |0219: return-void │ │ +42ec04: |[42ec04] org.purple.smoke.Settings.prepareListeners:()V │ │ +42ec14: 1400 ae00 087f |0000: const v0, #float 1.80779e+38 // #7f0800ae │ │ +42ec1a: 6e20 e5bc 0500 |0003: invoke-virtual {v5, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ec20: 0c00 |0006: move-result-object v0 │ │ +42ec22: 1f00 8b0a |0007: check-cast v0, Landroid/widget/Spinner; // type@0a8b │ │ +42ec26: 1401 bd00 087f |0009: const v1, #float 1.80779e+38 // #7f0800bd │ │ +42ec2c: 6e20 e5bc 1500 |000c: invoke-virtual {v5, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ec32: 0c01 |000f: move-result-object v1 │ │ +42ec34: 1f01 970a |0010: check-cast v1, Landroid/widget/TextView; // type@0a97 │ │ +42ec38: 1402 1e00 087f |0012: const v2, #float 1.80776e+38 // #7f08001e │ │ +42ec3e: 6e20 e5bc 2500 |0015: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ec44: 0c02 |0018: move-result-object v2 │ │ +42ec46: 1f02 5e0a |0019: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ec4a: 2203 fc1a |001b: new-instance v3, Lorg/purple/smoke/Settings$5; // type@1afc │ │ +42ec4e: 7020 a5bc 5300 |001d: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$5;.:(Lorg/purple/smoke/Settings;)V // method@bca5 │ │ +42ec54: 6e20 e258 3200 |0020: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ec5a: 1402 1f00 087f |0023: const v2, #float 1.80776e+38 // #7f08001f │ │ +42ec60: 6e20 e5bc 2500 |0026: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ec66: 0c02 |0029: move-result-object v2 │ │ +42ec68: 1f02 5e0a |002a: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ec6c: 2203 ff1a |002c: new-instance v3, Lorg/purple/smoke/Settings$6; // type@1aff │ │ +42ec70: 7020 acbc 5300 |002e: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$6;.:(Lorg/purple/smoke/Settings;)V // method@bcac │ │ +42ec76: 6e20 e258 3200 |0031: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ec7c: 1402 4000 087f |0034: const v2, #float 1.80776e+38 // #7f080040 │ │ +42ec82: 6e20 e5bc 2500 |0037: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ec88: 0c02 |003a: move-result-object v2 │ │ +42ec8a: 1f02 5e0a |003b: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ec8e: 2203 021b |003d: new-instance v3, Lorg/purple/smoke/Settings$7; // type@1b02 │ │ +42ec92: 7020 b3bc 5300 |003f: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$7;.:(Lorg/purple/smoke/Settings;)V // method@bcb3 │ │ +42ec98: 6e20 e258 3200 |0042: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ec9e: 1402 5d00 087f |0045: const v2, #float 1.80777e+38 // #7f08005d │ │ +42eca4: 6e20 e5bc 2500 |0048: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ecaa: 0c02 |004b: move-result-object v2 │ │ +42ecac: 1f02 5e0a |004c: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ecb0: 2203 051b |004e: new-instance v3, Lorg/purple/smoke/Settings$8; // type@1b05 │ │ +42ecb4: 7020 bebc 5300 |0050: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$8;.:(Lorg/purple/smoke/Settings;)V // method@bcbe │ │ +42ecba: 6e20 e258 3200 |0053: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ecc0: 1402 6400 087f |0056: const v2, #float 1.80777e+38 // #7f080064 │ │ +42ecc6: 6e20 e5bc 2500 |0059: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42eccc: 0c02 |005c: move-result-object v2 │ │ +42ecce: 1f02 5e0a |005d: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ecd2: 2203 061b |005f: new-instance v3, Lorg/purple/smoke/Settings$9; // type@1b06 │ │ +42ecd6: 7020 c0bc 5300 |0061: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$9;.:(Lorg/purple/smoke/Settings;)V // method@bcc0 │ │ +42ecdc: 6e20 e258 3200 |0064: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ece2: 1402 7400 087f |0067: const v2, #float 1.80777e+38 // #7f080074 │ │ +42ece8: 6e20 e5bc 2500 |006a: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ecee: 0c02 |006d: move-result-object v2 │ │ +42ecf0: 1f02 5e0a |006e: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ecf4: 2203 d01a |0070: new-instance v3, Lorg/purple/smoke/Settings$10; // type@1ad0 │ │ +42ecf8: 7020 45bc 5300 |0072: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$10;.:(Lorg/purple/smoke/Settings;)V // method@bc45 │ │ +42ecfe: 6e20 e258 3200 |0075: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ed04: 1402 8200 087f |0078: const v2, #float 1.80778e+38 // #7f080082 │ │ +42ed0a: 6e20 e5bc 2500 |007b: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ed10: 0c02 |007e: move-result-object v2 │ │ +42ed12: 1f02 5e0a |007f: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ed16: 2203 d11a |0081: new-instance v3, Lorg/purple/smoke/Settings$11; // type@1ad1 │ │ +42ed1a: 7020 47bc 5300 |0083: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$11;.:(Lorg/purple/smoke/Settings;)V // method@bc47 │ │ +42ed20: 6e20 e258 3200 |0086: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ed26: 1402 b800 087f |0089: const v2, #float 1.80779e+38 // #7f0800b8 │ │ +42ed2c: 6e20 e5bc 2500 |008c: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ed32: 0c02 |008f: move-result-object v2 │ │ +42ed34: 1f02 5e0a |0090: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ed38: 2203 d21a |0092: new-instance v3, Lorg/purple/smoke/Settings$12; // type@1ad2 │ │ +42ed3c: 7020 49bc 5300 |0094: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$12;.:(Lorg/purple/smoke/Settings;)V // method@bc49 │ │ +42ed42: 6e20 e258 3200 |0097: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ed48: 1402 c200 087f |009a: const v2, #float 1.80779e+38 // #7f0800c2 │ │ +42ed4e: 6e20 e5bc 2500 |009d: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ed54: 0c02 |00a0: move-result-object v2 │ │ +42ed56: 1f02 5e0a |00a1: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ed5a: 2203 d31a |00a3: new-instance v3, Lorg/purple/smoke/Settings$13; // type@1ad3 │ │ +42ed5e: 7020 4bbc 5300 |00a5: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$13;.:(Lorg/purple/smoke/Settings;)V // method@bc4b │ │ +42ed64: 6e20 e258 3200 |00a8: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ed6a: 1402 da00 087f |00ab: const v2, #float 1.80779e+38 // #7f0800da │ │ +42ed70: 6e20 e5bc 2500 |00ae: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ed76: 0c02 |00b1: move-result-object v2 │ │ +42ed78: 1f02 5e0a |00b2: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ed7c: 2203 d41a |00b4: new-instance v3, Lorg/purple/smoke/Settings$14; // type@1ad4 │ │ +42ed80: 7020 4dbc 5300 |00b6: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$14;.:(Lorg/purple/smoke/Settings;)V // method@bc4d │ │ +42ed86: 6e20 e258 3200 |00b9: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ed8c: 1402 db00 087f |00bc: const v2, #float 1.80779e+38 // #7f0800db │ │ +42ed92: 6e20 e5bc 2500 |00bf: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ed98: 0c02 |00c2: move-result-object v2 │ │ +42ed9a: 1f02 5e0a |00c3: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ed9e: 2203 d51a |00c5: new-instance v3, Lorg/purple/smoke/Settings$15; // type@1ad5 │ │ +42eda2: 7020 4fbc 5300 |00c7: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$15;.:(Lorg/purple/smoke/Settings;)V // method@bc4f │ │ +42eda8: 6e20 e258 3200 |00ca: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42edae: 2202 d61a |00cd: new-instance v2, Lorg/purple/smoke/Settings$16; // type@1ad6 │ │ +42edb2: 7020 51bc 5200 |00cf: invoke-direct {v2, v5}, Lorg/purple/smoke/Settings$16;.:(Lorg/purple/smoke/Settings;)V // method@bc51 │ │ +42edb8: 1403 de00 087f |00d2: const v3, #float 1.8078e+38 // #7f0800de │ │ +42edbe: 6e20 e5bc 3500 |00d5: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42edc4: 0c03 |00d8: move-result-object v3 │ │ +42edc6: 1f03 5e0a |00d9: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ +42edca: 2204 d71a |00db: new-instance v4, Lorg/purple/smoke/Settings$17; // type@1ad7 │ │ +42edce: 7030 53bc 5402 |00dd: invoke-direct {v4, v5, v2}, Lorg/purple/smoke/Settings$17;.:(Lorg/purple/smoke/Settings;Landroid/content/DialogInterface$OnCancelListener;)V // method@bc53 │ │ +42edd4: 6e20 e258 4300 |00e0: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42edda: 1402 e000 087f |00e3: const v2, #float 1.8078e+38 // #7f0800e0 │ │ +42ede0: 6e20 e5bc 2500 |00e6: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ede6: 0c02 |00e9: move-result-object v2 │ │ +42ede8: 1f02 5e0a |00ea: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42edec: 2203 d81a |00ec: new-instance v3, Lorg/purple/smoke/Settings$18; // type@1ad8 │ │ +42edf0: 7020 55bc 5300 |00ee: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$18;.:(Lorg/purple/smoke/Settings;)V // method@bc55 │ │ +42edf6: 6e20 e258 3200 |00f1: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42edfc: 1402 e100 087f |00f4: const v2, #float 1.8078e+38 // #7f0800e1 │ │ +42ee02: 6e20 e5bc 2500 |00f7: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ee08: 0c02 |00fa: move-result-object v2 │ │ +42ee0a: 1f02 5e0a |00fb: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ee0e: 2203 d91a |00fd: new-instance v3, Lorg/purple/smoke/Settings$19; // type@1ad9 │ │ +42ee12: 7020 57bc 5300 |00ff: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$19;.:(Lorg/purple/smoke/Settings;)V // method@bc57 │ │ +42ee18: 6e20 e258 3200 |0102: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ee1e: 2202 dd1a |0105: new-instance v2, Lorg/purple/smoke/Settings$20; // type@1add │ │ +42ee22: 7020 60bc 5200 |0107: invoke-direct {v2, v5}, Lorg/purple/smoke/Settings$20;.:(Lorg/purple/smoke/Settings;)V // method@bc60 │ │ +42ee28: 1403 e600 087f |010a: const v3, #float 1.8078e+38 // #7f0800e6 │ │ +42ee2e: 6e20 e5bc 3500 |010d: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ee34: 0c03 |0110: move-result-object v3 │ │ +42ee36: 1f03 5e0a |0111: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ +42ee3a: 2204 de1a |0113: new-instance v4, Lorg/purple/smoke/Settings$21; // type@1ade │ │ +42ee3e: 7020 62bc 5400 |0115: invoke-direct {v4, v5}, Lorg/purple/smoke/Settings$21;.:(Lorg/purple/smoke/Settings;)V // method@bc62 │ │ +42ee44: 6e20 e258 4300 |0118: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ee4a: 1403 e800 087f |011b: const v3, #float 1.8078e+38 // #7f0800e8 │ │ +42ee50: 6e20 e5bc 3500 |011e: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ee56: 0c03 |0121: move-result-object v3 │ │ +42ee58: 1f03 5e0a |0122: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ +42ee5c: 2204 df1a |0124: new-instance v4, Lorg/purple/smoke/Settings$22; // type@1adf │ │ +42ee60: 7020 64bc 5400 |0126: invoke-direct {v4, v5}, Lorg/purple/smoke/Settings$22;.:(Lorg/purple/smoke/Settings;)V // method@bc64 │ │ +42ee66: 6e20 e258 4300 |0129: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ee6c: 1403 ff00 087f |012c: const v3, #float 1.8078e+38 // #7f0800ff │ │ +42ee72: 6e20 e5bc 3500 |012f: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ee78: 0c03 |0132: move-result-object v3 │ │ +42ee7a: 1f03 5e0a |0133: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ +42ee7e: 2204 e01a |0135: new-instance v4, Lorg/purple/smoke/Settings$23; // type@1ae0 │ │ +42ee82: 7030 66bc 5402 |0137: invoke-direct {v4, v5, v2}, Lorg/purple/smoke/Settings$23;.:(Lorg/purple/smoke/Settings;Landroid/content/DialogInterface$OnCancelListener;)V // method@bc66 │ │ +42ee88: 6e20 e258 4300 |013a: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ee8e: 1402 0201 087f |013d: const v2, #float 1.8078e+38 // #7f080102 │ │ +42ee94: 6e20 e5bc 2500 |0140: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ee9a: 0c02 |0143: move-result-object v2 │ │ +42ee9c: 1f02 5e0a |0144: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42eea0: 2203 e11a |0146: new-instance v3, Lorg/purple/smoke/Settings$24; // type@1ae1 │ │ +42eea4: 7020 68bc 5300 |0148: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$24;.:(Lorg/purple/smoke/Settings;)V // method@bc68 │ │ +42eeaa: 6e20 e258 3200 |014b: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42eeb0: 1402 0901 087f |014e: const v2, #float 1.8078e+38 // #7f080109 │ │ +42eeb6: 6e20 e5bc 2500 |0151: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42eebc: 0c02 |0154: move-result-object v2 │ │ +42eebe: 1f02 5e0a |0155: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42eec2: 2203 e21a |0157: new-instance v3, Lorg/purple/smoke/Settings$25; // type@1ae2 │ │ +42eec6: 7020 6abc 5300 |0159: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$25;.:(Lorg/purple/smoke/Settings;)V // method@bc6a │ │ +42eecc: 6e20 e258 3200 |015c: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42eed2: 1402 0a01 087f |015f: const v2, #float 1.8078e+38 // #7f08010a │ │ +42eed8: 6e20 e5bc 2500 |0162: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42eede: 0c02 |0165: move-result-object v2 │ │ +42eee0: 1f02 5e0a |0166: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42eee4: 2203 e31a |0168: new-instance v3, Lorg/purple/smoke/Settings$26; // type@1ae3 │ │ +42eee8: 7020 6cbc 5300 |016a: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$26;.:(Lorg/purple/smoke/Settings;)V // method@bc6c │ │ +42eeee: 6e20 e258 3200 |016d: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42eef4: 1402 2500 087f |0170: const v2, #float 1.80776e+38 // #7f080025 │ │ +42eefa: 6e20 e5bc 2500 |0173: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ef00: 0c02 |0176: move-result-object v2 │ │ +42ef02: 1f02 8d0a |0177: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42ef06: 2203 e41a |0179: new-instance v3, Lorg/purple/smoke/Settings$27; // type@1ae4 │ │ +42ef0a: 7020 6ebc 5300 |017b: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$27;.:(Lorg/purple/smoke/Settings;)V // method@bc6e │ │ +42ef10: 6e20 e25a 3200 |017e: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +42ef16: 1402 2c00 087f |0181: const v2, #float 1.80776e+38 // #7f08002c │ │ +42ef1c: 6e20 e5bc 2500 |0184: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ef22: 0c02 |0187: move-result-object v2 │ │ +42ef24: 1f02 8d0a |0188: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42ef28: 2203 e51a |018a: new-instance v3, Lorg/purple/smoke/Settings$28; // type@1ae5 │ │ +42ef2c: 7020 70bc 5300 |018c: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$28;.:(Lorg/purple/smoke/Settings;)V // method@bc70 │ │ +42ef32: 6e20 e25a 3200 |018f: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +42ef38: 1402 5c00 087f |0192: const v2, #float 1.80777e+38 // #7f08005c │ │ +42ef3e: 6e20 e5bc 2500 |0195: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ef44: 0c02 |0198: move-result-object v2 │ │ +42ef46: 1f02 8d0a |0199: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42ef4a: 2203 e61a |019b: new-instance v3, Lorg/purple/smoke/Settings$29; // type@1ae6 │ │ +42ef4e: 7020 72bc 5300 |019d: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$29;.:(Lorg/purple/smoke/Settings;)V // method@bc72 │ │ +42ef54: 6e20 e25a 3200 |01a0: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +42ef5a: 1402 7300 087f |01a3: const v2, #float 1.80777e+38 // #7f080073 │ │ +42ef60: 6e20 e5bc 2500 |01a6: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ef66: 0c02 |01a9: move-result-object v2 │ │ +42ef68: 1f02 8d0a |01aa: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42ef6c: 2203 eb1a |01ac: new-instance v3, Lorg/purple/smoke/Settings$30; // type@1aeb │ │ +42ef70: 7020 7dbc 5300 |01ae: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$30;.:(Lorg/purple/smoke/Settings;)V // method@bc7d │ │ +42ef76: 6e20 e25a 3200 |01b1: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +42ef7c: 1402 a600 087f |01b4: const v2, #float 1.80778e+38 // #7f0800a6 │ │ +42ef82: 6e20 e5bc 2500 |01b7: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42ef88: 0c02 |01ba: move-result-object v2 │ │ +42ef8a: 1f02 8d0a |01bb: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42ef8e: 2203 ec1a |01bd: new-instance v3, Lorg/purple/smoke/Settings$31; // type@1aec │ │ +42ef92: 7020 7fbc 5300 |01bf: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$31;.:(Lorg/purple/smoke/Settings;)V // method@bc7f │ │ +42ef98: 6e20 e25a 3200 |01c2: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +42ef9e: 1402 b600 087f |01c5: const v2, #float 1.80779e+38 // #7f0800b6 │ │ +42efa4: 6e20 e5bc 2500 |01c8: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42efaa: 0c02 |01cb: move-result-object v2 │ │ +42efac: 1f02 8d0a |01cc: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42efb0: 2203 ed1a |01ce: new-instance v3, Lorg/purple/smoke/Settings$32; // type@1aed │ │ +42efb4: 7020 81bc 5300 |01d0: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$32;.:(Lorg/purple/smoke/Settings;)V // method@bc81 │ │ +42efba: 6e20 e25a 3200 |01d3: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +42efc0: 1402 d500 087f |01d6: const v2, #float 1.80779e+38 // #7f0800d5 │ │ +42efc6: 6e20 e5bc 2500 |01d9: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42efcc: 0c02 |01dc: move-result-object v2 │ │ +42efce: 1f02 8d0a |01dd: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42efd2: 2203 ee1a |01df: new-instance v3, Lorg/purple/smoke/Settings$33; // type@1aee │ │ +42efd6: 7020 83bc 5300 |01e1: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$33;.:(Lorg/purple/smoke/Settings;)V // method@bc83 │ │ +42efdc: 6e20 e25a 3200 |01e4: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +42efe2: 1402 0801 087f |01e7: const v2, #float 1.8078e+38 // #7f080108 │ │ +42efe8: 6e20 e5bc 2500 |01ea: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42efee: 0c02 |01ed: move-result-object v2 │ │ +42eff0: 1f02 8d0a |01ee: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42eff4: 2203 ef1a |01f0: new-instance v3, Lorg/purple/smoke/Settings$34; // type@1aef │ │ +42eff8: 7020 85bc 5300 |01f2: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$34;.:(Lorg/purple/smoke/Settings;)V // method@bc85 │ │ +42effe: 6e20 e25a 3200 |01f5: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +42f004: 1402 0c01 087f |01f8: const v2, #float 1.8078e+38 // #7f08010c │ │ +42f00a: 6e20 e5bc 2500 |01fb: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42f010: 0c02 |01fe: move-result-object v2 │ │ +42f012: 1f02 8d0a |01ff: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42f016: 2203 f01a |0201: new-instance v3, Lorg/purple/smoke/Settings$35; // type@1af0 │ │ +42f01a: 7020 87bc 5300 |0203: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$35;.:(Lorg/purple/smoke/Settings;)V // method@bc87 │ │ +42f020: 6e20 e25a 3200 |0206: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +42f026: 2202 f11a |0209: new-instance v2, Lorg/purple/smoke/Settings$36; // type@1af1 │ │ +42f02a: 7020 89bc 5200 |020b: invoke-direct {v2, v5}, Lorg/purple/smoke/Settings$36;.:(Lorg/purple/smoke/Settings;)V // method@bc89 │ │ +42f030: 6e20 c95a 2000 |020e: invoke-virtual {v0, v2}, Landroid/widget/Spinner;.setOnItemSelectedListener:(Landroid/widget/AdapterView$OnItemSelectedListener;)V // method@5ac9 │ │ +42f036: 2200 f21a |0211: new-instance v0, Lorg/purple/smoke/Settings$37; // type@1af2 │ │ +42f03a: 7020 8cbc 5000 |0213: invoke-direct {v0, v5}, Lorg/purple/smoke/Settings$37;.:(Lorg/purple/smoke/Settings;)V // method@bc8c │ │ +42f040: 6e20 025b 0100 |0216: invoke-virtual {v1, v0}, Landroid/widget/TextView;.addTextChangedListener:(Landroid/text/TextWatcher;)V // method@5b02 │ │ +42f046: 0e00 |0219: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=1652 │ │ 0x000c line=1654 │ │ 0x0015 line=1656 │ │ 0x001b line=1657 │ │ 0x0026 line=1668 │ │ @@ -1571657,62 +1571656,62 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 10 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 96 16-bit code units │ │ -42f04c: |[42f04c] org.purple.smoke.Settings.preparePKI:()V │ │ -42f05c: 6e10 efbc 0900 |0000: invoke-virtual {v9}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ -42f062: 0a00 |0003: move-result v0 │ │ -42f064: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -42f068: 0e00 |0006: return-void │ │ -42f06a: 1400 7500 087f |0007: const v0, #float 1.80777e+38 // #7f080075 │ │ -42f070: 6e20 e5bc 0900 |000a: invoke-virtual {v9, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42f076: 0c00 |000d: move-result-object v0 │ │ -42f078: 0705 |000e: move-object v5, v0 │ │ -42f07a: 1f05 7c0a |000f: check-cast v5, Landroid/widget/ProgressBar; // type@0a7c │ │ -42f07e: 1400 ca00 087f |0011: const v0, #float 1.80779e+38 // #7f0800ca │ │ -42f084: 6e20 e5bc 0900 |0014: invoke-virtual {v9, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42f08a: 0c00 |0017: move-result-object v0 │ │ -42f08c: 0706 |0018: move-object v6, v0 │ │ -42f08e: 1f06 8b0a |0019: check-cast v6, Landroid/widget/Spinner; // type@0a8b │ │ -42f092: 1400 cc00 087f |001b: const v0, #float 1.80779e+38 // #7f0800cc │ │ -42f098: 6e20 e5bc 0900 |001e: invoke-virtual {v9, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42f09e: 0c00 |0021: move-result-object v0 │ │ -42f0a0: 0707 |0022: move-object v7, v0 │ │ -42f0a2: 1f07 8b0a |0023: check-cast v7, Landroid/widget/Spinner; // type@0a8b │ │ -42f0a6: 1210 |0025: const/4 v0, #int 1 // #1 │ │ -42f0a8: 6e20 5a5a 0500 |0026: invoke-virtual {v5, v0}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ -42f0ae: 1200 |0029: const/4 v0, #int 0 // #0 │ │ -42f0b0: 6e20 5f5a 0500 |002a: invoke-virtual {v5, v0}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42f0b6: 6e10 edbc 0900 |002d: invoke-virtual {v9}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ -42f0bc: 0c01 |0030: move-result-object v1 │ │ -42f0be: 1302 1000 |0031: const/16 v2, #int 16 // #10 │ │ -42f0c2: 6e30 9057 2102 |0033: invoke-virtual {v1, v2, v2}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ -42f0c8: 1401 9200 087f |0036: const v1, #float 1.80778e+38 // #7f080092 │ │ -42f0ce: 6e20 e5bc 1900 |0039: invoke-virtual {v9, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42f0d4: 0c01 |003c: move-result-object v1 │ │ -42f0d6: 7120 e6bb 0100 |003d: invoke-static {v1, v0}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ -42f0dc: 2200 f40a |0040: new-instance v0, Ljava/lang/Thread; // type@0af4 │ │ -42f0e0: 2208 fb1a |0042: new-instance v8, Lorg/purple/smoke/Settings$4SingleShot; // type@1afb │ │ -42f0e4: 6e10 ba5a 0600 |0044: invoke-virtual {v6}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -42f0ea: 0c01 |0047: move-result-object v1 │ │ -42f0ec: 6e10 965c 0100 |0048: invoke-virtual {v1}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -42f0f2: 0c03 |004b: move-result-object v3 │ │ -42f0f4: 6e10 ba5a 0700 |004c: invoke-virtual {v7}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -42f0fa: 0c01 |004f: move-result-object v1 │ │ -42f0fc: 6e10 965c 0100 |0050: invoke-virtual {v1}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -42f102: 0c04 |0053: move-result-object v4 │ │ -42f104: 0781 |0054: move-object v1, v8 │ │ -42f106: 0792 |0055: move-object v2, v9 │ │ -42f108: 7607 a2bc 0100 |0056: invoke-direct/range {v1, v2, v3, v4, v5, v6, v7}, Lorg/purple/smoke/Settings$4SingleShot;.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Ljava/lang/String;Landroid/widget/ProgressBar;Landroid/widget/Spinner;Landroid/widget/Spinner;)V // method@bca2 │ │ -42f10e: 7020 0e5d 8000 |0059: invoke-direct {v0, v8}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ -42f114: 6e10 195d 0000 |005c: invoke-virtual {v0}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ -42f11a: 0e00 |005f: return-void │ │ +42f048: |[42f048] org.purple.smoke.Settings.preparePKI:()V │ │ +42f058: 6e10 efbc 0900 |0000: invoke-virtual {v9}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ +42f05e: 0a00 |0003: move-result v0 │ │ +42f060: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +42f064: 0e00 |0006: return-void │ │ +42f066: 1400 7500 087f |0007: const v0, #float 1.80777e+38 // #7f080075 │ │ +42f06c: 6e20 e5bc 0900 |000a: invoke-virtual {v9, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42f072: 0c00 |000d: move-result-object v0 │ │ +42f074: 0705 |000e: move-object v5, v0 │ │ +42f076: 1f05 7c0a |000f: check-cast v5, Landroid/widget/ProgressBar; // type@0a7c │ │ +42f07a: 1400 ca00 087f |0011: const v0, #float 1.80779e+38 // #7f0800ca │ │ +42f080: 6e20 e5bc 0900 |0014: invoke-virtual {v9, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42f086: 0c00 |0017: move-result-object v0 │ │ +42f088: 0706 |0018: move-object v6, v0 │ │ +42f08a: 1f06 8b0a |0019: check-cast v6, Landroid/widget/Spinner; // type@0a8b │ │ +42f08e: 1400 cc00 087f |001b: const v0, #float 1.80779e+38 // #7f0800cc │ │ +42f094: 6e20 e5bc 0900 |001e: invoke-virtual {v9, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42f09a: 0c00 |0021: move-result-object v0 │ │ +42f09c: 0707 |0022: move-object v7, v0 │ │ +42f09e: 1f07 8b0a |0023: check-cast v7, Landroid/widget/Spinner; // type@0a8b │ │ +42f0a2: 1210 |0025: const/4 v0, #int 1 // #1 │ │ +42f0a4: 6e20 5a5a 0500 |0026: invoke-virtual {v5, v0}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ +42f0aa: 1200 |0029: const/4 v0, #int 0 // #0 │ │ +42f0ac: 6e20 5f5a 0500 |002a: invoke-virtual {v5, v0}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42f0b2: 6e10 edbc 0900 |002d: invoke-virtual {v9}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ +42f0b8: 0c01 |0030: move-result-object v1 │ │ +42f0ba: 1302 1000 |0031: const/16 v2, #int 16 // #10 │ │ +42f0be: 6e30 9057 2102 |0033: invoke-virtual {v1, v2, v2}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ +42f0c4: 1401 9200 087f |0036: const v1, #float 1.80778e+38 // #7f080092 │ │ +42f0ca: 6e20 e5bc 1900 |0039: invoke-virtual {v9, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42f0d0: 0c01 |003c: move-result-object v1 │ │ +42f0d2: 7120 e6bb 0100 |003d: invoke-static {v1, v0}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ +42f0d8: 2200 f40a |0040: new-instance v0, Ljava/lang/Thread; // type@0af4 │ │ +42f0dc: 2208 fb1a |0042: new-instance v8, Lorg/purple/smoke/Settings$4SingleShot; // type@1afb │ │ +42f0e0: 6e10 ba5a 0600 |0044: invoke-virtual {v6}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +42f0e6: 0c01 |0047: move-result-object v1 │ │ +42f0e8: 6e10 965c 0100 |0048: invoke-virtual {v1}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +42f0ee: 0c03 |004b: move-result-object v3 │ │ +42f0f0: 6e10 ba5a 0700 |004c: invoke-virtual {v7}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +42f0f6: 0c01 |004f: move-result-object v1 │ │ +42f0f8: 6e10 965c 0100 |0050: invoke-virtual {v1}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +42f0fe: 0c04 |0053: move-result-object v4 │ │ +42f100: 0781 |0054: move-object v1, v8 │ │ +42f102: 0792 |0055: move-object v2, v9 │ │ +42f104: 7607 a2bc 0100 |0056: invoke-direct/range {v1, v2, v3, v4, v5, v6, v7}, Lorg/purple/smoke/Settings$4SingleShot;.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Ljava/lang/String;Landroid/widget/ProgressBar;Landroid/widget/Spinner;Landroid/widget/Spinner;)V // method@bca2 │ │ +42f10a: 7020 0e5d 8000 |0059: invoke-direct {v0, v8}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ +42f110: 6e10 195d 0000 |005c: invoke-virtual {v0}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ +42f116: 0e00 |005f: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2539 │ │ 0x000a line=2543 │ │ 0x0014 line=2545 │ │ 0x001e line=2547 │ │ 0x0026 line=2549 │ │ @@ -1571731,17 +1571730,17 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -42f11c: |[42f11c] org.purple.smoke.Settings.releaseResources:()V │ │ -42f12c: 7010 15bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.stopTimers:()V // method@bd15 │ │ -42f132: 0e00 |0003: return-void │ │ +42f118: |[42f118] org.purple.smoke.Settings.releaseResources:()V │ │ +42f128: 7010 15bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.stopTimers:()V // method@bd15 │ │ +42f12e: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2744 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lorg/purple/smoke/Settings; │ │ │ │ #41 : (in Lorg/purple/smoke/Settings;) │ │ @@ -1571749,41 +1571748,41 @@ │ │ type : '(Ljava/lang/String;)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 57 16-bit code units │ │ -42f134: |[42f134] org.purple.smoke.Settings.requestKeysOf:(Ljava/lang/String;)V │ │ -42f144: 6e10 efbc 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ -42f14a: 0a00 |0003: move-result v0 │ │ -42f14c: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -42f150: 0e00 |0006: return-void │ │ -42f152: 1400 0101 087f |0007: const v0, #float 1.8078e+38 // #7f080101 │ │ -42f158: 6e20 e5bc 0400 |000a: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42f15e: 0c00 |000d: move-result-object v0 │ │ -42f160: 1f00 7c0a |000e: check-cast v0, Landroid/widget/ProgressBar; // type@0a7c │ │ -42f164: 1211 |0010: const/4 v1, #int 1 // #1 │ │ -42f166: 6e20 5a5a 1000 |0011: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ -42f16c: 1201 |0014: const/4 v1, #int 0 // #0 │ │ -42f16e: 6e20 5f5a 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42f174: 6e10 edbc 0400 |0018: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ -42f17a: 0c02 |001b: move-result-object v2 │ │ -42f17c: 1303 1000 |001c: const/16 v3, #int 16 // #10 │ │ -42f180: 6e30 9057 3203 |001e: invoke-virtual {v2, v3, v3}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ -42f186: 1402 9200 087f |0021: const v2, #float 1.80778e+38 // #7f080092 │ │ -42f18c: 6e20 e5bc 2400 |0024: invoke-virtual {v4, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42f192: 0c02 |0027: move-result-object v2 │ │ -42f194: 7120 e6bb 1200 |0028: invoke-static {v2, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ -42f19a: 2201 f40a |002b: new-instance v1, Ljava/lang/Thread; // type@0af4 │ │ -42f19e: 2202 fe1a |002d: new-instance v2, Lorg/purple/smoke/Settings$5SingleShot; // type@1afe │ │ -42f1a2: 7040 a9bc 4205 |002f: invoke-direct {v2, v4, v5, v0}, Lorg/purple/smoke/Settings$5SingleShot;.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V // method@bca9 │ │ -42f1a8: 7020 0e5d 2100 |0032: invoke-direct {v1, v2}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ -42f1ae: 6e10 195d 0100 |0035: invoke-virtual {v1}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ -42f1b4: 0e00 |0038: return-void │ │ +42f130: |[42f130] org.purple.smoke.Settings.requestKeysOf:(Ljava/lang/String;)V │ │ +42f140: 6e10 efbc 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ +42f146: 0a00 |0003: move-result v0 │ │ +42f148: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +42f14c: 0e00 |0006: return-void │ │ +42f14e: 1400 0101 087f |0007: const v0, #float 1.8078e+38 // #7f080101 │ │ +42f154: 6e20 e5bc 0400 |000a: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42f15a: 0c00 |000d: move-result-object v0 │ │ +42f15c: 1f00 7c0a |000e: check-cast v0, Landroid/widget/ProgressBar; // type@0a7c │ │ +42f160: 1211 |0010: const/4 v1, #int 1 // #1 │ │ +42f162: 6e20 5a5a 1000 |0011: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ +42f168: 1201 |0014: const/4 v1, #int 0 // #0 │ │ +42f16a: 6e20 5f5a 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42f170: 6e10 edbc 0400 |0018: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ +42f176: 0c02 |001b: move-result-object v2 │ │ +42f178: 1303 1000 |001c: const/16 v3, #int 16 // #10 │ │ +42f17c: 6e30 9057 3203 |001e: invoke-virtual {v2, v3, v3}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ +42f182: 1402 9200 087f |0021: const v2, #float 1.80778e+38 // #7f080092 │ │ +42f188: 6e20 e5bc 2400 |0024: invoke-virtual {v4, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42f18e: 0c02 |0027: move-result-object v2 │ │ +42f190: 7120 e6bb 1200 |0028: invoke-static {v2, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ +42f196: 2201 f40a |002b: new-instance v1, Ljava/lang/Thread; // type@0af4 │ │ +42f19a: 2202 fe1a |002d: new-instance v2, Lorg/purple/smoke/Settings$5SingleShot; // type@1afe │ │ +42f19e: 7040 a9bc 4205 |002f: invoke-direct {v2, v4, v5, v0}, Lorg/purple/smoke/Settings$5SingleShot;.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V // method@bca9 │ │ +42f1a4: 7020 0e5d 2100 |0032: invoke-direct {v1, v2}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ +42f1aa: 6e10 195d 0100 |0035: invoke-virtual {v1}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ +42f1b0: 0e00 |0038: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2749 │ │ 0x000a line=2753 │ │ 0x0011 line=2755 │ │ 0x0015 line=2756 │ │ 0x0018 line=2757 │ │ @@ -1571799,41 +1571798,41 @@ │ │ type : '(Ljava/lang/String;)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 57 16-bit code units │ │ -42f1b8: |[42f1b8] org.purple.smoke.Settings.shareKeysOf:(Ljava/lang/String;)V │ │ -42f1c8: 6e10 efbc 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ -42f1ce: 0a00 |0003: move-result v0 │ │ -42f1d0: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -42f1d4: 0e00 |0006: return-void │ │ -42f1d6: 1400 0101 087f |0007: const v0, #float 1.8078e+38 // #7f080101 │ │ -42f1dc: 6e20 e5bc 0400 |000a: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42f1e2: 0c00 |000d: move-result-object v0 │ │ -42f1e4: 1f00 7c0a |000e: check-cast v0, Landroid/widget/ProgressBar; // type@0a7c │ │ -42f1e8: 1211 |0010: const/4 v1, #int 1 // #1 │ │ -42f1ea: 6e20 5a5a 1000 |0011: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ -42f1f0: 1201 |0014: const/4 v1, #int 0 // #0 │ │ -42f1f2: 6e20 5f5a 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42f1f8: 6e10 edbc 0400 |0018: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ -42f1fe: 0c02 |001b: move-result-object v2 │ │ -42f200: 1303 1000 |001c: const/16 v3, #int 16 // #10 │ │ -42f204: 6e30 9057 3203 |001e: invoke-virtual {v2, v3, v3}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ -42f20a: 1402 9200 087f |0021: const v2, #float 1.80778e+38 // #7f080092 │ │ -42f210: 6e20 e5bc 2400 |0024: invoke-virtual {v4, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42f216: 0c02 |0027: move-result-object v2 │ │ -42f218: 7120 e6bb 1200 |0028: invoke-static {v2, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ -42f21e: 2201 f40a |002b: new-instance v1, Ljava/lang/Thread; // type@0af4 │ │ -42f222: 2202 011b |002d: new-instance v2, Lorg/purple/smoke/Settings$6SingleShot; // type@1b01 │ │ -42f226: 7040 b0bc 4205 |002f: invoke-direct {v2, v4, v5, v0}, Lorg/purple/smoke/Settings$6SingleShot;.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V // method@bcb0 │ │ -42f22c: 7020 0e5d 2100 |0032: invoke-direct {v1, v2}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ -42f232: 6e10 195d 0100 |0035: invoke-virtual {v1}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ -42f238: 0e00 |0038: return-void │ │ +42f1b4: |[42f1b4] org.purple.smoke.Settings.shareKeysOf:(Ljava/lang/String;)V │ │ +42f1c4: 6e10 efbc 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ +42f1ca: 0a00 |0003: move-result v0 │ │ +42f1cc: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +42f1d0: 0e00 |0006: return-void │ │ +42f1d2: 1400 0101 087f |0007: const v0, #float 1.8078e+38 // #7f080101 │ │ +42f1d8: 6e20 e5bc 0400 |000a: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42f1de: 0c00 |000d: move-result-object v0 │ │ +42f1e0: 1f00 7c0a |000e: check-cast v0, Landroid/widget/ProgressBar; // type@0a7c │ │ +42f1e4: 1211 |0010: const/4 v1, #int 1 // #1 │ │ +42f1e6: 6e20 5a5a 1000 |0011: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ +42f1ec: 1201 |0014: const/4 v1, #int 0 // #0 │ │ +42f1ee: 6e20 5f5a 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42f1f4: 6e10 edbc 0400 |0018: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ +42f1fa: 0c02 |001b: move-result-object v2 │ │ +42f1fc: 1303 1000 |001c: const/16 v3, #int 16 // #10 │ │ +42f200: 6e30 9057 3203 |001e: invoke-virtual {v2, v3, v3}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ +42f206: 1402 9200 087f |0021: const v2, #float 1.80778e+38 // #7f080092 │ │ +42f20c: 6e20 e5bc 2400 |0024: invoke-virtual {v4, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42f212: 0c02 |0027: move-result-object v2 │ │ +42f214: 7120 e6bb 1200 |0028: invoke-static {v2, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ +42f21a: 2201 f40a |002b: new-instance v1, Ljava/lang/Thread; // type@0af4 │ │ +42f21e: 2202 011b |002d: new-instance v2, Lorg/purple/smoke/Settings$6SingleShot; // type@1b01 │ │ +42f222: 7040 b0bc 4205 |002f: invoke-direct {v2, v4, v5, v0}, Lorg/purple/smoke/Settings$6SingleShot;.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V // method@bcb0 │ │ +42f228: 7020 0e5d 2100 |0032: invoke-direct {v1, v2}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ +42f22e: 6e10 195d 0100 |0035: invoke-virtual {v1}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ +42f234: 0e00 |0038: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2823 │ │ 0x000a line=2827 │ │ 0x0011 line=2829 │ │ 0x0015 line=2830 │ │ 0x0018 line=2831 │ │ @@ -1571849,30 +1571848,30 @@ │ │ type : '(I)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 29 16-bit code units │ │ -42f23c: |[42f23c] org.purple.smoke.Settings.shareSipHashId:(I)V │ │ -42f24c: 6e10 efbc 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ -42f252: 0a00 |0003: move-result v0 │ │ -42f254: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -42f258: 0e00 |0006: return-void │ │ -42f25a: 6200 0a5f |0007: sget-object v0, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42f25e: 6e10 8eb9 0000 |0009: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.hasValidOzoneKeys:()Z // method@b98e │ │ -42f264: 0a00 |000c: move-result v0 │ │ -42f266: 3900 0800 |000d: if-nez v0, 0015 // +0008 │ │ -42f26a: 1a02 da44 |000f: const-string v2, "Please prepare Ozone credentials." // string@44da │ │ -42f26e: 7120 f5bb 2100 |0011: invoke-static {v1, v2}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ -42f274: 0e00 |0014: return-void │ │ -42f276: 7100 0bbb 0000 |0015: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -42f27c: 0c00 |0018: move-result-object v0 │ │ -42f27e: 6e20 07bb 2000 |0019: invoke-virtual {v0, v2}, Lorg/purple/smoke/Kernel;.enqueueShareSipHashIdMessage:(I)V // method@bb07 │ │ -42f284: 0e00 |001c: return-void │ │ +42f238: |[42f238] org.purple.smoke.Settings.shareSipHashId:(I)V │ │ +42f248: 6e10 efbc 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ +42f24e: 0a00 |0003: move-result v0 │ │ +42f250: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +42f254: 0e00 |0006: return-void │ │ +42f256: 6200 0a5f |0007: sget-object v0, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42f25a: 6e10 8eb9 0000 |0009: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.hasValidOzoneKeys:()Z // method@b98e │ │ +42f260: 0a00 |000c: move-result v0 │ │ +42f262: 3900 0800 |000d: if-nez v0, 0015 // +0008 │ │ +42f266: 1a02 da44 |000f: const-string v2, "Please prepare Ozone credentials." // string@44da │ │ +42f26a: 7120 f5bb 2100 |0011: invoke-static {v1, v2}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbf5 │ │ +42f270: 0e00 |0014: return-void │ │ +42f272: 7100 0bbb 0000 |0015: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +42f278: 0c00 |0018: move-result-object v0 │ │ +42f27a: 6e20 07bb 2000 |0019: invoke-virtual {v0, v2}, Lorg/purple/smoke/Kernel;.enqueueShareSipHashIdMessage:(I)V // method@bb07 │ │ +42f280: 0e00 |001c: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2902 │ │ 0x0007 line=2904 │ │ 0x0011 line=2907 │ │ 0x0015 line=2911 │ │ locals : │ │ @@ -1571884,21 +1571883,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -42f288: |[42f288] org.purple.smoke.Settings.showAuthenticateActivity:()V │ │ -42f298: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -42f29c: 1c01 481a |0002: const-class v1, Lorg/purple/smoke/Authenticate; // type@1a48 │ │ -42f2a0: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -42f2a6: 6e20 12bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd12 │ │ -42f2ac: 6e10 e6bc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bce6 │ │ -42f2b2: 0e00 |000d: return-void │ │ +42f284: |[42f284] org.purple.smoke.Settings.showAuthenticateActivity:()V │ │ +42f294: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +42f298: 1c01 481a |0002: const-class v1, Lorg/purple/smoke/Authenticate; // type@1a48 │ │ +42f29c: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +42f2a2: 6e20 12bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd12 │ │ +42f2a8: 6e10 e6bc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bce6 │ │ +42f2ae: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2916 │ │ 0x0007 line=2918 │ │ 0x000a line=2919 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Settings; │ │ @@ -1571908,21 +1571907,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -42f2b4: |[42f2b4] org.purple.smoke.Settings.showChatActivity:()V │ │ -42f2c4: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -42f2c8: 1c01 5a1a |0002: const-class v1, Lorg/purple/smoke/Chat; // type@1a5a │ │ -42f2cc: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -42f2d2: 6e20 12bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd12 │ │ -42f2d8: 6e10 e6bc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bce6 │ │ -42f2de: 0e00 |000d: return-void │ │ +42f2b0: |[42f2b0] org.purple.smoke.Settings.showChatActivity:()V │ │ +42f2c0: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +42f2c4: 1c01 5a1a |0002: const-class v1, Lorg/purple/smoke/Chat; // type@1a5a │ │ +42f2c8: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +42f2ce: 6e20 12bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd12 │ │ +42f2d4: 6e10 e6bc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bce6 │ │ +42f2da: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2924 │ │ 0x0007 line=2926 │ │ 0x000a line=2927 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Settings; │ │ @@ -1571932,41 +1571931,41 @@ │ │ type : '(Ljava/lang/String;)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 57 16-bit code units │ │ -42f2e0: |[42f2e0] org.purple.smoke.Settings.showDetailsOfParticipant:(Ljava/lang/String;)V │ │ -42f2f0: 6e10 efbc 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ -42f2f6: 0a00 |0003: move-result v0 │ │ -42f2f8: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -42f2fc: 0e00 |0006: return-void │ │ -42f2fe: 1400 0101 087f |0007: const v0, #float 1.8078e+38 // #7f080101 │ │ -42f304: 6e20 e5bc 0400 |000a: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42f30a: 0c00 |000d: move-result-object v0 │ │ -42f30c: 1f00 7c0a |000e: check-cast v0, Landroid/widget/ProgressBar; // type@0a7c │ │ -42f310: 1211 |0010: const/4 v1, #int 1 // #1 │ │ -42f312: 6e20 5a5a 1000 |0011: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ -42f318: 1201 |0014: const/4 v1, #int 0 // #0 │ │ -42f31a: 6e20 5f5a 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42f320: 6e10 edbc 0400 |0018: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ -42f326: 0c02 |001b: move-result-object v2 │ │ -42f328: 1303 1000 |001c: const/16 v3, #int 16 // #10 │ │ -42f32c: 6e30 9057 3203 |001e: invoke-virtual {v2, v3, v3}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ -42f332: 1402 9200 087f |0021: const v2, #float 1.80778e+38 // #7f080092 │ │ -42f338: 6e20 e5bc 2400 |0024: invoke-virtual {v4, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42f33e: 0c02 |0027: move-result-object v2 │ │ -42f340: 7120 e6bb 1200 |0028: invoke-static {v2, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ -42f346: 2201 f40a |002b: new-instance v1, Ljava/lang/Thread; // type@0af4 │ │ -42f34a: 2202 041b |002d: new-instance v2, Lorg/purple/smoke/Settings$7SingleShot; // type@1b04 │ │ -42f34e: 7040 b7bc 4205 |002f: invoke-direct {v2, v4, v5, v0}, Lorg/purple/smoke/Settings$7SingleShot;.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V // method@bcb7 │ │ -42f354: 7020 0e5d 2100 |0032: invoke-direct {v1, v2}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ -42f35a: 6e10 195d 0100 |0035: invoke-virtual {v1}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ -42f360: 0e00 |0038: return-void │ │ +42f2dc: |[42f2dc] org.purple.smoke.Settings.showDetailsOfParticipant:(Ljava/lang/String;)V │ │ +42f2ec: 6e10 efbc 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcef │ │ +42f2f2: 0a00 |0003: move-result v0 │ │ +42f2f4: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +42f2f8: 0e00 |0006: return-void │ │ +42f2fa: 1400 0101 087f |0007: const v0, #float 1.8078e+38 // #7f080101 │ │ +42f300: 6e20 e5bc 0400 |000a: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42f306: 0c00 |000d: move-result-object v0 │ │ +42f308: 1f00 7c0a |000e: check-cast v0, Landroid/widget/ProgressBar; // type@0a7c │ │ +42f30c: 1211 |0010: const/4 v1, #int 1 // #1 │ │ +42f30e: 6e20 5a5a 1000 |0011: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ +42f314: 1201 |0014: const/4 v1, #int 0 // #0 │ │ +42f316: 6e20 5f5a 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42f31c: 6e10 edbc 0400 |0018: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bced │ │ +42f322: 0c02 |001b: move-result-object v2 │ │ +42f324: 1303 1000 |001c: const/16 v3, #int 16 // #10 │ │ +42f328: 6e30 9057 3203 |001e: invoke-virtual {v2, v3, v3}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ +42f32e: 1402 9200 087f |0021: const v2, #float 1.80778e+38 // #7f080092 │ │ +42f334: 6e20 e5bc 2400 |0024: invoke-virtual {v4, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42f33a: 0c02 |0027: move-result-object v2 │ │ +42f33c: 7120 e6bb 1200 |0028: invoke-static {v2, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbe6 │ │ +42f342: 2201 f40a |002b: new-instance v1, Ljava/lang/Thread; // type@0af4 │ │ +42f346: 2202 041b |002d: new-instance v2, Lorg/purple/smoke/Settings$7SingleShot; // type@1b04 │ │ +42f34a: 7040 b7bc 4205 |002f: invoke-direct {v2, v4, v5, v0}, Lorg/purple/smoke/Settings$7SingleShot;.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V // method@bcb7 │ │ +42f350: 7020 0e5d 2100 |0032: invoke-direct {v1, v2}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ +42f356: 6e10 195d 0100 |0035: invoke-virtual {v1}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ +42f35c: 0e00 |0038: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2932 │ │ 0x000a line=2936 │ │ 0x0011 line=2938 │ │ 0x0015 line=2939 │ │ 0x0018 line=2940 │ │ @@ -1571982,21 +1571981,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -42f364: |[42f364] org.purple.smoke.Settings.showFireActivity:()V │ │ -42f374: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -42f378: 1c01 751a |0002: const-class v1, Lorg/purple/smoke/Fire; // type@1a75 │ │ -42f37c: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -42f382: 6e20 12bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd12 │ │ -42f388: 6e10 e6bc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bce6 │ │ -42f38e: 0e00 |000d: return-void │ │ +42f360: |[42f360] org.purple.smoke.Settings.showFireActivity:()V │ │ +42f370: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +42f374: 1c01 751a |0002: const-class v1, Lorg/purple/smoke/Fire; // type@1a75 │ │ +42f378: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +42f37e: 6e20 12bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd12 │ │ +42f384: 6e10 e6bc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bce6 │ │ +42f38a: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3127 │ │ 0x0007 line=3129 │ │ 0x000a line=3130 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Settings; │ │ @@ -1572006,21 +1572005,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -42f390: |[42f390] org.purple.smoke.Settings.showMemberChatActivity:()V │ │ -42f3a0: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -42f3a4: 1c01 a61a |0002: const-class v1, Lorg/purple/smoke/MemberChat; // type@1aa6 │ │ -42f3a8: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -42f3ae: 6e20 12bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd12 │ │ -42f3b4: 6e10 e6bc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bce6 │ │ -42f3ba: 0e00 |000d: return-void │ │ +42f38c: |[42f38c] org.purple.smoke.Settings.showMemberChatActivity:()V │ │ +42f39c: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +42f3a0: 1c01 a61a |0002: const-class v1, Lorg/purple/smoke/MemberChat; // type@1aa6 │ │ +42f3a4: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +42f3aa: 6e20 12bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd12 │ │ +42f3b0: 6e10 e6bc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bce6 │ │ +42f3b6: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3135 │ │ 0x0007 line=3137 │ │ 0x000a line=3138 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Settings; │ │ @@ -1572030,21 +1572029,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -42f3bc: |[42f3bc] org.purple.smoke.Settings.showSmokescreenActivity:()V │ │ -42f3cc: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -42f3d0: 1c01 131b |0002: const-class v1, Lorg/purple/smoke/Smokescreen; // type@1b13 │ │ -42f3d4: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -42f3da: 6e20 12bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd12 │ │ -42f3e0: 6e10 e6bc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bce6 │ │ -42f3e6: 0e00 |000d: return-void │ │ +42f3b8: |[42f3b8] org.purple.smoke.Settings.showSmokescreenActivity:()V │ │ +42f3c8: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +42f3cc: 1c01 131b |0002: const-class v1, Lorg/purple/smoke/Smokescreen; // type@1b13 │ │ +42f3d0: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +42f3d6: 6e20 12bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd12 │ │ +42f3dc: 6e10 e6bc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bce6 │ │ +42f3e2: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3143 │ │ 0x0007 line=3145 │ │ 0x000a line=3146 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Settings; │ │ @@ -1572054,21 +1572053,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -42f3e8: |[42f3e8] org.purple.smoke.Settings.showSteamActivity:()V │ │ -42f3f8: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -42f3fc: 1c01 201b |0002: const-class v1, Lorg/purple/smoke/Steam; // type@1b20 │ │ -42f400: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -42f406: 6e20 12bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd12 │ │ -42f40c: 6e10 e6bc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bce6 │ │ -42f412: 0e00 |000d: return-void │ │ +42f3e4: |[42f3e4] org.purple.smoke.Settings.showSteamActivity:()V │ │ +42f3f4: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +42f3f8: 1c01 201b |0002: const-class v1, Lorg/purple/smoke/Steam; // type@1b20 │ │ +42f3fc: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +42f402: 6e20 12bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd12 │ │ +42f408: 6e10 e6bc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bce6 │ │ +42f40e: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3151 │ │ 0x0007 line=3153 │ │ 0x000a line=3154 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Settings; │ │ @@ -1572078,42 +1572077,42 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 7 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 57 16-bit code units │ │ -42f414: |[42f414] org.purple.smoke.Settings.showWidgets:()V │ │ -42f424: 1400 9200 087f |0000: const v0, #float 1.80778e+38 // #7f080092 │ │ -42f42a: 6e20 e5bc 0600 |0003: invoke-virtual {v6, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42f430: 0c00 |0006: move-result-object v0 │ │ -42f432: 1f00 210a |0007: check-cast v0, Landroid/view/ViewGroup; // type@0a21 │ │ -42f436: 6e10 e356 0000 |0009: invoke-virtual {v0}, Landroid/view/ViewGroup;.getChildCount:()I // method@56e3 │ │ -42f43c: 0a01 |000c: move-result v1 │ │ -42f43e: 1202 |000d: const/4 v2, #int 0 // #0 │ │ -42f440: 1203 |000e: const/4 v3, #int 0 // #0 │ │ -42f442: 3513 1500 |000f: if-ge v3, v1, 0024 // +0015 │ │ -42f446: 6e20 e256 3000 |0011: invoke-virtual {v0, v3}, Landroid/view/ViewGroup;.getChildAt:(I)Landroid/view/View; // method@56e2 │ │ -42f44c: 0c04 |0014: move-result-object v4 │ │ -42f44e: 1405 ad00 087f |0015: const v5, #float 1.80779e+38 // #7f0800ad │ │ -42f454: 6e20 e5bc 5600 |0018: invoke-virtual {v6, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42f45a: 0c05 |001b: move-result-object v5 │ │ -42f45c: 3254 0500 |001c: if-eq v4, v5, 0021 // +0005 │ │ -42f460: 6e20 ac56 2400 |001e: invoke-virtual {v4, v2}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -42f466: d803 0301 |0021: add-int/lit8 v3, v3, #int 1 // #01 │ │ -42f46a: 28ec |0023: goto 000f // -0014 │ │ -42f46c: 1400 7400 087f |0024: const v0, #float 1.80777e+38 // #7f080074 │ │ -42f472: 6e20 e5bc 0600 |0027: invoke-virtual {v6, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42f478: 0c00 |002a: move-result-object v0 │ │ -42f47a: 6e20 ac56 2000 |002b: invoke-virtual {v0, v2}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -42f480: 1400 b600 087f |002e: const v0, #float 1.80779e+38 // #7f0800b6 │ │ -42f486: 6e20 e5bc 0600 |0031: invoke-virtual {v6, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42f48c: 0c00 |0034: move-result-object v0 │ │ -42f48e: 6e20 ac56 2000 |0035: invoke-virtual {v0, v2}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -42f494: 0e00 |0038: return-void │ │ +42f410: |[42f410] org.purple.smoke.Settings.showWidgets:()V │ │ +42f420: 1400 9200 087f |0000: const v0, #float 1.80778e+38 // #7f080092 │ │ +42f426: 6e20 e5bc 0600 |0003: invoke-virtual {v6, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42f42c: 0c00 |0006: move-result-object v0 │ │ +42f42e: 1f00 210a |0007: check-cast v0, Landroid/view/ViewGroup; // type@0a21 │ │ +42f432: 6e10 e356 0000 |0009: invoke-virtual {v0}, Landroid/view/ViewGroup;.getChildCount:()I // method@56e3 │ │ +42f438: 0a01 |000c: move-result v1 │ │ +42f43a: 1202 |000d: const/4 v2, #int 0 // #0 │ │ +42f43c: 1203 |000e: const/4 v3, #int 0 // #0 │ │ +42f43e: 3513 1500 |000f: if-ge v3, v1, 0024 // +0015 │ │ +42f442: 6e20 e256 3000 |0011: invoke-virtual {v0, v3}, Landroid/view/ViewGroup;.getChildAt:(I)Landroid/view/View; // method@56e2 │ │ +42f448: 0c04 |0014: move-result-object v4 │ │ +42f44a: 1405 ad00 087f |0015: const v5, #float 1.80779e+38 // #7f0800ad │ │ +42f450: 6e20 e5bc 5600 |0018: invoke-virtual {v6, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42f456: 0c05 |001b: move-result-object v5 │ │ +42f458: 3254 0500 |001c: if-eq v4, v5, 0021 // +0005 │ │ +42f45c: 6e20 ac56 2400 |001e: invoke-virtual {v4, v2}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +42f462: d803 0301 |0021: add-int/lit8 v3, v3, #int 1 // #01 │ │ +42f466: 28ec |0023: goto 000f // -0014 │ │ +42f468: 1400 7400 087f |0024: const v0, #float 1.80777e+38 // #7f080074 │ │ +42f46e: 6e20 e5bc 0600 |0027: invoke-virtual {v6, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42f474: 0c00 |002a: move-result-object v0 │ │ +42f476: 6e20 ac56 2000 |002b: invoke-virtual {v0, v2}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +42f47c: 1400 b600 087f |002e: const v0, #float 1.80779e+38 // #7f0800b6 │ │ +42f482: 6e20 e5bc 0600 |0031: invoke-virtual {v6, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42f488: 0c00 |0034: move-result-object v0 │ │ +42f48a: 6e20 ac56 2000 |0035: invoke-virtual {v0, v2}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +42f490: 0e00 |0038: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=3159 │ │ 0x0009 line=3160 │ │ 0x0011 line=3164 │ │ 0x0018 line=3166 │ │ 0x001e line=3167 │ │ @@ -1572127,17 +1572126,17 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 4 16-bit code units │ │ -42f498: |[42f498] org.purple.smoke.Settings.startKernel:()V │ │ -42f4a8: 7100 0bbb 0000 |0000: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -42f4ae: 0e00 |0003: return-void │ │ +42f494: |[42f494] org.purple.smoke.Settings.startKernel:()V │ │ +42f4a4: 7100 0bbb 0000 |0000: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +42f4aa: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3176 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lorg/purple/smoke/Settings; │ │ │ │ #53 : (in Lorg/purple/smoke/Settings;) │ │ @@ -1572145,27 +1572144,27 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 25 16-bit code units │ │ -42f4b0: |[42f4b0] org.purple.smoke.Settings.startTimers:()V │ │ -42f4c0: 5480 095f |0000: iget-object v0, v8, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ -42f4c4: 3900 1600 |0002: if-nez v0, 0018 // +0016 │ │ -42f4c8: 7100 c660 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c6 │ │ -42f4ce: 0c01 |0007: move-result-object v1 │ │ -42f4d0: 5b81 095f |0008: iput-object v1, v8, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ -42f4d4: 2202 f31a |000a: new-instance v2, Lorg/purple/smoke/Settings$38; // type@1af3 │ │ -42f4d8: 7020 90bc 8200 |000c: invoke-direct {v2, v8}, Lorg/purple/smoke/Settings$38;.:(Lorg/purple/smoke/Settings;)V // method@bc90 │ │ -42f4de: 1603 dc05 |000f: const-wide/16 v3, #int 1500 // #5dc │ │ -42f4e2: 1605 c409 |0011: const-wide/16 v5, #int 2500 // #9c4 │ │ -42f4e6: 6207 ef2c |0013: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -42f4ea: 7807 ce60 0100 |0015: invoke-interface/range {v1, v2, v3, v4, v5, v6, v7}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ -42f4f0: 0e00 |0018: return-void │ │ +42f4ac: |[42f4ac] org.purple.smoke.Settings.startTimers:()V │ │ +42f4bc: 5480 095f |0000: iget-object v0, v8, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ +42f4c0: 3900 1600 |0002: if-nez v0, 0018 // +0016 │ │ +42f4c4: 7100 c660 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c6 │ │ +42f4ca: 0c01 |0007: move-result-object v1 │ │ +42f4cc: 5b81 095f |0008: iput-object v1, v8, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ +42f4d0: 2202 f31a |000a: new-instance v2, Lorg/purple/smoke/Settings$38; // type@1af3 │ │ +42f4d4: 7020 90bc 8200 |000c: invoke-direct {v2, v8}, Lorg/purple/smoke/Settings$38;.:(Lorg/purple/smoke/Settings;)V // method@bc90 │ │ +42f4da: 1603 dc05 |000f: const-wide/16 v3, #int 1500 // #5dc │ │ +42f4de: 1605 c409 |0011: const-wide/16 v5, #int 2500 // #9c4 │ │ +42f4e2: 6207 ef2c |0013: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +42f4e6: 7807 ce60 0100 |0015: invoke-interface/range {v1, v2, v3, v4, v5, v6, v7}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ +42f4ec: 0e00 |0018: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3181 │ │ 0x0004 line=3183 │ │ 0x000a line=3184 │ │ locals : │ │ 0x0000 - 0x0019 reg=8 this Lorg/purple/smoke/Settings; │ │ @@ -1572175,33 +1572174,33 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 33 16-bit code units │ │ -42f4f4: |[42f4f4] org.purple.smoke.Settings.stopTimers:()V │ │ -42f504: 5450 095f |0000: iget-object v0, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ -42f508: 3800 1e00 |0002: if-eqz v0, 0020 // +001e │ │ -42f50c: 7210 cf60 0000 |0004: invoke-interface {v0}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60cf │ │ -42f512: 1200 |0007: const/4 v0, #int 0 // #0 │ │ -42f514: 5451 095f |0008: iget-object v1, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ -42f518: 1602 0500 |000a: const-wide/16 v2, #int 5 // #5 │ │ -42f51c: 6204 f22c |000c: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ -42f520: 7240 cc60 2143 |000e: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60cc │ │ -42f526: 0a01 |0011: move-result v1 │ │ -42f528: 3901 0c00 |0012: if-nez v1, 001e // +000c │ │ -42f52c: 5451 095f |0014: iget-object v1, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ -42f530: 7210 d060 0100 |0016: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d0 │ │ -42f536: 2805 |0019: goto 001e // +0005 │ │ -42f538: 0d01 |001a: move-exception v1 │ │ -42f53a: 5b50 095f |001b: iput-object v0, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ -42f53e: 2701 |001d: throw v1 │ │ -42f540: 5b50 095f |001e: iput-object v0, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ -42f544: 0e00 |0020: return-void │ │ +42f4f0: |[42f4f0] org.purple.smoke.Settings.stopTimers:()V │ │ +42f500: 5450 095f |0000: iget-object v0, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ +42f504: 3800 1e00 |0002: if-eqz v0, 0020 // +001e │ │ +42f508: 7210 cf60 0000 |0004: invoke-interface {v0}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60cf │ │ +42f50e: 1200 |0007: const/4 v0, #int 0 // #0 │ │ +42f510: 5451 095f |0008: iget-object v1, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ +42f514: 1602 0500 |000a: const-wide/16 v2, #int 5 // #5 │ │ +42f518: 6204 f22c |000c: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ +42f51c: 7240 cc60 2143 |000e: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60cc │ │ +42f522: 0a01 |0011: move-result v1 │ │ +42f524: 3901 0c00 |0012: if-nez v1, 001e // +000c │ │ +42f528: 5451 095f |0014: iget-object v1, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ +42f52c: 7210 d060 0100 |0016: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d0 │ │ +42f532: 2805 |0019: goto 001e // +0005 │ │ +42f534: 0d01 |001a: move-exception v1 │ │ +42f536: 5b50 095f |001b: iput-object v0, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ +42f53a: 2701 |001d: throw v1 │ │ +42f53c: 5b50 095f |001e: iput-object v0, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ +42f540: 0e00 |0020: return-void │ │ catches : 2 │ │ 0x0004 - 0x0007 │ │ Ljava/lang/Exception; -> 0x0007 │ │ 0x0008 - 0x0019 │ │ Ljava/lang/Exception; -> 0x001e │ │ -> 0x001a │ │ positions : │ │ @@ -1572222,125 +1572221,125 @@ │ │ type : '(Landroid/view/MenuItem;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 10 │ │ ins : 2 │ │ outs : 6 │ │ insns size : 256 16-bit code units │ │ -42be94: |[42be94] org.purple.smoke.Settings.onContextItemSelected:(Landroid/view/MenuItem;)Z │ │ -42bea4: 3909 0400 |0000: if-nez v9, 0004 // +0004 │ │ -42bea8: 1209 |0002: const/4 v9, #int 0 // #0 │ │ -42beaa: 0f09 |0003: return v9 │ │ -42beac: 7210 6a55 0900 |0004: invoke-interface {v9}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ -42beb2: 0a00 |0007: move-result v0 │ │ -42beb4: 7210 6c55 0900 |0008: invoke-interface {v9}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ -42beba: 0a01 |000b: move-result v1 │ │ -42bebc: 2203 f81a |000c: new-instance v3, Lorg/purple/smoke/Settings$40; // type@1af8 │ │ -42bec0: 7040 9bbc 8310 |000e: invoke-direct {v3, v8, v0, v1}, Lorg/purple/smoke/Settings$40;.:(Lorg/purple/smoke/Settings;II)V // method@bc9b │ │ -42bec6: 1a02 f608 |0011: const-string v2, "?" // string@08f6 │ │ -42beca: 1a04 ec03 |0013: const-string v4, ")" // string@03ec │ │ -42bece: 1a05 0000 |0015: const-string v5, "" // string@0000 │ │ -42bed2: 2b00 d500 0000 |0017: packed-switch v0, 000000ec // +000000d5 │ │ -42bed8: 2900 d000 |001a: goto/16 00ea // +00d0 │ │ -42bedc: 7110 d55c 0100 |001c: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42bee2: 0c09 |001f: move-result-object v9 │ │ -42bee4: 7020 0cbd 9800 |0020: invoke-direct {v8, v9}, Lorg/purple/smoke/Settings;.showDetailsOfParticipant:(Ljava/lang/String;)V // method@bd0c │ │ -42beea: 2900 c700 |0023: goto/16 00ea // +00c7 │ │ -42beee: 7020 09bd 1800 |0025: invoke-direct {v8, v1}, Lorg/purple/smoke/Settings;.shareSipHashId:(I)V // method@bd09 │ │ -42bef4: 2900 c200 |0028: goto/16 00ea // +00c2 │ │ -42bef8: 7110 d55c 0100 |002a: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42befe: 0c09 |002d: move-result-object v9 │ │ -42bf00: 7020 08bd 9800 |002e: invoke-direct {v8, v9}, Lorg/purple/smoke/Settings;.shareKeysOf:(Ljava/lang/String;)V // method@bd08 │ │ -42bf06: 2900 b900 |0031: goto/16 00ea // +00b9 │ │ -42bf0a: 7110 d55c 0100 |0033: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42bf10: 0c09 |0036: move-result-object v9 │ │ -42bf12: 7020 05bd 9800 |0037: invoke-direct {v8, v9}, Lorg/purple/smoke/Settings;.requestKeysOf:(Ljava/lang/String;)V // method@bd05 │ │ -42bf18: 2900 b000 |003a: goto/16 00ea // +00b0 │ │ -42bf1c: 7210 6e55 0900 |003c: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ -42bf22: 0c09 |003f: move-result-object v9 │ │ -42bf24: 7210 045c 0900 |0040: invoke-interface {v9}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42bf2a: 0c09 |0043: move-result-object v9 │ │ -42bf2c: 1a00 4441 |0044: const-string v0, "New Name (" // string@4144 │ │ -42bf30: 6e30 c85c 0905 |0046: invoke-virtual {v9, v0, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42bf36: 0c09 |0049: move-result-object v9 │ │ -42bf38: 6e30 c85c 4905 |004a: invoke-virtual {v9, v4, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42bf3e: 0c05 |004d: move-result-object v5 │ │ -42bf40: 2209 f10a |004e: new-instance v9, Ljava/lang/StringBuilder; // type@0af1 │ │ -42bf44: 7010 ee5c 0900 |0050: invoke-direct {v9}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42bf4a: 1a00 db44 |0053: const-string v0, "Please provide a new name for " // string@44db │ │ -42bf4e: 6e20 f95c 0900 |0055: invoke-virtual {v9, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42bf54: 6e20 f95c 5900 |0058: invoke-virtual {v9, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42bf5a: 1a00 9904 |005b: const-string v0, "." // string@0499 │ │ -42bf5e: 6e20 f95c 0900 |005d: invoke-virtual {v9, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42bf64: 6e10 035d 0900 |0060: invoke-virtual {v9}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42bf6a: 0c04 |0063: move-result-object v4 │ │ -42bf6c: 1217 |0064: const/4 v7, #int 1 // #1 │ │ -42bf6e: 1a06 0f41 |0065: const-string v6, "Name" // string@410f │ │ -42bf72: 0782 |0067: move-object v2, v8 │ │ -42bf74: 7706 f9bb 0200 |0068: invoke-static/range {v2, v3, v4, v5, v6, v7}, Lorg/purple/smoke/Miscellaneous;.showTextInputDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V // method@bbf9 │ │ -42bf7a: 2900 7f00 |006b: goto/16 00ea // +007f │ │ -42bf7e: 2200 f10a |006d: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ -42bf82: 7010 ee5c 0000 |006f: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42bf88: 1a01 7b0e |0072: const-string v1, "Are you sure that you wish to delete the public keys of " // string@0e7b │ │ -42bf8c: 6e20 f95c 1000 |0074: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42bf92: 7210 6e55 0900 |0077: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ -42bf98: 0c09 |007a: move-result-object v9 │ │ -42bf9a: 7210 045c 0900 |007b: invoke-interface {v9}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42bfa0: 0c09 |007e: move-result-object v9 │ │ -42bfa2: 1a01 3017 |007f: const-string v1, "Delete Public Keys (" // string@1730 │ │ -42bfa6: 6e30 c85c 1905 |0081: invoke-virtual {v9, v1, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42bfac: 0c09 |0084: move-result-object v9 │ │ -42bfae: 6e30 c85c 4905 |0085: invoke-virtual {v9, v4, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42bfb4: 0c09 |0088: move-result-object v9 │ │ -42bfb6: 6e20 f95c 9000 |0089: invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42bfbc: 6e20 f95c 2000 |008c: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42bfc2: 6e10 035d 0000 |008f: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42bfc8: 0c09 |0092: move-result-object v9 │ │ -42bfca: 7130 f7bb 3809 |0093: invoke-static {v8, v3, v9}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbf7 │ │ -42bfd0: 2854 |0096: goto 00ea // +0054 │ │ -42bfd2: 2200 f10a |0097: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ -42bfd6: 7010 ee5c 0000 |0099: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42bfdc: 1a01 770e |009c: const-string v1, "Are you sure that you wish to delete the Fiasco keys of " // string@0e77 │ │ -42bfe0: 6e20 f95c 1000 |009e: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42bfe6: 7210 6e55 0900 |00a1: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ -42bfec: 0c09 |00a4: move-result-object v9 │ │ -42bfee: 7210 045c 0900 |00a5: invoke-interface {v9}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42bff4: 0c09 |00a8: move-result-object v9 │ │ -42bff6: 1a01 2e17 |00a9: const-string v1, "Delete Fiasco Keys (" // string@172e │ │ -42bffa: 6e30 c85c 1905 |00ab: invoke-virtual {v9, v1, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42c000: 0c09 |00ae: move-result-object v9 │ │ -42c002: 6e30 c85c 4905 |00af: invoke-virtual {v9, v4, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42c008: 0c09 |00b2: move-result-object v9 │ │ -42c00a: 6e20 f95c 9000 |00b3: invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c010: 6e20 f95c 2000 |00b6: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c016: 6e10 035d 0000 |00b9: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42c01c: 0c09 |00bc: move-result-object v9 │ │ -42c01e: 7130 f7bb 3809 |00bd: invoke-static {v8, v3, v9}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbf7 │ │ -42c024: 282a |00c0: goto 00ea // +002a │ │ -42c026: 2200 f10a |00c1: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ -42c02a: 7010 ee5c 0000 |00c3: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42c030: 1a01 7a0e |00c6: const-string v1, "Are you sure that you wish to delete the participant " // string@0e7a │ │ -42c034: 6e20 f95c 1000 |00c8: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c03a: 7210 6e55 0900 |00cb: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ -42c040: 0c09 |00ce: move-result-object v9 │ │ -42c042: 7210 045c 0900 |00cf: invoke-interface {v9}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c048: 0c09 |00d2: move-result-object v9 │ │ -42c04a: 1a01 2b17 |00d3: const-string v1, "Delete (" // string@172b │ │ -42c04e: 6e30 c85c 1905 |00d5: invoke-virtual {v9, v1, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42c054: 0c09 |00d8: move-result-object v9 │ │ -42c056: 6e30 c85c 4905 |00d9: invoke-virtual {v9, v4, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42c05c: 0c09 |00dc: move-result-object v9 │ │ -42c05e: 6e20 f95c 9000 |00dd: invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c064: 6e20 f95c 2000 |00e0: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c06a: 6e10 035d 0000 |00e3: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42c070: 0c09 |00e6: move-result-object v9 │ │ -42c072: 7130 f7bb 3809 |00e7: invoke-static {v8, v3, v9}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbf7 │ │ -42c078: 1219 |00ea: const/4 v9, #int 1 // #1 │ │ -42c07a: 0f09 |00eb: return v9 │ │ -42c07c: 0001 0800 0000 0000 aa00 0000 8000 ... |00ec: packed-switch-data (20 units) │ │ +42be90: |[42be90] org.purple.smoke.Settings.onContextItemSelected:(Landroid/view/MenuItem;)Z │ │ +42bea0: 3909 0400 |0000: if-nez v9, 0004 // +0004 │ │ +42bea4: 1209 |0002: const/4 v9, #int 0 // #0 │ │ +42bea6: 0f09 |0003: return v9 │ │ +42bea8: 7210 6a55 0900 |0004: invoke-interface {v9}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ +42beae: 0a00 |0007: move-result v0 │ │ +42beb0: 7210 6c55 0900 |0008: invoke-interface {v9}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ +42beb6: 0a01 |000b: move-result v1 │ │ +42beb8: 2203 f81a |000c: new-instance v3, Lorg/purple/smoke/Settings$40; // type@1af8 │ │ +42bebc: 7040 9bbc 8310 |000e: invoke-direct {v3, v8, v0, v1}, Lorg/purple/smoke/Settings$40;.:(Lorg/purple/smoke/Settings;II)V // method@bc9b │ │ +42bec2: 1a02 f608 |0011: const-string v2, "?" // string@08f6 │ │ +42bec6: 1a04 ec03 |0013: const-string v4, ")" // string@03ec │ │ +42beca: 1a05 0000 |0015: const-string v5, "" // string@0000 │ │ +42bece: 2b00 d500 0000 |0017: packed-switch v0, 000000ec // +000000d5 │ │ +42bed4: 2900 d000 |001a: goto/16 00ea // +00d0 │ │ +42bed8: 7110 d55c 0100 |001c: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42bede: 0c09 |001f: move-result-object v9 │ │ +42bee0: 7020 0cbd 9800 |0020: invoke-direct {v8, v9}, Lorg/purple/smoke/Settings;.showDetailsOfParticipant:(Ljava/lang/String;)V // method@bd0c │ │ +42bee6: 2900 c700 |0023: goto/16 00ea // +00c7 │ │ +42beea: 7020 09bd 1800 |0025: invoke-direct {v8, v1}, Lorg/purple/smoke/Settings;.shareSipHashId:(I)V // method@bd09 │ │ +42bef0: 2900 c200 |0028: goto/16 00ea // +00c2 │ │ +42bef4: 7110 d55c 0100 |002a: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42befa: 0c09 |002d: move-result-object v9 │ │ +42befc: 7020 08bd 9800 |002e: invoke-direct {v8, v9}, Lorg/purple/smoke/Settings;.shareKeysOf:(Ljava/lang/String;)V // method@bd08 │ │ +42bf02: 2900 b900 |0031: goto/16 00ea // +00b9 │ │ +42bf06: 7110 d55c 0100 |0033: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42bf0c: 0c09 |0036: move-result-object v9 │ │ +42bf0e: 7020 05bd 9800 |0037: invoke-direct {v8, v9}, Lorg/purple/smoke/Settings;.requestKeysOf:(Ljava/lang/String;)V // method@bd05 │ │ +42bf14: 2900 b000 |003a: goto/16 00ea // +00b0 │ │ +42bf18: 7210 6e55 0900 |003c: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ +42bf1e: 0c09 |003f: move-result-object v9 │ │ +42bf20: 7210 045c 0900 |0040: invoke-interface {v9}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42bf26: 0c09 |0043: move-result-object v9 │ │ +42bf28: 1a00 4441 |0044: const-string v0, "New Name (" // string@4144 │ │ +42bf2c: 6e30 c85c 0905 |0046: invoke-virtual {v9, v0, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42bf32: 0c09 |0049: move-result-object v9 │ │ +42bf34: 6e30 c85c 4905 |004a: invoke-virtual {v9, v4, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42bf3a: 0c05 |004d: move-result-object v5 │ │ +42bf3c: 2209 f10a |004e: new-instance v9, Ljava/lang/StringBuilder; // type@0af1 │ │ +42bf40: 7010 ee5c 0900 |0050: invoke-direct {v9}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42bf46: 1a00 db44 |0053: const-string v0, "Please provide a new name for " // string@44db │ │ +42bf4a: 6e20 f95c 0900 |0055: invoke-virtual {v9, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42bf50: 6e20 f95c 5900 |0058: invoke-virtual {v9, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42bf56: 1a00 9904 |005b: const-string v0, "." // string@0499 │ │ +42bf5a: 6e20 f95c 0900 |005d: invoke-virtual {v9, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42bf60: 6e10 035d 0900 |0060: invoke-virtual {v9}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42bf66: 0c04 |0063: move-result-object v4 │ │ +42bf68: 1217 |0064: const/4 v7, #int 1 // #1 │ │ +42bf6a: 1a06 0f41 |0065: const-string v6, "Name" // string@410f │ │ +42bf6e: 0782 |0067: move-object v2, v8 │ │ +42bf70: 7706 f9bb 0200 |0068: invoke-static/range {v2, v3, v4, v5, v6, v7}, Lorg/purple/smoke/Miscellaneous;.showTextInputDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V // method@bbf9 │ │ +42bf76: 2900 7f00 |006b: goto/16 00ea // +007f │ │ +42bf7a: 2200 f10a |006d: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ +42bf7e: 7010 ee5c 0000 |006f: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42bf84: 1a01 7b0e |0072: const-string v1, "Are you sure that you wish to delete the public keys of " // string@0e7b │ │ +42bf88: 6e20 f95c 1000 |0074: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42bf8e: 7210 6e55 0900 |0077: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ +42bf94: 0c09 |007a: move-result-object v9 │ │ +42bf96: 7210 045c 0900 |007b: invoke-interface {v9}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42bf9c: 0c09 |007e: move-result-object v9 │ │ +42bf9e: 1a01 3017 |007f: const-string v1, "Delete Public Keys (" // string@1730 │ │ +42bfa2: 6e30 c85c 1905 |0081: invoke-virtual {v9, v1, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42bfa8: 0c09 |0084: move-result-object v9 │ │ +42bfaa: 6e30 c85c 4905 |0085: invoke-virtual {v9, v4, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42bfb0: 0c09 |0088: move-result-object v9 │ │ +42bfb2: 6e20 f95c 9000 |0089: invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42bfb8: 6e20 f95c 2000 |008c: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42bfbe: 6e10 035d 0000 |008f: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42bfc4: 0c09 |0092: move-result-object v9 │ │ +42bfc6: 7130 f7bb 3809 |0093: invoke-static {v8, v3, v9}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbf7 │ │ +42bfcc: 2854 |0096: goto 00ea // +0054 │ │ +42bfce: 2200 f10a |0097: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ +42bfd2: 7010 ee5c 0000 |0099: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42bfd8: 1a01 770e |009c: const-string v1, "Are you sure that you wish to delete the Fiasco keys of " // string@0e77 │ │ +42bfdc: 6e20 f95c 1000 |009e: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42bfe2: 7210 6e55 0900 |00a1: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ +42bfe8: 0c09 |00a4: move-result-object v9 │ │ +42bfea: 7210 045c 0900 |00a5: invoke-interface {v9}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42bff0: 0c09 |00a8: move-result-object v9 │ │ +42bff2: 1a01 2e17 |00a9: const-string v1, "Delete Fiasco Keys (" // string@172e │ │ +42bff6: 6e30 c85c 1905 |00ab: invoke-virtual {v9, v1, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42bffc: 0c09 |00ae: move-result-object v9 │ │ +42bffe: 6e30 c85c 4905 |00af: invoke-virtual {v9, v4, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42c004: 0c09 |00b2: move-result-object v9 │ │ +42c006: 6e20 f95c 9000 |00b3: invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c00c: 6e20 f95c 2000 |00b6: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c012: 6e10 035d 0000 |00b9: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42c018: 0c09 |00bc: move-result-object v9 │ │ +42c01a: 7130 f7bb 3809 |00bd: invoke-static {v8, v3, v9}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbf7 │ │ +42c020: 282a |00c0: goto 00ea // +002a │ │ +42c022: 2200 f10a |00c1: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ +42c026: 7010 ee5c 0000 |00c3: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42c02c: 1a01 7a0e |00c6: const-string v1, "Are you sure that you wish to delete the participant " // string@0e7a │ │ +42c030: 6e20 f95c 1000 |00c8: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c036: 7210 6e55 0900 |00cb: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ +42c03c: 0c09 |00ce: move-result-object v9 │ │ +42c03e: 7210 045c 0900 |00cf: invoke-interface {v9}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c044: 0c09 |00d2: move-result-object v9 │ │ +42c046: 1a01 2b17 |00d3: const-string v1, "Delete (" // string@172b │ │ +42c04a: 6e30 c85c 1905 |00d5: invoke-virtual {v9, v1, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42c050: 0c09 |00d8: move-result-object v9 │ │ +42c052: 6e30 c85c 4905 |00d9: invoke-virtual {v9, v4, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42c058: 0c09 |00dc: move-result-object v9 │ │ +42c05a: 6e20 f95c 9000 |00dd: invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c060: 6e20 f95c 2000 |00e0: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c066: 6e10 035d 0000 |00e3: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42c06c: 0c09 |00e6: move-result-object v9 │ │ +42c06e: 7130 f7bb 3809 |00e7: invoke-static {v8, v3, v9}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbf7 │ │ +42c074: 1219 |00ea: const/4 v9, #int 1 // #1 │ │ +42c076: 0f09 |00eb: return v9 │ │ +42c078: 0001 0800 0000 0000 aa00 0000 8000 ... |00ec: packed-switch-data (20 units) │ │ catches : (none) │ │ positions : │ │ 0x0004 line=3749 │ │ 0x0008 line=3750 │ │ 0x000c line=3756 │ │ 0x001c line=3885 │ │ 0x0025 line=3882 │ │ @@ -1572371,648 +1572370,648 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 42 │ │ ins : 2 │ │ outs : 30 │ │ insns size : 1412 16-bit code units │ │ -42ce04: |[42ce04] org.purple.smoke.Settings.onCreate:(Landroid/os/Bundle;)V │ │ -42ce14: 0800 2800 |0000: move-object/from16 v0, v40 │ │ -42ce18: 7502 f23c 2800 |0002: invoke-super/range {v40, v41}, Landroid/support/v7/app/AppCompatActivity;.onCreate:(Landroid/os/Bundle;)V // method@3cf2 │ │ -42ce1e: 7401 e8bc 2800 |0005: invoke-virtual/range {v40}, Lorg/purple/smoke/Settings;.getApplicationContext:()Landroid/content/Context; // method@bce8 │ │ -42ce24: 0c01 |0008: move-result-object v1 │ │ -42ce26: 7110 f0b9 0100 |0009: invoke-static {v1}, Lorg/purple/smoke/Database;.getInstance:(Landroid/content/Context;)Lorg/purple/smoke/Database; // method@b9f0 │ │ -42ce2c: 0c01 |000c: move-result-object v1 │ │ -42ce2e: 5b01 065f |000d: iput-object v1, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42ce32: 7100 6fbd 0000 |000f: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42ce38: 0c01 |0012: move-result-object v1 │ │ -42ce3a: 6e10 72bd 0100 |0013: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ -42ce40: 0a01 |0016: move-result v1 │ │ -42ce42: 3901 0e00 |0017: if-nez v1, 0025 // +000e │ │ -42ce46: 5402 065f |0019: iget-object v2, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42ce4a: 6e10 dab9 0200 |001b: invoke-virtual {v2}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9da │ │ -42ce50: 0a02 |001e: move-result v2 │ │ -42ce52: 3802 0600 |001f: if-eqz v2, 0025 // +0006 │ │ -42ce56: 7601 0abd 2800 |0021: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.showAuthenticateActivity:()V // method@bd0a │ │ -42ce5c: 0e00 |0024: return-void │ │ -42ce5e: 7100 0bbb 0000 |0025: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -42ce64: 0c02 |0028: move-result-object v2 │ │ -42ce66: 5403 065f |0029: iget-object v3, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42ce6a: 1204 |002b: const/4 v4, #int 0 // #0 │ │ -42ce6c: 1a05 6259 |002c: const-string v5, "always_awake" // string@5962 │ │ -42ce70: 6e30 17ba 4305 |002e: invoke-virtual {v3, v4, v5}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42ce76: 0c03 |0031: move-result-object v3 │ │ -42ce78: 1a06 95a5 |0032: const-string v6, "true" // string@a595 │ │ -42ce7c: 6e20 b85c 6300 |0034: invoke-virtual {v3, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42ce82: 0a03 |0037: move-result v3 │ │ -42ce84: 6e20 1ebb 3200 |0038: invoke-virtual {v2, v3}, Lorg/purple/smoke/Kernel;.setWakeLock:(Z)V // method@bb1e │ │ -42ce8a: 7100 6fbd 0000 |003b: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42ce90: 0c02 |003e: move-result-object v2 │ │ -42ce92: 5403 065f |003f: iget-object v3, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42ce96: 1a07 f48b |0041: const-string v7, "neighbors_echo" // string@8bf4 │ │ -42ce9a: 6e30 17ba 4307 |0043: invoke-virtual {v3, v4, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42cea0: 0c03 |0046: move-result-object v3 │ │ -42cea2: 6e20 b85c 6300 |0047: invoke-virtual {v3, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42cea8: 0a03 |004a: move-result v3 │ │ -42ceaa: 6e20 87bd 3200 |004b: invoke-virtual {v2, v3}, Lorg/purple/smoke/State;.setNeighborsEcho:(Z)V // method@bd87 │ │ -42ceb0: 2202 091b |004e: new-instance v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // type@1b09 │ │ -42ceb4: 7020 c5bc 0200 |0050: invoke-direct {v2, v0}, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.:(Lorg/purple/smoke/Settings;)V // method@bcc5 │ │ -42ceba: 5b02 075f |0053: iput-object v2, v0, Lorg/purple/smoke/Settings;.m_receiver:Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // field@5f07 │ │ -42cebe: 7601 00bd 2800 |0055: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.prepareForegroundService:()V // method@bd00 │ │ -42cec4: 1402 1f00 0a7f |0058: const v2, #float 1.83434e+38 // #7f0a001f │ │ -42ceca: 6e20 07bd 2000 |005b: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.setContentView:(I)V // method@bd07 │ │ -42ced0: 7401 ecbc 2800 |005e: invoke-virtual/range {v40}, Lorg/purple/smoke/Settings;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bcec │ │ -42ced6: 0c02 |0061: move-result-object v2 │ │ -42ced8: 7100 29bd 0000 |0062: invoke-static {}, Lorg/purple/smoke/Smoke;.networkStatusString:()Ljava/lang/String; // method@bd29 │ │ -42cede: 0c03 |0065: move-result-object v3 │ │ -42cee0: 6e20 0a3c 3200 |0066: invoke-virtual {v2, v3}, Landroid/support/v7/app/ActionBar;.setSubtitle:(Ljava/lang/CharSequence;)V // method@3c0a │ │ -42cee6: 7401 ecbc 2800 |0069: invoke-virtual/range {v40}, Lorg/purple/smoke/Settings;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bcec │ │ -42ceec: 0c02 |006c: move-result-object v2 │ │ -42ceee: 1a03 304c |006d: const-string v3, "Smoke | Settings" // string@4c30 │ │ -42cef2: 6e20 0c3c 3200 |006f: invoke-virtual {v2, v3}, Landroid/support/v7/app/ActionBar;.setTitle:(Ljava/lang/CharSequence;)V // method@3c0c │ │ -42cef8: 2802 |0072: goto 0074 // +0002 │ │ -42cefa: 0000 |0073: nop // spacer │ │ -42cefc: 7601 01bd 2800 |0074: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.prepareListeners:()V // method@bd01 │ │ -42cf02: 1402 1e00 087f |0077: const v2, #float 1.80776e+38 // #7f08001e │ │ -42cf08: 6e20 e5bc 2000 |007a: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cf0e: 0c02 |007d: move-result-object v2 │ │ -42cf10: 1f02 5e0a |007e: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42cf14: 6e20 e058 1200 |0080: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cf1a: 1402 1f00 087f |0083: const v2, #float 1.80776e+38 // #7f08001f │ │ -42cf20: 6e20 e5bc 2000 |0086: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cf26: 0c02 |0089: move-result-object v2 │ │ -42cf28: 1f02 5e0a |008a: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42cf2c: 6e20 e058 1200 |008c: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cf32: 1402 5d00 087f |008f: const v2, #float 1.80777e+38 // #7f08005d │ │ -42cf38: 6e20 e5bc 2000 |0092: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cf3e: 0c02 |0095: move-result-object v2 │ │ -42cf40: 1f02 5e0a |0096: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42cf44: 1403 6e00 077f |0098: const v3, #float 1.79448e+38 // #7f07006e │ │ -42cf4a: 1208 |009b: const/4 v8, #int 0 // #0 │ │ -42cf4c: 6e58 df58 3288 |009c: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ -42cf52: 1402 6400 087f |009f: const v2, #float 1.80777e+38 // #7f080064 │ │ -42cf58: 6e20 e5bc 2000 |00a2: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cf5e: 0c02 |00a5: move-result-object v2 │ │ -42cf60: 1f02 5e0a |00a6: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42cf64: 1409 8500 077f |00a8: const v9, #float 1.79448e+38 // #7f070085 │ │ -42cf6a: 6e58 df58 9288 |00ab: invoke-virtual {v2, v9, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ -42cf70: 6e20 e058 1200 |00ae: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cf76: 1402 8200 087f |00b1: const v2, #float 1.80778e+38 // #7f080082 │ │ -42cf7c: 6e20 e5bc 2000 |00b4: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cf82: 0c02 |00b7: move-result-object v2 │ │ -42cf84: 1f02 5e0a |00b8: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42cf88: 6e58 df58 3288 |00ba: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ -42cf8e: 1402 b800 087f |00bd: const v2, #float 1.80779e+38 // #7f0800b8 │ │ -42cf94: 6e20 e5bc 2000 |00c0: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cf9a: 0c02 |00c3: move-result-object v2 │ │ -42cf9c: 1f02 5e0a |00c4: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42cfa0: 6e58 df58 3288 |00c6: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ -42cfa6: 1402 c200 087f |00c9: const v2, #float 1.80779e+38 // #7f0800c2 │ │ -42cfac: 6e20 e5bc 2000 |00cc: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cfb2: 0c02 |00cf: move-result-object v2 │ │ -42cfb4: 1f02 5e0a |00d0: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42cfb8: 6e58 df58 3288 |00d2: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ -42cfbe: 1402 da00 087f |00d5: const v2, #float 1.80779e+38 // #7f0800da │ │ -42cfc4: 6e20 e5bc 2000 |00d8: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cfca: 0c02 |00db: move-result-object v2 │ │ -42cfcc: 1f02 5e0a |00dc: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42cfd0: 6e20 e058 1200 |00de: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cfd6: 1402 db00 087f |00e1: const v2, #float 1.80779e+38 // #7f0800db │ │ -42cfdc: 6e20 e5bc 2000 |00e4: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cfe2: 0c02 |00e7: move-result-object v2 │ │ -42cfe4: 1f02 5e0a |00e8: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42cfe8: 6e20 e058 1200 |00ea: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cfee: 1402 e000 087f |00ed: const v2, #float 1.8078e+38 // #7f0800e0 │ │ -42cff4: 6e20 e5bc 2000 |00f0: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42cffa: 0c02 |00f3: move-result-object v2 │ │ -42cffc: 1f02 5e0a |00f4: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d000: 6e20 e058 1200 |00f6: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42d006: 1402 e100 087f |00f9: const v2, #float 1.8078e+38 // #7f0800e1 │ │ -42d00c: 6e20 e5bc 2000 |00fc: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d012: 0c02 |00ff: move-result-object v2 │ │ -42d014: 1f02 5e0a |0100: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d018: 6e20 e058 1200 |0102: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42d01e: 1402 e800 087f |0105: const v2, #float 1.8078e+38 // #7f0800e8 │ │ -42d024: 6e20 e5bc 2000 |0108: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d02a: 0c02 |010b: move-result-object v2 │ │ -42d02c: 1f02 5e0a |010c: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d030: 6e20 e058 1200 |010e: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42d036: 1402 0201 087f |0111: const v2, #float 1.8078e+38 // #7f080102 │ │ -42d03c: 6e20 e5bc 2000 |0114: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d042: 0c02 |0117: move-result-object v2 │ │ -42d044: 1f02 5e0a |0118: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d048: 6e58 df58 9288 |011a: invoke-virtual {v2, v9, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ -42d04e: 6e20 e058 1200 |011d: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42d054: 1402 0901 087f |0120: const v2, #float 1.8078e+38 // #7f080109 │ │ -42d05a: 6e20 e5bc 2000 |0123: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d060: 0c02 |0126: move-result-object v2 │ │ -42d062: 1f02 5e0a |0127: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d066: 6e58 df58 3288 |0129: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ -42d06c: 1402 0a01 087f |012c: const v2, #float 1.8078e+38 // #7f08010a │ │ -42d072: 6e20 e5bc 2000 |012f: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d078: 0c02 |0132: move-result-object v2 │ │ -42d07a: 1f02 5e0a |0133: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d07e: 6e58 df58 3288 |0135: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ -42d084: 1402 2500 087f |0138: const v2, #float 1.80776e+38 // #7f080025 │ │ -42d08a: 6e20 e5bc 2000 |013b: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d090: 0c02 |013e: move-result-object v2 │ │ -42d092: 1f02 8d0a |013f: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42d096: 1213 |0141: const/4 v3, #int 1 // #1 │ │ -42d098: 6e20 db5a 3200 |0142: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d09e: 1402 2c00 087f |0145: const v2, #float 1.80776e+38 // #7f08002c │ │ -42d0a4: 6e20 e5bc 2000 |0148: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d0aa: 0c09 |014b: move-result-object v9 │ │ -42d0ac: 1f09 8d0a |014c: check-cast v9, Landroid/widget/Switch; // type@0a8d │ │ -42d0b0: 540a 065f |014e: iget-object v10, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d0b4: 1a0b 615b |0150: const-string v11, "automatic_neighbors_refresh" // string@5b61 │ │ -42d0b8: 6e30 17ba 4a0b |0152: invoke-virtual {v10, v4, v11}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42d0be: 0c0a |0155: move-result-object v10 │ │ -42d0c0: 6e10 c35c 0a00 |0156: invoke-virtual {v10}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42d0c6: 0a0a |0159: move-result v10 │ │ -42d0c8: 380a 0b00 |015a: if-eqz v10, 0165 // +000b │ │ -42d0cc: 6e20 db5a 3900 |015c: invoke-virtual {v9, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d0d2: 540a 065f |015f: iget-object v10, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d0d6: 6e40 39ba 4a6b |0161: invoke-virtual {v10, v4, v11, v6}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42d0dc: 2814 |0164: goto 0178 // +0014 │ │ -42d0de: 540a 065f |0165: iget-object v10, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d0e2: 6e30 17ba 4a0b |0167: invoke-virtual {v10, v4, v11}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42d0e8: 0c0a |016a: move-result-object v10 │ │ -42d0ea: 6e20 b85c 6a00 |016b: invoke-virtual {v10, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42d0f0: 0a0a |016e: move-result v10 │ │ -42d0f2: 380a 0600 |016f: if-eqz v10, 0175 // +0006 │ │ -42d0f6: 6e20 db5a 3900 |0171: invoke-virtual {v9, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d0fc: 2804 |0174: goto 0178 // +0004 │ │ -42d0fe: 6e20 db5a 8900 |0175: invoke-virtual {v9, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d104: 6e10 da5a 0900 |0178: invoke-virtual {v9}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42d10a: 0a09 |017b: move-result v9 │ │ -42d10c: 3809 0500 |017c: if-eqz v9, 0181 // +0005 │ │ -42d110: 7601 14bd 2800 |017e: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.startTimers:()V // method@bd14 │ │ -42d116: 1409 5c00 087f |0181: const v9, #float 1.80777e+38 // #7f08005c │ │ -42d11c: 6e20 e5bc 9000 |0184: invoke-virtual {v0, v9}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d122: 0c09 |0187: move-result-object v9 │ │ -42d124: 1f09 8d0a |0188: check-cast v9, Landroid/widget/Switch; // type@0a8d │ │ -42d128: 540a 065f |018a: iget-object v10, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d12c: 6e30 17ba 4a07 |018c: invoke-virtual {v10, v4, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42d132: 0c07 |018f: move-result-object v7 │ │ -42d134: 6e20 b85c 6700 |0190: invoke-virtual {v7, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42d13a: 0a07 |0193: move-result v7 │ │ -42d13c: 3807 0600 |0194: if-eqz v7, 019a // +0006 │ │ -42d140: 6e20 db5a 3900 |0196: invoke-virtual {v9, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d146: 2804 |0199: goto 019d // +0004 │ │ -42d148: 6e20 db5a 8900 |019a: invoke-virtual {v9, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d14e: 1407 7300 087f |019d: const v7, #float 1.80777e+38 // #7f080073 │ │ -42d154: 6e20 e5bc 7000 |01a0: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d15a: 0c07 |01a3: move-result-object v7 │ │ -42d15c: 1f07 8d0a |01a4: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ -42d160: 5409 065f |01a6: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d164: 1a0a 5569 |01a8: const-string v10, "foreground_service" // string@6955 │ │ -42d168: 6e30 17ba 490a |01aa: invoke-virtual {v9, v4, v10}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42d16e: 0c09 |01ad: move-result-object v9 │ │ -42d170: 1a0a 2068 |01ae: const-string v10, "false" // string@6820 │ │ -42d174: 6e20 b85c a900 |01b0: invoke-virtual {v9, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42d17a: 0a09 |01b3: move-result v9 │ │ -42d17c: 3809 0600 |01b4: if-eqz v9, 01ba // +0006 │ │ -42d180: 6e20 db5a 8700 |01b6: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d186: 2804 |01b9: goto 01bd // +0004 │ │ -42d188: 6e20 db5a 3700 |01ba: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d18e: 1407 a600 087f |01bd: const v7, #float 1.80778e+38 // #7f0800a6 │ │ -42d194: 6e20 e5bc 7000 |01c0: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d19a: 0c07 |01c3: move-result-object v7 │ │ -42d19c: 1f07 8d0a |01c4: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ -42d1a0: 5409 065f |01c6: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d1a4: 1a0a f38b |01c8: const-string v10, "neighbors_details" // string@8bf3 │ │ -42d1a8: 6e30 17ba 490a |01ca: invoke-virtual {v9, v4, v10}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42d1ae: 0c09 |01cd: move-result-object v9 │ │ -42d1b0: 6e20 b85c 6900 |01ce: invoke-virtual {v9, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42d1b6: 0a09 |01d1: move-result v9 │ │ -42d1b8: 3809 0600 |01d2: if-eqz v9, 01d8 // +0006 │ │ -42d1bc: 6e20 db5a 3700 |01d4: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d1c2: 2804 |01d7: goto 01db // +0004 │ │ -42d1c4: 6e20 db5a 8700 |01d8: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d1ca: 1407 d500 087f |01db: const v7, #float 1.80779e+38 // #7f0800d5 │ │ -42d1d0: 6e20 e5bc 7000 |01de: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d1d6: 0c07 |01e1: move-result-object v7 │ │ -42d1d8: 1f07 8d0a |01e2: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ -42d1dc: 5409 065f |01e4: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d1e0: 1a0a f695 |01e6: const-string v10, "query_time_server" // string@95f6 │ │ -42d1e4: 6e30 17ba 490a |01e8: invoke-virtual {v9, v4, v10}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42d1ea: 0c09 |01eb: move-result-object v9 │ │ -42d1ec: 6e20 b85c 6900 |01ec: invoke-virtual {v9, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42d1f2: 0a09 |01ef: move-result v9 │ │ -42d1f4: 3809 0600 |01f0: if-eqz v9, 01f6 // +0006 │ │ -42d1f8: 6e20 db5a 3700 |01f2: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d1fe: 2804 |01f5: goto 01f9 // +0004 │ │ -42d200: 6e20 db5a 8700 |01f6: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d206: 7100 6fbd 0000 |01f9: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42d20c: 0c09 |01fc: move-result-object v9 │ │ -42d20e: 6e10 da5a 0700 |01fd: invoke-virtual {v7}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42d214: 0a07 |0200: move-result v7 │ │ -42d216: 6e20 88bd 7900 |0201: invoke-virtual {v9, v7}, Lorg/purple/smoke/State;.setQueryTimerServer:(Z)V // method@bd88 │ │ -42d21c: 1407 0801 087f |0204: const v7, #float 1.8078e+38 // #7f080108 │ │ -42d222: 6e20 e5bc 7000 |0207: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d228: 0c07 |020a: move-result-object v7 │ │ -42d22a: 1f07 8d0a |020b: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ -42d22e: 5409 065f |020d: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d232: 1a0a bda1 |020f: const-string v10, "silent" // string@a1bd │ │ -42d236: 6e30 17ba 490a |0211: invoke-virtual {v9, v4, v10}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42d23c: 0c09 |0214: move-result-object v9 │ │ -42d23e: 6e20 b85c 6900 |0215: invoke-virtual {v9, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42d244: 0a09 |0218: move-result v9 │ │ -42d246: 3809 0600 |0219: if-eqz v9, 021f // +0006 │ │ -42d24a: 6e20 db5a 3700 |021b: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d250: 2804 |021e: goto 0222 // +0004 │ │ -42d252: 6e20 db5a 8700 |021f: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d258: 7100 6fbd 0000 |0222: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42d25e: 0c09 |0225: move-result-object v9 │ │ -42d260: 6e10 da5a 0700 |0226: invoke-virtual {v7}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42d266: 0a07 |0229: move-result v7 │ │ -42d268: 6e20 89bd 7900 |022a: invoke-virtual {v9, v7}, Lorg/purple/smoke/State;.setSilent:(Z)V // method@bd89 │ │ -42d26e: 1407 0c01 087f |022d: const v7, #float 1.8078e+38 // #7f08010c │ │ -42d274: 6e20 e5bc 7000 |0230: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d27a: 0c07 |0233: move-result-object v7 │ │ -42d27c: 1f07 8d0a |0234: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ -42d280: 5409 065f |0236: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d284: 6e30 17ba 4905 |0238: invoke-virtual {v9, v4, v5}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42d28a: 0c09 |023b: move-result-object v9 │ │ -42d28c: 6e10 c35c 0900 |023c: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42d292: 0a09 |023f: move-result v9 │ │ -42d294: 3809 0b00 |0240: if-eqz v9, 024b // +000b │ │ -42d298: 6e20 db5a 3700 |0242: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d29e: 5407 065f |0245: iget-object v7, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d2a2: 6e40 39ba 4765 |0247: invoke-virtual {v7, v4, v5, v6}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42d2a8: 2814 |024a: goto 025e // +0014 │ │ -42d2aa: 5409 065f |024b: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d2ae: 6e30 17ba 4905 |024d: invoke-virtual {v9, v4, v5}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42d2b4: 0c05 |0250: move-result-object v5 │ │ -42d2b6: 6e20 b85c 6500 |0251: invoke-virtual {v5, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42d2bc: 0a05 |0254: move-result v5 │ │ -42d2be: 3805 0600 |0255: if-eqz v5, 025b // +0006 │ │ -42d2c2: 6e20 db5a 3700 |0257: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d2c8: 2804 |025a: goto 025e // +0004 │ │ -42d2ca: 6e20 db5a 8700 |025b: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d2d0: 1405 a900 087f |025e: const v5, #float 1.80778e+38 // #7f0800a9 │ │ -42d2d6: 6e20 e5bc 5000 |0261: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d2dc: 0c05 |0264: move-result-object v5 │ │ -42d2de: 1f05 7d0a |0265: check-cast v5, Landroid/widget/RadioButton; // type@0a7d │ │ -42d2e2: 6e20 645a 1500 |0267: invoke-virtual {v5, v1}, Landroid/widget/RadioButton;.setEnabled:(Z)V // method@5a64 │ │ -42d2e8: 1405 aa00 087f |026a: const v5, #float 1.80778e+38 // #7f0800aa │ │ -42d2ee: 6e20 e5bc 5000 |026d: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d2f4: 0c05 |0270: move-result-object v5 │ │ -42d2f6: 1f05 7d0a |0271: check-cast v5, Landroid/widget/RadioButton; // type@0a7d │ │ -42d2fa: 6e20 645a 1500 |0273: invoke-virtual {v5, v1}, Landroid/widget/RadioButton;.setEnabled:(Z)V // method@5a64 │ │ -42d300: 1405 d400 087f |0276: const v5, #float 1.80779e+38 // #7f0800d4 │ │ -42d306: 6e20 e5bc 5000 |0279: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d30c: 0c05 |027c: move-result-object v5 │ │ -42d30e: 1f05 8b0a |027d: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ -42d312: 1a06 751c |027f: const-string v6, "HTTP" // string@1c75 │ │ -42d316: 1a07 6c49 |0281: const-string v7, "SOCKS" // string@496c │ │ -42d31a: 2420 a81b 7600 |0283: filled-new-array {v6, v7}, [Ljava/lang/String; // type@1ba8 │ │ -42d320: 0c06 |0286: move-result-object v6 │ │ -42d322: 6e20 c65a 1500 |0287: invoke-virtual {v5, v1}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ -42d328: 2207 5b0a |028a: new-instance v7, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -42d32c: 1409 0800 0901 |028c: const v9, #float 2.51629e-38 // #01090008 │ │ -42d332: 7040 cb58 0769 |028f: invoke-direct {v7, v0, v9, v6}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ -42d338: 6e20 c05a 7500 |0292: invoke-virtual {v5, v7}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -42d33e: 1405 ae00 087f |0295: const v5, #float 1.80779e+38 // #7f0800ae │ │ -42d344: 6e20 e5bc 5000 |0298: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d34a: 0c05 |029b: move-result-object v5 │ │ -42d34c: 1f05 8b0a |029c: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ -42d350: 1a06 0a4d |029e: const-string v6, "TCP" // string@4d0a │ │ -42d354: 1a07 ff4f |02a0: const-string v7, "UDP" // string@4fff │ │ -42d358: 2420 a81b 7600 |02a2: filled-new-array {v6, v7}, [Ljava/lang/String; // type@1ba8 │ │ -42d35e: 0c06 |02a5: move-result-object v6 │ │ -42d360: 6e20 c65a 1500 |02a6: invoke-virtual {v5, v1}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ -42d366: 2207 5b0a |02a9: new-instance v7, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -42d36a: 7040 cb58 0769 |02ab: invoke-direct {v7, v0, v9, v6}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ -42d370: 6e20 c05a 7500 |02ae: invoke-virtual {v5, v7}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -42d376: 1a0a e807 |02b1: const-string v10, "5" // string@07e8 │ │ -42d37a: 1a0b 5c06 |02b3: const-string v11, "10" // string@065c │ │ -42d37e: 1a0c bb06 |02b5: const-string v12, "15" // string@06bb │ │ -42d382: 1a0d 5607 |02b7: const-string v13, "25" // string@0756 │ │ -42d386: 1a0e eb07 |02b9: const-string v14, "50" // string@07eb │ │ -42d38a: 1a0f 5f06 |02bb: const-string v15, "100" // string@065f │ │ -42d38e: 1a10 6106 |02bd: const-string v16, "1000" // string@0661 │ │ -42d392: 1a11 5707 |02bf: const-string v17, "2500" // string@0757 │ │ -42d396: 1a12 ed07 |02c1: const-string v18, "5000" // string@07ed │ │ -42d39a: 1a13 3808 |02c3: const-string v19, "7500" // string@0838 │ │ -42d39e: 1a14 6206 |02c5: const-string v20, "10000" // string@0662 │ │ -42d3a2: 1a15 a906 |02c7: const-string v21, "12500" // string@06a9 │ │ -42d3a6: 1a16 c006 |02c9: const-string v22, "15000" // string@06c0 │ │ -42d3aa: 1a17 cb06 |02cb: const-string v23, "17500" // string@06cb │ │ -42d3ae: 1a18 4207 |02cd: const-string v24, "20000" // string@0742 │ │ -42d3b2: 1a19 5807 |02cf: const-string v25, "25000" // string@0758 │ │ -42d3b6: 1a1a 7d07 |02d1: const-string v26, "30000" // string@077d │ │ -42d3ba: 1a1b ab07 |02d3: const-string v27, "35000" // string@07ab │ │ -42d3be: 1a1c c807 |02d5: const-string v28, "40000" // string@07c8 │ │ -42d3c2: 1a1d db07 |02d7: const-string v29, "45000" // string@07db │ │ -42d3c6: 1a1e ee07 |02d9: const-string v30, "50000" // string@07ee │ │ -42d3ca: 1a1f 0108 |02db: const-string v31, "55000" // string@0801 │ │ -42d3ce: 1a20 1508 |02dd: const-string v32, "60000" // string@0815 │ │ -42d3d2: 1a21 1c08 |02df: const-string v33, "65000" // string@081c │ │ -42d3d6: 1a22 3008 |02e1: const-string v34, "70000" // string@0830 │ │ -42d3da: 1a23 6306 |02e3: const-string v35, "100000" // string@0663 │ │ -42d3de: 1a24 5907 |02e5: const-string v36, "250000" // string@0759 │ │ -42d3e2: 1a25 6406 |02e7: const-string v37, "1000000" // string@0664 │ │ -42d3e6: 1a26 5a07 |02e9: const-string v38, "2500000" // string@075a │ │ -42d3ea: 1a27 6506 |02eb: const-string v39, "10000000" // string@0665 │ │ -42d3ee: 251e a81b 0a00 |02ed: filled-new-array/range {v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39}, [Ljava/lang/String; // type@1ba8 │ │ -42d3f4: 0c05 |02f0: move-result-object v5 │ │ -42d3f6: 2206 5b0a |02f1: new-instance v6, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -42d3fa: 7040 cb58 0659 |02f3: invoke-direct {v6, v0, v9, v5}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ -42d400: 5405 065f |02f6: iget-object v5, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d404: 1a07 1d7c |02f8: const-string v7, "iterationCount" // string@7c1d │ │ -42d408: 6e30 17ba 4507 |02fa: invoke-virtual {v5, v4, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42d40e: 0c05 |02fd: move-result-object v5 │ │ -42d410: 6e20 cc58 5600 |02fe: invoke-virtual {v6, v5}, Landroid/widget/ArrayAdapter;.getPosition:(Ljava/lang/Object;)I // method@58cc │ │ -42d416: 0a05 |0301: move-result v5 │ │ -42d418: 1407 8500 087f |0302: const v7, #float 1.80778e+38 // #7f080085 │ │ -42d41e: 6e20 e5bc 7000 |0305: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d424: 0c0a |0308: move-result-object v10 │ │ -42d426: 1f0a 8b0a |0309: check-cast v10, Landroid/widget/Spinner; // type@0a8b │ │ -42d42a: 6e20 c05a 6a00 |030b: invoke-virtual {v10, v6}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -42d430: 1a06 820e |030e: const-string v6, "Argon2id" // string@0e82 │ │ -42d434: 1a0a 7643 |0310: const-string v10, "PBKDF2" // string@4376 │ │ -42d438: 2420 a81b a600 |0312: filled-new-array {v6, v10}, [Ljava/lang/String; // type@1ba8 │ │ -42d43e: 0c06 |0315: move-result-object v6 │ │ -42d440: 220a 5b0a |0316: new-instance v10, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -42d444: 7040 cb58 0a69 |0318: invoke-direct {v10, v0, v9, v6}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ -42d44a: 5406 065f |031b: iget-object v6, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d44e: 1a0b 9a7c |031d: const-string v11, "keyDerivationFunction" // string@7c9a │ │ -42d452: 6e30 17ba 460b |031f: invoke-virtual {v6, v4, v11}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42d458: 0c06 |0322: move-result-object v6 │ │ -42d45a: 7110 555c 0600 |0323: invoke-static {v6}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@5c55 │ │ -42d460: 0a06 |0326: move-result v6 │ │ -42d462: 2803 |0327: goto 032a // +0003 │ │ -42d464: 0000 |0328: nop // spacer │ │ -42d466: 1216 |0329: const/4 v6, #int 1 // #1 │ │ -42d468: 140b 8700 087f |032a: const v11, #float 1.80778e+38 // #7f080087 │ │ -42d46e: 6e20 e5bc b000 |032d: invoke-virtual {v0, v11}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d474: 0c0c |0330: move-result-object v12 │ │ -42d476: 1f0c 8b0a |0331: check-cast v12, Landroid/widget/Spinner; // type@0a8b │ │ -42d47a: 6e20 c05a ac00 |0333: invoke-virtual {v12, v10}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -42d480: 620a c153 |0336: sget-object v10, Lorg/purple/smoke/Cryptography;.PUBLIC_KEY_TYPES:[Ljava/lang/String; // field@53c1 │ │ -42d484: 220c 5b0a |0338: new-instance v12, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -42d488: 7040 cb58 0ca9 |033a: invoke-direct {v12, v0, v9, v10}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ -42d48e: 140a ca00 087f |033d: const v10, #float 1.80779e+38 // #7f0800ca │ │ -42d494: 6e20 e5bc a000 |0340: invoke-virtual {v0, v10}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d49a: 0c0d |0343: move-result-object v13 │ │ -42d49c: 1f0d 8b0a |0344: check-cast v13, Landroid/widget/Spinner; // type@0a8b │ │ -42d4a0: 6e20 c05a cd00 |0346: invoke-virtual {v13, v12}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -42d4a6: 1a0c 1a18 |0349: const-string v12, "ECDSA" // string@181a │ │ -42d4aa: 1a0d 6c46 |034b: const-string v13, "RSA" // string@466c │ │ -42d4ae: 1a0e 9946 |034d: const-string v14, "Rainbow" // string@4699 │ │ -42d4b2: 1a0f 9049 |034f: const-string v15, "SPHINCS" // string@4990 │ │ -42d4b6: 2440 a81b dcfe |0351: filled-new-array {v12, v13, v14, v15}, [Ljava/lang/String; // type@1ba8 │ │ -42d4bc: 0c0c |0354: move-result-object v12 │ │ -42d4be: 220d 5b0a |0355: new-instance v13, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -42d4c2: 7040 cb58 0dc9 |0357: invoke-direct {v13, v0, v9, v12}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ -42d4c8: 1409 cc00 087f |035a: const v9, #float 1.80779e+38 // #7f0800cc │ │ -42d4ce: 6e20 e5bc 9000 |035d: invoke-virtual {v0, v9}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d4d4: 0c0c |0360: move-result-object v12 │ │ -42d4d6: 1f0c 8b0a |0361: check-cast v12, Landroid/widget/Spinner; // type@0a8b │ │ -42d4da: 6e20 c05a dc00 |0363: invoke-virtual {v12, v13}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -42d4e0: 140c ab00 087f |0366: const v12, #float 1.80778e+38 // #7f0800ab │ │ -42d4e6: 6e20 e5bc c000 |0369: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d4ec: 0c0c |036c: move-result-object v12 │ │ -42d4ee: 1f0c 7f0a |036d: check-cast v12, Landroid/widget/RadioGroup; // type@0a7f │ │ -42d4f2: 220d f41a |036f: new-instance v13, Lorg/purple/smoke/Settings$39; // type@1af4 │ │ -42d4f6: 7020 92bc 0d00 |0371: invoke-direct {v13, v0}, Lorg/purple/smoke/Settings$39;.:(Lorg/purple/smoke/Settings;)V // method@bc92 │ │ -42d4fc: 6e20 675a dc00 |0374: invoke-virtual {v12, v13}, Landroid/widget/RadioGroup;.setOnCheckedChangeListener:(Landroid/widget/RadioGroup$OnCheckedChangeListener;)V // method@5a67 │ │ -42d502: 140c b600 087f |0377: const v12, #float 1.80779e+38 // #7f0800b6 │ │ -42d508: 6e20 e5bc c000 |037a: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d50e: 0c0d |037d: move-result-object v13 │ │ -42d510: 1f0d 8d0a |037e: check-cast v13, Landroid/widget/Switch; // type@0a8d │ │ -42d514: 6e20 db5a 8d00 |0380: invoke-virtual {v13, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d51a: 6e20 de5a 1d00 |0383: invoke-virtual {v13, v1}, Landroid/widget/Switch;.setEnabled:(Z)V // method@5ade │ │ -42d520: 140d 7400 087f |0386: const v13, #float 1.80777e+38 // #7f080074 │ │ -42d526: 6e20 e5bc d000 |0389: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d52c: 0c0e |038c: move-result-object v14 │ │ -42d52e: 1f0e 5e0a |038d: check-cast v14, Landroid/widget/Button; // type@0a5e │ │ -42d532: 3801 0500 |038f: if-eqz v1, 0394 // +0005 │ │ -42d536: 6e20 e058 8e00 |0391: invoke-virtual {v14, v8}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42d53c: 140e ff00 087f |0394: const v14, #float 1.8078e+38 // #7f0800ff │ │ -42d542: 6e20 e5bc e000 |0397: invoke-virtual {v0, v14}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d548: 0c0e |039a: move-result-object v14 │ │ -42d54a: 1f0e 5e0a |039b: check-cast v14, Landroid/widget/Button; // type@0a5e │ │ -42d54e: 3801 0500 |039d: if-eqz v1, 03a2 // +0005 │ │ -42d552: 6e20 e058 8e00 |039f: invoke-virtual {v14, v8}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42d558: 150e 087f |03a2: const/high16 v14, #int 2131230720 // #7f08 │ │ -42d55c: 6e20 e5bc e000 |03a4: invoke-virtual {v0, v14}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d562: 0c0e |03a7: move-result-object v14 │ │ -42d564: 1f0e 970a |03a8: check-cast v14, Landroid/widget/TextView; // type@0a97 │ │ -42d568: 7100 c4b8 0000 |03aa: invoke-static {}, Lorg/purple/smoke/About;.about:()Ljava/lang/String; // method@b8c4 │ │ -42d56e: 0c0f |03ad: move-result-object v15 │ │ -42d570: 6e20 495b fe00 |03ae: invoke-virtual {v14, v15}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42d576: 1a0f 0100 |03b1: const-string v15, " │ │ +42ce00: |[42ce00] org.purple.smoke.Settings.onCreate:(Landroid/os/Bundle;)V │ │ +42ce10: 0800 2800 |0000: move-object/from16 v0, v40 │ │ +42ce14: 7502 f23c 2800 |0002: invoke-super/range {v40, v41}, Landroid/support/v7/app/AppCompatActivity;.onCreate:(Landroid/os/Bundle;)V // method@3cf2 │ │ +42ce1a: 7401 e8bc 2800 |0005: invoke-virtual/range {v40}, Lorg/purple/smoke/Settings;.getApplicationContext:()Landroid/content/Context; // method@bce8 │ │ +42ce20: 0c01 |0008: move-result-object v1 │ │ +42ce22: 7110 f0b9 0100 |0009: invoke-static {v1}, Lorg/purple/smoke/Database;.getInstance:(Landroid/content/Context;)Lorg/purple/smoke/Database; // method@b9f0 │ │ +42ce28: 0c01 |000c: move-result-object v1 │ │ +42ce2a: 5b01 065f |000d: iput-object v1, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42ce2e: 7100 6fbd 0000 |000f: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42ce34: 0c01 |0012: move-result-object v1 │ │ +42ce36: 6e10 72bd 0100 |0013: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ +42ce3c: 0a01 |0016: move-result v1 │ │ +42ce3e: 3901 0e00 |0017: if-nez v1, 0025 // +000e │ │ +42ce42: 5402 065f |0019: iget-object v2, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42ce46: 6e10 dab9 0200 |001b: invoke-virtual {v2}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9da │ │ +42ce4c: 0a02 |001e: move-result v2 │ │ +42ce4e: 3802 0600 |001f: if-eqz v2, 0025 // +0006 │ │ +42ce52: 7601 0abd 2800 |0021: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.showAuthenticateActivity:()V // method@bd0a │ │ +42ce58: 0e00 |0024: return-void │ │ +42ce5a: 7100 0bbb 0000 |0025: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +42ce60: 0c02 |0028: move-result-object v2 │ │ +42ce62: 5403 065f |0029: iget-object v3, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42ce66: 1204 |002b: const/4 v4, #int 0 // #0 │ │ +42ce68: 1a05 6259 |002c: const-string v5, "always_awake" // string@5962 │ │ +42ce6c: 6e30 17ba 4305 |002e: invoke-virtual {v3, v4, v5}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42ce72: 0c03 |0031: move-result-object v3 │ │ +42ce74: 1a06 95a5 |0032: const-string v6, "true" // string@a595 │ │ +42ce78: 6e20 b85c 6300 |0034: invoke-virtual {v3, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42ce7e: 0a03 |0037: move-result v3 │ │ +42ce80: 6e20 1ebb 3200 |0038: invoke-virtual {v2, v3}, Lorg/purple/smoke/Kernel;.setWakeLock:(Z)V // method@bb1e │ │ +42ce86: 7100 6fbd 0000 |003b: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42ce8c: 0c02 |003e: move-result-object v2 │ │ +42ce8e: 5403 065f |003f: iget-object v3, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42ce92: 1a07 f48b |0041: const-string v7, "neighbors_echo" // string@8bf4 │ │ +42ce96: 6e30 17ba 4307 |0043: invoke-virtual {v3, v4, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42ce9c: 0c03 |0046: move-result-object v3 │ │ +42ce9e: 6e20 b85c 6300 |0047: invoke-virtual {v3, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42cea4: 0a03 |004a: move-result v3 │ │ +42cea6: 6e20 87bd 3200 |004b: invoke-virtual {v2, v3}, Lorg/purple/smoke/State;.setNeighborsEcho:(Z)V // method@bd87 │ │ +42ceac: 2202 091b |004e: new-instance v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // type@1b09 │ │ +42ceb0: 7020 c5bc 0200 |0050: invoke-direct {v2, v0}, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.:(Lorg/purple/smoke/Settings;)V // method@bcc5 │ │ +42ceb6: 5b02 075f |0053: iput-object v2, v0, Lorg/purple/smoke/Settings;.m_receiver:Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // field@5f07 │ │ +42ceba: 7601 00bd 2800 |0055: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.prepareForegroundService:()V // method@bd00 │ │ +42cec0: 1402 1f00 0a7f |0058: const v2, #float 1.83434e+38 // #7f0a001f │ │ +42cec6: 6e20 07bd 2000 |005b: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.setContentView:(I)V // method@bd07 │ │ +42cecc: 7401 ecbc 2800 |005e: invoke-virtual/range {v40}, Lorg/purple/smoke/Settings;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bcec │ │ +42ced2: 0c02 |0061: move-result-object v2 │ │ +42ced4: 7100 29bd 0000 |0062: invoke-static {}, Lorg/purple/smoke/Smoke;.networkStatusString:()Ljava/lang/String; // method@bd29 │ │ +42ceda: 0c03 |0065: move-result-object v3 │ │ +42cedc: 6e20 0a3c 3200 |0066: invoke-virtual {v2, v3}, Landroid/support/v7/app/ActionBar;.setSubtitle:(Ljava/lang/CharSequence;)V // method@3c0a │ │ +42cee2: 7401 ecbc 2800 |0069: invoke-virtual/range {v40}, Lorg/purple/smoke/Settings;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bcec │ │ +42cee8: 0c02 |006c: move-result-object v2 │ │ +42ceea: 1a03 304c |006d: const-string v3, "Smoke | Settings" // string@4c30 │ │ +42ceee: 6e20 0c3c 3200 |006f: invoke-virtual {v2, v3}, Landroid/support/v7/app/ActionBar;.setTitle:(Ljava/lang/CharSequence;)V // method@3c0c │ │ +42cef4: 2802 |0072: goto 0074 // +0002 │ │ +42cef6: 0000 |0073: nop // spacer │ │ +42cef8: 7601 01bd 2800 |0074: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.prepareListeners:()V // method@bd01 │ │ +42cefe: 1402 1e00 087f |0077: const v2, #float 1.80776e+38 // #7f08001e │ │ +42cf04: 6e20 e5bc 2000 |007a: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cf0a: 0c02 |007d: move-result-object v2 │ │ +42cf0c: 1f02 5e0a |007e: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42cf10: 6e20 e058 1200 |0080: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cf16: 1402 1f00 087f |0083: const v2, #float 1.80776e+38 // #7f08001f │ │ +42cf1c: 6e20 e5bc 2000 |0086: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cf22: 0c02 |0089: move-result-object v2 │ │ +42cf24: 1f02 5e0a |008a: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42cf28: 6e20 e058 1200 |008c: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cf2e: 1402 5d00 087f |008f: const v2, #float 1.80777e+38 // #7f08005d │ │ +42cf34: 6e20 e5bc 2000 |0092: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cf3a: 0c02 |0095: move-result-object v2 │ │ +42cf3c: 1f02 5e0a |0096: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42cf40: 1403 6e00 077f |0098: const v3, #float 1.79448e+38 // #7f07006e │ │ +42cf46: 1208 |009b: const/4 v8, #int 0 // #0 │ │ +42cf48: 6e58 df58 3288 |009c: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ +42cf4e: 1402 6400 087f |009f: const v2, #float 1.80777e+38 // #7f080064 │ │ +42cf54: 6e20 e5bc 2000 |00a2: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cf5a: 0c02 |00a5: move-result-object v2 │ │ +42cf5c: 1f02 5e0a |00a6: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42cf60: 1409 8500 077f |00a8: const v9, #float 1.79448e+38 // #7f070085 │ │ +42cf66: 6e58 df58 9288 |00ab: invoke-virtual {v2, v9, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ +42cf6c: 6e20 e058 1200 |00ae: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cf72: 1402 8200 087f |00b1: const v2, #float 1.80778e+38 // #7f080082 │ │ +42cf78: 6e20 e5bc 2000 |00b4: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cf7e: 0c02 |00b7: move-result-object v2 │ │ +42cf80: 1f02 5e0a |00b8: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42cf84: 6e58 df58 3288 |00ba: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ +42cf8a: 1402 b800 087f |00bd: const v2, #float 1.80779e+38 // #7f0800b8 │ │ +42cf90: 6e20 e5bc 2000 |00c0: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cf96: 0c02 |00c3: move-result-object v2 │ │ +42cf98: 1f02 5e0a |00c4: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42cf9c: 6e58 df58 3288 |00c6: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ +42cfa2: 1402 c200 087f |00c9: const v2, #float 1.80779e+38 // #7f0800c2 │ │ +42cfa8: 6e20 e5bc 2000 |00cc: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cfae: 0c02 |00cf: move-result-object v2 │ │ +42cfb0: 1f02 5e0a |00d0: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42cfb4: 6e58 df58 3288 |00d2: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ +42cfba: 1402 da00 087f |00d5: const v2, #float 1.80779e+38 // #7f0800da │ │ +42cfc0: 6e20 e5bc 2000 |00d8: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cfc6: 0c02 |00db: move-result-object v2 │ │ +42cfc8: 1f02 5e0a |00dc: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42cfcc: 6e20 e058 1200 |00de: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cfd2: 1402 db00 087f |00e1: const v2, #float 1.80779e+38 // #7f0800db │ │ +42cfd8: 6e20 e5bc 2000 |00e4: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cfde: 0c02 |00e7: move-result-object v2 │ │ +42cfe0: 1f02 5e0a |00e8: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42cfe4: 6e20 e058 1200 |00ea: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cfea: 1402 e000 087f |00ed: const v2, #float 1.8078e+38 // #7f0800e0 │ │ +42cff0: 6e20 e5bc 2000 |00f0: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42cff6: 0c02 |00f3: move-result-object v2 │ │ +42cff8: 1f02 5e0a |00f4: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42cffc: 6e20 e058 1200 |00f6: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42d002: 1402 e100 087f |00f9: const v2, #float 1.8078e+38 // #7f0800e1 │ │ +42d008: 6e20 e5bc 2000 |00fc: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d00e: 0c02 |00ff: move-result-object v2 │ │ +42d010: 1f02 5e0a |0100: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d014: 6e20 e058 1200 |0102: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42d01a: 1402 e800 087f |0105: const v2, #float 1.8078e+38 // #7f0800e8 │ │ +42d020: 6e20 e5bc 2000 |0108: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d026: 0c02 |010b: move-result-object v2 │ │ +42d028: 1f02 5e0a |010c: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d02c: 6e20 e058 1200 |010e: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42d032: 1402 0201 087f |0111: const v2, #float 1.8078e+38 // #7f080102 │ │ +42d038: 6e20 e5bc 2000 |0114: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d03e: 0c02 |0117: move-result-object v2 │ │ +42d040: 1f02 5e0a |0118: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d044: 6e58 df58 9288 |011a: invoke-virtual {v2, v9, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ +42d04a: 6e20 e058 1200 |011d: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42d050: 1402 0901 087f |0120: const v2, #float 1.8078e+38 // #7f080109 │ │ +42d056: 6e20 e5bc 2000 |0123: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d05c: 0c02 |0126: move-result-object v2 │ │ +42d05e: 1f02 5e0a |0127: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d062: 6e58 df58 3288 |0129: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ +42d068: 1402 0a01 087f |012c: const v2, #float 1.8078e+38 // #7f08010a │ │ +42d06e: 6e20 e5bc 2000 |012f: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d074: 0c02 |0132: move-result-object v2 │ │ +42d076: 1f02 5e0a |0133: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d07a: 6e58 df58 3288 |0135: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ +42d080: 1402 2500 087f |0138: const v2, #float 1.80776e+38 // #7f080025 │ │ +42d086: 6e20 e5bc 2000 |013b: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d08c: 0c02 |013e: move-result-object v2 │ │ +42d08e: 1f02 8d0a |013f: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42d092: 1213 |0141: const/4 v3, #int 1 // #1 │ │ +42d094: 6e20 db5a 3200 |0142: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d09a: 1402 2c00 087f |0145: const v2, #float 1.80776e+38 // #7f08002c │ │ +42d0a0: 6e20 e5bc 2000 |0148: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d0a6: 0c09 |014b: move-result-object v9 │ │ +42d0a8: 1f09 8d0a |014c: check-cast v9, Landroid/widget/Switch; // type@0a8d │ │ +42d0ac: 540a 065f |014e: iget-object v10, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d0b0: 1a0b 615b |0150: const-string v11, "automatic_neighbors_refresh" // string@5b61 │ │ +42d0b4: 6e30 17ba 4a0b |0152: invoke-virtual {v10, v4, v11}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42d0ba: 0c0a |0155: move-result-object v10 │ │ +42d0bc: 6e10 c35c 0a00 |0156: invoke-virtual {v10}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42d0c2: 0a0a |0159: move-result v10 │ │ +42d0c4: 380a 0b00 |015a: if-eqz v10, 0165 // +000b │ │ +42d0c8: 6e20 db5a 3900 |015c: invoke-virtual {v9, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d0ce: 540a 065f |015f: iget-object v10, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d0d2: 6e40 39ba 4a6b |0161: invoke-virtual {v10, v4, v11, v6}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42d0d8: 2814 |0164: goto 0178 // +0014 │ │ +42d0da: 540a 065f |0165: iget-object v10, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d0de: 6e30 17ba 4a0b |0167: invoke-virtual {v10, v4, v11}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42d0e4: 0c0a |016a: move-result-object v10 │ │ +42d0e6: 6e20 b85c 6a00 |016b: invoke-virtual {v10, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42d0ec: 0a0a |016e: move-result v10 │ │ +42d0ee: 380a 0600 |016f: if-eqz v10, 0175 // +0006 │ │ +42d0f2: 6e20 db5a 3900 |0171: invoke-virtual {v9, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d0f8: 2804 |0174: goto 0178 // +0004 │ │ +42d0fa: 6e20 db5a 8900 |0175: invoke-virtual {v9, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d100: 6e10 da5a 0900 |0178: invoke-virtual {v9}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42d106: 0a09 |017b: move-result v9 │ │ +42d108: 3809 0500 |017c: if-eqz v9, 0181 // +0005 │ │ +42d10c: 7601 14bd 2800 |017e: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.startTimers:()V // method@bd14 │ │ +42d112: 1409 5c00 087f |0181: const v9, #float 1.80777e+38 // #7f08005c │ │ +42d118: 6e20 e5bc 9000 |0184: invoke-virtual {v0, v9}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d11e: 0c09 |0187: move-result-object v9 │ │ +42d120: 1f09 8d0a |0188: check-cast v9, Landroid/widget/Switch; // type@0a8d │ │ +42d124: 540a 065f |018a: iget-object v10, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d128: 6e30 17ba 4a07 |018c: invoke-virtual {v10, v4, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42d12e: 0c07 |018f: move-result-object v7 │ │ +42d130: 6e20 b85c 6700 |0190: invoke-virtual {v7, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42d136: 0a07 |0193: move-result v7 │ │ +42d138: 3807 0600 |0194: if-eqz v7, 019a // +0006 │ │ +42d13c: 6e20 db5a 3900 |0196: invoke-virtual {v9, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d142: 2804 |0199: goto 019d // +0004 │ │ +42d144: 6e20 db5a 8900 |019a: invoke-virtual {v9, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d14a: 1407 7300 087f |019d: const v7, #float 1.80777e+38 // #7f080073 │ │ +42d150: 6e20 e5bc 7000 |01a0: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d156: 0c07 |01a3: move-result-object v7 │ │ +42d158: 1f07 8d0a |01a4: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ +42d15c: 5409 065f |01a6: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d160: 1a0a 5569 |01a8: const-string v10, "foreground_service" // string@6955 │ │ +42d164: 6e30 17ba 490a |01aa: invoke-virtual {v9, v4, v10}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42d16a: 0c09 |01ad: move-result-object v9 │ │ +42d16c: 1a0a 2068 |01ae: const-string v10, "false" // string@6820 │ │ +42d170: 6e20 b85c a900 |01b0: invoke-virtual {v9, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42d176: 0a09 |01b3: move-result v9 │ │ +42d178: 3809 0600 |01b4: if-eqz v9, 01ba // +0006 │ │ +42d17c: 6e20 db5a 8700 |01b6: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d182: 2804 |01b9: goto 01bd // +0004 │ │ +42d184: 6e20 db5a 3700 |01ba: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d18a: 1407 a600 087f |01bd: const v7, #float 1.80778e+38 // #7f0800a6 │ │ +42d190: 6e20 e5bc 7000 |01c0: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d196: 0c07 |01c3: move-result-object v7 │ │ +42d198: 1f07 8d0a |01c4: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ +42d19c: 5409 065f |01c6: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d1a0: 1a0a f38b |01c8: const-string v10, "neighbors_details" // string@8bf3 │ │ +42d1a4: 6e30 17ba 490a |01ca: invoke-virtual {v9, v4, v10}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42d1aa: 0c09 |01cd: move-result-object v9 │ │ +42d1ac: 6e20 b85c 6900 |01ce: invoke-virtual {v9, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42d1b2: 0a09 |01d1: move-result v9 │ │ +42d1b4: 3809 0600 |01d2: if-eqz v9, 01d8 // +0006 │ │ +42d1b8: 6e20 db5a 3700 |01d4: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d1be: 2804 |01d7: goto 01db // +0004 │ │ +42d1c0: 6e20 db5a 8700 |01d8: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d1c6: 1407 d500 087f |01db: const v7, #float 1.80779e+38 // #7f0800d5 │ │ +42d1cc: 6e20 e5bc 7000 |01de: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d1d2: 0c07 |01e1: move-result-object v7 │ │ +42d1d4: 1f07 8d0a |01e2: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ +42d1d8: 5409 065f |01e4: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d1dc: 1a0a f695 |01e6: const-string v10, "query_time_server" // string@95f6 │ │ +42d1e0: 6e30 17ba 490a |01e8: invoke-virtual {v9, v4, v10}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42d1e6: 0c09 |01eb: move-result-object v9 │ │ +42d1e8: 6e20 b85c 6900 |01ec: invoke-virtual {v9, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42d1ee: 0a09 |01ef: move-result v9 │ │ +42d1f0: 3809 0600 |01f0: if-eqz v9, 01f6 // +0006 │ │ +42d1f4: 6e20 db5a 3700 |01f2: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d1fa: 2804 |01f5: goto 01f9 // +0004 │ │ +42d1fc: 6e20 db5a 8700 |01f6: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d202: 7100 6fbd 0000 |01f9: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42d208: 0c09 |01fc: move-result-object v9 │ │ +42d20a: 6e10 da5a 0700 |01fd: invoke-virtual {v7}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42d210: 0a07 |0200: move-result v7 │ │ +42d212: 6e20 88bd 7900 |0201: invoke-virtual {v9, v7}, Lorg/purple/smoke/State;.setQueryTimerServer:(Z)V // method@bd88 │ │ +42d218: 1407 0801 087f |0204: const v7, #float 1.8078e+38 // #7f080108 │ │ +42d21e: 6e20 e5bc 7000 |0207: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d224: 0c07 |020a: move-result-object v7 │ │ +42d226: 1f07 8d0a |020b: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ +42d22a: 5409 065f |020d: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d22e: 1a0a bda1 |020f: const-string v10, "silent" // string@a1bd │ │ +42d232: 6e30 17ba 490a |0211: invoke-virtual {v9, v4, v10}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42d238: 0c09 |0214: move-result-object v9 │ │ +42d23a: 6e20 b85c 6900 |0215: invoke-virtual {v9, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42d240: 0a09 |0218: move-result v9 │ │ +42d242: 3809 0600 |0219: if-eqz v9, 021f // +0006 │ │ +42d246: 6e20 db5a 3700 |021b: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d24c: 2804 |021e: goto 0222 // +0004 │ │ +42d24e: 6e20 db5a 8700 |021f: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d254: 7100 6fbd 0000 |0222: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42d25a: 0c09 |0225: move-result-object v9 │ │ +42d25c: 6e10 da5a 0700 |0226: invoke-virtual {v7}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42d262: 0a07 |0229: move-result v7 │ │ +42d264: 6e20 89bd 7900 |022a: invoke-virtual {v9, v7}, Lorg/purple/smoke/State;.setSilent:(Z)V // method@bd89 │ │ +42d26a: 1407 0c01 087f |022d: const v7, #float 1.8078e+38 // #7f08010c │ │ +42d270: 6e20 e5bc 7000 |0230: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d276: 0c07 |0233: move-result-object v7 │ │ +42d278: 1f07 8d0a |0234: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ +42d27c: 5409 065f |0236: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d280: 6e30 17ba 4905 |0238: invoke-virtual {v9, v4, v5}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42d286: 0c09 |023b: move-result-object v9 │ │ +42d288: 6e10 c35c 0900 |023c: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42d28e: 0a09 |023f: move-result v9 │ │ +42d290: 3809 0b00 |0240: if-eqz v9, 024b // +000b │ │ +42d294: 6e20 db5a 3700 |0242: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d29a: 5407 065f |0245: iget-object v7, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d29e: 6e40 39ba 4765 |0247: invoke-virtual {v7, v4, v5, v6}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42d2a4: 2814 |024a: goto 025e // +0014 │ │ +42d2a6: 5409 065f |024b: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d2aa: 6e30 17ba 4905 |024d: invoke-virtual {v9, v4, v5}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42d2b0: 0c05 |0250: move-result-object v5 │ │ +42d2b2: 6e20 b85c 6500 |0251: invoke-virtual {v5, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42d2b8: 0a05 |0254: move-result v5 │ │ +42d2ba: 3805 0600 |0255: if-eqz v5, 025b // +0006 │ │ +42d2be: 6e20 db5a 3700 |0257: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d2c4: 2804 |025a: goto 025e // +0004 │ │ +42d2c6: 6e20 db5a 8700 |025b: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d2cc: 1405 a900 087f |025e: const v5, #float 1.80778e+38 // #7f0800a9 │ │ +42d2d2: 6e20 e5bc 5000 |0261: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d2d8: 0c05 |0264: move-result-object v5 │ │ +42d2da: 1f05 7d0a |0265: check-cast v5, Landroid/widget/RadioButton; // type@0a7d │ │ +42d2de: 6e20 645a 1500 |0267: invoke-virtual {v5, v1}, Landroid/widget/RadioButton;.setEnabled:(Z)V // method@5a64 │ │ +42d2e4: 1405 aa00 087f |026a: const v5, #float 1.80778e+38 // #7f0800aa │ │ +42d2ea: 6e20 e5bc 5000 |026d: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d2f0: 0c05 |0270: move-result-object v5 │ │ +42d2f2: 1f05 7d0a |0271: check-cast v5, Landroid/widget/RadioButton; // type@0a7d │ │ +42d2f6: 6e20 645a 1500 |0273: invoke-virtual {v5, v1}, Landroid/widget/RadioButton;.setEnabled:(Z)V // method@5a64 │ │ +42d2fc: 1405 d400 087f |0276: const v5, #float 1.80779e+38 // #7f0800d4 │ │ +42d302: 6e20 e5bc 5000 |0279: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d308: 0c05 |027c: move-result-object v5 │ │ +42d30a: 1f05 8b0a |027d: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ +42d30e: 1a06 751c |027f: const-string v6, "HTTP" // string@1c75 │ │ +42d312: 1a07 6c49 |0281: const-string v7, "SOCKS" // string@496c │ │ +42d316: 2420 a81b 7600 |0283: filled-new-array {v6, v7}, [Ljava/lang/String; // type@1ba8 │ │ +42d31c: 0c06 |0286: move-result-object v6 │ │ +42d31e: 6e20 c65a 1500 |0287: invoke-virtual {v5, v1}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ +42d324: 2207 5b0a |028a: new-instance v7, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +42d328: 1409 0800 0901 |028c: const v9, #float 2.51629e-38 // #01090008 │ │ +42d32e: 7040 cb58 0769 |028f: invoke-direct {v7, v0, v9, v6}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ +42d334: 6e20 c05a 7500 |0292: invoke-virtual {v5, v7}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +42d33a: 1405 ae00 087f |0295: const v5, #float 1.80779e+38 // #7f0800ae │ │ +42d340: 6e20 e5bc 5000 |0298: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d346: 0c05 |029b: move-result-object v5 │ │ +42d348: 1f05 8b0a |029c: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ +42d34c: 1a06 0a4d |029e: const-string v6, "TCP" // string@4d0a │ │ +42d350: 1a07 ff4f |02a0: const-string v7, "UDP" // string@4fff │ │ +42d354: 2420 a81b 7600 |02a2: filled-new-array {v6, v7}, [Ljava/lang/String; // type@1ba8 │ │ +42d35a: 0c06 |02a5: move-result-object v6 │ │ +42d35c: 6e20 c65a 1500 |02a6: invoke-virtual {v5, v1}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ +42d362: 2207 5b0a |02a9: new-instance v7, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +42d366: 7040 cb58 0769 |02ab: invoke-direct {v7, v0, v9, v6}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ +42d36c: 6e20 c05a 7500 |02ae: invoke-virtual {v5, v7}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +42d372: 1a0a e807 |02b1: const-string v10, "5" // string@07e8 │ │ +42d376: 1a0b 5c06 |02b3: const-string v11, "10" // string@065c │ │ +42d37a: 1a0c bb06 |02b5: const-string v12, "15" // string@06bb │ │ +42d37e: 1a0d 5607 |02b7: const-string v13, "25" // string@0756 │ │ +42d382: 1a0e eb07 |02b9: const-string v14, "50" // string@07eb │ │ +42d386: 1a0f 5f06 |02bb: const-string v15, "100" // string@065f │ │ +42d38a: 1a10 6106 |02bd: const-string v16, "1000" // string@0661 │ │ +42d38e: 1a11 5707 |02bf: const-string v17, "2500" // string@0757 │ │ +42d392: 1a12 ed07 |02c1: const-string v18, "5000" // string@07ed │ │ +42d396: 1a13 3808 |02c3: const-string v19, "7500" // string@0838 │ │ +42d39a: 1a14 6206 |02c5: const-string v20, "10000" // string@0662 │ │ +42d39e: 1a15 a906 |02c7: const-string v21, "12500" // string@06a9 │ │ +42d3a2: 1a16 c006 |02c9: const-string v22, "15000" // string@06c0 │ │ +42d3a6: 1a17 cb06 |02cb: const-string v23, "17500" // string@06cb │ │ +42d3aa: 1a18 4207 |02cd: const-string v24, "20000" // string@0742 │ │ +42d3ae: 1a19 5807 |02cf: const-string v25, "25000" // string@0758 │ │ +42d3b2: 1a1a 7d07 |02d1: const-string v26, "30000" // string@077d │ │ +42d3b6: 1a1b ab07 |02d3: const-string v27, "35000" // string@07ab │ │ +42d3ba: 1a1c c807 |02d5: const-string v28, "40000" // string@07c8 │ │ +42d3be: 1a1d db07 |02d7: const-string v29, "45000" // string@07db │ │ +42d3c2: 1a1e ee07 |02d9: const-string v30, "50000" // string@07ee │ │ +42d3c6: 1a1f 0108 |02db: const-string v31, "55000" // string@0801 │ │ +42d3ca: 1a20 1508 |02dd: const-string v32, "60000" // string@0815 │ │ +42d3ce: 1a21 1c08 |02df: const-string v33, "65000" // string@081c │ │ +42d3d2: 1a22 3008 |02e1: const-string v34, "70000" // string@0830 │ │ +42d3d6: 1a23 6306 |02e3: const-string v35, "100000" // string@0663 │ │ +42d3da: 1a24 5907 |02e5: const-string v36, "250000" // string@0759 │ │ +42d3de: 1a25 6406 |02e7: const-string v37, "1000000" // string@0664 │ │ +42d3e2: 1a26 5a07 |02e9: const-string v38, "2500000" // string@075a │ │ +42d3e6: 1a27 6506 |02eb: const-string v39, "10000000" // string@0665 │ │ +42d3ea: 251e a81b 0a00 |02ed: filled-new-array/range {v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39}, [Ljava/lang/String; // type@1ba8 │ │ +42d3f0: 0c05 |02f0: move-result-object v5 │ │ +42d3f2: 2206 5b0a |02f1: new-instance v6, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +42d3f6: 7040 cb58 0659 |02f3: invoke-direct {v6, v0, v9, v5}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ +42d3fc: 5405 065f |02f6: iget-object v5, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d400: 1a07 1d7c |02f8: const-string v7, "iterationCount" // string@7c1d │ │ +42d404: 6e30 17ba 4507 |02fa: invoke-virtual {v5, v4, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42d40a: 0c05 |02fd: move-result-object v5 │ │ +42d40c: 6e20 cc58 5600 |02fe: invoke-virtual {v6, v5}, Landroid/widget/ArrayAdapter;.getPosition:(Ljava/lang/Object;)I // method@58cc │ │ +42d412: 0a05 |0301: move-result v5 │ │ +42d414: 1407 8500 087f |0302: const v7, #float 1.80778e+38 // #7f080085 │ │ +42d41a: 6e20 e5bc 7000 |0305: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d420: 0c0a |0308: move-result-object v10 │ │ +42d422: 1f0a 8b0a |0309: check-cast v10, Landroid/widget/Spinner; // type@0a8b │ │ +42d426: 6e20 c05a 6a00 |030b: invoke-virtual {v10, v6}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +42d42c: 1a06 820e |030e: const-string v6, "Argon2id" // string@0e82 │ │ +42d430: 1a0a 7643 |0310: const-string v10, "PBKDF2" // string@4376 │ │ +42d434: 2420 a81b a600 |0312: filled-new-array {v6, v10}, [Ljava/lang/String; // type@1ba8 │ │ +42d43a: 0c06 |0315: move-result-object v6 │ │ +42d43c: 220a 5b0a |0316: new-instance v10, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +42d440: 7040 cb58 0a69 |0318: invoke-direct {v10, v0, v9, v6}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ +42d446: 5406 065f |031b: iget-object v6, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d44a: 1a0b 9a7c |031d: const-string v11, "keyDerivationFunction" // string@7c9a │ │ +42d44e: 6e30 17ba 460b |031f: invoke-virtual {v6, v4, v11}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42d454: 0c06 |0322: move-result-object v6 │ │ +42d456: 7110 555c 0600 |0323: invoke-static {v6}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@5c55 │ │ +42d45c: 0a06 |0326: move-result v6 │ │ +42d45e: 2803 |0327: goto 032a // +0003 │ │ +42d460: 0000 |0328: nop // spacer │ │ +42d462: 1216 |0329: const/4 v6, #int 1 // #1 │ │ +42d464: 140b 8700 087f |032a: const v11, #float 1.80778e+38 // #7f080087 │ │ +42d46a: 6e20 e5bc b000 |032d: invoke-virtual {v0, v11}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d470: 0c0c |0330: move-result-object v12 │ │ +42d472: 1f0c 8b0a |0331: check-cast v12, Landroid/widget/Spinner; // type@0a8b │ │ +42d476: 6e20 c05a ac00 |0333: invoke-virtual {v12, v10}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +42d47c: 620a c153 |0336: sget-object v10, Lorg/purple/smoke/Cryptography;.PUBLIC_KEY_TYPES:[Ljava/lang/String; // field@53c1 │ │ +42d480: 220c 5b0a |0338: new-instance v12, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +42d484: 7040 cb58 0ca9 |033a: invoke-direct {v12, v0, v9, v10}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ +42d48a: 140a ca00 087f |033d: const v10, #float 1.80779e+38 // #7f0800ca │ │ +42d490: 6e20 e5bc a000 |0340: invoke-virtual {v0, v10}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d496: 0c0d |0343: move-result-object v13 │ │ +42d498: 1f0d 8b0a |0344: check-cast v13, Landroid/widget/Spinner; // type@0a8b │ │ +42d49c: 6e20 c05a cd00 |0346: invoke-virtual {v13, v12}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +42d4a2: 1a0c 1a18 |0349: const-string v12, "ECDSA" // string@181a │ │ +42d4a6: 1a0d 6c46 |034b: const-string v13, "RSA" // string@466c │ │ +42d4aa: 1a0e 9946 |034d: const-string v14, "Rainbow" // string@4699 │ │ +42d4ae: 1a0f 9049 |034f: const-string v15, "SPHINCS" // string@4990 │ │ +42d4b2: 2440 a81b dcfe |0351: filled-new-array {v12, v13, v14, v15}, [Ljava/lang/String; // type@1ba8 │ │ +42d4b8: 0c0c |0354: move-result-object v12 │ │ +42d4ba: 220d 5b0a |0355: new-instance v13, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +42d4be: 7040 cb58 0dc9 |0357: invoke-direct {v13, v0, v9, v12}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ +42d4c4: 1409 cc00 087f |035a: const v9, #float 1.80779e+38 // #7f0800cc │ │ +42d4ca: 6e20 e5bc 9000 |035d: invoke-virtual {v0, v9}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d4d0: 0c0c |0360: move-result-object v12 │ │ +42d4d2: 1f0c 8b0a |0361: check-cast v12, Landroid/widget/Spinner; // type@0a8b │ │ +42d4d6: 6e20 c05a dc00 |0363: invoke-virtual {v12, v13}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +42d4dc: 140c ab00 087f |0366: const v12, #float 1.80778e+38 // #7f0800ab │ │ +42d4e2: 6e20 e5bc c000 |0369: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d4e8: 0c0c |036c: move-result-object v12 │ │ +42d4ea: 1f0c 7f0a |036d: check-cast v12, Landroid/widget/RadioGroup; // type@0a7f │ │ +42d4ee: 220d f41a |036f: new-instance v13, Lorg/purple/smoke/Settings$39; // type@1af4 │ │ +42d4f2: 7020 92bc 0d00 |0371: invoke-direct {v13, v0}, Lorg/purple/smoke/Settings$39;.:(Lorg/purple/smoke/Settings;)V // method@bc92 │ │ +42d4f8: 6e20 675a dc00 |0374: invoke-virtual {v12, v13}, Landroid/widget/RadioGroup;.setOnCheckedChangeListener:(Landroid/widget/RadioGroup$OnCheckedChangeListener;)V // method@5a67 │ │ +42d4fe: 140c b600 087f |0377: const v12, #float 1.80779e+38 // #7f0800b6 │ │ +42d504: 6e20 e5bc c000 |037a: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d50a: 0c0d |037d: move-result-object v13 │ │ +42d50c: 1f0d 8d0a |037e: check-cast v13, Landroid/widget/Switch; // type@0a8d │ │ +42d510: 6e20 db5a 8d00 |0380: invoke-virtual {v13, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d516: 6e20 de5a 1d00 |0383: invoke-virtual {v13, v1}, Landroid/widget/Switch;.setEnabled:(Z)V // method@5ade │ │ +42d51c: 140d 7400 087f |0386: const v13, #float 1.80777e+38 // #7f080074 │ │ +42d522: 6e20 e5bc d000 |0389: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d528: 0c0e |038c: move-result-object v14 │ │ +42d52a: 1f0e 5e0a |038d: check-cast v14, Landroid/widget/Button; // type@0a5e │ │ +42d52e: 3801 0500 |038f: if-eqz v1, 0394 // +0005 │ │ +42d532: 6e20 e058 8e00 |0391: invoke-virtual {v14, v8}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42d538: 140e ff00 087f |0394: const v14, #float 1.8078e+38 // #7f0800ff │ │ +42d53e: 6e20 e5bc e000 |0397: invoke-virtual {v0, v14}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d544: 0c0e |039a: move-result-object v14 │ │ +42d546: 1f0e 5e0a |039b: check-cast v14, Landroid/widget/Button; // type@0a5e │ │ +42d54a: 3801 0500 |039d: if-eqz v1, 03a2 // +0005 │ │ +42d54e: 6e20 e058 8e00 |039f: invoke-virtual {v14, v8}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42d554: 150e 087f |03a2: const/high16 v14, #int 2131230720 // #7f08 │ │ +42d558: 6e20 e5bc e000 |03a4: invoke-virtual {v0, v14}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d55e: 0c0e |03a7: move-result-object v14 │ │ +42d560: 1f0e 970a |03a8: check-cast v14, Landroid/widget/TextView; // type@0a97 │ │ +42d564: 7100 c4b8 0000 |03aa: invoke-static {}, Lorg/purple/smoke/About;.about:()Ljava/lang/String; // method@b8c4 │ │ +42d56a: 0c0f |03ad: move-result-object v15 │ │ +42d56c: 6e20 495b fe00 |03ae: invoke-virtual {v14, v15}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42d572: 1a0f 0100 |03b1: const-string v15, " │ │ " // string@0001 │ │ -42d57a: 6e20 035b fe00 |03b3: invoke-virtual {v14, v15}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ -42d580: 220c f10a |03b6: new-instance v12, Ljava/lang/StringBuilder; // type@0af1 │ │ -42d584: 7010 ee5c 0c00 |03b8: invoke-direct {v12}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42d58a: 1a0d 0a53 |03bb: const-string v13, "WakeLock Locked: " // string@530a │ │ -42d58e: 6e20 f95c dc00 |03bd: invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42d594: 7100 0bbb 0000 |03c0: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -42d59a: 0c0d |03c3: move-result-object v13 │ │ -42d59c: 6e10 1fbb 0d00 |03c4: invoke-virtual {v13}, Lorg/purple/smoke/Kernel;.wakeLocked:()Z // method@bb1f │ │ -42d5a2: 0a0d |03c7: move-result v13 │ │ -42d5a4: 7110 eebb 0d00 |03c8: invoke-static {v13}, Lorg/purple/smoke/Miscellaneous;.niceBoolean:(Z)Ljava/lang/String; // method@bbee │ │ -42d5aa: 0c0d |03cb: move-result-object v13 │ │ -42d5ac: 6e20 f95c dc00 |03cc: invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42d5b2: 6e10 035d 0c00 |03cf: invoke-virtual {v12}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42d5b8: 0c0c |03d2: move-result-object v12 │ │ -42d5ba: 6e20 035b ce00 |03d3: invoke-virtual {v14, v12}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ -42d5c0: 6e20 035b fe00 |03d6: invoke-virtual {v14, v15}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ -42d5c6: 220c f10a |03d9: new-instance v12, Ljava/lang/StringBuilder; // type@0af1 │ │ -42d5ca: 7010 ee5c 0c00 |03db: invoke-direct {v12}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42d5d0: 1a0d 1353 |03de: const-string v13, "WiFiLock Locked: " // string@5313 │ │ -42d5d4: 6e20 f95c dc00 |03e0: invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42d5da: 7100 0bbb 0000 |03e3: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ -42d5e0: 0c0d |03e6: move-result-object v13 │ │ -42d5e2: 6e10 21bb 0d00 |03e7: invoke-virtual {v13}, Lorg/purple/smoke/Kernel;.wifiLocked:()Z // method@bb21 │ │ -42d5e8: 0a0d |03ea: move-result v13 │ │ -42d5ea: 7110 eebb 0d00 |03eb: invoke-static {v13}, Lorg/purple/smoke/Miscellaneous;.niceBoolean:(Z)Ljava/lang/String; // method@bbee │ │ -42d5f0: 0c0d |03ee: move-result-object v13 │ │ -42d5f2: 6e20 f95c dc00 |03ef: invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42d5f8: 6e10 035d 0c00 |03f2: invoke-virtual {v12}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42d5fe: 0c0c |03f5: move-result-object v12 │ │ -42d600: 6e20 035b ce00 |03f6: invoke-virtual {v14, v12}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ -42d606: 140c ad00 087f |03f9: const v12, #float 1.80779e+38 // #7f0800ad │ │ -42d60c: 6e20 e5bc c000 |03fc: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d612: 0c0c |03ff: move-result-object v12 │ │ -42d614: 1f0c 970a |0400: check-cast v12, Landroid/widget/TextView; // type@0a97 │ │ -42d618: 6e20 335b 8c00 |0402: invoke-virtual {v12, v8}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42d61e: 140c ac00 087f |0405: const v12, #float 1.80778e+38 // #7f0800ac │ │ -42d624: 6e20 e5bc c000 |0408: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d62a: 0c0c |040b: move-result-object v12 │ │ -42d62c: 1f0c 970a |040c: check-cast v12, Landroid/widget/TextView; // type@0a97 │ │ -42d630: 6e20 335b 1c00 |040e: invoke-virtual {v12, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42d636: 233d 9d1b |0411: new-array v13, v3, [Landroid/text/InputFilter; // type@1b9d │ │ -42d63a: 620e 0b5f |0413: sget-object v14, Lorg/purple/smoke/Settings;.s_portFilter:Landroid/text/InputFilter; // field@5f0b │ │ -42d63e: 4d0e 0d08 |0415: aput-object v14, v13, v8 │ │ -42d642: 6e20 345b dc00 |0417: invoke-virtual {v12, v13}, Landroid/widget/TextView;.setFilters:([Landroid/text/InputFilter;)V // method@5b34 │ │ -42d648: 1a0d df07 |041a: const-string v13, "4710" // string@07df │ │ -42d64c: 6e20 495b dc00 |041c: invoke-virtual {v12, v13}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42d652: 140c a800 087f |041f: const v12, #float 1.80778e+38 // #7f0800a8 │ │ -42d658: 6e20 e5bc c000 |0422: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d65e: 0c0c |0425: move-result-object v12 │ │ -42d660: 1f0c 970a |0426: check-cast v12, Landroid/widget/TextView; // type@0a97 │ │ -42d664: 3801 0500 |0428: if-eqz v1, 042d // +0005 │ │ -42d668: 6e10 265b 0c00 |042a: invoke-virtual {v12}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ -42d66e: 6e20 335b 1c00 |042d: invoke-virtual {v12, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42d674: 140c b700 087f |0430: const v12, #float 1.80779e+38 // #7f0800b7 │ │ -42d67a: 6e20 e5bc c000 |0433: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d680: 0c0d |0436: move-result-object v13 │ │ -42d682: 1f0d 970a |0437: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ -42d686: 6e20 335b 1d00 |0439: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42d68c: 140d bd00 087f |043c: const v13, #float 1.80779e+38 // #7f0800bd │ │ -42d692: 6e20 e5bc d000 |043f: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d698: 0c0d |0442: move-result-object v13 │ │ -42d69a: 1f0d 970a |0443: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ -42d69e: 6e20 335b 1d00 |0445: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42d6a4: 140d be00 087f |0448: const v13, #float 1.80779e+38 // #7f0800be │ │ -42d6aa: 6e20 e5bc d000 |044b: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d6b0: 0c0d |044e: move-result-object v13 │ │ -42d6b2: 1f0d 970a |044f: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ -42d6b6: 6e20 335b 1d00 |0451: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42d6bc: 140d c400 087f |0454: const v13, #float 1.80779e+38 // #7f0800c4 │ │ -42d6c2: 6e20 e5bc d000 |0457: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d6c8: 0c0f |045a: move-result-object v15 │ │ -42d6ca: 1f0f 970a |045b: check-cast v15, Landroid/widget/TextView; // type@0a97 │ │ -42d6ce: 3901 0500 |045d: if-nez v1, 0462 // +0005 │ │ -42d6d2: 6e10 265b 0f00 |045f: invoke-virtual {v15}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ -42d6d8: 1a0d 0000 |0462: const-string v13, "" // string@0000 │ │ -42d6dc: 6e20 495b df00 |0464: invoke-virtual {v15, v13}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42d6e2: 140f c500 087f |0467: const v15, #float 1.80779e+38 // #7f0800c5 │ │ -42d6e8: 6e20 e5bc f000 |046a: invoke-virtual {v0, v15}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d6ee: 0c0f |046d: move-result-object v15 │ │ -42d6f0: 1f0f 970a |046e: check-cast v15, Landroid/widget/TextView; // type@0a97 │ │ -42d6f4: 6e20 495b df00 |0470: invoke-virtual {v15, v13}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42d6fa: 140d d200 087f |0473: const v13, #float 1.80779e+38 // #7f0800d2 │ │ -42d700: 6e20 e5bc d000 |0476: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d706: 0c0d |0479: move-result-object v13 │ │ -42d708: 1f0d 970a |047a: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ -42d70c: 6e20 335b 1d00 |047c: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42d712: 140d d300 087f |047f: const v13, #float 1.80779e+38 // #7f0800d3 │ │ -42d718: 6e20 e5bc d000 |0482: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d71e: 0c0d |0485: move-result-object v13 │ │ -42d720: 1f0d 970a |0486: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ -42d724: 6e20 335b 1d00 |0488: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42d72a: 233f 9d1b |048b: new-array v15, v3, [Landroid/text/InputFilter; // type@1b9d │ │ -42d72e: 4d0e 0f08 |048d: aput-object v14, v15, v8 │ │ -42d732: 6e20 345b fd00 |048f: invoke-virtual {v13, v15}, Landroid/widget/TextView;.setFilters:([Landroid/text/InputFilter;)V // method@5b34 │ │ -42d738: 6e20 e5bc 7000 |0492: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d73e: 0c07 |0495: move-result-object v7 │ │ -42d740: 1f07 8b0a |0496: check-cast v7, Landroid/widget/Spinner; // type@0a8b │ │ -42d744: 7120 7e5c 5800 |0498: invoke-static {v8, v5}, Ljava/lang/Math;.max:(II)I // method@5c7e │ │ -42d74a: 0a05 |049b: move-result v5 │ │ -42d74c: 6e20 cc5a 5700 |049c: invoke-virtual {v7, v5}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -42d752: 6e20 e5bc b000 |049f: invoke-virtual {v0, v11}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d758: 0c05 |04a2: move-result-object v5 │ │ -42d75a: 1f05 8b0a |04a3: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ -42d75e: 3a06 0600 |04a5: if-ltz v6, 04ab // +0006 │ │ -42d762: 6e20 cc5a 6500 |04a7: invoke-virtual {v5, v6}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -42d768: 2804 |04aa: goto 04ae // +0004 │ │ -42d76a: 6e20 cc5a 3500 |04ab: invoke-virtual {v5, v3}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -42d770: 6e20 e5bc a000 |04ae: invoke-virtual {v0, v10}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d776: 0c05 |04b1: move-result-object v5 │ │ -42d778: 1f05 8b0a |04b2: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ -42d77c: 1246 |04b4: const/4 v6, #int 4 // #4 │ │ -42d77e: 6e20 cc5a 6500 |04b5: invoke-virtual {v5, v6}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -42d784: 6e20 e5bc 9000 |04b8: invoke-virtual {v0, v9}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d78a: 0c05 |04bb: move-result-object v5 │ │ -42d78c: 1f05 8b0a |04bc: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ -42d790: 6e10 b15a 0500 |04be: invoke-virtual {v5}, Landroid/widget/Spinner;.getAdapter:()Landroid/widget/SpinnerAdapter; // method@5ab1 │ │ -42d796: 0c06 |04c1: move-result-object v6 │ │ -42d798: 7210 cd5a 0600 |04c2: invoke-interface {v6}, Landroid/widget/SpinnerAdapter;.getCount:()I // method@5acd │ │ -42d79e: 0a06 |04c5: move-result v6 │ │ -42d7a0: 3736 0500 |04c6: if-le v6, v3, 04cb // +0005 │ │ -42d7a4: 6e20 cc5a 3500 |04c8: invoke-virtual {v5, v3}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -42d7aa: 7601 fbbc 2800 |04cb: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.populateFancyKeyData:()V // method@bcfb │ │ -42d7b0: 3801 3f00 |04ce: if-eqz v1, 050d // +003f │ │ -42d7b4: 6e20 e5bc 2000 |04d0: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d7ba: 0c01 |04d3: move-result-object v1 │ │ -42d7bc: 1f01 8d0a |04d4: check-cast v1, Landroid/widget/Switch; // type@0a8d │ │ -42d7c0: 1402 2200 087f |04d6: const v2, #float 1.80776e+38 // #7f080022 │ │ -42d7c6: 6e20 e5bc 2000 |04d9: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d7cc: 0c02 |04dc: move-result-object v2 │ │ -42d7ce: 1f02 970a |04dd: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ -42d7d2: 5405 065f |04df: iget-object v5, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d7d6: 6206 0a5f |04e1: sget-object v6, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42d7da: 1a07 4359 |04e3: const-string v7, "alias" // string@5943 │ │ -42d7de: 6e30 17ba 6507 |04e5: invoke-virtual {v5, v6, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42d7e4: 0c05 |04e8: move-result-object v5 │ │ -42d7e6: 6e20 495b 5200 |04e9: invoke-virtual {v2, v5}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42d7ec: 6e20 e5bc c000 |04ec: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d7f2: 0c02 |04ef: move-result-object v2 │ │ -42d7f4: 1f02 970a |04f0: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ -42d7f8: 5405 065f |04f2: iget-object v5, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d7fc: 1a07 5892 |04f4: const-string v7, "ozone_address" // string@9258 │ │ -42d800: 6e30 17ba 6507 |04f6: invoke-virtual {v5, v6, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42d806: 0c05 |04f9: move-result-object v5 │ │ -42d808: 6e20 495b 5200 |04fa: invoke-virtual {v2, v5}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42d80e: 7601 febc 2800 |04fd: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.populateParticipants:()V // method@bcfe │ │ -42d814: 7601 13bd 2800 |0500: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.startKernel:()V // method@bd13 │ │ -42d81a: 6e10 da5a 0100 |0503: invoke-virtual {v1}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42d820: 0a01 |0506: move-result v1 │ │ -42d822: 3901 6200 |0507: if-nez v1, 0569 // +0062 │ │ -42d826: 7020 fcbc 4000 |0509: invoke-direct {v0, v4}, Lorg/purple/smoke/Settings;.populateNeighbors:(Ljava/util/ArrayList;)V // method@bcfc │ │ -42d82c: 285d |050c: goto 0569 // +005d │ │ -42d82e: 1401 9200 087f |050d: const v1, #float 1.80778e+38 // #7f080092 │ │ -42d834: 6e20 e5bc 1000 |0510: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d83a: 0c01 |0513: move-result-object v1 │ │ -42d83c: 1f01 210a |0514: check-cast v1, Landroid/view/ViewGroup; // type@0a21 │ │ -42d840: 6e10 e356 0100 |0516: invoke-virtual {v1}, Landroid/view/ViewGroup;.getChildCount:()I // method@56e3 │ │ -42d846: 0a02 |0519: move-result v2 │ │ -42d848: 1304 0800 |051a: const/16 v4, #int 8 // #8 │ │ -42d84c: 3528 3900 |051c: if-ge v8, v2, 0555 // +0039 │ │ -42d850: 6e20 e256 8100 |051e: invoke-virtual {v1, v8}, Landroid/view/ViewGroup;.getChildAt:(I)Landroid/view/View; // method@56e2 │ │ -42d856: 0c05 |0521: move-result-object v5 │ │ -42d858: 1406 c400 087f |0522: const v6, #float 1.80779e+38 // #7f0800c4 │ │ -42d85e: 6e20 e5bc 6000 |0525: invoke-virtual {v0, v6}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d864: 0c07 |0528: move-result-object v7 │ │ -42d866: 3275 2900 |0529: if-eq v5, v7, 0552 // +0029 │ │ -42d86a: 1407 c500 087f |052b: const v7, #float 1.80779e+38 // #7f0800c5 │ │ -42d870: 6e20 e5bc 7000 |052e: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d876: 0c07 |0531: move-result-object v7 │ │ -42d878: 3275 2000 |0532: if-eq v5, v7, 0552 // +0020 │ │ -42d87c: 1407 c600 087f |0534: const v7, #float 1.80779e+38 // #7f0800c6 │ │ -42d882: 6e20 e5bc 7000 |0537: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d888: 0c07 |053a: move-result-object v7 │ │ -42d88a: 3275 1700 |053b: if-eq v5, v7, 0552 // +0017 │ │ -42d88e: 1407 cb00 087f |053d: const v7, #float 1.80779e+38 // #7f0800cb │ │ -42d894: 6e20 e5bc 7000 |0540: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d89a: 0c07 |0543: move-result-object v7 │ │ -42d89c: 3275 0e00 |0544: if-eq v5, v7, 0552 // +000e │ │ -42d8a0: 1407 0001 087f |0546: const v7, #float 1.8078e+38 // #7f080100 │ │ -42d8a6: 6e20 e5bc 7000 |0549: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d8ac: 0c07 |054c: move-result-object v7 │ │ -42d8ae: 3275 0500 |054d: if-eq v5, v7, 0552 // +0005 │ │ -42d8b2: 6e20 ac56 4500 |054f: invoke-virtual {v5, v4}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -42d8b8: d808 0801 |0552: add-int/lit8 v8, v8, #int 1 // #01 │ │ -42d8bc: 28c6 |0554: goto 051a // -003a │ │ -42d8be: 1405 7400 087f |0555: const v5, #float 1.80777e+38 // #7f080074 │ │ -42d8c4: 6e20 e5bc 5000 |0558: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d8ca: 0c01 |055b: move-result-object v1 │ │ -42d8cc: 6e20 ac56 4100 |055c: invoke-virtual {v1, v4}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -42d8d2: 1401 b600 087f |055f: const v1, #float 1.80779e+38 // #7f0800b6 │ │ -42d8d8: 6e20 e5bc 1000 |0562: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ -42d8de: 0c01 |0565: move-result-object v1 │ │ -42d8e0: 6e20 ac56 4100 |0566: invoke-virtual {v1, v4}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -42d8e6: 5401 065f |0569: iget-object v1, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d8ea: 6e10 dab9 0100 |056b: invoke-virtual {v1}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9da │ │ -42d8f0: 0a01 |056e: move-result v1 │ │ -42d8f2: 3901 1400 |056f: if-nez v1, 0583 // +0014 │ │ -42d8f6: 1a01 be59 |0571: const-string v1, "android.permission.READ_EXTERNAL_STORAGE" // string@59be │ │ -42d8fa: 2410 a81b 0100 |0573: filled-new-array {v1}, [Ljava/lang/String; // type@1ba8 │ │ -42d900: 0c01 |0576: move-result-object v1 │ │ -42d902: 7130 9515 1003 |0577: invoke-static {v0, v1, v3}, Landroid/support/v4/app/ActivityCompat;.requestPermissions:(Landroid/app/Activity;[Ljava/lang/String;I)V // method@1595 │ │ -42d908: 1a01 bf59 |057a: const-string v1, "android.permission.WRITE_EXTERNAL_STORAGE" // string@59bf │ │ -42d90c: 2410 a81b 0100 |057c: filled-new-array {v1}, [Ljava/lang/String; // type@1ba8 │ │ -42d912: 0c01 |057f: move-result-object v1 │ │ -42d914: 7130 9515 1003 |0580: invoke-static {v0, v1, v3}, Landroid/support/v4/app/ActivityCompat;.requestPermissions:(Landroid/app/Activity;[Ljava/lang/String;I)V // method@1595 │ │ -42d91a: 0e00 |0583: return-void │ │ +42d576: 6e20 035b fe00 |03b3: invoke-virtual {v14, v15}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ +42d57c: 220c f10a |03b6: new-instance v12, Ljava/lang/StringBuilder; // type@0af1 │ │ +42d580: 7010 ee5c 0c00 |03b8: invoke-direct {v12}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42d586: 1a0d 0a53 |03bb: const-string v13, "WakeLock Locked: " // string@530a │ │ +42d58a: 6e20 f95c dc00 |03bd: invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42d590: 7100 0bbb 0000 |03c0: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +42d596: 0c0d |03c3: move-result-object v13 │ │ +42d598: 6e10 1fbb 0d00 |03c4: invoke-virtual {v13}, Lorg/purple/smoke/Kernel;.wakeLocked:()Z // method@bb1f │ │ +42d59e: 0a0d |03c7: move-result v13 │ │ +42d5a0: 7110 eebb 0d00 |03c8: invoke-static {v13}, Lorg/purple/smoke/Miscellaneous;.niceBoolean:(Z)Ljava/lang/String; // method@bbee │ │ +42d5a6: 0c0d |03cb: move-result-object v13 │ │ +42d5a8: 6e20 f95c dc00 |03cc: invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42d5ae: 6e10 035d 0c00 |03cf: invoke-virtual {v12}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42d5b4: 0c0c |03d2: move-result-object v12 │ │ +42d5b6: 6e20 035b ce00 |03d3: invoke-virtual {v14, v12}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ +42d5bc: 6e20 035b fe00 |03d6: invoke-virtual {v14, v15}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ +42d5c2: 220c f10a |03d9: new-instance v12, Ljava/lang/StringBuilder; // type@0af1 │ │ +42d5c6: 7010 ee5c 0c00 |03db: invoke-direct {v12}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42d5cc: 1a0d 1353 |03de: const-string v13, "WiFiLock Locked: " // string@5313 │ │ +42d5d0: 6e20 f95c dc00 |03e0: invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42d5d6: 7100 0bbb 0000 |03e3: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb0b │ │ +42d5dc: 0c0d |03e6: move-result-object v13 │ │ +42d5de: 6e10 21bb 0d00 |03e7: invoke-virtual {v13}, Lorg/purple/smoke/Kernel;.wifiLocked:()Z // method@bb21 │ │ +42d5e4: 0a0d |03ea: move-result v13 │ │ +42d5e6: 7110 eebb 0d00 |03eb: invoke-static {v13}, Lorg/purple/smoke/Miscellaneous;.niceBoolean:(Z)Ljava/lang/String; // method@bbee │ │ +42d5ec: 0c0d |03ee: move-result-object v13 │ │ +42d5ee: 6e20 f95c dc00 |03ef: invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42d5f4: 6e10 035d 0c00 |03f2: invoke-virtual {v12}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42d5fa: 0c0c |03f5: move-result-object v12 │ │ +42d5fc: 6e20 035b ce00 |03f6: invoke-virtual {v14, v12}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ +42d602: 140c ad00 087f |03f9: const v12, #float 1.80779e+38 // #7f0800ad │ │ +42d608: 6e20 e5bc c000 |03fc: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d60e: 0c0c |03ff: move-result-object v12 │ │ +42d610: 1f0c 970a |0400: check-cast v12, Landroid/widget/TextView; // type@0a97 │ │ +42d614: 6e20 335b 8c00 |0402: invoke-virtual {v12, v8}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42d61a: 140c ac00 087f |0405: const v12, #float 1.80778e+38 // #7f0800ac │ │ +42d620: 6e20 e5bc c000 |0408: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d626: 0c0c |040b: move-result-object v12 │ │ +42d628: 1f0c 970a |040c: check-cast v12, Landroid/widget/TextView; // type@0a97 │ │ +42d62c: 6e20 335b 1c00 |040e: invoke-virtual {v12, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42d632: 233d 9d1b |0411: new-array v13, v3, [Landroid/text/InputFilter; // type@1b9d │ │ +42d636: 620e 0b5f |0413: sget-object v14, Lorg/purple/smoke/Settings;.s_portFilter:Landroid/text/InputFilter; // field@5f0b │ │ +42d63a: 4d0e 0d08 |0415: aput-object v14, v13, v8 │ │ +42d63e: 6e20 345b dc00 |0417: invoke-virtual {v12, v13}, Landroid/widget/TextView;.setFilters:([Landroid/text/InputFilter;)V // method@5b34 │ │ +42d644: 1a0d df07 |041a: const-string v13, "4710" // string@07df │ │ +42d648: 6e20 495b dc00 |041c: invoke-virtual {v12, v13}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42d64e: 140c a800 087f |041f: const v12, #float 1.80778e+38 // #7f0800a8 │ │ +42d654: 6e20 e5bc c000 |0422: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d65a: 0c0c |0425: move-result-object v12 │ │ +42d65c: 1f0c 970a |0426: check-cast v12, Landroid/widget/TextView; // type@0a97 │ │ +42d660: 3801 0500 |0428: if-eqz v1, 042d // +0005 │ │ +42d664: 6e10 265b 0c00 |042a: invoke-virtual {v12}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ +42d66a: 6e20 335b 1c00 |042d: invoke-virtual {v12, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42d670: 140c b700 087f |0430: const v12, #float 1.80779e+38 // #7f0800b7 │ │ +42d676: 6e20 e5bc c000 |0433: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d67c: 0c0d |0436: move-result-object v13 │ │ +42d67e: 1f0d 970a |0437: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ +42d682: 6e20 335b 1d00 |0439: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42d688: 140d bd00 087f |043c: const v13, #float 1.80779e+38 // #7f0800bd │ │ +42d68e: 6e20 e5bc d000 |043f: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d694: 0c0d |0442: move-result-object v13 │ │ +42d696: 1f0d 970a |0443: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ +42d69a: 6e20 335b 1d00 |0445: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42d6a0: 140d be00 087f |0448: const v13, #float 1.80779e+38 // #7f0800be │ │ +42d6a6: 6e20 e5bc d000 |044b: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d6ac: 0c0d |044e: move-result-object v13 │ │ +42d6ae: 1f0d 970a |044f: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ +42d6b2: 6e20 335b 1d00 |0451: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42d6b8: 140d c400 087f |0454: const v13, #float 1.80779e+38 // #7f0800c4 │ │ +42d6be: 6e20 e5bc d000 |0457: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d6c4: 0c0f |045a: move-result-object v15 │ │ +42d6c6: 1f0f 970a |045b: check-cast v15, Landroid/widget/TextView; // type@0a97 │ │ +42d6ca: 3901 0500 |045d: if-nez v1, 0462 // +0005 │ │ +42d6ce: 6e10 265b 0f00 |045f: invoke-virtual {v15}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ +42d6d4: 1a0d 0000 |0462: const-string v13, "" // string@0000 │ │ +42d6d8: 6e20 495b df00 |0464: invoke-virtual {v15, v13}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42d6de: 140f c500 087f |0467: const v15, #float 1.80779e+38 // #7f0800c5 │ │ +42d6e4: 6e20 e5bc f000 |046a: invoke-virtual {v0, v15}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d6ea: 0c0f |046d: move-result-object v15 │ │ +42d6ec: 1f0f 970a |046e: check-cast v15, Landroid/widget/TextView; // type@0a97 │ │ +42d6f0: 6e20 495b df00 |0470: invoke-virtual {v15, v13}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42d6f6: 140d d200 087f |0473: const v13, #float 1.80779e+38 // #7f0800d2 │ │ +42d6fc: 6e20 e5bc d000 |0476: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d702: 0c0d |0479: move-result-object v13 │ │ +42d704: 1f0d 970a |047a: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ +42d708: 6e20 335b 1d00 |047c: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42d70e: 140d d300 087f |047f: const v13, #float 1.80779e+38 // #7f0800d3 │ │ +42d714: 6e20 e5bc d000 |0482: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d71a: 0c0d |0485: move-result-object v13 │ │ +42d71c: 1f0d 970a |0486: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ +42d720: 6e20 335b 1d00 |0488: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42d726: 233f 9d1b |048b: new-array v15, v3, [Landroid/text/InputFilter; // type@1b9d │ │ +42d72a: 4d0e 0f08 |048d: aput-object v14, v15, v8 │ │ +42d72e: 6e20 345b fd00 |048f: invoke-virtual {v13, v15}, Landroid/widget/TextView;.setFilters:([Landroid/text/InputFilter;)V // method@5b34 │ │ +42d734: 6e20 e5bc 7000 |0492: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d73a: 0c07 |0495: move-result-object v7 │ │ +42d73c: 1f07 8b0a |0496: check-cast v7, Landroid/widget/Spinner; // type@0a8b │ │ +42d740: 7120 7e5c 5800 |0498: invoke-static {v8, v5}, Ljava/lang/Math;.max:(II)I // method@5c7e │ │ +42d746: 0a05 |049b: move-result v5 │ │ +42d748: 6e20 cc5a 5700 |049c: invoke-virtual {v7, v5}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +42d74e: 6e20 e5bc b000 |049f: invoke-virtual {v0, v11}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d754: 0c05 |04a2: move-result-object v5 │ │ +42d756: 1f05 8b0a |04a3: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ +42d75a: 3a06 0600 |04a5: if-ltz v6, 04ab // +0006 │ │ +42d75e: 6e20 cc5a 6500 |04a7: invoke-virtual {v5, v6}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +42d764: 2804 |04aa: goto 04ae // +0004 │ │ +42d766: 6e20 cc5a 3500 |04ab: invoke-virtual {v5, v3}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +42d76c: 6e20 e5bc a000 |04ae: invoke-virtual {v0, v10}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d772: 0c05 |04b1: move-result-object v5 │ │ +42d774: 1f05 8b0a |04b2: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ +42d778: 1246 |04b4: const/4 v6, #int 4 // #4 │ │ +42d77a: 6e20 cc5a 6500 |04b5: invoke-virtual {v5, v6}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +42d780: 6e20 e5bc 9000 |04b8: invoke-virtual {v0, v9}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d786: 0c05 |04bb: move-result-object v5 │ │ +42d788: 1f05 8b0a |04bc: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ +42d78c: 6e10 b15a 0500 |04be: invoke-virtual {v5}, Landroid/widget/Spinner;.getAdapter:()Landroid/widget/SpinnerAdapter; // method@5ab1 │ │ +42d792: 0c06 |04c1: move-result-object v6 │ │ +42d794: 7210 cd5a 0600 |04c2: invoke-interface {v6}, Landroid/widget/SpinnerAdapter;.getCount:()I // method@5acd │ │ +42d79a: 0a06 |04c5: move-result v6 │ │ +42d79c: 3736 0500 |04c6: if-le v6, v3, 04cb // +0005 │ │ +42d7a0: 6e20 cc5a 3500 |04c8: invoke-virtual {v5, v3}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +42d7a6: 7601 fbbc 2800 |04cb: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.populateFancyKeyData:()V // method@bcfb │ │ +42d7ac: 3801 3f00 |04ce: if-eqz v1, 050d // +003f │ │ +42d7b0: 6e20 e5bc 2000 |04d0: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d7b6: 0c01 |04d3: move-result-object v1 │ │ +42d7b8: 1f01 8d0a |04d4: check-cast v1, Landroid/widget/Switch; // type@0a8d │ │ +42d7bc: 1402 2200 087f |04d6: const v2, #float 1.80776e+38 // #7f080022 │ │ +42d7c2: 6e20 e5bc 2000 |04d9: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d7c8: 0c02 |04dc: move-result-object v2 │ │ +42d7ca: 1f02 970a |04dd: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ +42d7ce: 5405 065f |04df: iget-object v5, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d7d2: 6206 0a5f |04e1: sget-object v6, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42d7d6: 1a07 4359 |04e3: const-string v7, "alias" // string@5943 │ │ +42d7da: 6e30 17ba 6507 |04e5: invoke-virtual {v5, v6, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42d7e0: 0c05 |04e8: move-result-object v5 │ │ +42d7e2: 6e20 495b 5200 |04e9: invoke-virtual {v2, v5}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42d7e8: 6e20 e5bc c000 |04ec: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d7ee: 0c02 |04ef: move-result-object v2 │ │ +42d7f0: 1f02 970a |04f0: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ +42d7f4: 5405 065f |04f2: iget-object v5, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d7f8: 1a07 5892 |04f4: const-string v7, "ozone_address" // string@9258 │ │ +42d7fc: 6e30 17ba 6507 |04f6: invoke-virtual {v5, v6, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42d802: 0c05 |04f9: move-result-object v5 │ │ +42d804: 6e20 495b 5200 |04fa: invoke-virtual {v2, v5}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42d80a: 7601 febc 2800 |04fd: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.populateParticipants:()V // method@bcfe │ │ +42d810: 7601 13bd 2800 |0500: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.startKernel:()V // method@bd13 │ │ +42d816: 6e10 da5a 0100 |0503: invoke-virtual {v1}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42d81c: 0a01 |0506: move-result v1 │ │ +42d81e: 3901 6200 |0507: if-nez v1, 0569 // +0062 │ │ +42d822: 7020 fcbc 4000 |0509: invoke-direct {v0, v4}, Lorg/purple/smoke/Settings;.populateNeighbors:(Ljava/util/ArrayList;)V // method@bcfc │ │ +42d828: 285d |050c: goto 0569 // +005d │ │ +42d82a: 1401 9200 087f |050d: const v1, #float 1.80778e+38 // #7f080092 │ │ +42d830: 6e20 e5bc 1000 |0510: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d836: 0c01 |0513: move-result-object v1 │ │ +42d838: 1f01 210a |0514: check-cast v1, Landroid/view/ViewGroup; // type@0a21 │ │ +42d83c: 6e10 e356 0100 |0516: invoke-virtual {v1}, Landroid/view/ViewGroup;.getChildCount:()I // method@56e3 │ │ +42d842: 0a02 |0519: move-result v2 │ │ +42d844: 1304 0800 |051a: const/16 v4, #int 8 // #8 │ │ +42d848: 3528 3900 |051c: if-ge v8, v2, 0555 // +0039 │ │ +42d84c: 6e20 e256 8100 |051e: invoke-virtual {v1, v8}, Landroid/view/ViewGroup;.getChildAt:(I)Landroid/view/View; // method@56e2 │ │ +42d852: 0c05 |0521: move-result-object v5 │ │ +42d854: 1406 c400 087f |0522: const v6, #float 1.80779e+38 // #7f0800c4 │ │ +42d85a: 6e20 e5bc 6000 |0525: invoke-virtual {v0, v6}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d860: 0c07 |0528: move-result-object v7 │ │ +42d862: 3275 2900 |0529: if-eq v5, v7, 0552 // +0029 │ │ +42d866: 1407 c500 087f |052b: const v7, #float 1.80779e+38 // #7f0800c5 │ │ +42d86c: 6e20 e5bc 7000 |052e: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d872: 0c07 |0531: move-result-object v7 │ │ +42d874: 3275 2000 |0532: if-eq v5, v7, 0552 // +0020 │ │ +42d878: 1407 c600 087f |0534: const v7, #float 1.80779e+38 // #7f0800c6 │ │ +42d87e: 6e20 e5bc 7000 |0537: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d884: 0c07 |053a: move-result-object v7 │ │ +42d886: 3275 1700 |053b: if-eq v5, v7, 0552 // +0017 │ │ +42d88a: 1407 cb00 087f |053d: const v7, #float 1.80779e+38 // #7f0800cb │ │ +42d890: 6e20 e5bc 7000 |0540: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d896: 0c07 |0543: move-result-object v7 │ │ +42d898: 3275 0e00 |0544: if-eq v5, v7, 0552 // +000e │ │ +42d89c: 1407 0001 087f |0546: const v7, #float 1.8078e+38 // #7f080100 │ │ +42d8a2: 6e20 e5bc 7000 |0549: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d8a8: 0c07 |054c: move-result-object v7 │ │ +42d8aa: 3275 0500 |054d: if-eq v5, v7, 0552 // +0005 │ │ +42d8ae: 6e20 ac56 4500 |054f: invoke-virtual {v5, v4}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +42d8b4: d808 0801 |0552: add-int/lit8 v8, v8, #int 1 // #01 │ │ +42d8b8: 28c6 |0554: goto 051a // -003a │ │ +42d8ba: 1405 7400 087f |0555: const v5, #float 1.80777e+38 // #7f080074 │ │ +42d8c0: 6e20 e5bc 5000 |0558: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d8c6: 0c01 |055b: move-result-object v1 │ │ +42d8c8: 6e20 ac56 4100 |055c: invoke-virtual {v1, v4}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +42d8ce: 1401 b600 087f |055f: const v1, #float 1.80779e+38 // #7f0800b6 │ │ +42d8d4: 6e20 e5bc 1000 |0562: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bce5 │ │ +42d8da: 0c01 |0565: move-result-object v1 │ │ +42d8dc: 6e20 ac56 4100 |0566: invoke-virtual {v1, v4}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +42d8e2: 5401 065f |0569: iget-object v1, v0, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d8e6: 6e10 dab9 0100 |056b: invoke-virtual {v1}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9da │ │ +42d8ec: 0a01 |056e: move-result v1 │ │ +42d8ee: 3901 1400 |056f: if-nez v1, 0583 // +0014 │ │ +42d8f2: 1a01 be59 |0571: const-string v1, "android.permission.READ_EXTERNAL_STORAGE" // string@59be │ │ +42d8f6: 2410 a81b 0100 |0573: filled-new-array {v1}, [Ljava/lang/String; // type@1ba8 │ │ +42d8fc: 0c01 |0576: move-result-object v1 │ │ +42d8fe: 7130 9515 1003 |0577: invoke-static {v0, v1, v3}, Landroid/support/v4/app/ActivityCompat;.requestPermissions:(Landroid/app/Activity;[Ljava/lang/String;I)V // method@1595 │ │ +42d904: 1a01 bf59 |057a: const-string v1, "android.permission.WRITE_EXTERNAL_STORAGE" // string@59bf │ │ +42d908: 2410 a81b 0100 |057c: filled-new-array {v1}, [Ljava/lang/String; // type@1ba8 │ │ +42d90e: 0c01 |057f: move-result-object v1 │ │ +42d910: 7130 9515 1003 |0580: invoke-static {v0, v1, v3}, Landroid/support/v4/app/ActivityCompat;.requestPermissions:(Landroid/app/Activity;[Ljava/lang/String;I)V // method@1595 │ │ +42d916: 0e00 |0583: return-void │ │ catches : 2 │ │ 0x005e - 0x0072 │ │ Ljava/lang/Exception; -> 0x0073 │ │ 0x031b - 0x0327 │ │ Ljava/lang/Exception; -> 0x0328 │ │ positions : │ │ 0x0002 line=3238 │ │ @@ -1573234,156 +1573233,156 @@ │ │ type : '(Landroid/view/ContextMenu;Landroid/view/View;Landroid/view/ContextMenu$ContextMenuInfo;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 14 │ │ ins : 4 │ │ outs : 5 │ │ insns size : 314 16-bit code units │ │ -42d938: |[42d938] org.purple.smoke.Settings.onCreateContextMenu:(Landroid/view/ContextMenu;Landroid/view/View;Landroid/view/ContextMenu$ContextMenuInfo;)V │ │ -42d948: 380b 3901 |0000: if-eqz v11, 0139 // +0139 │ │ -42d94c: 390c 0400 |0002: if-nez v12, 0006 // +0004 │ │ -42d950: 2900 3501 |0004: goto/16 0139 // +0135 │ │ -42d954: 1400 bf00 087f |0006: const v0, #float 1.80779e+38 // #7f0800bf │ │ -42d95a: 6e20 1d56 0c00 |0009: invoke-virtual {v12, v0}, Landroid/view/View;.getTag:(I)Ljava/lang/Object; // method@561d │ │ -42d960: 0c00 |000c: move-result-object v0 │ │ -42d962: 1401 db00 087f |000d: const v1, #float 1.80779e+38 // #7f0800db │ │ -42d968: 6e20 1d56 1c00 |0010: invoke-virtual {v12, v1}, Landroid/view/View;.getTag:(I)Ljava/lang/Object; // method@561d │ │ -42d96e: 0c01 |0013: move-result-object v1 │ │ -42d970: 3800 2501 |0014: if-eqz v0, 0139 // +0125 │ │ -42d974: 3801 2301 |0016: if-eqz v1, 0139 // +0123 │ │ -42d978: 6f40 f33c badc |0018: invoke-super {v10, v11, v12, v13}, Landroid/support/v7/app/AppCompatActivity;.onCreateContextMenu:(Landroid/view/ContextMenu;Landroid/view/View;Landroid/view/ContextMenu$ContextMenuInfo;)V // method@3cf3 │ │ -42d97e: 6e10 f455 0c00 |001b: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42d984: 0a0d |001e: move-result v13 │ │ -42d986: 2202 f10a |001f: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -42d98a: 7010 ee5c 0200 |0021: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42d990: 1a03 2b17 |0024: const-string v3, "Delete (" // string@172b │ │ -42d994: 6e20 f95c 3200 |0026: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42d99a: 6e20 f85c 0200 |0029: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ -42d9a0: 1a03 ec03 |002c: const-string v3, ")" // string@03ec │ │ -42d9a4: 6e20 f95c 3200 |002e: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42d9aa: 6e10 035d 0200 |0031: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42d9b0: 0c02 |0034: move-result-object v2 │ │ -42d9b2: 1204 |0035: const/4 v4, #int 0 // #0 │ │ -42d9b4: 7252 0c55 4b4d |0036: invoke-interface {v11, v4, v13, v4, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -42d9ba: 6e10 f455 0c00 |0039: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42d9c0: 0a0d |003c: move-result v13 │ │ -42d9c2: 2202 f10a |003d: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -42d9c6: 7010 ee5c 0200 |003f: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42d9cc: 1a05 2e17 |0042: const-string v5, "Delete Fiasco Keys (" // string@172e │ │ -42d9d0: 6e20 f95c 5200 |0044: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42d9d6: 6e20 f85c 0200 |0047: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ -42d9dc: 6e20 f95c 3200 |004a: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42d9e2: 6e10 035d 0200 |004d: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42d9e8: 0c02 |0050: move-result-object v2 │ │ -42d9ea: 1215 |0051: const/4 v5, #int 1 // #1 │ │ -42d9ec: 7252 0c55 5b5d |0052: invoke-interface {v11, v5, v13, v5, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -42d9f2: 0c0d |0055: move-result-object v13 │ │ -42d9f4: 54a2 065f |0056: iget-object v2, v10, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d9f8: 6e10 f455 0c00 |0058: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42d9fe: 0a06 |005b: move-result v6 │ │ -42da00: 6e20 edb9 6200 |005c: invoke-virtual {v2, v6}, Lorg/purple/smoke/Database;.fiascoCount:(I)J // method@b9ed │ │ -42da06: 0b06 |005f: move-result-wide v6 │ │ -42da08: 1608 0100 |0060: const-wide/16 v8, #int 1 // #1 │ │ -42da0c: 3102 0608 |0062: cmp-long v2, v6, v8 │ │ -42da10: 3a02 0300 |0064: if-ltz v2, 0067 // +0003 │ │ -42da14: 2802 |0066: goto 0068 // +0002 │ │ -42da16: 1205 |0067: const/4 v5, #int 0 // #0 │ │ -42da18: 7220 7a55 5d00 |0068: invoke-interface {v13, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42da1e: 6e10 f455 0c00 |006b: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42da24: 0a0d |006e: move-result v13 │ │ -42da26: 2202 f10a |006f: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -42da2a: 7010 ee5c 0200 |0071: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42da30: 1a05 3017 |0074: const-string v5, "Delete Public Keys (" // string@1730 │ │ -42da34: 6e20 f95c 5200 |0076: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42da3a: 6e20 f85c 0200 |0079: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ -42da40: 6e20 f95c 3200 |007c: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42da46: 6e10 035d 0200 |007f: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42da4c: 0c02 |0082: move-result-object v2 │ │ -42da4e: 1225 |0083: const/4 v5, #int 2 // #2 │ │ -42da50: 7252 0c55 5b5d |0084: invoke-interface {v11, v5, v13, v5, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -42da56: 0c0d |0087: move-result-object v13 │ │ -42da58: 54a2 065f |0088: iget-object v2, v10, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42da5c: 6205 0a5f |008a: sget-object v5, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42da60: 6e10 f455 0c00 |008c: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42da66: 0a06 |008f: move-result v6 │ │ -42da68: 6e30 f2b9 5206 |0090: invoke-virtual {v2, v5, v6}, Lorg/purple/smoke/Database;.hasPublicKeys:(Lorg/purple/smoke/Cryptography;I)Z // method@b9f2 │ │ -42da6e: 0a02 |0093: move-result v2 │ │ -42da70: 7220 7a55 2d00 |0094: invoke-interface {v13, v2}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42da76: 6e10 f455 0c00 |0097: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42da7c: 0a0d |009a: move-result v13 │ │ -42da7e: 2202 f10a |009b: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -42da82: 7010 ee5c 0200 |009d: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42da88: 1a06 4441 |00a0: const-string v6, "New Name (" // string@4144 │ │ -42da8c: 6e20 f95c 6200 |00a2: invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42da92: 6e20 f85c 0200 |00a5: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ -42da98: 6e20 f95c 3200 |00a8: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42da9e: 6e10 035d 0200 |00ab: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42daa4: 0c02 |00ae: move-result-object v2 │ │ -42daa6: 1236 |00af: const/4 v6, #int 3 // #3 │ │ -42daa8: 7252 0c55 6b6d |00b0: invoke-interface {v11, v6, v13, v6, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -42daae: 6e10 8eb9 0500 |00b3: invoke-virtual {v5}, Lorg/purple/smoke/Cryptography;.hasValidOzoneKeys:()Z // method@b98e │ │ -42dab4: 0a0d |00b6: move-result v13 │ │ -42dab6: 6e10 f455 0c00 |00b7: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42dabc: 0a02 |00ba: move-result v2 │ │ -42dabe: 2205 f10a |00bb: new-instance v5, Ljava/lang/StringBuilder; // type@0af1 │ │ -42dac2: 7010 ee5c 0500 |00bd: invoke-direct {v5}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42dac8: 1a06 e146 |00c0: const-string v6, "Request Keys via Ozone (" // string@46e1 │ │ -42dacc: 6e20 f95c 6500 |00c2: invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dad2: 6e20 f85c 0500 |00c5: invoke-virtual {v5, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ -42dad8: 6e20 f95c 3500 |00c8: invoke-virtual {v5, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dade: 6e10 035d 0500 |00cb: invoke-virtual {v5}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42dae4: 0c05 |00ce: move-result-object v5 │ │ -42dae6: 1246 |00cf: const/4 v6, #int 4 // #4 │ │ -42dae8: 7255 0c55 6b42 |00d0: invoke-interface {v11, v6, v2, v4, v5}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -42daee: 0c02 |00d3: move-result-object v2 │ │ -42daf0: 7220 7a55 d200 |00d4: invoke-interface {v2, v13}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42daf6: 6e10 f455 0c00 |00d7: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42dafc: 0a02 |00da: move-result v2 │ │ -42dafe: 2204 f10a |00db: new-instance v4, Ljava/lang/StringBuilder; // type@0af1 │ │ -42db02: 7010 ee5c 0400 |00dd: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42db08: 1a05 604b |00e0: const-string v5, "Share Keys Of (" // string@4b60 │ │ -42db0c: 6e20 f95c 5400 |00e2: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42db12: 6e20 f85c 0400 |00e5: invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ -42db18: 6e20 f95c 3400 |00e8: invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42db1e: 6e10 035d 0400 |00eb: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42db24: 0c04 |00ee: move-result-object v4 │ │ -42db26: 1255 |00ef: const/4 v5, #int 5 // #5 │ │ -42db28: 7254 0c55 5b62 |00f0: invoke-interface {v11, v5, v2, v6, v4}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -42db2e: 0c02 |00f3: move-result-object v2 │ │ -42db30: 1f01 c60a |00f4: check-cast v1, Ljava/lang/Boolean; // type@0ac6 │ │ -42db34: 6e10 fe5b 0100 |00f6: invoke-virtual {v1}, Ljava/lang/Boolean;.booleanValue:()Z // method@5bfe │ │ -42db3a: 0a01 |00f9: move-result v1 │ │ -42db3c: 7220 7a55 1200 |00fa: invoke-interface {v2, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42db42: 6e10 f455 0c00 |00fd: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42db48: 0a01 |0100: move-result v1 │ │ -42db4a: 2202 f10a |0101: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -42db4e: 7010 ee5c 0200 |0103: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42db54: 1a04 614b |0106: const-string v4, "Share Smoke ID Of (" // string@4b61 │ │ -42db58: 6e20 f95c 4200 |0108: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42db5e: 6e20 f85c 0200 |010b: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ -42db64: 6e20 f95c 3200 |010e: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42db6a: 6e10 035d 0200 |0111: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42db70: 0c02 |0114: move-result-object v2 │ │ -42db72: 1264 |0115: const/4 v4, #int 6 // #6 │ │ -42db74: 7252 0c55 4b51 |0116: invoke-interface {v11, v4, v1, v5, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -42db7a: 0c01 |0119: move-result-object v1 │ │ -42db7c: 7220 7a55 d100 |011a: invoke-interface {v1, v13}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42db82: 127d |011d: const/4 v13, #int 7 // #7 │ │ -42db84: 6e10 f455 0c00 |011e: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42db8a: 0a0c |0121: move-result v12 │ │ -42db8c: 2201 f10a |0122: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -42db90: 7010 ee5c 0100 |0124: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42db96: 1a02 6252 |0127: const-string v2, "View Details (" // string@5262 │ │ -42db9a: 6e20 f95c 2100 |0129: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dba0: 6e20 f85c 0100 |012c: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ -42dba6: 6e20 f95c 3100 |012f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dbac: 6e10 035d 0100 |0132: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42dbb2: 0c00 |0135: move-result-object v0 │ │ -42dbb4: 7250 0c55 db4c |0136: invoke-interface {v11, v13, v12, v4, v0}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -42dbba: 0e00 |0139: return-void │ │ +42d934: |[42d934] org.purple.smoke.Settings.onCreateContextMenu:(Landroid/view/ContextMenu;Landroid/view/View;Landroid/view/ContextMenu$ContextMenuInfo;)V │ │ +42d944: 380b 3901 |0000: if-eqz v11, 0139 // +0139 │ │ +42d948: 390c 0400 |0002: if-nez v12, 0006 // +0004 │ │ +42d94c: 2900 3501 |0004: goto/16 0139 // +0135 │ │ +42d950: 1400 bf00 087f |0006: const v0, #float 1.80779e+38 // #7f0800bf │ │ +42d956: 6e20 1d56 0c00 |0009: invoke-virtual {v12, v0}, Landroid/view/View;.getTag:(I)Ljava/lang/Object; // method@561d │ │ +42d95c: 0c00 |000c: move-result-object v0 │ │ +42d95e: 1401 db00 087f |000d: const v1, #float 1.80779e+38 // #7f0800db │ │ +42d964: 6e20 1d56 1c00 |0010: invoke-virtual {v12, v1}, Landroid/view/View;.getTag:(I)Ljava/lang/Object; // method@561d │ │ +42d96a: 0c01 |0013: move-result-object v1 │ │ +42d96c: 3800 2501 |0014: if-eqz v0, 0139 // +0125 │ │ +42d970: 3801 2301 |0016: if-eqz v1, 0139 // +0123 │ │ +42d974: 6f40 f33c badc |0018: invoke-super {v10, v11, v12, v13}, Landroid/support/v7/app/AppCompatActivity;.onCreateContextMenu:(Landroid/view/ContextMenu;Landroid/view/View;Landroid/view/ContextMenu$ContextMenuInfo;)V // method@3cf3 │ │ +42d97a: 6e10 f455 0c00 |001b: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42d980: 0a0d |001e: move-result v13 │ │ +42d982: 2202 f10a |001f: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +42d986: 7010 ee5c 0200 |0021: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42d98c: 1a03 2b17 |0024: const-string v3, "Delete (" // string@172b │ │ +42d990: 6e20 f95c 3200 |0026: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42d996: 6e20 f85c 0200 |0029: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ +42d99c: 1a03 ec03 |002c: const-string v3, ")" // string@03ec │ │ +42d9a0: 6e20 f95c 3200 |002e: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42d9a6: 6e10 035d 0200 |0031: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42d9ac: 0c02 |0034: move-result-object v2 │ │ +42d9ae: 1204 |0035: const/4 v4, #int 0 // #0 │ │ +42d9b0: 7252 0c55 4b4d |0036: invoke-interface {v11, v4, v13, v4, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +42d9b6: 6e10 f455 0c00 |0039: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42d9bc: 0a0d |003c: move-result v13 │ │ +42d9be: 2202 f10a |003d: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +42d9c2: 7010 ee5c 0200 |003f: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42d9c8: 1a05 2e17 |0042: const-string v5, "Delete Fiasco Keys (" // string@172e │ │ +42d9cc: 6e20 f95c 5200 |0044: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42d9d2: 6e20 f85c 0200 |0047: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ +42d9d8: 6e20 f95c 3200 |004a: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42d9de: 6e10 035d 0200 |004d: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42d9e4: 0c02 |0050: move-result-object v2 │ │ +42d9e6: 1215 |0051: const/4 v5, #int 1 // #1 │ │ +42d9e8: 7252 0c55 5b5d |0052: invoke-interface {v11, v5, v13, v5, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +42d9ee: 0c0d |0055: move-result-object v13 │ │ +42d9f0: 54a2 065f |0056: iget-object v2, v10, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d9f4: 6e10 f455 0c00 |0058: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42d9fa: 0a06 |005b: move-result v6 │ │ +42d9fc: 6e20 edb9 6200 |005c: invoke-virtual {v2, v6}, Lorg/purple/smoke/Database;.fiascoCount:(I)J // method@b9ed │ │ +42da02: 0b06 |005f: move-result-wide v6 │ │ +42da04: 1608 0100 |0060: const-wide/16 v8, #int 1 // #1 │ │ +42da08: 3102 0608 |0062: cmp-long v2, v6, v8 │ │ +42da0c: 3a02 0300 |0064: if-ltz v2, 0067 // +0003 │ │ +42da10: 2802 |0066: goto 0068 // +0002 │ │ +42da12: 1205 |0067: const/4 v5, #int 0 // #0 │ │ +42da14: 7220 7a55 5d00 |0068: invoke-interface {v13, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42da1a: 6e10 f455 0c00 |006b: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42da20: 0a0d |006e: move-result v13 │ │ +42da22: 2202 f10a |006f: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +42da26: 7010 ee5c 0200 |0071: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42da2c: 1a05 3017 |0074: const-string v5, "Delete Public Keys (" // string@1730 │ │ +42da30: 6e20 f95c 5200 |0076: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42da36: 6e20 f85c 0200 |0079: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ +42da3c: 6e20 f95c 3200 |007c: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42da42: 6e10 035d 0200 |007f: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42da48: 0c02 |0082: move-result-object v2 │ │ +42da4a: 1225 |0083: const/4 v5, #int 2 // #2 │ │ +42da4c: 7252 0c55 5b5d |0084: invoke-interface {v11, v5, v13, v5, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +42da52: 0c0d |0087: move-result-object v13 │ │ +42da54: 54a2 065f |0088: iget-object v2, v10, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42da58: 6205 0a5f |008a: sget-object v5, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42da5c: 6e10 f455 0c00 |008c: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42da62: 0a06 |008f: move-result v6 │ │ +42da64: 6e30 f2b9 5206 |0090: invoke-virtual {v2, v5, v6}, Lorg/purple/smoke/Database;.hasPublicKeys:(Lorg/purple/smoke/Cryptography;I)Z // method@b9f2 │ │ +42da6a: 0a02 |0093: move-result v2 │ │ +42da6c: 7220 7a55 2d00 |0094: invoke-interface {v13, v2}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42da72: 6e10 f455 0c00 |0097: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42da78: 0a0d |009a: move-result v13 │ │ +42da7a: 2202 f10a |009b: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +42da7e: 7010 ee5c 0200 |009d: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42da84: 1a06 4441 |00a0: const-string v6, "New Name (" // string@4144 │ │ +42da88: 6e20 f95c 6200 |00a2: invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42da8e: 6e20 f85c 0200 |00a5: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ +42da94: 6e20 f95c 3200 |00a8: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42da9a: 6e10 035d 0200 |00ab: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42daa0: 0c02 |00ae: move-result-object v2 │ │ +42daa2: 1236 |00af: const/4 v6, #int 3 // #3 │ │ +42daa4: 7252 0c55 6b6d |00b0: invoke-interface {v11, v6, v13, v6, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +42daaa: 6e10 8eb9 0500 |00b3: invoke-virtual {v5}, Lorg/purple/smoke/Cryptography;.hasValidOzoneKeys:()Z // method@b98e │ │ +42dab0: 0a0d |00b6: move-result v13 │ │ +42dab2: 6e10 f455 0c00 |00b7: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42dab8: 0a02 |00ba: move-result v2 │ │ +42daba: 2205 f10a |00bb: new-instance v5, Ljava/lang/StringBuilder; // type@0af1 │ │ +42dabe: 7010 ee5c 0500 |00bd: invoke-direct {v5}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42dac4: 1a06 e146 |00c0: const-string v6, "Request Keys via Ozone (" // string@46e1 │ │ +42dac8: 6e20 f95c 6500 |00c2: invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42dace: 6e20 f85c 0500 |00c5: invoke-virtual {v5, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ +42dad4: 6e20 f95c 3500 |00c8: invoke-virtual {v5, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42dada: 6e10 035d 0500 |00cb: invoke-virtual {v5}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42dae0: 0c05 |00ce: move-result-object v5 │ │ +42dae2: 1246 |00cf: const/4 v6, #int 4 // #4 │ │ +42dae4: 7255 0c55 6b42 |00d0: invoke-interface {v11, v6, v2, v4, v5}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +42daea: 0c02 |00d3: move-result-object v2 │ │ +42daec: 7220 7a55 d200 |00d4: invoke-interface {v2, v13}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42daf2: 6e10 f455 0c00 |00d7: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42daf8: 0a02 |00da: move-result v2 │ │ +42dafa: 2204 f10a |00db: new-instance v4, Ljava/lang/StringBuilder; // type@0af1 │ │ +42dafe: 7010 ee5c 0400 |00dd: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42db04: 1a05 604b |00e0: const-string v5, "Share Keys Of (" // string@4b60 │ │ +42db08: 6e20 f95c 5400 |00e2: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42db0e: 6e20 f85c 0400 |00e5: invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ +42db14: 6e20 f95c 3400 |00e8: invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42db1a: 6e10 035d 0400 |00eb: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42db20: 0c04 |00ee: move-result-object v4 │ │ +42db22: 1255 |00ef: const/4 v5, #int 5 // #5 │ │ +42db24: 7254 0c55 5b62 |00f0: invoke-interface {v11, v5, v2, v6, v4}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +42db2a: 0c02 |00f3: move-result-object v2 │ │ +42db2c: 1f01 c60a |00f4: check-cast v1, Ljava/lang/Boolean; // type@0ac6 │ │ +42db30: 6e10 fe5b 0100 |00f6: invoke-virtual {v1}, Ljava/lang/Boolean;.booleanValue:()Z // method@5bfe │ │ +42db36: 0a01 |00f9: move-result v1 │ │ +42db38: 7220 7a55 1200 |00fa: invoke-interface {v2, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42db3e: 6e10 f455 0c00 |00fd: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42db44: 0a01 |0100: move-result v1 │ │ +42db46: 2202 f10a |0101: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +42db4a: 7010 ee5c 0200 |0103: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42db50: 1a04 614b |0106: const-string v4, "Share Smoke ID Of (" // string@4b61 │ │ +42db54: 6e20 f95c 4200 |0108: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42db5a: 6e20 f85c 0200 |010b: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ +42db60: 6e20 f95c 3200 |010e: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42db66: 6e10 035d 0200 |0111: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42db6c: 0c02 |0114: move-result-object v2 │ │ +42db6e: 1264 |0115: const/4 v4, #int 6 // #6 │ │ +42db70: 7252 0c55 4b51 |0116: invoke-interface {v11, v4, v1, v5, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +42db76: 0c01 |0119: move-result-object v1 │ │ +42db78: 7220 7a55 d100 |011a: invoke-interface {v1, v13}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42db7e: 127d |011d: const/4 v13, #int 7 // #7 │ │ +42db80: 6e10 f455 0c00 |011e: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42db86: 0a0c |0121: move-result v12 │ │ +42db88: 2201 f10a |0122: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +42db8c: 7010 ee5c 0100 |0124: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42db92: 1a02 6252 |0127: const-string v2, "View Details (" // string@5262 │ │ +42db96: 6e20 f95c 2100 |0129: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42db9c: 6e20 f85c 0100 |012c: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ +42dba2: 6e20 f95c 3100 |012f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42dba8: 6e10 035d 0100 |0132: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42dbae: 0c00 |0135: move-result-object v0 │ │ +42dbb0: 7250 0c55 db4c |0136: invoke-interface {v11, v13, v12, v4, v0}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +42dbb6: 0e00 |0139: return-void │ │ catches : (none) │ │ positions : │ │ 0x0009 line=3999 │ │ 0x0010 line=4000 │ │ 0x0018 line=4004 │ │ 0x001b line=4006 │ │ 0x0036 line=4005 │ │ @@ -1573418,21 +1573417,21 @@ │ │ type : '(Landroid/view/Menu;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 12 16-bit code units │ │ -42c0a4: |[42c0a4] org.purple.smoke.Settings.onCreateOptionsMenu:(Landroid/view/Menu;)Z │ │ -42c0b4: 6e10 eabc 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.getMenuInflater:()Landroid/view/MenuInflater; // method@bcea │ │ -42c0ba: 0c00 |0003: move-result-object v0 │ │ -42c0bc: 1401 0400 0b7f |0004: const v1, #float 1.84763e+38 // #7f0b0004 │ │ -42c0c2: 6e30 6255 1003 |0007: invoke-virtual {v0, v1, v3}, Landroid/view/MenuInflater;.inflate:(ILandroid/view/Menu;)V // method@5562 │ │ -42c0c8: 1213 |000a: const/4 v3, #int 1 // #1 │ │ -42c0ca: 0f03 |000b: return v3 │ │ +42c0a0: |[42c0a0] org.purple.smoke.Settings.onCreateOptionsMenu:(Landroid/view/Menu;)Z │ │ +42c0b0: 6e10 eabc 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.getMenuInflater:()Landroid/view/MenuInflater; // method@bcea │ │ +42c0b6: 0c00 |0003: move-result-object v0 │ │ +42c0b8: 1401 0400 0b7f |0004: const v1, #float 1.84763e+38 // #7f0b0004 │ │ +42c0be: 6e30 6255 1003 |0007: invoke-virtual {v0, v1, v3}, Landroid/view/MenuInflater;.inflate:(ILandroid/view/Menu;)V // method@5562 │ │ +42c0c4: 1213 |000a: const/4 v3, #int 1 // #1 │ │ +42c0c6: 0f03 |000b: return v3 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3897 │ │ locals : │ │ 0x0000 - 0x000c reg=2 this Lorg/purple/smoke/Settings; │ │ 0x0000 - 0x000c reg=3 (null) Landroid/view/Menu; │ │ │ │ @@ -1573441,27 +1573440,27 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 25 16-bit code units │ │ -42dbbc: |[42dbbc] org.purple.smoke.Settings.onDestroy:()V │ │ -42dbcc: 7100 6fbd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42dbd2: 0c00 |0003: move-result-object v0 │ │ -42dbd4: 6e10 6abd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.exit:()Z // method@bd6a │ │ -42dbda: 0a00 |0007: move-result v0 │ │ -42dbdc: 3800 0a00 |0008: if-eqz v0, 0012 // +000a │ │ -42dbe0: 7100 5705 0000 |000a: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ -42dbe6: 0a00 |000d: move-result v0 │ │ -42dbe8: 7110 5605 0000 |000e: invoke-static {v0}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ -42dbee: 2807 |0011: goto 0018 // +0007 │ │ -42dbf0: 7010 15bd 0100 |0012: invoke-direct {v1}, Lorg/purple/smoke/Settings;.stopTimers:()V // method@bd15 │ │ -42dbf6: 6f10 f53c 0100 |0015: invoke-super {v1}, Landroid/support/v7/app/AppCompatActivity;.onDestroy:()V // method@3cf5 │ │ -42dbfc: 0e00 |0018: return-void │ │ +42dbb8: |[42dbb8] org.purple.smoke.Settings.onDestroy:()V │ │ +42dbc8: 7100 6fbd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42dbce: 0c00 |0003: move-result-object v0 │ │ +42dbd0: 6e10 6abd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.exit:()Z // method@bd6a │ │ +42dbd6: 0a00 |0007: move-result v0 │ │ +42dbd8: 3800 0a00 |0008: if-eqz v0, 0012 // +000a │ │ +42dbdc: 7100 5705 0000 |000a: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ +42dbe2: 0a00 |000d: move-result v0 │ │ +42dbe4: 7110 5605 0000 |000e: invoke-static {v0}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ +42dbea: 2807 |0011: goto 0018 // +0007 │ │ +42dbec: 7010 15bd 0100 |0012: invoke-direct {v1}, Lorg/purple/smoke/Settings;.stopTimers:()V // method@bd15 │ │ +42dbf2: 6f10 f53c 0100 |0015: invoke-super {v1}, Landroid/support/v7/app/AppCompatActivity;.onDestroy:()V // method@3cf5 │ │ +42dbf8: 0e00 |0018: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3649 │ │ 0x000a line=3650 │ │ 0x0012 line=3653 │ │ 0x0015 line=3654 │ │ locals : │ │ @@ -1573472,87 +1573471,87 @@ │ │ type : '(Landroid/view/MenuItem;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 10 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 168 16-bit code units │ │ -42c0cc: |[42c0cc] org.purple.smoke.Settings.onOptionsItemSelected:(Landroid/view/MenuItem;)Z │ │ -42c0dc: 7210 6a55 0900 |0000: invoke-interface {v9}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ -42c0e2: 0a00 |0003: move-result v0 │ │ -42c0e4: 7210 6c55 0900 |0004: invoke-interface {v9}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ -42c0ea: 0a01 |0007: move-result v1 │ │ -42c0ec: 1a02 ec7c |0008: const-string v2, "lastActivity" // string@7cec │ │ -42c0f0: 1203 |000a: const/4 v3, #int 0 // #0 │ │ -42c0f2: 1214 |000b: const/4 v4, #int 1 // #1 │ │ -42c0f4: 3900 2f00 |000c: if-nez v0, 003b // +002f │ │ -42c0f8: 2c01 8400 0000 |000e: sparse-switch v1, 00000092 // +00000084 │ │ -42c0fe: 287b |0011: goto 008c // +007b │ │ -42c100: 5489 065f |0012: iget-object v9, v8, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c104: 1a00 7b4c |0014: const-string v0, "Steam" // string@4c7b │ │ -42c108: 6e40 39ba 3902 |0016: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42c10e: 7010 10bd 0800 |0019: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showSteamActivity:()V // method@bd10 │ │ -42c114: 0f04 |001c: return v4 │ │ -42c116: 7010 0fbd 0800 |001d: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showSmokescreenActivity:()V // method@bd0f │ │ -42c11c: 0f04 |0020: return v4 │ │ -42c11e: 5489 065f |0021: iget-object v9, v8, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c122: 1a00 ea1a |0023: const-string v0, "Fire" // string@1aea │ │ -42c126: 6e40 39ba 3902 |0025: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42c12c: 7010 0dbd 0800 |0028: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showFireActivity:()V // method@bd0d │ │ -42c132: 0f04 |002b: return v4 │ │ -42c134: 7120 25bd 8400 |002c: invoke-static {v4, v8}, Lorg/purple/smoke/Smoke;.exit:(ZLandroid/content/Context;)V // method@bd25 │ │ -42c13a: 0f04 |002f: return v4 │ │ -42c13c: 5489 065f |0030: iget-object v9, v8, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c140: 1a00 0113 |0032: const-string v0, "Chat" // string@1301 │ │ -42c144: 6e40 39ba 3902 |0034: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42c14a: 7010 0bbd 0800 |0037: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showChatActivity:()V // method@bd0b │ │ -42c150: 0f04 |003a: return v4 │ │ -42c152: 7210 6e55 0900 |003b: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ -42c158: 0c00 |003e: move-result-object v0 │ │ -42c15a: 7210 045c 0000 |003f: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c160: 0c00 |0042: move-result-object v0 │ │ -42c162: 1a05 7a03 |0043: const-string v5, "(" // string@037a │ │ -42c166: 6e20 c25c 5000 |0045: invoke-virtual {v0, v5}, Ljava/lang/String;.indexOf:(Ljava/lang/String;)I // method@5cc2 │ │ -42c16c: 0a05 |0048: move-result v5 │ │ -42c16e: 3a05 0f00 |0049: if-ltz v5, 0058 // +000f │ │ -42c172: b045 |004b: add-int/2addr v5, v4 │ │ -42c174: 6e20 cc5c 5000 |004c: invoke-virtual {v0, v5}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ -42c17a: 0c04 |004f: move-result-object v4 │ │ -42c17c: 1a05 ec03 |0050: const-string v5, ")" // string@03ec │ │ -42c180: 1a06 0000 |0052: const-string v6, "" // string@0000 │ │ -42c184: 6e30 c85c 5406 |0054: invoke-virtual {v4, v5, v6}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42c18a: 0c00 |0057: move-result-object v0 │ │ -42c18c: 7110 f0bb 0000 |0058: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf0 │ │ -42c192: 0c00 |005b: move-result-object v0 │ │ -42c194: 7100 6fbd 0000 |005c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42c19a: 0c04 |005f: move-result-object v4 │ │ -42c19c: 7110 d55c 0100 |0060: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42c1a2: 0c05 |0063: move-result-object v5 │ │ -42c1a4: 1a06 a98a |0064: const-string v6, "member_chat_oid" // string@8aa9 │ │ -42c1a8: 6e30 8bbd 6405 |0066: invoke-virtual {v4, v6, v5}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd8b │ │ -42c1ae: 7100 6fbd 0000 |0069: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42c1b4: 0c04 |006c: move-result-object v4 │ │ -42c1b6: 1a05 ab8a |006d: const-string v5, "member_chat_siphash_id" // string@8aab │ │ -42c1ba: 6e30 8bbd 5400 |006f: invoke-virtual {v4, v5, v0}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd8b │ │ -42c1c0: 5484 065f |0072: iget-object v4, v8, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c1c4: 1a07 0c40 |0074: const-string v7, "MemberChat" // string@400c │ │ -42c1c8: 6e40 39ba 3472 |0076: invoke-virtual {v4, v3, v2, v7}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42c1ce: 5482 065f |0079: iget-object v2, v8, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c1d2: 6203 0a5f |007b: sget-object v3, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42c1d6: 7110 d55c 0100 |007d: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42c1dc: 0c01 |0080: move-result-object v1 │ │ -42c1de: 6e40 39ba 3216 |0081: invoke-virtual {v2, v3, v6, v1}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42c1e4: 5481 065f |0084: iget-object v1, v8, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c1e8: 6e40 39ba 3105 |0086: invoke-virtual {v1, v3, v5, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -42c1ee: 7010 0ebd 0800 |0089: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showMemberChatActivity:()V // method@bd0e │ │ -42c1f4: 6f20 f83c 9800 |008c: invoke-super {v8, v9}, Landroid/support/v7/app/AppCompatActivity;.onOptionsItemSelected:(Landroid/view/MenuItem;)Z // method@3cf8 │ │ -42c1fa: 0a09 |008f: move-result v9 │ │ -42c1fc: 0f09 |0090: return v9 │ │ -42c1fe: 0000 |0091: nop // spacer │ │ -42c200: 0002 0500 0a00 087f 0e00 087f 0f00 ... |0092: sparse-switch-data (22 units) │ │ +42c0c8: |[42c0c8] org.purple.smoke.Settings.onOptionsItemSelected:(Landroid/view/MenuItem;)Z │ │ +42c0d8: 7210 6a55 0900 |0000: invoke-interface {v9}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ +42c0de: 0a00 |0003: move-result v0 │ │ +42c0e0: 7210 6c55 0900 |0004: invoke-interface {v9}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ +42c0e6: 0a01 |0007: move-result v1 │ │ +42c0e8: 1a02 ec7c |0008: const-string v2, "lastActivity" // string@7cec │ │ +42c0ec: 1203 |000a: const/4 v3, #int 0 // #0 │ │ +42c0ee: 1214 |000b: const/4 v4, #int 1 // #1 │ │ +42c0f0: 3900 2f00 |000c: if-nez v0, 003b // +002f │ │ +42c0f4: 2c01 8400 0000 |000e: sparse-switch v1, 00000092 // +00000084 │ │ +42c0fa: 287b |0011: goto 008c // +007b │ │ +42c0fc: 5489 065f |0012: iget-object v9, v8, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c100: 1a00 7b4c |0014: const-string v0, "Steam" // string@4c7b │ │ +42c104: 6e40 39ba 3902 |0016: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42c10a: 7010 10bd 0800 |0019: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showSteamActivity:()V // method@bd10 │ │ +42c110: 0f04 |001c: return v4 │ │ +42c112: 7010 0fbd 0800 |001d: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showSmokescreenActivity:()V // method@bd0f │ │ +42c118: 0f04 |0020: return v4 │ │ +42c11a: 5489 065f |0021: iget-object v9, v8, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c11e: 1a00 ea1a |0023: const-string v0, "Fire" // string@1aea │ │ +42c122: 6e40 39ba 3902 |0025: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42c128: 7010 0dbd 0800 |0028: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showFireActivity:()V // method@bd0d │ │ +42c12e: 0f04 |002b: return v4 │ │ +42c130: 7120 25bd 8400 |002c: invoke-static {v4, v8}, Lorg/purple/smoke/Smoke;.exit:(ZLandroid/content/Context;)V // method@bd25 │ │ +42c136: 0f04 |002f: return v4 │ │ +42c138: 5489 065f |0030: iget-object v9, v8, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c13c: 1a00 0113 |0032: const-string v0, "Chat" // string@1301 │ │ +42c140: 6e40 39ba 3902 |0034: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42c146: 7010 0bbd 0800 |0037: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showChatActivity:()V // method@bd0b │ │ +42c14c: 0f04 |003a: return v4 │ │ +42c14e: 7210 6e55 0900 |003b: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ +42c154: 0c00 |003e: move-result-object v0 │ │ +42c156: 7210 045c 0000 |003f: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c15c: 0c00 |0042: move-result-object v0 │ │ +42c15e: 1a05 7a03 |0043: const-string v5, "(" // string@037a │ │ +42c162: 6e20 c25c 5000 |0045: invoke-virtual {v0, v5}, Ljava/lang/String;.indexOf:(Ljava/lang/String;)I // method@5cc2 │ │ +42c168: 0a05 |0048: move-result v5 │ │ +42c16a: 3a05 0f00 |0049: if-ltz v5, 0058 // +000f │ │ +42c16e: b045 |004b: add-int/2addr v5, v4 │ │ +42c170: 6e20 cc5c 5000 |004c: invoke-virtual {v0, v5}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ +42c176: 0c04 |004f: move-result-object v4 │ │ +42c178: 1a05 ec03 |0050: const-string v5, ")" // string@03ec │ │ +42c17c: 1a06 0000 |0052: const-string v6, "" // string@0000 │ │ +42c180: 6e30 c85c 5406 |0054: invoke-virtual {v4, v5, v6}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42c186: 0c00 |0057: move-result-object v0 │ │ +42c188: 7110 f0bb 0000 |0058: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf0 │ │ +42c18e: 0c00 |005b: move-result-object v0 │ │ +42c190: 7100 6fbd 0000 |005c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42c196: 0c04 |005f: move-result-object v4 │ │ +42c198: 7110 d55c 0100 |0060: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42c19e: 0c05 |0063: move-result-object v5 │ │ +42c1a0: 1a06 a98a |0064: const-string v6, "member_chat_oid" // string@8aa9 │ │ +42c1a4: 6e30 8bbd 6405 |0066: invoke-virtual {v4, v6, v5}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd8b │ │ +42c1aa: 7100 6fbd 0000 |0069: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42c1b0: 0c04 |006c: move-result-object v4 │ │ +42c1b2: 1a05 ab8a |006d: const-string v5, "member_chat_siphash_id" // string@8aab │ │ +42c1b6: 6e30 8bbd 5400 |006f: invoke-virtual {v4, v5, v0}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd8b │ │ +42c1bc: 5484 065f |0072: iget-object v4, v8, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c1c0: 1a07 0c40 |0074: const-string v7, "MemberChat" // string@400c │ │ +42c1c4: 6e40 39ba 3472 |0076: invoke-virtual {v4, v3, v2, v7}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42c1ca: 5482 065f |0079: iget-object v2, v8, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c1ce: 6203 0a5f |007b: sget-object v3, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42c1d2: 7110 d55c 0100 |007d: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42c1d8: 0c01 |0080: move-result-object v1 │ │ +42c1da: 6e40 39ba 3216 |0081: invoke-virtual {v2, v3, v6, v1}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42c1e0: 5481 065f |0084: iget-object v1, v8, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c1e4: 6e40 39ba 3105 |0086: invoke-virtual {v1, v3, v5, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +42c1ea: 7010 0ebd 0800 |0089: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showMemberChatActivity:()V // method@bd0e │ │ +42c1f0: 6f20 f83c 9800 |008c: invoke-super {v8, v9}, Landroid/support/v7/app/AppCompatActivity;.onOptionsItemSelected:(Landroid/view/MenuItem;)Z // method@3cf8 │ │ +42c1f6: 0a09 |008f: move-result v9 │ │ +42c1f8: 0f09 |0090: return v9 │ │ +42c1fa: 0000 |0091: nop // spacer │ │ +42c1fc: 0002 0500 0a00 087f 0e00 087f 0f00 ... |0092: sparse-switch-data (22 units) │ │ catches : 1 │ │ 0x0043 - 0x0058 │ │ Ljava/lang/Exception; -> 0x0058 │ │ positions : │ │ 0x0000 line=3904 │ │ 0x0004 line=3905 │ │ 0x0012 line=3926 │ │ @@ -1573588,26 +1573587,26 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 23 16-bit code units │ │ -42dc00: |[42dc00] org.purple.smoke.Settings.onPause:()V │ │ -42dc10: 6f10 fa3c 0200 |0000: invoke-super {v2}, Landroid/support/v7/app/AppCompatActivity;.onPause:()V // method@3cfa │ │ -42dc16: 5520 085f |0003: iget-boolean v0, v2, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ -42dc1a: 3800 0e00 |0005: if-eqz v0, 0013 // +000e │ │ -42dc1e: 7110 a41d 0200 |0007: invoke-static {v2}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ -42dc24: 0c00 |000a: move-result-object v0 │ │ -42dc26: 5421 075f |000b: iget-object v1, v2, Lorg/purple/smoke/Settings;.m_receiver:Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // field@5f07 │ │ -42dc2a: 6e20 a81d 1000 |000d: invoke-virtual {v0, v1}, Landroid/support/v4/content/LocalBroadcastManager;.unregisterReceiver:(Landroid/content/BroadcastReceiver;)V // method@1da8 │ │ -42dc30: 1200 |0010: const/4 v0, #int 0 // #0 │ │ -42dc32: 5c20 085f |0011: iput-boolean v0, v2, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ -42dc36: 7010 04bd 0200 |0013: invoke-direct {v2}, Lorg/purple/smoke/Settings;.releaseResources:()V // method@bd04 │ │ -42dc3c: 0e00 |0016: return-void │ │ +42dbfc: |[42dbfc] org.purple.smoke.Settings.onPause:()V │ │ +42dc0c: 6f10 fa3c 0200 |0000: invoke-super {v2}, Landroid/support/v7/app/AppCompatActivity;.onPause:()V // method@3cfa │ │ +42dc12: 5520 085f |0003: iget-boolean v0, v2, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ +42dc16: 3800 0e00 |0005: if-eqz v0, 0013 // +000e │ │ +42dc1a: 7110 a41d 0200 |0007: invoke-static {v2}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ +42dc20: 0c00 |000a: move-result-object v0 │ │ +42dc22: 5421 075f |000b: iget-object v1, v2, Lorg/purple/smoke/Settings;.m_receiver:Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // field@5f07 │ │ +42dc26: 6e20 a81d 1000 |000d: invoke-virtual {v0, v1}, Landroid/support/v4/content/LocalBroadcastManager;.unregisterReceiver:(Landroid/content/BroadcastReceiver;)V // method@1da8 │ │ +42dc2c: 1200 |0010: const/4 v0, #int 0 // #0 │ │ +42dc2e: 5c20 085f |0011: iput-boolean v0, v2, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ +42dc32: 7010 04bd 0200 |0013: invoke-direct {v2}, Lorg/purple/smoke/Settings;.releaseResources:()V // method@bd04 │ │ +42dc38: 0e00 |0016: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3661 │ │ 0x0003 line=3663 │ │ 0x0007 line=3665 │ │ 0x000d line=3666 │ │ 0x0011 line=3667 │ │ @@ -1573620,66 +1573619,66 @@ │ │ type : '(Landroid/view/Menu;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 108 16-bit code units │ │ -42c23c: |[42c23c] org.purple.smoke.Settings.onPrepareOptionsMenu:(Landroid/view/Menu;)Z │ │ -42c24c: 7100 6fbd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42c252: 0c00 |0003: move-result-object v0 │ │ -42c254: 6e10 72bd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ -42c25a: 0a00 |0007: move-result v0 │ │ -42c25c: 5431 065f |0008: iget-object v1, v3, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c260: 6e10 dab9 0100 |000a: invoke-virtual {v1}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9da │ │ -42c266: 0a01 |000d: move-result v1 │ │ -42c268: 1212 |000e: const/4 v2, #int 1 // #1 │ │ -42c26a: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ -42c26e: 1210 |0011: const/4 v0, #int 1 // #1 │ │ -42c270: 1401 0200 087f |0012: const v1, #float 1.80775e+38 // #7f080002 │ │ -42c276: 7220 5c55 1400 |0015: invoke-interface {v4, v1}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -42c27c: 0c01 |0018: move-result-object v1 │ │ -42c27e: b720 |0019: xor-int/2addr v0, v2 │ │ -42c280: 7220 7a55 0100 |001a: invoke-interface {v1, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42c286: 1400 0a00 087f |001d: const v0, #float 1.80775e+38 // #7f08000a │ │ -42c28c: 7220 5c55 0400 |0020: invoke-interface {v4, v0}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -42c292: 0c00 |0023: move-result-object v0 │ │ -42c294: 7100 6fbd 0000 |0024: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42c29a: 0c01 |0027: move-result-object v1 │ │ -42c29c: 6e10 72bd 0100 |0028: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ -42c2a2: 0a01 |002b: move-result v1 │ │ -42c2a4: 7220 7a55 1000 |002c: invoke-interface {v0, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42c2aa: 1400 0f00 087f |002f: const v0, #float 1.80775e+38 // #7f08000f │ │ -42c2b0: 7220 5c55 0400 |0032: invoke-interface {v4, v0}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -42c2b6: 0c00 |0035: move-result-object v0 │ │ -42c2b8: 7100 6fbd 0000 |0036: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42c2be: 0c01 |0039: move-result-object v1 │ │ -42c2c0: 6e10 72bd 0100 |003a: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ -42c2c6: 0a01 |003d: move-result v1 │ │ -42c2c8: 7220 7a55 1000 |003e: invoke-interface {v0, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42c2ce: 1400 1700 087f |0041: const v0, #float 1.80775e+38 // #7f080017 │ │ -42c2d4: 7220 5c55 0400 |0044: invoke-interface {v4, v0}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -42c2da: 0c00 |0047: move-result-object v0 │ │ -42c2dc: 7100 6fbd 0000 |0048: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42c2e2: 0c01 |004b: move-result-object v1 │ │ -42c2e4: 6e10 72bd 0100 |004c: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ -42c2ea: 0a01 |004f: move-result v1 │ │ -42c2ec: 7220 7a55 1000 |0050: invoke-interface {v0, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42c2f2: 1400 1800 087f |0053: const v0, #float 1.80775e+38 // #7f080018 │ │ -42c2f8: 7220 5c55 0400 |0056: invoke-interface {v4, v0}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -42c2fe: 0c00 |0059: move-result-object v0 │ │ -42c300: 7100 6fbd 0000 |005a: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42c306: 0c01 |005d: move-result-object v1 │ │ -42c308: 6e10 72bd 0100 |005e: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ -42c30e: 0a01 |0061: move-result v1 │ │ -42c310: 7220 7a55 1000 |0062: invoke-interface {v0, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42c316: 1260 |0065: const/4 v0, #int 6 // #6 │ │ -42c318: 1301 fa00 |0066: const/16 v1, #int 250 // #fa │ │ -42c31c: 7130 debb 0401 |0068: invoke-static {v4, v0, v1}, Lorg/purple/smoke/Miscellaneous;.addMembersToMenu:(Landroid/view/Menu;II)Landroid/view/SubMenu; // method@bbde │ │ -42c322: 0f02 |006b: return v2 │ │ +42c238: |[42c238] org.purple.smoke.Settings.onPrepareOptionsMenu:(Landroid/view/Menu;)Z │ │ +42c248: 7100 6fbd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42c24e: 0c00 |0003: move-result-object v0 │ │ +42c250: 6e10 72bd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ +42c256: 0a00 |0007: move-result v0 │ │ +42c258: 5431 065f |0008: iget-object v1, v3, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c25c: 6e10 dab9 0100 |000a: invoke-virtual {v1}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9da │ │ +42c262: 0a01 |000d: move-result v1 │ │ +42c264: 1212 |000e: const/4 v2, #int 1 // #1 │ │ +42c266: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ +42c26a: 1210 |0011: const/4 v0, #int 1 // #1 │ │ +42c26c: 1401 0200 087f |0012: const v1, #float 1.80775e+38 // #7f080002 │ │ +42c272: 7220 5c55 1400 |0015: invoke-interface {v4, v1}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +42c278: 0c01 |0018: move-result-object v1 │ │ +42c27a: b720 |0019: xor-int/2addr v0, v2 │ │ +42c27c: 7220 7a55 0100 |001a: invoke-interface {v1, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42c282: 1400 0a00 087f |001d: const v0, #float 1.80775e+38 // #7f08000a │ │ +42c288: 7220 5c55 0400 |0020: invoke-interface {v4, v0}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +42c28e: 0c00 |0023: move-result-object v0 │ │ +42c290: 7100 6fbd 0000 |0024: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42c296: 0c01 |0027: move-result-object v1 │ │ +42c298: 6e10 72bd 0100 |0028: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ +42c29e: 0a01 |002b: move-result v1 │ │ +42c2a0: 7220 7a55 1000 |002c: invoke-interface {v0, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42c2a6: 1400 0f00 087f |002f: const v0, #float 1.80775e+38 // #7f08000f │ │ +42c2ac: 7220 5c55 0400 |0032: invoke-interface {v4, v0}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +42c2b2: 0c00 |0035: move-result-object v0 │ │ +42c2b4: 7100 6fbd 0000 |0036: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42c2ba: 0c01 |0039: move-result-object v1 │ │ +42c2bc: 6e10 72bd 0100 |003a: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ +42c2c2: 0a01 |003d: move-result v1 │ │ +42c2c4: 7220 7a55 1000 |003e: invoke-interface {v0, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42c2ca: 1400 1700 087f |0041: const v0, #float 1.80775e+38 // #7f080017 │ │ +42c2d0: 7220 5c55 0400 |0044: invoke-interface {v4, v0}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +42c2d6: 0c00 |0047: move-result-object v0 │ │ +42c2d8: 7100 6fbd 0000 |0048: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42c2de: 0c01 |004b: move-result-object v1 │ │ +42c2e0: 6e10 72bd 0100 |004c: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ +42c2e6: 0a01 |004f: move-result v1 │ │ +42c2e8: 7220 7a55 1000 |0050: invoke-interface {v0, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42c2ee: 1400 1800 087f |0053: const v0, #float 1.80775e+38 // #7f080018 │ │ +42c2f4: 7220 5c55 0400 |0056: invoke-interface {v4, v0}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +42c2fa: 0c00 |0059: move-result-object v0 │ │ +42c2fc: 7100 6fbd 0000 |005a: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42c302: 0c01 |005d: move-result-object v1 │ │ +42c304: 6e10 72bd 0100 |005e: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ +42c30a: 0a01 |0061: move-result v1 │ │ +42c30c: 7220 7a55 1000 |0062: invoke-interface {v0, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42c312: 1260 |0065: const/4 v0, #int 6 // #6 │ │ +42c314: 1301 fa00 |0066: const/16 v1, #int 250 // #fa │ │ +42c318: 7130 debb 0401 |0068: invoke-static {v4, v0, v1}, Lorg/purple/smoke/Miscellaneous;.addMembersToMenu:(Landroid/view/Menu;II)Landroid/view/SubMenu; // method@bbde │ │ +42c31e: 0f02 |006b: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3969 │ │ 0x0008 line=3971 │ │ 0x0015 line=3978 │ │ 0x0020 line=3979 │ │ 0x0024 line=3980 │ │ @@ -1573699,128 +1573698,128 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -42dc40: |[42dc40] org.purple.smoke.Settings.onRestoreInstanceState:(Landroid/os/Bundle;)V │ │ -42dc50: 0e00 |0000: return-void │ │ +42dc3c: |[42dc3c] org.purple.smoke.Settings.onRestoreInstanceState:(Landroid/os/Bundle;)V │ │ +42dc4c: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #9 : (in Lorg/purple/smoke/Settings;) │ │ name : 'onResume' │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 224 16-bit code units │ │ -42dc54: |[42dc54] org.purple.smoke.Settings.onResume:()V │ │ -42dc64: 6f10 fe3c 0500 |0000: invoke-super {v5}, Landroid/support/v7/app/AppCompatActivity;.onResume:()V // method@3cfe │ │ -42dc6a: 7010 f0bc 0500 |0003: invoke-direct {v5}, Lorg/purple/smoke/Settings;.networkStatusChanged:()V // method@bcf0 │ │ -42dc70: 5550 085f |0006: iget-boolean v0, v5, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ -42dc74: 1211 |0008: const/4 v1, #int 1 // #1 │ │ -42dc76: 3900 4400 |0009: if-nez v0, 004d // +0044 │ │ -42dc7a: 2200 4a00 |000b: new-instance v0, Landroid/content/IntentFilter; // type@004a │ │ -42dc7e: 7010 cf01 0000 |000d: invoke-direct {v0}, Landroid/content/IntentFilter;.:()V // method@01cf │ │ -42dc84: 1a02 f491 |0010: const-string v2, "org.purple.smoke.chat_message" // string@91f4 │ │ -42dc88: 6e20 d001 2000 |0012: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42dc8e: 1a02 fc91 |0015: const-string v2, "org.purple.smoke.neighbor_aborted" // string@91fc │ │ -42dc92: 6e20 d001 2000 |0017: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42dc98: 1a02 fd91 |001a: const-string v2, "org.purple.smoke.neighbor_connected" // string@91fd │ │ -42dc9c: 6e20 d001 2000 |001c: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42dca2: 1a02 fe91 |001f: const-string v2, "org.purple.smoke.neighbor_disconnected" // string@91fe │ │ -42dca6: 6e20 d001 2000 |0021: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42dcac: 1a02 ff91 |0024: const-string v2, "org.purple.smoke.network_connected" // string@91ff │ │ -42dcb0: 6e20 d001 2000 |0026: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42dcb6: 1a02 0092 |0029: const-string v2, "org.purple.smoke.network_disconnected" // string@9200 │ │ -42dcba: 6e20 d001 2000 |002b: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42dcc0: 1a02 0292 |002e: const-string v2, "org.purple.smoke.populate_participants" // string@9202 │ │ -42dcc4: 6e20 d001 2000 |0030: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42dcca: 1a02 0792 |0033: const-string v2, "org.purple.smoke.siphash_share_confirmation" // string@9207 │ │ -42dcce: 6e20 d001 2000 |0035: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42dcd4: 1a02 0892 |0038: const-string v2, "org.purple.smoke.state_participants_populated" // string@9208 │ │ -42dcd8: 6e20 d001 2000 |003a: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42dcde: 1a02 0c92 |003d: const-string v2, "org.purple.smoke.time" // string@920c │ │ -42dce2: 6e20 d001 2000 |003f: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42dce8: 7110 a41d 0500 |0042: invoke-static {v5}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ -42dcee: 0c02 |0045: move-result-object v2 │ │ -42dcf0: 5453 075f |0046: iget-object v3, v5, Lorg/purple/smoke/Settings;.m_receiver:Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // field@5f07 │ │ -42dcf4: 6e30 a51d 3200 |0048: invoke-virtual {v2, v3, v0}, Landroid/support/v4/content/LocalBroadcastManager;.registerReceiver:(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)V // method@1da5 │ │ -42dcfa: 5c51 085f |004b: iput-boolean v1, v5, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ -42dcfe: 7100 6fbd 0000 |004d: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -42dd04: 0c00 |0050: move-result-object v0 │ │ -42dd06: 6e10 73bd 0000 |0051: invoke-virtual {v0}, Lorg/purple/smoke/State;.isLocked:()Z // method@bd73 │ │ -42dd0c: 0a00 |0054: move-result v0 │ │ -42dd0e: 3800 0600 |0055: if-eqz v0, 005b // +0006 │ │ -42dd12: 7010 0fbd 0500 |0057: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showSmokescreenActivity:()V // method@bd0f │ │ -42dd18: 0e00 |005a: return-void │ │ -42dd1a: 5450 065f |005b: iget-object v0, v5, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42dd1e: 1202 |005d: const/4 v2, #int 0 // #0 │ │ -42dd20: 1a03 ec7c |005e: const-string v3, "lastActivity" // string@7cec │ │ -42dd24: 6e30 17ba 2003 |0060: invoke-virtual {v0, v2, v3}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42dd2a: 0c00 |0063: move-result-object v0 │ │ -42dd2c: 6e10 bf5c 0000 |0064: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -42dd32: 12f3 |0067: const/4 v3, #int -1 // #ff │ │ -42dd34: 6e10 bf5c 0000 |0068: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -42dd3a: 0a04 |006b: move-result v4 │ │ -42dd3c: 2c04 5600 0000 |006c: sparse-switch v4, 000000c2 // +00000056 │ │ -42dd42: 12f1 |006f: const/4 v1, #int -1 // #ff │ │ -42dd44: 282a |0070: goto 009a // +002a │ │ -42dd46: 1a01 0c40 |0071: const-string v1, "MemberChat" // string@400c │ │ -42dd4a: 6e20 b85c 1000 |0073: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42dd50: 0a00 |0076: move-result v0 │ │ -42dd52: 3900 0300 |0077: if-nez v0, 007a // +0003 │ │ -42dd56: 28f6 |0079: goto 006f // -000a │ │ -42dd58: 1231 |007a: const/4 v1, #int 3 // #3 │ │ -42dd5a: 281f |007b: goto 009a // +001f │ │ -42dd5c: 1a01 7b4c |007c: const-string v1, "Steam" // string@4c7b │ │ -42dd60: 6e20 b85c 1000 |007e: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42dd66: 0a00 |0081: move-result v0 │ │ -42dd68: 3900 0300 |0082: if-nez v0, 0085 // +0003 │ │ -42dd6c: 28eb |0084: goto 006f // -0015 │ │ -42dd6e: 1221 |0085: const/4 v1, #int 2 // #2 │ │ -42dd70: 2814 |0086: goto 009a // +0014 │ │ -42dd72: 1a04 ea1a |0087: const-string v4, "Fire" // string@1aea │ │ -42dd76: 6e20 b85c 4000 |0089: invoke-virtual {v0, v4}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42dd7c: 0a00 |008c: move-result v0 │ │ -42dd7e: 3900 0d00 |008d: if-nez v0, 009a // +000d │ │ -42dd82: 28e0 |008f: goto 006f // -0020 │ │ -42dd84: 1a01 0113 |0090: const-string v1, "Chat" // string@1301 │ │ -42dd88: 6e20 b85c 1000 |0092: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42dd8e: 0a00 |0095: move-result v0 │ │ -42dd90: 3900 0300 |0096: if-nez v0, 0099 // +0003 │ │ -42dd94: 28d7 |0098: goto 006f // -0029 │ │ -42dd96: 1201 |0099: const/4 v1, #int 0 // #0 │ │ -42dd98: 2b01 3a00 0000 |009a: packed-switch v1, 000000d4 // +0000003a │ │ -42dd9e: 5450 065f |009d: iget-object v0, v5, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ -42dda2: 1a01 615b |009f: const-string v1, "automatic_neighbors_refresh" // string@5b61 │ │ -42dda6: 6e30 17ba 2001 |00a1: invoke-virtual {v0, v2, v1}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -42ddac: 0c00 |00a4: move-result-object v0 │ │ -42ddae: 1a01 95a5 |00a5: const-string v1, "true" // string@a595 │ │ -42ddb2: 6e20 b85c 1000 |00a7: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42ddb8: 0a00 |00aa: move-result v0 │ │ -42ddba: 3800 1500 |00ab: if-eqz v0, 00c0 // +0015 │ │ -42ddbe: 7010 14bd 0500 |00ad: invoke-direct {v5}, Lorg/purple/smoke/Settings;.startTimers:()V // method@bd14 │ │ -42ddc4: 2810 |00b0: goto 00c0 // +0010 │ │ -42ddc6: 7010 0ebd 0500 |00b1: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showMemberChatActivity:()V // method@bd0e │ │ -42ddcc: 280c |00b4: goto 00c0 // +000c │ │ -42ddce: 7010 10bd 0500 |00b5: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showSteamActivity:()V // method@bd10 │ │ -42ddd4: 2808 |00b8: goto 00c0 // +0008 │ │ -42ddd6: 7010 0dbd 0500 |00b9: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showFireActivity:()V // method@bd0d │ │ -42dddc: 2804 |00bc: goto 00c0 // +0004 │ │ -42ddde: 7010 0bbd 0500 |00bd: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showChatActivity:()V // method@bd0b │ │ -42dde4: 0e00 |00c0: return-void │ │ -42dde6: 0000 |00c1: nop // spacer │ │ -42dde8: 0002 0400 7807 2000 566a 2100 30e1 ... |00c2: sparse-switch-data (18 units) │ │ -42de0c: 0001 0400 0000 0000 2300 0000 1f00 ... |00d4: packed-switch-data (12 units) │ │ +42dc50: |[42dc50] org.purple.smoke.Settings.onResume:()V │ │ +42dc60: 6f10 fe3c 0500 |0000: invoke-super {v5}, Landroid/support/v7/app/AppCompatActivity;.onResume:()V // method@3cfe │ │ +42dc66: 7010 f0bc 0500 |0003: invoke-direct {v5}, Lorg/purple/smoke/Settings;.networkStatusChanged:()V // method@bcf0 │ │ +42dc6c: 5550 085f |0006: iget-boolean v0, v5, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ +42dc70: 1211 |0008: const/4 v1, #int 1 // #1 │ │ +42dc72: 3900 4400 |0009: if-nez v0, 004d // +0044 │ │ +42dc76: 2200 4a00 |000b: new-instance v0, Landroid/content/IntentFilter; // type@004a │ │ +42dc7a: 7010 cf01 0000 |000d: invoke-direct {v0}, Landroid/content/IntentFilter;.:()V // method@01cf │ │ +42dc80: 1a02 f491 |0010: const-string v2, "org.purple.smoke.chat_message" // string@91f4 │ │ +42dc84: 6e20 d001 2000 |0012: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42dc8a: 1a02 fc91 |0015: const-string v2, "org.purple.smoke.neighbor_aborted" // string@91fc │ │ +42dc8e: 6e20 d001 2000 |0017: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42dc94: 1a02 fd91 |001a: const-string v2, "org.purple.smoke.neighbor_connected" // string@91fd │ │ +42dc98: 6e20 d001 2000 |001c: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42dc9e: 1a02 fe91 |001f: const-string v2, "org.purple.smoke.neighbor_disconnected" // string@91fe │ │ +42dca2: 6e20 d001 2000 |0021: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42dca8: 1a02 ff91 |0024: const-string v2, "org.purple.smoke.network_connected" // string@91ff │ │ +42dcac: 6e20 d001 2000 |0026: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42dcb2: 1a02 0092 |0029: const-string v2, "org.purple.smoke.network_disconnected" // string@9200 │ │ +42dcb6: 6e20 d001 2000 |002b: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42dcbc: 1a02 0292 |002e: const-string v2, "org.purple.smoke.populate_participants" // string@9202 │ │ +42dcc0: 6e20 d001 2000 |0030: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42dcc6: 1a02 0792 |0033: const-string v2, "org.purple.smoke.siphash_share_confirmation" // string@9207 │ │ +42dcca: 6e20 d001 2000 |0035: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42dcd0: 1a02 0892 |0038: const-string v2, "org.purple.smoke.state_participants_populated" // string@9208 │ │ +42dcd4: 6e20 d001 2000 |003a: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42dcda: 1a02 0c92 |003d: const-string v2, "org.purple.smoke.time" // string@920c │ │ +42dcde: 6e20 d001 2000 |003f: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42dce4: 7110 a41d 0500 |0042: invoke-static {v5}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ +42dcea: 0c02 |0045: move-result-object v2 │ │ +42dcec: 5453 075f |0046: iget-object v3, v5, Lorg/purple/smoke/Settings;.m_receiver:Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // field@5f07 │ │ +42dcf0: 6e30 a51d 3200 |0048: invoke-virtual {v2, v3, v0}, Landroid/support/v4/content/LocalBroadcastManager;.registerReceiver:(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)V // method@1da5 │ │ +42dcf6: 5c51 085f |004b: iput-boolean v1, v5, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ +42dcfa: 7100 6fbd 0000 |004d: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +42dd00: 0c00 |0050: move-result-object v0 │ │ +42dd02: 6e10 73bd 0000 |0051: invoke-virtual {v0}, Lorg/purple/smoke/State;.isLocked:()Z // method@bd73 │ │ +42dd08: 0a00 |0054: move-result v0 │ │ +42dd0a: 3800 0600 |0055: if-eqz v0, 005b // +0006 │ │ +42dd0e: 7010 0fbd 0500 |0057: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showSmokescreenActivity:()V // method@bd0f │ │ +42dd14: 0e00 |005a: return-void │ │ +42dd16: 5450 065f |005b: iget-object v0, v5, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42dd1a: 1202 |005d: const/4 v2, #int 0 // #0 │ │ +42dd1c: 1a03 ec7c |005e: const-string v3, "lastActivity" // string@7cec │ │ +42dd20: 6e30 17ba 2003 |0060: invoke-virtual {v0, v2, v3}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42dd26: 0c00 |0063: move-result-object v0 │ │ +42dd28: 6e10 bf5c 0000 |0064: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +42dd2e: 12f3 |0067: const/4 v3, #int -1 // #ff │ │ +42dd30: 6e10 bf5c 0000 |0068: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +42dd36: 0a04 |006b: move-result v4 │ │ +42dd38: 2c04 5600 0000 |006c: sparse-switch v4, 000000c2 // +00000056 │ │ +42dd3e: 12f1 |006f: const/4 v1, #int -1 // #ff │ │ +42dd40: 282a |0070: goto 009a // +002a │ │ +42dd42: 1a01 0c40 |0071: const-string v1, "MemberChat" // string@400c │ │ +42dd46: 6e20 b85c 1000 |0073: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42dd4c: 0a00 |0076: move-result v0 │ │ +42dd4e: 3900 0300 |0077: if-nez v0, 007a // +0003 │ │ +42dd52: 28f6 |0079: goto 006f // -000a │ │ +42dd54: 1231 |007a: const/4 v1, #int 3 // #3 │ │ +42dd56: 281f |007b: goto 009a // +001f │ │ +42dd58: 1a01 7b4c |007c: const-string v1, "Steam" // string@4c7b │ │ +42dd5c: 6e20 b85c 1000 |007e: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42dd62: 0a00 |0081: move-result v0 │ │ +42dd64: 3900 0300 |0082: if-nez v0, 0085 // +0003 │ │ +42dd68: 28eb |0084: goto 006f // -0015 │ │ +42dd6a: 1221 |0085: const/4 v1, #int 2 // #2 │ │ +42dd6c: 2814 |0086: goto 009a // +0014 │ │ +42dd6e: 1a04 ea1a |0087: const-string v4, "Fire" // string@1aea │ │ +42dd72: 6e20 b85c 4000 |0089: invoke-virtual {v0, v4}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42dd78: 0a00 |008c: move-result v0 │ │ +42dd7a: 3900 0d00 |008d: if-nez v0, 009a // +000d │ │ +42dd7e: 28e0 |008f: goto 006f // -0020 │ │ +42dd80: 1a01 0113 |0090: const-string v1, "Chat" // string@1301 │ │ +42dd84: 6e20 b85c 1000 |0092: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42dd8a: 0a00 |0095: move-result v0 │ │ +42dd8c: 3900 0300 |0096: if-nez v0, 0099 // +0003 │ │ +42dd90: 28d7 |0098: goto 006f // -0029 │ │ +42dd92: 1201 |0099: const/4 v1, #int 0 // #0 │ │ +42dd94: 2b01 3a00 0000 |009a: packed-switch v1, 000000d4 // +0000003a │ │ +42dd9a: 5450 065f |009d: iget-object v0, v5, Lorg/purple/smoke/Settings;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f06 │ │ +42dd9e: 1a01 615b |009f: const-string v1, "automatic_neighbors_refresh" // string@5b61 │ │ +42dda2: 6e30 17ba 2001 |00a1: invoke-virtual {v0, v2, v1}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +42dda8: 0c00 |00a4: move-result-object v0 │ │ +42ddaa: 1a01 95a5 |00a5: const-string v1, "true" // string@a595 │ │ +42ddae: 6e20 b85c 1000 |00a7: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42ddb4: 0a00 |00aa: move-result v0 │ │ +42ddb6: 3800 1500 |00ab: if-eqz v0, 00c0 // +0015 │ │ +42ddba: 7010 14bd 0500 |00ad: invoke-direct {v5}, Lorg/purple/smoke/Settings;.startTimers:()V // method@bd14 │ │ +42ddc0: 2810 |00b0: goto 00c0 // +0010 │ │ +42ddc2: 7010 0ebd 0500 |00b1: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showMemberChatActivity:()V // method@bd0e │ │ +42ddc8: 280c |00b4: goto 00c0 // +000c │ │ +42ddca: 7010 10bd 0500 |00b5: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showSteamActivity:()V // method@bd10 │ │ +42ddd0: 2808 |00b8: goto 00c0 // +0008 │ │ +42ddd2: 7010 0dbd 0500 |00b9: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showFireActivity:()V // method@bd0d │ │ +42ddd8: 2804 |00bc: goto 00c0 // +0004 │ │ +42ddda: 7010 0bbd 0500 |00bd: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showChatActivity:()V // method@bd0b │ │ +42dde0: 0e00 |00c0: return-void │ │ +42dde2: 0000 |00c1: nop // spacer │ │ +42dde4: 0002 0400 7807 2000 566a 2100 30e1 ... |00c2: sparse-switch-data (18 units) │ │ +42de08: 0001 0400 0000 0000 2300 0000 1f00 ... |00d4: packed-switch-data (12 units) │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3684 │ │ 0x0003 line=3685 │ │ 0x0006 line=3687 │ │ 0x000b line=3689 │ │ 0x0012 line=3691 │ │ @@ -1573899,42 +1573898,42 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 7 16-bit code units │ │ -430434: |[430434] org.purple.smoke.Smokescreen.:()V │ │ -430444: 7100 8db9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ -43044a: 0c00 |0003: move-result-object v0 │ │ -43044c: 6900 315f |0004: sput-object v0, Lorg/purple/smoke/Smokescreen;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f31 │ │ -430450: 0e00 |0006: return-void │ │ +430430: |[430430] org.purple.smoke.Smokescreen.:()V │ │ +430440: 7100 8db9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ +430446: 0c00 |0003: move-result-object v0 │ │ +430448: 6900 315f |0004: sput-object v0, Lorg/purple/smoke/Smokescreen;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f31 │ │ +43044c: 0e00 |0006: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=48 │ │ locals : │ │ │ │ #1 : (in Lorg/purple/smoke/Smokescreen;) │ │ name : '' │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 15 16-bit code units │ │ -430454: |[430454] org.purple.smoke.Smokescreen.:()V │ │ -430464: 7010 df3c 0100 |0000: invoke-direct {v1}, Landroid/support/v7/app/AppCompatActivity;.:()V // method@3cdf │ │ -43046a: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -43046c: 5b10 2e5f |0004: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_lock:Landroid/widget/Button; // field@5f2e │ │ -430470: 5b10 305f |0006: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_unlock:Landroid/widget/Button; // field@5f30 │ │ -430474: 5b10 2c5f |0008: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -430478: 5b10 2d5f |000a: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_label:Landroid/widget/TextView; // field@5f2d │ │ -43047c: 5b10 2f5f |000c: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -430480: 0e00 |000e: return-void │ │ +430450: |[430450] org.purple.smoke.Smokescreen.:()V │ │ +430460: 7010 df3c 0100 |0000: invoke-direct {v1}, Landroid/support/v7/app/AppCompatActivity;.:()V // method@3cdf │ │ +430466: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +430468: 5b10 2e5f |0004: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_lock:Landroid/widget/Button; // field@5f2e │ │ +43046c: 5b10 305f |0006: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_unlock:Landroid/widget/Button; // field@5f30 │ │ +430470: 5b10 2c5f |0008: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +430474: 5b10 2d5f |000a: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_label:Landroid/widget/TextView; // field@5f2d │ │ +430478: 5b10 2f5f |000c: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +43047c: 0e00 |000e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=40 │ │ 0x0004 line=42 │ │ 0x0006 line=43 │ │ 0x0008 line=44 │ │ 0x000a line=45 │ │ @@ -1573947,17 +1573946,17 @@ │ │ type : '(Lorg/purple/smoke/Smokescreen;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -430484: |[430484] org.purple.smoke.Smokescreen.access$000:(Lorg/purple/smoke/Smokescreen;)V │ │ -430494: 7010 51bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Smokescreen;.prepareWidgets:()V // method@bd51 │ │ -43049a: 0e00 |0003: return-void │ │ +430480: |[430480] org.purple.smoke.Smokescreen.access$000:(Lorg/purple/smoke/Smokescreen;)V │ │ +430490: 7010 51bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Smokescreen;.prepareWidgets:()V // method@bd51 │ │ +430496: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=40 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Smokescreen; │ │ │ │ #3 : (in Lorg/purple/smoke/Smokescreen;) │ │ @@ -1573965,17 +1573964,17 @@ │ │ type : '(Lorg/purple/smoke/Smokescreen;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -43049c: |[43049c] org.purple.smoke.Smokescreen.access$100:(Lorg/purple/smoke/Smokescreen;)V │ │ -4304ac: 7010 44bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Smokescreen;.authenticate:()V // method@bd44 │ │ -4304b2: 0e00 |0003: return-void │ │ +430498: |[430498] org.purple.smoke.Smokescreen.access$100:(Lorg/purple/smoke/Smokescreen;)V │ │ +4304a8: 7010 44bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Smokescreen;.authenticate:()V // method@bd44 │ │ +4304ae: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=40 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Smokescreen; │ │ │ │ #4 : (in Lorg/purple/smoke/Smokescreen;) │ │ @@ -1573983,17 +1573982,17 @@ │ │ type : '(Lorg/purple/smoke/Smokescreen;)Landroid/widget/TextView;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -430164: |[430164] org.purple.smoke.Smokescreen.access$200:(Lorg/purple/smoke/Smokescreen;)Landroid/widget/TextView; │ │ -430174: 5400 2f5f |0000: iget-object v0, v0, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -430178: 1100 |0002: return-object v0 │ │ +430160: |[430160] org.purple.smoke.Smokescreen.access$200:(Lorg/purple/smoke/Smokescreen;)Landroid/widget/TextView; │ │ +430170: 5400 2f5f |0000: iget-object v0, v0, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +430174: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=40 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Smokescreen; │ │ │ │ #5 : (in Lorg/purple/smoke/Smokescreen;) │ │ @@ -1574001,96 +1574000,96 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 162 16-bit code units │ │ -4304b4: |[4304b4] org.purple.smoke.Smokescreen.authenticate:()V │ │ -4304c4: 6e10 4abd 0800 |0000: invoke-virtual {v8}, Lorg/purple/smoke/Smokescreen;.isFinishing:()Z // method@bd4a │ │ -4304ca: 0a00 |0003: move-result v0 │ │ -4304cc: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -4304d0: 0e00 |0006: return-void │ │ -4304d2: 5480 2c5f |0007: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -4304d6: 1201 |0009: const/4 v1, #int 0 // #0 │ │ -4304d8: 1a02 4666 |000a: const-string v2, "encryptionSalt" // string@6646 │ │ -4304dc: 6e30 17ba 1002 |000c: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -4304e2: 0c00 |000f: move-result-object v0 │ │ -4304e4: 6e10 bc5c 0000 |0010: invoke-virtual {v0}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4304ea: 0c00 |0013: move-result-object v0 │ │ -4304ec: 1202 |0014: const/4 v2, #int 0 // #0 │ │ -4304ee: 7120 c254 2000 |0015: invoke-static {v0, v2}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -4304f4: 0c00 |0018: move-result-object v0 │ │ -4304f6: 5483 2f5f |0019: iget-object v3, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -4304fa: 1214 |001b: const/4 v4, #int 1 // #1 │ │ -4304fc: 6e20 445b 4300 |001c: invoke-virtual {v3, v4}, Landroid/widget/TextView;.setSelectAllOnFocus:(Z)V // method@5b44 │ │ -430502: 1a03 0000 |001f: const-string v3, "" // string@0000 │ │ -430506: 3900 0d00 |0021: if-nez v0, 002e // +000d │ │ -43050a: 5480 2f5f |0023: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -43050e: 6e20 495b 3000 |0025: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -430514: 5480 2f5f |0028: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -430518: 6e10 265b 0000 |002a: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ -43051e: 0e00 |002d: return-void │ │ -430520: 5485 2c5f |002e: iget-object v5, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -430524: 1a06 b889 |0030: const-string v6, "macSalt" // string@89b8 │ │ -430528: 6e30 17ba 1506 |0032: invoke-virtual {v5, v1, v6}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -43052e: 0c05 |0035: move-result-object v5 │ │ -430530: 6e10 bc5c 0500 |0036: invoke-virtual {v5}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -430536: 0c05 |0039: move-result-object v5 │ │ -430538: 7120 c254 2500 |003a: invoke-static {v5, v2}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -43053e: 0c05 |003d: move-result-object v5 │ │ -430540: 3905 0d00 |003e: if-nez v5, 004b // +000d │ │ -430544: 5480 2f5f |0040: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -430548: 6e20 495b 3000 |0042: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43054e: 5480 2f5f |0045: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -430552: 6e10 265b 0000 |0047: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ -430558: 0e00 |004a: return-void │ │ -43055a: 1236 |004b: const/4 v6, #int 3 // #3 │ │ -43055c: 2366 0f1c |004c: new-array v6, v6, [[B // type@1c0f │ │ -430560: 5487 2f5f |004e: iget-object v7, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -430564: 6e10 1c5b 0700 |0050: invoke-virtual {v7}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -43056a: 0c07 |0053: move-result-object v7 │ │ -43056c: 7210 045c 0700 |0054: invoke-interface {v7}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -430572: 0c07 |0057: move-result-object v7 │ │ -430574: 6e10 bc5c 0700 |0058: invoke-virtual {v7}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -43057a: 0c07 |005b: move-result-object v7 │ │ -43057c: 4d07 0602 |005c: aput-object v7, v6, v2 │ │ -430580: 4d00 0604 |005e: aput-object v0, v6, v4 │ │ -430584: 1220 |0060: const/4 v0, #int 2 // #2 │ │ -430586: 4d05 0600 |0061: aput-object v5, v6, v0 │ │ -43058a: 7110 b8b9 0600 |0063: invoke-static {v6}, Lorg/purple/smoke/Cryptography;.sha512:([[B)[B // method@b9b8 │ │ -430590: 0c00 |0066: move-result-object v0 │ │ -430592: 3900 0d00 |0067: if-nez v0, 0074 // +000d │ │ -430596: 5480 2f5f |0069: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -43059a: 6e20 495b 3000 |006b: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -4305a0: 5480 2f5f |006e: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -4305a4: 6e10 265b 0000 |0070: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ -4305aa: 0e00 |0073: return-void │ │ -4305ac: 5484 2c5f |0074: iget-object v4, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -4305b0: 1a05 ae99 |0076: const-string v5, "saltedPassword" // string@99ae │ │ -4305b4: 6e30 17ba 1405 |0078: invoke-virtual {v4, v1, v5}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ -4305ba: 0c01 |007b: move-result-object v1 │ │ -4305bc: 6e10 bc5c 0100 |007c: invoke-virtual {v1}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4305c2: 0c01 |007f: move-result-object v1 │ │ -4305c4: 7120 c354 2000 |0080: invoke-static {v0, v2}, Landroid/util/Base64;.encode:([BI)[B // method@54c3 │ │ -4305ca: 0c00 |0083: move-result-object v0 │ │ -4305cc: 7120 98b9 0100 |0084: invoke-static {v1, v0}, Lorg/purple/smoke/Cryptography;.memcmp:([B[B)Z // method@b998 │ │ -4305d2: 0a00 |0087: move-result v0 │ │ -4305d4: 3900 0d00 |0088: if-nez v0, 0095 // +000d │ │ -4305d8: 5480 2f5f |008a: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -4305dc: 6e20 495b 3000 |008c: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -4305e2: 5480 2f5f |008f: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -4305e6: 6e10 265b 0000 |0091: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ -4305ec: 0e00 |0094: return-void │ │ -4305ee: 7100 6fbd 0000 |0095: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -4305f4: 0c00 |0098: move-result-object v0 │ │ -4305f6: 6e20 86bd 2000 |0099: invoke-virtual {v0, v2}, Lorg/purple/smoke/State;.setLocked:(Z)V // method@bd86 │ │ -4305fc: 5480 2f5f |009c: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -430600: 6e20 495b 3000 |009e: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -430606: 0e00 |00a1: return-void │ │ +4304b0: |[4304b0] org.purple.smoke.Smokescreen.authenticate:()V │ │ +4304c0: 6e10 4abd 0800 |0000: invoke-virtual {v8}, Lorg/purple/smoke/Smokescreen;.isFinishing:()Z // method@bd4a │ │ +4304c6: 0a00 |0003: move-result v0 │ │ +4304c8: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +4304cc: 0e00 |0006: return-void │ │ +4304ce: 5480 2c5f |0007: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +4304d2: 1201 |0009: const/4 v1, #int 0 // #0 │ │ +4304d4: 1a02 4666 |000a: const-string v2, "encryptionSalt" // string@6646 │ │ +4304d8: 6e30 17ba 1002 |000c: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +4304de: 0c00 |000f: move-result-object v0 │ │ +4304e0: 6e10 bc5c 0000 |0010: invoke-virtual {v0}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4304e6: 0c00 |0013: move-result-object v0 │ │ +4304e8: 1202 |0014: const/4 v2, #int 0 // #0 │ │ +4304ea: 7120 c254 2000 |0015: invoke-static {v0, v2}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +4304f0: 0c00 |0018: move-result-object v0 │ │ +4304f2: 5483 2f5f |0019: iget-object v3, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +4304f6: 1214 |001b: const/4 v4, #int 1 // #1 │ │ +4304f8: 6e20 445b 4300 |001c: invoke-virtual {v3, v4}, Landroid/widget/TextView;.setSelectAllOnFocus:(Z)V // method@5b44 │ │ +4304fe: 1a03 0000 |001f: const-string v3, "" // string@0000 │ │ +430502: 3900 0d00 |0021: if-nez v0, 002e // +000d │ │ +430506: 5480 2f5f |0023: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +43050a: 6e20 495b 3000 |0025: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +430510: 5480 2f5f |0028: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +430514: 6e10 265b 0000 |002a: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ +43051a: 0e00 |002d: return-void │ │ +43051c: 5485 2c5f |002e: iget-object v5, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +430520: 1a06 b889 |0030: const-string v6, "macSalt" // string@89b8 │ │ +430524: 6e30 17ba 1506 |0032: invoke-virtual {v5, v1, v6}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +43052a: 0c05 |0035: move-result-object v5 │ │ +43052c: 6e10 bc5c 0500 |0036: invoke-virtual {v5}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +430532: 0c05 |0039: move-result-object v5 │ │ +430534: 7120 c254 2500 |003a: invoke-static {v5, v2}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +43053a: 0c05 |003d: move-result-object v5 │ │ +43053c: 3905 0d00 |003e: if-nez v5, 004b // +000d │ │ +430540: 5480 2f5f |0040: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +430544: 6e20 495b 3000 |0042: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +43054a: 5480 2f5f |0045: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +43054e: 6e10 265b 0000 |0047: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ +430554: 0e00 |004a: return-void │ │ +430556: 1236 |004b: const/4 v6, #int 3 // #3 │ │ +430558: 2366 0f1c |004c: new-array v6, v6, [[B // type@1c0f │ │ +43055c: 5487 2f5f |004e: iget-object v7, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +430560: 6e10 1c5b 0700 |0050: invoke-virtual {v7}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +430566: 0c07 |0053: move-result-object v7 │ │ +430568: 7210 045c 0700 |0054: invoke-interface {v7}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +43056e: 0c07 |0057: move-result-object v7 │ │ +430570: 6e10 bc5c 0700 |0058: invoke-virtual {v7}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +430576: 0c07 |005b: move-result-object v7 │ │ +430578: 4d07 0602 |005c: aput-object v7, v6, v2 │ │ +43057c: 4d00 0604 |005e: aput-object v0, v6, v4 │ │ +430580: 1220 |0060: const/4 v0, #int 2 // #2 │ │ +430582: 4d05 0600 |0061: aput-object v5, v6, v0 │ │ +430586: 7110 b8b9 0600 |0063: invoke-static {v6}, Lorg/purple/smoke/Cryptography;.sha512:([[B)[B // method@b9b8 │ │ +43058c: 0c00 |0066: move-result-object v0 │ │ +43058e: 3900 0d00 |0067: if-nez v0, 0074 // +000d │ │ +430592: 5480 2f5f |0069: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +430596: 6e20 495b 3000 |006b: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +43059c: 5480 2f5f |006e: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +4305a0: 6e10 265b 0000 |0070: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ +4305a6: 0e00 |0073: return-void │ │ +4305a8: 5484 2c5f |0074: iget-object v4, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +4305ac: 1a05 ae99 |0076: const-string v5, "saltedPassword" // string@99ae │ │ +4305b0: 6e30 17ba 1405 |0078: invoke-virtual {v4, v1, v5}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba17 │ │ +4305b6: 0c01 |007b: move-result-object v1 │ │ +4305b8: 6e10 bc5c 0100 |007c: invoke-virtual {v1}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4305be: 0c01 |007f: move-result-object v1 │ │ +4305c0: 7120 c354 2000 |0080: invoke-static {v0, v2}, Landroid/util/Base64;.encode:([BI)[B // method@54c3 │ │ +4305c6: 0c00 |0083: move-result-object v0 │ │ +4305c8: 7120 98b9 0100 |0084: invoke-static {v1, v0}, Lorg/purple/smoke/Cryptography;.memcmp:([B[B)Z // method@b998 │ │ +4305ce: 0a00 |0087: move-result v0 │ │ +4305d0: 3900 0d00 |0088: if-nez v0, 0095 // +000d │ │ +4305d4: 5480 2f5f |008a: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +4305d8: 6e20 495b 3000 |008c: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +4305de: 5480 2f5f |008f: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +4305e2: 6e10 265b 0000 |0091: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ +4305e8: 0e00 |0094: return-void │ │ +4305ea: 7100 6fbd 0000 |0095: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +4305f0: 0c00 |0098: move-result-object v0 │ │ +4305f2: 6e20 86bd 2000 |0099: invoke-virtual {v0, v2}, Lorg/purple/smoke/State;.setLocked:(Z)V // method@bd86 │ │ +4305f8: 5480 2f5f |009c: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +4305fc: 6e20 495b 3000 |009e: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +430602: 0e00 |00a1: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=52 │ │ 0x0007 line=55 │ │ 0x000c line=56 │ │ 0x0019 line=59 │ │ 0x0023 line=63 │ │ @@ -1574119,26 +1574118,26 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 25 16-bit code units │ │ -430704: |[430704] org.purple.smoke.Smokescreen.prepareListeners:()V │ │ -430714: 5420 2e5f |0000: iget-object v0, v2, Lorg/purple/smoke/Smokescreen;.m_lock:Landroid/widget/Button; // field@5f2e │ │ -430718: 3800 0a00 |0002: if-eqz v0, 000c // +000a │ │ -43071c: 2201 101b |0004: new-instance v1, Lorg/purple/smoke/Smokescreen$1; // type@1b10 │ │ -430720: 7020 39bd 2100 |0006: invoke-direct {v1, v2}, Lorg/purple/smoke/Smokescreen$1;.:(Lorg/purple/smoke/Smokescreen;)V // method@bd39 │ │ -430726: 6e20 e258 1000 |0009: invoke-virtual {v0, v1}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -43072c: 5420 305f |000c: iget-object v0, v2, Lorg/purple/smoke/Smokescreen;.m_unlock:Landroid/widget/Button; // field@5f30 │ │ -430730: 3800 0a00 |000e: if-eqz v0, 0018 // +000a │ │ -430734: 2201 111b |0010: new-instance v1, Lorg/purple/smoke/Smokescreen$2; // type@1b11 │ │ -430738: 7020 3bbd 2100 |0012: invoke-direct {v1, v2}, Lorg/purple/smoke/Smokescreen$2;.:(Lorg/purple/smoke/Smokescreen;)V // method@bd3b │ │ -43073e: 6e20 e258 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -430744: 0e00 |0018: return-void │ │ +430700: |[430700] org.purple.smoke.Smokescreen.prepareListeners:()V │ │ +430710: 5420 2e5f |0000: iget-object v0, v2, Lorg/purple/smoke/Smokescreen;.m_lock:Landroid/widget/Button; // field@5f2e │ │ +430714: 3800 0a00 |0002: if-eqz v0, 000c // +000a │ │ +430718: 2201 101b |0004: new-instance v1, Lorg/purple/smoke/Smokescreen$1; // type@1b10 │ │ +43071c: 7020 39bd 2100 |0006: invoke-direct {v1, v2}, Lorg/purple/smoke/Smokescreen$1;.:(Lorg/purple/smoke/Smokescreen;)V // method@bd39 │ │ +430722: 6e20 e258 1000 |0009: invoke-virtual {v0, v1}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +430728: 5420 305f |000c: iget-object v0, v2, Lorg/purple/smoke/Smokescreen;.m_unlock:Landroid/widget/Button; // field@5f30 │ │ +43072c: 3800 0a00 |000e: if-eqz v0, 0018 // +000a │ │ +430730: 2201 111b |0010: new-instance v1, Lorg/purple/smoke/Smokescreen$2; // type@1b11 │ │ +430734: 7020 3bbd 2100 |0012: invoke-direct {v1, v2}, Lorg/purple/smoke/Smokescreen$2;.:(Lorg/purple/smoke/Smokescreen;)V // method@bd3b │ │ +43073a: 6e20 e258 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +430740: 0e00 |0018: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=106 │ │ 0x0004 line=107 │ │ 0x000c line=119 │ │ 0x0010 line=120 │ │ locals : │ │ @@ -1574149,49 +1574148,49 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 66 16-bit code units │ │ -430748: |[430748] org.purple.smoke.Smokescreen.prepareWidgets:()V │ │ -430758: 7100 6fbd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -43075e: 0c00 |0003: move-result-object v0 │ │ -430760: 6e10 73bd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.isLocked:()Z // method@bd73 │ │ -430766: 0a00 |0007: move-result v0 │ │ -430768: 5451 2d5f |0008: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_label:Landroid/widget/TextView; // field@5f2d │ │ -43076c: 3800 0500 |000a: if-eqz v0, 000f // +0005 │ │ -430770: 1a02 284c |000c: const-string v2, "Smoke is locked. To unlock, please provide the correct password and click the below button." // string@4c28 │ │ -430774: 2803 |000e: goto 0011 // +0003 │ │ -430776: 1a02 294c |000f: const-string v2, "Smoke is unlocked. To lock, please click the below button." // string@4c29 │ │ -43077a: 6e20 495b 2100 |0011: invoke-virtual {v1, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -430780: 5451 2e5f |0014: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_lock:Landroid/widget/Button; // field@5f2e │ │ -430784: 1302 0800 |0016: const/16 v2, #int 8 // #8 │ │ -430788: 1203 |0018: const/4 v3, #int 0 // #0 │ │ -43078a: 3800 0500 |0019: if-eqz v0, 001e // +0005 │ │ -43078e: 1304 0800 |001b: const/16 v4, #int 8 // #8 │ │ -430792: 2802 |001d: goto 001f // +0002 │ │ -430794: 1204 |001e: const/4 v4, #int 0 // #0 │ │ -430796: 6e20 e558 4100 |001f: invoke-virtual {v1, v4}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ -43079c: 5451 2f5f |0022: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -4307a0: 3800 0400 |0024: if-eqz v0, 0028 // +0004 │ │ -4307a4: 1204 |0026: const/4 v4, #int 0 // #0 │ │ -4307a6: 2803 |0027: goto 002a // +0003 │ │ -4307a8: 1304 0800 |0028: const/16 v4, #int 8 // #8 │ │ -4307ac: 6e20 535b 4100 |002a: invoke-virtual {v1, v4}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -4307b2: 3800 0c00 |002d: if-eqz v0, 0039 // +000c │ │ -4307b6: 5451 2f5f |002f: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -4307ba: 2204 121b |0031: new-instance v4, Lorg/purple/smoke/Smokescreen$3; // type@1b12 │ │ -4307be: 7020 3dbd 5400 |0033: invoke-direct {v4, v5}, Lorg/purple/smoke/Smokescreen$3;.:(Lorg/purple/smoke/Smokescreen;)V // method@bd3d │ │ -4307c4: 6e20 255b 4100 |0036: invoke-virtual {v1, v4}, Landroid/widget/TextView;.post:(Ljava/lang/Runnable;)Z // method@5b25 │ │ -4307ca: 5451 305f |0039: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_unlock:Landroid/widget/Button; // field@5f30 │ │ -4307ce: 3800 0300 |003b: if-eqz v0, 003e // +0003 │ │ -4307d2: 1202 |003d: const/4 v2, #int 0 // #0 │ │ -4307d4: 6e20 e558 2100 |003e: invoke-virtual {v1, v2}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ -4307da: 0e00 |0041: return-void │ │ +430744: |[430744] org.purple.smoke.Smokescreen.prepareWidgets:()V │ │ +430754: 7100 6fbd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +43075a: 0c00 |0003: move-result-object v0 │ │ +43075c: 6e10 73bd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.isLocked:()Z // method@bd73 │ │ +430762: 0a00 |0007: move-result v0 │ │ +430764: 5451 2d5f |0008: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_label:Landroid/widget/TextView; // field@5f2d │ │ +430768: 3800 0500 |000a: if-eqz v0, 000f // +0005 │ │ +43076c: 1a02 284c |000c: const-string v2, "Smoke is locked. To unlock, please provide the correct password and click the below button." // string@4c28 │ │ +430770: 2803 |000e: goto 0011 // +0003 │ │ +430772: 1a02 294c |000f: const-string v2, "Smoke is unlocked. To lock, please click the below button." // string@4c29 │ │ +430776: 6e20 495b 2100 |0011: invoke-virtual {v1, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +43077c: 5451 2e5f |0014: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_lock:Landroid/widget/Button; // field@5f2e │ │ +430780: 1302 0800 |0016: const/16 v2, #int 8 // #8 │ │ +430784: 1203 |0018: const/4 v3, #int 0 // #0 │ │ +430786: 3800 0500 |0019: if-eqz v0, 001e // +0005 │ │ +43078a: 1304 0800 |001b: const/16 v4, #int 8 // #8 │ │ +43078e: 2802 |001d: goto 001f // +0002 │ │ +430790: 1204 |001e: const/4 v4, #int 0 // #0 │ │ +430792: 6e20 e558 4100 |001f: invoke-virtual {v1, v4}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ +430798: 5451 2f5f |0022: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +43079c: 3800 0400 |0024: if-eqz v0, 0028 // +0004 │ │ +4307a0: 1204 |0026: const/4 v4, #int 0 // #0 │ │ +4307a2: 2803 |0027: goto 002a // +0003 │ │ +4307a4: 1304 0800 |0028: const/16 v4, #int 8 // #8 │ │ +4307a8: 6e20 535b 4100 |002a: invoke-virtual {v1, v4}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +4307ae: 3800 0c00 |002d: if-eqz v0, 0039 // +000c │ │ +4307b2: 5451 2f5f |002f: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +4307b6: 2204 121b |0031: new-instance v4, Lorg/purple/smoke/Smokescreen$3; // type@1b12 │ │ +4307ba: 7020 3dbd 5400 |0033: invoke-direct {v4, v5}, Lorg/purple/smoke/Smokescreen$3;.:(Lorg/purple/smoke/Smokescreen;)V // method@bd3d │ │ +4307c0: 6e20 255b 4100 |0036: invoke-virtual {v1, v4}, Landroid/widget/TextView;.post:(Ljava/lang/Runnable;)Z // method@5b25 │ │ +4307c6: 5451 305f |0039: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_unlock:Landroid/widget/Button; // field@5f30 │ │ +4307ca: 3800 0300 |003b: if-eqz v0, 003e // +0003 │ │ +4307ce: 1202 |003d: const/4 v2, #int 0 // #0 │ │ +4307d0: 6e20 e558 2100 |003e: invoke-virtual {v1, v2}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ +4307d6: 0e00 |0041: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=135 │ │ 0x0008 line=137 │ │ 0x0011 line=138 │ │ 0x0014 line=142 │ │ 0x0022 line=143 │ │ @@ -1574205,21 +1574204,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -4307dc: |[4307dc] org.purple.smoke.Smokescreen.showChatActivity:()V │ │ -4307ec: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -4307f0: 1c01 5a1a |0002: const-class v1, Lorg/purple/smoke/Chat; // type@1a5a │ │ -4307f4: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -4307fa: 6e20 58bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd58 │ │ -430800: 6e10 46bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd46 │ │ -430806: 0e00 |000d: return-void │ │ +4307d8: |[4307d8] org.purple.smoke.Smokescreen.showChatActivity:()V │ │ +4307e8: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +4307ec: 1c01 5a1a |0002: const-class v1, Lorg/purple/smoke/Chat; // type@1a5a │ │ +4307f0: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +4307f6: 6e20 58bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd58 │ │ +4307fc: 6e10 46bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd46 │ │ +430802: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=160 │ │ 0x0007 line=162 │ │ 0x000a line=163 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Smokescreen; │ │ @@ -1574229,21 +1574228,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -430808: |[430808] org.purple.smoke.Smokescreen.showFireActivity:()V │ │ -430818: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -43081c: 1c01 751a |0002: const-class v1, Lorg/purple/smoke/Fire; // type@1a75 │ │ -430820: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -430826: 6e20 58bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd58 │ │ -43082c: 6e10 46bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd46 │ │ -430832: 0e00 |000d: return-void │ │ +430804: |[430804] org.purple.smoke.Smokescreen.showFireActivity:()V │ │ +430814: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +430818: 1c01 751a |0002: const-class v1, Lorg/purple/smoke/Fire; // type@1a75 │ │ +43081c: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +430822: 6e20 58bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd58 │ │ +430828: 6e10 46bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd46 │ │ +43082e: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=168 │ │ 0x0007 line=170 │ │ 0x000a line=171 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Smokescreen; │ │ @@ -1574253,21 +1574252,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -430834: |[430834] org.purple.smoke.Smokescreen.showMemberChatActivity:()V │ │ -430844: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -430848: 1c01 a61a |0002: const-class v1, Lorg/purple/smoke/MemberChat; // type@1aa6 │ │ -43084c: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -430852: 6e20 58bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd58 │ │ -430858: 6e10 46bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd46 │ │ -43085e: 0e00 |000d: return-void │ │ +430830: |[430830] org.purple.smoke.Smokescreen.showMemberChatActivity:()V │ │ +430840: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +430844: 1c01 a61a |0002: const-class v1, Lorg/purple/smoke/MemberChat; // type@1aa6 │ │ +430848: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +43084e: 6e20 58bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd58 │ │ +430854: 6e10 46bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd46 │ │ +43085a: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=176 │ │ 0x0007 line=178 │ │ 0x000a line=179 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Smokescreen; │ │ @@ -1574277,21 +1574276,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -430860: |[430860] org.purple.smoke.Smokescreen.showSettingsActivity:()V │ │ -430870: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -430874: 1c01 0a1b |0002: const-class v1, Lorg/purple/smoke/Settings; // type@1b0a │ │ -430878: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -43087e: 6e20 58bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd58 │ │ -430884: 6e10 46bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd46 │ │ -43088a: 0e00 |000d: return-void │ │ +43085c: |[43085c] org.purple.smoke.Smokescreen.showSettingsActivity:()V │ │ +43086c: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +430870: 1c01 0a1b |0002: const-class v1, Lorg/purple/smoke/Settings; // type@1b0a │ │ +430874: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +43087a: 6e20 58bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd58 │ │ +430880: 6e10 46bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd46 │ │ +430886: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=184 │ │ 0x0007 line=186 │ │ 0x000a line=187 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Smokescreen; │ │ @@ -1574301,21 +1574300,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -43088c: |[43088c] org.purple.smoke.Smokescreen.showSteamActivity:()V │ │ -43089c: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -4308a0: 1c01 201b |0002: const-class v1, Lorg/purple/smoke/Steam; // type@1b20 │ │ -4308a4: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -4308aa: 6e20 58bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd58 │ │ -4308b0: 6e10 46bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd46 │ │ -4308b6: 0e00 |000d: return-void │ │ +430888: |[430888] org.purple.smoke.Smokescreen.showSteamActivity:()V │ │ +430898: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +43089c: 1c01 201b |0002: const-class v1, Lorg/purple/smoke/Steam; // type@1b20 │ │ +4308a0: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +4308a6: 6e20 58bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd58 │ │ +4308ac: 6e10 46bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd46 │ │ +4308b2: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=192 │ │ 0x0007 line=194 │ │ 0x000a line=195 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Smokescreen; │ │ @@ -1574326,50 +1574325,50 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 79 16-bit code units │ │ -430608: |[430608] org.purple.smoke.Smokescreen.onCreate:(Landroid/os/Bundle;)V │ │ -430618: 6f20 f23c 2100 |0000: invoke-super {v1, v2}, Landroid/support/v7/app/AppCompatActivity;.onCreate:(Landroid/os/Bundle;)V // method@3cf2 │ │ -43061e: 6e10 47bd 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/Smokescreen;.getApplicationContext:()Landroid/content/Context; // method@bd47 │ │ -430624: 0c02 |0006: move-result-object v2 │ │ -430626: 7110 f0b9 0200 |0007: invoke-static {v2}, Lorg/purple/smoke/Database;.getInstance:(Landroid/content/Context;)Lorg/purple/smoke/Database; // method@b9f0 │ │ -43062c: 0c02 |000a: move-result-object v2 │ │ -43062e: 5b12 2c5f |000b: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -430632: 1402 2000 0a7f |000d: const v2, #float 1.83434e+38 // #7f0a0020 │ │ -430638: 6e20 52bd 2100 |0010: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.setContentView:(I)V // method@bd52 │ │ -43063e: 6e10 49bd 0100 |0013: invoke-virtual {v1}, Lorg/purple/smoke/Smokescreen;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bd49 │ │ -430644: 0c02 |0016: move-result-object v2 │ │ -430646: 1a00 314c |0017: const-string v0, "Smoke | Smokescreen" // string@4c31 │ │ -43064a: 6e20 0c3c 0200 |0019: invoke-virtual {v2, v0}, Landroid/support/v7/app/ActionBar;.setTitle:(Ljava/lang/CharSequence;)V // method@3c0c │ │ -430650: 1402 8b00 087f |001c: const v2, #float 1.80778e+38 // #7f08008b │ │ -430656: 6e20 45bd 2100 |001f: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.findViewById:(I)Landroid/view/View; // method@bd45 │ │ -43065c: 0c02 |0022: move-result-object v2 │ │ -43065e: 1f02 970a |0023: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ -430662: 5b12 2d5f |0025: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_label:Landroid/widget/TextView; // field@5f2d │ │ -430666: 1402 9700 087f |0027: const v2, #float 1.80778e+38 // #7f080097 │ │ -43066c: 6e20 45bd 2100 |002a: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.findViewById:(I)Landroid/view/View; // method@bd45 │ │ -430672: 0c02 |002d: move-result-object v2 │ │ -430674: 1f02 5e0a |002e: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -430678: 5b12 2e5f |0030: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_lock:Landroid/widget/Button; // field@5f2e │ │ -43067c: 1402 c300 087f |0032: const v2, #float 1.80779e+38 // #7f0800c3 │ │ -430682: 6e20 45bd 2100 |0035: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.findViewById:(I)Landroid/view/View; // method@bd45 │ │ -430688: 0c02 |0038: move-result-object v2 │ │ -43068a: 1f02 970a |0039: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ -43068e: 5b12 2f5f |003b: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -430692: 1402 2800 087f |003d: const v2, #float 1.80776e+38 // #7f080028 │ │ -430698: 6e20 45bd 2100 |0040: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.findViewById:(I)Landroid/view/View; // method@bd45 │ │ -43069e: 0c02 |0043: move-result-object v2 │ │ -4306a0: 1f02 5e0a |0044: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -4306a4: 5b12 305f |0046: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_unlock:Landroid/widget/Button; // field@5f30 │ │ -4306a8: 7010 50bd 0100 |0048: invoke-direct {v1}, Lorg/purple/smoke/Smokescreen;.prepareListeners:()V // method@bd50 │ │ -4306ae: 7010 51bd 0100 |004b: invoke-direct {v1}, Lorg/purple/smoke/Smokescreen;.prepareWidgets:()V // method@bd51 │ │ -4306b4: 0e00 |004e: return-void │ │ +430604: |[430604] org.purple.smoke.Smokescreen.onCreate:(Landroid/os/Bundle;)V │ │ +430614: 6f20 f23c 2100 |0000: invoke-super {v1, v2}, Landroid/support/v7/app/AppCompatActivity;.onCreate:(Landroid/os/Bundle;)V // method@3cf2 │ │ +43061a: 6e10 47bd 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/Smokescreen;.getApplicationContext:()Landroid/content/Context; // method@bd47 │ │ +430620: 0c02 |0006: move-result-object v2 │ │ +430622: 7110 f0b9 0200 |0007: invoke-static {v2}, Lorg/purple/smoke/Database;.getInstance:(Landroid/content/Context;)Lorg/purple/smoke/Database; // method@b9f0 │ │ +430628: 0c02 |000a: move-result-object v2 │ │ +43062a: 5b12 2c5f |000b: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +43062e: 1402 2000 0a7f |000d: const v2, #float 1.83434e+38 // #7f0a0020 │ │ +430634: 6e20 52bd 2100 |0010: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.setContentView:(I)V // method@bd52 │ │ +43063a: 6e10 49bd 0100 |0013: invoke-virtual {v1}, Lorg/purple/smoke/Smokescreen;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bd49 │ │ +430640: 0c02 |0016: move-result-object v2 │ │ +430642: 1a00 314c |0017: const-string v0, "Smoke | Smokescreen" // string@4c31 │ │ +430646: 6e20 0c3c 0200 |0019: invoke-virtual {v2, v0}, Landroid/support/v7/app/ActionBar;.setTitle:(Ljava/lang/CharSequence;)V // method@3c0c │ │ +43064c: 1402 8b00 087f |001c: const v2, #float 1.80778e+38 // #7f08008b │ │ +430652: 6e20 45bd 2100 |001f: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.findViewById:(I)Landroid/view/View; // method@bd45 │ │ +430658: 0c02 |0022: move-result-object v2 │ │ +43065a: 1f02 970a |0023: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ +43065e: 5b12 2d5f |0025: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_label:Landroid/widget/TextView; // field@5f2d │ │ +430662: 1402 9700 087f |0027: const v2, #float 1.80778e+38 // #7f080097 │ │ +430668: 6e20 45bd 2100 |002a: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.findViewById:(I)Landroid/view/View; // method@bd45 │ │ +43066e: 0c02 |002d: move-result-object v2 │ │ +430670: 1f02 5e0a |002e: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +430674: 5b12 2e5f |0030: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_lock:Landroid/widget/Button; // field@5f2e │ │ +430678: 1402 c300 087f |0032: const v2, #float 1.80779e+38 // #7f0800c3 │ │ +43067e: 6e20 45bd 2100 |0035: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.findViewById:(I)Landroid/view/View; // method@bd45 │ │ +430684: 0c02 |0038: move-result-object v2 │ │ +430686: 1f02 970a |0039: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ +43068a: 5b12 2f5f |003b: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +43068e: 1402 2800 087f |003d: const v2, #float 1.80776e+38 // #7f080028 │ │ +430694: 6e20 45bd 2100 |0040: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.findViewById:(I)Landroid/view/View; // method@bd45 │ │ +43069a: 0c02 |0043: move-result-object v2 │ │ +43069c: 1f02 5e0a |0044: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +4306a0: 5b12 305f |0046: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_unlock:Landroid/widget/Button; // field@5f30 │ │ +4306a4: 7010 50bd 0100 |0048: invoke-direct {v1}, Lorg/purple/smoke/Smokescreen;.prepareListeners:()V // method@bd50 │ │ +4306aa: 7010 51bd 0100 |004b: invoke-direct {v1}, Lorg/purple/smoke/Smokescreen;.prepareWidgets:()V // method@bd51 │ │ +4306b0: 0e00 |004e: return-void │ │ catches : 1 │ │ 0x0013 - 0x001c │ │ Ljava/lang/Exception; -> 0x001c │ │ positions : │ │ 0x0000 line=201 │ │ 0x0003 line=202 │ │ 0x0010 line=203 │ │ @@ -1574389,42 +1574388,42 @@ │ │ type : '(Landroid/view/Menu;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 2 16-bit code units │ │ -43017c: |[43017c] org.purple.smoke.Smokescreen.onCreateOptionsMenu:(Landroid/view/Menu;)Z │ │ -43018c: 1211 |0000: const/4 v1, #int 1 // #1 │ │ -43018e: 0f01 |0001: return v1 │ │ +430178: |[430178] org.purple.smoke.Smokescreen.onCreateOptionsMenu:(Landroid/view/Menu;)Z │ │ +430188: 1211 |0000: const/4 v1, #int 1 // #1 │ │ +43018a: 0f01 |0001: return v1 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ #2 : (in Lorg/purple/smoke/Smokescreen;) │ │ name : 'onDestroy' │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 22 16-bit code units │ │ -4306c8: |[4306c8] org.purple.smoke.Smokescreen.onDestroy:()V │ │ -4306d8: 7100 6fbd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -4306de: 0c00 |0003: move-result-object v0 │ │ -4306e0: 6e10 6abd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.exit:()Z // method@bd6a │ │ -4306e6: 0a00 |0007: move-result v0 │ │ -4306e8: 3800 0a00 |0008: if-eqz v0, 0012 // +000a │ │ -4306ec: 7100 5705 0000 |000a: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ -4306f2: 0a00 |000d: move-result v0 │ │ -4306f4: 7110 5605 0000 |000e: invoke-static {v0}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ -4306fa: 2804 |0011: goto 0015 // +0004 │ │ -4306fc: 6f10 f53c 0100 |0012: invoke-super {v1}, Landroid/support/v7/app/AppCompatActivity;.onDestroy:()V // method@3cf5 │ │ -430702: 0e00 |0015: return-void │ │ +4306c4: |[4306c4] org.purple.smoke.Smokescreen.onDestroy:()V │ │ +4306d4: 7100 6fbd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +4306da: 0c00 |0003: move-result-object v0 │ │ +4306dc: 6e10 6abd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.exit:()Z // method@bd6a │ │ +4306e2: 0a00 |0007: move-result v0 │ │ +4306e4: 3800 0a00 |0008: if-eqz v0, 0012 // +000a │ │ +4306e8: 7100 5705 0000 |000a: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ +4306ee: 0a00 |000d: move-result v0 │ │ +4306f0: 7110 5605 0000 |000e: invoke-static {v0}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ +4306f6: 2804 |0011: goto 0015 // +0004 │ │ +4306f8: 6f10 f53c 0100 |0012: invoke-super {v1}, Landroid/support/v7/app/AppCompatActivity;.onDestroy:()V // method@3cf5 │ │ +4306fe: 0e00 |0015: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=224 │ │ 0x000a line=225 │ │ 0x0012 line=227 │ │ locals : │ │ 0x0000 - 0x0016 reg=1 this Lorg/purple/smoke/Smokescreen; │ │ @@ -1574434,90 +1574433,90 @@ │ │ type : '(Landroid/view/MenuItem;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 10 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 176 16-bit code units │ │ -430190: |[430190] org.purple.smoke.Smokescreen.onOptionsItemSelected:(Landroid/view/MenuItem;)Z │ │ -4301a0: 7210 6a55 0900 |0000: invoke-interface {v9}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ -4301a6: 0a00 |0003: move-result v0 │ │ -4301a8: 7210 6c55 0900 |0004: invoke-interface {v9}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ -4301ae: 0a01 |0007: move-result v1 │ │ -4301b0: 1a02 ec7c |0008: const-string v2, "lastActivity" // string@7cec │ │ -4301b4: 1203 |000a: const/4 v3, #int 0 // #0 │ │ -4301b6: 1214 |000b: const/4 v4, #int 1 // #1 │ │ -4301b8: 3900 3700 |000c: if-nez v0, 0043 // +0037 │ │ -4301bc: 2c01 8c00 0000 |000e: sparse-switch v1, 0000009a // +0000008c │ │ -4301c2: 2900 8300 |0011: goto/16 0094 // +0083 │ │ -4301c6: 5489 2c5f |0013: iget-object v9, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -4301ca: 1a00 7b4c |0015: const-string v0, "Steam" // string@4c7b │ │ -4301ce: 6e40 39ba 3902 |0017: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -4301d4: 7010 57bd 0800 |001a: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showSteamActivity:()V // method@bd57 │ │ -4301da: 0f04 |001d: return v4 │ │ -4301dc: 5489 2c5f |001e: iget-object v9, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -4301e0: 1a00 514b |0020: const-string v0, "Settings" // string@4b51 │ │ -4301e4: 6e40 39ba 3902 |0022: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -4301ea: 7010 56bd 0800 |0025: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showSettingsActivity:()V // method@bd56 │ │ -4301f0: 0f04 |0028: return v4 │ │ -4301f2: 5489 2c5f |0029: iget-object v9, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -4301f6: 1a00 ea1a |002b: const-string v0, "Fire" // string@1aea │ │ -4301fa: 6e40 39ba 3902 |002d: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -430200: 7010 54bd 0800 |0030: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showFireActivity:()V // method@bd54 │ │ -430206: 0f04 |0033: return v4 │ │ -430208: 7120 25bd 8400 |0034: invoke-static {v4, v8}, Lorg/purple/smoke/Smoke;.exit:(ZLandroid/content/Context;)V // method@bd25 │ │ -43020e: 0f04 |0037: return v4 │ │ -430210: 5489 2c5f |0038: iget-object v9, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -430214: 1a00 0113 |003a: const-string v0, "Chat" // string@1301 │ │ -430218: 6e40 39ba 3902 |003c: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -43021e: 7010 53bd 0800 |003f: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showChatActivity:()V // method@bd53 │ │ -430224: 0f04 |0042: return v4 │ │ -430226: 7210 6e55 0900 |0043: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ -43022c: 0c00 |0046: move-result-object v0 │ │ -43022e: 7210 045c 0000 |0047: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -430234: 0c00 |004a: move-result-object v0 │ │ -430236: 1a05 7a03 |004b: const-string v5, "(" // string@037a │ │ -43023a: 6e20 c25c 5000 |004d: invoke-virtual {v0, v5}, Ljava/lang/String;.indexOf:(Ljava/lang/String;)I // method@5cc2 │ │ -430240: 0a05 |0050: move-result v5 │ │ -430242: 3a05 0f00 |0051: if-ltz v5, 0060 // +000f │ │ -430246: b045 |0053: add-int/2addr v5, v4 │ │ -430248: 6e20 cc5c 5000 |0054: invoke-virtual {v0, v5}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ -43024e: 0c04 |0057: move-result-object v4 │ │ -430250: 1a05 ec03 |0058: const-string v5, ")" // string@03ec │ │ -430254: 1a06 0000 |005a: const-string v6, "" // string@0000 │ │ -430258: 6e30 c85c 5406 |005c: invoke-virtual {v4, v5, v6}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -43025e: 0c00 |005f: move-result-object v0 │ │ -430260: 7110 f0bb 0000 |0060: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf0 │ │ -430266: 0c00 |0063: move-result-object v0 │ │ -430268: 7100 6fbd 0000 |0064: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -43026e: 0c04 |0067: move-result-object v4 │ │ -430270: 7110 d55c 0100 |0068: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -430276: 0c05 |006b: move-result-object v5 │ │ -430278: 1a06 a98a |006c: const-string v6, "member_chat_oid" // string@8aa9 │ │ -43027c: 6e30 8bbd 6405 |006e: invoke-virtual {v4, v6, v5}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd8b │ │ -430282: 7100 6fbd 0000 |0071: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -430288: 0c04 |0074: move-result-object v4 │ │ -43028a: 1a05 ab8a |0075: const-string v5, "member_chat_siphash_id" // string@8aab │ │ -43028e: 6e30 8bbd 5400 |0077: invoke-virtual {v4, v5, v0}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd8b │ │ -430294: 5484 2c5f |007a: iget-object v4, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -430298: 1a07 0c40 |007c: const-string v7, "MemberChat" // string@400c │ │ -43029c: 6e40 39ba 3472 |007e: invoke-virtual {v4, v3, v2, v7}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -4302a2: 5482 2c5f |0081: iget-object v2, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -4302a6: 6203 315f |0083: sget-object v3, Lorg/purple/smoke/Smokescreen;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f31 │ │ -4302aa: 7110 d55c 0100 |0085: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -4302b0: 0c01 |0088: move-result-object v1 │ │ -4302b2: 6e40 39ba 3216 |0089: invoke-virtual {v2, v3, v6, v1}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -4302b8: 5481 2c5f |008c: iget-object v1, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -4302bc: 6e40 39ba 3105 |008e: invoke-virtual {v1, v3, v5, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -4302c2: 7010 55bd 0800 |0091: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showMemberChatActivity:()V // method@bd55 │ │ -4302c8: 6f20 f83c 9800 |0094: invoke-super {v8, v9}, Landroid/support/v7/app/AppCompatActivity;.onOptionsItemSelected:(Landroid/view/MenuItem;)Z // method@3cf8 │ │ -4302ce: 0a09 |0097: move-result v9 │ │ -4302d0: 0f09 |0098: return v9 │ │ -4302d2: 0000 |0099: nop // spacer │ │ -4302d4: 0002 0500 0a00 087f 0e00 087f 0f00 ... |009a: sparse-switch-data (22 units) │ │ +43018c: |[43018c] org.purple.smoke.Smokescreen.onOptionsItemSelected:(Landroid/view/MenuItem;)Z │ │ +43019c: 7210 6a55 0900 |0000: invoke-interface {v9}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ +4301a2: 0a00 |0003: move-result v0 │ │ +4301a4: 7210 6c55 0900 |0004: invoke-interface {v9}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ +4301aa: 0a01 |0007: move-result v1 │ │ +4301ac: 1a02 ec7c |0008: const-string v2, "lastActivity" // string@7cec │ │ +4301b0: 1203 |000a: const/4 v3, #int 0 // #0 │ │ +4301b2: 1214 |000b: const/4 v4, #int 1 // #1 │ │ +4301b4: 3900 3700 |000c: if-nez v0, 0043 // +0037 │ │ +4301b8: 2c01 8c00 0000 |000e: sparse-switch v1, 0000009a // +0000008c │ │ +4301be: 2900 8300 |0011: goto/16 0094 // +0083 │ │ +4301c2: 5489 2c5f |0013: iget-object v9, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +4301c6: 1a00 7b4c |0015: const-string v0, "Steam" // string@4c7b │ │ +4301ca: 6e40 39ba 3902 |0017: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +4301d0: 7010 57bd 0800 |001a: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showSteamActivity:()V // method@bd57 │ │ +4301d6: 0f04 |001d: return v4 │ │ +4301d8: 5489 2c5f |001e: iget-object v9, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +4301dc: 1a00 514b |0020: const-string v0, "Settings" // string@4b51 │ │ +4301e0: 6e40 39ba 3902 |0022: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +4301e6: 7010 56bd 0800 |0025: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showSettingsActivity:()V // method@bd56 │ │ +4301ec: 0f04 |0028: return v4 │ │ +4301ee: 5489 2c5f |0029: iget-object v9, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +4301f2: 1a00 ea1a |002b: const-string v0, "Fire" // string@1aea │ │ +4301f6: 6e40 39ba 3902 |002d: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +4301fc: 7010 54bd 0800 |0030: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showFireActivity:()V // method@bd54 │ │ +430202: 0f04 |0033: return v4 │ │ +430204: 7120 25bd 8400 |0034: invoke-static {v4, v8}, Lorg/purple/smoke/Smoke;.exit:(ZLandroid/content/Context;)V // method@bd25 │ │ +43020a: 0f04 |0037: return v4 │ │ +43020c: 5489 2c5f |0038: iget-object v9, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +430210: 1a00 0113 |003a: const-string v0, "Chat" // string@1301 │ │ +430214: 6e40 39ba 3902 |003c: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +43021a: 7010 53bd 0800 |003f: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showChatActivity:()V // method@bd53 │ │ +430220: 0f04 |0042: return v4 │ │ +430222: 7210 6e55 0900 |0043: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ +430228: 0c00 |0046: move-result-object v0 │ │ +43022a: 7210 045c 0000 |0047: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +430230: 0c00 |004a: move-result-object v0 │ │ +430232: 1a05 7a03 |004b: const-string v5, "(" // string@037a │ │ +430236: 6e20 c25c 5000 |004d: invoke-virtual {v0, v5}, Ljava/lang/String;.indexOf:(Ljava/lang/String;)I // method@5cc2 │ │ +43023c: 0a05 |0050: move-result v5 │ │ +43023e: 3a05 0f00 |0051: if-ltz v5, 0060 // +000f │ │ +430242: b045 |0053: add-int/2addr v5, v4 │ │ +430244: 6e20 cc5c 5000 |0054: invoke-virtual {v0, v5}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ +43024a: 0c04 |0057: move-result-object v4 │ │ +43024c: 1a05 ec03 |0058: const-string v5, ")" // string@03ec │ │ +430250: 1a06 0000 |005a: const-string v6, "" // string@0000 │ │ +430254: 6e30 c85c 5406 |005c: invoke-virtual {v4, v5, v6}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +43025a: 0c00 |005f: move-result-object v0 │ │ +43025c: 7110 f0bb 0000 |0060: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf0 │ │ +430262: 0c00 |0063: move-result-object v0 │ │ +430264: 7100 6fbd 0000 |0064: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +43026a: 0c04 |0067: move-result-object v4 │ │ +43026c: 7110 d55c 0100 |0068: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +430272: 0c05 |006b: move-result-object v5 │ │ +430274: 1a06 a98a |006c: const-string v6, "member_chat_oid" // string@8aa9 │ │ +430278: 6e30 8bbd 6405 |006e: invoke-virtual {v4, v6, v5}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd8b │ │ +43027e: 7100 6fbd 0000 |0071: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +430284: 0c04 |0074: move-result-object v4 │ │ +430286: 1a05 ab8a |0075: const-string v5, "member_chat_siphash_id" // string@8aab │ │ +43028a: 6e30 8bbd 5400 |0077: invoke-virtual {v4, v5, v0}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd8b │ │ +430290: 5484 2c5f |007a: iget-object v4, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +430294: 1a07 0c40 |007c: const-string v7, "MemberChat" // string@400c │ │ +430298: 6e40 39ba 3472 |007e: invoke-virtual {v4, v3, v2, v7}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +43029e: 5482 2c5f |0081: iget-object v2, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +4302a2: 6203 315f |0083: sget-object v3, Lorg/purple/smoke/Smokescreen;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f31 │ │ +4302a6: 7110 d55c 0100 |0085: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +4302ac: 0c01 |0088: move-result-object v1 │ │ +4302ae: 6e40 39ba 3216 |0089: invoke-virtual {v2, v3, v6, v1}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +4302b4: 5481 2c5f |008c: iget-object v1, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +4302b8: 6e40 39ba 3105 |008e: invoke-virtual {v1, v3, v5, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +4302be: 7010 55bd 0800 |0091: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showMemberChatActivity:()V // method@bd55 │ │ +4302c4: 6f20 f83c 9800 |0094: invoke-super {v8, v9}, Landroid/support/v7/app/AppCompatActivity;.onOptionsItemSelected:(Landroid/view/MenuItem;)Z // method@3cf8 │ │ +4302ca: 0a09 |0097: move-result v9 │ │ +4302cc: 0f09 |0098: return v9 │ │ +4302ce: 0000 |0099: nop // spacer │ │ +4302d0: 0002 0500 0a00 087f 0e00 087f 0f00 ... |009a: sparse-switch-data (22 units) │ │ catches : 1 │ │ 0x004b - 0x0060 │ │ Ljava/lang/Exception; -> 0x0060 │ │ positions : │ │ 0x0000 line=239 │ │ 0x0004 line=240 │ │ 0x0013 line=261 │ │ @@ -1574554,77 +1574553,77 @@ │ │ type : '(Landroid/view/Menu;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 10 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 137 16-bit code units │ │ -430310: |[430310] org.purple.smoke.Smokescreen.onPrepareOptionsMenu:(Landroid/view/Menu;)Z │ │ -430320: 7210 5b55 0900 |0000: invoke-interface {v9}, Landroid/view/Menu;.clear:()V // method@555b │ │ -430326: 6e10 48bd 0800 |0003: invoke-virtual {v8}, Lorg/purple/smoke/Smokescreen;.getMenuInflater:()Landroid/view/MenuInflater; // method@bd48 │ │ -43032c: 0c00 |0006: move-result-object v0 │ │ -43032e: 1401 0500 0b7f |0007: const v1, #float 1.84763e+38 // #7f0b0005 │ │ -430334: 6e30 6255 1009 |000a: invoke-virtual {v0, v1, v9}, Landroid/view/MenuInflater;.inflate:(ILandroid/view/Menu;)V // method@5562 │ │ -43033a: 7100 6fbd 0000 |000d: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -430340: 0c00 |0010: move-result-object v0 │ │ -430342: 6e10 73bd 0000 |0011: invoke-virtual {v0}, Lorg/purple/smoke/State;.isLocked:()Z // method@bd73 │ │ -430348: 0a00 |0014: move-result v0 │ │ -43034a: 1401 1800 087f |0015: const v1, #float 1.80775e+38 // #7f080018 │ │ -430350: 1402 1600 087f |0018: const v2, #float 1.80775e+38 // #7f080016 │ │ -430356: 1403 0f00 087f |001b: const v3, #float 1.80775e+38 // #7f08000f │ │ -43035c: 1404 0a00 087f |001e: const v4, #float 1.80775e+38 // #7f08000a │ │ -430362: 1405 0200 087f |0021: const v5, #float 1.80775e+38 // #7f080002 │ │ -430368: 1216 |0024: const/4 v6, #int 1 // #1 │ │ -43036a: 3800 2700 |0025: if-eqz v0, 004c // +0027 │ │ -43036e: 7220 5c55 5900 |0027: invoke-interface {v9, v5}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -430374: 0c00 |002a: move-result-object v0 │ │ -430376: 1205 |002b: const/4 v5, #int 0 // #0 │ │ -430378: 7220 7a55 5000 |002c: invoke-interface {v0, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -43037e: 7220 5c55 4900 |002f: invoke-interface {v9, v4}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -430384: 0c00 |0032: move-result-object v0 │ │ -430386: 7220 7a55 5000 |0033: invoke-interface {v0, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -43038c: 7220 5c55 3900 |0036: invoke-interface {v9, v3}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -430392: 0c00 |0039: move-result-object v0 │ │ -430394: 7220 7a55 5000 |003a: invoke-interface {v0, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -43039a: 7220 5c55 2900 |003d: invoke-interface {v9, v2}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -4303a0: 0c00 |0040: move-result-object v0 │ │ -4303a2: 7220 7a55 5000 |0041: invoke-interface {v0, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -4303a8: 7220 5c55 1900 |0044: invoke-interface {v9, v1}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -4303ae: 0c09 |0047: move-result-object v9 │ │ -4303b0: 7220 7a55 5900 |0048: invoke-interface {v9, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -4303b6: 283d |004b: goto 0088 // +003d │ │ -4303b8: 7100 6fbd 0000 |004c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -4303be: 0c00 |004f: move-result-object v0 │ │ -4303c0: 6e10 72bd 0000 |0050: invoke-virtual {v0}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ -4303c6: 0a00 |0053: move-result v0 │ │ -4303c8: 5487 2c5f |0054: iget-object v7, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -4303cc: 6e10 dab9 0700 |0056: invoke-virtual {v7}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9da │ │ -4303d2: 0a07 |0059: move-result v7 │ │ -4303d4: 3907 0300 |005a: if-nez v7, 005d // +0003 │ │ -4303d8: 1210 |005c: const/4 v0, #int 1 // #1 │ │ -4303da: 7220 5c55 5900 |005d: invoke-interface {v9, v5}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -4303e0: 0c05 |0060: move-result-object v5 │ │ -4303e2: df07 0001 |0061: xor-int/lit8 v7, v0, #int 1 // #01 │ │ -4303e6: 7220 7a55 7500 |0063: invoke-interface {v5, v7}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -4303ec: 7220 5c55 4900 |0066: invoke-interface {v9, v4}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -4303f2: 0c04 |0069: move-result-object v4 │ │ -4303f4: 7220 7a55 0400 |006a: invoke-interface {v4, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -4303fa: 7220 5c55 3900 |006d: invoke-interface {v9, v3}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -430400: 0c03 |0070: move-result-object v3 │ │ -430402: 7220 7a55 0300 |0071: invoke-interface {v3, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -430408: 7220 5c55 2900 |0074: invoke-interface {v9, v2}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -43040e: 0c02 |0077: move-result-object v2 │ │ -430410: 7220 7a55 0200 |0078: invoke-interface {v2, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -430416: 7220 5c55 1900 |007b: invoke-interface {v9, v1}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -43041c: 0c01 |007e: move-result-object v1 │ │ -43041e: 7220 7a55 0100 |007f: invoke-interface {v1, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -430424: 1260 |0082: const/4 v0, #int 6 // #6 │ │ -430426: 1301 fa00 |0083: const/16 v1, #int 250 // #fa │ │ -43042a: 7130 debb 0901 |0085: invoke-static {v9, v0, v1}, Lorg/purple/smoke/Miscellaneous;.addMembersToMenu:(Landroid/view/Menu;II)Landroid/view/SubMenu; // method@bbde │ │ -430430: 0f06 |0088: return v6 │ │ +43030c: |[43030c] org.purple.smoke.Smokescreen.onPrepareOptionsMenu:(Landroid/view/Menu;)Z │ │ +43031c: 7210 5b55 0900 |0000: invoke-interface {v9}, Landroid/view/Menu;.clear:()V // method@555b │ │ +430322: 6e10 48bd 0800 |0003: invoke-virtual {v8}, Lorg/purple/smoke/Smokescreen;.getMenuInflater:()Landroid/view/MenuInflater; // method@bd48 │ │ +430328: 0c00 |0006: move-result-object v0 │ │ +43032a: 1401 0500 0b7f |0007: const v1, #float 1.84763e+38 // #7f0b0005 │ │ +430330: 6e30 6255 1009 |000a: invoke-virtual {v0, v1, v9}, Landroid/view/MenuInflater;.inflate:(ILandroid/view/Menu;)V // method@5562 │ │ +430336: 7100 6fbd 0000 |000d: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +43033c: 0c00 |0010: move-result-object v0 │ │ +43033e: 6e10 73bd 0000 |0011: invoke-virtual {v0}, Lorg/purple/smoke/State;.isLocked:()Z // method@bd73 │ │ +430344: 0a00 |0014: move-result v0 │ │ +430346: 1401 1800 087f |0015: const v1, #float 1.80775e+38 // #7f080018 │ │ +43034c: 1402 1600 087f |0018: const v2, #float 1.80775e+38 // #7f080016 │ │ +430352: 1403 0f00 087f |001b: const v3, #float 1.80775e+38 // #7f08000f │ │ +430358: 1404 0a00 087f |001e: const v4, #float 1.80775e+38 // #7f08000a │ │ +43035e: 1405 0200 087f |0021: const v5, #float 1.80775e+38 // #7f080002 │ │ +430364: 1216 |0024: const/4 v6, #int 1 // #1 │ │ +430366: 3800 2700 |0025: if-eqz v0, 004c // +0027 │ │ +43036a: 7220 5c55 5900 |0027: invoke-interface {v9, v5}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +430370: 0c00 |002a: move-result-object v0 │ │ +430372: 1205 |002b: const/4 v5, #int 0 // #0 │ │ +430374: 7220 7a55 5000 |002c: invoke-interface {v0, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +43037a: 7220 5c55 4900 |002f: invoke-interface {v9, v4}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +430380: 0c00 |0032: move-result-object v0 │ │ +430382: 7220 7a55 5000 |0033: invoke-interface {v0, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +430388: 7220 5c55 3900 |0036: invoke-interface {v9, v3}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +43038e: 0c00 |0039: move-result-object v0 │ │ +430390: 7220 7a55 5000 |003a: invoke-interface {v0, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +430396: 7220 5c55 2900 |003d: invoke-interface {v9, v2}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +43039c: 0c00 |0040: move-result-object v0 │ │ +43039e: 7220 7a55 5000 |0041: invoke-interface {v0, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +4303a4: 7220 5c55 1900 |0044: invoke-interface {v9, v1}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +4303aa: 0c09 |0047: move-result-object v9 │ │ +4303ac: 7220 7a55 5900 |0048: invoke-interface {v9, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +4303b2: 283d |004b: goto 0088 // +003d │ │ +4303b4: 7100 6fbd 0000 |004c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +4303ba: 0c00 |004f: move-result-object v0 │ │ +4303bc: 6e10 72bd 0000 |0050: invoke-virtual {v0}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ +4303c2: 0a00 |0053: move-result v0 │ │ +4303c4: 5487 2c5f |0054: iget-object v7, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +4303c8: 6e10 dab9 0700 |0056: invoke-virtual {v7}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9da │ │ +4303ce: 0a07 |0059: move-result v7 │ │ +4303d0: 3907 0300 |005a: if-nez v7, 005d // +0003 │ │ +4303d4: 1210 |005c: const/4 v0, #int 1 // #1 │ │ +4303d6: 7220 5c55 5900 |005d: invoke-interface {v9, v5}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +4303dc: 0c05 |0060: move-result-object v5 │ │ +4303de: df07 0001 |0061: xor-int/lit8 v7, v0, #int 1 // #01 │ │ +4303e2: 7220 7a55 7500 |0063: invoke-interface {v5, v7}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +4303e8: 7220 5c55 4900 |0066: invoke-interface {v9, v4}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +4303ee: 0c04 |0069: move-result-object v4 │ │ +4303f0: 7220 7a55 0400 |006a: invoke-interface {v4, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +4303f6: 7220 5c55 3900 |006d: invoke-interface {v9, v3}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +4303fc: 0c03 |0070: move-result-object v3 │ │ +4303fe: 7220 7a55 0300 |0071: invoke-interface {v3, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +430404: 7220 5c55 2900 |0074: invoke-interface {v9, v2}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +43040a: 0c02 |0077: move-result-object v2 │ │ +43040c: 7220 7a55 0200 |0078: invoke-interface {v2, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +430412: 7220 5c55 1900 |007b: invoke-interface {v9, v1}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +430418: 0c01 |007e: move-result-object v1 │ │ +43041a: 7220 7a55 0100 |007f: invoke-interface {v1, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +430420: 1260 |0082: const/4 v0, #int 6 // #6 │ │ +430422: 1301 fa00 |0083: const/16 v1, #int 250 // #fa │ │ +430426: 7130 debb 0901 |0085: invoke-static {v9, v0, v1}, Lorg/purple/smoke/Miscellaneous;.addMembersToMenu:(Landroid/view/Menu;II)Landroid/view/SubMenu; // method@bbde │ │ +43042c: 0f06 |0088: return v6 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=303 │ │ 0x0003 line=304 │ │ 0x000d line=306 │ │ 0x0027 line=310 │ │ 0x002f line=311 │ │ @@ -1574759,54 +1574758,54 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 7 16-bit code units │ │ -436b9c: |[436b9c] org.purple.smoke.Steam.:()V │ │ -436bac: 7100 8db9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ -436bb2: 0c00 |0003: move-result-object v0 │ │ -436bb4: 6900 695f |0004: sput-object v0, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ -436bb8: 0e00 |0006: return-void │ │ +436b98: |[436b98] org.purple.smoke.Steam.:()V │ │ +436ba8: 7100 8db9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b98d │ │ +436bae: 0c00 |0003: move-result-object v0 │ │ +436bb0: 6900 695f |0004: sput-object v0, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ +436bb4: 0e00 |0006: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=143 │ │ locals : │ │ │ │ #1 : (in Lorg/purple/smoke/Steam;) │ │ name : '' │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 38 16-bit code units │ │ -436bbc: |[436bbc] org.purple.smoke.Steam.:()V │ │ -436bcc: 7010 df3c 0200 |0000: invoke-direct {v2}, Landroid/support/v7/app/AppCompatActivity;.:()V // method@3cdf │ │ -436bd2: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -436bd4: 5b20 5c5f |0004: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_attachmentButton:Landroid/widget/Button; // field@5f5c │ │ -436bd8: 5b20 675f |0006: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_sendButton:Landroid/widget/Button; // field@5f67 │ │ -436bdc: 5b20 5d5f |0008: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436be0: 5b20 665f |000a: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ -436be4: 5b20 5b5f |000c: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -436be8: 5b20 685f |000e: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ -436bec: 5b20 615f |0010: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ -436bf0: 5b20 635f |0012: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ -436bf4: 5b20 645f |0014: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_receiver:Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // field@5f64 │ │ -436bf8: 5b20 625f |0016: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ -436bfc: 1a01 0000 |0018: const-string v1, "" // string@0000 │ │ -436c00: 5b21 5a5f |001a: iput-object v1, v2, Lorg/purple/smoke/Steam;.m_absoluteFileName:Ljava/lang/String; // field@5f5a │ │ -436c04: 5b20 5e5f |001c: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ -436c08: 5b20 5f5f |001e: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_downloads:Landroid/widget/TextView; // field@5f5f │ │ -436c0c: 5b20 605f |0020: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_information:Landroid/widget/TextView; // field@5f60 │ │ -436c10: 1200 |0022: const/4 v0, #int 0 // #0 │ │ -436c12: 5c20 655f |0023: iput-boolean v0, v2, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ -436c16: 0e00 |0025: return-void │ │ +436bb8: |[436bb8] org.purple.smoke.Steam.:()V │ │ +436bc8: 7010 df3c 0200 |0000: invoke-direct {v2}, Landroid/support/v7/app/AppCompatActivity;.:()V // method@3cdf │ │ +436bce: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +436bd0: 5b20 5c5f |0004: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_attachmentButton:Landroid/widget/Button; // field@5f5c │ │ +436bd4: 5b20 675f |0006: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_sendButton:Landroid/widget/Button; // field@5f67 │ │ +436bd8: 5b20 5d5f |0008: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436bdc: 5b20 665f |000a: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ +436be0: 5b20 5b5f |000c: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +436be4: 5b20 685f |000e: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ +436be8: 5b20 615f |0010: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ +436bec: 5b20 635f |0012: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ +436bf0: 5b20 645f |0014: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_receiver:Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // field@5f64 │ │ +436bf4: 5b20 625f |0016: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ +436bf8: 1a01 0000 |0018: const-string v1, "" // string@0000 │ │ +436bfc: 5b21 5a5f |001a: iput-object v1, v2, Lorg/purple/smoke/Steam;.m_absoluteFileName:Ljava/lang/String; // field@5f5a │ │ +436c00: 5b20 5e5f |001c: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ +436c04: 5b20 5f5f |001e: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_downloads:Landroid/widget/TextView; // field@5f5f │ │ +436c08: 5b20 605f |0020: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_information:Landroid/widget/TextView; // field@5f60 │ │ +436c0c: 1200 |0022: const/4 v0, #int 0 // #0 │ │ +436c0e: 5c20 655f |0023: iput-boolean v0, v2, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ +436c12: 0e00 |0025: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=57 │ │ 0x0004 line=127 │ │ 0x0006 line=128 │ │ 0x0008 line=129 │ │ 0x000a line=130 │ │ @@ -1574829,17 +1574828,17 @@ │ │ type : '(Lorg/purple/smoke/Steam;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -436c18: |[436c18] org.purple.smoke.Steam.access$000:(Lorg/purple/smoke/Steam;)V │ │ -436c28: 7010 bcbd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Steam;.networkStatusChanged:()V // method@bdbc │ │ -436c2e: 0e00 |0003: return-void │ │ +436c14: |[436c14] org.purple.smoke.Steam.access$000:(Lorg/purple/smoke/Steam;)V │ │ +436c24: 7010 bcbd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Steam;.networkStatusChanged:()V // method@bdbc │ │ +436c2a: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=57 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Steam; │ │ │ │ #3 : (in Lorg/purple/smoke/Steam;) │ │ @@ -1574847,17 +1574846,17 @@ │ │ type : '(Lorg/purple/smoke/Steam;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -436c30: |[436c30] org.purple.smoke.Steam.access$100:(Lorg/purple/smoke/Steam;)V │ │ -436c40: 7010 c8bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Steam;.populateParticipants:()V // method@bdc8 │ │ -436c46: 0e00 |0003: return-void │ │ +436c2c: |[436c2c] org.purple.smoke.Steam.access$100:(Lorg/purple/smoke/Steam;)V │ │ +436c3c: 7010 c8bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Steam;.populateParticipants:()V // method@bdc8 │ │ +436c42: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=57 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Steam; │ │ │ │ #4 : (in Lorg/purple/smoke/Steam;) │ │ @@ -1574865,34 +1574864,34 @@ │ │ type : '()Lorg/purple/smoke/Cryptography;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -436b54: |[436b54] org.purple.smoke.Steam.access$1000:()Lorg/purple/smoke/Cryptography; │ │ -436b64: 6200 695f |0000: sget-object v0, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ -436b68: 1100 |0002: return-object v0 │ │ +436b50: |[436b50] org.purple.smoke.Steam.access$1000:()Lorg/purple/smoke/Cryptography; │ │ +436b60: 6200 695f |0000: sget-object v0, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ +436b64: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=57 │ │ locals : │ │ │ │ #5 : (in Lorg/purple/smoke/Steam;) │ │ name : 'access$200' │ │ type : '(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -4367ac: |[4367ac] org.purple.smoke.Steam.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; │ │ -4367bc: 5400 5b5f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -4367c0: 1100 |0002: return-object v0 │ │ +4367a8: |[4367a8] org.purple.smoke.Steam.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; │ │ +4367b8: 5400 5b5f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +4367bc: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=57 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Steam; │ │ │ │ #6 : (in Lorg/purple/smoke/Steam;) │ │ @@ -1574900,17 +1574899,17 @@ │ │ type : '(Lorg/purple/smoke/Steam;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -436c48: |[436c48] org.purple.smoke.Steam.access$300:(Lorg/purple/smoke/Steam;)V │ │ -436c58: 7010 d4bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Steam;.showFileActivity:()V // method@bdd4 │ │ -436c5e: 0e00 |0003: return-void │ │ +436c44: |[436c44] org.purple.smoke.Steam.access$300:(Lorg/purple/smoke/Steam;)V │ │ +436c54: 7010 d4bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Steam;.showFileActivity:()V // method@bdd4 │ │ +436c5a: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=57 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Steam; │ │ │ │ #7 : (in Lorg/purple/smoke/Steam;) │ │ @@ -1574918,17 +1574917,17 @@ │ │ type : '(Lorg/purple/smoke/Steam;)Landroid/widget/Spinner;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -4367c4: |[4367c4] org.purple.smoke.Steam.access$400:(Lorg/purple/smoke/Steam;)Landroid/widget/Spinner; │ │ -4367d4: 5400 615f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ -4367d8: 1100 |0002: return-object v0 │ │ +4367c0: |[4367c0] org.purple.smoke.Steam.access$400:(Lorg/purple/smoke/Steam;)Landroid/widget/Spinner; │ │ +4367d0: 5400 615f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ +4367d4: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=57 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Steam; │ │ │ │ #8 : (in Lorg/purple/smoke/Steam;) │ │ @@ -1574936,17 +1574935,17 @@ │ │ type : '(Lorg/purple/smoke/Steam;)V' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -436c60: |[436c60] org.purple.smoke.Steam.access$500:(Lorg/purple/smoke/Steam;)V │ │ -436c70: 7010 cfbd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Steam;.saveSteam:()V // method@bdcf │ │ -436c76: 0e00 |0003: return-void │ │ +436c5c: |[436c5c] org.purple.smoke.Steam.access$500:(Lorg/purple/smoke/Steam;)V │ │ +436c6c: 7010 cfbd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Steam;.saveSteam:()V // method@bdcf │ │ +436c72: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=57 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 (null) Lorg/purple/smoke/Steam; │ │ │ │ #9 : (in Lorg/purple/smoke/Steam;) │ │ @@ -1574954,17 +1574953,17 @@ │ │ type : '(Lorg/purple/smoke/Steam;)Landroid/widget/TextView;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -4367dc: |[4367dc] org.purple.smoke.Steam.access$600:(Lorg/purple/smoke/Steam;)Landroid/widget/TextView; │ │ -4367ec: 5400 605f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_information:Landroid/widget/TextView; // field@5f60 │ │ -4367f0: 1100 |0002: return-object v0 │ │ +4367d8: |[4367d8] org.purple.smoke.Steam.access$600:(Lorg/purple/smoke/Steam;)Landroid/widget/TextView; │ │ +4367e8: 5400 605f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_information:Landroid/widget/TextView; // field@5f60 │ │ +4367ec: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=57 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Steam; │ │ │ │ #10 : (in Lorg/purple/smoke/Steam;) │ │ @@ -1574972,17 +1574971,17 @@ │ │ type : '(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -436794: |[436794] org.purple.smoke.Steam.access$700:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView; │ │ -4367a4: 5400 665f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ -4367a8: 1100 |0002: return-object v0 │ │ +436790: |[436790] org.purple.smoke.Steam.access$700:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView; │ │ +4367a0: 5400 665f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ +4367a4: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=57 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Steam; │ │ │ │ #11 : (in Lorg/purple/smoke/Steam;) │ │ @@ -1574990,17 +1574989,17 @@ │ │ type : '(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Steam$SteamLinearLayoutManager;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -436b84: |[436b84] org.purple.smoke.Steam.access$800:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Steam$SteamLinearLayoutManager; │ │ -436b94: 5400 625f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ -436b98: 1100 |0002: return-object v0 │ │ +436b80: |[436b80] org.purple.smoke.Steam.access$800:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Steam$SteamLinearLayoutManager; │ │ +436b90: 5400 625f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ +436b94: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=57 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Steam; │ │ │ │ #12 : (in Lorg/purple/smoke/Steam;) │ │ @@ -1575008,17 +1575007,17 @@ │ │ type : '(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Database;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -436b6c: |[436b6c] org.purple.smoke.Steam.access$900:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Database; │ │ -436b7c: 5400 5d5f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436b80: 1100 |0002: return-object v0 │ │ +436b68: |[436b68] org.purple.smoke.Steam.access$900:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Database; │ │ +436b78: 5400 5d5f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436b7c: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=57 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Steam; │ │ │ │ #13 : (in Lorg/purple/smoke/Steam;) │ │ @@ -1575026,21 +1575025,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 12 16-bit code units │ │ -436c78: |[436c78] org.purple.smoke.Steam.networkStatusChanged:()V │ │ -436c88: 6e10 b9bd 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bdb9 │ │ -436c8e: 0c00 |0003: move-result-object v0 │ │ -436c90: 7100 29bd 0000 |0004: invoke-static {}, Lorg/purple/smoke/Smoke;.networkStatusString:()Ljava/lang/String; // method@bd29 │ │ -436c96: 0c01 |0007: move-result-object v1 │ │ -436c98: 6e20 0a3c 1000 |0008: invoke-virtual {v0, v1}, Landroid/support/v7/app/ActionBar;.setSubtitle:(Ljava/lang/CharSequence;)V // method@3c0a │ │ -436c9e: 0e00 |000b: return-void │ │ +436c74: |[436c74] org.purple.smoke.Steam.networkStatusChanged:()V │ │ +436c84: 6e10 b9bd 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bdb9 │ │ +436c8a: 0c00 |0003: move-result-object v0 │ │ +436c8c: 7100 29bd 0000 |0004: invoke-static {}, Lorg/purple/smoke/Smoke;.networkStatusString:()Ljava/lang/String; // method@bd29 │ │ +436c92: 0c01 |0007: move-result-object v1 │ │ +436c94: 6e20 0a3c 1000 |0008: invoke-virtual {v0, v1}, Landroid/support/v7/app/ActionBar;.setSubtitle:(Ljava/lang/CharSequence;)V // method@3c0a │ │ +436c9a: 0e00 |000b: return-void │ │ catches : 1 │ │ 0x0000 - 0x000b │ │ Ljava/lang/Exception; -> 0x000b │ │ positions : │ │ 0x0000 line=166 │ │ locals : │ │ 0x0000 - 0x000c reg=2 this Lorg/purple/smoke/Steam; │ │ @@ -1575050,70 +1575049,70 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 7 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 118 16-bit code units │ │ -4371d4: |[4371d4] org.purple.smoke.Steam.populateParticipants:()V │ │ -4371e4: 5460 635f |0000: iget-object v0, v6, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ -4371e8: 3900 0300 |0002: if-nez v0, 0005 // +0003 │ │ -4371ec: 0e00 |0004: return-void │ │ -4371ee: 7100 6fbd 0000 |0005: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -4371f4: 0c00 |0008: move-result-object v0 │ │ -4371f6: 6e10 77bd 0000 |0009: invoke-virtual {v0}, Lorg/purple/smoke/State;.participants:()Ljava/util/ArrayList; // method@bd77 │ │ -4371fc: 0c00 |000c: move-result-object v0 │ │ -4371fe: 1a01 b542 |000d: const-string v1, "Other (Non-Smoke)" // string@42b5 │ │ -437202: 1402 0800 0901 |000f: const v2, #float 2.51629e-38 // #01090008 │ │ -437208: 3800 5500 |0012: if-eqz v0, 0067 // +0055 │ │ -43720c: 6e10 a65f 0000 |0014: invoke-virtual {v0}, Ljava/util/ArrayList;.isEmpty:()Z // method@5fa6 │ │ -437212: 0a03 |0017: move-result v3 │ │ -437214: 3803 0300 |0018: if-eqz v3, 001b // +0003 │ │ -437218: 284d |001a: goto 0067 // +004d │ │ -43721a: 5463 635f |001b: iget-object v3, v6, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ -43721e: 1204 |001d: const/4 v4, #int 0 // #0 │ │ -437220: 6e20 c05a 4300 |001e: invoke-virtual {v3, v4}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -437226: 2203 ab0b |0021: new-instance v3, Ljava/util/ArrayList; // type@0bab │ │ -43722a: 7010 995f 0300 |0023: invoke-direct {v3}, Ljava/util/ArrayList;.:()V // method@5f99 │ │ -437230: 6e20 9d5f 1300 |0026: invoke-virtual {v3, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9d │ │ -437236: 6e10 a75f 0000 |0029: invoke-virtual {v0}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa7 │ │ -43723c: 0c00 |002c: move-result-object v0 │ │ -43723e: 7210 1b60 0000 |002d: invoke-interface {v0}, Ljava/util/Iterator;.hasNext:()Z // method@601b │ │ -437244: 0a01 |0030: move-result v1 │ │ -437246: 3801 2b00 |0031: if-eqz v1, 005c // +002b │ │ -43724a: 7210 1c60 0000 |0033: invoke-interface {v0}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601c │ │ -437250: 0c01 |0036: move-result-object v1 │ │ -437252: 1f01 c01a |0037: check-cast v1, Lorg/purple/smoke/ParticipantElement; // type@1ac0 │ │ -437256: 3801 f4ff |0039: if-eqz v1, 002d // -000c │ │ -43725a: 2204 f10a |003b: new-instance v4, Ljava/lang/StringBuilder; // type@0af1 │ │ -43725e: 7010 ee5c 0400 |003d: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -437264: 5415 8055 |0040: iget-object v5, v1, Lorg/purple/smoke/ParticipantElement;.m_name:Ljava/lang/String; // field@5580 │ │ -437268: 6e20 f95c 5400 |0042: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43726e: 1a05 9800 |0045: const-string v5, " (" // string@0098 │ │ -437272: 6e20 f95c 5400 |0047: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -437278: 5411 8255 |004a: iget-object v1, v1, Lorg/purple/smoke/ParticipantElement;.m_sipHashId:Ljava/lang/String; // field@5582 │ │ -43727c: 6e20 f95c 1400 |004c: invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -437282: 1a01 ec03 |004f: const-string v1, ")" // string@03ec │ │ -437286: 6e20 f95c 1400 |0051: invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43728c: 6e10 035d 0400 |0054: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -437292: 0c01 |0057: move-result-object v1 │ │ -437294: 6e20 9d5f 1300 |0058: invoke-virtual {v3, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9d │ │ -43729a: 28d2 |005b: goto 002d // -002e │ │ -43729c: 2200 5b0a |005c: new-instance v0, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -4372a0: 7040 ca58 6032 |005e: invoke-direct {v0, v6, v2, v3}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;ILjava/util/List;)V // method@58ca │ │ -4372a6: 5461 635f |0061: iget-object v1, v6, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ -4372aa: 6e20 c05a 0100 |0063: invoke-virtual {v1, v0}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -4372b0: 0e00 |0066: return-void │ │ -4372b2: 2200 5b0a |0067: new-instance v0, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -4372b6: 2410 a81b 0100 |0069: filled-new-array {v1}, [Ljava/lang/String; // type@1ba8 │ │ -4372bc: 0c01 |006c: move-result-object v1 │ │ -4372be: 7040 cb58 6012 |006d: invoke-direct {v0, v6, v2, v1}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ -4372c4: 5461 635f |0070: iget-object v1, v6, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ -4372c8: 6e20 c05a 0100 |0072: invoke-virtual {v1, v0}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -4372ce: 0e00 |0075: return-void │ │ +4371d0: |[4371d0] org.purple.smoke.Steam.populateParticipants:()V │ │ +4371e0: 5460 635f |0000: iget-object v0, v6, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ +4371e4: 3900 0300 |0002: if-nez v0, 0005 // +0003 │ │ +4371e8: 0e00 |0004: return-void │ │ +4371ea: 7100 6fbd 0000 |0005: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +4371f0: 0c00 |0008: move-result-object v0 │ │ +4371f2: 6e10 77bd 0000 |0009: invoke-virtual {v0}, Lorg/purple/smoke/State;.participants:()Ljava/util/ArrayList; // method@bd77 │ │ +4371f8: 0c00 |000c: move-result-object v0 │ │ +4371fa: 1a01 b542 |000d: const-string v1, "Other (Non-Smoke)" // string@42b5 │ │ +4371fe: 1402 0800 0901 |000f: const v2, #float 2.51629e-38 // #01090008 │ │ +437204: 3800 5500 |0012: if-eqz v0, 0067 // +0055 │ │ +437208: 6e10 a65f 0000 |0014: invoke-virtual {v0}, Ljava/util/ArrayList;.isEmpty:()Z // method@5fa6 │ │ +43720e: 0a03 |0017: move-result v3 │ │ +437210: 3803 0300 |0018: if-eqz v3, 001b // +0003 │ │ +437214: 284d |001a: goto 0067 // +004d │ │ +437216: 5463 635f |001b: iget-object v3, v6, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ +43721a: 1204 |001d: const/4 v4, #int 0 // #0 │ │ +43721c: 6e20 c05a 4300 |001e: invoke-virtual {v3, v4}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +437222: 2203 ab0b |0021: new-instance v3, Ljava/util/ArrayList; // type@0bab │ │ +437226: 7010 995f 0300 |0023: invoke-direct {v3}, Ljava/util/ArrayList;.:()V // method@5f99 │ │ +43722c: 6e20 9d5f 1300 |0026: invoke-virtual {v3, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9d │ │ +437232: 6e10 a75f 0000 |0029: invoke-virtual {v0}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa7 │ │ +437238: 0c00 |002c: move-result-object v0 │ │ +43723a: 7210 1b60 0000 |002d: invoke-interface {v0}, Ljava/util/Iterator;.hasNext:()Z // method@601b │ │ +437240: 0a01 |0030: move-result v1 │ │ +437242: 3801 2b00 |0031: if-eqz v1, 005c // +002b │ │ +437246: 7210 1c60 0000 |0033: invoke-interface {v0}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601c │ │ +43724c: 0c01 |0036: move-result-object v1 │ │ +43724e: 1f01 c01a |0037: check-cast v1, Lorg/purple/smoke/ParticipantElement; // type@1ac0 │ │ +437252: 3801 f4ff |0039: if-eqz v1, 002d // -000c │ │ +437256: 2204 f10a |003b: new-instance v4, Ljava/lang/StringBuilder; // type@0af1 │ │ +43725a: 7010 ee5c 0400 |003d: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +437260: 5415 8055 |0040: iget-object v5, v1, Lorg/purple/smoke/ParticipantElement;.m_name:Ljava/lang/String; // field@5580 │ │ +437264: 6e20 f95c 5400 |0042: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43726a: 1a05 9800 |0045: const-string v5, " (" // string@0098 │ │ +43726e: 6e20 f95c 5400 |0047: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +437274: 5411 8255 |004a: iget-object v1, v1, Lorg/purple/smoke/ParticipantElement;.m_sipHashId:Ljava/lang/String; // field@5582 │ │ +437278: 6e20 f95c 1400 |004c: invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43727e: 1a01 ec03 |004f: const-string v1, ")" // string@03ec │ │ +437282: 6e20 f95c 1400 |0051: invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +437288: 6e10 035d 0400 |0054: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +43728e: 0c01 |0057: move-result-object v1 │ │ +437290: 6e20 9d5f 1300 |0058: invoke-virtual {v3, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9d │ │ +437296: 28d2 |005b: goto 002d // -002e │ │ +437298: 2200 5b0a |005c: new-instance v0, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +43729c: 7040 ca58 6032 |005e: invoke-direct {v0, v6, v2, v3}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;ILjava/util/List;)V // method@58ca │ │ +4372a2: 5461 635f |0061: iget-object v1, v6, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ +4372a6: 6e20 c05a 0100 |0063: invoke-virtual {v1, v0}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +4372ac: 0e00 |0066: return-void │ │ +4372ae: 2200 5b0a |0067: new-instance v0, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +4372b2: 2410 a81b 0100 |0069: filled-new-array {v1}, [Ljava/lang/String; // type@1ba8 │ │ +4372b8: 0c01 |006c: move-result-object v1 │ │ +4372ba: 7040 cb58 6012 |006d: invoke-direct {v0, v6, v2, v1}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ +4372c0: 5461 635f |0070: iget-object v1, v6, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ +4372c4: 6e20 c05a 0100 |0072: invoke-virtual {v1, v0}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +4372ca: 0e00 |0075: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=175 │ │ 0x0005 line=178 │ │ 0x0009 line=179 │ │ 0x0014 line=181 │ │ 0x001b line=192 │ │ @@ -1575134,30 +1575133,30 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 35 16-bit code units │ │ -4372d0: |[4372d0] org.purple.smoke.Steam.prepareListeners:()V │ │ -4372e0: 5420 5c5f |0000: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_attachmentButton:Landroid/widget/Button; // field@5f5c │ │ -4372e4: 3800 0a00 |0002: if-eqz v0, 000c // +000a │ │ -4372e8: 2201 161b |0004: new-instance v1, Lorg/purple/smoke/Steam$1; // type@1b16 │ │ -4372ec: 7020 90bd 2100 |0006: invoke-direct {v1, v2}, Lorg/purple/smoke/Steam$1;.:(Lorg/purple/smoke/Steam;)V // method@bd90 │ │ -4372f2: 6e20 e258 1000 |0009: invoke-virtual {v0, v1}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -4372f8: 5420 635f |000c: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ -4372fc: 2201 171b |000e: new-instance v1, Lorg/purple/smoke/Steam$2; // type@1b17 │ │ -437300: 7020 92bd 2100 |0010: invoke-direct {v1, v2}, Lorg/purple/smoke/Steam$2;.:(Lorg/purple/smoke/Steam;)V // method@bd92 │ │ -437306: 6e20 c95a 1000 |0013: invoke-virtual {v0, v1}, Landroid/widget/Spinner;.setOnItemSelectedListener:(Landroid/widget/AdapterView$OnItemSelectedListener;)V // method@5ac9 │ │ -43730c: 5420 675f |0016: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_sendButton:Landroid/widget/Button; // field@5f67 │ │ -437310: 3800 0a00 |0018: if-eqz v0, 0022 // +000a │ │ -437314: 2201 181b |001a: new-instance v1, Lorg/purple/smoke/Steam$3; // type@1b18 │ │ -437318: 7020 95bd 2100 |001c: invoke-direct {v1, v2}, Lorg/purple/smoke/Steam$3;.:(Lorg/purple/smoke/Steam;)V // method@bd95 │ │ -43731e: 6e20 e258 1000 |001f: invoke-virtual {v0, v1}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -437324: 0e00 |0022: return-void │ │ +4372cc: |[4372cc] org.purple.smoke.Steam.prepareListeners:()V │ │ +4372dc: 5420 5c5f |0000: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_attachmentButton:Landroid/widget/Button; // field@5f5c │ │ +4372e0: 3800 0a00 |0002: if-eqz v0, 000c // +000a │ │ +4372e4: 2201 161b |0004: new-instance v1, Lorg/purple/smoke/Steam$1; // type@1b16 │ │ +4372e8: 7020 90bd 2100 |0006: invoke-direct {v1, v2}, Lorg/purple/smoke/Steam$1;.:(Lorg/purple/smoke/Steam;)V // method@bd90 │ │ +4372ee: 6e20 e258 1000 |0009: invoke-virtual {v0, v1}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +4372f4: 5420 635f |000c: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ +4372f8: 2201 171b |000e: new-instance v1, Lorg/purple/smoke/Steam$2; // type@1b17 │ │ +4372fc: 7020 92bd 2100 |0010: invoke-direct {v1, v2}, Lorg/purple/smoke/Steam$2;.:(Lorg/purple/smoke/Steam;)V // method@bd92 │ │ +437302: 6e20 c95a 1000 |0013: invoke-virtual {v0, v1}, Landroid/widget/Spinner;.setOnItemSelectedListener:(Landroid/widget/AdapterView$OnItemSelectedListener;)V // method@5ac9 │ │ +437308: 5420 675f |0016: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_sendButton:Landroid/widget/Button; // field@5f67 │ │ +43730c: 3800 0a00 |0018: if-eqz v0, 0022 // +000a │ │ +437310: 2201 181b |001a: new-instance v1, Lorg/purple/smoke/Steam$3; // type@1b18 │ │ +437314: 7020 95bd 2100 |001c: invoke-direct {v1, v2}, Lorg/purple/smoke/Steam$3;.:(Lorg/purple/smoke/Steam;)V // method@bd95 │ │ +43731a: 6e20 e258 1000 |001f: invoke-virtual {v0, v1}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +437320: 0e00 |0022: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=211 │ │ 0x0004 line=212 │ │ 0x000c line=223 │ │ 0x0013 line=224 │ │ 0x0016 line=242 │ │ @@ -1575170,27 +1575169,27 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 25 16-bit code units │ │ -437328: |[437328] org.purple.smoke.Steam.prepareSchedulers:()V │ │ -437338: 5480 685f |0000: iget-object v0, v8, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ -43733c: 3900 1600 |0002: if-nez v0, 0018 // +0016 │ │ -437340: 7100 c660 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c6 │ │ -437346: 0c01 |0007: move-result-object v1 │ │ -437348: 5b81 685f |0008: iput-object v1, v8, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ -43734c: 2202 1a1b |000a: new-instance v2, Lorg/purple/smoke/Steam$4; // type@1b1a │ │ -437350: 7020 99bd 8200 |000c: invoke-direct {v2, v8}, Lorg/purple/smoke/Steam$4;.:(Lorg/purple/smoke/Steam;)V // method@bd99 │ │ -437356: 1603 0000 |000f: const-wide/16 v3, #int 0 // #0 │ │ -43735a: 1605 dc05 |0011: const-wide/16 v5, #int 1500 // #5dc │ │ -43735e: 6207 ef2c |0013: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -437362: 7807 ce60 0100 |0015: invoke-interface/range {v1, v2, v3, v4, v5, v6, v7}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ -437368: 0e00 |0018: return-void │ │ +437324: |[437324] org.purple.smoke.Steam.prepareSchedulers:()V │ │ +437334: 5480 685f |0000: iget-object v0, v8, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ +437338: 3900 1600 |0002: if-nez v0, 0018 // +0016 │ │ +43733c: 7100 c660 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c6 │ │ +437342: 0c01 |0007: move-result-object v1 │ │ +437344: 5b81 685f |0008: iput-object v1, v8, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ +437348: 2202 1a1b |000a: new-instance v2, Lorg/purple/smoke/Steam$4; // type@1b1a │ │ +43734c: 7020 99bd 8200 |000c: invoke-direct {v2, v8}, Lorg/purple/smoke/Steam$4;.:(Lorg/purple/smoke/Steam;)V // method@bd99 │ │ +437352: 1603 0000 |000f: const-wide/16 v3, #int 0 // #0 │ │ +437356: 1605 dc05 |0011: const-wide/16 v5, #int 1500 // #5dc │ │ +43735a: 6207 ef2c |0013: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +43735e: 7807 ce60 0100 |0015: invoke-interface/range {v1, v2, v3, v4, v5, v6, v7}, Ljava/util/concurrent/ScheduledExecutorService;.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; // method@60ce │ │ +437364: 0e00 |0018: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=257 │ │ 0x0004 line=259 │ │ 0x000a line=260 │ │ locals : │ │ 0x0000 - 0x0019 reg=8 this Lorg/purple/smoke/Steam; │ │ @@ -1575200,32 +1575199,32 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 38 16-bit code units │ │ -43736c: |[43736c] org.purple.smoke.Steam.prepareWidgets:()V │ │ -43737c: 5420 5b5f |0000: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -437380: 3900 2300 |0002: if-nez v0, 0025 // +0023 │ │ -437384: 5420 665f |0004: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ -437388: 3800 1f00 |0006: if-eqz v0, 0025 // +001f │ │ -43738c: 2200 221b |0008: new-instance v0, Lorg/purple/smoke/SteamAdapter; // type@1b22 │ │ -437390: 7020 dfbd 2000 |000a: invoke-direct {v0, v2}, Lorg/purple/smoke/SteamAdapter;.:(Lorg/purple/smoke/Steam;)V // method@bddf │ │ -437396: 5b20 5b5f |000d: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -43739a: 2201 1b1b |000f: new-instance v1, Lorg/purple/smoke/Steam$5; // type@1b1b │ │ -43739e: 7020 9bbd 2100 |0011: invoke-direct {v1, v2}, Lorg/purple/smoke/Steam$5;.:(Lorg/purple/smoke/Steam;)V // method@bd9b │ │ -4373a4: 6e20 494c 1000 |0014: invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$Adapter;.registerAdapterDataObserver:(Landroid/support/v7/widget/RecyclerView$AdapterDataObserver;)V // method@4c49 │ │ -4373aa: 5420 665f |0017: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ -4373ae: 5421 5b5f |0019: iget-object v1, v2, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -4373b2: 6e20 044f 1000 |001b: invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView;.setAdapter:(Landroid/support/v7/widget/RecyclerView$Adapter;)V // method@4f04 │ │ -4373b8: 5420 665f |001e: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ -4373bc: 5421 625f |0020: iget-object v1, v2, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ -4373c0: 6e20 114f 1000 |0022: invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView;.setLayoutManager:(Landroid/support/v7/widget/RecyclerView$LayoutManager;)V // method@4f11 │ │ -4373c6: 0e00 |0025: return-void │ │ +437368: |[437368] org.purple.smoke.Steam.prepareWidgets:()V │ │ +437378: 5420 5b5f |0000: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +43737c: 3900 2300 |0002: if-nez v0, 0025 // +0023 │ │ +437380: 5420 665f |0004: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ +437384: 3800 1f00 |0006: if-eqz v0, 0025 // +001f │ │ +437388: 2200 221b |0008: new-instance v0, Lorg/purple/smoke/SteamAdapter; // type@1b22 │ │ +43738c: 7020 dfbd 2000 |000a: invoke-direct {v0, v2}, Lorg/purple/smoke/SteamAdapter;.:(Lorg/purple/smoke/Steam;)V // method@bddf │ │ +437392: 5b20 5b5f |000d: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +437396: 2201 1b1b |000f: new-instance v1, Lorg/purple/smoke/Steam$5; // type@1b1b │ │ +43739a: 7020 9bbd 2100 |0011: invoke-direct {v1, v2}, Lorg/purple/smoke/Steam$5;.:(Lorg/purple/smoke/Steam;)V // method@bd9b │ │ +4373a0: 6e20 494c 1000 |0014: invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$Adapter;.registerAdapterDataObserver:(Landroid/support/v7/widget/RecyclerView$AdapterDataObserver;)V // method@4c49 │ │ +4373a6: 5420 665f |0017: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ +4373aa: 5421 5b5f |0019: iget-object v1, v2, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +4373ae: 6e20 044f 1000 |001b: invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView;.setAdapter:(Landroid/support/v7/widget/RecyclerView$Adapter;)V // method@4f04 │ │ +4373b4: 5420 665f |001e: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ +4373b8: 5421 625f |0020: iget-object v1, v2, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ +4373bc: 6e20 114f 1000 |0022: invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView;.setLayoutManager:(Landroid/support/v7/widget/RecyclerView$LayoutManager;)V // method@4f11 │ │ +4373c2: 0e00 |0025: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=296 │ │ 0x0008 line=298 │ │ 0x000f line=299 │ │ 0x0014 line=300 │ │ 0x0017 line=318 │ │ @@ -1575238,33 +1575237,33 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 33 16-bit code units │ │ -4373c8: |[4373c8] org.purple.smoke.Steam.releaseResources:()V │ │ -4373d8: 5450 685f |0000: iget-object v0, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ -4373dc: 3800 1e00 |0002: if-eqz v0, 0020 // +001e │ │ -4373e0: 7210 cf60 0000 |0004: invoke-interface {v0}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60cf │ │ -4373e6: 1200 |0007: const/4 v0, #int 0 // #0 │ │ -4373e8: 5451 685f |0008: iget-object v1, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ -4373ec: 1602 0500 |000a: const-wide/16 v2, #int 5 // #5 │ │ -4373f0: 6204 f22c |000c: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ -4373f4: 7240 cc60 2143 |000e: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60cc │ │ -4373fa: 0a01 |0011: move-result v1 │ │ -4373fc: 3901 0c00 |0012: if-nez v1, 001e // +000c │ │ -437400: 5451 685f |0014: iget-object v1, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ -437404: 7210 d060 0100 |0016: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d0 │ │ -43740a: 2805 |0019: goto 001e // +0005 │ │ -43740c: 0d01 |001a: move-exception v1 │ │ -43740e: 5b50 685f |001b: iput-object v0, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ -437412: 2701 |001d: throw v1 │ │ -437414: 5b50 685f |001e: iput-object v0, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ -437418: 0e00 |0020: return-void │ │ +4373c4: |[4373c4] org.purple.smoke.Steam.releaseResources:()V │ │ +4373d4: 5450 685f |0000: iget-object v0, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ +4373d8: 3800 1e00 |0002: if-eqz v0, 0020 // +001e │ │ +4373dc: 7210 cf60 0000 |0004: invoke-interface {v0}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60cf │ │ +4373e2: 1200 |0007: const/4 v0, #int 0 // #0 │ │ +4373e4: 5451 685f |0008: iget-object v1, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ +4373e8: 1602 0500 |000a: const-wide/16 v2, #int 5 // #5 │ │ +4373ec: 6204 f22c |000c: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ +4373f0: 7240 cc60 2143 |000e: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60cc │ │ +4373f6: 0a01 |0011: move-result v1 │ │ +4373f8: 3901 0c00 |0012: if-nez v1, 001e // +000c │ │ +4373fc: 5451 685f |0014: iget-object v1, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ +437400: 7210 d060 0100 |0016: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d0 │ │ +437406: 2805 |0019: goto 001e // +0005 │ │ +437408: 0d01 |001a: move-exception v1 │ │ +43740a: 5b50 685f |001b: iput-object v0, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ +43740e: 2701 |001d: throw v1 │ │ +437410: 5b50 685f |001e: iput-object v0, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ +437414: 0e00 |0020: return-void │ │ catches : 2 │ │ 0x0004 - 0x0007 │ │ Ljava/lang/Exception; -> 0x0007 │ │ 0x0008 - 0x0019 │ │ Ljava/lang/Exception; -> 0x001e │ │ -> 0x001a │ │ positions : │ │ @@ -1575284,51 +1575283,51 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 73 16-bit code units │ │ -437438: |[437438] org.purple.smoke.Steam.saveSteam:()V │ │ -437448: 5440 5e5f |0000: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ -43744c: 6e10 1c5b 0000 |0002: invoke-virtual {v0}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -437452: 0c00 |0005: move-result-object v0 │ │ -437454: 7210 045c 0000 |0006: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -43745a: 0c00 |0009: move-result-object v0 │ │ -43745c: 6e10 d35c 0000 |000a: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -437462: 0c01 |000d: move-result-object v1 │ │ -437464: 6e10 c35c 0100 |000e: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -43746a: 0a01 |0011: move-result v1 │ │ -43746c: 3801 0300 |0012: if-eqz v1, 0015 // +0003 │ │ -437470: 0e00 |0014: return-void │ │ -437472: 2201 281b |0015: new-instance v1, Lorg/purple/smoke/SteamElement; // type@1b28 │ │ -437476: 5442 5a5f |0017: iget-object v2, v4, Lorg/purple/smoke/Steam;.m_absoluteFileName:Ljava/lang/String; // field@5f5a │ │ -43747a: 5443 615f |0019: iget-object v3, v4, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ -43747e: 6e10 ba5a 0300 |001b: invoke-virtual {v3}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -437484: 0c03 |001e: move-result-object v3 │ │ -437486: 6e10 965c 0300 |001f: invoke-virtual {v3}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -43748c: 0c03 |0022: move-result-object v3 │ │ -43748e: 7040 02be 0132 |0023: invoke-direct {v1, v0, v2, v3}, Lorg/purple/smoke/SteamElement;.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V // method@be02 │ │ -437494: 5440 635f |0026: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ -437498: 6e10 ba5a 0000 |0028: invoke-virtual {v0}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -43749e: 0c00 |002b: move-result-object v0 │ │ -4374a0: 6e10 965c 0000 |002c: invoke-virtual {v0}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -4374a6: 0c00 |002f: move-result-object v0 │ │ -4374a8: 5b10 955f |0030: iput-object v0, v1, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ -4374ac: 1a00 0000 |0032: const-string v0, "" // string@0000 │ │ -4374b0: 5b40 5a5f |0034: iput-object v0, v4, Lorg/purple/smoke/Steam;.m_absoluteFileName:Ljava/lang/String; // field@5f5a │ │ -4374b4: 5442 5d5f |0036: iget-object v2, v4, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -4374b8: 6203 695f |0038: sget-object v3, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ -4374bc: 6e30 3bba 3201 |003a: invoke-virtual {v2, v3, v1}, Lorg/purple/smoke/Database;.writeSteam:(Lorg/purple/smoke/Cryptography;Lorg/purple/smoke/SteamElement;)V // method@ba3b │ │ -4374c2: 5441 5e5f |003d: iget-object v1, v4, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ -4374c6: 6e20 495b 0100 |003f: invoke-virtual {v1, v0}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -4374cc: 5440 635f |0042: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ -4374d0: 1201 |0044: const/4 v1, #int 0 // #0 │ │ -4374d2: 6e20 cc5a 1000 |0045: invoke-virtual {v0, v1}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -4374d8: 0e00 |0048: return-void │ │ +437434: |[437434] org.purple.smoke.Steam.saveSteam:()V │ │ +437444: 5440 5e5f |0000: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ +437448: 6e10 1c5b 0000 |0002: invoke-virtual {v0}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +43744e: 0c00 |0005: move-result-object v0 │ │ +437450: 7210 045c 0000 |0006: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +437456: 0c00 |0009: move-result-object v0 │ │ +437458: 6e10 d35c 0000 |000a: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +43745e: 0c01 |000d: move-result-object v1 │ │ +437460: 6e10 c35c 0100 |000e: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +437466: 0a01 |0011: move-result v1 │ │ +437468: 3801 0300 |0012: if-eqz v1, 0015 // +0003 │ │ +43746c: 0e00 |0014: return-void │ │ +43746e: 2201 281b |0015: new-instance v1, Lorg/purple/smoke/SteamElement; // type@1b28 │ │ +437472: 5442 5a5f |0017: iget-object v2, v4, Lorg/purple/smoke/Steam;.m_absoluteFileName:Ljava/lang/String; // field@5f5a │ │ +437476: 5443 615f |0019: iget-object v3, v4, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ +43747a: 6e10 ba5a 0300 |001b: invoke-virtual {v3}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +437480: 0c03 |001e: move-result-object v3 │ │ +437482: 6e10 965c 0300 |001f: invoke-virtual {v3}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +437488: 0c03 |0022: move-result-object v3 │ │ +43748a: 7040 02be 0132 |0023: invoke-direct {v1, v0, v2, v3}, Lorg/purple/smoke/SteamElement;.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V // method@be02 │ │ +437490: 5440 635f |0026: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ +437494: 6e10 ba5a 0000 |0028: invoke-virtual {v0}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +43749a: 0c00 |002b: move-result-object v0 │ │ +43749c: 6e10 965c 0000 |002c: invoke-virtual {v0}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +4374a2: 0c00 |002f: move-result-object v0 │ │ +4374a4: 5b10 955f |0030: iput-object v0, v1, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ +4374a8: 1a00 0000 |0032: const-string v0, "" // string@0000 │ │ +4374ac: 5b40 5a5f |0034: iput-object v0, v4, Lorg/purple/smoke/Steam;.m_absoluteFileName:Ljava/lang/String; // field@5f5a │ │ +4374b0: 5442 5d5f |0036: iget-object v2, v4, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +4374b4: 6203 695f |0038: sget-object v3, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ +4374b8: 6e30 3bba 3201 |003a: invoke-virtual {v2, v3, v1}, Lorg/purple/smoke/Database;.writeSteam:(Lorg/purple/smoke/Cryptography;Lorg/purple/smoke/SteamElement;)V // method@ba3b │ │ +4374be: 5441 5e5f |003d: iget-object v1, v4, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ +4374c2: 6e20 495b 0100 |003f: invoke-virtual {v1, v0}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +4374c8: 5440 635f |0042: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ +4374cc: 1201 |0044: const/4 v1, #int 0 // #0 │ │ +4374ce: 6e20 cc5a 1000 |0045: invoke-virtual {v0, v1}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +4374d4: 0e00 |0048: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=353 │ │ 0x000a line=355 │ │ 0x0015 line=358 │ │ 0x001b line=361 │ │ 0x0026 line=363 │ │ @@ -1575345,21 +1575344,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -4374dc: |[4374dc] org.purple.smoke.Steam.showChatActivity:()V │ │ -4374ec: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -4374f0: 1c01 5a1a |0002: const-class v1, Lorg/purple/smoke/Chat; // type@1a5a │ │ -4374f4: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -4374fa: 6e20 d9bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdd9 │ │ -437500: 6e10 b5bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdb5 │ │ -437506: 0e00 |000d: return-void │ │ +4374d8: |[4374d8] org.purple.smoke.Steam.showChatActivity:()V │ │ +4374e8: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +4374ec: 1c01 5a1a |0002: const-class v1, Lorg/purple/smoke/Chat; // type@1a5a │ │ +4374f0: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +4374f6: 6e20 d9bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdd9 │ │ +4374fc: 6e10 b5bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdb5 │ │ +437502: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=373 │ │ 0x0007 line=375 │ │ 0x000a line=376 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Steam; │ │ @@ -1575369,23 +1575368,23 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 17 16-bit code units │ │ -43752c: |[43752c] org.purple.smoke.Steam.showFileActivity:()V │ │ -43753c: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -437540: 1a01 7e59 |0002: const-string v1, "android.intent.action.OPEN_DOCUMENT" // string@597e │ │ -437544: 7020 a001 1000 |0004: invoke-direct {v0, v1}, Landroid/content/Intent;.:(Ljava/lang/String;)V // method@01a0 │ │ -43754a: 1a01 2604 |0007: const-string v1, "*/*" // string@0426 │ │ -43754e: 6e20 ce01 1000 |0009: invoke-virtual {v0, v1}, Landroid/content/Intent;.setType:(Ljava/lang/String;)Landroid/content/Intent; // method@01ce │ │ -437554: 1201 |000c: const/4 v1, #int 0 // #0 │ │ -437556: 6e30 dabd 0201 |000d: invoke-virtual {v2, v0, v1}, Lorg/purple/smoke/Steam;.startActivityForResult:(Landroid/content/Intent;I)V // method@bdda │ │ -43755c: 0e00 |0010: return-void │ │ +437528: |[437528] org.purple.smoke.Steam.showFileActivity:()V │ │ +437538: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +43753c: 1a01 7e59 |0002: const-string v1, "android.intent.action.OPEN_DOCUMENT" // string@597e │ │ +437540: 7020 a001 1000 |0004: invoke-direct {v0, v1}, Landroid/content/Intent;.:(Ljava/lang/String;)V // method@01a0 │ │ +437546: 1a01 2604 |0007: const-string v1, "*/*" // string@0426 │ │ +43754a: 6e20 ce01 1000 |0009: invoke-virtual {v0, v1}, Landroid/content/Intent;.setType:(Ljava/lang/String;)Landroid/content/Intent; // method@01ce │ │ +437550: 1201 |000c: const/4 v1, #int 0 // #0 │ │ +437552: 6e30 dabd 0201 |000d: invoke-virtual {v2, v0, v1}, Lorg/purple/smoke/Steam;.startActivityForResult:(Landroid/content/Intent;I)V // method@bdda │ │ +437558: 0e00 |0010: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=381 │ │ 0x0009 line=383 │ │ 0x000d line=384 │ │ locals : │ │ 0x0000 - 0x0011 reg=2 this Lorg/purple/smoke/Steam; │ │ @@ -1575395,21 +1575394,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -437560: |[437560] org.purple.smoke.Steam.showFireActivity:()V │ │ -437570: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -437574: 1c01 751a |0002: const-class v1, Lorg/purple/smoke/Fire; // type@1a75 │ │ -437578: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -43757e: 6e20 d9bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdd9 │ │ -437584: 6e10 b5bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdb5 │ │ -43758a: 0e00 |000d: return-void │ │ +43755c: |[43755c] org.purple.smoke.Steam.showFireActivity:()V │ │ +43756c: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +437570: 1c01 751a |0002: const-class v1, Lorg/purple/smoke/Fire; // type@1a75 │ │ +437574: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +43757a: 6e20 d9bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdd9 │ │ +437580: 6e10 b5bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdb5 │ │ +437586: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=389 │ │ 0x0007 line=391 │ │ 0x000a line=392 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Steam; │ │ @@ -1575419,21 +1575418,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -43758c: |[43758c] org.purple.smoke.Steam.showMemberChatActivity:()V │ │ -43759c: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -4375a0: 1c01 a61a |0002: const-class v1, Lorg/purple/smoke/MemberChat; // type@1aa6 │ │ -4375a4: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -4375aa: 6e20 d9bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdd9 │ │ -4375b0: 6e10 b5bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdb5 │ │ -4375b6: 0e00 |000d: return-void │ │ +437588: |[437588] org.purple.smoke.Steam.showMemberChatActivity:()V │ │ +437598: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +43759c: 1c01 a61a |0002: const-class v1, Lorg/purple/smoke/MemberChat; // type@1aa6 │ │ +4375a0: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +4375a6: 6e20 d9bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdd9 │ │ +4375ac: 6e10 b5bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdb5 │ │ +4375b2: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=397 │ │ 0x0007 line=399 │ │ 0x000a line=400 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Steam; │ │ @@ -1575443,21 +1575442,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -4375b8: |[4375b8] org.purple.smoke.Steam.showSettingsActivity:()V │ │ -4375c8: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -4375cc: 1c01 0a1b |0002: const-class v1, Lorg/purple/smoke/Settings; // type@1b0a │ │ -4375d0: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -4375d6: 6e20 d9bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdd9 │ │ -4375dc: 6e10 b5bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdb5 │ │ -4375e2: 0e00 |000d: return-void │ │ +4375b4: |[4375b4] org.purple.smoke.Steam.showSettingsActivity:()V │ │ +4375c4: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +4375c8: 1c01 0a1b |0002: const-class v1, Lorg/purple/smoke/Settings; // type@1b0a │ │ +4375cc: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +4375d2: 6e20 d9bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdd9 │ │ +4375d8: 6e10 b5bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdb5 │ │ +4375de: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=405 │ │ 0x0007 line=407 │ │ 0x000a line=408 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Steam; │ │ @@ -1575467,21 +1575466,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -4375e4: |[4375e4] org.purple.smoke.Steam.showSmokescreenActivity:()V │ │ -4375f4: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -4375f8: 1c01 131b |0002: const-class v1, Lorg/purple/smoke/Smokescreen; // type@1b13 │ │ -4375fc: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -437602: 6e20 d9bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdd9 │ │ -437608: 6e10 b5bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdb5 │ │ -43760e: 0e00 |000d: return-void │ │ +4375e0: |[4375e0] org.purple.smoke.Steam.showSmokescreenActivity:()V │ │ +4375f0: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +4375f4: 1c01 131b |0002: const-class v1, Lorg/purple/smoke/Smokescreen; // type@1b13 │ │ +4375f8: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +4375fe: 6e20 d9bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdd9 │ │ +437604: 6e10 b5bd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdb5 │ │ +43760a: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=413 │ │ 0x0007 line=415 │ │ 0x000a line=416 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Steam; │ │ @@ -1575492,101 +1575491,101 @@ │ │ type : '(IILandroid/content/Intent;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 12 │ │ ins : 4 │ │ outs : 6 │ │ insns size : 175 16-bit code units │ │ -436cb0: |[436cb0] org.purple.smoke.Steam.onActivityResult:(IILandroid/content/Intent;)V │ │ -436cc0: 1a00 9904 |0000: const-string v0, "." // string@0499 │ │ -436cc4: 6f40 ec3c 98ba |0002: invoke-super {v8, v9, v10, v11}, Landroid/support/v7/app/AppCompatActivity;.onActivityResult:(IILandroid/content/Intent;)V // method@3cec │ │ -436cca: 380b a900 |0005: if-eqz v11, 00ae // +00a9 │ │ -436cce: 3909 a700 |0007: if-nez v9, 00ae // +00a7 │ │ -436cd2: 12f9 |0009: const/4 v9, #int -1 // #ff │ │ -436cd4: 339a a400 |000a: if-ne v10, v9, 00ae // +00a4 │ │ -436cd8: 1209 |000c: const/4 v9, #int 0 // #0 │ │ -436cda: 6e10 b7bd 0800 |000d: invoke-virtual {v8}, Lorg/purple/smoke/Steam;.getContentResolver:()Landroid/content/ContentResolver; // method@bdb7 │ │ -436ce0: 0c0a |0010: move-result-object v10 │ │ -436ce2: 6e10 ac01 0b00 |0011: invoke-virtual {v11}, Landroid/content/Intent;.getData:()Landroid/net/Uri; // method@01ac │ │ -436ce8: 0c01 |0014: move-result-object v1 │ │ -436cea: 6e20 5701 1a00 |0015: invoke-virtual {v10, v1}, Landroid/content/ContentResolver;.getType:(Landroid/net/Uri;)Ljava/lang/String; // method@0157 │ │ -436cf0: 0c0a |0018: move-result-object v10 │ │ -436cf2: 1301 2f00 |0019: const/16 v1, #int 47 // #2f │ │ -436cf6: 6e20 c45c 1a00 |001b: invoke-virtual {v10, v1}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ -436cfc: 0a02 |001e: move-result v2 │ │ -436cfe: 3d02 0c00 |001f: if-lez v2, 002b // +000c │ │ -436d02: 6e20 c45c 1a00 |0021: invoke-virtual {v10, v1}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ -436d08: 0a01 |0024: move-result v1 │ │ -436d0a: d801 0101 |0025: add-int/lit8 v1, v1, #int 1 // #01 │ │ -436d0e: 6e20 cc5c 1a00 |0027: invoke-virtual {v10, v1}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ -436d14: 0c0a |002a: move-result-object v10 │ │ -436d16: 2201 f10a |002b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -436d1a: 7010 ee5c 0100 |002d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -436d20: 6e10 ac01 0b00 |0030: invoke-virtual {v11}, Landroid/content/Intent;.getData:()Landroid/net/Uri; // method@01ac │ │ -436d26: 0c02 |0033: move-result-object v2 │ │ -436d28: 6e10 ad04 0200 |0034: invoke-virtual {v2}, Landroid/net/Uri;.toString:()Ljava/lang/String; // method@04ad │ │ -436d2e: 0c02 |0037: move-result-object v2 │ │ -436d30: 6e20 f95c 2100 |0038: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -436d36: 6e20 f95c 0100 |003b: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -436d3c: 6e20 f95c a100 |003e: invoke-virtual {v1, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -436d42: 6e10 035d 0100 |0041: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -436d48: 0c01 |0044: move-result-object v1 │ │ -436d4a: 5b81 5a5f |0045: iput-object v1, v8, Lorg/purple/smoke/Steam;.m_absoluteFileName:Ljava/lang/String; // field@5f5a │ │ -436d4e: 6e10 b7bd 0800 |0047: invoke-virtual {v8}, Lorg/purple/smoke/Steam;.getContentResolver:()Landroid/content/ContentResolver; // method@bdb7 │ │ -436d54: 0c02 |004a: move-result-object v2 │ │ -436d56: 6e10 ac01 0b00 |004b: invoke-virtual {v11}, Landroid/content/Intent;.getData:()Landroid/net/Uri; // method@01ac │ │ -436d5c: 0c03 |004e: move-result-object v3 │ │ -436d5e: 1204 |004f: const/4 v4, #int 0 // #0 │ │ -436d60: 1205 |0050: const/4 v5, #int 0 // #0 │ │ -436d62: 1206 |0051: const/4 v6, #int 0 // #0 │ │ -436d64: 1207 |0052: const/4 v7, #int 0 // #0 │ │ -436d66: 7406 5a01 0200 |0053: invoke-virtual/range {v2, v3, v4, v5, v6, v7}, Landroid/content/ContentResolver;.query:(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor; // method@015a │ │ -436d6c: 0c09 |0056: move-result-object v9 │ │ -436d6e: 3809 3200 |0057: if-eqz v9, 0089 // +0032 │ │ -436d72: 7210 6402 0900 |0059: invoke-interface {v9}, Landroid/database/Cursor;.moveToFirst:()Z // method@0264 │ │ -436d78: 0a0b |005c: move-result v11 │ │ -436d7a: 380b 2c00 |005d: if-eqz v11, 0089 // +002c │ │ -436d7e: 1a0b eb55 |005f: const-string v11, "_display_name" // string@55eb │ │ -436d82: 7220 5802 b900 |0061: invoke-interface {v9, v11}, Landroid/database/Cursor;.getColumnIndex:(Ljava/lang/String;)I // method@0258 │ │ -436d88: 0a0b |0064: move-result v11 │ │ -436d8a: 7220 6002 b900 |0065: invoke-interface {v9, v11}, Landroid/database/Cursor;.getString:(I)Ljava/lang/String; // method@0260 │ │ -436d90: 0c0b |0068: move-result-object v11 │ │ -436d92: 6e10 c35c 0b00 |0069: invoke-virtual {v11}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -436d98: 0a01 |006c: move-result v1 │ │ -436d9a: 3801 1700 |006d: if-eqz v1, 0084 // +0017 │ │ -436d9e: 548b 5e5f |006f: iget-object v11, v8, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ -436da2: 2201 f10a |0071: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -436da6: 7010 ee5c 0100 |0073: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -436dac: 6e20 f95c 0100 |0076: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -436db2: 6e20 f95c a100 |0079: invoke-virtual {v1, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -436db8: 6e10 035d 0100 |007c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -436dbe: 0c01 |007f: move-result-object v1 │ │ -436dc0: 6e20 495b 1b00 |0080: invoke-virtual {v11, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -436dc6: 2806 |0083: goto 0089 // +0006 │ │ -436dc8: 5481 5e5f |0084: iget-object v1, v8, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ -436dcc: 6e20 495b b100 |0086: invoke-virtual {v1, v11}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -436dd2: 3809 2500 |0089: if-eqz v9, 00ae // +0025 │ │ -436dd6: 7210 5602 0900 |008b: invoke-interface {v9}, Landroid/database/Cursor;.close:()V // method@0256 │ │ -436ddc: 2820 |008e: goto 00ae // +0020 │ │ -436dde: 0d0a |008f: move-exception v10 │ │ -436de0: 2818 |0090: goto 00a8 // +0018 │ │ -436de2: 548b 5e5f |0091: iget-object v11, v8, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ -436de6: 2201 f10a |0093: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -436dea: 7010 ee5c 0100 |0095: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -436df0: 6e20 f95c 0100 |0098: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -436df6: 6e20 f95c a100 |009b: invoke-virtual {v1, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -436dfc: 6e10 035d 0100 |009e: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -436e02: 0c0a |00a1: move-result-object v10 │ │ -436e04: 6e20 495b ab00 |00a2: invoke-virtual {v11, v10}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -436e0a: 3809 0900 |00a5: if-eqz v9, 00ae // +0009 │ │ -436e0e: 28e4 |00a7: goto 008b // -001c │ │ -436e10: 3809 0500 |00a8: if-eqz v9, 00ad // +0005 │ │ -436e14: 7210 5602 0900 |00aa: invoke-interface {v9}, Landroid/database/Cursor;.close:()V // method@0256 │ │ -436e1a: 270a |00ad: throw v10 │ │ -436e1c: 0e00 |00ae: return-void │ │ +436cac: |[436cac] org.purple.smoke.Steam.onActivityResult:(IILandroid/content/Intent;)V │ │ +436cbc: 1a00 9904 |0000: const-string v0, "." // string@0499 │ │ +436cc0: 6f40 ec3c 98ba |0002: invoke-super {v8, v9, v10, v11}, Landroid/support/v7/app/AppCompatActivity;.onActivityResult:(IILandroid/content/Intent;)V // method@3cec │ │ +436cc6: 380b a900 |0005: if-eqz v11, 00ae // +00a9 │ │ +436cca: 3909 a700 |0007: if-nez v9, 00ae // +00a7 │ │ +436cce: 12f9 |0009: const/4 v9, #int -1 // #ff │ │ +436cd0: 339a a400 |000a: if-ne v10, v9, 00ae // +00a4 │ │ +436cd4: 1209 |000c: const/4 v9, #int 0 // #0 │ │ +436cd6: 6e10 b7bd 0800 |000d: invoke-virtual {v8}, Lorg/purple/smoke/Steam;.getContentResolver:()Landroid/content/ContentResolver; // method@bdb7 │ │ +436cdc: 0c0a |0010: move-result-object v10 │ │ +436cde: 6e10 ac01 0b00 |0011: invoke-virtual {v11}, Landroid/content/Intent;.getData:()Landroid/net/Uri; // method@01ac │ │ +436ce4: 0c01 |0014: move-result-object v1 │ │ +436ce6: 6e20 5701 1a00 |0015: invoke-virtual {v10, v1}, Landroid/content/ContentResolver;.getType:(Landroid/net/Uri;)Ljava/lang/String; // method@0157 │ │ +436cec: 0c0a |0018: move-result-object v10 │ │ +436cee: 1301 2f00 |0019: const/16 v1, #int 47 // #2f │ │ +436cf2: 6e20 c45c 1a00 |001b: invoke-virtual {v10, v1}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ +436cf8: 0a02 |001e: move-result v2 │ │ +436cfa: 3d02 0c00 |001f: if-lez v2, 002b // +000c │ │ +436cfe: 6e20 c45c 1a00 |0021: invoke-virtual {v10, v1}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ +436d04: 0a01 |0024: move-result v1 │ │ +436d06: d801 0101 |0025: add-int/lit8 v1, v1, #int 1 // #01 │ │ +436d0a: 6e20 cc5c 1a00 |0027: invoke-virtual {v10, v1}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ +436d10: 0c0a |002a: move-result-object v10 │ │ +436d12: 2201 f10a |002b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +436d16: 7010 ee5c 0100 |002d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +436d1c: 6e10 ac01 0b00 |0030: invoke-virtual {v11}, Landroid/content/Intent;.getData:()Landroid/net/Uri; // method@01ac │ │ +436d22: 0c02 |0033: move-result-object v2 │ │ +436d24: 6e10 ad04 0200 |0034: invoke-virtual {v2}, Landroid/net/Uri;.toString:()Ljava/lang/String; // method@04ad │ │ +436d2a: 0c02 |0037: move-result-object v2 │ │ +436d2c: 6e20 f95c 2100 |0038: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +436d32: 6e20 f95c 0100 |003b: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +436d38: 6e20 f95c a100 |003e: invoke-virtual {v1, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +436d3e: 6e10 035d 0100 |0041: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +436d44: 0c01 |0044: move-result-object v1 │ │ +436d46: 5b81 5a5f |0045: iput-object v1, v8, Lorg/purple/smoke/Steam;.m_absoluteFileName:Ljava/lang/String; // field@5f5a │ │ +436d4a: 6e10 b7bd 0800 |0047: invoke-virtual {v8}, Lorg/purple/smoke/Steam;.getContentResolver:()Landroid/content/ContentResolver; // method@bdb7 │ │ +436d50: 0c02 |004a: move-result-object v2 │ │ +436d52: 6e10 ac01 0b00 |004b: invoke-virtual {v11}, Landroid/content/Intent;.getData:()Landroid/net/Uri; // method@01ac │ │ +436d58: 0c03 |004e: move-result-object v3 │ │ +436d5a: 1204 |004f: const/4 v4, #int 0 // #0 │ │ +436d5c: 1205 |0050: const/4 v5, #int 0 // #0 │ │ +436d5e: 1206 |0051: const/4 v6, #int 0 // #0 │ │ +436d60: 1207 |0052: const/4 v7, #int 0 // #0 │ │ +436d62: 7406 5a01 0200 |0053: invoke-virtual/range {v2, v3, v4, v5, v6, v7}, Landroid/content/ContentResolver;.query:(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor; // method@015a │ │ +436d68: 0c09 |0056: move-result-object v9 │ │ +436d6a: 3809 3200 |0057: if-eqz v9, 0089 // +0032 │ │ +436d6e: 7210 6402 0900 |0059: invoke-interface {v9}, Landroid/database/Cursor;.moveToFirst:()Z // method@0264 │ │ +436d74: 0a0b |005c: move-result v11 │ │ +436d76: 380b 2c00 |005d: if-eqz v11, 0089 // +002c │ │ +436d7a: 1a0b eb55 |005f: const-string v11, "_display_name" // string@55eb │ │ +436d7e: 7220 5802 b900 |0061: invoke-interface {v9, v11}, Landroid/database/Cursor;.getColumnIndex:(Ljava/lang/String;)I // method@0258 │ │ +436d84: 0a0b |0064: move-result v11 │ │ +436d86: 7220 6002 b900 |0065: invoke-interface {v9, v11}, Landroid/database/Cursor;.getString:(I)Ljava/lang/String; // method@0260 │ │ +436d8c: 0c0b |0068: move-result-object v11 │ │ +436d8e: 6e10 c35c 0b00 |0069: invoke-virtual {v11}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +436d94: 0a01 |006c: move-result v1 │ │ +436d96: 3801 1700 |006d: if-eqz v1, 0084 // +0017 │ │ +436d9a: 548b 5e5f |006f: iget-object v11, v8, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ +436d9e: 2201 f10a |0071: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +436da2: 7010 ee5c 0100 |0073: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +436da8: 6e20 f95c 0100 |0076: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +436dae: 6e20 f95c a100 |0079: invoke-virtual {v1, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +436db4: 6e10 035d 0100 |007c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +436dba: 0c01 |007f: move-result-object v1 │ │ +436dbc: 6e20 495b 1b00 |0080: invoke-virtual {v11, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +436dc2: 2806 |0083: goto 0089 // +0006 │ │ +436dc4: 5481 5e5f |0084: iget-object v1, v8, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ +436dc8: 6e20 495b b100 |0086: invoke-virtual {v1, v11}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +436dce: 3809 2500 |0089: if-eqz v9, 00ae // +0025 │ │ +436dd2: 7210 5602 0900 |008b: invoke-interface {v9}, Landroid/database/Cursor;.close:()V // method@0256 │ │ +436dd8: 2820 |008e: goto 00ae // +0020 │ │ +436dda: 0d0a |008f: move-exception v10 │ │ +436ddc: 2818 |0090: goto 00a8 // +0018 │ │ +436dde: 548b 5e5f |0091: iget-object v11, v8, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ +436de2: 2201 f10a |0093: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +436de6: 7010 ee5c 0100 |0095: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +436dec: 6e20 f95c 0100 |0098: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +436df2: 6e20 f95c a100 |009b: invoke-virtual {v1, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +436df8: 6e10 035d 0100 |009e: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +436dfe: 0c0a |00a1: move-result-object v10 │ │ +436e00: 6e20 495b ab00 |00a2: invoke-virtual {v11, v10}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +436e06: 3809 0900 |00a5: if-eqz v9, 00ae // +0009 │ │ +436e0a: 28e4 |00a7: goto 008b // -001c │ │ +436e0c: 3809 0500 |00a8: if-eqz v9, 00ad // +0005 │ │ +436e10: 7210 5602 0900 |00aa: invoke-interface {v9}, Landroid/database/Cursor;.close:()V // method@0256 │ │ +436e16: 270a |00ad: throw v10 │ │ +436e18: 0e00 |00ae: return-void │ │ catches : 5 │ │ 0x000d - 0x0047 │ │ Ljava/lang/Exception; -> 0x00ae │ │ 0x0047 - 0x0089 │ │ Ljava/lang/Exception; -> 0x0091 │ │ -> 0x008f │ │ 0x008b - 0x008e │ │ @@ -1575624,24 +1575623,24 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 20 16-bit code units │ │ -436e58: |[436e58] org.purple.smoke.Steam.onBackPressed:()V │ │ -436e68: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -436e6c: 7010 9d01 0000 |0002: invoke-direct {v0}, Landroid/content/Intent;.:()V // method@019d │ │ -436e72: 1a01 0147 |0005: const-string v1, "Result" // string@4701 │ │ -436e76: 1a02 9f17 |0007: const-string v2, "Done" // string@179f │ │ -436e7a: 6e30 c201 1002 |0009: invoke-virtual {v0, v1, v2}, Landroid/content/Intent;.putExtra:(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent; // method@01c2 │ │ -436e80: 12f1 |000c: const/4 v1, #int -1 // #ff │ │ -436e82: 6e30 d1bd 1300 |000d: invoke-virtual {v3, v1, v0}, Lorg/purple/smoke/Steam;.setResult:(ILandroid/content/Intent;)V // method@bdd1 │ │ -436e88: 6f10 ee3c 0300 |0010: invoke-super {v3}, Landroid/support/v7/app/AppCompatActivity;.onBackPressed:()V // method@3cee │ │ -436e8e: 0e00 |0013: return-void │ │ +436e54: |[436e54] org.purple.smoke.Steam.onBackPressed:()V │ │ +436e64: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +436e68: 7010 9d01 0000 |0002: invoke-direct {v0}, Landroid/content/Intent;.:()V // method@019d │ │ +436e6e: 1a01 0147 |0005: const-string v1, "Result" // string@4701 │ │ +436e72: 1a02 9f17 |0007: const-string v2, "Done" // string@179f │ │ +436e76: 6e30 c201 1002 |0009: invoke-virtual {v0, v1, v2}, Landroid/content/Intent;.putExtra:(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent; // method@01c2 │ │ +436e7c: 12f1 |000c: const/4 v1, #int -1 // #ff │ │ +436e7e: 6e30 d1bd 1300 |000d: invoke-virtual {v3, v1, v0}, Lorg/purple/smoke/Steam;.setResult:(ILandroid/content/Intent;)V // method@bdd1 │ │ +436e84: 6f10 ee3c 0300 |0010: invoke-super {v3}, Landroid/support/v7/app/AppCompatActivity;.onBackPressed:()V // method@3cee │ │ +436e8a: 0e00 |0013: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=817 │ │ 0x0009 line=819 │ │ 0x000d line=820 │ │ 0x0010 line=821 │ │ locals : │ │ @@ -1575652,91 +1575651,91 @@ │ │ type : '(Landroid/view/MenuItem;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 12 │ │ ins : 2 │ │ outs : 7 │ │ insns size : 176 16-bit code units │ │ -4367f4: |[4367f4] org.purple.smoke.Steam.onContextItemSelected:(Landroid/view/MenuItem;)Z │ │ -436804: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -436806: 390b 0300 |0001: if-nez v11, 0004 // +0003 │ │ -43680a: 0f00 |0003: return v0 │ │ -43680c: 7210 6a55 0b00 |0004: invoke-interface {v11}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ -436812: 0a01 |0007: move-result v1 │ │ -436814: 7210 6c55 0b00 |0008: invoke-interface {v11}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ -43681a: 0a06 |000b: move-result v6 │ │ -43681c: 220b 1c1b |000c: new-instance v11, Lorg/purple/smoke/Steam$6; // type@1b1c │ │ -436820: 7040 9ebd ab61 |000e: invoke-direct {v11, v10, v1, v6}, Lorg/purple/smoke/Steam$6;.:(Lorg/purple/smoke/Steam;II)V // method@bd9e │ │ -436826: 1219 |0011: const/4 v9, #int 1 // #1 │ │ -436828: 2b01 8800 0000 |0012: packed-switch v1, 0000009a // +00000088 │ │ -43682e: 2900 8400 |0015: goto/16 0099 // +0084 │ │ -436832: 54ab 5d5f |0017: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436836: 6e30 f6b9 0b06 |0019: invoke-virtual {v11, v0, v6}, Lorg/purple/smoke/Database;.lockSteam:(ZI)Z // method@b9f6 │ │ -43683c: 54ab 5b5f |001c: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -436840: 6e10 364c 0b00 |001e: invoke-virtual {v11}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -436846: 2900 7800 |0021: goto/16 0099 // +0078 │ │ -43684a: 54a0 5d5f |0023: iget-object v0, v10, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -43684e: 6201 695f |0025: sget-object v1, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ -436852: 12f2 |0027: const/4 v2, #int -1 // #ff │ │ -436854: b196 |0028: sub-int/2addr v6, v9 │ │ -436856: 6e40 1cba 1062 |0029: invoke-virtual {v0, v1, v2, v6}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba1c │ │ -43685c: 0c00 |002c: move-result-object v0 │ │ -43685e: 3800 0900 |002d: if-eqz v0, 0036 // +0009 │ │ -436862: 5400 955f |002f: iget-object v0, v0, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ -436866: 7110 fbbb 0000 |0031: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.sipHashIdFromDestination:(Ljava/lang/String;)Ljava/lang/String; // method@bbfb │ │ -43686c: 0c00 |0034: move-result-object v0 │ │ -43686e: 2803 |0035: goto 0038 // +0003 │ │ -436870: 1a00 0000 |0036: const-string v0, "" // string@0000 │ │ -436874: 7100 6fbd 0000 |0038: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -43687a: 0c01 |003b: move-result-object v1 │ │ -43687c: 6e20 78bd 0100 |003c: invoke-virtual {v1, v0}, Lorg/purple/smoke/State;.participantsNames:(Ljava/lang/String;)Ljava/util/ArrayList; // method@bd78 │ │ -436882: 0c00 |003f: move-result-object v0 │ │ -436884: 1a01 e044 |0040: const-string v1, "Please select the desired destination participant(s)." // string@44e0 │ │ -436888: 1a02 874c |0042: const-string v2, "Steamroll Participant Selection" // string@4c87 │ │ -43688c: 7152 f8bb a01b |0044: invoke-static {v0, v10, v11, v1, v2}, Lorg/purple/smoke/Miscellaneous;.showSwitchDialog:(Ljava/util/ArrayList;Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;Ljava/lang/String;)V // method@bbf8 │ │ -436892: 7100 6fbd 0000 |0047: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -436898: 0c0b |004a: move-result-object v11 │ │ -43689a: 6e10 67bd 0b00 |004b: invoke-virtual {v11}, Lorg/purple/smoke/State;.clearSelectedSwitches:()V // method@bd67 │ │ -4368a0: 284b |004e: goto 0099 // +004b │ │ -4368a2: 54a2 5d5f |004f: iget-object v2, v10, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -4368a6: 6203 695f |0051: sget-object v3, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ -4368aa: 1607 0000 |0053: const-wide/16 v7, #int 0 // #0 │ │ -4368ae: 1a04 4998 |0055: const-string v4, "rewind" // string@9849 │ │ -4368b2: 1a05 cc04 |0057: const-string v5, "0.00 B / s" // string@04cc │ │ -4368b6: 7407 42ba 0200 |0059: invoke-virtual/range {v2, v3, v4, v5, v6, v7, v8}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ -4368bc: 54ab 5b5f |005c: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -4368c0: 6e10 364c 0b00 |005e: invoke-virtual {v11}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -4368c6: 2838 |0061: goto 0099 // +0038 │ │ -4368c8: 54ab 5d5f |0062: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -4368cc: 6e10 22ba 0b00 |0064: invoke-virtual {v11}, Lorg/purple/smoke/Database;.rewindAndResumeAllSteams:()V // method@ba22 │ │ -4368d2: 54ab 5b5f |0067: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -4368d6: 6e10 364c 0b00 |0069: invoke-virtual {v11}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -4368dc: 282d |006c: goto 0099 // +002d │ │ -4368de: 54ab 5d5f |006d: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -4368e2: 6e10 21ba 0b00 |006f: invoke-virtual {v11}, Lorg/purple/smoke/Database;.rewindAllSteams:()V // method@ba21 │ │ -4368e8: 54ab 5b5f |0072: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -4368ec: 6e10 364c 0b00 |0074: invoke-virtual {v11}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -4368f2: 2822 |0077: goto 0099 // +0022 │ │ -4368f4: 54ab 5d5f |0078: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -4368f8: 6e10 20ba 0b00 |007a: invoke-virtual {v11}, Lorg/purple/smoke/Database;.resumeAllSteams:()V // method@ba20 │ │ -4368fe: 54ab 5b5f |007d: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -436902: 6e10 364c 0b00 |007f: invoke-virtual {v11}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -436908: 2817 |0082: goto 0099 // +0017 │ │ -43690a: 54ab 5d5f |0083: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -43690e: 6e10 07ba 0b00 |0085: invoke-virtual {v11}, Lorg/purple/smoke/Database;.pauseAllSteams:()V // method@ba07 │ │ -436914: 54ab 5b5f |0088: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -436918: 6e10 364c 0b00 |008a: invoke-virtual {v11}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -43691e: 280c |008d: goto 0099 // +000c │ │ -436920: 1a00 7c0e |008e: const-string v0, "Are you sure that you wish to delete the selected Steam?" // string@0e7c │ │ -436924: 7130 f7bb ba00 |0090: invoke-static {v10, v11, v0}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbf7 │ │ -43692a: 2806 |0093: goto 0099 // +0006 │ │ -43692c: 1a00 750e |0094: const-string v0, "Are you sure that you wish to delete all of the Steams?" // string@0e75 │ │ -436930: 7130 f7bb ba00 |0096: invoke-static {v10, v11, v0}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbf7 │ │ -436936: 0f09 |0099: return v9 │ │ -436938: 0001 0900 0000 0000 8200 0000 7c00 ... |009a: packed-switch-data (22 units) │ │ +4367f0: |[4367f0] org.purple.smoke.Steam.onContextItemSelected:(Landroid/view/MenuItem;)Z │ │ +436800: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +436802: 390b 0300 |0001: if-nez v11, 0004 // +0003 │ │ +436806: 0f00 |0003: return v0 │ │ +436808: 7210 6a55 0b00 |0004: invoke-interface {v11}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ +43680e: 0a01 |0007: move-result v1 │ │ +436810: 7210 6c55 0b00 |0008: invoke-interface {v11}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ +436816: 0a06 |000b: move-result v6 │ │ +436818: 220b 1c1b |000c: new-instance v11, Lorg/purple/smoke/Steam$6; // type@1b1c │ │ +43681c: 7040 9ebd ab61 |000e: invoke-direct {v11, v10, v1, v6}, Lorg/purple/smoke/Steam$6;.:(Lorg/purple/smoke/Steam;II)V // method@bd9e │ │ +436822: 1219 |0011: const/4 v9, #int 1 // #1 │ │ +436824: 2b01 8800 0000 |0012: packed-switch v1, 0000009a // +00000088 │ │ +43682a: 2900 8400 |0015: goto/16 0099 // +0084 │ │ +43682e: 54ab 5d5f |0017: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436832: 6e30 f6b9 0b06 |0019: invoke-virtual {v11, v0, v6}, Lorg/purple/smoke/Database;.lockSteam:(ZI)Z // method@b9f6 │ │ +436838: 54ab 5b5f |001c: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +43683c: 6e10 364c 0b00 |001e: invoke-virtual {v11}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +436842: 2900 7800 |0021: goto/16 0099 // +0078 │ │ +436846: 54a0 5d5f |0023: iget-object v0, v10, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +43684a: 6201 695f |0025: sget-object v1, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ +43684e: 12f2 |0027: const/4 v2, #int -1 // #ff │ │ +436850: b196 |0028: sub-int/2addr v6, v9 │ │ +436852: 6e40 1cba 1062 |0029: invoke-virtual {v0, v1, v2, v6}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba1c │ │ +436858: 0c00 |002c: move-result-object v0 │ │ +43685a: 3800 0900 |002d: if-eqz v0, 0036 // +0009 │ │ +43685e: 5400 955f |002f: iget-object v0, v0, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f95 │ │ +436862: 7110 fbbb 0000 |0031: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.sipHashIdFromDestination:(Ljava/lang/String;)Ljava/lang/String; // method@bbfb │ │ +436868: 0c00 |0034: move-result-object v0 │ │ +43686a: 2803 |0035: goto 0038 // +0003 │ │ +43686c: 1a00 0000 |0036: const-string v0, "" // string@0000 │ │ +436870: 7100 6fbd 0000 |0038: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +436876: 0c01 |003b: move-result-object v1 │ │ +436878: 6e20 78bd 0100 |003c: invoke-virtual {v1, v0}, Lorg/purple/smoke/State;.participantsNames:(Ljava/lang/String;)Ljava/util/ArrayList; // method@bd78 │ │ +43687e: 0c00 |003f: move-result-object v0 │ │ +436880: 1a01 e044 |0040: const-string v1, "Please select the desired destination participant(s)." // string@44e0 │ │ +436884: 1a02 874c |0042: const-string v2, "Steamroll Participant Selection" // string@4c87 │ │ +436888: 7152 f8bb a01b |0044: invoke-static {v0, v10, v11, v1, v2}, Lorg/purple/smoke/Miscellaneous;.showSwitchDialog:(Ljava/util/ArrayList;Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;Ljava/lang/String;)V // method@bbf8 │ │ +43688e: 7100 6fbd 0000 |0047: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +436894: 0c0b |004a: move-result-object v11 │ │ +436896: 6e10 67bd 0b00 |004b: invoke-virtual {v11}, Lorg/purple/smoke/State;.clearSelectedSwitches:()V // method@bd67 │ │ +43689c: 284b |004e: goto 0099 // +004b │ │ +43689e: 54a2 5d5f |004f: iget-object v2, v10, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +4368a2: 6203 695f |0051: sget-object v3, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ +4368a6: 1607 0000 |0053: const-wide/16 v7, #int 0 // #0 │ │ +4368aa: 1a04 4998 |0055: const-string v4, "rewind" // string@9849 │ │ +4368ae: 1a05 cc04 |0057: const-string v5, "0.00 B / s" // string@04cc │ │ +4368b2: 7407 42ba 0200 |0059: invoke-virtual/range {v2, v3, v4, v5, v6, v7, v8}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;IJ)V // method@ba42 │ │ +4368b8: 54ab 5b5f |005c: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +4368bc: 6e10 364c 0b00 |005e: invoke-virtual {v11}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +4368c2: 2838 |0061: goto 0099 // +0038 │ │ +4368c4: 54ab 5d5f |0062: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +4368c8: 6e10 22ba 0b00 |0064: invoke-virtual {v11}, Lorg/purple/smoke/Database;.rewindAndResumeAllSteams:()V // method@ba22 │ │ +4368ce: 54ab 5b5f |0067: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +4368d2: 6e10 364c 0b00 |0069: invoke-virtual {v11}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +4368d8: 282d |006c: goto 0099 // +002d │ │ +4368da: 54ab 5d5f |006d: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +4368de: 6e10 21ba 0b00 |006f: invoke-virtual {v11}, Lorg/purple/smoke/Database;.rewindAllSteams:()V // method@ba21 │ │ +4368e4: 54ab 5b5f |0072: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +4368e8: 6e10 364c 0b00 |0074: invoke-virtual {v11}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +4368ee: 2822 |0077: goto 0099 // +0022 │ │ +4368f0: 54ab 5d5f |0078: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +4368f4: 6e10 20ba 0b00 |007a: invoke-virtual {v11}, Lorg/purple/smoke/Database;.resumeAllSteams:()V // method@ba20 │ │ +4368fa: 54ab 5b5f |007d: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +4368fe: 6e10 364c 0b00 |007f: invoke-virtual {v11}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +436904: 2817 |0082: goto 0099 // +0017 │ │ +436906: 54ab 5d5f |0083: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +43690a: 6e10 07ba 0b00 |0085: invoke-virtual {v11}, Lorg/purple/smoke/Database;.pauseAllSteams:()V // method@ba07 │ │ +436910: 54ab 5b5f |0088: iget-object v11, v10, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +436914: 6e10 364c 0b00 |008a: invoke-virtual {v11}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +43691a: 280c |008d: goto 0099 // +000c │ │ +43691c: 1a00 7c0e |008e: const-string v0, "Are you sure that you wish to delete the selected Steam?" // string@0e7c │ │ +436920: 7130 f7bb ba00 |0090: invoke-static {v10, v11, v0}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbf7 │ │ +436926: 2806 |0093: goto 0099 // +0006 │ │ +436928: 1a00 750e |0094: const-string v0, "Are you sure that you wish to delete all of the Steams?" // string@0e75 │ │ +43692c: 7130 f7bb ba00 |0096: invoke-static {v10, v11, v0}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbf7 │ │ +436932: 0f09 |0099: return v9 │ │ +436934: 0001 0900 0000 0000 8200 0000 7c00 ... |009a: packed-switch-data (22 units) │ │ catches : (none) │ │ positions : │ │ 0x0004 line=601 │ │ 0x0008 line=602 │ │ 0x000c line=608 │ │ 0x0017 line=715 │ │ 0x001c line=716 │ │ @@ -1575767,117 +1575766,117 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 7 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 231 16-bit code units │ │ -436e90: |[436e90] org.purple.smoke.Steam.onCreate:(Landroid/os/Bundle;)V │ │ -436ea0: 6f20 f23c 6500 |0000: invoke-super {v5, v6}, Landroid/support/v7/app/AppCompatActivity;.onCreate:(Landroid/os/Bundle;)V // method@3cf2 │ │ -436ea6: 6e10 b6bd 0500 |0003: invoke-virtual {v5}, Lorg/purple/smoke/Steam;.getApplicationContext:()Landroid/content/Context; // method@bdb6 │ │ -436eac: 0c06 |0006: move-result-object v6 │ │ -436eae: 7110 f0b9 0600 |0007: invoke-static {v6}, Lorg/purple/smoke/Database;.getInstance:(Landroid/content/Context;)Lorg/purple/smoke/Database; // method@b9f0 │ │ -436eb4: 0c06 |000a: move-result-object v6 │ │ -436eb6: 5b56 5d5f |000b: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436eba: 6200 695f |000d: sget-object v0, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ -436ebe: 6e20 dfb9 0600 |000f: invoke-virtual {v6, v0}, Lorg/purple/smoke/Database;.clearSteamRates:(Lorg/purple/smoke/Cryptography;)V // method@b9df │ │ -436ec4: 2206 1e1b |0012: new-instance v6, Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // type@1b1e │ │ -436ec8: 7020 a1bd 5600 |0014: invoke-direct {v6, v5}, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.:(Lorg/purple/smoke/Steam;)V // method@bda1 │ │ -436ece: 5b56 645f |0017: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_receiver:Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // field@5f64 │ │ -436ed2: 1406 2100 0a7f |0019: const v6, #float 1.83434e+38 // #7f0a0021 │ │ -436ed8: 6e20 d0bd 6500 |001c: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.setContentView:(I)V // method@bdd0 │ │ -436ede: 2206 1f1b |001f: new-instance v6, Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // type@1b1f │ │ -436ee2: 7020 a3bd 5600 |0021: invoke-direct {v6, v5}, Lorg/purple/smoke/Steam$SteamLinearLayoutManager;.:(Landroid/content/Context;)V // method@bda3 │ │ -436ee8: 5b56 625f |0024: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ -436eec: 1210 |0026: const/4 v0, #int 1 // #1 │ │ -436eee: 6e20 a5bd 0600 |0027: invoke-virtual {v6, v0}, Lorg/purple/smoke/Steam$SteamLinearLayoutManager;.setOrientation:(I)V // method@bda5 │ │ -436ef4: 6e10 b9bd 0500 |002a: invoke-virtual {v5}, Lorg/purple/smoke/Steam;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bdb9 │ │ -436efa: 0c06 |002d: move-result-object v6 │ │ -436efc: 7100 29bd 0000 |002e: invoke-static {}, Lorg/purple/smoke/Smoke;.networkStatusString:()Ljava/lang/String; // method@bd29 │ │ -436f02: 0c01 |0031: move-result-object v1 │ │ -436f04: 6e20 0a3c 1600 |0032: invoke-virtual {v6, v1}, Landroid/support/v7/app/ActionBar;.setSubtitle:(Ljava/lang/CharSequence;)V // method@3c0a │ │ -436f0a: 6e10 b9bd 0500 |0035: invoke-virtual {v5}, Lorg/purple/smoke/Steam;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bdb9 │ │ -436f10: 0c06 |0038: move-result-object v6 │ │ -436f12: 1a01 324c |0039: const-string v1, "Smoke | Steam" // string@4c32 │ │ -436f16: 6e20 0c3c 1600 |003b: invoke-virtual {v6, v1}, Landroid/support/v7/app/ActionBar;.setTitle:(Ljava/lang/CharSequence;)V // method@3c0c │ │ -436f1c: 1406 2700 087f |003e: const v6, #float 1.80776e+38 // #7f080027 │ │ -436f22: 6e20 b4bd 6500 |0041: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ -436f28: 0c06 |0044: move-result-object v6 │ │ -436f2a: 1f06 5e0a |0045: check-cast v6, Landroid/widget/Button; // type@0a5e │ │ -436f2e: 5b56 5c5f |0047: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_attachmentButton:Landroid/widget/Button; // field@5f5c │ │ -436f32: 1406 6b00 087f |0049: const v6, #float 1.80777e+38 // #7f08006b │ │ -436f38: 6e20 b4bd 6500 |004c: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ -436f3e: 0c06 |004f: move-result-object v6 │ │ -436f40: 1f06 970a |0050: check-cast v6, Landroid/widget/TextView; // type@0a97 │ │ -436f44: 5b56 5e5f |0052: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ -436f48: 1406 5b00 087f |0054: const v6, #float 1.80777e+38 // #7f08005b │ │ -436f4e: 6e20 b4bd 6500 |0057: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ -436f54: 0c06 |005a: move-result-object v6 │ │ -436f56: 1f06 970a |005b: check-cast v6, Landroid/widget/TextView; // type@0a97 │ │ -436f5a: 5b56 5f5f |005d: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_downloads:Landroid/widget/TextView; // field@5f5f │ │ -436f5e: 2201 f10a |005f: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -436f62: 7010 ee5c 0100 |0061: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -436f68: 1a02 a017 |0064: const-string v2, "Downloads Directory: " // string@17a0 │ │ -436f6c: 6e20 f95c 2100 |0066: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -436f72: 6202 6f00 |0069: sget-object v2, Landroid/os/Environment;.DIRECTORY_DOWNLOADS:Ljava/lang/String; // field@006f │ │ -436f76: 7110 f304 0200 |006b: invoke-static {v2}, Landroid/os/Environment;.getExternalStoragePublicDirectory:(Ljava/lang/String;)Ljava/io/File; // method@04f3 │ │ -436f7c: 0c02 |006e: move-result-object v2 │ │ -436f7e: 6e10 a25b 0200 |006f: invoke-virtual {v2}, Ljava/io/File;.toString:()Ljava/lang/String; // method@5ba2 │ │ -436f84: 0c02 |0072: move-result-object v2 │ │ -436f86: 6e20 f95c 2100 |0073: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -436f8c: 6e10 035d 0100 |0076: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -436f92: 0c01 |0079: move-result-object v1 │ │ -436f94: 6e20 495b 1600 |007a: invoke-virtual {v6, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -436f9a: 1406 8000 087f |007d: const v6, #float 1.80778e+38 // #7f080080 │ │ -436fa0: 6e20 b4bd 6500 |0080: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ -436fa6: 0c06 |0083: move-result-object v6 │ │ -436fa8: 1f06 970a |0084: check-cast v6, Landroid/widget/TextView; // type@0a97 │ │ -436fac: 5b56 605f |0086: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_information:Landroid/widget/TextView; // field@5f60 │ │ -436fb0: 1406 8900 087f |0088: const v6, #float 1.80778e+38 // #7f080089 │ │ -436fb6: 6e20 b4bd 6500 |008b: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ -436fbc: 0c06 |008e: move-result-object v6 │ │ -436fbe: 1f06 8b0a |008f: check-cast v6, Landroid/widget/Spinner; // type@0a8b │ │ -436fc2: 5b56 615f |0091: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ -436fc6: 2201 5b0a |0093: new-instance v1, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -436fca: 1402 0800 0901 |0095: const v2, #float 2.51629e-38 // #01090008 │ │ -436fd0: 1a03 af3f |0098: const-string v3, "McEliece" // string@3faf │ │ -436fd4: 1a04 6c46 |009a: const-string v4, "RSA" // string@466c │ │ -436fd8: 2420 a81b 4300 |009c: filled-new-array {v3, v4}, [Ljava/lang/String; // type@1ba8 │ │ -436fde: 0c03 |009f: move-result-object v3 │ │ -436fe0: 7040 cb58 5132 |00a0: invoke-direct {v1, v5, v2, v3}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ -436fe6: 6e20 c05a 1600 |00a3: invoke-virtual {v6, v1}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -436fec: 5456 615f |00a6: iget-object v6, v5, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ -436ff0: 1201 |00a8: const/4 v1, #int 0 // #0 │ │ -436ff2: 6e20 c65a 1600 |00a9: invoke-virtual {v6, v1}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ -436ff8: 5456 615f |00ac: iget-object v6, v5, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ -436ffc: 6e20 cc5a 0600 |00ae: invoke-virtual {v6, v0}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -437002: 1406 bf00 087f |00b1: const v6, #float 1.80779e+38 // #7f0800bf │ │ -437008: 6e20 b4bd 6500 |00b4: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ -43700e: 0c06 |00b7: move-result-object v6 │ │ -437010: 1f06 8b0a |00b8: check-cast v6, Landroid/widget/Spinner; // type@0a8b │ │ -437014: 5b56 635f |00ba: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ -437018: 1406 d900 087f |00bc: const v6, #float 1.80779e+38 // #7f0800d9 │ │ -43701e: 6e20 b4bd 6500 |00bf: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ -437024: 0c06 |00c2: move-result-object v6 │ │ -437026: 1f06 4909 |00c3: check-cast v6, Landroid/support/v7/widget/RecyclerView; // type@0949 │ │ -43702a: 5b56 665f |00c5: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ -43702e: 6e20 0d4f 0600 |00c7: invoke-virtual {v6, v0}, Landroid/support/v7/widget/RecyclerView;.setHasFixedSize:(Z)V // method@4f0d │ │ -437034: 1406 fb00 087f |00ca: const v6, #float 1.8078e+38 // #7f0800fb │ │ -43703a: 6e20 b4bd 6500 |00cd: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ -437040: 0c06 |00d0: move-result-object v6 │ │ -437042: 1f06 5e0a |00d1: check-cast v6, Landroid/widget/Button; // type@0a5e │ │ -437046: 5b56 675f |00d3: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_sendButton:Landroid/widget/Button; // field@5f67 │ │ -43704a: 7010 c8bd 0500 |00d5: invoke-direct {v5}, Lorg/purple/smoke/Steam;.populateParticipants:()V // method@bdc8 │ │ -437050: 7010 c9bd 0500 |00d8: invoke-direct {v5}, Lorg/purple/smoke/Steam;.prepareListeners:()V // method@bdc9 │ │ -437056: 7010 cbbd 0500 |00db: invoke-direct {v5}, Lorg/purple/smoke/Steam;.prepareWidgets:()V // method@bdcb │ │ -43705c: 5456 625f |00de: iget-object v6, v5, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ -437060: 5450 665f |00e0: iget-object v0, v5, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ -437064: 1202 |00e2: const/4 v2, #int 0 // #0 │ │ -437066: 6e40 a6bd 0612 |00e3: invoke-virtual {v6, v0, v2, v1}, Lorg/purple/smoke/Steam$SteamLinearLayoutManager;.smoothScrollToPosition:(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$State;I)V // method@bda6 │ │ -43706c: 0e00 |00e6: return-void │ │ +436e8c: |[436e8c] org.purple.smoke.Steam.onCreate:(Landroid/os/Bundle;)V │ │ +436e9c: 6f20 f23c 6500 |0000: invoke-super {v5, v6}, Landroid/support/v7/app/AppCompatActivity;.onCreate:(Landroid/os/Bundle;)V // method@3cf2 │ │ +436ea2: 6e10 b6bd 0500 |0003: invoke-virtual {v5}, Lorg/purple/smoke/Steam;.getApplicationContext:()Landroid/content/Context; // method@bdb6 │ │ +436ea8: 0c06 |0006: move-result-object v6 │ │ +436eaa: 7110 f0b9 0600 |0007: invoke-static {v6}, Lorg/purple/smoke/Database;.getInstance:(Landroid/content/Context;)Lorg/purple/smoke/Database; // method@b9f0 │ │ +436eb0: 0c06 |000a: move-result-object v6 │ │ +436eb2: 5b56 5d5f |000b: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436eb6: 6200 695f |000d: sget-object v0, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ +436eba: 6e20 dfb9 0600 |000f: invoke-virtual {v6, v0}, Lorg/purple/smoke/Database;.clearSteamRates:(Lorg/purple/smoke/Cryptography;)V // method@b9df │ │ +436ec0: 2206 1e1b |0012: new-instance v6, Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // type@1b1e │ │ +436ec4: 7020 a1bd 5600 |0014: invoke-direct {v6, v5}, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.:(Lorg/purple/smoke/Steam;)V // method@bda1 │ │ +436eca: 5b56 645f |0017: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_receiver:Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // field@5f64 │ │ +436ece: 1406 2100 0a7f |0019: const v6, #float 1.83434e+38 // #7f0a0021 │ │ +436ed4: 6e20 d0bd 6500 |001c: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.setContentView:(I)V // method@bdd0 │ │ +436eda: 2206 1f1b |001f: new-instance v6, Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // type@1b1f │ │ +436ede: 7020 a3bd 5600 |0021: invoke-direct {v6, v5}, Lorg/purple/smoke/Steam$SteamLinearLayoutManager;.:(Landroid/content/Context;)V // method@bda3 │ │ +436ee4: 5b56 625f |0024: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ +436ee8: 1210 |0026: const/4 v0, #int 1 // #1 │ │ +436eea: 6e20 a5bd 0600 |0027: invoke-virtual {v6, v0}, Lorg/purple/smoke/Steam$SteamLinearLayoutManager;.setOrientation:(I)V // method@bda5 │ │ +436ef0: 6e10 b9bd 0500 |002a: invoke-virtual {v5}, Lorg/purple/smoke/Steam;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bdb9 │ │ +436ef6: 0c06 |002d: move-result-object v6 │ │ +436ef8: 7100 29bd 0000 |002e: invoke-static {}, Lorg/purple/smoke/Smoke;.networkStatusString:()Ljava/lang/String; // method@bd29 │ │ +436efe: 0c01 |0031: move-result-object v1 │ │ +436f00: 6e20 0a3c 1600 |0032: invoke-virtual {v6, v1}, Landroid/support/v7/app/ActionBar;.setSubtitle:(Ljava/lang/CharSequence;)V // method@3c0a │ │ +436f06: 6e10 b9bd 0500 |0035: invoke-virtual {v5}, Lorg/purple/smoke/Steam;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bdb9 │ │ +436f0c: 0c06 |0038: move-result-object v6 │ │ +436f0e: 1a01 324c |0039: const-string v1, "Smoke | Steam" // string@4c32 │ │ +436f12: 6e20 0c3c 1600 |003b: invoke-virtual {v6, v1}, Landroid/support/v7/app/ActionBar;.setTitle:(Ljava/lang/CharSequence;)V // method@3c0c │ │ +436f18: 1406 2700 087f |003e: const v6, #float 1.80776e+38 // #7f080027 │ │ +436f1e: 6e20 b4bd 6500 |0041: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ +436f24: 0c06 |0044: move-result-object v6 │ │ +436f26: 1f06 5e0a |0045: check-cast v6, Landroid/widget/Button; // type@0a5e │ │ +436f2a: 5b56 5c5f |0047: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_attachmentButton:Landroid/widget/Button; // field@5f5c │ │ +436f2e: 1406 6b00 087f |0049: const v6, #float 1.80777e+38 // #7f08006b │ │ +436f34: 6e20 b4bd 6500 |004c: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ +436f3a: 0c06 |004f: move-result-object v6 │ │ +436f3c: 1f06 970a |0050: check-cast v6, Landroid/widget/TextView; // type@0a97 │ │ +436f40: 5b56 5e5f |0052: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ +436f44: 1406 5b00 087f |0054: const v6, #float 1.80777e+38 // #7f08005b │ │ +436f4a: 6e20 b4bd 6500 |0057: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ +436f50: 0c06 |005a: move-result-object v6 │ │ +436f52: 1f06 970a |005b: check-cast v6, Landroid/widget/TextView; // type@0a97 │ │ +436f56: 5b56 5f5f |005d: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_downloads:Landroid/widget/TextView; // field@5f5f │ │ +436f5a: 2201 f10a |005f: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +436f5e: 7010 ee5c 0100 |0061: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +436f64: 1a02 a017 |0064: const-string v2, "Downloads Directory: " // string@17a0 │ │ +436f68: 6e20 f95c 2100 |0066: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +436f6e: 6202 6f00 |0069: sget-object v2, Landroid/os/Environment;.DIRECTORY_DOWNLOADS:Ljava/lang/String; // field@006f │ │ +436f72: 7110 f304 0200 |006b: invoke-static {v2}, Landroid/os/Environment;.getExternalStoragePublicDirectory:(Ljava/lang/String;)Ljava/io/File; // method@04f3 │ │ +436f78: 0c02 |006e: move-result-object v2 │ │ +436f7a: 6e10 a25b 0200 |006f: invoke-virtual {v2}, Ljava/io/File;.toString:()Ljava/lang/String; // method@5ba2 │ │ +436f80: 0c02 |0072: move-result-object v2 │ │ +436f82: 6e20 f95c 2100 |0073: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +436f88: 6e10 035d 0100 |0076: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +436f8e: 0c01 |0079: move-result-object v1 │ │ +436f90: 6e20 495b 1600 |007a: invoke-virtual {v6, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +436f96: 1406 8000 087f |007d: const v6, #float 1.80778e+38 // #7f080080 │ │ +436f9c: 6e20 b4bd 6500 |0080: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ +436fa2: 0c06 |0083: move-result-object v6 │ │ +436fa4: 1f06 970a |0084: check-cast v6, Landroid/widget/TextView; // type@0a97 │ │ +436fa8: 5b56 605f |0086: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_information:Landroid/widget/TextView; // field@5f60 │ │ +436fac: 1406 8900 087f |0088: const v6, #float 1.80778e+38 // #7f080089 │ │ +436fb2: 6e20 b4bd 6500 |008b: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ +436fb8: 0c06 |008e: move-result-object v6 │ │ +436fba: 1f06 8b0a |008f: check-cast v6, Landroid/widget/Spinner; // type@0a8b │ │ +436fbe: 5b56 615f |0091: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ +436fc2: 2201 5b0a |0093: new-instance v1, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +436fc6: 1402 0800 0901 |0095: const v2, #float 2.51629e-38 // #01090008 │ │ +436fcc: 1a03 af3f |0098: const-string v3, "McEliece" // string@3faf │ │ +436fd0: 1a04 6c46 |009a: const-string v4, "RSA" // string@466c │ │ +436fd4: 2420 a81b 4300 |009c: filled-new-array {v3, v4}, [Ljava/lang/String; // type@1ba8 │ │ +436fda: 0c03 |009f: move-result-object v3 │ │ +436fdc: 7040 cb58 5132 |00a0: invoke-direct {v1, v5, v2, v3}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ +436fe2: 6e20 c05a 1600 |00a3: invoke-virtual {v6, v1}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +436fe8: 5456 615f |00a6: iget-object v6, v5, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ +436fec: 1201 |00a8: const/4 v1, #int 0 // #0 │ │ +436fee: 6e20 c65a 1600 |00a9: invoke-virtual {v6, v1}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ +436ff4: 5456 615f |00ac: iget-object v6, v5, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ +436ff8: 6e20 cc5a 0600 |00ae: invoke-virtual {v6, v0}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +436ffe: 1406 bf00 087f |00b1: const v6, #float 1.80779e+38 // #7f0800bf │ │ +437004: 6e20 b4bd 6500 |00b4: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ +43700a: 0c06 |00b7: move-result-object v6 │ │ +43700c: 1f06 8b0a |00b8: check-cast v6, Landroid/widget/Spinner; // type@0a8b │ │ +437010: 5b56 635f |00ba: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ +437014: 1406 d900 087f |00bc: const v6, #float 1.80779e+38 // #7f0800d9 │ │ +43701a: 6e20 b4bd 6500 |00bf: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ +437020: 0c06 |00c2: move-result-object v6 │ │ +437022: 1f06 4909 |00c3: check-cast v6, Landroid/support/v7/widget/RecyclerView; // type@0949 │ │ +437026: 5b56 665f |00c5: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ +43702a: 6e20 0d4f 0600 |00c7: invoke-virtual {v6, v0}, Landroid/support/v7/widget/RecyclerView;.setHasFixedSize:(Z)V // method@4f0d │ │ +437030: 1406 fb00 087f |00ca: const v6, #float 1.8078e+38 // #7f0800fb │ │ +437036: 6e20 b4bd 6500 |00cd: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb4 │ │ +43703c: 0c06 |00d0: move-result-object v6 │ │ +43703e: 1f06 5e0a |00d1: check-cast v6, Landroid/widget/Button; // type@0a5e │ │ +437042: 5b56 675f |00d3: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_sendButton:Landroid/widget/Button; // field@5f67 │ │ +437046: 7010 c8bd 0500 |00d5: invoke-direct {v5}, Lorg/purple/smoke/Steam;.populateParticipants:()V // method@bdc8 │ │ +43704c: 7010 c9bd 0500 |00d8: invoke-direct {v5}, Lorg/purple/smoke/Steam;.prepareListeners:()V // method@bdc9 │ │ +437052: 7010 cbbd 0500 |00db: invoke-direct {v5}, Lorg/purple/smoke/Steam;.prepareWidgets:()V // method@bdcb │ │ +437058: 5456 625f |00de: iget-object v6, v5, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ +43705c: 5450 665f |00e0: iget-object v0, v5, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ +437060: 1202 |00e2: const/4 v2, #int 0 // #0 │ │ +437062: 6e40 a6bd 0612 |00e3: invoke-virtual {v6, v0, v2, v1}, Lorg/purple/smoke/Steam$SteamLinearLayoutManager;.smoothScrollToPosition:(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$State;I)V // method@bda6 │ │ +437068: 0e00 |00e6: return-void │ │ catches : 2 │ │ 0x002a - 0x003e │ │ Ljava/lang/Exception; -> 0x003e │ │ 0x00de - 0x00e6 │ │ Ljava/lang/Exception; -> 0x00e6 │ │ positions : │ │ 0x0000 line=480 │ │ @@ -1575919,21 +1575918,21 @@ │ │ type : '(Landroid/view/Menu;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 12 16-bit code units │ │ -436964: |[436964] org.purple.smoke.Steam.onCreateOptionsMenu:(Landroid/view/Menu;)Z │ │ -436974: 6e10 b8bd 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.getMenuInflater:()Landroid/view/MenuInflater; // method@bdb8 │ │ -43697a: 0c00 |0003: move-result-object v0 │ │ -43697c: 1401 0600 0b7f |0004: const v1, #float 1.84763e+38 // #7f0b0006 │ │ -436982: 6e30 6255 1003 |0007: invoke-virtual {v0, v1, v3}, Landroid/view/MenuInflater;.inflate:(ILandroid/view/Menu;)V // method@5562 │ │ -436988: 1213 |000a: const/4 v3, #int 1 // #1 │ │ -43698a: 0f03 |000b: return v3 │ │ +436960: |[436960] org.purple.smoke.Steam.onCreateOptionsMenu:(Landroid/view/Menu;)Z │ │ +436970: 6e10 b8bd 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.getMenuInflater:()Landroid/view/MenuInflater; // method@bdb8 │ │ +436976: 0c00 |0003: move-result-object v0 │ │ +436978: 1401 0600 0b7f |0004: const v1, #float 1.84763e+38 // #7f0b0006 │ │ +43697e: 6e30 6255 1003 |0007: invoke-virtual {v0, v1, v3}, Landroid/view/MenuInflater;.inflate:(ILandroid/view/Menu;)V // method@5562 │ │ +436984: 1213 |000a: const/4 v3, #int 1 // #1 │ │ +436986: 0f03 |000b: return v3 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=728 │ │ locals : │ │ 0x0000 - 0x000c reg=2 this Lorg/purple/smoke/Steam; │ │ 0x0000 - 0x000c reg=3 (null) Landroid/view/Menu; │ │ │ │ @@ -1575942,26 +1575941,26 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 22 16-bit code units │ │ -43708c: |[43708c] org.purple.smoke.Steam.onDestroy:()V │ │ -43709c: 7100 6fbd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -4370a2: 0c00 |0003: move-result-object v0 │ │ -4370a4: 6e10 6abd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.exit:()Z // method@bd6a │ │ -4370aa: 0a00 |0007: move-result v0 │ │ -4370ac: 3800 0a00 |0008: if-eqz v0, 0012 // +000a │ │ -4370b0: 7100 5705 0000 |000a: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ -4370b6: 0a00 |000d: move-result v0 │ │ -4370b8: 7110 5605 0000 |000e: invoke-static {v0}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ -4370be: 2804 |0011: goto 0015 // +0004 │ │ -4370c0: 6f10 f53c 0100 |0012: invoke-super {v1}, Landroid/support/v7/app/AppCompatActivity;.onDestroy:()V // method@3cf5 │ │ -4370c6: 0e00 |0015: return-void │ │ +437088: |[437088] org.purple.smoke.Steam.onDestroy:()V │ │ +437098: 7100 6fbd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +43709e: 0c00 |0003: move-result-object v0 │ │ +4370a0: 6e10 6abd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.exit:()Z // method@bd6a │ │ +4370a6: 0a00 |0007: move-result v0 │ │ +4370a8: 3800 0a00 |0008: if-eqz v0, 0012 // +000a │ │ +4370ac: 7100 5705 0000 |000a: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ +4370b2: 0a00 |000d: move-result v0 │ │ +4370b4: 7110 5605 0000 |000e: invoke-static {v0}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ +4370ba: 2804 |0011: goto 0015 // +0004 │ │ +4370bc: 6f10 f53c 0100 |0012: invoke-super {v1}, Landroid/support/v7/app/AppCompatActivity;.onDestroy:()V // method@3cf5 │ │ +4370c2: 0e00 |0015: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=538 │ │ 0x000a line=539 │ │ 0x0012 line=541 │ │ locals : │ │ 0x0000 - 0x0016 reg=1 this Lorg/purple/smoke/Steam; │ │ @@ -1575971,87 +1575970,87 @@ │ │ type : '(Landroid/view/MenuItem;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 10 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 168 16-bit code units │ │ -43698c: |[43698c] org.purple.smoke.Steam.onOptionsItemSelected:(Landroid/view/MenuItem;)Z │ │ -43699c: 7210 6a55 0900 |0000: invoke-interface {v9}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ -4369a2: 0a00 |0003: move-result v0 │ │ -4369a4: 7210 6c55 0900 |0004: invoke-interface {v9}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ -4369aa: 0a01 |0007: move-result v1 │ │ -4369ac: 1a02 ec7c |0008: const-string v2, "lastActivity" // string@7cec │ │ -4369b0: 1203 |000a: const/4 v3, #int 0 // #0 │ │ -4369b2: 1214 |000b: const/4 v4, #int 1 // #1 │ │ -4369b4: 3900 2f00 |000c: if-nez v0, 003b // +002f │ │ -4369b8: 2c01 8400 0000 |000e: sparse-switch v1, 00000092 // +00000084 │ │ -4369be: 287b |0011: goto 008c // +007b │ │ -4369c0: 7010 d8bd 0800 |0012: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showSmokescreenActivity:()V // method@bdd8 │ │ -4369c6: 0f04 |0015: return v4 │ │ -4369c8: 5489 5d5f |0016: iget-object v9, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -4369cc: 1a00 514b |0018: const-string v0, "Settings" // string@4b51 │ │ -4369d0: 6e40 39ba 3902 |001a: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -4369d6: 7010 d7bd 0800 |001d: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showSettingsActivity:()V // method@bdd7 │ │ -4369dc: 0f04 |0020: return v4 │ │ -4369de: 5489 5d5f |0021: iget-object v9, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -4369e2: 1a00 ea1a |0023: const-string v0, "Fire" // string@1aea │ │ -4369e6: 6e40 39ba 3902 |0025: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -4369ec: 7010 d5bd 0800 |0028: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showFireActivity:()V // method@bdd5 │ │ -4369f2: 0f04 |002b: return v4 │ │ -4369f4: 7120 25bd 8400 |002c: invoke-static {v4, v8}, Lorg/purple/smoke/Smoke;.exit:(ZLandroid/content/Context;)V // method@bd25 │ │ -4369fa: 0f04 |002f: return v4 │ │ -4369fc: 5489 5d5f |0030: iget-object v9, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436a00: 1a00 0113 |0032: const-string v0, "Chat" // string@1301 │ │ -436a04: 6e40 39ba 3902 |0034: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -436a0a: 7010 d2bd 0800 |0037: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showChatActivity:()V // method@bdd2 │ │ -436a10: 0f04 |003a: return v4 │ │ -436a12: 7210 6e55 0900 |003b: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ -436a18: 0c00 |003e: move-result-object v0 │ │ -436a1a: 7210 045c 0000 |003f: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -436a20: 0c00 |0042: move-result-object v0 │ │ -436a22: 1a05 7a03 |0043: const-string v5, "(" // string@037a │ │ -436a26: 6e20 c25c 5000 |0045: invoke-virtual {v0, v5}, Ljava/lang/String;.indexOf:(Ljava/lang/String;)I // method@5cc2 │ │ -436a2c: 0a05 |0048: move-result v5 │ │ -436a2e: 3a05 0f00 |0049: if-ltz v5, 0058 // +000f │ │ -436a32: b045 |004b: add-int/2addr v5, v4 │ │ -436a34: 6e20 cc5c 5000 |004c: invoke-virtual {v0, v5}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ -436a3a: 0c04 |004f: move-result-object v4 │ │ -436a3c: 1a05 ec03 |0050: const-string v5, ")" // string@03ec │ │ -436a40: 1a06 0000 |0052: const-string v6, "" // string@0000 │ │ -436a44: 6e30 c85c 5406 |0054: invoke-virtual {v4, v5, v6}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -436a4a: 0c00 |0057: move-result-object v0 │ │ -436a4c: 7110 f0bb 0000 |0058: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf0 │ │ -436a52: 0c00 |005b: move-result-object v0 │ │ -436a54: 7100 6fbd 0000 |005c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -436a5a: 0c04 |005f: move-result-object v4 │ │ -436a5c: 7110 d55c 0100 |0060: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -436a62: 0c05 |0063: move-result-object v5 │ │ -436a64: 1a06 a98a |0064: const-string v6, "member_chat_oid" // string@8aa9 │ │ -436a68: 6e30 8bbd 6405 |0066: invoke-virtual {v4, v6, v5}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd8b │ │ -436a6e: 7100 6fbd 0000 |0069: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -436a74: 0c04 |006c: move-result-object v4 │ │ -436a76: 1a05 ab8a |006d: const-string v5, "member_chat_siphash_id" // string@8aab │ │ -436a7a: 6e30 8bbd 5400 |006f: invoke-virtual {v4, v5, v0}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd8b │ │ -436a80: 5484 5d5f |0072: iget-object v4, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436a84: 1a07 0c40 |0074: const-string v7, "MemberChat" // string@400c │ │ -436a88: 6e40 39ba 3472 |0076: invoke-virtual {v4, v3, v2, v7}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -436a8e: 5482 5d5f |0079: iget-object v2, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436a92: 6203 695f |007b: sget-object v3, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ -436a96: 7110 d55c 0100 |007d: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -436a9c: 0c01 |0080: move-result-object v1 │ │ -436a9e: 6e40 39ba 3216 |0081: invoke-virtual {v2, v3, v6, v1}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -436aa4: 5481 5d5f |0084: iget-object v1, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436aa8: 6e40 39ba 3105 |0086: invoke-virtual {v1, v3, v5, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ -436aae: 7010 d6bd 0800 |0089: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showMemberChatActivity:()V // method@bdd6 │ │ -436ab4: 6f20 f83c 9800 |008c: invoke-super {v8, v9}, Landroid/support/v7/app/AppCompatActivity;.onOptionsItemSelected:(Landroid/view/MenuItem;)Z // method@3cf8 │ │ -436aba: 0a09 |008f: move-result v9 │ │ -436abc: 0f09 |0090: return v9 │ │ -436abe: 0000 |0091: nop // spacer │ │ -436ac0: 0002 0500 0a00 087f 0e00 087f 0f00 ... |0092: sparse-switch-data (22 units) │ │ +436988: |[436988] org.purple.smoke.Steam.onOptionsItemSelected:(Landroid/view/MenuItem;)Z │ │ +436998: 7210 6a55 0900 |0000: invoke-interface {v9}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ +43699e: 0a00 |0003: move-result v0 │ │ +4369a0: 7210 6c55 0900 |0004: invoke-interface {v9}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ +4369a6: 0a01 |0007: move-result v1 │ │ +4369a8: 1a02 ec7c |0008: const-string v2, "lastActivity" // string@7cec │ │ +4369ac: 1203 |000a: const/4 v3, #int 0 // #0 │ │ +4369ae: 1214 |000b: const/4 v4, #int 1 // #1 │ │ +4369b0: 3900 2f00 |000c: if-nez v0, 003b // +002f │ │ +4369b4: 2c01 8400 0000 |000e: sparse-switch v1, 00000092 // +00000084 │ │ +4369ba: 287b |0011: goto 008c // +007b │ │ +4369bc: 7010 d8bd 0800 |0012: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showSmokescreenActivity:()V // method@bdd8 │ │ +4369c2: 0f04 |0015: return v4 │ │ +4369c4: 5489 5d5f |0016: iget-object v9, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +4369c8: 1a00 514b |0018: const-string v0, "Settings" // string@4b51 │ │ +4369cc: 6e40 39ba 3902 |001a: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +4369d2: 7010 d7bd 0800 |001d: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showSettingsActivity:()V // method@bdd7 │ │ +4369d8: 0f04 |0020: return v4 │ │ +4369da: 5489 5d5f |0021: iget-object v9, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +4369de: 1a00 ea1a |0023: const-string v0, "Fire" // string@1aea │ │ +4369e2: 6e40 39ba 3902 |0025: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +4369e8: 7010 d5bd 0800 |0028: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showFireActivity:()V // method@bdd5 │ │ +4369ee: 0f04 |002b: return v4 │ │ +4369f0: 7120 25bd 8400 |002c: invoke-static {v4, v8}, Lorg/purple/smoke/Smoke;.exit:(ZLandroid/content/Context;)V // method@bd25 │ │ +4369f6: 0f04 |002f: return v4 │ │ +4369f8: 5489 5d5f |0030: iget-object v9, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +4369fc: 1a00 0113 |0032: const-string v0, "Chat" // string@1301 │ │ +436a00: 6e40 39ba 3902 |0034: invoke-virtual {v9, v3, v2, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +436a06: 7010 d2bd 0800 |0037: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showChatActivity:()V // method@bdd2 │ │ +436a0c: 0f04 |003a: return v4 │ │ +436a0e: 7210 6e55 0900 |003b: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ +436a14: 0c00 |003e: move-result-object v0 │ │ +436a16: 7210 045c 0000 |003f: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +436a1c: 0c00 |0042: move-result-object v0 │ │ +436a1e: 1a05 7a03 |0043: const-string v5, "(" // string@037a │ │ +436a22: 6e20 c25c 5000 |0045: invoke-virtual {v0, v5}, Ljava/lang/String;.indexOf:(Ljava/lang/String;)I // method@5cc2 │ │ +436a28: 0a05 |0048: move-result v5 │ │ +436a2a: 3a05 0f00 |0049: if-ltz v5, 0058 // +000f │ │ +436a2e: b045 |004b: add-int/2addr v5, v4 │ │ +436a30: 6e20 cc5c 5000 |004c: invoke-virtual {v0, v5}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ +436a36: 0c04 |004f: move-result-object v4 │ │ +436a38: 1a05 ec03 |0050: const-string v5, ")" // string@03ec │ │ +436a3c: 1a06 0000 |0052: const-string v6, "" // string@0000 │ │ +436a40: 6e30 c85c 5406 |0054: invoke-virtual {v4, v5, v6}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +436a46: 0c00 |0057: move-result-object v0 │ │ +436a48: 7110 f0bb 0000 |0058: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf0 │ │ +436a4e: 0c00 |005b: move-result-object v0 │ │ +436a50: 7100 6fbd 0000 |005c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +436a56: 0c04 |005f: move-result-object v4 │ │ +436a58: 7110 d55c 0100 |0060: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +436a5e: 0c05 |0063: move-result-object v5 │ │ +436a60: 1a06 a98a |0064: const-string v6, "member_chat_oid" // string@8aa9 │ │ +436a64: 6e30 8bbd 6405 |0066: invoke-virtual {v4, v6, v5}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd8b │ │ +436a6a: 7100 6fbd 0000 |0069: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +436a70: 0c04 |006c: move-result-object v4 │ │ +436a72: 1a05 ab8a |006d: const-string v5, "member_chat_siphash_id" // string@8aab │ │ +436a76: 6e30 8bbd 5400 |006f: invoke-virtual {v4, v5, v0}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd8b │ │ +436a7c: 5484 5d5f |0072: iget-object v4, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436a80: 1a07 0c40 |0074: const-string v7, "MemberChat" // string@400c │ │ +436a84: 6e40 39ba 3472 |0076: invoke-virtual {v4, v3, v2, v7}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +436a8a: 5482 5d5f |0079: iget-object v2, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436a8e: 6203 695f |007b: sget-object v3, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ +436a92: 7110 d55c 0100 |007d: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +436a98: 0c01 |0080: move-result-object v1 │ │ +436a9a: 6e40 39ba 3216 |0081: invoke-virtual {v2, v3, v6, v1}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +436aa0: 5481 5d5f |0084: iget-object v1, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436aa4: 6e40 39ba 3105 |0086: invoke-virtual {v1, v3, v5, v0}, Lorg/purple/smoke/Database;.writeSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@ba39 │ │ +436aaa: 7010 d6bd 0800 |0089: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showMemberChatActivity:()V // method@bdd6 │ │ +436ab0: 6f20 f83c 9800 |008c: invoke-super {v8, v9}, Landroid/support/v7/app/AppCompatActivity;.onOptionsItemSelected:(Landroid/view/MenuItem;)Z // method@3cf8 │ │ +436ab6: 0a09 |008f: move-result v9 │ │ +436ab8: 0f09 |0090: return v9 │ │ +436aba: 0000 |0091: nop // spacer │ │ +436abc: 0002 0500 0a00 087f 0e00 087f 0f00 ... |0092: sparse-switch-data (22 units) │ │ catches : 1 │ │ 0x0043 - 0x0058 │ │ Ljava/lang/Exception; -> 0x0058 │ │ positions : │ │ 0x0000 line=735 │ │ 0x0004 line=736 │ │ 0x0012 line=758 │ │ @@ -1576087,26 +1576086,26 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 23 16-bit code units │ │ -4370c8: |[4370c8] org.purple.smoke.Steam.onPause:()V │ │ -4370d8: 6f10 fa3c 0200 |0000: invoke-super {v2}, Landroid/support/v7/app/AppCompatActivity;.onPause:()V // method@3cfa │ │ -4370de: 5520 655f |0003: iget-boolean v0, v2, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ -4370e2: 3800 0e00 |0005: if-eqz v0, 0013 // +000e │ │ -4370e6: 7110 a41d 0200 |0007: invoke-static {v2}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ -4370ec: 0c00 |000a: move-result-object v0 │ │ -4370ee: 5421 645f |000b: iget-object v1, v2, Lorg/purple/smoke/Steam;.m_receiver:Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // field@5f64 │ │ -4370f2: 6e20 a81d 1000 |000d: invoke-virtual {v0, v1}, Landroid/support/v4/content/LocalBroadcastManager;.unregisterReceiver:(Landroid/content/BroadcastReceiver;)V // method@1da8 │ │ -4370f8: 1200 |0010: const/4 v0, #int 0 // #0 │ │ -4370fa: 5c20 655f |0011: iput-boolean v0, v2, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ -4370fe: 7010 cdbd 0200 |0013: invoke-direct {v2}, Lorg/purple/smoke/Steam;.releaseResources:()V // method@bdcd │ │ -437104: 0e00 |0016: return-void │ │ +4370c4: |[4370c4] org.purple.smoke.Steam.onPause:()V │ │ +4370d4: 6f10 fa3c 0200 |0000: invoke-super {v2}, Landroid/support/v7/app/AppCompatActivity;.onPause:()V // method@3cfa │ │ +4370da: 5520 655f |0003: iget-boolean v0, v2, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ +4370de: 3800 0e00 |0005: if-eqz v0, 0013 // +000e │ │ +4370e2: 7110 a41d 0200 |0007: invoke-static {v2}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ +4370e8: 0c00 |000a: move-result-object v0 │ │ +4370ea: 5421 645f |000b: iget-object v1, v2, Lorg/purple/smoke/Steam;.m_receiver:Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // field@5f64 │ │ +4370ee: 6e20 a81d 1000 |000d: invoke-virtual {v0, v1}, Landroid/support/v4/content/LocalBroadcastManager;.unregisterReceiver:(Landroid/content/BroadcastReceiver;)V // method@1da8 │ │ +4370f4: 1200 |0010: const/4 v0, #int 0 // #0 │ │ +4370f6: 5c20 655f |0011: iput-boolean v0, v2, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ +4370fa: 7010 cdbd 0200 |0013: invoke-direct {v2}, Lorg/purple/smoke/Steam;.releaseResources:()V // method@bdcd │ │ +437100: 0e00 |0016: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=547 │ │ 0x0003 line=549 │ │ 0x0007 line=551 │ │ 0x000d line=552 │ │ 0x0011 line=553 │ │ @@ -1576119,34 +1576118,34 @@ │ │ type : '(Landroid/view/Menu;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 36 16-bit code units │ │ -436afc: |[436afc] org.purple.smoke.Steam.onPrepareOptionsMenu:(Landroid/view/Menu;)Z │ │ -436b0c: 7100 6fbd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ -436b12: 0c00 |0003: move-result-object v0 │ │ -436b14: 6e10 72bd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ -436b1a: 0a00 |0007: move-result v0 │ │ -436b1c: 5431 5d5f |0008: iget-object v1, v3, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436b20: 6e10 dab9 0100 |000a: invoke-virtual {v1}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9da │ │ -436b26: 0a01 |000d: move-result v1 │ │ -436b28: 1212 |000e: const/4 v2, #int 1 // #1 │ │ -436b2a: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ -436b2e: 1210 |0011: const/4 v0, #int 1 // #1 │ │ -436b30: 1401 0200 087f |0012: const v1, #float 1.80775e+38 // #7f080002 │ │ -436b36: 7220 5c55 1400 |0015: invoke-interface {v4, v1}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -436b3c: 0c01 |0018: move-result-object v1 │ │ -436b3e: b720 |0019: xor-int/2addr v0, v2 │ │ -436b40: 7220 7a55 0100 |001a: invoke-interface {v1, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -436b46: 1260 |001d: const/4 v0, #int 6 // #6 │ │ -436b48: 1301 fa00 |001e: const/16 v1, #int 250 // #fa │ │ -436b4c: 7130 debb 0401 |0020: invoke-static {v4, v0, v1}, Lorg/purple/smoke/Miscellaneous;.addMembersToMenu:(Landroid/view/Menu;II)Landroid/view/SubMenu; // method@bbde │ │ -436b52: 0f02 |0023: return v2 │ │ +436af8: |[436af8] org.purple.smoke.Steam.onPrepareOptionsMenu:(Landroid/view/Menu;)Z │ │ +436b08: 7100 6fbd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd6f │ │ +436b0e: 0c00 |0003: move-result-object v0 │ │ +436b10: 6e10 72bd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd72 │ │ +436b16: 0a00 |0007: move-result v0 │ │ +436b18: 5431 5d5f |0008: iget-object v1, v3, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436b1c: 6e10 dab9 0100 |000a: invoke-virtual {v1}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9da │ │ +436b22: 0a01 |000d: move-result v1 │ │ +436b24: 1212 |000e: const/4 v2, #int 1 // #1 │ │ +436b26: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ +436b2a: 1210 |0011: const/4 v0, #int 1 // #1 │ │ +436b2c: 1401 0200 087f |0012: const v1, #float 1.80775e+38 // #7f080002 │ │ +436b32: 7220 5c55 1400 |0015: invoke-interface {v4, v1}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +436b38: 0c01 |0018: move-result-object v1 │ │ +436b3a: b720 |0019: xor-int/2addr v0, v2 │ │ +436b3c: 7220 7a55 0100 |001a: invoke-interface {v1, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +436b42: 1260 |001d: const/4 v0, #int 6 // #6 │ │ +436b44: 1301 fa00 |001e: const/16 v1, #int 250 // #fa │ │ +436b48: 7130 debb 0401 |0020: invoke-static {v4, v0, v1}, Lorg/purple/smoke/Miscellaneous;.addMembersToMenu:(Landroid/view/Menu;II)Landroid/view/SubMenu; // method@bbde │ │ +436b4e: 0f02 |0023: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=800 │ │ 0x0008 line=802 │ │ 0x0015 line=809 │ │ 0x0020 line=810 │ │ locals : │ │ @@ -1576158,52 +1576157,52 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 85 16-bit code units │ │ -437108: |[437108] org.purple.smoke.Steam.onResume:()V │ │ -437118: 6f10 fe3c 0400 |0000: invoke-super {v4}, Landroid/support/v7/app/AppCompatActivity;.onResume:()V // method@3cfe │ │ -43711e: 7010 bcbd 0400 |0003: invoke-direct {v4}, Lorg/purple/smoke/Steam;.networkStatusChanged:()V // method@bdbc │ │ -437124: 5540 655f |0006: iget-boolean v0, v4, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ -437128: 3900 3b00 |0008: if-nez v0, 0043 // +003b │ │ -43712c: 2200 4a00 |000a: new-instance v0, Landroid/content/IntentFilter; // type@004a │ │ -437130: 7010 cf01 0000 |000c: invoke-direct {v0}, Landroid/content/IntentFilter;.:()V // method@01cf │ │ -437136: 1a01 f491 |000f: const-string v1, "org.purple.smoke.chat_message" // string@91f4 │ │ -43713a: 6e20 d001 1000 |0011: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -437140: 1a01 fd91 |0014: const-string v1, "org.purple.smoke.neighbor_connected" // string@91fd │ │ -437144: 6e20 d001 1000 |0016: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -43714a: 1a01 ff91 |0019: const-string v1, "org.purple.smoke.network_connected" // string@91ff │ │ -43714e: 6e20 d001 1000 |001b: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -437154: 1a01 0092 |001e: const-string v1, "org.purple.smoke.network_disconnected" // string@9200 │ │ -437158: 6e20 d001 1000 |0020: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -43715e: 1a01 0892 |0023: const-string v1, "org.purple.smoke.state_participants_populated" // string@9208 │ │ -437162: 6e20 d001 1000 |0025: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -437168: 1a01 0992 |0028: const-string v1, "org.purple.smoke.steam_added" // string@9209 │ │ -43716c: 6e20 d001 1000 |002a: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -437172: 1a01 0b92 |002d: const-string v1, "org.purple.smoke.steam_status" // string@920b │ │ -437176: 6e20 d001 1000 |002f: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -43717c: 1a01 0c92 |0032: const-string v1, "org.purple.smoke.time" // string@920c │ │ -437180: 6e20 d001 1000 |0034: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -437186: 7110 a41d 0400 |0037: invoke-static {v4}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ -43718c: 0c01 |003a: move-result-object v1 │ │ -43718e: 5442 645f |003b: iget-object v2, v4, Lorg/purple/smoke/Steam;.m_receiver:Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // field@5f64 │ │ -437192: 6e30 a51d 2100 |003d: invoke-virtual {v1, v2, v0}, Landroid/support/v4/content/LocalBroadcastManager;.registerReceiver:(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)V // method@1da5 │ │ -437198: 1210 |0040: const/4 v0, #int 1 // #1 │ │ -43719a: 5c40 655f |0041: iput-boolean v0, v4, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ -43719e: 5440 5b5f |0043: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -4371a2: 6e10 364c 0000 |0045: invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -4371a8: 5440 625f |0048: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ -4371ac: 5441 665f |004a: iget-object v1, v4, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ -4371b0: 1202 |004c: const/4 v2, #int 0 // #0 │ │ -4371b2: 1203 |004d: const/4 v3, #int 0 // #0 │ │ -4371b4: 6e40 a6bd 1032 |004e: invoke-virtual {v0, v1, v2, v3}, Lorg/purple/smoke/Steam$SteamLinearLayoutManager;.smoothScrollToPosition:(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$State;I)V // method@bda6 │ │ -4371ba: 7010 cabd 0400 |0051: invoke-direct {v4}, Lorg/purple/smoke/Steam;.prepareSchedulers:()V // method@bdca │ │ -4371c0: 0e00 |0054: return-void │ │ +437104: |[437104] org.purple.smoke.Steam.onResume:()V │ │ +437114: 6f10 fe3c 0400 |0000: invoke-super {v4}, Landroid/support/v7/app/AppCompatActivity;.onResume:()V // method@3cfe │ │ +43711a: 7010 bcbd 0400 |0003: invoke-direct {v4}, Lorg/purple/smoke/Steam;.networkStatusChanged:()V // method@bdbc │ │ +437120: 5540 655f |0006: iget-boolean v0, v4, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ +437124: 3900 3b00 |0008: if-nez v0, 0043 // +003b │ │ +437128: 2200 4a00 |000a: new-instance v0, Landroid/content/IntentFilter; // type@004a │ │ +43712c: 7010 cf01 0000 |000c: invoke-direct {v0}, Landroid/content/IntentFilter;.:()V // method@01cf │ │ +437132: 1a01 f491 |000f: const-string v1, "org.purple.smoke.chat_message" // string@91f4 │ │ +437136: 6e20 d001 1000 |0011: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +43713c: 1a01 fd91 |0014: const-string v1, "org.purple.smoke.neighbor_connected" // string@91fd │ │ +437140: 6e20 d001 1000 |0016: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +437146: 1a01 ff91 |0019: const-string v1, "org.purple.smoke.network_connected" // string@91ff │ │ +43714a: 6e20 d001 1000 |001b: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +437150: 1a01 0092 |001e: const-string v1, "org.purple.smoke.network_disconnected" // string@9200 │ │ +437154: 6e20 d001 1000 |0020: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +43715a: 1a01 0892 |0023: const-string v1, "org.purple.smoke.state_participants_populated" // string@9208 │ │ +43715e: 6e20 d001 1000 |0025: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +437164: 1a01 0992 |0028: const-string v1, "org.purple.smoke.steam_added" // string@9209 │ │ +437168: 6e20 d001 1000 |002a: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +43716e: 1a01 0b92 |002d: const-string v1, "org.purple.smoke.steam_status" // string@920b │ │ +437172: 6e20 d001 1000 |002f: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +437178: 1a01 0c92 |0032: const-string v1, "org.purple.smoke.time" // string@920c │ │ +43717c: 6e20 d001 1000 |0034: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +437182: 7110 a41d 0400 |0037: invoke-static {v4}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ +437188: 0c01 |003a: move-result-object v1 │ │ +43718a: 5442 645f |003b: iget-object v2, v4, Lorg/purple/smoke/Steam;.m_receiver:Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // field@5f64 │ │ +43718e: 6e30 a51d 2100 |003d: invoke-virtual {v1, v2, v0}, Landroid/support/v4/content/LocalBroadcastManager;.registerReceiver:(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)V // method@1da5 │ │ +437194: 1210 |0040: const/4 v0, #int 1 // #1 │ │ +437196: 5c40 655f |0041: iput-boolean v0, v4, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ +43719a: 5440 5b5f |0043: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +43719e: 6e10 364c 0000 |0045: invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +4371a4: 5440 625f |0048: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ +4371a8: 5441 665f |004a: iget-object v1, v4, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ +4371ac: 1202 |004c: const/4 v2, #int 0 // #0 │ │ +4371ae: 1203 |004d: const/4 v3, #int 0 // #0 │ │ +4371b0: 6e40 a6bd 1032 |004e: invoke-virtual {v0, v1, v2, v3}, Lorg/purple/smoke/Steam$SteamLinearLayoutManager;.smoothScrollToPosition:(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$State;I)V // method@bda6 │ │ +4371b6: 7010 cabd 0400 |0051: invoke-direct {v4}, Lorg/purple/smoke/Steam;.prepareSchedulers:()V // method@bdca │ │ +4371bc: 0e00 |0054: return-void │ │ catches : 1 │ │ 0x0043 - 0x0051 │ │ Ljava/lang/Exception; -> 0x0051 │ │ positions : │ │ 0x0000 line=562 │ │ 0x0003 line=563 │ │ 0x0006 line=565 │ │ @@ -1576230,19 +1576229,19 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 9 16-bit code units │ │ -437508: |[437508] org.purple.smoke.Steam.showContextMenu:(Landroid/view/View;)V │ │ -437518: 3801 0800 |0000: if-eqz v1, 0008 // +0008 │ │ -43751c: 6e20 ccbd 1000 |0002: invoke-virtual {v0, v1}, Lorg/purple/smoke/Steam;.registerForContextMenu:(Landroid/view/View;)V // method@bdcc │ │ -437522: 6e20 c7bd 1000 |0005: invoke-virtual {v0, v1}, Lorg/purple/smoke/Steam;.openContextMenu:(Landroid/view/View;)V // method@bdc7 │ │ -437528: 0e00 |0008: return-void │ │ +437504: |[437504] org.purple.smoke.Steam.showContextMenu:(Landroid/view/View;)V │ │ +437514: 3801 0800 |0000: if-eqz v1, 0008 // +0008 │ │ +437518: 6e20 ccbd 1000 |0002: invoke-virtual {v0, v1}, Lorg/purple/smoke/Steam;.registerForContextMenu:(Landroid/view/View;)V // method@bdcc │ │ +43751e: 6e20 c7bd 1000 |0005: invoke-virtual {v0, v1}, Lorg/purple/smoke/Steam;.openContextMenu:(Landroid/view/View;)V // method@bdc7 │ │ +437524: 0e00 |0008: return-void │ │ catches : (none) │ │ positions : │ │ 0x0002 line=828 │ │ 0x0005 line=829 │ │ locals : │ │ 0x0000 - 0x0009 reg=0 this Lorg/purple/smoke/Steam; │ │ 0x0000 - 0x0009 reg=1 (null) Landroid/view/View; │ ├── classes.jar │ │ ├── zipinfo {} │ │ │ @@ -1,8 +1,8 @@ │ │ │ -Zip file size: 12230753 bytes, number of entries: 6082 │ │ │ +Zip file size: 12230738 bytes, number of entries: 6082 │ │ │ ?rwxrwxr-x 2.0 unx 125 b- stor 80-Jan-01 00:00 android/support/annotation/AnimRes.class │ │ │ ?rwxrwxr-x 2.0 unx 129 b- stor 80-Jan-01 00:00 android/support/annotation/AnimatorRes.class │ │ │ ?rwxrwxr-x 2.0 unx 124 b- stor 80-Jan-01 00:00 android/support/annotation/AnyRes.class │ │ │ ?rwxrwxr-x 2.0 unx 127 b- stor 80-Jan-01 00:00 android/support/annotation/AnyThread.class │ │ │ ?rwxrwxr-x 2.0 unx 126 b- stor 80-Jan-01 00:00 android/support/annotation/ArrayRes.class │ │ │ ?rwxrwxr-x 2.0 unx 125 b- stor 80-Jan-01 00:00 android/support/annotation/AttrRes.class │ │ │ ?rwxrwxr-x 2.0 unx 130 b- stor 80-Jan-01 00:00 android/support/annotation/BinderThread.class │ │ │ @@ -2693,15 +2693,15 @@ │ │ │ ?rwxrwxr-x 2.0 unx 949 b- stor 80-Jan-01 00:00 org/purple/smoke/Settings$31.class │ │ │ ?rwxrwxr-x 2.0 unx 573 b- stor 80-Jan-01 00:00 org/purple/smoke/Settings$32.class │ │ │ ?rwxrwxr-x 2.0 unx 825 b- stor 80-Jan-01 00:00 org/purple/smoke/Settings$33.class │ │ │ ?rwxrwxr-x 2.0 unx 804 b- stor 80-Jan-01 00:00 org/purple/smoke/Settings$34.class │ │ │ ?rwxrwxr-x 2.0 unx 1471 b- stor 80-Jan-01 00:00 org/purple/smoke/Settings$35.class │ │ │ ?rwxrwxr-x 2.0 unx 1083 b- stor 80-Jan-01 00:00 org/purple/smoke/Settings$36.class │ │ │ ?rwxrwxr-x 2.0 unx 757 b- stor 80-Jan-01 00:00 org/purple/smoke/Settings$37.class │ │ │ -?rwxrwxr-x 2.0 unx 1050 b- stor 80-Jan-01 00:00 org/purple/smoke/Settings$38.class │ │ │ +?rwxrwxr-x 2.0 unx 1035 b- stor 80-Jan-01 00:00 org/purple/smoke/Settings$38.class │ │ │ ?rwxrwxr-x 2.0 unx 749 b- stor 80-Jan-01 00:00 org/purple/smoke/Settings$39.class │ │ │ ?rwxrwxr-x 2.0 unx 1381 b- stor 80-Jan-01 00:00 org/purple/smoke/Settings$3.class │ │ │ ?rwxrwxr-x 2.0 unx 3105 b- stor 80-Jan-01 00:00 org/purple/smoke/Settings$3SingleShot$1.class │ │ │ ?rwxrwxr-x 2.0 unx 6033 b- stor 80-Jan-01 00:00 org/purple/smoke/Settings$3SingleShot.class │ │ │ ?rwxrwxr-x 2.0 unx 2038 b- stor 80-Jan-01 00:00 org/purple/smoke/Settings$40.class │ │ │ ?rwxrwxr-x 2.0 unx 1557 b- stor 80-Jan-01 00:00 org/purple/smoke/Settings$4.class │ │ │ ?rwxrwxr-x 2.0 unx 1748 b- stor 80-Jan-01 00:00 org/purple/smoke/Settings$4SingleShot$1.class │ │ │ @@ -6077,8 +6077,8 @@ │ │ │ ?rwxrwxr-x 2.0 unx 770 b- stor 80-Jan-01 00:00 android/support/v4/view/ViewCompat$KitKatViewCompatImpl.class │ │ │ ?rwxrwxr-x 2.0 unx 829 b- stor 80-Jan-01 00:00 android/support/v4/view/accessibility/AccessibilityNodeInfoCompat$AccessibilityNodeInfoApi22Impl.class │ │ │ ?rwxrwxr-x 2.0 unx 3468 b- stor 80-Jan-01 00:00 android/support/v4/view/ViewCompat$LollipopViewCompatImpl.class │ │ │ ?rwxrwxr-x 2.0 unx 1008 b- stor 80-Jan-01 00:00 android/support/v4/view/accessibility/AccessibilityNodeInfoCompat$AccessibilityNodeInfoApi23Impl.class │ │ │ ?rwxrwxr-x 2.0 unx 641 b- stor 80-Jan-01 00:00 android/support/v4/view/ViewCompat$MarshmallowViewCompatImpl.class │ │ │ ?rwxrwxr-x 2.0 unx 814 b- stor 80-Jan-01 00:00 android/support/v4/view/accessibility/AccessibilityNodeInfoCompat$AccessibilityNodeInfoApi24Impl.class │ │ │ ?rwxrwxr-x 2.0 unx 539 b- stor 80-Jan-01 00:00 android/support/v4/view/ViewCompat$Api24ViewCompatImpl.class │ │ │ -6082 files, 12953472 bytes uncompressed, 11044653 bytes compressed: 14.7% │ │ │ +6082 files, 12953457 bytes uncompressed, 11044638 bytes compressed: 14.7% │ │ ├── org/purple/smoke/About.class │ │ │ ├── procyon -ec {} │ │ │ │ @@ -38,15 +38,15 @@ │ │ │ │ final StringBuilder sb = new StringBuilder(); │ │ │ │ sb.append("Bouncy Castle Version "); │ │ │ │ try { │ │ │ │ sb.append(new BouncyCastleProvider().getVersion()); │ │ │ │ sb.append("\nSmoke Version 2023.03.10 Slate (Final) "); │ │ │ │ sb.append("(Release)"); │ │ │ │ sb.append("\nBuild Date "); │ │ │ │ - final Date date = new Date(1678577503484L); │ │ │ │ + final Date date = new Date(1678731797161L); │ │ │ │ final SimpleDateFormat simpleDateFormat = s_simpleDateFormat; │ │ │ │ try { │ │ │ │ sb.append(simpleDateFormat.format(date)); │ │ │ │ sb.append(" UTC\nAndroid "); │ │ │ │ sb.append(Build$VERSION.RELEASE); │ │ │ │ String str; │ │ │ │ if (Build$VERSION.SDK_INT < 21) { │ │ ├── org/purple/smoke/BuildConfig.class │ │ │ ├── procyon -ec {} │ │ │ │ @@ -1,14 +1,14 @@ │ │ │ │ │ │ │ │ package org.purple.smoke; │ │ │ │ │ │ │ │ public final class BuildConfig │ │ │ │ { │ │ │ │ public static final String APPLICATION_ID = "org.purple.smoke"; │ │ │ │ - public static final long BUILD_TIME = 1678577503484L; │ │ │ │ + public static final long BUILD_TIME = 1678731797161L; │ │ │ │ public static final String BUILD_TYPE = "release"; │ │ │ │ public static final boolean DEBUG = false; │ │ │ │ public static final String SMOKE_IPV4_HOST = "5.180.182.220"; │ │ │ │ public static final String SMOKE_IPV4_PORT = "4710"; │ │ │ │ public static final int VERSION_CODE = 20230310; │ │ │ │ public static final String VERSION_NAME = "2023.03.10"; │ │ │ │ } │ │ ├── org/purple/smoke/Settings$38.class │ │ │ ├── procyon -ec {} │ │ │ │ @@ -17,46 +17,43 @@ │ │ │ │ try { │ │ │ │ final Database access$400 = Settings.access$400(this$0); │ │ │ │ try { │ │ │ │ final ArrayList neighbors = access$400.readNeighbors(Settings.access$300()); │ │ │ │ try { │ │ │ │ final Settings this$2 = this.this$0; │ │ │ │ try { │ │ │ │ + final Settings$PopulateNeighbors settings$PopulateNeighbors = new Settings$PopulateNeighbors(this$2, neighbors); │ │ │ │ + final Settings settings = this$2; │ │ │ │ try { │ │ │ │ - final Settings$PopulateNeighbors settings$PopulateNeighbors = new Settings$PopulateNeighbors(this.this$0, neighbors); │ │ │ │ - final Settings settings = this$2; │ │ │ │ + settings.runOnUiThread((Runnable)settings$PopulateNeighbors); │ │ │ │ + final Settings this$3 = this.this$0; │ │ │ │ try { │ │ │ │ - settings.runOnUiThread((Runnable)settings$PopulateNeighbors); │ │ │ │ - final Settings this$3 = this.this$0; │ │ │ │ + final Database access$401 = Settings.access$400(this$3); │ │ │ │ try { │ │ │ │ - final Database access$401 = Settings.access$400(this$3); │ │ │ │ + access$401.cleanDanglingOutboundQueued(); │ │ │ │ + final Settings this$4 = this.this$0; │ │ │ │ try { │ │ │ │ - access$401.cleanDanglingOutboundQueued(); │ │ │ │ - final Settings this$4 = this.this$0; │ │ │ │ + final Database access$402 = Settings.access$400(this$4); │ │ │ │ try { │ │ │ │ - final Database access$402 = Settings.access$400(this$4); │ │ │ │ - try { │ │ │ │ - access$402.cleanDanglingParticipants(); │ │ │ │ - } │ │ │ │ - catch (Exception ex) {} │ │ │ │ + access$402.cleanDanglingParticipants(); │ │ │ │ } │ │ │ │ - catch (Exception ex2) {} │ │ │ │ + catch (Exception ex) {} │ │ │ │ } │ │ │ │ - catch (Exception ex3) {} │ │ │ │ + catch (Exception ex2) {} │ │ │ │ } │ │ │ │ - catch (Exception ex4) {} │ │ │ │ + catch (Exception ex3) {} │ │ │ │ } │ │ │ │ - catch (Exception ex5) {} │ │ │ │ + catch (Exception ex4) {} │ │ │ │ } │ │ │ │ - catch (Exception ex6) {} │ │ │ │ + catch (Exception ex5) {} │ │ │ │ } │ │ │ │ - catch (Exception ex7) {} │ │ │ │ + catch (Exception ex6) {} │ │ │ │ } │ │ │ │ - catch (Exception ex8) {} │ │ │ │ + catch (Exception ex7) {} │ │ │ │ } │ │ │ │ - catch (Exception ex9) {} │ │ │ │ + catch (Exception ex8) {} │ │ │ │ } │ │ │ │ - catch (Exception ex10) {} │ │ │ │ + catch (Exception ex9) {} │ │ │ │ } │ │ │ │ - catch (Exception ex11) {} │ │ │ │ + catch (Exception ex10) {} │ │ │ │ } │ │ │ │ } ├── smali/org/purple/smoke/Settings$38.smali │ @@ -32,15 +32,15 @@ │ │ return-void │ .end method │ │ │ # virtual methods │ .method public run()V │ - .locals 4 │ + .locals 3 │ │ .line 3191 │ :try_start_0 │ iget-object v0, p0, Lorg/purple/smoke/Settings$38;->this$0:Lorg/purple/smoke/Settings; │ │ .line 3192 │ invoke-static {v0}, Lorg/purple/smoke/Settings;->access$400(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; │ @@ -56,17 +56,15 @@ │ move-result-object v0 │ │ .line 3194 │ iget-object v1, p0, Lorg/purple/smoke/Settings$38;->this$0:Lorg/purple/smoke/Settings; │ │ new-instance v2, Lorg/purple/smoke/Settings$PopulateNeighbors; │ │ - iget-object v3, p0, Lorg/purple/smoke/Settings$38;->this$0:Lorg/purple/smoke/Settings; │ - │ - invoke-direct {v2, v3, v0}, Lorg/purple/smoke/Settings$PopulateNeighbors;->(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V │ + invoke-direct {v2, v1, v0}, Lorg/purple/smoke/Settings$PopulateNeighbors;->(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V │ │ .line 3195 │ invoke-virtual {v1, v2}, Lorg/purple/smoke/Settings;->runOnUiThread(Ljava/lang/Runnable;)V │ │ .line 3196 │ iget-object v0, p0, Lorg/purple/smoke/Settings$38;->this$0:Lorg/purple/smoke/Settings; ├── smali/org/purple/smoke/About.smali │ @@ -102,15 +102,15 @@ │ │ const-string v3, "\nBuild Date " │ │ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ new-instance v3, Ljava/util/Date; │ │ - const-wide v4, 0x186d3040cfcL │ + const-wide v4, 0x186dc3662a9L │ │ invoke-direct {v3, v4, v5}, Ljava/util/Date;->(J)V │ │ .line 62 │ invoke-virtual {v1, v3}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String; │ │ move-result-object v1 ├── smali/org/purple/smoke/BuildConfig.smali │ @@ -2,15 +2,15 @@ │ .super Ljava/lang/Object; │ .source "BuildConfig.java" │ │ │ # static fields │ .field public static final APPLICATION_ID:Ljava/lang/String; = "org.purple.smoke" │ │ -.field public static final BUILD_TIME:J = 0x186d3040cfcL │ +.field public static final BUILD_TIME:J = 0x186dc3662a9L │ │ .field public static final BUILD_TYPE:Ljava/lang/String; = "release" │ │ .field public static final DEBUG:Z = false │ │ .field public static final SMOKE_IPV4_HOST:Ljava/lang/String; = "5.180.182.220"