--- /home/fdroid/fdroiddata/tmp/org.purple.smoke_20230330.apk +++ /home/fdroid/fdroiddata/tmp/sigcp_org.purple.smoke_20230330.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: <39c670badf2825ccf5d811653df05a33bc2fd446fcdf145e422bb0f626440de8>, actual: <4bd4d7132bd4c9208c329f10f6d1ea8f773ef4e7b52ac4e9c2b4d2128d31b25d> │┄ ERROR: APK Signature Scheme v3 signer #1: APK integrity check failed. VERITY_CHUNKED_SHA256 digest mismatch. Expected: <4ae9ab1fcb9776e0bf719723f3672f2f7f4fb11fa7b898962b7346434d1e1bab8e43380000000000>, actual: <1cd3dfaa82788aa5f2bd05975c630676d849a7d9a31569c6d9ea5659e382a33a8e43380000000000> │ @@ -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 6471508 b- defN 81-Jan-01 01:01 classes.dex │ +-rw-r--r-- 0.0 unx 6471504 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, 7756673 bytes uncompressed, 3633836 bytes compressed: 53.2% │ +500 files, 7756669 bytes uncompressed, 3633690 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 : 79347371 │ │ -signature : 6c37...b655 │ │ -file_size : 6471508 │ │ +checksum : aa61a33c │ │ +signature : b2d3...f223 │ │ +file_size : 6471504 │ │ header_size : 112 │ │ link_size : 0 │ │ link_off : 0 (0x000000) │ │ string_ids_size : 43656 │ │ string_ids_off : 112 (0x000070) │ │ type_ids_size : 7194 │ │ type_ids_off : 174736 (0x02aa90) │ │ @@ -15,15 +15,15 @@ │ │ proto_ids_off : 203512 (0x031af8) │ │ field_ids_size : 24666 │ │ field_ids_off : 304228 (0x04a464) │ │ method_ids_size : 48856 │ │ method_ids_off : 501556 (0x07a734) │ │ class_defs_size : 6082 │ │ class_defs_off : 892404 (0x0d9df4) │ │ -data_size : 5384480 │ │ +data_size : 5384476 │ │ data_off : 1087028 (0x109634) │ │ │ │ Class #0 header: │ │ class_idx : 267 │ │ access_flags : 9729 (0x2601) │ │ superclass_idx : 2790 │ │ source_file_idx : 3451 │ │ @@ -670441,15 +670441,15 @@ │ │ 404d4c: 6e20 f95c 3200 |002e: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ 404d52: 1a03 ad03 |0031: const-string v3, "(Release)" // string@03ad │ │ 404d56: 6e20 f95c 3200 |0033: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ 404d5c: 1a03 0b00 |0036: const-string v3, " │ │ Build Date " // string@000b │ │ 404d60: 6e20 f95c 3200 |0038: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ 404d66: 2203 b20b |003b: new-instance v3, Ljava/util/Date; // type@0bb2 │ │ -404d6a: 1804 1087 1343 8701 0000 |003d: const-wide v4, #double 8.30256e-312 // #0000018743138710 │ │ +404d6a: 1804 2243 c541 8701 0000 |003d: const-wide v4, #double 8.30246e-312 // #0000018741c54322 │ │ 404d74: 7030 f65f 4305 |0042: invoke-direct {v3, v4, v5}, Ljava/util/Date;.:(J)V // method@5ff6 │ │ 404d7a: 6e20 985f 3100 |0045: invoke-virtual {v1, v3}, Ljava/text/SimpleDateFormat;.format:(Ljava/util/Date;)Ljava/lang/String; // method@5f98 │ │ 404d80: 0c01 |0048: move-result-object v1 │ │ 404d82: 6e20 f95c 1200 |0049: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ 404d88: 1a01 d500 |004c: const-string v1, " UTC │ │ Android " // string@00d5 │ │ 404d8c: 6e20 f95c 1200 |004e: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ @@ -672212,15 +672212,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 : 1680457565968 │ │ + value : 1680435659554 │ │ #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' │ │ @@ -736718,52 +736718,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 │ │ 429df0: |[429df0] org.purple.smoke.Settings$38.run:()V │ │ -429e00: 5440 c15e |0000: iget-object v0, v4, Lorg/purple/smoke/Settings$38;.this$0:Lorg/purple/smoke/Settings; // field@5ec1 │ │ +429e00: 5430 c15e |0000: iget-object v0, v3, Lorg/purple/smoke/Settings$38;.this$0:Lorg/purple/smoke/Settings; // field@5ec1 │ │ 429e04: 7110 e1bc 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ 429e0a: 0c00 |0005: move-result-object v0 │ │ 429e0c: 7100 e0bc 0000 |0006: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ 429e12: 0c01 |0009: move-result-object v1 │ │ 429e14: 6e20 16ba 1000 |000a: invoke-virtual {v0, v1}, Lorg/purple/smoke/Database;.readNeighbors:(Lorg/purple/smoke/Cryptography;)Ljava/util/ArrayList; // method@ba16 │ │ 429e1a: 0c00 |000d: move-result-object v0 │ │ -429e1c: 5441 c15e |000e: iget-object v1, v4, Lorg/purple/smoke/Settings$38;.this$0:Lorg/purple/smoke/Settings; // field@5ec1 │ │ +429e1c: 5431 c15e |000e: iget-object v1, v3, Lorg/purple/smoke/Settings$38;.this$0:Lorg/purple/smoke/Settings; // field@5ec1 │ │ 429e20: 2202 081b |0010: new-instance v2, Lorg/purple/smoke/Settings$PopulateNeighbors; // type@1b08 │ │ -429e24: 5443 c15e |0012: iget-object v3, v4, Lorg/purple/smoke/Settings$38;.this$0:Lorg/purple/smoke/Settings; // field@5ec1 │ │ -429e28: 7030 c8bc 3200 |0014: invoke-direct {v2, v3, v0}, Lorg/purple/smoke/Settings$PopulateNeighbors;.:(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V // method@bcc8 │ │ -429e2e: 6e20 0bbd 2100 |0017: invoke-virtual {v1, v2}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd0b │ │ -429e34: 5440 c15e |001a: iget-object v0, v4, Lorg/purple/smoke/Settings$38;.this$0:Lorg/purple/smoke/Settings; // field@5ec1 │ │ -429e38: 7110 e1bc 0000 |001c: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -429e3e: 0c00 |001f: move-result-object v0 │ │ -429e40: 6e10 dfb9 0000 |0020: invoke-virtual {v0}, Lorg/purple/smoke/Database;.cleanDanglingOutboundQueued:()V // method@b9df │ │ -429e46: 5440 c15e |0023: iget-object v0, v4, Lorg/purple/smoke/Settings$38;.this$0:Lorg/purple/smoke/Settings; // field@5ec1 │ │ -429e4a: 7110 e1bc 0000 |0025: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -429e50: 0c00 |0028: move-result-object v0 │ │ -429e52: 6e10 e0b9 0000 |0029: invoke-virtual {v0}, Lorg/purple/smoke/Database;.cleanDanglingParticipants:()V // method@b9e0 │ │ -429e58: 0e00 |002c: return-void │ │ +429e24: 7030 c8bc 1200 |0012: invoke-direct {v2, v1, v0}, Lorg/purple/smoke/Settings$PopulateNeighbors;.:(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V // method@bcc8 │ │ +429e2a: 6e20 0bbd 2100 |0015: invoke-virtual {v1, v2}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd0b │ │ +429e30: 5430 c15e |0018: iget-object v0, v3, Lorg/purple/smoke/Settings$38;.this$0:Lorg/purple/smoke/Settings; // field@5ec1 │ │ +429e34: 7110 e1bc 0000 |001a: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +429e3a: 0c00 |001d: move-result-object v0 │ │ +429e3c: 6e10 dfb9 0000 |001e: invoke-virtual {v0}, Lorg/purple/smoke/Database;.cleanDanglingOutboundQueued:()V // method@b9df │ │ +429e42: 5430 c15e |0021: iget-object v0, v3, Lorg/purple/smoke/Settings$38;.this$0:Lorg/purple/smoke/Settings; // field@5ec1 │ │ +429e46: 7110 e1bc 0000 |0023: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +429e4c: 0c00 |0026: move-result-object v0 │ │ +429e4e: 6e10 e0b9 0000 |0027: invoke-virtual {v0}, Lorg/purple/smoke/Database;.cleanDanglingParticipants:()V // method@b9e0 │ │ +429e54: 0e00 |002a: return-void │ │ catches : 1 │ │ - 0x0000 - 0x002c │ │ - Ljava/lang/Exception; -> 0x002c │ │ + 0x0000 - 0x002a │ │ + Ljava/lang/Exception; -> 0x002a │ │ positions : │ │ 0x0000 line=3188 │ │ 0x0002 line=3189 │ │ 0x000e line=3191 │ │ - 0x0017 line=3192 │ │ - 0x001a line=3193 │ │ - 0x0023 line=3194 │ │ + 0x0015 line=3192 │ │ + 0x0018 line=3193 │ │ + 0x0021 line=3194 │ │ locals : │ │ - 0x0000 - 0x002d reg=4 this Lorg/purple/smoke/Settings$38; │ │ + 0x0000 - 0x002b reg=3 this Lorg/purple/smoke/Settings$38; │ │ │ │ source_file_idx : 19281 (Settings.java) │ │ │ │ Class #2699 header: │ │ class_idx : 6900 │ │ access_flags : 0 (0x0000) │ │ superclass_idx : 2790 │ │ @@ -736796,18 +736795,18 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -429e6c: |[429e6c] org.purple.smoke.Settings$39.:(Lorg/purple/smoke/Settings;)V │ │ -429e7c: 5b01 c25e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$39;.this$0:Lorg/purple/smoke/Settings; // field@5ec2 │ │ -429e80: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -429e86: 0e00 |0005: return-void │ │ +429e68: |[429e68] org.purple.smoke.Settings$39.:(Lorg/purple/smoke/Settings;)V │ │ +429e78: 5b01 c25e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$39;.this$0:Lorg/purple/smoke/Settings; // field@5ec2 │ │ +429e7c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +429e82: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3488 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$39; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings; │ │ │ │ @@ -736817,42 +736816,42 @@ │ │ type : '(Landroid/widget/RadioGroup;I)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 6 │ │ ins : 3 │ │ outs : 2 │ │ insns size : 59 16-bit code units │ │ -429e88: |[429e88] org.purple.smoke.Settings$39.onCheckedChanged:(Landroid/widget/RadioGroup;I)V │ │ -429e98: 5434 c25e |0000: iget-object v4, v3, Lorg/purple/smoke/Settings$39;.this$0:Lorg/purple/smoke/Settings; // field@5ec2 │ │ -429e9c: 1400 ad00 087f |0002: const v0, #float 1.80779e+38 // #7f0800ad │ │ -429ea2: 6e20 eabc 0400 |0005: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -429ea8: 0c04 |0008: move-result-object v4 │ │ -429eaa: 1f04 970a |0009: check-cast v4, Landroid/widget/TextView; // type@0a97 │ │ -429eae: 1401 ac00 087f |000b: const v1, #float 1.80778e+38 // #7f0800ac │ │ -429eb4: 1402 a900 087f |000e: const v2, #float 1.80778e+38 // #7f0800a9 │ │ -429eba: 3325 1a00 |0011: if-ne v5, v2, 002b // +001a │ │ -429ebe: 1205 |0013: const/4 v5, #int 0 // #0 │ │ -429ec0: 6e20 335b 5400 |0014: invoke-virtual {v4, v5}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -429ec6: 1a05 0000 |0017: const-string v5, "" // string@0000 │ │ -429eca: 6e20 495b 5400 |0019: invoke-virtual {v4, v5}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -429ed0: 5434 c25e |001c: iget-object v4, v3, Lorg/purple/smoke/Settings$39;.this$0:Lorg/purple/smoke/Settings; // field@5ec2 │ │ -429ed4: 6e20 eabc 1400 |001e: invoke-virtual {v4, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -429eda: 0c04 |0021: move-result-object v4 │ │ -429edc: 1f04 970a |0022: check-cast v4, Landroid/widget/TextView; // type@0a97 │ │ -429ee0: 1405 d200 087f |0024: const v5, #float 1.80779e+38 // #7f0800d2 │ │ -429ee6: 6e20 3e5b 5400 |0027: invoke-virtual {v4, v5}, Landroid/widget/TextView;.setNextFocusDownId:(I)V // method@5b3e │ │ -429eec: 2810 |002a: goto 003a // +0010 │ │ -429eee: 1215 |002b: const/4 v5, #int 1 // #1 │ │ -429ef0: 6e20 335b 5400 |002c: invoke-virtual {v4, v5}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -429ef6: 5434 c25e |002f: iget-object v4, v3, Lorg/purple/smoke/Settings$39;.this$0:Lorg/purple/smoke/Settings; // field@5ec2 │ │ -429efa: 6e20 eabc 1400 |0031: invoke-virtual {v4, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -429f00: 0c04 |0034: move-result-object v4 │ │ -429f02: 1f04 970a |0035: check-cast v4, Landroid/widget/TextView; // type@0a97 │ │ -429f06: 6e20 3e5b 0400 |0037: invoke-virtual {v4, v0}, Landroid/widget/TextView;.setNextFocusDownId:(I)V // method@5b3e │ │ -429f0c: 0e00 |003a: return-void │ │ +429e84: |[429e84] org.purple.smoke.Settings$39.onCheckedChanged:(Landroid/widget/RadioGroup;I)V │ │ +429e94: 5434 c25e |0000: iget-object v4, v3, Lorg/purple/smoke/Settings$39;.this$0:Lorg/purple/smoke/Settings; // field@5ec2 │ │ +429e98: 1400 ad00 087f |0002: const v0, #float 1.80779e+38 // #7f0800ad │ │ +429e9e: 6e20 eabc 0400 |0005: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +429ea4: 0c04 |0008: move-result-object v4 │ │ +429ea6: 1f04 970a |0009: check-cast v4, Landroid/widget/TextView; // type@0a97 │ │ +429eaa: 1401 ac00 087f |000b: const v1, #float 1.80778e+38 // #7f0800ac │ │ +429eb0: 1402 a900 087f |000e: const v2, #float 1.80778e+38 // #7f0800a9 │ │ +429eb6: 3325 1a00 |0011: if-ne v5, v2, 002b // +001a │ │ +429eba: 1205 |0013: const/4 v5, #int 0 // #0 │ │ +429ebc: 6e20 335b 5400 |0014: invoke-virtual {v4, v5}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +429ec2: 1a05 0000 |0017: const-string v5, "" // string@0000 │ │ +429ec6: 6e20 495b 5400 |0019: invoke-virtual {v4, v5}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +429ecc: 5434 c25e |001c: iget-object v4, v3, Lorg/purple/smoke/Settings$39;.this$0:Lorg/purple/smoke/Settings; // field@5ec2 │ │ +429ed0: 6e20 eabc 1400 |001e: invoke-virtual {v4, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +429ed6: 0c04 |0021: move-result-object v4 │ │ +429ed8: 1f04 970a |0022: check-cast v4, Landroid/widget/TextView; // type@0a97 │ │ +429edc: 1405 d200 087f |0024: const v5, #float 1.80779e+38 // #7f0800d2 │ │ +429ee2: 6e20 3e5b 5400 |0027: invoke-virtual {v4, v5}, Landroid/widget/TextView;.setNextFocusDownId:(I)V // method@5b3e │ │ +429ee8: 2810 |002a: goto 003a // +0010 │ │ +429eea: 1215 |002b: const/4 v5, #int 1 // #1 │ │ +429eec: 6e20 335b 5400 |002c: invoke-virtual {v4, v5}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +429ef2: 5434 c25e |002f: iget-object v4, v3, Lorg/purple/smoke/Settings$39;.this$0:Lorg/purple/smoke/Settings; // field@5ec2 │ │ +429ef6: 6e20 eabc 1400 |0031: invoke-virtual {v4, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +429efc: 0c04 |0034: move-result-object v4 │ │ +429efe: 1f04 970a |0035: check-cast v4, Landroid/widget/TextView; // type@0a97 │ │ +429f02: 6e20 3e5b 0400 |0037: invoke-virtual {v4, v0}, Landroid/widget/TextView;.setNextFocusDownId:(I)V // method@5b3e │ │ +429f08: 0e00 |003a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3492 │ │ 0x0005 line=3493 │ │ 0x0014 line=3497 │ │ 0x0019 line=3498 │ │ 0x001c line=3499 │ │ @@ -736904,19 +736903,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 │ │ -42a66c: |[42a66c] org.purple.smoke.Settings$3.:(Lorg/purple/smoke/Settings;I)V │ │ -42a67c: 5b01 c35e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$3;.this$0:Lorg/purple/smoke/Settings; // field@5ec3 │ │ -42a680: 5902 c45e |0002: iput v2, v0, Lorg/purple/smoke/Settings$3;.val$oid:I // field@5ec4 │ │ -42a684: 7010 8f5c 0000 |0004: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42a68a: 0e00 |0007: return-void │ │ +42a668: |[42a668] org.purple.smoke.Settings$3.:(Lorg/purple/smoke/Settings;I)V │ │ +42a678: 5b01 c35e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$3;.this$0:Lorg/purple/smoke/Settings; // field@5ec3 │ │ +42a67c: 5902 c45e |0002: iput v2, v0, Lorg/purple/smoke/Settings$3;.val$oid:I // field@5ec4 │ │ +42a680: 7010 8f5c 0000 |0004: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42a686: 0e00 |0007: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=499 │ │ 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 │ │ @@ -736927,52 +736926,52 @@ │ │ type : '(Landroid/content/DialogInterface;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 78 16-bit code units │ │ -42a68c: |[42a68c] org.purple.smoke.Settings$3.onCancel:(Landroid/content/DialogInterface;)V │ │ -42a69c: 7100 74bd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42a6a2: 0c03 |0003: move-result-object v3 │ │ -42a6a4: 1a00 c363 |0004: const-string v0, "dialog_accepted" // string@63c3 │ │ -42a6a8: 6e20 75bd 0300 |0006: invoke-virtual {v3, v0}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd75 │ │ -42a6ae: 0c03 |0009: move-result-object v3 │ │ -42a6b0: 1a00 97a5 |000a: const-string v0, "true" // string@a597 │ │ -42a6b4: 6e20 b85c 0300 |000c: invoke-virtual {v3, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42a6ba: 0a03 |000f: move-result v3 │ │ -42a6bc: 3803 3d00 |0010: if-eqz v3, 004d // +003d │ │ -42a6c0: 5423 c35e |0012: iget-object v3, v2, Lorg/purple/smoke/Settings$3;.this$0:Lorg/purple/smoke/Settings; // field@5ec3 │ │ -42a6c4: 7110 e1bc 0300 |0014: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a6ca: 0c03 |0017: move-result-object v3 │ │ -42a6cc: 5220 c45e |0018: iget v0, v2, Lorg/purple/smoke/Settings$3;.val$oid:I // field@5ec4 │ │ -42a6d0: 7110 d55c 0000 |001a: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42a6d6: 0c00 |001d: move-result-object v0 │ │ -42a6d8: 1a01 f18b |001e: const-string v1, "neighbors" // string@8bf1 │ │ -42a6dc: 6e30 eab9 0301 |0020: invoke-virtual {v3, v0, v1}, Lorg/purple/smoke/Database;.deleteEntry:(Ljava/lang/String;Ljava/lang/String;)Z // method@b9ea │ │ -42a6e2: 0a03 |0023: move-result v3 │ │ -42a6e4: 3803 2900 |0024: if-eqz v3, 004d // +0029 │ │ -42a6e8: 2203 f40a |0026: new-instance v3, Ljava/lang/Thread; // type@0af4 │ │ -42a6ec: 2200 ea1a |0028: new-instance v0, Lorg/purple/smoke/Settings$3$1SingleShot; // type@1aea │ │ -42a6f0: 7020 80bc 2000 |002a: invoke-direct {v0, v2}, Lorg/purple/smoke/Settings$3$1SingleShot;.:(Lorg/purple/smoke/Settings$3;)V // method@bc80 │ │ -42a6f6: 7020 0e5d 0300 |002d: invoke-direct {v3, v0}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ -42a6fc: 6e10 195d 0300 |0030: invoke-virtual {v3}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ -42a702: 5423 c35e |0033: iget-object v3, v2, Lorg/purple/smoke/Settings$3;.this$0:Lorg/purple/smoke/Settings; // field@5ec3 │ │ -42a706: 1400 a700 087f |0035: const v0, #float 1.80778e+38 // #7f0800a7 │ │ -42a70c: 6e20 eabc 0300 |0038: invoke-virtual {v3, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42a712: 0c03 |003b: move-result-object v3 │ │ -42a714: 1f03 930a |003c: check-cast v3, Landroid/widget/TableLayout; // type@0a93 │ │ -42a718: 5420 c35e |003e: iget-object v0, v2, Lorg/purple/smoke/Settings$3;.this$0:Lorg/purple/smoke/Settings; // field@5ec3 │ │ -42a71c: 5221 c45e |0040: iget v1, v2, Lorg/purple/smoke/Settings$3;.val$oid:I // field@5ec4 │ │ -42a720: 6e20 eabc 1000 |0042: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42a726: 0c00 |0045: move-result-object v0 │ │ -42a728: 1f00 950a |0046: check-cast v0, Landroid/widget/TableRow; // type@0a95 │ │ -42a72c: 3800 0500 |0048: if-eqz v0, 004d // +0005 │ │ -42a730: 6e20 f75a 0300 |004a: invoke-virtual {v3, v0}, Landroid/widget/TableLayout;.removeView:(Landroid/view/View;)V // method@5af7 │ │ -42a736: 0e00 |004d: return-void │ │ +42a688: |[42a688] org.purple.smoke.Settings$3.onCancel:(Landroid/content/DialogInterface;)V │ │ +42a698: 7100 74bd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42a69e: 0c03 |0003: move-result-object v3 │ │ +42a6a0: 1a00 c363 |0004: const-string v0, "dialog_accepted" // string@63c3 │ │ +42a6a4: 6e20 75bd 0300 |0006: invoke-virtual {v3, v0}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd75 │ │ +42a6aa: 0c03 |0009: move-result-object v3 │ │ +42a6ac: 1a00 97a5 |000a: const-string v0, "true" // string@a597 │ │ +42a6b0: 6e20 b85c 0300 |000c: invoke-virtual {v3, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42a6b6: 0a03 |000f: move-result v3 │ │ +42a6b8: 3803 3d00 |0010: if-eqz v3, 004d // +003d │ │ +42a6bc: 5423 c35e |0012: iget-object v3, v2, Lorg/purple/smoke/Settings$3;.this$0:Lorg/purple/smoke/Settings; // field@5ec3 │ │ +42a6c0: 7110 e1bc 0300 |0014: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a6c6: 0c03 |0017: move-result-object v3 │ │ +42a6c8: 5220 c45e |0018: iget v0, v2, Lorg/purple/smoke/Settings$3;.val$oid:I // field@5ec4 │ │ +42a6cc: 7110 d55c 0000 |001a: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42a6d2: 0c00 |001d: move-result-object v0 │ │ +42a6d4: 1a01 f18b |001e: const-string v1, "neighbors" // string@8bf1 │ │ +42a6d8: 6e30 eab9 0301 |0020: invoke-virtual {v3, v0, v1}, Lorg/purple/smoke/Database;.deleteEntry:(Ljava/lang/String;Ljava/lang/String;)Z // method@b9ea │ │ +42a6de: 0a03 |0023: move-result v3 │ │ +42a6e0: 3803 2900 |0024: if-eqz v3, 004d // +0029 │ │ +42a6e4: 2203 f40a |0026: new-instance v3, Ljava/lang/Thread; // type@0af4 │ │ +42a6e8: 2200 ea1a |0028: new-instance v0, Lorg/purple/smoke/Settings$3$1SingleShot; // type@1aea │ │ +42a6ec: 7020 80bc 2000 |002a: invoke-direct {v0, v2}, Lorg/purple/smoke/Settings$3$1SingleShot;.:(Lorg/purple/smoke/Settings$3;)V // method@bc80 │ │ +42a6f2: 7020 0e5d 0300 |002d: invoke-direct {v3, v0}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ +42a6f8: 6e10 195d 0300 |0030: invoke-virtual {v3}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ +42a6fe: 5423 c35e |0033: iget-object v3, v2, Lorg/purple/smoke/Settings$3;.this$0:Lorg/purple/smoke/Settings; // field@5ec3 │ │ +42a702: 1400 a700 087f |0035: const v0, #float 1.80778e+38 // #7f0800a7 │ │ +42a708: 6e20 eabc 0300 |0038: invoke-virtual {v3, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42a70e: 0c03 |003b: move-result-object v3 │ │ +42a710: 1f03 930a |003c: check-cast v3, Landroid/widget/TableLayout; // type@0a93 │ │ +42a714: 5420 c35e |003e: iget-object v0, v2, Lorg/purple/smoke/Settings$3;.this$0:Lorg/purple/smoke/Settings; // field@5ec3 │ │ +42a718: 5221 c45e |0040: iget v1, v2, Lorg/purple/smoke/Settings$3;.val$oid:I // field@5ec4 │ │ +42a71c: 6e20 eabc 1000 |0042: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42a722: 0c00 |0045: move-result-object v0 │ │ +42a724: 1f00 950a |0046: check-cast v0, Landroid/widget/TableRow; // type@0a95 │ │ +42a728: 3800 0500 |0048: if-eqz v0, 004d // +0005 │ │ +42a72c: 6e20 f75a 0300 |004a: invoke-virtual {v3, v0}, Landroid/widget/TableLayout;.removeView:(Landroid/view/View;)V // method@5af7 │ │ +42a732: 0e00 |004d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=502 │ │ 0x000c line=503 │ │ 0x0012 line=504 │ │ 0x001a line=505 │ │ 0x0026 line=527 │ │ @@ -737019,18 +737018,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 │ │ -429f10: |[429f10] org.purple.smoke.Settings$3SingleShot$1.:(Lorg/purple/smoke/Settings$3SingleShot;)V │ │ -429f20: 5b01 c55e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429f24: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -429f2a: 0e00 |0005: return-void │ │ +429f0c: |[429f0c] org.purple.smoke.Settings$3SingleShot$1.:(Lorg/purple/smoke/Settings$3SingleShot;)V │ │ +429f1c: 5b01 c55e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429f20: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +429f26: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1574 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$3SingleShot$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings$3SingleShot; │ │ │ │ @@ -737040,127 +737039,127 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 14 │ │ ins : 1 │ │ outs : 12 │ │ insns size : 244 16-bit code units │ │ -429f2c: |[429f2c] org.purple.smoke.Settings$3SingleShot$1.run:()V │ │ -429f3c: 54d0 c55e |0000: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429f40: 5400 cd5e |0002: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ecd │ │ -429f44: 1241 |0004: const/4 v1, #int 4 // #4 │ │ -429f46: 6e20 5f5a 1000 |0005: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -429f4c: 54d0 c55e |0008: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429f50: 5400 cc5e |000a: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -429f54: 6e10 f2bc 0000 |000c: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ -429f5a: 0c00 |000f: move-result-object v0 │ │ -429f5c: 1302 1000 |0010: const/16 v2, #int 16 // #10 │ │ -429f60: 6e20 8557 2000 |0012: invoke-virtual {v0, v2}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ -429f66: 54d0 c55e |0015: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429f6a: 5400 cc5e |0017: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -429f6e: 1402 9200 087f |0019: const v2, #float 1.80778e+38 // #7f080092 │ │ -429f74: 6e20 eabc 2000 |001c: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -429f7a: 0c00 |001f: move-result-object v0 │ │ -429f7c: 1212 |0020: const/4 v2, #int 1 // #1 │ │ -429f7e: 7120 ebbb 2000 |0021: invoke-static {v0, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ -429f84: 54d0 c55e |0024: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429f88: 7110 9ebc 0000 |0026: invoke-static {v0}, Lorg/purple/smoke/Settings$3SingleShot;.access$900:(Lorg/purple/smoke/Settings$3SingleShot;)Ljava/lang/String; // method@bc9e │ │ -429f8e: 0c00 |0029: move-result-object v0 │ │ -429f90: 6e10 c35c 0000 |002a: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -429f96: 0a00 |002d: move-result v0 │ │ -429f98: 3900 2700 |002e: if-nez v0, 0055 // +0027 │ │ -429f9c: 54d0 c55e |0030: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429fa0: 5400 cc5e |0032: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -429fa4: 2201 f10a |0034: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -429fa8: 7010 ee5c 0100 |0036: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -429fae: 1a02 6a0d |0039: const-string v2, "An error (" // string@0d6a │ │ -429fb2: 6e20 f95c 2100 |003b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -429fb8: 54d2 c55e |003e: iget-object v2, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429fbc: 7110 9ebc 0200 |0040: invoke-static {v2}, Lorg/purple/smoke/Settings$3SingleShot;.access$900:(Lorg/purple/smoke/Settings$3SingleShot;)Ljava/lang/String; // method@bc9e │ │ -429fc2: 0c02 |0043: move-result-object v2 │ │ -429fc4: 6e20 f95c 2100 |0044: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -429fca: 1a02 0004 |0047: const-string v2, ") occurred while generating the confidential data." // string@0400 │ │ -429fce: 6e20 f95c 2100 |0049: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -429fd4: 6e10 035d 0100 |004c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -429fda: 0c01 |004f: move-result-object v1 │ │ -429fdc: 7120 fabb 1000 |0050: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ -429fe2: 2900 a000 |0053: goto/16 00f3 // +00a0 │ │ -429fe6: 7100 10bb 0000 |0055: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -429fec: 0c00 |0058: move-result-object v0 │ │ -429fee: 6e20 23bb 2000 |0059: invoke-virtual {v0, v2}, Lorg/purple/smoke/Kernel;.setWakeLock:(Z)V // method@bb23 │ │ -429ff4: 54d0 c55e |005c: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -429ff8: 5400 cc5e |005e: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -429ffc: 7120 d0bc 2000 |0060: invoke-static {v0, v2}, Lorg/purple/smoke/Settings;.access$1000:(Lorg/purple/smoke/Settings;Z)V // method@bcd0 │ │ -42a002: 54d0 c55e |0063: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -42a006: 5400 cc5e |0065: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a00a: 7110 d1bc 0000 |0067: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1100:(Lorg/purple/smoke/Settings;)V // method@bcd1 │ │ -42a010: 7100 74bd 0000 |006a: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42a016: 0c00 |006d: move-result-object v0 │ │ -42a018: 6e20 88bd 2000 |006e: invoke-virtual {v0, v2}, Lorg/purple/smoke/State;.setAuthenticated:(Z)V // method@bd88 │ │ -42a01e: 54d0 c55e |0071: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -42a022: 5400 ce5e |0073: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$spinner3:Landroid/widget/Spinner; // field@5ece │ │ -42a026: 6e20 cc5a 1000 |0075: invoke-virtual {v0, v1}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -42a02c: 54d0 c55e |0078: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -42a030: 5400 cf5e |007a: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$spinner4:Landroid/widget/Spinner; // field@5ecf │ │ -42a034: 6e20 cc5a 2000 |007c: invoke-virtual {v0, v2}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -42a03a: 54d0 c55e |007f: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -42a03e: 5400 d05e |0081: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView1:Landroid/widget/TextView; // field@5ed0 │ │ -42a042: 6e10 265b 0000 |0083: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ -42a048: 54d0 c55e |0086: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -42a04c: 5400 d05e |0088: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView1:Landroid/widget/TextView; // field@5ed0 │ │ -42a050: 1a01 0000 |008a: const-string v1, "" // string@0000 │ │ -42a054: 6e20 495b 1000 |008c: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42a05a: 54d0 c55e |008f: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -42a05e: 5400 d15e |0091: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView2:Landroid/widget/TextView; // field@5ed1 │ │ -42a062: 6e20 495b 1000 |0093: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42a068: 54d0 c55e |0096: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -42a06c: 5400 cc5e |0098: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a070: 7110 e1bc 0000 |009a: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a076: 0c01 |009d: move-result-object v1 │ │ -42a078: 7100 e0bc 0000 |009e: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a07e: 0c02 |00a1: move-result-object v2 │ │ -42a080: 1a03 1f68 |00a2: const-string v3, "false" // string@681f │ │ -42a084: 1a04 1f68 |00a4: const-string v4, "false" // string@681f │ │ -42a088: 1a05 0000 |00a6: const-string v5, "" // string@0000 │ │ -42a08c: 1a06 0000 |00a8: const-string v6, "" // string@0000 │ │ -42a090: 1a07 741c |00aa: const-string v7, "HTTP" // string@1c74 │ │ -42a094: 1a08 ea07 |00ac: const-string v8, "5.180.182.220" // string@07ea │ │ -42a098: 1a09 df07 |00ae: const-string v9, "4710" // string@07df │ │ -42a09c: 1a0a 0000 |00b0: const-string v10, "" // string@0000 │ │ -42a0a0: 1a0b 094d |00b2: const-string v11, "TCP" // string@4d09 │ │ -42a0a4: 1a0c a81d |00b4: const-string v12, "IPv4" // string@1da8 │ │ -42a0a8: 740c 39ba 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@ba39 │ │ -42a0ae: 54d0 c55e |00b9: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -42a0b2: 5400 cc5e |00bb: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a0b6: 7110 d2bc 0000 |00bd: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1200:(Lorg/purple/smoke/Settings;)V // method@bcd2 │ │ -42a0bc: 54d0 c55e |00c0: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -42a0c0: 5400 cc5e |00c2: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a0c4: 7110 d3bc 0000 |00c4: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1300:(Lorg/purple/smoke/Settings;)V // method@bcd3 │ │ -42a0ca: 54d0 c55e |00c7: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -42a0ce: 5400 cc5e |00c9: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a0d2: 7110 dabc 0000 |00cb: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcda │ │ -42a0d8: 54d0 c55e |00ce: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -42a0dc: 5400 cc5e |00d0: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a0e0: 7110 d4bc 0000 |00d2: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1400:(Lorg/purple/smoke/Settings;)V // method@bcd4 │ │ -42a0e6: 54d0 c55e |00d5: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -42a0ea: 5400 cc5e |00d7: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a0ee: 7110 e1bc 0000 |00d9: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a0f4: 0c00 |00dc: move-result-object v0 │ │ -42a0f6: 1201 |00dd: const/4 v1, #int 0 // #0 │ │ -42a0f8: 1a02 605b |00de: const-string v2, "automatic_neighbors_refresh" // string@5b60 │ │ -42a0fc: 6e30 1bba 1002 |00e0: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42a102: 0c00 |00e3: move-result-object v0 │ │ -42a104: 1a01 97a5 |00e4: const-string v1, "true" // string@a597 │ │ -42a108: 6e20 b85c 1000 |00e6: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42a10e: 0a00 |00e9: move-result v0 │ │ -42a110: 3800 0900 |00ea: if-eqz v0, 00f3 // +0009 │ │ -42a114: 54d0 c55e |00ec: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ -42a118: 5400 cc5e |00ee: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a11c: 7110 d5bc 0000 |00f0: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1500:(Lorg/purple/smoke/Settings;)V // method@bcd5 │ │ -42a122: 0e00 |00f3: return-void │ │ +429f28: |[429f28] org.purple.smoke.Settings$3SingleShot$1.run:()V │ │ +429f38: 54d0 c55e |0000: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429f3c: 5400 cd5e |0002: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ecd │ │ +429f40: 1241 |0004: const/4 v1, #int 4 // #4 │ │ +429f42: 6e20 5f5a 1000 |0005: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +429f48: 54d0 c55e |0008: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429f4c: 5400 cc5e |000a: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +429f50: 6e10 f2bc 0000 |000c: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ +429f56: 0c00 |000f: move-result-object v0 │ │ +429f58: 1302 1000 |0010: const/16 v2, #int 16 // #10 │ │ +429f5c: 6e20 8557 2000 |0012: invoke-virtual {v0, v2}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ +429f62: 54d0 c55e |0015: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429f66: 5400 cc5e |0017: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +429f6a: 1402 9200 087f |0019: const v2, #float 1.80778e+38 // #7f080092 │ │ +429f70: 6e20 eabc 2000 |001c: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +429f76: 0c00 |001f: move-result-object v0 │ │ +429f78: 1212 |0020: const/4 v2, #int 1 // #1 │ │ +429f7a: 7120 ebbb 2000 |0021: invoke-static {v0, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ +429f80: 54d0 c55e |0024: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429f84: 7110 9ebc 0000 |0026: invoke-static {v0}, Lorg/purple/smoke/Settings$3SingleShot;.access$900:(Lorg/purple/smoke/Settings$3SingleShot;)Ljava/lang/String; // method@bc9e │ │ +429f8a: 0c00 |0029: move-result-object v0 │ │ +429f8c: 6e10 c35c 0000 |002a: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +429f92: 0a00 |002d: move-result v0 │ │ +429f94: 3900 2700 |002e: if-nez v0, 0055 // +0027 │ │ +429f98: 54d0 c55e |0030: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429f9c: 5400 cc5e |0032: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +429fa0: 2201 f10a |0034: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +429fa4: 7010 ee5c 0100 |0036: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +429faa: 1a02 6a0d |0039: const-string v2, "An error (" // string@0d6a │ │ +429fae: 6e20 f95c 2100 |003b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +429fb4: 54d2 c55e |003e: iget-object v2, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429fb8: 7110 9ebc 0200 |0040: invoke-static {v2}, Lorg/purple/smoke/Settings$3SingleShot;.access$900:(Lorg/purple/smoke/Settings$3SingleShot;)Ljava/lang/String; // method@bc9e │ │ +429fbe: 0c02 |0043: move-result-object v2 │ │ +429fc0: 6e20 f95c 2100 |0044: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +429fc6: 1a02 0004 |0047: const-string v2, ") occurred while generating the confidential data." // string@0400 │ │ +429fca: 6e20 f95c 2100 |0049: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +429fd0: 6e10 035d 0100 |004c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +429fd6: 0c01 |004f: move-result-object v1 │ │ +429fd8: 7120 fabb 1000 |0050: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ +429fde: 2900 a000 |0053: goto/16 00f3 // +00a0 │ │ +429fe2: 7100 10bb 0000 |0055: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +429fe8: 0c00 |0058: move-result-object v0 │ │ +429fea: 6e20 23bb 2000 |0059: invoke-virtual {v0, v2}, Lorg/purple/smoke/Kernel;.setWakeLock:(Z)V // method@bb23 │ │ +429ff0: 54d0 c55e |005c: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +429ff4: 5400 cc5e |005e: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +429ff8: 7120 d0bc 2000 |0060: invoke-static {v0, v2}, Lorg/purple/smoke/Settings;.access$1000:(Lorg/purple/smoke/Settings;Z)V // method@bcd0 │ │ +429ffe: 54d0 c55e |0063: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +42a002: 5400 cc5e |0065: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a006: 7110 d1bc 0000 |0067: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1100:(Lorg/purple/smoke/Settings;)V // method@bcd1 │ │ +42a00c: 7100 74bd 0000 |006a: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42a012: 0c00 |006d: move-result-object v0 │ │ +42a014: 6e20 88bd 2000 |006e: invoke-virtual {v0, v2}, Lorg/purple/smoke/State;.setAuthenticated:(Z)V // method@bd88 │ │ +42a01a: 54d0 c55e |0071: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +42a01e: 5400 ce5e |0073: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$spinner3:Landroid/widget/Spinner; // field@5ece │ │ +42a022: 6e20 cc5a 1000 |0075: invoke-virtual {v0, v1}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +42a028: 54d0 c55e |0078: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +42a02c: 5400 cf5e |007a: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$spinner4:Landroid/widget/Spinner; // field@5ecf │ │ +42a030: 6e20 cc5a 2000 |007c: invoke-virtual {v0, v2}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +42a036: 54d0 c55e |007f: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +42a03a: 5400 d05e |0081: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView1:Landroid/widget/TextView; // field@5ed0 │ │ +42a03e: 6e10 265b 0000 |0083: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ +42a044: 54d0 c55e |0086: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +42a048: 5400 d05e |0088: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView1:Landroid/widget/TextView; // field@5ed0 │ │ +42a04c: 1a01 0000 |008a: const-string v1, "" // string@0000 │ │ +42a050: 6e20 495b 1000 |008c: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42a056: 54d0 c55e |008f: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +42a05a: 5400 d15e |0091: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView2:Landroid/widget/TextView; // field@5ed1 │ │ +42a05e: 6e20 495b 1000 |0093: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42a064: 54d0 c55e |0096: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +42a068: 5400 cc5e |0098: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a06c: 7110 e1bc 0000 |009a: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a072: 0c01 |009d: move-result-object v1 │ │ +42a074: 7100 e0bc 0000 |009e: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a07a: 0c02 |00a1: move-result-object v2 │ │ +42a07c: 1a03 1f68 |00a2: const-string v3, "false" // string@681f │ │ +42a080: 1a04 1f68 |00a4: const-string v4, "false" // string@681f │ │ +42a084: 1a05 0000 |00a6: const-string v5, "" // string@0000 │ │ +42a088: 1a06 0000 |00a8: const-string v6, "" // string@0000 │ │ +42a08c: 1a07 741c |00aa: const-string v7, "HTTP" // string@1c74 │ │ +42a090: 1a08 ea07 |00ac: const-string v8, "5.180.182.220" // string@07ea │ │ +42a094: 1a09 df07 |00ae: const-string v9, "4710" // string@07df │ │ +42a098: 1a0a 0000 |00b0: const-string v10, "" // string@0000 │ │ +42a09c: 1a0b 094d |00b2: const-string v11, "TCP" // string@4d09 │ │ +42a0a0: 1a0c a81d |00b4: const-string v12, "IPv4" // string@1da8 │ │ +42a0a4: 740c 39ba 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@ba39 │ │ +42a0aa: 54d0 c55e |00b9: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +42a0ae: 5400 cc5e |00bb: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a0b2: 7110 d2bc 0000 |00bd: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1200:(Lorg/purple/smoke/Settings;)V // method@bcd2 │ │ +42a0b8: 54d0 c55e |00c0: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +42a0bc: 5400 cc5e |00c2: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a0c0: 7110 d3bc 0000 |00c4: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1300:(Lorg/purple/smoke/Settings;)V // method@bcd3 │ │ +42a0c6: 54d0 c55e |00c7: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +42a0ca: 5400 cc5e |00c9: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a0ce: 7110 dabc 0000 |00cb: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcda │ │ +42a0d4: 54d0 c55e |00ce: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +42a0d8: 5400 cc5e |00d0: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a0dc: 7110 d4bc 0000 |00d2: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1400:(Lorg/purple/smoke/Settings;)V // method@bcd4 │ │ +42a0e2: 54d0 c55e |00d5: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +42a0e6: 5400 cc5e |00d7: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a0ea: 7110 e1bc 0000 |00d9: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a0f0: 0c00 |00dc: move-result-object v0 │ │ +42a0f2: 1201 |00dd: const/4 v1, #int 0 // #0 │ │ +42a0f4: 1a02 605b |00de: const-string v2, "automatic_neighbors_refresh" // string@5b60 │ │ +42a0f8: 6e30 1bba 1002 |00e0: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42a0fe: 0c00 |00e3: move-result-object v0 │ │ +42a100: 1a01 97a5 |00e4: const-string v1, "true" // string@a597 │ │ +42a104: 6e20 b85c 1000 |00e6: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42a10a: 0a00 |00e9: move-result v0 │ │ +42a10c: 3800 0900 |00ea: if-eqz v0, 00f3 // +0009 │ │ +42a110: 54d0 c55e |00ec: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot$1;.this$1:Lorg/purple/smoke/Settings$3SingleShot; // field@5ec5 │ │ +42a114: 5400 cc5e |00ee: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a118: 7110 d5bc 0000 |00f0: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1500:(Lorg/purple/smoke/Settings;)V // method@bcd5 │ │ +42a11e: 0e00 |00f3: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1578 │ │ 0x0008 line=1579 │ │ 0x0012 line=1580 │ │ 0x0015 line=1582 │ │ 0x001c line=1583 │ │ @@ -737271,36 +737270,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 │ │ -42a13c: |[42a13c] 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 │ │ -42a14c: 5b01 cc5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a150: 5b07 cd5e |0002: iput-object v7, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ecd │ │ -42a154: 5b08 ce5e |0004: iput-object v8, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$spinner3:Landroid/widget/Spinner; // field@5ece │ │ -42a158: 5b09 cf5e |0006: iput-object v9, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$spinner4:Landroid/widget/Spinner; // field@5ecf │ │ -42a15c: 5b0a d05e |0008: iput-object v10, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView1:Landroid/widget/TextView; // field@5ed0 │ │ -42a160: 5b0b d15e |000a: iput-object v11, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView2:Landroid/widget/TextView; // field@5ed1 │ │ -42a164: 7010 8f5c 0000 |000c: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42a16a: 1a01 0000 |000f: const-string v1, "" // string@0000 │ │ -42a16e: 5b01 c75e |0011: iput-object v1, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a172: 5b02 c65e |0013: iput-object v2, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ -42a176: 5905 c85e |0015: iput v5, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_iterationCount:I // field@5ec8 │ │ -42a17a: 5906 c95e |0017: iput v6, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_keyDerivationFunction:I // field@5ec9 │ │ -42a17e: 5b03 ca5e |0019: iput-object v3, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ -42a182: 5b04 cb5e |001b: iput-object v4, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ -42a186: 1a01 1918 |001d: const-string v1, "ECDSA" // string@1819 │ │ -42a18a: 6e20 b85c 1400 |001f: invoke-virtual {v4, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42a190: 0a01 |0022: move-result v1 │ │ -42a192: 3801 0600 |0023: if-eqz v1, 0029 // +0006 │ │ -42a196: 1a01 e717 |0025: const-string v1, "EC" // string@17e7 │ │ -42a19a: 5b01 cb5e |0027: iput-object v1, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ -42a19e: 0e00 |0029: return-void │ │ +42a138: |[42a138] 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 │ │ +42a148: 5b01 cc5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a14c: 5b07 cd5e |0002: iput-object v7, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ecd │ │ +42a150: 5b08 ce5e |0004: iput-object v8, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$spinner3:Landroid/widget/Spinner; // field@5ece │ │ +42a154: 5b09 cf5e |0006: iput-object v9, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$spinner4:Landroid/widget/Spinner; // field@5ecf │ │ +42a158: 5b0a d05e |0008: iput-object v10, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView1:Landroid/widget/TextView; // field@5ed0 │ │ +42a15c: 5b0b d15e |000a: iput-object v11, v0, Lorg/purple/smoke/Settings$3SingleShot;.val$textView2:Landroid/widget/TextView; // field@5ed1 │ │ +42a160: 7010 8f5c 0000 |000c: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42a166: 1a01 0000 |000f: const-string v1, "" // string@0000 │ │ +42a16a: 5b01 c75e |0011: iput-object v1, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a16e: 5b02 c65e |0013: iput-object v2, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ +42a172: 5905 c85e |0015: iput v5, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_iterationCount:I // field@5ec8 │ │ +42a176: 5906 c95e |0017: iput v6, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_keyDerivationFunction:I // field@5ec9 │ │ +42a17a: 5b03 ca5e |0019: iput-object v3, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ +42a17e: 5b04 cb5e |001b: iput-object v4, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ +42a182: 1a01 1918 |001d: const-string v1, "ECDSA" // string@1819 │ │ +42a186: 6e20 b85c 1400 |001f: invoke-virtual {v4, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42a18c: 0a01 |0022: move-result v1 │ │ +42a18e: 3801 0600 |0023: if-eqz v1, 0029 // +0006 │ │ +42a192: 1a01 e717 |0025: const-string v1, "EC" // string@17e7 │ │ +42a196: 5b01 cb5e |0027: iput-object v1, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ +42a19a: 0e00 |0029: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1363 │ │ 0x0011 line=1352 │ │ 0x0013 line=1364 │ │ 0x0015 line=1365 │ │ 0x0017 line=1366 │ │ @@ -737327,17 +737326,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 │ │ -42a124: |[42a124] org.purple.smoke.Settings$3SingleShot.access$900:(Lorg/purple/smoke/Settings$3SingleShot;)Ljava/lang/String; │ │ -42a134: 5400 c75e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a138: 1100 |0002: return-object v0 │ │ +42a120: |[42a120] org.purple.smoke.Settings$3SingleShot.access$900:(Lorg/purple/smoke/Settings$3SingleShot;)Ljava/lang/String; │ │ +42a130: 5400 c75e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a134: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1349 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings$3SingleShot; │ │ │ │ Virtual methods - │ │ @@ -737346,310 +737345,310 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 14 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 598 16-bit code units │ │ -42a1a0: |[42a1a0] org.purple.smoke.Settings$3SingleShot.run:()V │ │ -42a1b0: 1a00 9846 |0000: const-string v0, "Rainbow" // string@4698 │ │ -42a1b4: 1a01 6b46 |0002: const-string v1, "RSA" // string@466b │ │ -42a1b8: 1a02 e717 |0004: const-string v2, "EC" // string@17e7 │ │ -42a1bc: 1303 2000 |0006: const/16 v3, #int 32 // #20 │ │ -42a1c0: 7110 adb9 0300 |0008: invoke-static {v3}, Lorg/purple/smoke/Cryptography;.randomBytes:(I)[B // method@b9ad │ │ -42a1c6: 0c03 |000b: move-result-object v3 │ │ -42a1c8: 1304 4000 |000c: const/16 v4, #int 64 // #40 │ │ -42a1cc: 7110 adb9 0400 |000e: invoke-static {v4}, Lorg/purple/smoke/Cryptography;.randomBytes:(I)[B // method@b9ad │ │ -42a1d2: 0c04 |0011: move-result-object v4 │ │ -42a1d4: 54d5 cc5e |0012: iget-object v5, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a1d8: 7110 e1bc 0500 |0014: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a1de: 0c05 |0017: move-result-object v5 │ │ -42a1e0: 6e10 22ba 0500 |0018: invoke-virtual {v5}, Lorg/purple/smoke/Database;.reset:()V // method@ba22 │ │ -42a1e6: 54d5 c65e |001b: iget-object v5, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ -42a1ea: 1a06 a506 |001d: const-string v6, "12, 68" // string@06a5 │ │ -42a1ee: 6e20 b65c 6500 |001f: invoke-virtual {v5, v6}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -42a1f4: 0a05 |0022: move-result v5 │ │ -42a1f6: 1226 |0023: const/4 v6, #int 2 // #2 │ │ -42a1f8: 1217 |0024: const/4 v7, #int 1 // #1 │ │ -42a1fa: 1208 |0025: const/4 v8, #int 0 // #0 │ │ -42a1fc: 3805 0400 |0026: if-eqz v5, 002a // +0004 │ │ -42a200: 1215 |0028: const/4 v5, #int 1 // #1 │ │ -42a202: 280e |0029: goto 0037 // +000e │ │ -42a204: 54d5 c65e |002a: iget-object v5, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ -42a208: 1a09 af06 |002c: const-string v9, "13, 118" // string@06af │ │ -42a20c: 6e20 b65c 9500 |002e: invoke-virtual {v5, v9}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -42a212: 0a05 |0031: move-result v5 │ │ -42a214: 3805 0400 |0032: if-eqz v5, 0036 // +0004 │ │ -42a218: 1225 |0034: const/4 v5, #int 2 // #2 │ │ -42a21a: 2802 |0035: goto 0037 // +0002 │ │ -42a21c: 1205 |0036: const/4 v5, #int 0 // #0 │ │ -42a21e: 54d9 c65e |0037: iget-object v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ -42a222: 620a bb53 |0039: sget-object v10, Lorg/purple/smoke/Cryptography;.PKI_ENCRYPTION_KEY_SIZES:[I // field@53bb │ │ -42a226: 440a 0a08 |003b: aget v10, v10, v8 │ │ -42a22a: 7130 8fb9 a905 |003d: invoke-static {v9, v10, v5}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ -42a230: 0c05 |0040: move-result-object v5 │ │ -42a232: 3805 dd01 |0041: if-eqz v5, 021e // +01dd │ │ -42a236: 54d9 cb5e |0043: iget-object v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ -42a23a: 6e20 b85c 2900 |0045: invoke-virtual {v9, v2}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42a240: 0a09 |0048: move-result v9 │ │ -42a242: 123a |0049: const/4 v10, #int 3 // #3 │ │ -42a244: 3809 0b00 |004a: if-eqz v9, 0055 // +000b │ │ -42a248: 6200 bf53 |004c: sget-object v0, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ -42a24c: 4400 0008 |004e: aget v0, v0, v8 │ │ -42a250: 7130 8fb9 0208 |0050: invoke-static {v2, v0, v8}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ -42a256: 0c00 |0053: move-result-object v0 │ │ -42a258: 282d |0054: goto 0081 // +002d │ │ -42a25a: 54d2 cb5e |0055: iget-object v2, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ -42a25e: 6e20 b85c 1200 |0057: invoke-virtual {v2, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42a264: 0a02 |005a: move-result v2 │ │ -42a266: 3802 0b00 |005b: if-eqz v2, 0066 // +000b │ │ -42a26a: 6200 bf53 |005d: sget-object v0, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ -42a26e: 4400 0007 |005f: aget v0, v0, v7 │ │ -42a272: 7130 8fb9 0108 |0061: invoke-static {v1, v0, v8}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ -42a278: 0c00 |0064: move-result-object v0 │ │ -42a27a: 281c |0065: goto 0081 // +001c │ │ -42a27c: 54d1 cb5e |0066: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ -42a280: 6e20 b85c 0100 |0068: invoke-virtual {v1, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42a286: 0a01 |006b: move-result v1 │ │ -42a288: 3801 0b00 |006c: if-eqz v1, 0077 // +000b │ │ -42a28c: 6201 bf53 |006e: sget-object v1, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ -42a290: 4401 0106 |0070: aget v1, v1, v6 │ │ -42a294: 7130 8fb9 1008 |0072: invoke-static {v0, v1, v8}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ -42a29a: 0c00 |0075: move-result-object v0 │ │ -42a29c: 280b |0076: goto 0081 // +000b │ │ -42a29e: 54d0 cb5e |0077: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ -42a2a2: 6201 bf53 |0079: sget-object v1, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ -42a2a6: 4401 010a |007b: aget v1, v1, v10 │ │ -42a2aa: 7130 8fb9 1008 |007d: invoke-static {v0, v1, v8}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ -42a2b0: 0c00 |0080: move-result-object v0 │ │ -42a2b2: 3800 8a01 |0081: if-eqz v0, 020b // +018a │ │ -42a2b6: 54d1 ca5e |0083: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ -42a2ba: 6e10 ce5c 0100 |0085: invoke-virtual {v1}, Ljava/lang/String;.toCharArray:()[C // method@5cce │ │ -42a2c0: 0c01 |0088: move-result-object v1 │ │ -42a2c2: 52d2 c85e |0089: iget v2, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_iterationCount:I // field@5ec8 │ │ -42a2c6: 52d9 c95e |008b: iget v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_keyDerivationFunction:I // field@5ec9 │ │ -42a2ca: 7140 8bb9 1392 |008d: invoke-static {v3, v1, v2, v9}, Lorg/purple/smoke/Cryptography;.generateEncryptionKey:([B[CII)Ljavax/crypto/SecretKey; // method@b98b │ │ -42a2d0: 0c01 |0090: move-result-object v1 │ │ -42a2d2: 3803 6701 |0091: if-eqz v3, 01f8 // +0167 │ │ -42a2d6: 54d2 ca5e |0093: iget-object v2, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ -42a2da: 6e10 ce5c 0200 |0095: invoke-virtual {v2}, Ljava/lang/String;.toCharArray:()[C // method@5cce │ │ -42a2e0: 0c02 |0098: move-result-object v2 │ │ -42a2e2: 52d9 c85e |0099: iget v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_iterationCount:I // field@5ec8 │ │ -42a2e6: 52db c95e |009b: iget v11, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_keyDerivationFunction:I // field@5ec9 │ │ -42a2ea: 7140 8eb9 24b9 |009d: invoke-static {v4, v2, v9, v11}, Lorg/purple/smoke/Cryptography;.generateMacKey:([B[CII)Ljavax/crypto/SecretKey; // method@b98e │ │ -42a2f0: 0c02 |00a0: move-result-object v2 │ │ -42a2f2: 3802 4401 |00a1: if-eqz v2, 01e5 // +0144 │ │ -42a2f6: 7100 e0bc 0000 |00a3: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a2fc: 0c09 |00a6: move-result-object v9 │ │ -42a2fe: 54db c65e |00a7: iget-object v11, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ -42a302: 6e20 b0b9 b900 |00a9: invoke-virtual {v9, v11}, Lorg/purple/smoke/Cryptography;.setChatEncryptionPublicKeyAlgorithm:(Ljava/lang/String;)V // method@b9b0 │ │ -42a308: 7100 e0bc 0000 |00ac: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a30e: 0c09 |00af: move-result-object v9 │ │ -42a310: 6e20 b2b9 5900 |00b0: invoke-virtual {v9, v5}, Lorg/purple/smoke/Cryptography;.setChatEncryptionPublicKeyPair:(Ljava/security/KeyPair;)V // method@b9b2 │ │ -42a316: 7100 e0bc 0000 |00b3: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a31c: 0c09 |00b6: move-result-object v9 │ │ -42a31e: 6e20 b4b9 0900 |00b7: invoke-virtual {v9, v0}, Lorg/purple/smoke/Cryptography;.setChatSignaturePublicKeyPair:(Ljava/security/KeyPair;)V // method@b9b4 │ │ -42a324: 7100 e0bc 0000 |00ba: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a32a: 0c09 |00bd: move-result-object v9 │ │ -42a32c: 6e20 b5b9 1900 |00be: invoke-virtual {v9, v1}, Lorg/purple/smoke/Cryptography;.setEncryptionKey:(Ljavax/crypto/SecretKey;)V // method@b9b5 │ │ -42a332: 7100 e0bc 0000 |00c1: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a338: 0c01 |00c4: move-result-object v1 │ │ -42a33a: 6e20 b6b9 2100 |00c5: invoke-virtual {v1, v2}, Lorg/purple/smoke/Cryptography;.setMacKey:(Ljavax/crypto/SecretKey;)V // method@b9b6 │ │ -42a340: 54d1 cc5e |00c8: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a344: 7110 e1bc 0100 |00ca: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a34a: 0c01 |00cd: move-result-object v1 │ │ -42a34c: 1a02 4566 |00ce: const-string v2, "encryptionSalt" // string@6645 │ │ -42a350: 7120 c454 8300 |00d0: invoke-static {v3, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42a356: 0c09 |00d3: move-result-object v9 │ │ -42a358: 120b |00d4: const/4 v11, #int 0 // #0 │ │ -42a35a: 6e40 3eba 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@ba3e │ │ -42a360: 54d1 cc5e |00d8: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a364: 7110 e1bc 0100 |00da: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a36a: 0c01 |00dd: move-result-object v1 │ │ -42a36c: 1a02 1c7c |00de: const-string v2, "iterationCount" // string@7c1c │ │ -42a370: 52d9 c85e |00e0: iget v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_iterationCount:I // field@5ec8 │ │ -42a374: 7110 d55c 0900 |00e2: invoke-static {v9}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42a37a: 0c09 |00e5: move-result-object v9 │ │ -42a37c: 6e40 3eba 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@ba3e │ │ -42a382: 54d1 cc5e |00e9: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a386: 7110 e1bc 0100 |00eb: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a38c: 0c01 |00ee: move-result-object v1 │ │ -42a38e: 1a02 997c |00ef: const-string v2, "keyDerivationFunction" // string@7c99 │ │ -42a392: 52d9 c95e |00f1: iget v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_keyDerivationFunction:I // field@5ec9 │ │ -42a396: 7110 d55c 0900 |00f3: invoke-static {v9}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42a39c: 0c09 |00f6: move-result-object v9 │ │ -42a39e: 6e40 3eba 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@ba3e │ │ -42a3a4: 54d1 cc5e |00fa: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a3a8: 7110 e1bc 0100 |00fc: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a3ae: 0c01 |00ff: move-result-object v1 │ │ -42a3b0: 1a02 b889 |0100: const-string v2, "macSalt" // string@89b8 │ │ -42a3b4: 7120 c454 8400 |0102: invoke-static {v4, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42a3ba: 0c09 |0105: move-result-object v9 │ │ -42a3bc: 6e40 3eba 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@ba3e │ │ -42a3c2: 54d1 cc5e |0109: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a3c6: 7110 e1bc 0100 |010b: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a3cc: 0c01 |010e: move-result-object v1 │ │ -42a3ce: 7100 e0bc 0000 |010f: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a3d4: 0c02 |0112: move-result-object v2 │ │ -42a3d6: 1a09 cd93 |0113: const-string v9, "pki_chat_encryption_algorithm" // string@93cd │ │ -42a3da: 54dc c65e |0115: iget-object v12, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ -42a3de: 6e40 3eba 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@ba3e │ │ -42a3e4: 54d1 cc5e |011a: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a3e8: 7110 e1bc 0100 |011c: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a3ee: 0c01 |011f: move-result-object v1 │ │ -42a3f0: 7100 e0bc 0000 |0120: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a3f6: 0c02 |0123: move-result-object v2 │ │ -42a3f8: 1a09 ce93 |0124: const-string v9, "pki_chat_encryption_private_key" // string@93ce │ │ -42a3fc: 6e10 fd5d 0500 |0126: invoke-virtual {v5}, Ljava/security/KeyPair;.getPrivate:()Ljava/security/PrivateKey; // method@5dfd │ │ -42a402: 0c0c |0129: move-result-object v12 │ │ -42a404: 7210 375e 0c00 |012a: invoke-interface {v12}, Ljava/security/PrivateKey;.getEncoded:()[B // method@5e37 │ │ -42a40a: 0c0c |012d: move-result-object v12 │ │ -42a40c: 7120 c454 8c00 |012e: invoke-static {v12, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42a412: 0c0c |0131: move-result-object v12 │ │ -42a414: 6e40 3eba 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@ba3e │ │ -42a41a: 54d1 cc5e |0135: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a41e: 7110 e1bc 0100 |0137: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a424: 0c01 |013a: move-result-object v1 │ │ -42a426: 7100 e0bc 0000 |013b: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a42c: 0c02 |013e: move-result-object v2 │ │ -42a42e: 1a09 cf93 |013f: const-string v9, "pki_chat_encryption_public_key" // string@93cf │ │ -42a432: 6e10 fe5d 0500 |0141: invoke-virtual {v5}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfe │ │ -42a438: 0c05 |0144: move-result-object v5 │ │ -42a43a: 7210 3e5e 0500 |0145: invoke-interface {v5}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3e │ │ -42a440: 0c05 |0148: move-result-object v5 │ │ -42a442: 7120 c454 8500 |0149: invoke-static {v5, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42a448: 0c05 |014c: move-result-object v5 │ │ -42a44a: 6e40 3eba 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@ba3e │ │ -42a450: 54d1 cc5e |0150: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a454: 7110 e1bc 0100 |0152: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a45a: 0c01 |0155: move-result-object v1 │ │ -42a45c: 7100 e0bc 0000 |0156: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a462: 0c02 |0159: move-result-object v2 │ │ -42a464: 1a05 d093 |015a: const-string v5, "pki_chat_signature_algorithm" // string@93d0 │ │ -42a468: 54d9 cb5e |015c: iget-object v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ -42a46c: 6e40 3eba 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@ba3e │ │ -42a472: 54d1 cc5e |0161: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a476: 7110 e1bc 0100 |0163: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a47c: 0c01 |0166: move-result-object v1 │ │ -42a47e: 7100 e0bc 0000 |0167: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a484: 0c02 |016a: move-result-object v2 │ │ -42a486: 1a05 d193 |016b: const-string v5, "pki_chat_signature_private_key" // string@93d1 │ │ -42a48a: 6e10 fd5d 0000 |016d: invoke-virtual {v0}, Ljava/security/KeyPair;.getPrivate:()Ljava/security/PrivateKey; // method@5dfd │ │ -42a490: 0c09 |0170: move-result-object v9 │ │ -42a492: 7210 375e 0900 |0171: invoke-interface {v9}, Ljava/security/PrivateKey;.getEncoded:()[B // method@5e37 │ │ -42a498: 0c09 |0174: move-result-object v9 │ │ -42a49a: 7120 c454 8900 |0175: invoke-static {v9, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42a4a0: 0c09 |0178: move-result-object v9 │ │ -42a4a2: 6e40 3eba 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@ba3e │ │ -42a4a8: 54d1 cc5e |017c: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a4ac: 7110 e1bc 0100 |017e: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a4b2: 0c01 |0181: move-result-object v1 │ │ -42a4b4: 7100 e0bc 0000 |0182: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a4ba: 0c02 |0185: move-result-object v2 │ │ -42a4bc: 1a05 d293 |0186: const-string v5, "pki_chat_signature_public_key" // string@93d2 │ │ -42a4c0: 6e10 fe5d 0000 |0188: invoke-virtual {v0}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfe │ │ -42a4c6: 0c00 |018b: move-result-object v0 │ │ -42a4c8: 7210 3e5e 0000 |018c: invoke-interface {v0}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3e │ │ -42a4ce: 0c00 |018f: move-result-object v0 │ │ -42a4d0: 7120 c454 8000 |0190: invoke-static {v0, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42a4d6: 0c00 |0193: move-result-object v0 │ │ -42a4d8: 6e40 3eba 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@ba3e │ │ -42a4de: 7100 e0bc 0000 |0197: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a4e4: 0c00 |019a: move-result-object v0 │ │ -42a4e6: 6e20 a5b9 b000 |019b: invoke-virtual {v0, v11}, Lorg/purple/smoke/Cryptography;.prepareSipHashIds:(Ljava/lang/String;)Z // method@b9a5 │ │ -42a4ec: 0a00 |019e: move-result v0 │ │ -42a4ee: 7100 e0bc 0000 |019f: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a4f4: 0c01 |01a2: move-result-object v1 │ │ -42a4f6: 6e10 a6b9 0100 |01a3: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.prepareSipHashKeys:()Z // method@b9a6 │ │ -42a4fc: 0a01 |01a6: move-result v1 │ │ -42a4fe: 23a2 0f1c |01a7: new-array v2, v10, [[B // type@1c0f │ │ -42a502: 54d5 ca5e |01a9: iget-object v5, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ -42a506: 6e10 bc5c 0500 |01ab: invoke-virtual {v5}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -42a50c: 0c05 |01ae: move-result-object v5 │ │ -42a50e: 4d05 0208 |01af: aput-object v5, v2, v8 │ │ -42a512: 4d03 0207 |01b1: aput-object v3, v2, v7 │ │ -42a516: 4d04 0206 |01b3: aput-object v4, v2, v6 │ │ -42a51a: 7110 bcb9 0200 |01b5: invoke-static {v2}, Lorg/purple/smoke/Cryptography;.sha512:([[B)[B // method@b9bc │ │ -42a520: 0c02 |01b8: move-result-object v2 │ │ -42a522: 3800 1700 |01b9: if-eqz v0, 01d0 // +0017 │ │ -42a526: 3801 1500 |01bb: if-eqz v1, 01d0 // +0015 │ │ -42a52a: 3802 1300 |01bd: if-eqz v2, 01d0 // +0013 │ │ -42a52e: 54d0 cc5e |01bf: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a532: 7110 e1bc 0000 |01c1: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a538: 0c00 |01c4: move-result-object v0 │ │ -42a53a: 1a01 ad99 |01c5: const-string v1, "saltedPassword" // string@99ad │ │ -42a53e: 7120 c454 8200 |01c7: invoke-static {v2, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42a544: 0c02 |01ca: move-result-object v2 │ │ -42a546: 6e40 3eba 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@ba3e │ │ -42a54c: 2900 7900 |01ce: goto/16 0247 // +0079 │ │ -42a550: 3900 0700 |01d0: if-nez v0, 01d7 // +0007 │ │ -42a554: 1a00 bc94 |01d2: const-string v0, "prepareSipHashIds() failure" // string@94bc │ │ -42a558: 5bd0 c75e |01d4: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a55c: 2807 |01d6: goto 01dd // +0007 │ │ -42a55e: 3901 0600 |01d7: if-nez v1, 01dd // +0006 │ │ -42a562: 1a00 bf94 |01d9: const-string v0, "prepareSipHashKeys() failure" // string@94bf │ │ -42a566: 5bd0 c75e |01db: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a56a: 7100 e0bc 0000 |01dd: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a570: 0c00 |01e0: move-result-object v0 │ │ -42a572: 6e10 aeb9 0000 |01e1: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9ae │ │ -42a578: 2863 |01e4: goto 0247 // +0063 │ │ -42a57a: 1a00 216a |01e5: const-string v0, "generateMacKey() failure" // string@6a21 │ │ -42a57e: 5bd0 c75e |01e7: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a582: 7100 e0bc 0000 |01e9: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a588: 0c00 |01ec: move-result-object v0 │ │ -42a58a: 6e10 aeb9 0000 |01ed: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9ae │ │ -42a590: 2200 d40a |01f0: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ -42a594: 54d1 c75e |01f2: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a598: 7020 325c 1000 |01f4: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ -42a59e: 2700 |01f7: throw v0 │ │ -42a5a0: 1a00 0c6a |01f8: const-string v0, "generateEncryptionKey() failure" // string@6a0c │ │ -42a5a4: 5bd0 c75e |01fa: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a5a8: 7100 e0bc 0000 |01fc: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a5ae: 0c00 |01ff: move-result-object v0 │ │ -42a5b0: 6e10 aeb9 0000 |0200: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9ae │ │ -42a5b6: 2200 d40a |0203: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ -42a5ba: 54d1 c75e |0205: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a5be: 7020 325c 1000 |0207: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ -42a5c4: 2700 |020a: throw v0 │ │ -42a5c6: 1a00 aba1 |020b: const-string v0, "signature-key generatePrivatePublicKeyPair() failure" // string@a1ab │ │ -42a5ca: 5bd0 c75e |020d: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a5ce: 7100 e0bc 0000 |020f: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a5d4: 0c00 |0212: move-result-object v0 │ │ -42a5d6: 6e10 aeb9 0000 |0213: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9ae │ │ -42a5dc: 2200 d40a |0216: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ -42a5e0: 54d1 c75e |0218: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a5e4: 7020 325c 1000 |021a: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ -42a5ea: 2700 |021d: throw v0 │ │ -42a5ec: 1a00 3f66 |021e: const-string v0, "encryption-key generatePrivatePublicKeyPair() failure" // string@663f │ │ -42a5f0: 5bd0 c75e |0220: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a5f4: 7100 e0bc 0000 |0222: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a5fa: 0c00 |0225: move-result-object v0 │ │ -42a5fc: 6e10 aeb9 0000 |0226: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9ae │ │ -42a602: 2200 d40a |0229: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ -42a606: 54d1 c75e |022b: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a60a: 7020 325c 1000 |022d: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ -42a610: 2700 |0230: throw v0 │ │ -42a612: 0d00 |0231: move-exception v0 │ │ -42a614: 6e10 375c 0000 |0232: invoke-virtual {v0}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ -42a61a: 0c00 |0235: move-result-object v0 │ │ -42a61c: 6e10 cf5c 0000 |0236: invoke-virtual {v0}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@5ccf │ │ -42a622: 0c00 |0239: move-result-object v0 │ │ -42a624: 6e10 d35c 0000 |023a: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42a62a: 0c00 |023d: move-result-object v0 │ │ -42a62c: 5bd0 c75e |023e: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ -42a630: 7100 e0bc 0000 |0240: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a636: 0c00 |0243: move-result-object v0 │ │ -42a638: 6e10 aeb9 0000 |0244: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9ae │ │ -42a63e: 54d0 cc5e |0247: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ -42a642: 2201 f61a |0249: new-instance v1, Lorg/purple/smoke/Settings$3SingleShot$1; // type@1af6 │ │ -42a646: 7020 9bbc d100 |024b: invoke-direct {v1, v13}, Lorg/purple/smoke/Settings$3SingleShot$1;.:(Lorg/purple/smoke/Settings$3SingleShot;)V // method@bc9b │ │ -42a64c: 6e20 0bbd 1000 |024e: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd0b │ │ -42a652: 1a00 0000 |0251: const-string v0, "" // string@0000 │ │ -42a656: 5bd0 ca5e |0253: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ -42a65a: 0e00 |0255: return-void │ │ +42a19c: |[42a19c] org.purple.smoke.Settings$3SingleShot.run:()V │ │ +42a1ac: 1a00 9846 |0000: const-string v0, "Rainbow" // string@4698 │ │ +42a1b0: 1a01 6b46 |0002: const-string v1, "RSA" // string@466b │ │ +42a1b4: 1a02 e717 |0004: const-string v2, "EC" // string@17e7 │ │ +42a1b8: 1303 2000 |0006: const/16 v3, #int 32 // #20 │ │ +42a1bc: 7110 adb9 0300 |0008: invoke-static {v3}, Lorg/purple/smoke/Cryptography;.randomBytes:(I)[B // method@b9ad │ │ +42a1c2: 0c03 |000b: move-result-object v3 │ │ +42a1c4: 1304 4000 |000c: const/16 v4, #int 64 // #40 │ │ +42a1c8: 7110 adb9 0400 |000e: invoke-static {v4}, Lorg/purple/smoke/Cryptography;.randomBytes:(I)[B // method@b9ad │ │ +42a1ce: 0c04 |0011: move-result-object v4 │ │ +42a1d0: 54d5 cc5e |0012: iget-object v5, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a1d4: 7110 e1bc 0500 |0014: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a1da: 0c05 |0017: move-result-object v5 │ │ +42a1dc: 6e10 22ba 0500 |0018: invoke-virtual {v5}, Lorg/purple/smoke/Database;.reset:()V // method@ba22 │ │ +42a1e2: 54d5 c65e |001b: iget-object v5, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ +42a1e6: 1a06 a506 |001d: const-string v6, "12, 68" // string@06a5 │ │ +42a1ea: 6e20 b65c 6500 |001f: invoke-virtual {v5, v6}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +42a1f0: 0a05 |0022: move-result v5 │ │ +42a1f2: 1226 |0023: const/4 v6, #int 2 // #2 │ │ +42a1f4: 1217 |0024: const/4 v7, #int 1 // #1 │ │ +42a1f6: 1208 |0025: const/4 v8, #int 0 // #0 │ │ +42a1f8: 3805 0400 |0026: if-eqz v5, 002a // +0004 │ │ +42a1fc: 1215 |0028: const/4 v5, #int 1 // #1 │ │ +42a1fe: 280e |0029: goto 0037 // +000e │ │ +42a200: 54d5 c65e |002a: iget-object v5, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ +42a204: 1a09 af06 |002c: const-string v9, "13, 118" // string@06af │ │ +42a208: 6e20 b65c 9500 |002e: invoke-virtual {v5, v9}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +42a20e: 0a05 |0031: move-result v5 │ │ +42a210: 3805 0400 |0032: if-eqz v5, 0036 // +0004 │ │ +42a214: 1225 |0034: const/4 v5, #int 2 // #2 │ │ +42a216: 2802 |0035: goto 0037 // +0002 │ │ +42a218: 1205 |0036: const/4 v5, #int 0 // #0 │ │ +42a21a: 54d9 c65e |0037: iget-object v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ +42a21e: 620a bb53 |0039: sget-object v10, Lorg/purple/smoke/Cryptography;.PKI_ENCRYPTION_KEY_SIZES:[I // field@53bb │ │ +42a222: 440a 0a08 |003b: aget v10, v10, v8 │ │ +42a226: 7130 8fb9 a905 |003d: invoke-static {v9, v10, v5}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ +42a22c: 0c05 |0040: move-result-object v5 │ │ +42a22e: 3805 dd01 |0041: if-eqz v5, 021e // +01dd │ │ +42a232: 54d9 cb5e |0043: iget-object v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ +42a236: 6e20 b85c 2900 |0045: invoke-virtual {v9, v2}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42a23c: 0a09 |0048: move-result v9 │ │ +42a23e: 123a |0049: const/4 v10, #int 3 // #3 │ │ +42a240: 3809 0b00 |004a: if-eqz v9, 0055 // +000b │ │ +42a244: 6200 bf53 |004c: sget-object v0, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ +42a248: 4400 0008 |004e: aget v0, v0, v8 │ │ +42a24c: 7130 8fb9 0208 |0050: invoke-static {v2, v0, v8}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ +42a252: 0c00 |0053: move-result-object v0 │ │ +42a254: 282d |0054: goto 0081 // +002d │ │ +42a256: 54d2 cb5e |0055: iget-object v2, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ +42a25a: 6e20 b85c 1200 |0057: invoke-virtual {v2, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42a260: 0a02 |005a: move-result v2 │ │ +42a262: 3802 0b00 |005b: if-eqz v2, 0066 // +000b │ │ +42a266: 6200 bf53 |005d: sget-object v0, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ +42a26a: 4400 0007 |005f: aget v0, v0, v7 │ │ +42a26e: 7130 8fb9 0108 |0061: invoke-static {v1, v0, v8}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ +42a274: 0c00 |0064: move-result-object v0 │ │ +42a276: 281c |0065: goto 0081 // +001c │ │ +42a278: 54d1 cb5e |0066: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ +42a27c: 6e20 b85c 0100 |0068: invoke-virtual {v1, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42a282: 0a01 |006b: move-result v1 │ │ +42a284: 3801 0b00 |006c: if-eqz v1, 0077 // +000b │ │ +42a288: 6201 bf53 |006e: sget-object v1, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ +42a28c: 4401 0106 |0070: aget v1, v1, v6 │ │ +42a290: 7130 8fb9 1008 |0072: invoke-static {v0, v1, v8}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ +42a296: 0c00 |0075: move-result-object v0 │ │ +42a298: 280b |0076: goto 0081 // +000b │ │ +42a29a: 54d0 cb5e |0077: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ +42a29e: 6201 bf53 |0079: sget-object v1, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ +42a2a2: 4401 010a |007b: aget v1, v1, v10 │ │ +42a2a6: 7130 8fb9 1008 |007d: invoke-static {v0, v1, v8}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ +42a2ac: 0c00 |0080: move-result-object v0 │ │ +42a2ae: 3800 8a01 |0081: if-eqz v0, 020b // +018a │ │ +42a2b2: 54d1 ca5e |0083: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ +42a2b6: 6e10 ce5c 0100 |0085: invoke-virtual {v1}, Ljava/lang/String;.toCharArray:()[C // method@5cce │ │ +42a2bc: 0c01 |0088: move-result-object v1 │ │ +42a2be: 52d2 c85e |0089: iget v2, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_iterationCount:I // field@5ec8 │ │ +42a2c2: 52d9 c95e |008b: iget v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_keyDerivationFunction:I // field@5ec9 │ │ +42a2c6: 7140 8bb9 1392 |008d: invoke-static {v3, v1, v2, v9}, Lorg/purple/smoke/Cryptography;.generateEncryptionKey:([B[CII)Ljavax/crypto/SecretKey; // method@b98b │ │ +42a2cc: 0c01 |0090: move-result-object v1 │ │ +42a2ce: 3803 6701 |0091: if-eqz v3, 01f8 // +0167 │ │ +42a2d2: 54d2 ca5e |0093: iget-object v2, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ +42a2d6: 6e10 ce5c 0200 |0095: invoke-virtual {v2}, Ljava/lang/String;.toCharArray:()[C // method@5cce │ │ +42a2dc: 0c02 |0098: move-result-object v2 │ │ +42a2de: 52d9 c85e |0099: iget v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_iterationCount:I // field@5ec8 │ │ +42a2e2: 52db c95e |009b: iget v11, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_keyDerivationFunction:I // field@5ec9 │ │ +42a2e6: 7140 8eb9 24b9 |009d: invoke-static {v4, v2, v9, v11}, Lorg/purple/smoke/Cryptography;.generateMacKey:([B[CII)Ljavax/crypto/SecretKey; // method@b98e │ │ +42a2ec: 0c02 |00a0: move-result-object v2 │ │ +42a2ee: 3802 4401 |00a1: if-eqz v2, 01e5 // +0144 │ │ +42a2f2: 7100 e0bc 0000 |00a3: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a2f8: 0c09 |00a6: move-result-object v9 │ │ +42a2fa: 54db c65e |00a7: iget-object v11, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ +42a2fe: 6e20 b0b9 b900 |00a9: invoke-virtual {v9, v11}, Lorg/purple/smoke/Cryptography;.setChatEncryptionPublicKeyAlgorithm:(Ljava/lang/String;)V // method@b9b0 │ │ +42a304: 7100 e0bc 0000 |00ac: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a30a: 0c09 |00af: move-result-object v9 │ │ +42a30c: 6e20 b2b9 5900 |00b0: invoke-virtual {v9, v5}, Lorg/purple/smoke/Cryptography;.setChatEncryptionPublicKeyPair:(Ljava/security/KeyPair;)V // method@b9b2 │ │ +42a312: 7100 e0bc 0000 |00b3: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a318: 0c09 |00b6: move-result-object v9 │ │ +42a31a: 6e20 b4b9 0900 |00b7: invoke-virtual {v9, v0}, Lorg/purple/smoke/Cryptography;.setChatSignaturePublicKeyPair:(Ljava/security/KeyPair;)V // method@b9b4 │ │ +42a320: 7100 e0bc 0000 |00ba: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a326: 0c09 |00bd: move-result-object v9 │ │ +42a328: 6e20 b5b9 1900 |00be: invoke-virtual {v9, v1}, Lorg/purple/smoke/Cryptography;.setEncryptionKey:(Ljavax/crypto/SecretKey;)V // method@b9b5 │ │ +42a32e: 7100 e0bc 0000 |00c1: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a334: 0c01 |00c4: move-result-object v1 │ │ +42a336: 6e20 b6b9 2100 |00c5: invoke-virtual {v1, v2}, Lorg/purple/smoke/Cryptography;.setMacKey:(Ljavax/crypto/SecretKey;)V // method@b9b6 │ │ +42a33c: 54d1 cc5e |00c8: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a340: 7110 e1bc 0100 |00ca: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a346: 0c01 |00cd: move-result-object v1 │ │ +42a348: 1a02 4566 |00ce: const-string v2, "encryptionSalt" // string@6645 │ │ +42a34c: 7120 c454 8300 |00d0: invoke-static {v3, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42a352: 0c09 |00d3: move-result-object v9 │ │ +42a354: 120b |00d4: const/4 v11, #int 0 // #0 │ │ +42a356: 6e40 3eba 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@ba3e │ │ +42a35c: 54d1 cc5e |00d8: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a360: 7110 e1bc 0100 |00da: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a366: 0c01 |00dd: move-result-object v1 │ │ +42a368: 1a02 1c7c |00de: const-string v2, "iterationCount" // string@7c1c │ │ +42a36c: 52d9 c85e |00e0: iget v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_iterationCount:I // field@5ec8 │ │ +42a370: 7110 d55c 0900 |00e2: invoke-static {v9}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42a376: 0c09 |00e5: move-result-object v9 │ │ +42a378: 6e40 3eba 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@ba3e │ │ +42a37e: 54d1 cc5e |00e9: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a382: 7110 e1bc 0100 |00eb: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a388: 0c01 |00ee: move-result-object v1 │ │ +42a38a: 1a02 997c |00ef: const-string v2, "keyDerivationFunction" // string@7c99 │ │ +42a38e: 52d9 c95e |00f1: iget v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_keyDerivationFunction:I // field@5ec9 │ │ +42a392: 7110 d55c 0900 |00f3: invoke-static {v9}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42a398: 0c09 |00f6: move-result-object v9 │ │ +42a39a: 6e40 3eba 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@ba3e │ │ +42a3a0: 54d1 cc5e |00fa: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a3a4: 7110 e1bc 0100 |00fc: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a3aa: 0c01 |00ff: move-result-object v1 │ │ +42a3ac: 1a02 b889 |0100: const-string v2, "macSalt" // string@89b8 │ │ +42a3b0: 7120 c454 8400 |0102: invoke-static {v4, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42a3b6: 0c09 |0105: move-result-object v9 │ │ +42a3b8: 6e40 3eba 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@ba3e │ │ +42a3be: 54d1 cc5e |0109: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a3c2: 7110 e1bc 0100 |010b: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a3c8: 0c01 |010e: move-result-object v1 │ │ +42a3ca: 7100 e0bc 0000 |010f: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a3d0: 0c02 |0112: move-result-object v2 │ │ +42a3d2: 1a09 cd93 |0113: const-string v9, "pki_chat_encryption_algorithm" // string@93cd │ │ +42a3d6: 54dc c65e |0115: iget-object v12, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ec6 │ │ +42a3da: 6e40 3eba 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@ba3e │ │ +42a3e0: 54d1 cc5e |011a: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a3e4: 7110 e1bc 0100 |011c: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a3ea: 0c01 |011f: move-result-object v1 │ │ +42a3ec: 7100 e0bc 0000 |0120: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a3f2: 0c02 |0123: move-result-object v2 │ │ +42a3f4: 1a09 ce93 |0124: const-string v9, "pki_chat_encryption_private_key" // string@93ce │ │ +42a3f8: 6e10 fd5d 0500 |0126: invoke-virtual {v5}, Ljava/security/KeyPair;.getPrivate:()Ljava/security/PrivateKey; // method@5dfd │ │ +42a3fe: 0c0c |0129: move-result-object v12 │ │ +42a400: 7210 375e 0c00 |012a: invoke-interface {v12}, Ljava/security/PrivateKey;.getEncoded:()[B // method@5e37 │ │ +42a406: 0c0c |012d: move-result-object v12 │ │ +42a408: 7120 c454 8c00 |012e: invoke-static {v12, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42a40e: 0c0c |0131: move-result-object v12 │ │ +42a410: 6e40 3eba 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@ba3e │ │ +42a416: 54d1 cc5e |0135: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a41a: 7110 e1bc 0100 |0137: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a420: 0c01 |013a: move-result-object v1 │ │ +42a422: 7100 e0bc 0000 |013b: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a428: 0c02 |013e: move-result-object v2 │ │ +42a42a: 1a09 cf93 |013f: const-string v9, "pki_chat_encryption_public_key" // string@93cf │ │ +42a42e: 6e10 fe5d 0500 |0141: invoke-virtual {v5}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfe │ │ +42a434: 0c05 |0144: move-result-object v5 │ │ +42a436: 7210 3e5e 0500 |0145: invoke-interface {v5}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3e │ │ +42a43c: 0c05 |0148: move-result-object v5 │ │ +42a43e: 7120 c454 8500 |0149: invoke-static {v5, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42a444: 0c05 |014c: move-result-object v5 │ │ +42a446: 6e40 3eba 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@ba3e │ │ +42a44c: 54d1 cc5e |0150: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a450: 7110 e1bc 0100 |0152: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a456: 0c01 |0155: move-result-object v1 │ │ +42a458: 7100 e0bc 0000 |0156: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a45e: 0c02 |0159: move-result-object v2 │ │ +42a460: 1a05 d093 |015a: const-string v5, "pki_chat_signature_algorithm" // string@93d0 │ │ +42a464: 54d9 cb5e |015c: iget-object v9, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5ecb │ │ +42a468: 6e40 3eba 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@ba3e │ │ +42a46e: 54d1 cc5e |0161: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a472: 7110 e1bc 0100 |0163: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a478: 0c01 |0166: move-result-object v1 │ │ +42a47a: 7100 e0bc 0000 |0167: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a480: 0c02 |016a: move-result-object v2 │ │ +42a482: 1a05 d193 |016b: const-string v5, "pki_chat_signature_private_key" // string@93d1 │ │ +42a486: 6e10 fd5d 0000 |016d: invoke-virtual {v0}, Ljava/security/KeyPair;.getPrivate:()Ljava/security/PrivateKey; // method@5dfd │ │ +42a48c: 0c09 |0170: move-result-object v9 │ │ +42a48e: 7210 375e 0900 |0171: invoke-interface {v9}, Ljava/security/PrivateKey;.getEncoded:()[B // method@5e37 │ │ +42a494: 0c09 |0174: move-result-object v9 │ │ +42a496: 7120 c454 8900 |0175: invoke-static {v9, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42a49c: 0c09 |0178: move-result-object v9 │ │ +42a49e: 6e40 3eba 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@ba3e │ │ +42a4a4: 54d1 cc5e |017c: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a4a8: 7110 e1bc 0100 |017e: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a4ae: 0c01 |0181: move-result-object v1 │ │ +42a4b0: 7100 e0bc 0000 |0182: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a4b6: 0c02 |0185: move-result-object v2 │ │ +42a4b8: 1a05 d293 |0186: const-string v5, "pki_chat_signature_public_key" // string@93d2 │ │ +42a4bc: 6e10 fe5d 0000 |0188: invoke-virtual {v0}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfe │ │ +42a4c2: 0c00 |018b: move-result-object v0 │ │ +42a4c4: 7210 3e5e 0000 |018c: invoke-interface {v0}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3e │ │ +42a4ca: 0c00 |018f: move-result-object v0 │ │ +42a4cc: 7120 c454 8000 |0190: invoke-static {v0, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42a4d2: 0c00 |0193: move-result-object v0 │ │ +42a4d4: 6e40 3eba 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@ba3e │ │ +42a4da: 7100 e0bc 0000 |0197: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a4e0: 0c00 |019a: move-result-object v0 │ │ +42a4e2: 6e20 a5b9 b000 |019b: invoke-virtual {v0, v11}, Lorg/purple/smoke/Cryptography;.prepareSipHashIds:(Ljava/lang/String;)Z // method@b9a5 │ │ +42a4e8: 0a00 |019e: move-result v0 │ │ +42a4ea: 7100 e0bc 0000 |019f: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a4f0: 0c01 |01a2: move-result-object v1 │ │ +42a4f2: 6e10 a6b9 0100 |01a3: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.prepareSipHashKeys:()Z // method@b9a6 │ │ +42a4f8: 0a01 |01a6: move-result v1 │ │ +42a4fa: 23a2 0f1c |01a7: new-array v2, v10, [[B // type@1c0f │ │ +42a4fe: 54d5 ca5e |01a9: iget-object v5, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ +42a502: 6e10 bc5c 0500 |01ab: invoke-virtual {v5}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +42a508: 0c05 |01ae: move-result-object v5 │ │ +42a50a: 4d05 0208 |01af: aput-object v5, v2, v8 │ │ +42a50e: 4d03 0207 |01b1: aput-object v3, v2, v7 │ │ +42a512: 4d04 0206 |01b3: aput-object v4, v2, v6 │ │ +42a516: 7110 bcb9 0200 |01b5: invoke-static {v2}, Lorg/purple/smoke/Cryptography;.sha512:([[B)[B // method@b9bc │ │ +42a51c: 0c02 |01b8: move-result-object v2 │ │ +42a51e: 3800 1700 |01b9: if-eqz v0, 01d0 // +0017 │ │ +42a522: 3801 1500 |01bb: if-eqz v1, 01d0 // +0015 │ │ +42a526: 3802 1300 |01bd: if-eqz v2, 01d0 // +0013 │ │ +42a52a: 54d0 cc5e |01bf: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a52e: 7110 e1bc 0000 |01c1: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a534: 0c00 |01c4: move-result-object v0 │ │ +42a536: 1a01 ad99 |01c5: const-string v1, "saltedPassword" // string@99ad │ │ +42a53a: 7120 c454 8200 |01c7: invoke-static {v2, v8}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42a540: 0c02 |01ca: move-result-object v2 │ │ +42a542: 6e40 3eba 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@ba3e │ │ +42a548: 2900 7900 |01ce: goto/16 0247 // +0079 │ │ +42a54c: 3900 0700 |01d0: if-nez v0, 01d7 // +0007 │ │ +42a550: 1a00 bc94 |01d2: const-string v0, "prepareSipHashIds() failure" // string@94bc │ │ +42a554: 5bd0 c75e |01d4: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a558: 2807 |01d6: goto 01dd // +0007 │ │ +42a55a: 3901 0600 |01d7: if-nez v1, 01dd // +0006 │ │ +42a55e: 1a00 bf94 |01d9: const-string v0, "prepareSipHashKeys() failure" // string@94bf │ │ +42a562: 5bd0 c75e |01db: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a566: 7100 e0bc 0000 |01dd: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a56c: 0c00 |01e0: move-result-object v0 │ │ +42a56e: 6e10 aeb9 0000 |01e1: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9ae │ │ +42a574: 2863 |01e4: goto 0247 // +0063 │ │ +42a576: 1a00 216a |01e5: const-string v0, "generateMacKey() failure" // string@6a21 │ │ +42a57a: 5bd0 c75e |01e7: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a57e: 7100 e0bc 0000 |01e9: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a584: 0c00 |01ec: move-result-object v0 │ │ +42a586: 6e10 aeb9 0000 |01ed: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9ae │ │ +42a58c: 2200 d40a |01f0: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ +42a590: 54d1 c75e |01f2: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a594: 7020 325c 1000 |01f4: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ +42a59a: 2700 |01f7: throw v0 │ │ +42a59c: 1a00 0c6a |01f8: const-string v0, "generateEncryptionKey() failure" // string@6a0c │ │ +42a5a0: 5bd0 c75e |01fa: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a5a4: 7100 e0bc 0000 |01fc: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a5aa: 0c00 |01ff: move-result-object v0 │ │ +42a5ac: 6e10 aeb9 0000 |0200: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9ae │ │ +42a5b2: 2200 d40a |0203: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ +42a5b6: 54d1 c75e |0205: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a5ba: 7020 325c 1000 |0207: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ +42a5c0: 2700 |020a: throw v0 │ │ +42a5c2: 1a00 aba1 |020b: const-string v0, "signature-key generatePrivatePublicKeyPair() failure" // string@a1ab │ │ +42a5c6: 5bd0 c75e |020d: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a5ca: 7100 e0bc 0000 |020f: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a5d0: 0c00 |0212: move-result-object v0 │ │ +42a5d2: 6e10 aeb9 0000 |0213: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9ae │ │ +42a5d8: 2200 d40a |0216: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ +42a5dc: 54d1 c75e |0218: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a5e0: 7020 325c 1000 |021a: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ +42a5e6: 2700 |021d: throw v0 │ │ +42a5e8: 1a00 3f66 |021e: const-string v0, "encryption-key generatePrivatePublicKeyPair() failure" // string@663f │ │ +42a5ec: 5bd0 c75e |0220: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a5f0: 7100 e0bc 0000 |0222: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a5f6: 0c00 |0225: move-result-object v0 │ │ +42a5f8: 6e10 aeb9 0000 |0226: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9ae │ │ +42a5fe: 2200 d40a |0229: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ +42a602: 54d1 c75e |022b: iget-object v1, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a606: 7020 325c 1000 |022d: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ +42a60c: 2700 |0230: throw v0 │ │ +42a60e: 0d00 |0231: move-exception v0 │ │ +42a610: 6e10 375c 0000 |0232: invoke-virtual {v0}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ +42a616: 0c00 |0235: move-result-object v0 │ │ +42a618: 6e10 cf5c 0000 |0236: invoke-virtual {v0}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@5ccf │ │ +42a61e: 0c00 |0239: move-result-object v0 │ │ +42a620: 6e10 d35c 0000 |023a: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42a626: 0c00 |023d: move-result-object v0 │ │ +42a628: 5bd0 c75e |023e: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_error:Ljava/lang/String; // field@5ec7 │ │ +42a62c: 7100 e0bc 0000 |0240: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a632: 0c00 |0243: move-result-object v0 │ │ +42a634: 6e10 aeb9 0000 |0244: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.reset:()V // method@b9ae │ │ +42a63a: 54d0 cc5e |0247: iget-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ecc │ │ +42a63e: 2201 f61a |0249: new-instance v1, Lorg/purple/smoke/Settings$3SingleShot$1; // type@1af6 │ │ +42a642: 7020 9bbc d100 |024b: invoke-direct {v1, v13}, Lorg/purple/smoke/Settings$3SingleShot$1;.:(Lorg/purple/smoke/Settings$3SingleShot;)V // method@bc9b │ │ +42a648: 6e20 0bbd 1000 |024e: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd0b │ │ +42a64e: 1a00 0000 |0251: const-string v0, "" // string@0000 │ │ +42a652: 5bd0 ca5e |0253: iput-object v0, v13, Lorg/purple/smoke/Settings$3SingleShot;.m_password:Ljava/lang/String; // field@5eca │ │ +42a656: 0e00 |0255: return-void │ │ catches : 1 │ │ 0x001b - 0x0231 │ │ Ljava/lang/Exception; -> 0x0231 │ │ positions : │ │ 0x0008 line=1385 │ │ 0x000e line=1387 │ │ 0x0012 line=1388 │ │ @@ -737795,20 +737794,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 │ │ -42a738: |[42a738] org.purple.smoke.Settings$40.:(Lorg/purple/smoke/Settings;II)V │ │ -42a748: 5b01 d25e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a74c: 5902 d35e |0002: iput v2, v0, Lorg/purple/smoke/Settings$40;.val$groupId:I // field@5ed3 │ │ -42a750: 5903 d45e |0004: iput v3, v0, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ -42a754: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42a75a: 0e00 |0009: return-void │ │ +42a734: |[42a734] org.purple.smoke.Settings$40.:(Lorg/purple/smoke/Settings;II)V │ │ +42a744: 5b01 d25e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a748: 5902 d35e |0002: iput v2, v0, Lorg/purple/smoke/Settings$40;.val$groupId:I // field@5ed3 │ │ +42a74c: 5903 d45e |0004: iput v3, v0, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ +42a750: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42a756: 0e00 |0009: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3755 │ │ 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 │ │ @@ -737820,131 +737819,131 @@ │ │ type : '(Landroid/content/DialogInterface;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 238 16-bit code units │ │ -42a75c: |[42a75c] org.purple.smoke.Settings$40.onCancel:(Landroid/content/DialogInterface;)V │ │ -42a76c: 5245 d35e |0000: iget v5, v4, Lorg/purple/smoke/Settings$40;.val$groupId:I // field@5ed3 │ │ -42a770: 1a00 97a5 |0002: const-string v0, "true" // string@a597 │ │ -42a774: 1a01 c363 |0004: const-string v1, "dialog_accepted" // string@63c3 │ │ -42a778: 3805 8400 |0006: if-eqz v5, 008a // +0084 │ │ -42a77c: 1212 |0008: const/4 v2, #int 1 // #1 │ │ -42a77e: 3225 5b00 |0009: if-eq v5, v2, 0064 // +005b │ │ -42a782: 1222 |000b: const/4 v2, #int 2 // #2 │ │ -42a784: 3225 3100 |000c: if-eq v5, v2, 003d // +0031 │ │ -42a788: 1230 |000e: const/4 v0, #int 3 // #3 │ │ -42a78a: 3205 0400 |000f: if-eq v5, v0, 0013 // +0004 │ │ -42a78e: 2900 dc00 |0011: goto/16 00ed // +00dc │ │ -42a792: 7100 74bd 0000 |0013: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42a798: 0c05 |0016: move-result-object v5 │ │ -42a79a: 1a00 8ea0 |0017: const-string v0, "settings_participant_name_input" // string@a08e │ │ -42a79e: 6e20 75bd 0500 |0019: invoke-virtual {v5, v0}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd75 │ │ -42a7a4: 0c05 |001c: move-result-object v5 │ │ -42a7a6: 5441 d25e |001d: iget-object v1, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a7aa: 7110 e1bc 0100 |001f: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a7b0: 0c01 |0022: move-result-object v1 │ │ -42a7b2: 7100 e0bc 0000 |0023: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a7b8: 0c02 |0026: move-result-object v2 │ │ -42a7ba: 5243 d45e |0027: iget v3, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ -42a7be: 6e40 3cba 2135 |0029: invoke-virtual {v1, v2, v5, v3}, Lorg/purple/smoke/Database;.writeParticipantName:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;I)Z // method@ba3c │ │ -42a7c4: 0a05 |002c: move-result v5 │ │ -42a7c6: 3805 0700 |002d: if-eqz v5, 0034 // +0007 │ │ -42a7ca: 5445 d25e |002f: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a7ce: 7110 dabc 0500 |0031: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcda │ │ -42a7d4: 7100 74bd 0000 |0034: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42a7da: 0c05 |0037: move-result-object v5 │ │ -42a7dc: 6e20 82bd 0500 |0038: invoke-virtual {v5, v0}, Lorg/purple/smoke/State;.removeKey:(Ljava/lang/String;)V // method@bd82 │ │ -42a7e2: 2900 b200 |003b: goto/16 00ed // +00b2 │ │ -42a7e6: 7100 74bd 0000 |003d: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42a7ec: 0c05 |0040: move-result-object v5 │ │ -42a7ee: 6e20 75bd 1500 |0041: invoke-virtual {v5, v1}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd75 │ │ -42a7f4: 0c05 |0044: move-result-object v5 │ │ -42a7f6: 6e20 b85c 0500 |0045: invoke-virtual {v5, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42a7fc: 0a05 |0048: move-result v5 │ │ -42a7fe: 3805 a400 |0049: if-eqz v5, 00ed // +00a4 │ │ -42a802: 5445 d25e |004b: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a806: 7110 e1bc 0500 |004d: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a80c: 0c05 |0050: move-result-object v5 │ │ -42a80e: 5240 d45e |0051: iget v0, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ -42a812: 7110 d55c 0000 |0053: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42a818: 0c00 |0056: move-result-object v0 │ │ -42a81a: 6e20 efb9 0500 |0057: invoke-virtual {v5, v0}, Lorg/purple/smoke/Database;.deletePublicKeys:(Ljava/lang/String;)Z // method@b9ef │ │ -42a820: 0a05 |005a: move-result v5 │ │ -42a822: 3805 9200 |005b: if-eqz v5, 00ed // +0092 │ │ -42a826: 5445 d25e |005d: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a82a: 7110 dabc 0500 |005f: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcda │ │ -42a830: 2900 8b00 |0062: goto/16 00ed // +008b │ │ -42a834: 7100 74bd 0000 |0064: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42a83a: 0c05 |0067: move-result-object v5 │ │ -42a83c: 6e20 75bd 1500 |0068: invoke-virtual {v5, v1}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd75 │ │ -42a842: 0c05 |006b: move-result-object v5 │ │ -42a844: 6e20 b85c 0500 |006c: invoke-virtual {v5, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42a84a: 0a05 |006f: move-result v5 │ │ -42a84c: 3805 7d00 |0070: if-eqz v5, 00ed // +007d │ │ -42a850: 5445 d25e |0072: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a854: 7110 e1bc 0500 |0074: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a85a: 0c05 |0077: move-result-object v5 │ │ -42a85c: 5240 d45e |0078: iget v0, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ -42a860: 7110 d55c 0000 |007a: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42a866: 0c00 |007d: move-result-object v0 │ │ -42a868: 6e20 ebb9 0500 |007e: invoke-virtual {v5, v0}, Lorg/purple/smoke/Database;.deleteFiascoKeys:(Ljava/lang/String;)Z // method@b9eb │ │ -42a86e: 0a05 |0081: move-result v5 │ │ -42a870: 3805 6b00 |0082: if-eqz v5, 00ed // +006b │ │ -42a874: 5445 d25e |0084: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a878: 7110 dabc 0500 |0086: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcda │ │ -42a87e: 2864 |0089: goto 00ed // +0064 │ │ -42a880: 7100 74bd 0000 |008a: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42a886: 0c05 |008d: move-result-object v5 │ │ -42a888: 6e20 75bd 1500 |008e: invoke-virtual {v5, v1}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd75 │ │ -42a88e: 0c05 |0091: move-result-object v5 │ │ -42a890: 6e20 b85c 0500 |0092: invoke-virtual {v5, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42a896: 0a05 |0095: move-result v5 │ │ -42a898: 3805 5700 |0096: if-eqz v5, 00ed // +0057 │ │ -42a89c: 5445 d25e |0098: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a8a0: 7110 e1bc 0500 |009a: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a8a6: 0c05 |009d: move-result-object v5 │ │ -42a8a8: 5240 d45e |009e: iget v0, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ -42a8ac: 7110 d55c 0000 |00a0: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42a8b2: 0c00 |00a3: move-result-object v0 │ │ -42a8b4: 1a01 d6a1 |00a4: const-string v1, "siphash_ids" // string@a1d6 │ │ -42a8b8: 6e30 eab9 0501 |00a6: invoke-virtual {v5, v0, v1}, Lorg/purple/smoke/Database;.deleteEntry:(Ljava/lang/String;Ljava/lang/String;)Z // method@b9ea │ │ -42a8be: 0a05 |00a9: move-result v5 │ │ -42a8c0: 3805 4300 |00aa: if-eqz v5, 00ed // +0043 │ │ -42a8c4: 7100 74bd 0000 |00ac: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42a8ca: 0c05 |00af: move-result-object v5 │ │ -42a8cc: 5240 d45e |00b0: iget v0, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ -42a8d0: 6e20 80bd 0500 |00b2: invoke-virtual {v5, v0}, Lorg/purple/smoke/State;.removeChatCheckBoxOid:(I)V // method@bd80 │ │ -42a8d6: 7100 74bd 0000 |00b5: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42a8dc: 0c05 |00b8: move-result-object v5 │ │ -42a8de: 1a00 a98a |00b9: const-string v0, "member_chat_oid" // string@8aa9 │ │ -42a8e2: 1a01 0000 |00bb: const-string v1, "" // string@0000 │ │ -42a8e6: 6e30 90bd 0501 |00bd: invoke-virtual {v5, v0, v1}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd90 │ │ -42a8ec: 7100 74bd 0000 |00c0: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42a8f2: 0c05 |00c3: move-result-object v5 │ │ -42a8f4: 1a02 ab8a |00c4: const-string v2, "member_chat_siphash_id" // string@8aab │ │ -42a8f8: 6e30 90bd 2501 |00c6: invoke-virtual {v5, v2, v1}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd90 │ │ -42a8fe: 5445 d25e |00c9: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a902: 6e10 f3bc 0500 |00cb: invoke-virtual {v5}, Lorg/purple/smoke/Settings;.invalidateOptionsMenu:()V // method@bcf3 │ │ -42a908: 5445 d25e |00ce: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a90c: 7110 e1bc 0500 |00d0: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a912: 0c05 |00d3: move-result-object v5 │ │ -42a914: 7100 e0bc 0000 |00d4: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a91a: 0c03 |00d7: move-result-object v3 │ │ -42a91c: 6e40 3eba 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@ba3e │ │ -42a922: 5445 d25e |00db: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a926: 7110 e1bc 0500 |00dd: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42a92c: 0c05 |00e0: move-result-object v5 │ │ -42a92e: 7100 e0bc 0000 |00e1: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42a934: 0c00 |00e4: move-result-object v0 │ │ -42a936: 6e40 3eba 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@ba3e │ │ -42a93c: 5445 d25e |00e8: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ -42a940: 7110 dabc 0500 |00ea: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcda │ │ -42a946: 0e00 |00ed: return-void │ │ +42a758: |[42a758] org.purple.smoke.Settings$40.onCancel:(Landroid/content/DialogInterface;)V │ │ +42a768: 5245 d35e |0000: iget v5, v4, Lorg/purple/smoke/Settings$40;.val$groupId:I // field@5ed3 │ │ +42a76c: 1a00 97a5 |0002: const-string v0, "true" // string@a597 │ │ +42a770: 1a01 c363 |0004: const-string v1, "dialog_accepted" // string@63c3 │ │ +42a774: 3805 8400 |0006: if-eqz v5, 008a // +0084 │ │ +42a778: 1212 |0008: const/4 v2, #int 1 // #1 │ │ +42a77a: 3225 5b00 |0009: if-eq v5, v2, 0064 // +005b │ │ +42a77e: 1222 |000b: const/4 v2, #int 2 // #2 │ │ +42a780: 3225 3100 |000c: if-eq v5, v2, 003d // +0031 │ │ +42a784: 1230 |000e: const/4 v0, #int 3 // #3 │ │ +42a786: 3205 0400 |000f: if-eq v5, v0, 0013 // +0004 │ │ +42a78a: 2900 dc00 |0011: goto/16 00ed // +00dc │ │ +42a78e: 7100 74bd 0000 |0013: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42a794: 0c05 |0016: move-result-object v5 │ │ +42a796: 1a00 8ea0 |0017: const-string v0, "settings_participant_name_input" // string@a08e │ │ +42a79a: 6e20 75bd 0500 |0019: invoke-virtual {v5, v0}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd75 │ │ +42a7a0: 0c05 |001c: move-result-object v5 │ │ +42a7a2: 5441 d25e |001d: iget-object v1, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a7a6: 7110 e1bc 0100 |001f: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a7ac: 0c01 |0022: move-result-object v1 │ │ +42a7ae: 7100 e0bc 0000 |0023: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a7b4: 0c02 |0026: move-result-object v2 │ │ +42a7b6: 5243 d45e |0027: iget v3, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ +42a7ba: 6e40 3cba 2135 |0029: invoke-virtual {v1, v2, v5, v3}, Lorg/purple/smoke/Database;.writeParticipantName:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;I)Z // method@ba3c │ │ +42a7c0: 0a05 |002c: move-result v5 │ │ +42a7c2: 3805 0700 |002d: if-eqz v5, 0034 // +0007 │ │ +42a7c6: 5445 d25e |002f: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a7ca: 7110 dabc 0500 |0031: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcda │ │ +42a7d0: 7100 74bd 0000 |0034: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42a7d6: 0c05 |0037: move-result-object v5 │ │ +42a7d8: 6e20 82bd 0500 |0038: invoke-virtual {v5, v0}, Lorg/purple/smoke/State;.removeKey:(Ljava/lang/String;)V // method@bd82 │ │ +42a7de: 2900 b200 |003b: goto/16 00ed // +00b2 │ │ +42a7e2: 7100 74bd 0000 |003d: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42a7e8: 0c05 |0040: move-result-object v5 │ │ +42a7ea: 6e20 75bd 1500 |0041: invoke-virtual {v5, v1}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd75 │ │ +42a7f0: 0c05 |0044: move-result-object v5 │ │ +42a7f2: 6e20 b85c 0500 |0045: invoke-virtual {v5, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42a7f8: 0a05 |0048: move-result v5 │ │ +42a7fa: 3805 a400 |0049: if-eqz v5, 00ed // +00a4 │ │ +42a7fe: 5445 d25e |004b: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a802: 7110 e1bc 0500 |004d: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a808: 0c05 |0050: move-result-object v5 │ │ +42a80a: 5240 d45e |0051: iget v0, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ +42a80e: 7110 d55c 0000 |0053: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42a814: 0c00 |0056: move-result-object v0 │ │ +42a816: 6e20 efb9 0500 |0057: invoke-virtual {v5, v0}, Lorg/purple/smoke/Database;.deletePublicKeys:(Ljava/lang/String;)Z // method@b9ef │ │ +42a81c: 0a05 |005a: move-result v5 │ │ +42a81e: 3805 9200 |005b: if-eqz v5, 00ed // +0092 │ │ +42a822: 5445 d25e |005d: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a826: 7110 dabc 0500 |005f: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcda │ │ +42a82c: 2900 8b00 |0062: goto/16 00ed // +008b │ │ +42a830: 7100 74bd 0000 |0064: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42a836: 0c05 |0067: move-result-object v5 │ │ +42a838: 6e20 75bd 1500 |0068: invoke-virtual {v5, v1}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd75 │ │ +42a83e: 0c05 |006b: move-result-object v5 │ │ +42a840: 6e20 b85c 0500 |006c: invoke-virtual {v5, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42a846: 0a05 |006f: move-result v5 │ │ +42a848: 3805 7d00 |0070: if-eqz v5, 00ed // +007d │ │ +42a84c: 5445 d25e |0072: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a850: 7110 e1bc 0500 |0074: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a856: 0c05 |0077: move-result-object v5 │ │ +42a858: 5240 d45e |0078: iget v0, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ +42a85c: 7110 d55c 0000 |007a: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42a862: 0c00 |007d: move-result-object v0 │ │ +42a864: 6e20 ebb9 0500 |007e: invoke-virtual {v5, v0}, Lorg/purple/smoke/Database;.deleteFiascoKeys:(Ljava/lang/String;)Z // method@b9eb │ │ +42a86a: 0a05 |0081: move-result v5 │ │ +42a86c: 3805 6b00 |0082: if-eqz v5, 00ed // +006b │ │ +42a870: 5445 d25e |0084: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a874: 7110 dabc 0500 |0086: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcda │ │ +42a87a: 2864 |0089: goto 00ed // +0064 │ │ +42a87c: 7100 74bd 0000 |008a: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42a882: 0c05 |008d: move-result-object v5 │ │ +42a884: 6e20 75bd 1500 |008e: invoke-virtual {v5, v1}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd75 │ │ +42a88a: 0c05 |0091: move-result-object v5 │ │ +42a88c: 6e20 b85c 0500 |0092: invoke-virtual {v5, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42a892: 0a05 |0095: move-result v5 │ │ +42a894: 3805 5700 |0096: if-eqz v5, 00ed // +0057 │ │ +42a898: 5445 d25e |0098: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a89c: 7110 e1bc 0500 |009a: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a8a2: 0c05 |009d: move-result-object v5 │ │ +42a8a4: 5240 d45e |009e: iget v0, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ +42a8a8: 7110 d55c 0000 |00a0: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42a8ae: 0c00 |00a3: move-result-object v0 │ │ +42a8b0: 1a01 d6a1 |00a4: const-string v1, "siphash_ids" // string@a1d6 │ │ +42a8b4: 6e30 eab9 0501 |00a6: invoke-virtual {v5, v0, v1}, Lorg/purple/smoke/Database;.deleteEntry:(Ljava/lang/String;Ljava/lang/String;)Z // method@b9ea │ │ +42a8ba: 0a05 |00a9: move-result v5 │ │ +42a8bc: 3805 4300 |00aa: if-eqz v5, 00ed // +0043 │ │ +42a8c0: 7100 74bd 0000 |00ac: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42a8c6: 0c05 |00af: move-result-object v5 │ │ +42a8c8: 5240 d45e |00b0: iget v0, v4, Lorg/purple/smoke/Settings$40;.val$itemId:I // field@5ed4 │ │ +42a8cc: 6e20 80bd 0500 |00b2: invoke-virtual {v5, v0}, Lorg/purple/smoke/State;.removeChatCheckBoxOid:(I)V // method@bd80 │ │ +42a8d2: 7100 74bd 0000 |00b5: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42a8d8: 0c05 |00b8: move-result-object v5 │ │ +42a8da: 1a00 a98a |00b9: const-string v0, "member_chat_oid" // string@8aa9 │ │ +42a8de: 1a01 0000 |00bb: const-string v1, "" // string@0000 │ │ +42a8e2: 6e30 90bd 0501 |00bd: invoke-virtual {v5, v0, v1}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd90 │ │ +42a8e8: 7100 74bd 0000 |00c0: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42a8ee: 0c05 |00c3: move-result-object v5 │ │ +42a8f0: 1a02 ab8a |00c4: const-string v2, "member_chat_siphash_id" // string@8aab │ │ +42a8f4: 6e30 90bd 2501 |00c6: invoke-virtual {v5, v2, v1}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd90 │ │ +42a8fa: 5445 d25e |00c9: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a8fe: 6e10 f3bc 0500 |00cb: invoke-virtual {v5}, Lorg/purple/smoke/Settings;.invalidateOptionsMenu:()V // method@bcf3 │ │ +42a904: 5445 d25e |00ce: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a908: 7110 e1bc 0500 |00d0: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a90e: 0c05 |00d3: move-result-object v5 │ │ +42a910: 7100 e0bc 0000 |00d4: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a916: 0c03 |00d7: move-result-object v3 │ │ +42a918: 6e40 3eba 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@ba3e │ │ +42a91e: 5445 d25e |00db: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a922: 7110 e1bc 0500 |00dd: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42a928: 0c05 |00e0: move-result-object v5 │ │ +42a92a: 7100 e0bc 0000 |00e1: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42a930: 0c00 |00e4: move-result-object v0 │ │ +42a932: 6e40 3eba 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@ba3e │ │ +42a938: 5445 d25e |00e8: iget-object v5, v4, Lorg/purple/smoke/Settings$40;.this$0:Lorg/purple/smoke/Settings; // field@5ed2 │ │ +42a93c: 7110 dabc 0500 |00ea: invoke-static {v5}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcda │ │ +42a942: 0e00 |00ed: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3760 │ │ 0x0013 line=3809 │ │ 0x0019 line=3810 │ │ 0x001d line=3812 │ │ 0x0023 line=3813 │ │ @@ -738024,19 +738023,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 │ │ -42ae24: |[42ae24] org.purple.smoke.Settings$4.:(Lorg/purple/smoke/Settings;Ljava/lang/String;)V │ │ -42ae34: 5b01 d55e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ -42ae38: 5b02 d65e |0002: iput-object v2, v0, Lorg/purple/smoke/Settings$4;.val$ipAndPort:Ljava/lang/String; // field@5ed6 │ │ -42ae3c: 7010 8f5c 0000 |0004: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42ae42: 0e00 |0007: return-void │ │ +42ae20: |[42ae20] org.purple.smoke.Settings$4.:(Lorg/purple/smoke/Settings;Ljava/lang/String;)V │ │ +42ae30: 5b01 d55e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ +42ae34: 5b02 d65e |0002: iput-object v2, v0, Lorg/purple/smoke/Settings$4;.val$ipAndPort:Ljava/lang/String; // field@5ed6 │ │ +42ae38: 7010 8f5c 0000 |0004: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42ae3e: 0e00 |0007: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=962 │ │ 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; │ │ @@ -738047,89 +738046,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 │ │ -42ae44: |[42ae44] org.purple.smoke.Settings$4.onItemSelected:(Landroid/widget/AdapterView;Landroid/view/View;IJ)V │ │ -42ae54: 1213 |0000: const/4 v3, #int 1 // #1 │ │ -42ae56: 3234 7200 |0001: if-eq v4, v3, 0073 // +0072 │ │ -42ae5a: 1223 |0003: const/4 v3, #int 2 // #2 │ │ -42ae5c: 3234 6300 |0004: if-eq v4, v3, 0067 // +0063 │ │ -42ae60: 1233 |0006: const/4 v3, #int 3 // #3 │ │ -42ae62: 1a05 0a64 |0007: const-string v5, "disconnect" // string@640a │ │ -42ae66: 3234 4800 |0009: if-eq v4, v3, 0051 // +0048 │ │ -42ae6a: 1243 |000b: const/4 v3, #int 4 // #4 │ │ -42ae6c: 3234 3300 |000c: if-eq v4, v3, 003f // +0033 │ │ -42ae70: 1253 |000e: const/4 v3, #int 5 // #5 │ │ -42ae72: 3234 0400 |000f: if-eq v4, v3, 0013 // +0004 │ │ -42ae76: 2900 7900 |0011: goto/16 008a // +0079 │ │ -42ae7a: 5413 d55e |0013: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ -42ae7e: 7110 e1bc 0300 |0015: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42ae84: 0c03 |0018: move-result-object v3 │ │ -42ae86: 7100 e0bc 0000 |0019: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42ae8c: 0c04 |001c: move-result-object v4 │ │ -42ae8e: 6e10 c758 0200 |001d: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ -42ae94: 0a06 |0020: move-result v6 │ │ -42ae96: 7110 d55c 0600 |0021: invoke-static {v6}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42ae9c: 0c06 |0024: move-result-object v6 │ │ -42ae9e: 1200 |0025: const/4 v0, #int 0 // #0 │ │ -42aea0: 6e40 00ba 4306 |0026: invoke-virtual {v3, v4, v6, v0}, Lorg/purple/smoke/Database;.neighborRecordCertificate:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;[B)V // method@ba00 │ │ -42aea6: 5413 d55e |0029: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ -42aeaa: 7110 e1bc 0300 |002b: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42aeb0: 0c03 |002e: move-result-object v3 │ │ -42aeb2: 7100 e0bc 0000 |002f: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42aeb8: 0c04 |0032: move-result-object v4 │ │ -42aeba: 6e10 c758 0200 |0033: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ -42aec0: 0a06 |0036: move-result v6 │ │ -42aec2: 7110 d55c 0600 |0037: invoke-static {v6}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42aec8: 0c06 |003a: move-result-object v6 │ │ -42aeca: 6e40 ffb9 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@b9ff │ │ -42aed0: 284c |003e: goto 008a // +004c │ │ -42aed2: 5413 d55e |003f: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ -42aed6: 7110 e1bc 0300 |0041: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42aedc: 0c03 |0044: move-result-object v3 │ │ -42aede: 6e10 c758 0200 |0045: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ -42aee4: 0a04 |0048: move-result v4 │ │ -42aee6: 7110 d55c 0400 |0049: invoke-static {v4}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42aeec: 0c04 |004c: move-result-object v4 │ │ -42aeee: 6e20 10ba 4300 |004d: invoke-virtual {v3, v4}, Lorg/purple/smoke/Database;.purgeNeighborQueue:(Ljava/lang/String;)V // method@ba10 │ │ -42aef4: 283a |0050: goto 008a // +003a │ │ -42aef6: 5413 d55e |0051: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ -42aefa: 7110 e1bc 0300 |0053: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42af00: 0c03 |0056: move-result-object v3 │ │ -42af02: 7100 e0bc 0000 |0057: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42af08: 0c04 |005a: move-result-object v4 │ │ -42af0a: 6e10 c758 0200 |005b: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ -42af10: 0a06 |005e: move-result v6 │ │ -42af12: 7110 d55c 0600 |005f: invoke-static {v6}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42af18: 0c06 |0062: move-result-object v6 │ │ -42af1a: 6e40 ffb9 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@b9ff │ │ -42af20: 2824 |0066: goto 008a // +0024 │ │ -42af22: 5413 d55e |0067: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ -42af26: 5414 d65e |0069: iget-object v4, v1, Lorg/purple/smoke/Settings$4;.val$ipAndPort:Ljava/lang/String; // field@5ed6 │ │ -42af2a: 6e10 c758 0200 |006b: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ -42af30: 0a05 |006e: move-result v5 │ │ -42af32: 7130 e3bc 4305 |006f: invoke-static {v3, v4, v5}, Lorg/purple/smoke/Settings;.access$800:(Lorg/purple/smoke/Settings;Ljava/lang/String;I)V // method@bce3 │ │ -42af38: 2818 |0072: goto 008a // +0018 │ │ -42af3a: 5413 d55e |0073: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ -42af3e: 7110 e1bc 0300 |0075: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42af44: 0c03 |0078: move-result-object v3 │ │ -42af46: 7100 e0bc 0000 |0079: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42af4c: 0c04 |007c: move-result-object v4 │ │ -42af4e: 6e10 c758 0200 |007d: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ -42af54: 0a05 |0080: move-result v5 │ │ -42af56: 7110 d55c 0500 |0081: invoke-static {v5}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42af5c: 0c05 |0084: move-result-object v5 │ │ -42af5e: 1a06 5360 |0085: const-string v6, "connect" // string@6053 │ │ -42af62: 6e40 ffb9 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@b9ff │ │ -42af68: 1203 |008a: const/4 v3, #int 0 // #0 │ │ -42af6a: 6e20 c858 3200 |008b: invoke-virtual {v2, v3}, Landroid/widget/AdapterView;.setSelection:(I)V // method@58c8 │ │ -42af70: 0e00 |008e: return-void │ │ +42ae40: |[42ae40] org.purple.smoke.Settings$4.onItemSelected:(Landroid/widget/AdapterView;Landroid/view/View;IJ)V │ │ +42ae50: 1213 |0000: const/4 v3, #int 1 // #1 │ │ +42ae52: 3234 7200 |0001: if-eq v4, v3, 0073 // +0072 │ │ +42ae56: 1223 |0003: const/4 v3, #int 2 // #2 │ │ +42ae58: 3234 6300 |0004: if-eq v4, v3, 0067 // +0063 │ │ +42ae5c: 1233 |0006: const/4 v3, #int 3 // #3 │ │ +42ae5e: 1a05 0a64 |0007: const-string v5, "disconnect" // string@640a │ │ +42ae62: 3234 4800 |0009: if-eq v4, v3, 0051 // +0048 │ │ +42ae66: 1243 |000b: const/4 v3, #int 4 // #4 │ │ +42ae68: 3234 3300 |000c: if-eq v4, v3, 003f // +0033 │ │ +42ae6c: 1253 |000e: const/4 v3, #int 5 // #5 │ │ +42ae6e: 3234 0400 |000f: if-eq v4, v3, 0013 // +0004 │ │ +42ae72: 2900 7900 |0011: goto/16 008a // +0079 │ │ +42ae76: 5413 d55e |0013: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ +42ae7a: 7110 e1bc 0300 |0015: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42ae80: 0c03 |0018: move-result-object v3 │ │ +42ae82: 7100 e0bc 0000 |0019: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42ae88: 0c04 |001c: move-result-object v4 │ │ +42ae8a: 6e10 c758 0200 |001d: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ +42ae90: 0a06 |0020: move-result v6 │ │ +42ae92: 7110 d55c 0600 |0021: invoke-static {v6}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42ae98: 0c06 |0024: move-result-object v6 │ │ +42ae9a: 1200 |0025: const/4 v0, #int 0 // #0 │ │ +42ae9c: 6e40 00ba 4306 |0026: invoke-virtual {v3, v4, v6, v0}, Lorg/purple/smoke/Database;.neighborRecordCertificate:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;[B)V // method@ba00 │ │ +42aea2: 5413 d55e |0029: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ +42aea6: 7110 e1bc 0300 |002b: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42aeac: 0c03 |002e: move-result-object v3 │ │ +42aeae: 7100 e0bc 0000 |002f: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42aeb4: 0c04 |0032: move-result-object v4 │ │ +42aeb6: 6e10 c758 0200 |0033: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ +42aebc: 0a06 |0036: move-result v6 │ │ +42aebe: 7110 d55c 0600 |0037: invoke-static {v6}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42aec4: 0c06 |003a: move-result-object v6 │ │ +42aec6: 6e40 ffb9 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@b9ff │ │ +42aecc: 284c |003e: goto 008a // +004c │ │ +42aece: 5413 d55e |003f: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ +42aed2: 7110 e1bc 0300 |0041: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42aed8: 0c03 |0044: move-result-object v3 │ │ +42aeda: 6e10 c758 0200 |0045: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ +42aee0: 0a04 |0048: move-result v4 │ │ +42aee2: 7110 d55c 0400 |0049: invoke-static {v4}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42aee8: 0c04 |004c: move-result-object v4 │ │ +42aeea: 6e20 10ba 4300 |004d: invoke-virtual {v3, v4}, Lorg/purple/smoke/Database;.purgeNeighborQueue:(Ljava/lang/String;)V // method@ba10 │ │ +42aef0: 283a |0050: goto 008a // +003a │ │ +42aef2: 5413 d55e |0051: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ +42aef6: 7110 e1bc 0300 |0053: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42aefc: 0c03 |0056: move-result-object v3 │ │ +42aefe: 7100 e0bc 0000 |0057: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42af04: 0c04 |005a: move-result-object v4 │ │ +42af06: 6e10 c758 0200 |005b: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ +42af0c: 0a06 |005e: move-result v6 │ │ +42af0e: 7110 d55c 0600 |005f: invoke-static {v6}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42af14: 0c06 |0062: move-result-object v6 │ │ +42af16: 6e40 ffb9 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@b9ff │ │ +42af1c: 2824 |0066: goto 008a // +0024 │ │ +42af1e: 5413 d55e |0067: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ +42af22: 5414 d65e |0069: iget-object v4, v1, Lorg/purple/smoke/Settings$4;.val$ipAndPort:Ljava/lang/String; // field@5ed6 │ │ +42af26: 6e10 c758 0200 |006b: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ +42af2c: 0a05 |006e: move-result v5 │ │ +42af2e: 7130 e3bc 4305 |006f: invoke-static {v3, v4, v5}, Lorg/purple/smoke/Settings;.access$800:(Lorg/purple/smoke/Settings;Ljava/lang/String;I)V // method@bce3 │ │ +42af34: 2818 |0072: goto 008a // +0018 │ │ +42af36: 5413 d55e |0073: iget-object v3, v1, Lorg/purple/smoke/Settings$4;.this$0:Lorg/purple/smoke/Settings; // field@5ed5 │ │ +42af3a: 7110 e1bc 0300 |0075: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42af40: 0c03 |0078: move-result-object v3 │ │ +42af42: 7100 e0bc 0000 |0079: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42af48: 0c04 |007c: move-result-object v4 │ │ +42af4a: 6e10 c758 0200 |007d: invoke-virtual {v2}, Landroid/widget/AdapterView;.getId:()I // method@58c7 │ │ +42af50: 0a05 |0080: move-result v5 │ │ +42af52: 7110 d55c 0500 |0081: invoke-static {v5}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42af58: 0c05 |0084: move-result-object v5 │ │ +42af5a: 1a06 5360 |0085: const-string v6, "connect" // string@6053 │ │ +42af5e: 6e40 ffb9 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@b9ff │ │ +42af64: 1203 |008a: const/4 v3, #int 0 // #0 │ │ +42af66: 6e20 c858 3200 |008b: invoke-virtual {v2, v3}, Landroid/widget/AdapterView;.setSelection:(I)V // method@58c8 │ │ +42af6c: 0e00 |008e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0013 line=991 │ │ 0x0019 line=992 │ │ 0x001d line=993 │ │ 0x0026 line=992 │ │ 0x0029 line=995 │ │ @@ -738160,16 +738159,16 @@ │ │ type : '(Landroid/widget/AdapterView;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -42af74: |[42af74] org.purple.smoke.Settings$4.onNothingSelected:(Landroid/widget/AdapterView;)V │ │ -42af84: 0e00 |0000: return-void │ │ +42af70: |[42af70] org.purple.smoke.Settings$4.onNothingSelected:(Landroid/widget/AdapterView;)V │ │ +42af80: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ source_file_idx : 19281 (Settings.java) │ │ │ │ Class #2705 header: │ │ @@ -738205,18 +738204,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 │ │ -42a948: |[42a948] org.purple.smoke.Settings$4SingleShot$1.:(Lorg/purple/smoke/Settings$4SingleShot;)V │ │ -42a958: 5b01 d75e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a95c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42a962: 0e00 |0005: return-void │ │ +42a944: |[42a944] org.purple.smoke.Settings$4SingleShot$1.:(Lorg/purple/smoke/Settings$4SingleShot;)V │ │ +42a954: 5b01 d75e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a958: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42a95e: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2702 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$4SingleShot$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings$4SingleShot; │ │ │ │ @@ -738226,73 +738225,73 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 127 16-bit code units │ │ -42a964: |[42a964] org.purple.smoke.Settings$4SingleShot$1.run:()V │ │ -42a974: 5430 d75e |0000: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a978: 5400 dc5e |0002: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5edc │ │ -42a97c: 1241 |0004: const/4 v1, #int 4 // #4 │ │ -42a97e: 6e20 5f5a 1000 |0005: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42a984: 5430 d75e |0008: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a988: 5400 db5e |000a: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42a98c: 6e10 f2bc 0000 |000c: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ -42a992: 0c00 |000f: move-result-object v0 │ │ -42a994: 1302 1000 |0010: const/16 v2, #int 16 // #10 │ │ -42a998: 6e20 8557 2000 |0012: invoke-virtual {v0, v2}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ -42a99e: 5430 d75e |0015: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a9a2: 5400 db5e |0017: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42a9a6: 1402 9200 087f |0019: const v2, #float 1.80778e+38 // #7f080092 │ │ -42a9ac: 6e20 eabc 2000 |001c: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42a9b2: 0c00 |001f: move-result-object v0 │ │ -42a9b4: 1212 |0020: const/4 v2, #int 1 // #1 │ │ -42a9b6: 7120 ebbb 2000 |0021: invoke-static {v0, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ -42a9bc: 5430 d75e |0024: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a9c0: 7110 a8bc 0000 |0026: invoke-static {v0}, Lorg/purple/smoke/Settings$4SingleShot;.access$2500:(Lorg/purple/smoke/Settings$4SingleShot;)Ljava/lang/String; // method@bca8 │ │ -42a9c6: 0c00 |0029: move-result-object v0 │ │ -42a9c8: 6e10 c35c 0000 |002a: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42a9ce: 0a00 |002d: move-result v0 │ │ -42a9d0: 3900 2600 |002e: if-nez v0, 0054 // +0026 │ │ -42a9d4: 5430 d75e |0030: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a9d8: 5400 db5e |0032: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42a9dc: 2201 f10a |0034: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -42a9e0: 7010 ee5c 0100 |0036: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42a9e6: 1a02 6a0d |0039: const-string v2, "An error (" // string@0d6a │ │ -42a9ea: 6e20 f95c 2100 |003b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42a9f0: 5432 d75e |003e: iget-object v2, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42a9f4: 7110 a8bc 0200 |0040: invoke-static {v2}, Lorg/purple/smoke/Settings$4SingleShot;.access$2500:(Lorg/purple/smoke/Settings$4SingleShot;)Ljava/lang/String; // method@bca8 │ │ -42a9fa: 0c02 |0043: move-result-object v2 │ │ -42a9fc: 6e20 f95c 2100 |0044: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42aa02: 1a02 ff03 |0047: const-string v2, ") occurred while generating the PKI data." // string@03ff │ │ -42aa06: 6e20 f95c 2100 |0049: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42aa0c: 6e10 035d 0100 |004c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42aa12: 0c01 |004f: move-result-object v1 │ │ -42aa14: 7120 fabb 1000 |0050: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ -42aa1a: 282b |0053: goto 007e // +002b │ │ -42aa1c: 5430 d75e |0054: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42aa20: 5400 db5e |0056: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42aa24: 7120 d0bc 2000 |0058: invoke-static {v0, v2}, Lorg/purple/smoke/Settings;.access$1000:(Lorg/purple/smoke/Settings;Z)V // method@bcd0 │ │ -42aa2a: 5430 d75e |005b: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42aa2e: 5400 db5e |005d: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42aa32: 7110 d1bc 0000 |005f: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1100:(Lorg/purple/smoke/Settings;)V // method@bcd1 │ │ -42aa38: 5430 d75e |0062: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42aa3c: 5400 dd5e |0064: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$spinner1:Landroid/widget/Spinner; // field@5edd │ │ -42aa40: 6e20 cc5a 1000 |0066: invoke-virtual {v0, v1}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -42aa46: 5430 d75e |0069: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42aa4a: 5400 de5e |006b: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$spinner2:Landroid/widget/Spinner; // field@5ede │ │ -42aa4e: 6e20 cc5a 2000 |006d: invoke-virtual {v0, v2}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -42aa54: 5430 d75e |0070: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42aa58: 5400 db5e |0072: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42aa5c: 7110 d2bc 0000 |0074: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1200:(Lorg/purple/smoke/Settings;)V // method@bcd2 │ │ -42aa62: 5430 d75e |0077: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ -42aa66: 5400 db5e |0079: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42aa6a: 7110 d3bc 0000 |007b: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1300:(Lorg/purple/smoke/Settings;)V // method@bcd3 │ │ -42aa70: 0e00 |007e: return-void │ │ +42a960: |[42a960] org.purple.smoke.Settings$4SingleShot$1.run:()V │ │ +42a970: 5430 d75e |0000: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a974: 5400 dc5e |0002: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5edc │ │ +42a978: 1241 |0004: const/4 v1, #int 4 // #4 │ │ +42a97a: 6e20 5f5a 1000 |0005: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42a980: 5430 d75e |0008: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a984: 5400 db5e |000a: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42a988: 6e10 f2bc 0000 |000c: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ +42a98e: 0c00 |000f: move-result-object v0 │ │ +42a990: 1302 1000 |0010: const/16 v2, #int 16 // #10 │ │ +42a994: 6e20 8557 2000 |0012: invoke-virtual {v0, v2}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ +42a99a: 5430 d75e |0015: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a99e: 5400 db5e |0017: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42a9a2: 1402 9200 087f |0019: const v2, #float 1.80778e+38 // #7f080092 │ │ +42a9a8: 6e20 eabc 2000 |001c: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42a9ae: 0c00 |001f: move-result-object v0 │ │ +42a9b0: 1212 |0020: const/4 v2, #int 1 // #1 │ │ +42a9b2: 7120 ebbb 2000 |0021: invoke-static {v0, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ +42a9b8: 5430 d75e |0024: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a9bc: 7110 a8bc 0000 |0026: invoke-static {v0}, Lorg/purple/smoke/Settings$4SingleShot;.access$2500:(Lorg/purple/smoke/Settings$4SingleShot;)Ljava/lang/String; // method@bca8 │ │ +42a9c2: 0c00 |0029: move-result-object v0 │ │ +42a9c4: 6e10 c35c 0000 |002a: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42a9ca: 0a00 |002d: move-result v0 │ │ +42a9cc: 3900 2600 |002e: if-nez v0, 0054 // +0026 │ │ +42a9d0: 5430 d75e |0030: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a9d4: 5400 db5e |0032: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42a9d8: 2201 f10a |0034: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +42a9dc: 7010 ee5c 0100 |0036: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42a9e2: 1a02 6a0d |0039: const-string v2, "An error (" // string@0d6a │ │ +42a9e6: 6e20 f95c 2100 |003b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42a9ec: 5432 d75e |003e: iget-object v2, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42a9f0: 7110 a8bc 0200 |0040: invoke-static {v2}, Lorg/purple/smoke/Settings$4SingleShot;.access$2500:(Lorg/purple/smoke/Settings$4SingleShot;)Ljava/lang/String; // method@bca8 │ │ +42a9f6: 0c02 |0043: move-result-object v2 │ │ +42a9f8: 6e20 f95c 2100 |0044: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42a9fe: 1a02 ff03 |0047: const-string v2, ") occurred while generating the PKI data." // string@03ff │ │ +42aa02: 6e20 f95c 2100 |0049: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42aa08: 6e10 035d 0100 |004c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42aa0e: 0c01 |004f: move-result-object v1 │ │ +42aa10: 7120 fabb 1000 |0050: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ +42aa16: 282b |0053: goto 007e // +002b │ │ +42aa18: 5430 d75e |0054: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42aa1c: 5400 db5e |0056: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42aa20: 7120 d0bc 2000 |0058: invoke-static {v0, v2}, Lorg/purple/smoke/Settings;.access$1000:(Lorg/purple/smoke/Settings;Z)V // method@bcd0 │ │ +42aa26: 5430 d75e |005b: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42aa2a: 5400 db5e |005d: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42aa2e: 7110 d1bc 0000 |005f: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1100:(Lorg/purple/smoke/Settings;)V // method@bcd1 │ │ +42aa34: 5430 d75e |0062: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42aa38: 5400 dd5e |0064: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$spinner1:Landroid/widget/Spinner; // field@5edd │ │ +42aa3c: 6e20 cc5a 1000 |0066: invoke-virtual {v0, v1}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +42aa42: 5430 d75e |0069: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42aa46: 5400 de5e |006b: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$spinner2:Landroid/widget/Spinner; // field@5ede │ │ +42aa4a: 6e20 cc5a 2000 |006d: invoke-virtual {v0, v2}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +42aa50: 5430 d75e |0070: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42aa54: 5400 db5e |0072: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42aa58: 7110 d2bc 0000 |0074: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1200:(Lorg/purple/smoke/Settings;)V // method@bcd2 │ │ +42aa5e: 5430 d75e |0077: iget-object v0, v3, Lorg/purple/smoke/Settings$4SingleShot$1;.this$1:Lorg/purple/smoke/Settings$4SingleShot; // field@5ed7 │ │ +42aa62: 5400 db5e |0079: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42aa66: 7110 d3bc 0000 |007b: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$1300:(Lorg/purple/smoke/Settings;)V // method@bcd3 │ │ +42aa6c: 0e00 |007e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2706 │ │ 0x0008 line=2707 │ │ 0x0012 line=2708 │ │ 0x0015 line=2710 │ │ 0x001c line=2711 │ │ @@ -738370,31 +738369,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 │ │ -42aa8c: |[42aa8c] 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 │ │ -42aa9c: 5b01 db5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42aaa0: 5b04 dc5e |0002: iput-object v4, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5edc │ │ -42aaa4: 5b05 dd5e |0004: iput-object v5, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$spinner1:Landroid/widget/Spinner; // field@5edd │ │ -42aaa8: 5b06 de5e |0006: iput-object v6, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$spinner2:Landroid/widget/Spinner; // field@5ede │ │ -42aaac: 7010 8f5c 0000 |0008: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42aab2: 1a01 0000 |000b: const-string v1, "" // string@0000 │ │ -42aab6: 5b01 d95e |000d: iput-object v1, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ -42aaba: 5b02 d85e |000f: iput-object v2, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ -42aabe: 5b03 da5e |0011: iput-object v3, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ -42aac2: 1a01 1918 |0013: const-string v1, "ECDSA" // string@1819 │ │ -42aac6: 6e20 b85c 1300 |0015: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42aacc: 0a01 |0018: move-result v1 │ │ -42aace: 3801 0600 |0019: if-eqz v1, 001f // +0006 │ │ -42aad2: 1a01 e717 |001b: const-string v1, "EC" // string@17e7 │ │ -42aad6: 5b01 da5e |001d: iput-object v1, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ -42aada: 0e00 |001f: return-void │ │ +42aa88: |[42aa88] 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 │ │ +42aa98: 5b01 db5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42aa9c: 5b04 dc5e |0002: iput-object v4, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5edc │ │ +42aaa0: 5b05 dd5e |0004: iput-object v5, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$spinner1:Landroid/widget/Spinner; // field@5edd │ │ +42aaa4: 5b06 de5e |0006: iput-object v6, v0, Lorg/purple/smoke/Settings$4SingleShot;.val$spinner2:Landroid/widget/Spinner; // field@5ede │ │ +42aaa8: 7010 8f5c 0000 |0008: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42aaae: 1a01 0000 |000b: const-string v1, "" // string@0000 │ │ +42aab2: 5b01 d95e |000d: iput-object v1, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ +42aab6: 5b02 d85e |000f: iput-object v2, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ +42aaba: 5b03 da5e |0011: iput-object v3, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ +42aabe: 1a01 1918 |0013: const-string v1, "ECDSA" // string@1819 │ │ +42aac2: 6e20 b85c 1300 |0015: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42aac8: 0a01 |0018: move-result v1 │ │ +42aaca: 3801 0600 |0019: if-eqz v1, 001f // +0006 │ │ +42aace: 1a01 e717 |001b: const-string v1, "EC" // string@17e7 │ │ +42aad2: 5b01 da5e |001d: iput-object v1, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ +42aad6: 0e00 |001f: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2561 │ │ 0x000d line=2557 │ │ 0x000f line=2562 │ │ 0x0011 line=2563 │ │ 0x0015 line=2565 │ │ @@ -738413,17 +738412,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 │ │ -42aa74: |[42aa74] org.purple.smoke.Settings$4SingleShot.access$2500:(Lorg/purple/smoke/Settings$4SingleShot;)Ljava/lang/String; │ │ -42aa84: 5400 d95e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ -42aa88: 1100 |0002: return-object v0 │ │ +42aa70: |[42aa70] org.purple.smoke.Settings$4SingleShot.access$2500:(Lorg/purple/smoke/Settings$4SingleShot;)Ljava/lang/String; │ │ +42aa80: 5400 d95e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ +42aa84: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2554 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings$4SingleShot; │ │ │ │ Virtual methods - │ │ @@ -738432,217 +738431,217 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 10 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 403 16-bit code units │ │ -42aadc: |[42aadc] org.purple.smoke.Settings$4SingleShot.run:()V │ │ -42aaec: 1a00 9846 |0000: const-string v0, "Rainbow" // string@4698 │ │ -42aaf0: 1a01 6b46 |0002: const-string v1, "RSA" // string@466b │ │ -42aaf4: 1a02 e717 |0004: const-string v2, "EC" // string@17e7 │ │ -42aaf8: 5493 d85e |0006: iget-object v3, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ -42aafc: 1a04 a506 |0008: const-string v4, "12, 68" // string@06a5 │ │ -42ab00: 6e20 b65c 4300 |000a: invoke-virtual {v3, v4}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -42ab06: 0a03 |000d: move-result v3 │ │ -42ab08: 1224 |000e: const/4 v4, #int 2 // #2 │ │ -42ab0a: 1215 |000f: const/4 v5, #int 1 // #1 │ │ -42ab0c: 1206 |0010: const/4 v6, #int 0 // #0 │ │ -42ab0e: 3803 0400 |0011: if-eqz v3, 0015 // +0004 │ │ -42ab12: 1213 |0013: const/4 v3, #int 1 // #1 │ │ -42ab14: 280e |0014: goto 0022 // +000e │ │ -42ab16: 5493 d85e |0015: iget-object v3, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ -42ab1a: 1a07 af06 |0017: const-string v7, "13, 118" // string@06af │ │ -42ab1e: 6e20 b65c 7300 |0019: invoke-virtual {v3, v7}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -42ab24: 0a03 |001c: move-result v3 │ │ -42ab26: 3803 0400 |001d: if-eqz v3, 0021 // +0004 │ │ -42ab2a: 1223 |001f: const/4 v3, #int 2 // #2 │ │ -42ab2c: 2802 |0020: goto 0022 // +0002 │ │ -42ab2e: 1203 |0021: const/4 v3, #int 0 // #0 │ │ -42ab30: 5497 d85e |0022: iget-object v7, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ -42ab34: 6208 bb53 |0024: sget-object v8, Lorg/purple/smoke/Cryptography;.PKI_ENCRYPTION_KEY_SIZES:[I // field@53bb │ │ -42ab38: 4408 0806 |0026: aget v8, v8, v6 │ │ -42ab3c: 7130 8fb9 8703 |0028: invoke-static {v7, v8, v3}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ -42ab42: 0c03 |002b: move-result-object v3 │ │ -42ab44: 3803 3301 |002c: if-eqz v3, 015f // +0133 │ │ -42ab48: 5497 da5e |002e: iget-object v7, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ -42ab4c: 6e20 b85c 2700 |0030: invoke-virtual {v7, v2}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42ab52: 0a07 |0033: move-result v7 │ │ -42ab54: 3807 0b00 |0034: if-eqz v7, 003f // +000b │ │ -42ab58: 6200 bf53 |0036: sget-object v0, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ -42ab5c: 4400 0006 |0038: aget v0, v0, v6 │ │ -42ab60: 7130 8fb9 0206 |003a: invoke-static {v2, v0, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ -42ab66: 0c00 |003d: move-result-object v0 │ │ -42ab68: 282e |003e: goto 006c // +002e │ │ -42ab6a: 5492 da5e |003f: iget-object v2, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ -42ab6e: 6e20 b85c 1200 |0041: invoke-virtual {v2, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42ab74: 0a02 |0044: move-result v2 │ │ -42ab76: 3802 0b00 |0045: if-eqz v2, 0050 // +000b │ │ -42ab7a: 6200 bf53 |0047: sget-object v0, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ -42ab7e: 4400 0005 |0049: aget v0, v0, v5 │ │ -42ab82: 7130 8fb9 0106 |004b: invoke-static {v1, v0, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ -42ab88: 0c00 |004e: move-result-object v0 │ │ -42ab8a: 281d |004f: goto 006c // +001d │ │ -42ab8c: 5491 da5e |0050: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ -42ab90: 6e20 b85c 0100 |0052: invoke-virtual {v1, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42ab96: 0a01 |0055: move-result v1 │ │ -42ab98: 3801 0b00 |0056: if-eqz v1, 0061 // +000b │ │ -42ab9c: 6201 bf53 |0058: sget-object v1, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ -42aba0: 4401 0104 |005a: aget v1, v1, v4 │ │ -42aba4: 7130 8fb9 1006 |005c: invoke-static {v0, v1, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ -42abaa: 0c00 |005f: move-result-object v0 │ │ -42abac: 280c |0060: goto 006c // +000c │ │ -42abae: 5490 da5e |0061: iget-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ -42abb2: 6201 bf53 |0063: sget-object v1, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ -42abb6: 1232 |0065: const/4 v2, #int 3 // #3 │ │ -42abb8: 4401 0102 |0066: aget v1, v1, v2 │ │ -42abbc: 7130 8fb9 1006 |0068: invoke-static {v0, v1, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ -42abc2: 0c00 |006b: move-result-object v0 │ │ -42abc4: 3800 e000 |006c: if-eqz v0, 014c // +00e0 │ │ -42abc8: 7100 e0bc 0000 |006e: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42abce: 0c01 |0071: move-result-object v1 │ │ -42abd0: 6e20 b2b9 3100 |0072: invoke-virtual {v1, v3}, Lorg/purple/smoke/Cryptography;.setChatEncryptionPublicKeyPair:(Ljava/security/KeyPair;)V // method@b9b2 │ │ -42abd6: 7100 e0bc 0000 |0075: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42abdc: 0c01 |0078: move-result-object v1 │ │ -42abde: 5492 d85e |0079: iget-object v2, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ -42abe2: 6e20 b0b9 2100 |007b: invoke-virtual {v1, v2}, Lorg/purple/smoke/Cryptography;.setChatEncryptionPublicKeyAlgorithm:(Ljava/lang/String;)V // method@b9b0 │ │ -42abe8: 7100 e0bc 0000 |007e: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42abee: 0c01 |0081: move-result-object v1 │ │ -42abf0: 6e20 b4b9 0100 |0082: invoke-virtual {v1, v0}, Lorg/purple/smoke/Cryptography;.setChatSignaturePublicKeyPair:(Ljava/security/KeyPair;)V // method@b9b4 │ │ -42abf6: 5491 db5e |0085: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42abfa: 7110 e1bc 0100 |0087: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42ac00: 0c01 |008a: move-result-object v1 │ │ -42ac02: 7100 e0bc 0000 |008b: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42ac08: 0c02 |008e: move-result-object v2 │ │ -42ac0a: 1a04 cd93 |008f: const-string v4, "pki_chat_encryption_algorithm" // string@93cd │ │ -42ac0e: 5495 d85e |0091: iget-object v5, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ -42ac12: 6e40 3eba 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@ba3e │ │ -42ac18: 5491 db5e |0096: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42ac1c: 7110 e1bc 0100 |0098: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42ac22: 0c01 |009b: move-result-object v1 │ │ -42ac24: 7100 e0bc 0000 |009c: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42ac2a: 0c02 |009f: move-result-object v2 │ │ -42ac2c: 1a04 ce93 |00a0: const-string v4, "pki_chat_encryption_private_key" // string@93ce │ │ -42ac30: 6e10 fd5d 0300 |00a2: invoke-virtual {v3}, Ljava/security/KeyPair;.getPrivate:()Ljava/security/PrivateKey; // method@5dfd │ │ -42ac36: 0c05 |00a5: move-result-object v5 │ │ -42ac38: 7210 375e 0500 |00a6: invoke-interface {v5}, Ljava/security/PrivateKey;.getEncoded:()[B // method@5e37 │ │ -42ac3e: 0c05 |00a9: move-result-object v5 │ │ -42ac40: 7120 c454 6500 |00aa: invoke-static {v5, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42ac46: 0c05 |00ad: move-result-object v5 │ │ -42ac48: 6e40 3eba 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@ba3e │ │ -42ac4e: 5491 db5e |00b1: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42ac52: 7110 e1bc 0100 |00b3: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42ac58: 0c01 |00b6: move-result-object v1 │ │ -42ac5a: 7100 e0bc 0000 |00b7: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42ac60: 0c02 |00ba: move-result-object v2 │ │ -42ac62: 1a04 cf93 |00bb: const-string v4, "pki_chat_encryption_public_key" // string@93cf │ │ -42ac66: 6e10 fe5d 0300 |00bd: invoke-virtual {v3}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfe │ │ -42ac6c: 0c03 |00c0: move-result-object v3 │ │ -42ac6e: 7210 3e5e 0300 |00c1: invoke-interface {v3}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3e │ │ -42ac74: 0c03 |00c4: move-result-object v3 │ │ -42ac76: 7120 c454 6300 |00c5: invoke-static {v3, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42ac7c: 0c03 |00c8: move-result-object v3 │ │ -42ac7e: 6e40 3eba 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@ba3e │ │ -42ac84: 5491 db5e |00cc: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42ac88: 7110 e1bc 0100 |00ce: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42ac8e: 0c01 |00d1: move-result-object v1 │ │ -42ac90: 7100 e0bc 0000 |00d2: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42ac96: 0c02 |00d5: move-result-object v2 │ │ -42ac98: 1a03 d093 |00d6: const-string v3, "pki_chat_signature_algorithm" // string@93d0 │ │ -42ac9c: 5494 da5e |00d8: iget-object v4, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ -42aca0: 6e40 3eba 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@ba3e │ │ -42aca6: 5491 db5e |00dd: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42acaa: 7110 e1bc 0100 |00df: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42acb0: 0c01 |00e2: move-result-object v1 │ │ -42acb2: 7100 e0bc 0000 |00e3: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42acb8: 0c02 |00e6: move-result-object v2 │ │ -42acba: 1a03 d193 |00e7: const-string v3, "pki_chat_signature_private_key" // string@93d1 │ │ -42acbe: 6e10 fd5d 0000 |00e9: invoke-virtual {v0}, Ljava/security/KeyPair;.getPrivate:()Ljava/security/PrivateKey; // method@5dfd │ │ -42acc4: 0c04 |00ec: move-result-object v4 │ │ -42acc6: 7210 375e 0400 |00ed: invoke-interface {v4}, Ljava/security/PrivateKey;.getEncoded:()[B // method@5e37 │ │ -42accc: 0c04 |00f0: move-result-object v4 │ │ -42acce: 7120 c454 6400 |00f1: invoke-static {v4, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42acd4: 0c04 |00f4: move-result-object v4 │ │ -42acd6: 6e40 3eba 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@ba3e │ │ -42acdc: 5491 db5e |00f8: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42ace0: 7110 e1bc 0100 |00fa: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42ace6: 0c01 |00fd: move-result-object v1 │ │ -42ace8: 7100 e0bc 0000 |00fe: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42acee: 0c02 |0101: move-result-object v2 │ │ -42acf0: 1a03 d293 |0102: const-string v3, "pki_chat_signature_public_key" // string@93d2 │ │ -42acf4: 6e10 fe5d 0000 |0104: invoke-virtual {v0}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfe │ │ -42acfa: 0c00 |0107: move-result-object v0 │ │ -42acfc: 7210 3e5e 0000 |0108: invoke-interface {v0}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3e │ │ -42ad02: 0c00 |010b: move-result-object v0 │ │ -42ad04: 7120 c454 6000 |010c: invoke-static {v0, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42ad0a: 0c00 |010f: move-result-object v0 │ │ -42ad0c: 6e40 3eba 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@ba3e │ │ -42ad12: 7100 e0bc 0000 |0113: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42ad18: 0c00 |0116: move-result-object v0 │ │ -42ad1a: 5491 db5e |0117: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42ad1e: 7110 e1bc 0100 |0119: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42ad24: 0c01 |011c: move-result-object v1 │ │ -42ad26: 7100 e0bc 0000 |011d: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42ad2c: 0c02 |0120: move-result-object v2 │ │ -42ad2e: 1a03 4259 |0121: const-string v3, "alias" // string@5942 │ │ -42ad32: 6e30 1bba 2103 |0123: invoke-virtual {v1, v2, v3}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42ad38: 0c01 |0126: move-result-object v1 │ │ -42ad3a: 6e20 a5b9 1000 |0127: invoke-virtual {v0, v1}, Lorg/purple/smoke/Cryptography;.prepareSipHashIds:(Ljava/lang/String;)Z // method@b9a5 │ │ -42ad40: 0a00 |012a: move-result v0 │ │ -42ad42: 7100 e0bc 0000 |012b: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42ad48: 0c01 |012e: move-result-object v1 │ │ -42ad4a: 6e10 a6b9 0100 |012f: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.prepareSipHashKeys:()Z // method@b9a6 │ │ -42ad50: 0a01 |0132: move-result v1 │ │ -42ad52: 3800 0400 |0133: if-eqz v0, 0137 // +0004 │ │ -42ad56: 3901 5300 |0135: if-nez v1, 0188 // +0053 │ │ -42ad5a: 3900 0700 |0137: if-nez v0, 013e // +0007 │ │ -42ad5e: 1a00 bc94 |0139: const-string v0, "prepareSipHashIds() failure" // string@94bc │ │ -42ad62: 5b90 d95e |013b: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ -42ad66: 2807 |013d: goto 0144 // +0007 │ │ -42ad68: 3901 0600 |013e: if-nez v1, 0144 // +0006 │ │ -42ad6c: 1a00 bf94 |0140: const-string v0, "prepareSipHashKeys() failure" // string@94bf │ │ -42ad70: 5b90 d95e |0142: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ -42ad74: 7100 e0bc 0000 |0144: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42ad7a: 0c00 |0147: move-result-object v0 │ │ -42ad7c: 6e10 afb9 0000 |0148: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.resetPKI:()V // method@b9af │ │ -42ad82: 283d |014b: goto 0188 // +003d │ │ -42ad84: 1a00 aba1 |014c: const-string v0, "signature-key generatePrivatePublicKeyPair() failure" // string@a1ab │ │ -42ad88: 5b90 d95e |014e: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ -42ad8c: 7100 e0bc 0000 |0150: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42ad92: 0c00 |0153: move-result-object v0 │ │ -42ad94: 6e10 afb9 0000 |0154: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.resetPKI:()V // method@b9af │ │ -42ad9a: 2200 d40a |0157: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ -42ad9e: 5491 d95e |0159: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ -42ada2: 7020 325c 1000 |015b: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ -42ada8: 2700 |015e: throw v0 │ │ -42adaa: 1a00 3f66 |015f: const-string v0, "encryption-key generatePrivatePublicKeyPair() failure" // string@663f │ │ -42adae: 5b90 d95e |0161: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ -42adb2: 7100 e0bc 0000 |0163: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42adb8: 0c00 |0166: move-result-object v0 │ │ -42adba: 6e10 afb9 0000 |0167: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.resetPKI:()V // method@b9af │ │ -42adc0: 2200 d40a |016a: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ -42adc4: 5491 d95e |016c: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ -42adc8: 7020 325c 1000 |016e: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ -42adce: 2700 |0171: throw v0 │ │ -42add0: 0d00 |0172: move-exception v0 │ │ -42add2: 6e10 375c 0000 |0173: invoke-virtual {v0}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ -42add8: 0c00 |0176: move-result-object v0 │ │ -42adda: 6e10 cf5c 0000 |0177: invoke-virtual {v0}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@5ccf │ │ -42ade0: 0c00 |017a: move-result-object v0 │ │ -42ade2: 6e10 d35c 0000 |017b: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42ade8: 0c00 |017e: move-result-object v0 │ │ -42adea: 5b90 d95e |017f: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ -42adee: 7100 e0bc 0000 |0181: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42adf4: 0c00 |0184: move-result-object v0 │ │ -42adf6: 6e10 afb9 0000 |0185: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.resetPKI:()V // method@b9af │ │ -42adfc: 5490 db5e |0188: iget-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ -42ae00: 2201 fa1a |018a: new-instance v1, Lorg/purple/smoke/Settings$4SingleShot$1; // type@1afa │ │ -42ae04: 7020 a5bc 9100 |018c: invoke-direct {v1, v9}, Lorg/purple/smoke/Settings$4SingleShot$1;.:(Lorg/purple/smoke/Settings$4SingleShot;)V // method@bca5 │ │ -42ae0a: 6e20 0bbd 1000 |018f: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd0b │ │ -42ae10: 0e00 |0192: return-void │ │ +42aad8: |[42aad8] org.purple.smoke.Settings$4SingleShot.run:()V │ │ +42aae8: 1a00 9846 |0000: const-string v0, "Rainbow" // string@4698 │ │ +42aaec: 1a01 6b46 |0002: const-string v1, "RSA" // string@466b │ │ +42aaf0: 1a02 e717 |0004: const-string v2, "EC" // string@17e7 │ │ +42aaf4: 5493 d85e |0006: iget-object v3, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ +42aaf8: 1a04 a506 |0008: const-string v4, "12, 68" // string@06a5 │ │ +42aafc: 6e20 b65c 4300 |000a: invoke-virtual {v3, v4}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +42ab02: 0a03 |000d: move-result v3 │ │ +42ab04: 1224 |000e: const/4 v4, #int 2 // #2 │ │ +42ab06: 1215 |000f: const/4 v5, #int 1 // #1 │ │ +42ab08: 1206 |0010: const/4 v6, #int 0 // #0 │ │ +42ab0a: 3803 0400 |0011: if-eqz v3, 0015 // +0004 │ │ +42ab0e: 1213 |0013: const/4 v3, #int 1 // #1 │ │ +42ab10: 280e |0014: goto 0022 // +000e │ │ +42ab12: 5493 d85e |0015: iget-object v3, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ +42ab16: 1a07 af06 |0017: const-string v7, "13, 118" // string@06af │ │ +42ab1a: 6e20 b65c 7300 |0019: invoke-virtual {v3, v7}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +42ab20: 0a03 |001c: move-result v3 │ │ +42ab22: 3803 0400 |001d: if-eqz v3, 0021 // +0004 │ │ +42ab26: 1223 |001f: const/4 v3, #int 2 // #2 │ │ +42ab28: 2802 |0020: goto 0022 // +0002 │ │ +42ab2a: 1203 |0021: const/4 v3, #int 0 // #0 │ │ +42ab2c: 5497 d85e |0022: iget-object v7, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ +42ab30: 6208 bb53 |0024: sget-object v8, Lorg/purple/smoke/Cryptography;.PKI_ENCRYPTION_KEY_SIZES:[I // field@53bb │ │ +42ab34: 4408 0806 |0026: aget v8, v8, v6 │ │ +42ab38: 7130 8fb9 8703 |0028: invoke-static {v7, v8, v3}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ +42ab3e: 0c03 |002b: move-result-object v3 │ │ +42ab40: 3803 3301 |002c: if-eqz v3, 015f // +0133 │ │ +42ab44: 5497 da5e |002e: iget-object v7, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ +42ab48: 6e20 b85c 2700 |0030: invoke-virtual {v7, v2}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42ab4e: 0a07 |0033: move-result v7 │ │ +42ab50: 3807 0b00 |0034: if-eqz v7, 003f // +000b │ │ +42ab54: 6200 bf53 |0036: sget-object v0, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ +42ab58: 4400 0006 |0038: aget v0, v0, v6 │ │ +42ab5c: 7130 8fb9 0206 |003a: invoke-static {v2, v0, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ +42ab62: 0c00 |003d: move-result-object v0 │ │ +42ab64: 282e |003e: goto 006c // +002e │ │ +42ab66: 5492 da5e |003f: iget-object v2, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ +42ab6a: 6e20 b85c 1200 |0041: invoke-virtual {v2, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42ab70: 0a02 |0044: move-result v2 │ │ +42ab72: 3802 0b00 |0045: if-eqz v2, 0050 // +000b │ │ +42ab76: 6200 bf53 |0047: sget-object v0, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ +42ab7a: 4400 0005 |0049: aget v0, v0, v5 │ │ +42ab7e: 7130 8fb9 0106 |004b: invoke-static {v1, v0, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ +42ab84: 0c00 |004e: move-result-object v0 │ │ +42ab86: 281d |004f: goto 006c // +001d │ │ +42ab88: 5491 da5e |0050: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ +42ab8c: 6e20 b85c 0100 |0052: invoke-virtual {v1, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42ab92: 0a01 |0055: move-result v1 │ │ +42ab94: 3801 0b00 |0056: if-eqz v1, 0061 // +000b │ │ +42ab98: 6201 bf53 |0058: sget-object v1, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ +42ab9c: 4401 0104 |005a: aget v1, v1, v4 │ │ +42aba0: 7130 8fb9 1006 |005c: invoke-static {v0, v1, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ +42aba6: 0c00 |005f: move-result-object v0 │ │ +42aba8: 280c |0060: goto 006c // +000c │ │ +42abaa: 5490 da5e |0061: iget-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ +42abae: 6201 bf53 |0063: sget-object v1, Lorg/purple/smoke/Cryptography;.PKI_SIGNATURE_KEY_SIZES:[I // field@53bf │ │ +42abb2: 1232 |0065: const/4 v2, #int 3 // #3 │ │ +42abb4: 4401 0102 |0066: aget v1, v1, v2 │ │ +42abb8: 7130 8fb9 1006 |0068: invoke-static {v0, v1, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ +42abbe: 0c00 |006b: move-result-object v0 │ │ +42abc0: 3800 e000 |006c: if-eqz v0, 014c // +00e0 │ │ +42abc4: 7100 e0bc 0000 |006e: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42abca: 0c01 |0071: move-result-object v1 │ │ +42abcc: 6e20 b2b9 3100 |0072: invoke-virtual {v1, v3}, Lorg/purple/smoke/Cryptography;.setChatEncryptionPublicKeyPair:(Ljava/security/KeyPair;)V // method@b9b2 │ │ +42abd2: 7100 e0bc 0000 |0075: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42abd8: 0c01 |0078: move-result-object v1 │ │ +42abda: 5492 d85e |0079: iget-object v2, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ +42abde: 6e20 b0b9 2100 |007b: invoke-virtual {v1, v2}, Lorg/purple/smoke/Cryptography;.setChatEncryptionPublicKeyAlgorithm:(Ljava/lang/String;)V // method@b9b0 │ │ +42abe4: 7100 e0bc 0000 |007e: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42abea: 0c01 |0081: move-result-object v1 │ │ +42abec: 6e20 b4b9 0100 |0082: invoke-virtual {v1, v0}, Lorg/purple/smoke/Cryptography;.setChatSignaturePublicKeyPair:(Ljava/security/KeyPair;)V // method@b9b4 │ │ +42abf2: 5491 db5e |0085: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42abf6: 7110 e1bc 0100 |0087: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42abfc: 0c01 |008a: move-result-object v1 │ │ +42abfe: 7100 e0bc 0000 |008b: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42ac04: 0c02 |008e: move-result-object v2 │ │ +42ac06: 1a04 cd93 |008f: const-string v4, "pki_chat_encryption_algorithm" // string@93cd │ │ +42ac0a: 5495 d85e |0091: iget-object v5, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_encryptionAlgorithm:Ljava/lang/String; // field@5ed8 │ │ +42ac0e: 6e40 3eba 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@ba3e │ │ +42ac14: 5491 db5e |0096: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42ac18: 7110 e1bc 0100 |0098: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42ac1e: 0c01 |009b: move-result-object v1 │ │ +42ac20: 7100 e0bc 0000 |009c: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42ac26: 0c02 |009f: move-result-object v2 │ │ +42ac28: 1a04 ce93 |00a0: const-string v4, "pki_chat_encryption_private_key" // string@93ce │ │ +42ac2c: 6e10 fd5d 0300 |00a2: invoke-virtual {v3}, Ljava/security/KeyPair;.getPrivate:()Ljava/security/PrivateKey; // method@5dfd │ │ +42ac32: 0c05 |00a5: move-result-object v5 │ │ +42ac34: 7210 375e 0500 |00a6: invoke-interface {v5}, Ljava/security/PrivateKey;.getEncoded:()[B // method@5e37 │ │ +42ac3a: 0c05 |00a9: move-result-object v5 │ │ +42ac3c: 7120 c454 6500 |00aa: invoke-static {v5, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42ac42: 0c05 |00ad: move-result-object v5 │ │ +42ac44: 6e40 3eba 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@ba3e │ │ +42ac4a: 5491 db5e |00b1: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42ac4e: 7110 e1bc 0100 |00b3: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42ac54: 0c01 |00b6: move-result-object v1 │ │ +42ac56: 7100 e0bc 0000 |00b7: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42ac5c: 0c02 |00ba: move-result-object v2 │ │ +42ac5e: 1a04 cf93 |00bb: const-string v4, "pki_chat_encryption_public_key" // string@93cf │ │ +42ac62: 6e10 fe5d 0300 |00bd: invoke-virtual {v3}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfe │ │ +42ac68: 0c03 |00c0: move-result-object v3 │ │ +42ac6a: 7210 3e5e 0300 |00c1: invoke-interface {v3}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3e │ │ +42ac70: 0c03 |00c4: move-result-object v3 │ │ +42ac72: 7120 c454 6300 |00c5: invoke-static {v3, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42ac78: 0c03 |00c8: move-result-object v3 │ │ +42ac7a: 6e40 3eba 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@ba3e │ │ +42ac80: 5491 db5e |00cc: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42ac84: 7110 e1bc 0100 |00ce: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42ac8a: 0c01 |00d1: move-result-object v1 │ │ +42ac8c: 7100 e0bc 0000 |00d2: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42ac92: 0c02 |00d5: move-result-object v2 │ │ +42ac94: 1a03 d093 |00d6: const-string v3, "pki_chat_signature_algorithm" // string@93d0 │ │ +42ac98: 5494 da5e |00d8: iget-object v4, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_signatureAlgorithm:Ljava/lang/String; // field@5eda │ │ +42ac9c: 6e40 3eba 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@ba3e │ │ +42aca2: 5491 db5e |00dd: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42aca6: 7110 e1bc 0100 |00df: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42acac: 0c01 |00e2: move-result-object v1 │ │ +42acae: 7100 e0bc 0000 |00e3: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42acb4: 0c02 |00e6: move-result-object v2 │ │ +42acb6: 1a03 d193 |00e7: const-string v3, "pki_chat_signature_private_key" // string@93d1 │ │ +42acba: 6e10 fd5d 0000 |00e9: invoke-virtual {v0}, Ljava/security/KeyPair;.getPrivate:()Ljava/security/PrivateKey; // method@5dfd │ │ +42acc0: 0c04 |00ec: move-result-object v4 │ │ +42acc2: 7210 375e 0400 |00ed: invoke-interface {v4}, Ljava/security/PrivateKey;.getEncoded:()[B // method@5e37 │ │ +42acc8: 0c04 |00f0: move-result-object v4 │ │ +42acca: 7120 c454 6400 |00f1: invoke-static {v4, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42acd0: 0c04 |00f4: move-result-object v4 │ │ +42acd2: 6e40 3eba 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@ba3e │ │ +42acd8: 5491 db5e |00f8: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42acdc: 7110 e1bc 0100 |00fa: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42ace2: 0c01 |00fd: move-result-object v1 │ │ +42ace4: 7100 e0bc 0000 |00fe: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42acea: 0c02 |0101: move-result-object v2 │ │ +42acec: 1a03 d293 |0102: const-string v3, "pki_chat_signature_public_key" // string@93d2 │ │ +42acf0: 6e10 fe5d 0000 |0104: invoke-virtual {v0}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfe │ │ +42acf6: 0c00 |0107: move-result-object v0 │ │ +42acf8: 7210 3e5e 0000 |0108: invoke-interface {v0}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3e │ │ +42acfe: 0c00 |010b: move-result-object v0 │ │ +42ad00: 7120 c454 6000 |010c: invoke-static {v0, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42ad06: 0c00 |010f: move-result-object v0 │ │ +42ad08: 6e40 3eba 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@ba3e │ │ +42ad0e: 7100 e0bc 0000 |0113: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42ad14: 0c00 |0116: move-result-object v0 │ │ +42ad16: 5491 db5e |0117: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42ad1a: 7110 e1bc 0100 |0119: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42ad20: 0c01 |011c: move-result-object v1 │ │ +42ad22: 7100 e0bc 0000 |011d: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42ad28: 0c02 |0120: move-result-object v2 │ │ +42ad2a: 1a03 4259 |0121: const-string v3, "alias" // string@5942 │ │ +42ad2e: 6e30 1bba 2103 |0123: invoke-virtual {v1, v2, v3}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42ad34: 0c01 |0126: move-result-object v1 │ │ +42ad36: 6e20 a5b9 1000 |0127: invoke-virtual {v0, v1}, Lorg/purple/smoke/Cryptography;.prepareSipHashIds:(Ljava/lang/String;)Z // method@b9a5 │ │ +42ad3c: 0a00 |012a: move-result v0 │ │ +42ad3e: 7100 e0bc 0000 |012b: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42ad44: 0c01 |012e: move-result-object v1 │ │ +42ad46: 6e10 a6b9 0100 |012f: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.prepareSipHashKeys:()Z // method@b9a6 │ │ +42ad4c: 0a01 |0132: move-result v1 │ │ +42ad4e: 3800 0400 |0133: if-eqz v0, 0137 // +0004 │ │ +42ad52: 3901 5300 |0135: if-nez v1, 0188 // +0053 │ │ +42ad56: 3900 0700 |0137: if-nez v0, 013e // +0007 │ │ +42ad5a: 1a00 bc94 |0139: const-string v0, "prepareSipHashIds() failure" // string@94bc │ │ +42ad5e: 5b90 d95e |013b: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ +42ad62: 2807 |013d: goto 0144 // +0007 │ │ +42ad64: 3901 0600 |013e: if-nez v1, 0144 // +0006 │ │ +42ad68: 1a00 bf94 |0140: const-string v0, "prepareSipHashKeys() failure" // string@94bf │ │ +42ad6c: 5b90 d95e |0142: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ +42ad70: 7100 e0bc 0000 |0144: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42ad76: 0c00 |0147: move-result-object v0 │ │ +42ad78: 6e10 afb9 0000 |0148: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.resetPKI:()V // method@b9af │ │ +42ad7e: 283d |014b: goto 0188 // +003d │ │ +42ad80: 1a00 aba1 |014c: const-string v0, "signature-key generatePrivatePublicKeyPair() failure" // string@a1ab │ │ +42ad84: 5b90 d95e |014e: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ +42ad88: 7100 e0bc 0000 |0150: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42ad8e: 0c00 |0153: move-result-object v0 │ │ +42ad90: 6e10 afb9 0000 |0154: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.resetPKI:()V // method@b9af │ │ +42ad96: 2200 d40a |0157: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ +42ad9a: 5491 d95e |0159: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ +42ad9e: 7020 325c 1000 |015b: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ +42ada4: 2700 |015e: throw v0 │ │ +42ada6: 1a00 3f66 |015f: const-string v0, "encryption-key generatePrivatePublicKeyPair() failure" // string@663f │ │ +42adaa: 5b90 d95e |0161: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ +42adae: 7100 e0bc 0000 |0163: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42adb4: 0c00 |0166: move-result-object v0 │ │ +42adb6: 6e10 afb9 0000 |0167: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.resetPKI:()V // method@b9af │ │ +42adbc: 2200 d40a |016a: new-instance v0, Ljava/lang/Exception; // type@0ad4 │ │ +42adc0: 5491 d95e |016c: iget-object v1, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ +42adc4: 7020 325c 1000 |016e: invoke-direct {v0, v1}, Ljava/lang/Exception;.:(Ljava/lang/String;)V // method@5c32 │ │ +42adca: 2700 |0171: throw v0 │ │ +42adcc: 0d00 |0172: move-exception v0 │ │ +42adce: 6e10 375c 0000 |0173: invoke-virtual {v0}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ +42add4: 0c00 |0176: move-result-object v0 │ │ +42add6: 6e10 cf5c 0000 |0177: invoke-virtual {v0}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@5ccf │ │ +42addc: 0c00 |017a: move-result-object v0 │ │ +42adde: 6e10 d35c 0000 |017b: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42ade4: 0c00 |017e: move-result-object v0 │ │ +42ade6: 5b90 d95e |017f: iput-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.m_error:Ljava/lang/String; // field@5ed9 │ │ +42adea: 7100 e0bc 0000 |0181: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42adf0: 0c00 |0184: move-result-object v0 │ │ +42adf2: 6e10 afb9 0000 |0185: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.resetPKI:()V // method@b9af │ │ +42adf8: 5490 db5e |0188: iget-object v0, v9, Lorg/purple/smoke/Settings$4SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5edb │ │ +42adfc: 2201 fa1a |018a: new-instance v1, Lorg/purple/smoke/Settings$4SingleShot$1; // type@1afa │ │ +42ae00: 7020 a5bc 9100 |018c: invoke-direct {v1, v9}, Lorg/purple/smoke/Settings$4SingleShot$1;.:(Lorg/purple/smoke/Settings$4SingleShot;)V // method@bca5 │ │ +42ae06: 6e20 0bbd 1000 |018f: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd0b │ │ +42ae0c: 0e00 |0192: return-void │ │ catches : 1 │ │ 0x0006 - 0x0172 │ │ Ljava/lang/Exception; -> 0x0172 │ │ positions : │ │ 0x0006 line=2579 │ │ 0x0015 line=2581 │ │ 0x0022 line=2584 │ │ @@ -738745,18 +738744,18 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -42b154: |[42b154] org.purple.smoke.Settings$5.:(Lorg/purple/smoke/Settings;)V │ │ -42b164: 5b01 df5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$5;.this$0:Lorg/purple/smoke/Settings; // field@5edf │ │ -42b168: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42b16e: 0e00 |0005: return-void │ │ +42b150: |[42b150] org.purple.smoke.Settings$5.:(Lorg/purple/smoke/Settings;)V │ │ +42b160: 5b01 df5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$5;.this$0:Lorg/purple/smoke/Settings; // field@5edf │ │ +42b164: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42b16a: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1656 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$5; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings; │ │ │ │ @@ -738766,23 +738765,23 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 15 16-bit code units │ │ -42b170: |[42b170] org.purple.smoke.Settings$5.onClick:(Landroid/view/View;)V │ │ -42b180: 5401 df5e |0000: iget-object v1, v0, Lorg/purple/smoke/Settings$5;.this$0:Lorg/purple/smoke/Settings; // field@5edf │ │ -42b184: 6e10 f4bc 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ -42b18a: 0a01 |0005: move-result v1 │ │ -42b18c: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ -42b190: 0e00 |0008: return-void │ │ -42b192: 5401 df5e |0009: iget-object v1, v0, Lorg/purple/smoke/Settings$5;.this$0:Lorg/purple/smoke/Settings; // field@5edf │ │ -42b196: 7110 d6bc 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$1600:(Lorg/purple/smoke/Settings;)V // method@bcd6 │ │ -42b19c: 0e00 |000e: return-void │ │ +42b16c: |[42b16c] org.purple.smoke.Settings$5.onClick:(Landroid/view/View;)V │ │ +42b17c: 5401 df5e |0000: iget-object v1, v0, Lorg/purple/smoke/Settings$5;.this$0:Lorg/purple/smoke/Settings; // field@5edf │ │ +42b180: 6e10 f4bc 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ +42b186: 0a01 |0005: move-result v1 │ │ +42b188: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ +42b18c: 0e00 |0008: return-void │ │ +42b18e: 5401 df5e |0009: iget-object v1, v0, Lorg/purple/smoke/Settings$5;.this$0:Lorg/purple/smoke/Settings; // field@5edf │ │ +42b192: 7110 d6bc 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$1600:(Lorg/purple/smoke/Settings;)V // method@bcd6 │ │ +42b198: 0e00 |000e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1659 │ │ 0x0009 line=1662 │ │ locals : │ │ 0x0000 - 0x000f reg=0 this Lorg/purple/smoke/Settings$5; │ │ 0x0000 - 0x000f reg=1 (null) Landroid/view/View; │ │ @@ -738822,18 +738821,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 │ │ -42af88: |[42af88] org.purple.smoke.Settings$5SingleShot$1.:(Lorg/purple/smoke/Settings$5SingleShot;)V │ │ -42af98: 5b01 e05e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ -42af9c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42afa2: 0e00 |0005: return-void │ │ +42af84: |[42af84] org.purple.smoke.Settings$5SingleShot$1.:(Lorg/purple/smoke/Settings$5SingleShot;)V │ │ +42af94: 5b01 e05e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ +42af98: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42af9e: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2793 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$5SingleShot$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings$5SingleShot; │ │ │ │ @@ -738843,57 +738842,57 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 91 16-bit code units │ │ -42afa4: |[42afa4] org.purple.smoke.Settings$5SingleShot$1.run:()V │ │ -42afb4: 5430 e05e |0000: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ -42afb8: 5400 e35e |0002: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ee3 │ │ -42afbc: 1241 |0004: const/4 v1, #int 4 // #4 │ │ -42afbe: 6e20 5f5a 1000 |0005: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42afc4: 5430 e05e |0008: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ -42afc8: 5400 e25e |000a: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ -42afcc: 6e10 f2bc 0000 |000c: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ -42afd2: 0c00 |000f: move-result-object v0 │ │ -42afd4: 1301 1000 |0010: const/16 v1, #int 16 // #10 │ │ -42afd8: 6e20 8557 1000 |0012: invoke-virtual {v0, v1}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ -42afde: 5430 e05e |0015: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ -42afe2: 5400 e25e |0017: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ -42afe6: 1401 9200 087f |0019: const v1, #float 1.80778e+38 // #7f080092 │ │ -42afec: 6e20 eabc 1000 |001c: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42aff2: 0c00 |001f: move-result-object v0 │ │ -42aff4: 1211 |0020: const/4 v1, #int 1 // #1 │ │ -42aff6: 7120 ebbb 1000 |0021: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ -42affc: 5430 e05e |0024: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ -42b000: 5400 e25e |0026: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ -42b004: 7110 e2bc 0000 |0028: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$500:(Lorg/purple/smoke/Settings;)V // method@bce2 │ │ -42b00a: 5430 e05e |002b: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ -42b00e: 7110 afbc 0000 |002d: invoke-static {v0}, Lorg/purple/smoke/Settings$5SingleShot;.access$2600:(Lorg/purple/smoke/Settings$5SingleShot;)Ljava/lang/String; // method@bcaf │ │ -42b014: 0c00 |0030: move-result-object v0 │ │ -42b016: 6e10 c35c 0000 |0031: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42b01c: 0a00 |0034: move-result v0 │ │ -42b01e: 3900 2500 |0035: if-nez v0, 005a // +0025 │ │ -42b022: 5430 e05e |0037: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ -42b026: 5400 e25e |0039: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ -42b02a: 2201 f10a |003b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -42b02e: 7010 ee5c 0100 |003d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42b034: 1a02 6a0d |0040: const-string v2, "An error (" // string@0d6a │ │ -42b038: 6e20 f95c 2100 |0042: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b03e: 5432 e05e |0045: iget-object v2, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ -42b042: 7110 afbc 0200 |0047: invoke-static {v2}, Lorg/purple/smoke/Settings$5SingleShot;.access$2600:(Lorg/purple/smoke/Settings$5SingleShot;)Ljava/lang/String; // method@bcaf │ │ -42b048: 0c02 |004a: move-result-object v2 │ │ -42b04a: 6e20 f95c 2100 |004b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b050: 1a02 0104 |004e: const-string v2, ") occurred while preparing a request of public key material." // string@0401 │ │ -42b054: 6e20 f95c 2100 |0050: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b05a: 6e10 035d 0100 |0053: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42b060: 0c01 |0056: move-result-object v1 │ │ -42b062: 7120 fabb 1000 |0057: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ -42b068: 0e00 |005a: return-void │ │ +42afa0: |[42afa0] org.purple.smoke.Settings$5SingleShot$1.run:()V │ │ +42afb0: 5430 e05e |0000: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ +42afb4: 5400 e35e |0002: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ee3 │ │ +42afb8: 1241 |0004: const/4 v1, #int 4 // #4 │ │ +42afba: 6e20 5f5a 1000 |0005: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42afc0: 5430 e05e |0008: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ +42afc4: 5400 e25e |000a: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ +42afc8: 6e10 f2bc 0000 |000c: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ +42afce: 0c00 |000f: move-result-object v0 │ │ +42afd0: 1301 1000 |0010: const/16 v1, #int 16 // #10 │ │ +42afd4: 6e20 8557 1000 |0012: invoke-virtual {v0, v1}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ +42afda: 5430 e05e |0015: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ +42afde: 5400 e25e |0017: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ +42afe2: 1401 9200 087f |0019: const v1, #float 1.80778e+38 // #7f080092 │ │ +42afe8: 6e20 eabc 1000 |001c: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42afee: 0c00 |001f: move-result-object v0 │ │ +42aff0: 1211 |0020: const/4 v1, #int 1 // #1 │ │ +42aff2: 7120 ebbb 1000 |0021: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ +42aff8: 5430 e05e |0024: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ +42affc: 5400 e25e |0026: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ +42b000: 7110 e2bc 0000 |0028: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$500:(Lorg/purple/smoke/Settings;)V // method@bce2 │ │ +42b006: 5430 e05e |002b: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ +42b00a: 7110 afbc 0000 |002d: invoke-static {v0}, Lorg/purple/smoke/Settings$5SingleShot;.access$2600:(Lorg/purple/smoke/Settings$5SingleShot;)Ljava/lang/String; // method@bcaf │ │ +42b010: 0c00 |0030: move-result-object v0 │ │ +42b012: 6e10 c35c 0000 |0031: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42b018: 0a00 |0034: move-result v0 │ │ +42b01a: 3900 2500 |0035: if-nez v0, 005a // +0025 │ │ +42b01e: 5430 e05e |0037: iget-object v0, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ +42b022: 5400 e25e |0039: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ +42b026: 2201 f10a |003b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +42b02a: 7010 ee5c 0100 |003d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42b030: 1a02 6a0d |0040: const-string v2, "An error (" // string@0d6a │ │ +42b034: 6e20 f95c 2100 |0042: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b03a: 5432 e05e |0045: iget-object v2, v3, Lorg/purple/smoke/Settings$5SingleShot$1;.this$1:Lorg/purple/smoke/Settings$5SingleShot; // field@5ee0 │ │ +42b03e: 7110 afbc 0200 |0047: invoke-static {v2}, Lorg/purple/smoke/Settings$5SingleShot;.access$2600:(Lorg/purple/smoke/Settings$5SingleShot;)Ljava/lang/String; // method@bcaf │ │ +42b044: 0c02 |004a: move-result-object v2 │ │ +42b046: 6e20 f95c 2100 |004b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b04c: 1a02 0104 |004e: const-string v2, ") occurred while preparing a request of public key material." // string@0401 │ │ +42b050: 6e20 f95c 2100 |0050: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b056: 6e10 035d 0100 |0053: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42b05c: 0c01 |0056: move-result-object v1 │ │ +42b05e: 7120 fabb 1000 |0057: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ +42b064: 0e00 |005a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2797 │ │ 0x0008 line=2798 │ │ 0x0012 line=2799 │ │ 0x0015 line=2801 │ │ 0x001c line=2802 │ │ @@ -738954,22 +738953,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 │ │ -42b084: |[42b084] org.purple.smoke.Settings$5SingleShot.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V │ │ -42b094: 5b01 e25e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ -42b098: 5b02 e45e |0002: iput-object v2, v0, Lorg/purple/smoke/Settings$5SingleShot;.val$oid:Ljava/lang/String; // field@5ee4 │ │ -42b09c: 5b03 e35e |0004: iput-object v3, v0, Lorg/purple/smoke/Settings$5SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ee3 │ │ -42b0a0: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42b0a6: 1a01 0000 |0009: const-string v1, "" // string@0000 │ │ -42b0aa: 5b01 e15e |000b: iput-object v1, v0, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ -42b0ae: 0e00 |000d: return-void │ │ +42b080: |[42b080] org.purple.smoke.Settings$5SingleShot.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V │ │ +42b090: 5b01 e25e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ +42b094: 5b02 e45e |0002: iput-object v2, v0, Lorg/purple/smoke/Settings$5SingleShot;.val$oid:Ljava/lang/String; // field@5ee4 │ │ +42b098: 5b03 e35e |0004: iput-object v3, v0, Lorg/purple/smoke/Settings$5SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ee3 │ │ +42b09c: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42b0a2: 1a01 0000 |0009: const-string v1, "" // string@0000 │ │ +42b0a6: 5b01 e15e |000b: iput-object v1, v0, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ +42b0aa: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2765 │ │ 0x000b line=2762 │ │ locals : │ │ 0x0000 - 0x000e reg=0 this Lorg/purple/smoke/Settings$5SingleShot; │ │ 0x0000 - 0x000e reg=1 (null) Lorg/purple/smoke/Settings; │ │ @@ -738981,17 +738980,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 │ │ -42b06c: |[42b06c] org.purple.smoke.Settings$5SingleShot.access$2600:(Lorg/purple/smoke/Settings$5SingleShot;)Ljava/lang/String; │ │ -42b07c: 5400 e15e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ -42b080: 1100 |0002: return-object v0 │ │ +42b068: |[42b068] org.purple.smoke.Settings$5SingleShot.access$2600:(Lorg/purple/smoke/Settings$5SingleShot;)Ljava/lang/String; │ │ +42b078: 5400 e15e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ +42b07c: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2760 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings$5SingleShot; │ │ │ │ Virtual methods - │ │ @@ -739000,53 +738999,53 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 74 16-bit code units │ │ -42b0b0: |[42b0b0] org.purple.smoke.Settings$5SingleShot.run:()V │ │ -42b0c0: 5440 e25e |0000: iget-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ -42b0c4: 7110 e1bc 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42b0ca: 0c00 |0005: move-result-object v0 │ │ -42b0cc: 7100 e0bc 0000 |0006: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42b0d2: 0c01 |0009: move-result-object v1 │ │ -42b0d4: 5442 e45e |000a: iget-object v2, v4, Lorg/purple/smoke/Settings$5SingleShot;.val$oid:Ljava/lang/String; // field@5ee4 │ │ -42b0d8: 6e30 1dba 1002 |000c: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSipHashIdString:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1d │ │ -42b0de: 0c00 |000f: move-result-object v0 │ │ -42b0e0: 6e10 c35c 0000 |0010: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42b0e6: 0a01 |0013: move-result v1 │ │ -42b0e8: 3801 0700 |0014: if-eqz v1, 001b // +0007 │ │ -42b0ec: 1a00 6096 |0016: const-string v0, "readSipHashIdString() failure" // string@9660 │ │ -42b0f0: 5b40 e15e |0018: iput-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ -42b0f4: 2825 |001a: goto 003f // +0025 │ │ -42b0f6: 7100 e0bc 0000 |001b: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42b0fc: 0c01 |001e: move-result-object v1 │ │ -42b0fe: 7120 c4bb 0100 |001f: invoke-static {v1, v0}, Lorg/purple/smoke/Messages;.pkpRequestMessage:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)[B // method@bbc4 │ │ -42b104: 0c00 |0022: move-result-object v0 │ │ -42b106: 3900 0700 |0023: if-nez v0, 002a // +0007 │ │ -42b10a: 1a00 d993 |0025: const-string v0, "pkpRequestMessage() failure" // string@93d9 │ │ -42b10e: 5b40 e15e |0027: iput-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ -42b112: 2816 |0029: goto 003f // +0016 │ │ -42b114: 7100 10bb 0000 |002a: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -42b11a: 0c01 |002d: move-result-object v1 │ │ -42b11c: 7110 b6bb 0000 |002e: invoke-static {v0}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb6 │ │ -42b122: 0c00 |0031: move-result-object v0 │ │ -42b124: 1202 |0032: const/4 v2, #int 0 // #0 │ │ -42b126: 1303 0900 |0033: const/16 v3, #int 9 // #9 │ │ -42b12a: 6e40 0bbb 0132 |0035: invoke-virtual {v1, v0, v2, v3}, Lorg/purple/smoke/Kernel;.enqueueMessage:(Ljava/lang/String;[BI)Z // method@bb0b │ │ -42b130: 0a00 |0038: move-result v0 │ │ -42b132: 3900 0600 |0039: if-nez v0, 003f // +0006 │ │ -42b136: 1a00 bf66 |003b: const-string v0, "enqueueMessage() failure" // string@66bf │ │ -42b13a: 5b40 e15e |003d: iput-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ -42b13e: 5440 e25e |003f: iget-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ -42b142: 2201 fd1a |0041: new-instance v1, Lorg/purple/smoke/Settings$5SingleShot$1; // type@1afd │ │ -42b146: 7020 acbc 4100 |0043: invoke-direct {v1, v4}, Lorg/purple/smoke/Settings$5SingleShot$1;.:(Lorg/purple/smoke/Settings$5SingleShot;)V // method@bcac │ │ -42b14c: 6e20 0bbd 1000 |0046: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd0b │ │ -42b152: 0e00 |0049: return-void │ │ +42b0ac: |[42b0ac] org.purple.smoke.Settings$5SingleShot.run:()V │ │ +42b0bc: 5440 e25e |0000: iget-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ +42b0c0: 7110 e1bc 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42b0c6: 0c00 |0005: move-result-object v0 │ │ +42b0c8: 7100 e0bc 0000 |0006: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42b0ce: 0c01 |0009: move-result-object v1 │ │ +42b0d0: 5442 e45e |000a: iget-object v2, v4, Lorg/purple/smoke/Settings$5SingleShot;.val$oid:Ljava/lang/String; // field@5ee4 │ │ +42b0d4: 6e30 1dba 1002 |000c: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSipHashIdString:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1d │ │ +42b0da: 0c00 |000f: move-result-object v0 │ │ +42b0dc: 6e10 c35c 0000 |0010: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42b0e2: 0a01 |0013: move-result v1 │ │ +42b0e4: 3801 0700 |0014: if-eqz v1, 001b // +0007 │ │ +42b0e8: 1a00 6096 |0016: const-string v0, "readSipHashIdString() failure" // string@9660 │ │ +42b0ec: 5b40 e15e |0018: iput-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ +42b0f0: 2825 |001a: goto 003f // +0025 │ │ +42b0f2: 7100 e0bc 0000 |001b: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42b0f8: 0c01 |001e: move-result-object v1 │ │ +42b0fa: 7120 c4bb 0100 |001f: invoke-static {v1, v0}, Lorg/purple/smoke/Messages;.pkpRequestMessage:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)[B // method@bbc4 │ │ +42b100: 0c00 |0022: move-result-object v0 │ │ +42b102: 3900 0700 |0023: if-nez v0, 002a // +0007 │ │ +42b106: 1a00 d993 |0025: const-string v0, "pkpRequestMessage() failure" // string@93d9 │ │ +42b10a: 5b40 e15e |0027: iput-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ +42b10e: 2816 |0029: goto 003f // +0016 │ │ +42b110: 7100 10bb 0000 |002a: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +42b116: 0c01 |002d: move-result-object v1 │ │ +42b118: 7110 b6bb 0000 |002e: invoke-static {v0}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb6 │ │ +42b11e: 0c00 |0031: move-result-object v0 │ │ +42b120: 1202 |0032: const/4 v2, #int 0 // #0 │ │ +42b122: 1303 0900 |0033: const/16 v3, #int 9 // #9 │ │ +42b126: 6e40 0bbb 0132 |0035: invoke-virtual {v1, v0, v2, v3}, Lorg/purple/smoke/Kernel;.enqueueMessage:(Ljava/lang/String;[BI)Z // method@bb0b │ │ +42b12c: 0a00 |0038: move-result v0 │ │ +42b12e: 3900 0600 |0039: if-nez v0, 003f // +0006 │ │ +42b132: 1a00 bf66 |003b: const-string v0, "enqueueMessage() failure" // string@66bf │ │ +42b136: 5b40 e15e |003d: iput-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.m_error:Ljava/lang/String; // field@5ee1 │ │ +42b13a: 5440 e25e |003f: iget-object v0, v4, Lorg/purple/smoke/Settings$5SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee2 │ │ +42b13e: 2201 fd1a |0041: new-instance v1, Lorg/purple/smoke/Settings$5SingleShot$1; // type@1afd │ │ +42b142: 7020 acbc 4100 |0043: invoke-direct {v1, v4}, Lorg/purple/smoke/Settings$5SingleShot$1;.:(Lorg/purple/smoke/Settings$5SingleShot;)V // method@bcac │ │ +42b148: 6e20 0bbd 1000 |0046: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd0b │ │ +42b14e: 0e00 |0049: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2771 │ │ 0x0006 line=2772 │ │ 0x0010 line=2774 │ │ 0x0018 line=2775 │ │ 0x001b line=2779 │ │ @@ -739094,18 +739093,18 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -42b374: |[42b374] org.purple.smoke.Settings$6.:(Lorg/purple/smoke/Settings;)V │ │ -42b384: 5b01 e55e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$6;.this$0:Lorg/purple/smoke/Settings; // field@5ee5 │ │ -42b388: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42b38e: 0e00 |0005: return-void │ │ +42b370: |[42b370] org.purple.smoke.Settings$6.:(Lorg/purple/smoke/Settings;)V │ │ +42b380: 5b01 e55e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$6;.this$0:Lorg/purple/smoke/Settings; // field@5ee5 │ │ +42b384: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42b38a: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1668 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$6; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings; │ │ │ │ @@ -739115,23 +739114,23 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 15 16-bit code units │ │ -42b390: |[42b390] org.purple.smoke.Settings$6.onClick:(Landroid/view/View;)V │ │ -42b3a0: 5401 e55e |0000: iget-object v1, v0, Lorg/purple/smoke/Settings$6;.this$0:Lorg/purple/smoke/Settings; // field@5ee5 │ │ -42b3a4: 6e10 f4bc 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ -42b3aa: 0a01 |0005: move-result v1 │ │ -42b3ac: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ -42b3b0: 0e00 |0008: return-void │ │ -42b3b2: 5401 e55e |0009: iget-object v1, v0, Lorg/purple/smoke/Settings$6;.this$0:Lorg/purple/smoke/Settings; // field@5ee5 │ │ -42b3b6: 7110 d7bc 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$1700:(Lorg/purple/smoke/Settings;)V // method@bcd7 │ │ -42b3bc: 0e00 |000e: return-void │ │ +42b38c: |[42b38c] org.purple.smoke.Settings$6.onClick:(Landroid/view/View;)V │ │ +42b39c: 5401 e55e |0000: iget-object v1, v0, Lorg/purple/smoke/Settings$6;.this$0:Lorg/purple/smoke/Settings; // field@5ee5 │ │ +42b3a0: 6e10 f4bc 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ +42b3a6: 0a01 |0005: move-result v1 │ │ +42b3a8: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ +42b3ac: 0e00 |0008: return-void │ │ +42b3ae: 5401 e55e |0009: iget-object v1, v0, Lorg/purple/smoke/Settings$6;.this$0:Lorg/purple/smoke/Settings; // field@5ee5 │ │ +42b3b2: 7110 d7bc 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$1700:(Lorg/purple/smoke/Settings;)V // method@bcd7 │ │ +42b3b8: 0e00 |000e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1671 │ │ 0x0009 line=1674 │ │ locals : │ │ 0x0000 - 0x000f reg=0 this Lorg/purple/smoke/Settings$6; │ │ 0x0000 - 0x000f reg=1 (null) Landroid/view/View; │ │ @@ -739171,18 +739170,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 │ │ -42b1a0: |[42b1a0] org.purple.smoke.Settings$6SingleShot$1.:(Lorg/purple/smoke/Settings$6SingleShot;)V │ │ -42b1b0: 5b01 e65e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ -42b1b4: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42b1ba: 0e00 |0005: return-void │ │ +42b19c: |[42b19c] org.purple.smoke.Settings$6SingleShot$1.:(Lorg/purple/smoke/Settings$6SingleShot;)V │ │ +42b1ac: 5b01 e65e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ +42b1b0: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42b1b6: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2872 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$6SingleShot$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings$6SingleShot; │ │ │ │ @@ -739192,57 +739191,57 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 91 16-bit code units │ │ -42b1bc: |[42b1bc] org.purple.smoke.Settings$6SingleShot$1.run:()V │ │ -42b1cc: 5430 e65e |0000: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ -42b1d0: 5400 e95e |0002: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ee9 │ │ -42b1d4: 1241 |0004: const/4 v1, #int 4 // #4 │ │ -42b1d6: 6e20 5f5a 1000 |0005: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42b1dc: 5430 e65e |0008: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ -42b1e0: 5400 e85e |000a: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ -42b1e4: 6e10 f2bc 0000 |000c: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ -42b1ea: 0c00 |000f: move-result-object v0 │ │ -42b1ec: 1301 1000 |0010: const/16 v1, #int 16 // #10 │ │ -42b1f0: 6e20 8557 1000 |0012: invoke-virtual {v0, v1}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ -42b1f6: 5430 e65e |0015: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ -42b1fa: 5400 e85e |0017: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ -42b1fe: 1401 9200 087f |0019: const v1, #float 1.80778e+38 // #7f080092 │ │ -42b204: 6e20 eabc 1000 |001c: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42b20a: 0c00 |001f: move-result-object v0 │ │ -42b20c: 1211 |0020: const/4 v1, #int 1 // #1 │ │ -42b20e: 7120 ebbb 1000 |0021: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ -42b214: 5430 e65e |0024: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ -42b218: 5400 e85e |0026: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ -42b21c: 7110 e2bc 0000 |0028: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$500:(Lorg/purple/smoke/Settings;)V // method@bce2 │ │ -42b222: 5430 e65e |002b: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ -42b226: 7110 b6bc 0000 |002d: invoke-static {v0}, Lorg/purple/smoke/Settings$6SingleShot;.access$2700:(Lorg/purple/smoke/Settings$6SingleShot;)Ljava/lang/String; // method@bcb6 │ │ -42b22c: 0c00 |0030: move-result-object v0 │ │ -42b22e: 6e10 c35c 0000 |0031: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42b234: 0a00 |0034: move-result v0 │ │ -42b236: 3900 2500 |0035: if-nez v0, 005a // +0025 │ │ -42b23a: 5430 e65e |0037: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ -42b23e: 5400 e85e |0039: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ -42b242: 2201 f10a |003b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -42b246: 7010 ee5c 0100 |003d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42b24c: 1a02 6a0d |0040: const-string v2, "An error (" // string@0d6a │ │ -42b250: 6e20 f95c 2100 |0042: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b256: 5432 e65e |0045: iget-object v2, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ -42b25a: 7110 b6bc 0200 |0047: invoke-static {v2}, Lorg/purple/smoke/Settings$6SingleShot;.access$2700:(Lorg/purple/smoke/Settings$6SingleShot;)Ljava/lang/String; // method@bcb6 │ │ -42b260: 0c02 |004a: move-result-object v2 │ │ -42b262: 6e20 f95c 2100 |004b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b268: 1a02 0204 |004e: const-string v2, ") occurred while preparing to transfer public key material." // string@0402 │ │ -42b26c: 6e20 f95c 2100 |0050: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b272: 6e10 035d 0100 |0053: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42b278: 0c01 |0056: move-result-object v1 │ │ -42b27a: 7120 fabb 1000 |0057: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ -42b280: 0e00 |005a: return-void │ │ +42b1b8: |[42b1b8] org.purple.smoke.Settings$6SingleShot$1.run:()V │ │ +42b1c8: 5430 e65e |0000: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ +42b1cc: 5400 e95e |0002: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ee9 │ │ +42b1d0: 1241 |0004: const/4 v1, #int 4 // #4 │ │ +42b1d2: 6e20 5f5a 1000 |0005: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42b1d8: 5430 e65e |0008: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ +42b1dc: 5400 e85e |000a: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ +42b1e0: 6e10 f2bc 0000 |000c: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ +42b1e6: 0c00 |000f: move-result-object v0 │ │ +42b1e8: 1301 1000 |0010: const/16 v1, #int 16 // #10 │ │ +42b1ec: 6e20 8557 1000 |0012: invoke-virtual {v0, v1}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ +42b1f2: 5430 e65e |0015: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ +42b1f6: 5400 e85e |0017: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ +42b1fa: 1401 9200 087f |0019: const v1, #float 1.80778e+38 // #7f080092 │ │ +42b200: 6e20 eabc 1000 |001c: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42b206: 0c00 |001f: move-result-object v0 │ │ +42b208: 1211 |0020: const/4 v1, #int 1 // #1 │ │ +42b20a: 7120 ebbb 1000 |0021: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ +42b210: 5430 e65e |0024: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ +42b214: 5400 e85e |0026: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ +42b218: 7110 e2bc 0000 |0028: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$500:(Lorg/purple/smoke/Settings;)V // method@bce2 │ │ +42b21e: 5430 e65e |002b: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ +42b222: 7110 b6bc 0000 |002d: invoke-static {v0}, Lorg/purple/smoke/Settings$6SingleShot;.access$2700:(Lorg/purple/smoke/Settings$6SingleShot;)Ljava/lang/String; // method@bcb6 │ │ +42b228: 0c00 |0030: move-result-object v0 │ │ +42b22a: 6e10 c35c 0000 |0031: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42b230: 0a00 |0034: move-result v0 │ │ +42b232: 3900 2500 |0035: if-nez v0, 005a // +0025 │ │ +42b236: 5430 e65e |0037: iget-object v0, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ +42b23a: 5400 e85e |0039: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ +42b23e: 2201 f10a |003b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +42b242: 7010 ee5c 0100 |003d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42b248: 1a02 6a0d |0040: const-string v2, "An error (" // string@0d6a │ │ +42b24c: 6e20 f95c 2100 |0042: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b252: 5432 e65e |0045: iget-object v2, v3, Lorg/purple/smoke/Settings$6SingleShot$1;.this$1:Lorg/purple/smoke/Settings$6SingleShot; // field@5ee6 │ │ +42b256: 7110 b6bc 0200 |0047: invoke-static {v2}, Lorg/purple/smoke/Settings$6SingleShot;.access$2700:(Lorg/purple/smoke/Settings$6SingleShot;)Ljava/lang/String; // method@bcb6 │ │ +42b25c: 0c02 |004a: move-result-object v2 │ │ +42b25e: 6e20 f95c 2100 |004b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b264: 1a02 0204 |004e: const-string v2, ") occurred while preparing to transfer public key material." // string@0402 │ │ +42b268: 6e20 f95c 2100 |0050: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b26e: 6e10 035d 0100 |0053: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42b274: 0c01 |0056: move-result-object v1 │ │ +42b276: 7120 fabb 1000 |0057: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ +42b27c: 0e00 |005a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2876 │ │ 0x0008 line=2877 │ │ 0x0012 line=2878 │ │ 0x0015 line=2880 │ │ 0x001c line=2881 │ │ @@ -739303,22 +739302,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 │ │ -42b29c: |[42b29c] org.purple.smoke.Settings$6SingleShot.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V │ │ -42b2ac: 5b01 e85e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ -42b2b0: 5b02 ea5e |0002: iput-object v2, v0, Lorg/purple/smoke/Settings$6SingleShot;.val$oid:Ljava/lang/String; // field@5eea │ │ -42b2b4: 5b03 e95e |0004: iput-object v3, v0, Lorg/purple/smoke/Settings$6SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ee9 │ │ -42b2b8: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42b2be: 1a01 0000 |0009: const-string v1, "" // string@0000 │ │ -42b2c2: 5b01 e75e |000b: iput-object v1, v0, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ -42b2c6: 0e00 |000d: return-void │ │ +42b298: |[42b298] org.purple.smoke.Settings$6SingleShot.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V │ │ +42b2a8: 5b01 e85e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ +42b2ac: 5b02 ea5e |0002: iput-object v2, v0, Lorg/purple/smoke/Settings$6SingleShot;.val$oid:Ljava/lang/String; // field@5eea │ │ +42b2b0: 5b03 e95e |0004: iput-object v3, v0, Lorg/purple/smoke/Settings$6SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ee9 │ │ +42b2b4: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42b2ba: 1a01 0000 |0009: const-string v1, "" // string@0000 │ │ +42b2be: 5b01 e75e |000b: iput-object v1, v0, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ +42b2c2: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2839 │ │ 0x000b line=2836 │ │ locals : │ │ 0x0000 - 0x000e reg=0 this Lorg/purple/smoke/Settings$6SingleShot; │ │ 0x0000 - 0x000e reg=1 (null) Lorg/purple/smoke/Settings; │ │ @@ -739330,17 +739329,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 │ │ -42b284: |[42b284] org.purple.smoke.Settings$6SingleShot.access$2700:(Lorg/purple/smoke/Settings$6SingleShot;)Ljava/lang/String; │ │ -42b294: 5400 e75e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ -42b298: 1100 |0002: return-object v0 │ │ +42b280: |[42b280] org.purple.smoke.Settings$6SingleShot.access$2700:(Lorg/purple/smoke/Settings$6SingleShot;)Ljava/lang/String; │ │ +42b290: 5400 e75e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ +42b294: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2834 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings$6SingleShot; │ │ │ │ Virtual methods - │ │ @@ -739349,55 +739348,55 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 8 │ │ ins : 1 │ │ outs : 6 │ │ insns size : 78 16-bit code units │ │ -42b2c8: |[42b2c8] org.purple.smoke.Settings$6SingleShot.run:()V │ │ -42b2d8: 5470 e85e |0000: iget-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ -42b2dc: 7110 e1bc 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42b2e2: 0c00 |0005: move-result-object v0 │ │ -42b2e4: 7100 e0bc 0000 |0006: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42b2ea: 0c01 |0009: move-result-object v1 │ │ -42b2ec: 5472 ea5e |000a: iget-object v2, v7, Lorg/purple/smoke/Settings$6SingleShot;.val$oid:Ljava/lang/String; // field@5eea │ │ -42b2f0: 6e30 1cba 1002 |000c: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSipHashId:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Lorg/purple/smoke/SipHashIdElement; // method@ba1c │ │ -42b2f6: 0c00 |000f: move-result-object v0 │ │ -42b2f8: 3900 0700 |0010: if-nez v0, 0017 // +0007 │ │ -42b2fc: 1a00 5e96 |0012: const-string v0, "readSipHashId() failure" // string@965e │ │ -42b300: 5b70 e75e |0014: iput-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ -42b304: 282d |0016: goto 0043 // +002d │ │ -42b306: 5401 1b5f |0017: iget-object v1, v0, Lorg/purple/smoke/SipHashIdElement;.m_encryptionAlgorithm:Ljava/lang/String; // field@5f1b │ │ -42b30a: 5402 235f |0019: iget-object v2, v0, Lorg/purple/smoke/SipHashIdElement;.m_sipHashId:Ljava/lang/String; // field@5f23 │ │ -42b30e: 5403 1c5f |001b: iget-object v3, v0, Lorg/purple/smoke/SipHashIdElement;.m_encryptionPublicKey:[B // field@5f1c │ │ -42b312: 5404 225f |001d: iget-object v4, v0, Lorg/purple/smoke/SipHashIdElement;.m_signaturePublicKey:[B // field@5f22 │ │ -42b316: 5405 245f |001f: iget-object v5, v0, Lorg/purple/smoke/SipHashIdElement;.m_stream:[B // field@5f24 │ │ -42b31a: 6206 0555 |0021: sget-object v6, Lorg/purple/smoke/Messages;.CHAT_KEY_TYPE:[B // field@5505 │ │ -42b31e: 7706 bcbb 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@bbbc │ │ -42b324: 0c00 |0026: move-result-object v0 │ │ -42b326: 3900 0700 |0027: if-nez v0, 002e // +0007 │ │ -42b32a: 1a00 1367 |0029: const-string v0, "epksMessage() failure" // string@6713 │ │ -42b32e: 5b70 e75e |002b: iput-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ -42b332: 2816 |002d: goto 0043 // +0016 │ │ -42b334: 7100 10bb 0000 |002e: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -42b33a: 0c01 |0031: move-result-object v1 │ │ -42b33c: 7110 b6bb 0000 |0032: invoke-static {v0}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb6 │ │ -42b342: 0c00 |0035: move-result-object v0 │ │ -42b344: 1202 |0036: const/4 v2, #int 0 // #0 │ │ -42b346: 1303 0900 |0037: const/16 v3, #int 9 // #9 │ │ -42b34a: 6e40 0bbb 0132 |0039: invoke-virtual {v1, v0, v2, v3}, Lorg/purple/smoke/Kernel;.enqueueMessage:(Ljava/lang/String;[BI)Z // method@bb0b │ │ -42b350: 0a00 |003c: move-result v0 │ │ -42b352: 3900 0600 |003d: if-nez v0, 0043 // +0006 │ │ -42b356: 1a00 bf66 |003f: const-string v0, "enqueueMessage() failure" // string@66bf │ │ -42b35a: 5b70 e75e |0041: iput-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ -42b35e: 5470 e85e |0043: iget-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ -42b362: 2201 001b |0045: new-instance v1, Lorg/purple/smoke/Settings$6SingleShot$1; // type@1b00 │ │ -42b366: 7020 b3bc 7100 |0047: invoke-direct {v1, v7}, Lorg/purple/smoke/Settings$6SingleShot$1;.:(Lorg/purple/smoke/Settings$6SingleShot;)V // method@bcb3 │ │ -42b36c: 6e20 0bbd 1000 |004a: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd0b │ │ -42b372: 0e00 |004d: return-void │ │ +42b2c4: |[42b2c4] org.purple.smoke.Settings$6SingleShot.run:()V │ │ +42b2d4: 5470 e85e |0000: iget-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ +42b2d8: 7110 e1bc 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42b2de: 0c00 |0005: move-result-object v0 │ │ +42b2e0: 7100 e0bc 0000 |0006: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42b2e6: 0c01 |0009: move-result-object v1 │ │ +42b2e8: 5472 ea5e |000a: iget-object v2, v7, Lorg/purple/smoke/Settings$6SingleShot;.val$oid:Ljava/lang/String; // field@5eea │ │ +42b2ec: 6e30 1cba 1002 |000c: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSipHashId:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Lorg/purple/smoke/SipHashIdElement; // method@ba1c │ │ +42b2f2: 0c00 |000f: move-result-object v0 │ │ +42b2f4: 3900 0700 |0010: if-nez v0, 0017 // +0007 │ │ +42b2f8: 1a00 5e96 |0012: const-string v0, "readSipHashId() failure" // string@965e │ │ +42b2fc: 5b70 e75e |0014: iput-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ +42b300: 282d |0016: goto 0043 // +002d │ │ +42b302: 5401 1b5f |0017: iget-object v1, v0, Lorg/purple/smoke/SipHashIdElement;.m_encryptionAlgorithm:Ljava/lang/String; // field@5f1b │ │ +42b306: 5402 235f |0019: iget-object v2, v0, Lorg/purple/smoke/SipHashIdElement;.m_sipHashId:Ljava/lang/String; // field@5f23 │ │ +42b30a: 5403 1c5f |001b: iget-object v3, v0, Lorg/purple/smoke/SipHashIdElement;.m_encryptionPublicKey:[B // field@5f1c │ │ +42b30e: 5404 225f |001d: iget-object v4, v0, Lorg/purple/smoke/SipHashIdElement;.m_signaturePublicKey:[B // field@5f22 │ │ +42b312: 5405 245f |001f: iget-object v5, v0, Lorg/purple/smoke/SipHashIdElement;.m_stream:[B // field@5f24 │ │ +42b316: 6206 0555 |0021: sget-object v6, Lorg/purple/smoke/Messages;.CHAT_KEY_TYPE:[B // field@5505 │ │ +42b31a: 7706 bcbb 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@bbbc │ │ +42b320: 0c00 |0026: move-result-object v0 │ │ +42b322: 3900 0700 |0027: if-nez v0, 002e // +0007 │ │ +42b326: 1a00 1367 |0029: const-string v0, "epksMessage() failure" // string@6713 │ │ +42b32a: 5b70 e75e |002b: iput-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ +42b32e: 2816 |002d: goto 0043 // +0016 │ │ +42b330: 7100 10bb 0000 |002e: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +42b336: 0c01 |0031: move-result-object v1 │ │ +42b338: 7110 b6bb 0000 |0032: invoke-static {v0}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb6 │ │ +42b33e: 0c00 |0035: move-result-object v0 │ │ +42b340: 1202 |0036: const/4 v2, #int 0 // #0 │ │ +42b342: 1303 0900 |0037: const/16 v3, #int 9 // #9 │ │ +42b346: 6e40 0bbb 0132 |0039: invoke-virtual {v1, v0, v2, v3}, Lorg/purple/smoke/Kernel;.enqueueMessage:(Ljava/lang/String;[BI)Z // method@bb0b │ │ +42b34c: 0a00 |003c: move-result v0 │ │ +42b34e: 3900 0600 |003d: if-nez v0, 0043 // +0006 │ │ +42b352: 1a00 bf66 |003f: const-string v0, "enqueueMessage() failure" // string@66bf │ │ +42b356: 5b70 e75e |0041: iput-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.m_error:Ljava/lang/String; // field@5ee7 │ │ +42b35a: 5470 e85e |0043: iget-object v0, v7, Lorg/purple/smoke/Settings$6SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ee8 │ │ +42b35e: 2201 001b |0045: new-instance v1, Lorg/purple/smoke/Settings$6SingleShot$1; // type@1b00 │ │ +42b362: 7020 b3bc 7100 |0047: invoke-direct {v1, v7}, Lorg/purple/smoke/Settings$6SingleShot$1;.:(Lorg/purple/smoke/Settings$6SingleShot;)V // method@bcb3 │ │ +42b368: 6e20 0bbd 1000 |004a: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd0b │ │ +42b36e: 0e00 |004d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2845 │ │ 0x0002 line=2846 │ │ 0x0014 line=2849 │ │ 0x0017 line=2852 │ │ 0x0023 line=2853 │ │ @@ -739445,18 +739444,18 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -42b9c4: |[42b9c4] org.purple.smoke.Settings$7.:(Lorg/purple/smoke/Settings;)V │ │ -42b9d4: 5b01 eb5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$7;.this$0:Lorg/purple/smoke/Settings; // field@5eeb │ │ -42b9d8: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42b9de: 0e00 |0005: return-void │ │ +42b9c0: |[42b9c0] org.purple.smoke.Settings$7.:(Lorg/purple/smoke/Settings;)V │ │ +42b9d0: 5b01 eb5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$7;.this$0:Lorg/purple/smoke/Settings; // field@5eeb │ │ +42b9d4: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42b9da: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1680 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$7; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings; │ │ │ │ @@ -739466,26 +739465,26 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 21 16-bit code units │ │ -42b9e0: |[42b9e0] org.purple.smoke.Settings$7.onClick:(Landroid/view/View;)V │ │ -42b9f0: 5412 eb5e |0000: iget-object v2, v1, Lorg/purple/smoke/Settings$7;.this$0:Lorg/purple/smoke/Settings; // field@5eeb │ │ -42b9f4: 6e10 f4bc 0200 |0002: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ -42b9fa: 0a02 |0005: move-result v2 │ │ -42b9fc: 3802 0300 |0006: if-eqz v2, 0009 // +0003 │ │ -42ba00: 0e00 |0008: return-void │ │ -42ba02: 5412 eb5e |0009: iget-object v2, v1, Lorg/purple/smoke/Settings$7;.this$0:Lorg/purple/smoke/Settings; // field@5eeb │ │ -42ba06: 7110 e1bc 0200 |000b: invoke-static {v2}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42ba0c: 0c02 |000e: move-result-object v2 │ │ -42ba0e: 1a00 207e |000f: const-string v0, "log" // string@7e20 │ │ -42ba12: 6e20 e4b9 0200 |0011: invoke-virtual {v2, v0}, Lorg/purple/smoke/Database;.clearTable:(Ljava/lang/String;)V // method@b9e4 │ │ -42ba18: 0e00 |0014: return-void │ │ +42b9dc: |[42b9dc] org.purple.smoke.Settings$7.onClick:(Landroid/view/View;)V │ │ +42b9ec: 5412 eb5e |0000: iget-object v2, v1, Lorg/purple/smoke/Settings$7;.this$0:Lorg/purple/smoke/Settings; // field@5eeb │ │ +42b9f0: 6e10 f4bc 0200 |0002: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ +42b9f6: 0a02 |0005: move-result v2 │ │ +42b9f8: 3802 0300 |0006: if-eqz v2, 0009 // +0003 │ │ +42b9fc: 0e00 |0008: return-void │ │ +42b9fe: 5412 eb5e |0009: iget-object v2, v1, Lorg/purple/smoke/Settings$7;.this$0:Lorg/purple/smoke/Settings; // field@5eeb │ │ +42ba02: 7110 e1bc 0200 |000b: invoke-static {v2}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42ba08: 0c02 |000e: move-result-object v2 │ │ +42ba0a: 1a00 207e |000f: const-string v0, "log" // string@7e20 │ │ +42ba0e: 6e20 e4b9 0200 |0011: invoke-virtual {v2, v0}, Lorg/purple/smoke/Database;.clearTable:(Ljava/lang/String;)V // method@b9e4 │ │ +42ba14: 0e00 |0014: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1683 │ │ 0x0009 line=1686 │ │ locals : │ │ 0x0000 - 0x0015 reg=1 this Lorg/purple/smoke/Settings$7; │ │ 0x0000 - 0x0015 reg=2 (null) Landroid/view/View; │ │ @@ -739525,18 +739524,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 │ │ -42b3c0: |[42b3c0] org.purple.smoke.Settings$7SingleShot$1.:(Lorg/purple/smoke/Settings$7SingleShot;)V │ │ -42b3d0: 5b01 ec5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b3d4: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42b3da: 0e00 |0005: return-void │ │ +42b3bc: |[42b3bc] org.purple.smoke.Settings$7SingleShot$1.:(Lorg/purple/smoke/Settings$7SingleShot;)V │ │ +42b3cc: 5b01 ec5e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b3d0: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42b3d6: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2998 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$7SingleShot$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings$7SingleShot; │ │ │ │ @@ -739546,251 +739545,251 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 17 │ │ ins : 1 │ │ outs : 5 │ │ insns size : 502 16-bit code units │ │ -42b3dc: |[42b3dc] org.purple.smoke.Settings$7SingleShot$1.run:()V │ │ -42b3ec: 0800 1000 |0000: move-object/from16 v0, v16 │ │ -42b3f0: 5401 ec5e |0002: iget-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b3f4: 5411 f45e |0004: iget-object v1, v1, Lorg/purple/smoke/Settings$7SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ef4 │ │ -42b3f8: 1242 |0006: const/4 v2, #int 4 // #4 │ │ -42b3fa: 6e20 5f5a 2100 |0007: invoke-virtual {v1, v2}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42b400: 5401 ec5e |000a: iget-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b404: 5411 f35e |000c: iget-object v1, v1, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b408: 6e10 f2bc 0100 |000e: invoke-virtual {v1}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ -42b40e: 0c01 |0011: move-result-object v1 │ │ -42b410: 1302 1000 |0012: const/16 v2, #int 16 // #10 │ │ -42b414: 6e20 8557 2100 |0014: invoke-virtual {v1, v2}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ -42b41a: 5401 ec5e |0017: iget-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b41e: 5411 f35e |0019: iget-object v1, v1, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b422: 1402 9200 087f |001b: const v2, #float 1.80778e+38 // #7f080092 │ │ -42b428: 6e20 eabc 2100 |001e: invoke-virtual {v1, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42b42e: 0c01 |0021: move-result-object v1 │ │ -42b430: 1212 |0022: const/4 v2, #int 1 // #1 │ │ -42b432: 7120 ebbb 2100 |0023: invoke-static {v1, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ -42b438: 5401 ec5e |0026: iget-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b43c: 5411 f35e |0028: iget-object v1, v1, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b440: 7110 e2bc 0100 |002a: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$500:(Lorg/purple/smoke/Settings;)V // method@bce2 │ │ -42b446: 2201 7b0a |002d: new-instance v1, Landroid/widget/PopupWindow; // type@0a7b │ │ -42b44a: 5403 ec5e |002f: iget-object v3, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b44e: 5433 f35e |0031: iget-object v3, v3, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b452: 7020 325a 3100 |0033: invoke-direct {v1, v3}, Landroid/widget/PopupWindow;.:(Landroid/content/Context;)V // method@5a32 │ │ -42b458: 2203 f10a |0036: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ -42b45c: 7010 ee5c 0300 |0038: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42b462: 2204 970a |003b: new-instance v4, Landroid/widget/TextView; // type@0a97 │ │ -42b466: 5405 ec5e |003d: iget-object v5, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b46a: 5455 f35e |003f: iget-object v5, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b46e: 7020 ff5a 5400 |0041: invoke-direct {v4, v5}, Landroid/widget/TextView;.:(Landroid/content/Context;)V // method@5aff │ │ -42b474: 5405 ec5e |0044: iget-object v5, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b478: 5455 f35e |0046: iget-object v5, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b47c: 6e10 f0bc 0500 |0048: invoke-virtual {v5}, Lorg/purple/smoke/Settings;.getResources:()Landroid/content/res/Resources; // method@bcf0 │ │ -42b482: 0c05 |004b: move-result-object v5 │ │ -42b484: 6e10 0e02 0500 |004c: invoke-virtual {v5}, Landroid/content/res/Resources;.getDisplayMetrics:()Landroid/util/DisplayMetrics; // method@020e │ │ -42b48a: 0c05 |004f: move-result-object v5 │ │ -42b48c: 5255 992c |0050: iget v5, v5, Landroid/util/DisplayMetrics;.density:F // field@2c99 │ │ -42b490: 5406 ec5e |0052: iget-object v6, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b494: 7110 bdbc 0600 |0054: invoke-static {v6}, Lorg/purple/smoke/Settings$7SingleShot;.access$2800:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcbd │ │ -42b49a: 0c06 |0057: move-result-object v6 │ │ -42b49c: 6e10 c35c 0600 |0058: invoke-virtual {v6}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42b4a2: 0a06 |005b: move-result v6 │ │ -42b4a4: 1a07 9800 |005c: const-string v7, " (" // string@0098 │ │ -42b4a8: 3906 1f01 |005e: if-nez v6, 017d // +011f │ │ -42b4ac: 5406 ec5e |0060: iget-object v6, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b4b0: 7110 bebc 0600 |0062: invoke-static {v6}, Lorg/purple/smoke/Settings$7SingleShot;.access$2900:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcbe │ │ -42b4b6: 0c06 |0065: move-result-object v6 │ │ -42b4b8: 6e10 c35c 0600 |0066: invoke-virtual {v6}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42b4be: 0a06 |0069: move-result v6 │ │ -42b4c0: 3806 0400 |006a: if-eqz v6, 006e // +0004 │ │ -42b4c4: 2900 1101 |006c: goto/16 017d // +0111 │ │ -42b4c8: 5406 ec5e |006e: iget-object v6, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b4cc: 7110 c0bc 0600 |0070: invoke-static {v6}, Lorg/purple/smoke/Settings$7SingleShot;.access$3100:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcc0 │ │ -42b4d2: 0c06 |0073: move-result-object v6 │ │ -42b4d4: 6e20 f95c 6300 |0074: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b4da: 6e20 f95c 7300 |0077: invoke-virtual {v3, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b4e0: 5406 ec5e |007a: iget-object v6, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b4e4: 7110 bfbc 0600 |007c: invoke-static {v6}, Lorg/purple/smoke/Settings$7SingleShot;.access$3000:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcbf │ │ -42b4ea: 0c06 |007f: move-result-object v6 │ │ -42b4ec: 6e20 f95c 6300 |0080: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b4f2: 1a06 ed03 |0083: const-string v6, ") │ │ +42b3d8: |[42b3d8] org.purple.smoke.Settings$7SingleShot$1.run:()V │ │ +42b3e8: 0800 1000 |0000: move-object/from16 v0, v16 │ │ +42b3ec: 5401 ec5e |0002: iget-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b3f0: 5411 f45e |0004: iget-object v1, v1, Lorg/purple/smoke/Settings$7SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ef4 │ │ +42b3f4: 1242 |0006: const/4 v2, #int 4 // #4 │ │ +42b3f6: 6e20 5f5a 2100 |0007: invoke-virtual {v1, v2}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42b3fc: 5401 ec5e |000a: iget-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b400: 5411 f35e |000c: iget-object v1, v1, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b404: 6e10 f2bc 0100 |000e: invoke-virtual {v1}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ +42b40a: 0c01 |0011: move-result-object v1 │ │ +42b40c: 1302 1000 |0012: const/16 v2, #int 16 // #10 │ │ +42b410: 6e20 8557 2100 |0014: invoke-virtual {v1, v2}, Landroid/view/Window;.clearFlags:(I)V // method@5785 │ │ +42b416: 5401 ec5e |0017: iget-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b41a: 5411 f35e |0019: iget-object v1, v1, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b41e: 1402 9200 087f |001b: const v2, #float 1.80778e+38 // #7f080092 │ │ +42b424: 6e20 eabc 2100 |001e: invoke-virtual {v1, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42b42a: 0c01 |0021: move-result-object v1 │ │ +42b42c: 1212 |0022: const/4 v2, #int 1 // #1 │ │ +42b42e: 7120 ebbb 2100 |0023: invoke-static {v1, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ +42b434: 5401 ec5e |0026: iget-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b438: 5411 f35e |0028: iget-object v1, v1, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b43c: 7110 e2bc 0100 |002a: invoke-static {v1}, Lorg/purple/smoke/Settings;.access$500:(Lorg/purple/smoke/Settings;)V // method@bce2 │ │ +42b442: 2201 7b0a |002d: new-instance v1, Landroid/widget/PopupWindow; // type@0a7b │ │ +42b446: 5403 ec5e |002f: iget-object v3, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b44a: 5433 f35e |0031: iget-object v3, v3, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b44e: 7020 325a 3100 |0033: invoke-direct {v1, v3}, Landroid/widget/PopupWindow;.:(Landroid/content/Context;)V // method@5a32 │ │ +42b454: 2203 f10a |0036: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ +42b458: 7010 ee5c 0300 |0038: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42b45e: 2204 970a |003b: new-instance v4, Landroid/widget/TextView; // type@0a97 │ │ +42b462: 5405 ec5e |003d: iget-object v5, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b466: 5455 f35e |003f: iget-object v5, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b46a: 7020 ff5a 5400 |0041: invoke-direct {v4, v5}, Landroid/widget/TextView;.:(Landroid/content/Context;)V // method@5aff │ │ +42b470: 5405 ec5e |0044: iget-object v5, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b474: 5455 f35e |0046: iget-object v5, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b478: 6e10 f0bc 0500 |0048: invoke-virtual {v5}, Lorg/purple/smoke/Settings;.getResources:()Landroid/content/res/Resources; // method@bcf0 │ │ +42b47e: 0c05 |004b: move-result-object v5 │ │ +42b480: 6e10 0e02 0500 |004c: invoke-virtual {v5}, Landroid/content/res/Resources;.getDisplayMetrics:()Landroid/util/DisplayMetrics; // method@020e │ │ +42b486: 0c05 |004f: move-result-object v5 │ │ +42b488: 5255 992c |0050: iget v5, v5, Landroid/util/DisplayMetrics;.density:F // field@2c99 │ │ +42b48c: 5406 ec5e |0052: iget-object v6, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b490: 7110 bdbc 0600 |0054: invoke-static {v6}, Lorg/purple/smoke/Settings$7SingleShot;.access$2800:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcbd │ │ +42b496: 0c06 |0057: move-result-object v6 │ │ +42b498: 6e10 c35c 0600 |0058: invoke-virtual {v6}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42b49e: 0a06 |005b: move-result v6 │ │ +42b4a0: 1a07 9800 |005c: const-string v7, " (" // string@0098 │ │ +42b4a4: 3906 1f01 |005e: if-nez v6, 017d // +011f │ │ +42b4a8: 5406 ec5e |0060: iget-object v6, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b4ac: 7110 bebc 0600 |0062: invoke-static {v6}, Lorg/purple/smoke/Settings$7SingleShot;.access$2900:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcbe │ │ +42b4b2: 0c06 |0065: move-result-object v6 │ │ +42b4b4: 6e10 c35c 0600 |0066: invoke-virtual {v6}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42b4ba: 0a06 |0069: move-result v6 │ │ +42b4bc: 3806 0400 |006a: if-eqz v6, 006e // +0004 │ │ +42b4c0: 2900 1101 |006c: goto/16 017d // +0111 │ │ +42b4c4: 5406 ec5e |006e: iget-object v6, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b4c8: 7110 c0bc 0600 |0070: invoke-static {v6}, Lorg/purple/smoke/Settings$7SingleShot;.access$3100:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcc0 │ │ +42b4ce: 0c06 |0073: move-result-object v6 │ │ +42b4d0: 6e20 f95c 6300 |0074: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b4d6: 6e20 f95c 7300 |0077: invoke-virtual {v3, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b4dc: 5406 ec5e |007a: iget-object v6, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b4e0: 7110 bfbc 0600 |007c: invoke-static {v6}, Lorg/purple/smoke/Settings$7SingleShot;.access$3000:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcbf │ │ +42b4e6: 0c06 |007f: move-result-object v6 │ │ +42b4e8: 6e20 f95c 6300 |0080: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b4ee: 1a06 ed03 |0083: const-string v6, ") │ │ " // string@03ed │ │ -42b4f6: 6e20 f95c 6300 |0085: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b4fc: 1a07 0e00 |0088: const-string v7, " │ │ +42b4f2: 6e20 f95c 6300 |0085: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b4f8: 1a07 0e00 |0088: const-string v7, " │ │ Encryption Key (" // string@000e │ │ -42b500: 6e20 f95c 7300 |008a: invoke-virtual {v3, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b506: 6e10 035d 0300 |008d: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42b50c: 0c07 |0090: move-result-object v7 │ │ -42b50e: 6e20 035b 7400 |0091: invoke-virtual {v4, v7}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ -42b514: 2207 ba09 |0094: new-instance v7, Landroid/text/SpannableStringBuilder; // type@09ba │ │ -42b518: 5408 ec5e |0096: iget-object v8, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b51c: 7110 c1bc 0800 |0098: invoke-static {v8}, Lorg/purple/smoke/Settings$7SingleShot;.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; // method@bcc1 │ │ -42b522: 0c08 |009b: move-result-object v8 │ │ -42b524: 1209 |009c: const/4 v9, #int 0 // #0 │ │ -42b526: 4608 0809 |009d: aget-object v8, v8, v9 │ │ -42b52a: 1a0a 97a5 |009f: const-string v10, "true" // string@a597 │ │ -42b52e: 6e20 b85c a800 |00a1: invoke-virtual {v8, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42b534: 0a08 |00a4: move-result v8 │ │ -42b536: 1a0b 844b |00a5: const-string v11, "Signature Verified" // string@4b84 │ │ -42b53a: 1a0c 834b |00a7: const-string v12, "Signature Not Verified" // string@4b83 │ │ -42b53e: 3808 0400 |00a9: if-eqz v8, 00ad // +0004 │ │ -42b542: 07b8 |00ab: move-object v8, v11 │ │ -42b544: 2802 |00ac: goto 00ae // +0002 │ │ -42b546: 07c8 |00ad: move-object v8, v12 │ │ -42b548: 7020 4a54 8700 |00ae: invoke-direct {v7, v8}, Landroid/text/SpannableStringBuilder;.:(Ljava/lang/CharSequence;)V // method@544a │ │ -42b54e: 5408 ec5e |00b1: iget-object v8, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b552: 7110 c1bc 0800 |00b3: invoke-static {v8}, Lorg/purple/smoke/Settings$7SingleShot;.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; // method@bcc1 │ │ -42b558: 0c08 |00b6: move-result-object v8 │ │ -42b55a: 4608 0809 |00b7: aget-object v8, v8, v9 │ │ -42b55e: 6e20 b85c a800 |00b9: invoke-virtual {v8, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42b564: 0a08 |00bc: move-result v8 │ │ -42b566: 130d 3200 |00bd: const/16 v13, #int 50 // #32 │ │ -42b56a: 130e 7d00 |00bf: const/16 v14, #int 125 // #7d │ │ -42b56e: 130f 2e00 |00c1: const/16 v15, #int 46 // #2e │ │ -42b572: 3808 1500 |00c3: if-eqz v8, 00d8 // +0015 │ │ -42b576: 2208 c609 |00c5: new-instance v8, Landroid/text/style/ForegroundColorSpan; // type@09c6 │ │ -42b57a: 7130 c902 ef0d |00c7: invoke-static {v15, v14, v13}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ -42b580: 0a02 |00ca: move-result v2 │ │ -42b582: 7020 6c54 2800 |00cb: invoke-direct {v8, v2}, Landroid/text/style/ForegroundColorSpan;.:(I)V // method@546c │ │ -42b588: 6e10 4f54 0700 |00ce: invoke-virtual {v7}, Landroid/text/SpannableStringBuilder;.length:()I // method@544f │ │ -42b58e: 0a02 |00d1: move-result v2 │ │ -42b590: 130d 2100 |00d2: const/16 v13, #int 33 // #21 │ │ -42b594: 6e5d 5054 8729 |00d4: invoke-virtual {v7, v8, v9, v2, v13}, Landroid/text/SpannableStringBuilder;.setSpan:(Ljava/lang/Object;III)V // method@5450 │ │ -42b59a: 2817 |00d7: goto 00ee // +0017 │ │ -42b59c: 130d 2100 |00d8: const/16 v13, #int 33 // #21 │ │ -42b5a0: 2202 c609 |00da: new-instance v2, Landroid/text/style/ForegroundColorSpan; // type@09c6 │ │ -42b5a4: 1308 c600 |00dc: const/16 v8, #int 198 // #c6 │ │ -42b5a8: 130e 2800 |00de: const/16 v14, #int 40 // #28 │ │ -42b5ac: 7130 c902 e80e |00e0: invoke-static {v8, v14, v14}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ -42b5b2: 0a0f |00e3: move-result v15 │ │ -42b5b4: 7020 6c54 f200 |00e4: invoke-direct {v2, v15}, Landroid/text/style/ForegroundColorSpan;.:(I)V // method@546c │ │ -42b5ba: 6e10 4f54 0700 |00e7: invoke-virtual {v7}, Landroid/text/SpannableStringBuilder;.length:()I // method@544f │ │ -42b5c0: 0a08 |00ea: move-result v8 │ │ -42b5c2: 6e5d 5054 2789 |00eb: invoke-virtual {v7, v2, v9, v8, v13}, Landroid/text/SpannableStringBuilder;.setSpan:(Ljava/lang/Object;III)V // method@5450 │ │ -42b5c8: 6e20 035b 7400 |00ee: invoke-virtual {v4, v7}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ -42b5ce: 6e10 ff5c 0300 |00f1: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ -42b5d4: 0a02 |00f4: move-result v2 │ │ -42b5d6: 6e30 fd5c 9302 |00f5: invoke-virtual {v3, v9, v2}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ -42b5dc: 6e20 f95c 6300 |00f8: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b5e2: 5402 ec5e |00fb: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b5e6: 7110 bdbc 0200 |00fd: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$2800:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcbd │ │ -42b5ec: 0c02 |0100: move-result-object v2 │ │ -42b5ee: 6e20 f95c 2300 |0101: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b5f4: 1a02 1400 |0104: const-string v2, " │ │ +42b4fc: 6e20 f95c 7300 |008a: invoke-virtual {v3, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b502: 6e10 035d 0300 |008d: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42b508: 0c07 |0090: move-result-object v7 │ │ +42b50a: 6e20 035b 7400 |0091: invoke-virtual {v4, v7}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ +42b510: 2207 ba09 |0094: new-instance v7, Landroid/text/SpannableStringBuilder; // type@09ba │ │ +42b514: 5408 ec5e |0096: iget-object v8, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b518: 7110 c1bc 0800 |0098: invoke-static {v8}, Lorg/purple/smoke/Settings$7SingleShot;.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; // method@bcc1 │ │ +42b51e: 0c08 |009b: move-result-object v8 │ │ +42b520: 1209 |009c: const/4 v9, #int 0 // #0 │ │ +42b522: 4608 0809 |009d: aget-object v8, v8, v9 │ │ +42b526: 1a0a 97a5 |009f: const-string v10, "true" // string@a597 │ │ +42b52a: 6e20 b85c a800 |00a1: invoke-virtual {v8, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42b530: 0a08 |00a4: move-result v8 │ │ +42b532: 1a0b 844b |00a5: const-string v11, "Signature Verified" // string@4b84 │ │ +42b536: 1a0c 834b |00a7: const-string v12, "Signature Not Verified" // string@4b83 │ │ +42b53a: 3808 0400 |00a9: if-eqz v8, 00ad // +0004 │ │ +42b53e: 07b8 |00ab: move-object v8, v11 │ │ +42b540: 2802 |00ac: goto 00ae // +0002 │ │ +42b542: 07c8 |00ad: move-object v8, v12 │ │ +42b544: 7020 4a54 8700 |00ae: invoke-direct {v7, v8}, Landroid/text/SpannableStringBuilder;.:(Ljava/lang/CharSequence;)V // method@544a │ │ +42b54a: 5408 ec5e |00b1: iget-object v8, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b54e: 7110 c1bc 0800 |00b3: invoke-static {v8}, Lorg/purple/smoke/Settings$7SingleShot;.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; // method@bcc1 │ │ +42b554: 0c08 |00b6: move-result-object v8 │ │ +42b556: 4608 0809 |00b7: aget-object v8, v8, v9 │ │ +42b55a: 6e20 b85c a800 |00b9: invoke-virtual {v8, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42b560: 0a08 |00bc: move-result v8 │ │ +42b562: 130d 3200 |00bd: const/16 v13, #int 50 // #32 │ │ +42b566: 130e 7d00 |00bf: const/16 v14, #int 125 // #7d │ │ +42b56a: 130f 2e00 |00c1: const/16 v15, #int 46 // #2e │ │ +42b56e: 3808 1500 |00c3: if-eqz v8, 00d8 // +0015 │ │ +42b572: 2208 c609 |00c5: new-instance v8, Landroid/text/style/ForegroundColorSpan; // type@09c6 │ │ +42b576: 7130 c902 ef0d |00c7: invoke-static {v15, v14, v13}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ +42b57c: 0a02 |00ca: move-result v2 │ │ +42b57e: 7020 6c54 2800 |00cb: invoke-direct {v8, v2}, Landroid/text/style/ForegroundColorSpan;.:(I)V // method@546c │ │ +42b584: 6e10 4f54 0700 |00ce: invoke-virtual {v7}, Landroid/text/SpannableStringBuilder;.length:()I // method@544f │ │ +42b58a: 0a02 |00d1: move-result v2 │ │ +42b58c: 130d 2100 |00d2: const/16 v13, #int 33 // #21 │ │ +42b590: 6e5d 5054 8729 |00d4: invoke-virtual {v7, v8, v9, v2, v13}, Landroid/text/SpannableStringBuilder;.setSpan:(Ljava/lang/Object;III)V // method@5450 │ │ +42b596: 2817 |00d7: goto 00ee // +0017 │ │ +42b598: 130d 2100 |00d8: const/16 v13, #int 33 // #21 │ │ +42b59c: 2202 c609 |00da: new-instance v2, Landroid/text/style/ForegroundColorSpan; // type@09c6 │ │ +42b5a0: 1308 c600 |00dc: const/16 v8, #int 198 // #c6 │ │ +42b5a4: 130e 2800 |00de: const/16 v14, #int 40 // #28 │ │ +42b5a8: 7130 c902 e80e |00e0: invoke-static {v8, v14, v14}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ +42b5ae: 0a0f |00e3: move-result v15 │ │ +42b5b0: 7020 6c54 f200 |00e4: invoke-direct {v2, v15}, Landroid/text/style/ForegroundColorSpan;.:(I)V // method@546c │ │ +42b5b6: 6e10 4f54 0700 |00e7: invoke-virtual {v7}, Landroid/text/SpannableStringBuilder;.length:()I // method@544f │ │ +42b5bc: 0a08 |00ea: move-result v8 │ │ +42b5be: 6e5d 5054 2789 |00eb: invoke-virtual {v7, v2, v9, v8, v13}, Landroid/text/SpannableStringBuilder;.setSpan:(Ljava/lang/Object;III)V // method@5450 │ │ +42b5c4: 6e20 035b 7400 |00ee: invoke-virtual {v4, v7}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ +42b5ca: 6e10 ff5c 0300 |00f1: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ +42b5d0: 0a02 |00f4: move-result v2 │ │ +42b5d2: 6e30 fd5c 9302 |00f5: invoke-virtual {v3, v9, v2}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ +42b5d8: 6e20 f95c 6300 |00f8: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b5de: 5402 ec5e |00fb: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b5e2: 7110 bdbc 0200 |00fd: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$2800:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcbd │ │ +42b5e8: 0c02 |0100: move-result-object v2 │ │ +42b5ea: 6e20 f95c 2300 |0101: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b5f0: 1a02 1400 |0104: const-string v2, " │ │ Signature Key (" // string@0014 │ │ -42b5f8: 6e20 f95c 2300 |0106: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b5fe: 6e20 035b 3400 |0109: invoke-virtual {v4, v3}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ -42b604: 2202 ba09 |010c: new-instance v2, Landroid/text/SpannableStringBuilder; // type@09ba │ │ -42b608: 5407 ec5e |010e: iget-object v7, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b60c: 7110 c1bc 0700 |0110: invoke-static {v7}, Lorg/purple/smoke/Settings$7SingleShot;.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; // method@bcc1 │ │ -42b612: 0c07 |0113: move-result-object v7 │ │ -42b614: 1218 |0114: const/4 v8, #int 1 // #1 │ │ -42b616: 4607 0708 |0115: aget-object v7, v7, v8 │ │ -42b61a: 6e20 b85c a700 |0117: invoke-virtual {v7, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42b620: 0a07 |011a: move-result v7 │ │ -42b622: 3807 0300 |011b: if-eqz v7, 011e // +0003 │ │ -42b626: 2802 |011d: goto 011f // +0002 │ │ -42b628: 07cb |011e: move-object v11, v12 │ │ -42b62a: 7020 4a54 b200 |011f: invoke-direct {v2, v11}, Landroid/text/SpannableStringBuilder;.:(Ljava/lang/CharSequence;)V // method@544a │ │ -42b630: 5407 ec5e |0122: iget-object v7, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b634: 7110 c1bc 0700 |0124: invoke-static {v7}, Lorg/purple/smoke/Settings$7SingleShot;.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; // method@bcc1 │ │ -42b63a: 0c07 |0127: move-result-object v7 │ │ -42b63c: 4607 0708 |0128: aget-object v7, v7, v8 │ │ -42b640: 6e20 b85c a700 |012a: invoke-virtual {v7, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42b646: 0a07 |012d: move-result v7 │ │ -42b648: 3807 1b00 |012e: if-eqz v7, 0149 // +001b │ │ -42b64c: 2207 c609 |0130: new-instance v7, Landroid/text/style/ForegroundColorSpan; // type@09c6 │ │ -42b650: 1308 3200 |0132: const/16 v8, #int 50 // #32 │ │ -42b654: 130a 7d00 |0134: const/16 v10, #int 125 // #7d │ │ -42b658: 130b 2e00 |0136: const/16 v11, #int 46 // #2e │ │ -42b65c: 7130 c902 ab08 |0138: invoke-static {v11, v10, v8}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ -42b662: 0a08 |013b: move-result v8 │ │ -42b664: 7020 6c54 8700 |013c: invoke-direct {v7, v8}, Landroid/text/style/ForegroundColorSpan;.:(I)V // method@546c │ │ -42b66a: 6e10 4f54 0200 |013f: invoke-virtual {v2}, Landroid/text/SpannableStringBuilder;.length:()I // method@544f │ │ -42b670: 0a08 |0142: move-result v8 │ │ -42b672: 130a 2100 |0143: const/16 v10, #int 33 // #21 │ │ -42b676: 6e5a 5054 7289 |0145: invoke-virtual {v2, v7, v9, v8, v10}, Landroid/text/SpannableStringBuilder;.setSpan:(Ljava/lang/Object;III)V // method@5450 │ │ -42b67c: 2817 |0148: goto 015f // +0017 │ │ -42b67e: 130a 2100 |0149: const/16 v10, #int 33 // #21 │ │ -42b682: 2207 c609 |014b: new-instance v7, Landroid/text/style/ForegroundColorSpan; // type@09c6 │ │ -42b686: 1308 c600 |014d: const/16 v8, #int 198 // #c6 │ │ -42b68a: 130b 2800 |014f: const/16 v11, #int 40 // #28 │ │ -42b68e: 7130 c902 b80b |0151: invoke-static {v8, v11, v11}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ -42b694: 0a08 |0154: move-result v8 │ │ -42b696: 7020 6c54 8700 |0155: invoke-direct {v7, v8}, Landroid/text/style/ForegroundColorSpan;.:(I)V // method@546c │ │ -42b69c: 6e10 4f54 0200 |0158: invoke-virtual {v2}, Landroid/text/SpannableStringBuilder;.length:()I // method@544f │ │ -42b6a2: 0a08 |015b: move-result v8 │ │ -42b6a4: 6e5a 5054 7289 |015c: invoke-virtual {v2, v7, v9, v8, v10}, Landroid/text/SpannableStringBuilder;.setSpan:(Ljava/lang/Object;III)V // method@5450 │ │ -42b6aa: 6e20 035b 2400 |015f: invoke-virtual {v4, v2}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ -42b6b0: 6e10 ff5c 0300 |0162: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ -42b6b6: 0a02 |0165: move-result v2 │ │ -42b6b8: 6e30 fd5c 9302 |0166: invoke-virtual {v3, v9, v2}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ -42b6be: 6e20 f95c 6300 |0169: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b6c4: 5402 ec5e |016c: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b6c8: 7110 bebc 0200 |016e: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$2900:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcbe │ │ -42b6ce: 0c02 |0171: move-result-object v2 │ │ -42b6d0: 6e20 f95c 2300 |0172: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b6d6: 6e10 035d 0300 |0175: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42b6dc: 0c02 |0178: move-result-object v2 │ │ -42b6de: 6e20 035b 2400 |0179: invoke-virtual {v4, v2}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ -42b6e4: 283e |017c: goto 01ba // +003e │ │ -42b6e6: 5402 ec5e |017d: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b6ea: 7110 bfbc 0200 |017f: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$3000:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcbf │ │ -42b6f0: 0c02 |0182: move-result-object v2 │ │ -42b6f2: 6e10 c35c 0200 |0183: invoke-virtual {v2}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42b6f8: 0a02 |0186: move-result v2 │ │ -42b6fa: 3802 0d00 |0187: if-eqz v2, 0194 // +000d │ │ -42b6fe: 1a02 4c50 |0189: const-string v2, "Unable to gather details " // string@504c │ │ -42b702: 6e20 f95c 2300 |018b: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b708: 1a02 3969 |018e: const-string v2, "for the selected participant." // string@6939 │ │ -42b70c: 6e20 f95c 2300 |0190: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b712: 2820 |0193: goto 01b3 // +0020 │ │ -42b714: 1a02 4d50 |0194: const-string v2, "Unable to gather details for " // string@504d │ │ -42b718: 6e20 f95c 2300 |0196: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b71e: 5402 ec5e |0199: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b722: 7110 c0bc 0200 |019b: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$3100:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcc0 │ │ -42b728: 0c02 |019e: move-result-object v2 │ │ -42b72a: 6e20 f95c 2300 |019f: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b730: 6e20 f95c 7300 |01a2: invoke-virtual {v3, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b736: 5402 ec5e |01a5: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b73a: 7110 bfbc 0200 |01a7: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$3000:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcbf │ │ -42b740: 0c02 |01aa: move-result-object v2 │ │ -42b742: 6e20 f95c 2300 |01ab: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b748: 1a02 0c04 |01ae: const-string v2, ")." // string@040c │ │ -42b74c: 6e20 f95c 2300 |01b0: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42b752: 6e10 035d 0300 |01b3: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42b758: 0c02 |01b6: move-result-object v2 │ │ -42b75a: 6e20 495b 2400 |01b7: invoke-virtual {v4, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42b760: 1302 ff00 |01ba: const/16 v2, #int 255 // #ff │ │ -42b764: 7130 c902 2202 |01bc: invoke-static {v2, v2, v2}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ -42b76a: 0a02 |01bf: move-result v2 │ │ -42b76c: 6e20 275b 2400 |01c0: invoke-virtual {v4, v2}, Landroid/widget/TextView;.setBackgroundColor:(I)V // method@5b27 │ │ -42b772: 1502 2041 |01c3: const/high16 v2, #int 1092616192 // #4120 │ │ -42b776: a805 0502 |01c5: mul-float v5, v5, v2 │ │ -42b77a: 8752 |01c7: float-to-int v2, v5 │ │ -42b77c: 6e52 415b 2422 |01c8: invoke-virtual {v4, v2, v2, v2, v2}, Landroid/widget/TextView;.setPaddingRelative:(IIII)V // method@5b41 │ │ -42b782: 1502 8041 |01cb: const/high16 v2, #int 1098907648 // #4180 │ │ -42b786: 6e20 4f5b 2400 |01cd: invoke-virtual {v4, v2}, Landroid/widget/TextView;.setTextSize:(F)V // method@5b4f │ │ -42b78c: 6e20 445a 4100 |01d0: invoke-virtual {v1, v4}, Landroid/widget/PopupWindow;.setContentView:(Landroid/view/View;)V // method@5a44 │ │ -42b792: 1212 |01d3: const/4 v2, #int 1 // #1 │ │ -42b794: 6e20 4b5a 2100 |01d4: invoke-virtual {v1, v2}, Landroid/widget/PopupWindow;.setOutsideTouchable:(Z)V // method@5a4b │ │ -42b79a: 6002 6d00 |01d7: sget v2, Landroid/os/Build$VERSION;.SDK_INT:I // field@006d │ │ -42b79e: 1303 1700 |01d9: const/16 v3, #int 23 // #17 │ │ -42b7a2: 3532 0c00 |01db: if-ge v2, v3, 01e7 // +000c │ │ -42b7a6: 1302 c201 |01dd: const/16 v2, #int 450 // #1c2 │ │ -42b7aa: 6e20 485a 2100 |01df: invoke-virtual {v1, v2}, Landroid/widget/PopupWindow;.setHeight:(I)V // method@5a48 │ │ -42b7b0: 1302 bc02 |01e2: const/16 v2, #int 700 // #2bc │ │ -42b7b4: 6e20 4f5a 2100 |01e4: invoke-virtual {v1, v2}, Landroid/widget/PopupWindow;.setWidth:(I)V // method@5a4f │ │ -42b7ba: 5402 ec5e |01e7: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ -42b7be: 5422 f35e |01e9: iget-object v2, v2, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b7c2: 1403 bf00 087f |01eb: const v3, #float 1.80779e+38 // #7f0800bf │ │ -42b7c8: 6e20 eabc 3200 |01ee: invoke-virtual {v2, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42b7ce: 0c02 |01f1: move-result-object v2 │ │ -42b7d0: 6e20 515a 2100 |01f2: invoke-virtual {v1, v2}, Landroid/widget/PopupWindow;.showAsDropDown:(Landroid/view/View;)V // method@5a51 │ │ -42b7d6: 0e00 |01f5: return-void │ │ +42b5f4: 6e20 f95c 2300 |0106: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b5fa: 6e20 035b 3400 |0109: invoke-virtual {v4, v3}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ +42b600: 2202 ba09 |010c: new-instance v2, Landroid/text/SpannableStringBuilder; // type@09ba │ │ +42b604: 5407 ec5e |010e: iget-object v7, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b608: 7110 c1bc 0700 |0110: invoke-static {v7}, Lorg/purple/smoke/Settings$7SingleShot;.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; // method@bcc1 │ │ +42b60e: 0c07 |0113: move-result-object v7 │ │ +42b610: 1218 |0114: const/4 v8, #int 1 // #1 │ │ +42b612: 4607 0708 |0115: aget-object v7, v7, v8 │ │ +42b616: 6e20 b85c a700 |0117: invoke-virtual {v7, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42b61c: 0a07 |011a: move-result v7 │ │ +42b61e: 3807 0300 |011b: if-eqz v7, 011e // +0003 │ │ +42b622: 2802 |011d: goto 011f // +0002 │ │ +42b624: 07cb |011e: move-object v11, v12 │ │ +42b626: 7020 4a54 b200 |011f: invoke-direct {v2, v11}, Landroid/text/SpannableStringBuilder;.:(Ljava/lang/CharSequence;)V // method@544a │ │ +42b62c: 5407 ec5e |0122: iget-object v7, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b630: 7110 c1bc 0700 |0124: invoke-static {v7}, Lorg/purple/smoke/Settings$7SingleShot;.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; // method@bcc1 │ │ +42b636: 0c07 |0127: move-result-object v7 │ │ +42b638: 4607 0708 |0128: aget-object v7, v7, v8 │ │ +42b63c: 6e20 b85c a700 |012a: invoke-virtual {v7, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42b642: 0a07 |012d: move-result v7 │ │ +42b644: 3807 1b00 |012e: if-eqz v7, 0149 // +001b │ │ +42b648: 2207 c609 |0130: new-instance v7, Landroid/text/style/ForegroundColorSpan; // type@09c6 │ │ +42b64c: 1308 3200 |0132: const/16 v8, #int 50 // #32 │ │ +42b650: 130a 7d00 |0134: const/16 v10, #int 125 // #7d │ │ +42b654: 130b 2e00 |0136: const/16 v11, #int 46 // #2e │ │ +42b658: 7130 c902 ab08 |0138: invoke-static {v11, v10, v8}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ +42b65e: 0a08 |013b: move-result v8 │ │ +42b660: 7020 6c54 8700 |013c: invoke-direct {v7, v8}, Landroid/text/style/ForegroundColorSpan;.:(I)V // method@546c │ │ +42b666: 6e10 4f54 0200 |013f: invoke-virtual {v2}, Landroid/text/SpannableStringBuilder;.length:()I // method@544f │ │ +42b66c: 0a08 |0142: move-result v8 │ │ +42b66e: 130a 2100 |0143: const/16 v10, #int 33 // #21 │ │ +42b672: 6e5a 5054 7289 |0145: invoke-virtual {v2, v7, v9, v8, v10}, Landroid/text/SpannableStringBuilder;.setSpan:(Ljava/lang/Object;III)V // method@5450 │ │ +42b678: 2817 |0148: goto 015f // +0017 │ │ +42b67a: 130a 2100 |0149: const/16 v10, #int 33 // #21 │ │ +42b67e: 2207 c609 |014b: new-instance v7, Landroid/text/style/ForegroundColorSpan; // type@09c6 │ │ +42b682: 1308 c600 |014d: const/16 v8, #int 198 // #c6 │ │ +42b686: 130b 2800 |014f: const/16 v11, #int 40 // #28 │ │ +42b68a: 7130 c902 b80b |0151: invoke-static {v8, v11, v11}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ +42b690: 0a08 |0154: move-result v8 │ │ +42b692: 7020 6c54 8700 |0155: invoke-direct {v7, v8}, Landroid/text/style/ForegroundColorSpan;.:(I)V // method@546c │ │ +42b698: 6e10 4f54 0200 |0158: invoke-virtual {v2}, Landroid/text/SpannableStringBuilder;.length:()I // method@544f │ │ +42b69e: 0a08 |015b: move-result v8 │ │ +42b6a0: 6e5a 5054 7289 |015c: invoke-virtual {v2, v7, v9, v8, v10}, Landroid/text/SpannableStringBuilder;.setSpan:(Ljava/lang/Object;III)V // method@5450 │ │ +42b6a6: 6e20 035b 2400 |015f: invoke-virtual {v4, v2}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ +42b6ac: 6e10 ff5c 0300 |0162: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ +42b6b2: 0a02 |0165: move-result v2 │ │ +42b6b4: 6e30 fd5c 9302 |0166: invoke-virtual {v3, v9, v2}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ +42b6ba: 6e20 f95c 6300 |0169: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b6c0: 5402 ec5e |016c: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b6c4: 7110 bebc 0200 |016e: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$2900:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcbe │ │ +42b6ca: 0c02 |0171: move-result-object v2 │ │ +42b6cc: 6e20 f95c 2300 |0172: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b6d2: 6e10 035d 0300 |0175: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42b6d8: 0c02 |0178: move-result-object v2 │ │ +42b6da: 6e20 035b 2400 |0179: invoke-virtual {v4, v2}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ +42b6e0: 283e |017c: goto 01ba // +003e │ │ +42b6e2: 5402 ec5e |017d: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b6e6: 7110 bfbc 0200 |017f: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$3000:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcbf │ │ +42b6ec: 0c02 |0182: move-result-object v2 │ │ +42b6ee: 6e10 c35c 0200 |0183: invoke-virtual {v2}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42b6f4: 0a02 |0186: move-result v2 │ │ +42b6f6: 3802 0d00 |0187: if-eqz v2, 0194 // +000d │ │ +42b6fa: 1a02 4c50 |0189: const-string v2, "Unable to gather details " // string@504c │ │ +42b6fe: 6e20 f95c 2300 |018b: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b704: 1a02 3969 |018e: const-string v2, "for the selected participant." // string@6939 │ │ +42b708: 6e20 f95c 2300 |0190: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b70e: 2820 |0193: goto 01b3 // +0020 │ │ +42b710: 1a02 4d50 |0194: const-string v2, "Unable to gather details for " // string@504d │ │ +42b714: 6e20 f95c 2300 |0196: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b71a: 5402 ec5e |0199: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b71e: 7110 c0bc 0200 |019b: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$3100:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcc0 │ │ +42b724: 0c02 |019e: move-result-object v2 │ │ +42b726: 6e20 f95c 2300 |019f: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b72c: 6e20 f95c 7300 |01a2: invoke-virtual {v3, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b732: 5402 ec5e |01a5: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b736: 7110 bfbc 0200 |01a7: invoke-static {v2}, Lorg/purple/smoke/Settings$7SingleShot;.access$3000:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; // method@bcbf │ │ +42b73c: 0c02 |01aa: move-result-object v2 │ │ +42b73e: 6e20 f95c 2300 |01ab: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b744: 1a02 0c04 |01ae: const-string v2, ")." // string@040c │ │ +42b748: 6e20 f95c 2300 |01b0: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42b74e: 6e10 035d 0300 |01b3: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42b754: 0c02 |01b6: move-result-object v2 │ │ +42b756: 6e20 495b 2400 |01b7: invoke-virtual {v4, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42b75c: 1302 ff00 |01ba: const/16 v2, #int 255 // #ff │ │ +42b760: 7130 c902 2202 |01bc: invoke-static {v2, v2, v2}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ +42b766: 0a02 |01bf: move-result v2 │ │ +42b768: 6e20 275b 2400 |01c0: invoke-virtual {v4, v2}, Landroid/widget/TextView;.setBackgroundColor:(I)V // method@5b27 │ │ +42b76e: 1502 2041 |01c3: const/high16 v2, #int 1092616192 // #4120 │ │ +42b772: a805 0502 |01c5: mul-float v5, v5, v2 │ │ +42b776: 8752 |01c7: float-to-int v2, v5 │ │ +42b778: 6e52 415b 2422 |01c8: invoke-virtual {v4, v2, v2, v2, v2}, Landroid/widget/TextView;.setPaddingRelative:(IIII)V // method@5b41 │ │ +42b77e: 1502 8041 |01cb: const/high16 v2, #int 1098907648 // #4180 │ │ +42b782: 6e20 4f5b 2400 |01cd: invoke-virtual {v4, v2}, Landroid/widget/TextView;.setTextSize:(F)V // method@5b4f │ │ +42b788: 6e20 445a 4100 |01d0: invoke-virtual {v1, v4}, Landroid/widget/PopupWindow;.setContentView:(Landroid/view/View;)V // method@5a44 │ │ +42b78e: 1212 |01d3: const/4 v2, #int 1 // #1 │ │ +42b790: 6e20 4b5a 2100 |01d4: invoke-virtual {v1, v2}, Landroid/widget/PopupWindow;.setOutsideTouchable:(Z)V // method@5a4b │ │ +42b796: 6002 6d00 |01d7: sget v2, Landroid/os/Build$VERSION;.SDK_INT:I // field@006d │ │ +42b79a: 1303 1700 |01d9: const/16 v3, #int 23 // #17 │ │ +42b79e: 3532 0c00 |01db: if-ge v2, v3, 01e7 // +000c │ │ +42b7a2: 1302 c201 |01dd: const/16 v2, #int 450 // #1c2 │ │ +42b7a6: 6e20 485a 2100 |01df: invoke-virtual {v1, v2}, Landroid/widget/PopupWindow;.setHeight:(I)V // method@5a48 │ │ +42b7ac: 1302 bc02 |01e2: const/16 v2, #int 700 // #2bc │ │ +42b7b0: 6e20 4f5a 2100 |01e4: invoke-virtual {v1, v2}, Landroid/widget/PopupWindow;.setWidth:(I)V // method@5a4f │ │ +42b7b6: 5402 ec5e |01e7: iget-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot$1;.this$1:Lorg/purple/smoke/Settings$7SingleShot; // field@5eec │ │ +42b7ba: 5422 f35e |01e9: iget-object v2, v2, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b7be: 1403 bf00 087f |01eb: const v3, #float 1.80779e+38 // #7f0800bf │ │ +42b7c4: 6e20 eabc 3200 |01ee: invoke-virtual {v2, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42b7ca: 0c02 |01f1: move-result-object v2 │ │ +42b7cc: 6e20 515a 2100 |01f2: invoke-virtual {v1, v2}, Landroid/widget/PopupWindow;.showAsDropDown:(Landroid/view/View;)V // method@5a51 │ │ +42b7d2: 0e00 |01f5: return-void │ │ catches : (none) │ │ positions : │ │ 0x0002 line=3002 │ │ 0x000a line=3003 │ │ 0x0014 line=3004 │ │ 0x0017 line=3005 │ │ 0x001e line=3006 │ │ @@ -739929,27 +739928,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 │ │ -42b850: |[42b850] org.purple.smoke.Settings$7SingleShot.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V │ │ -42b860: 5b01 f35e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b864: 5b03 f45e |0002: iput-object v3, v0, Lorg/purple/smoke/Settings$7SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ef4 │ │ -42b868: 7010 8f5c 0000 |0004: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42b86e: 1a01 0000 |0007: const-string v1, "" // string@0000 │ │ -42b872: 5b01 ed5e |0009: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ -42b876: 5b01 ef5e |000b: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ -42b87a: 5b01 f05e |000d: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_string1:Ljava/lang/String; // field@5ef0 │ │ -42b87e: 5b01 f15e |000f: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_string2:Ljava/lang/String; // field@5ef1 │ │ -42b882: 1201 |0011: const/4 v1, #int 0 // #0 │ │ -42b884: 5b01 f25e |0012: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ -42b888: 5b02 ee5e |0014: iput-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_oid:Ljava/lang/String; // field@5eee │ │ -42b88c: 0e00 |0016: return-void │ │ +42b84c: |[42b84c] org.purple.smoke.Settings$7SingleShot.:(Lorg/purple/smoke/Settings;Ljava/lang/String;Landroid/widget/ProgressBar;)V │ │ +42b85c: 5b01 f35e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b860: 5b03 f45e |0002: iput-object v3, v0, Lorg/purple/smoke/Settings$7SingleShot;.val$bar:Landroid/widget/ProgressBar; // field@5ef4 │ │ +42b864: 7010 8f5c 0000 |0004: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42b86a: 1a01 0000 |0007: const-string v1, "" // string@0000 │ │ +42b86e: 5b01 ed5e |0009: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ +42b872: 5b01 ef5e |000b: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ +42b876: 5b01 f05e |000d: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_string1:Ljava/lang/String; // field@5ef0 │ │ +42b87a: 5b01 f15e |000f: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_string2:Ljava/lang/String; // field@5ef1 │ │ +42b87e: 1201 |0011: const/4 v1, #int 0 // #0 │ │ +42b880: 5b01 f25e |0012: iput-object v1, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ +42b884: 5b02 ee5e |0014: iput-object v2, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_oid:Ljava/lang/String; // field@5eee │ │ +42b888: 0e00 |0016: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2953 │ │ 0x0009 line=2945 │ │ 0x000b line=2947 │ │ 0x000d line=2948 │ │ 0x000f line=2949 │ │ @@ -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 │ │ -42b7d8: |[42b7d8] org.purple.smoke.Settings$7SingleShot.access$2800:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; │ │ -42b7e8: 5400 f05e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_string1:Ljava/lang/String; // field@5ef0 │ │ -42b7ec: 1100 |0002: return-object v0 │ │ +42b7d4: |[42b7d4] org.purple.smoke.Settings$7SingleShot.access$2800:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; │ │ +42b7e4: 5400 f05e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_string1:Ljava/lang/String; // field@5ef0 │ │ +42b7e8: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2943 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings$7SingleShot; │ │ │ │ #2 : (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 │ │ -42b7f0: |[42b7f0] org.purple.smoke.Settings$7SingleShot.access$2900:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; │ │ -42b800: 5400 f15e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_string2:Ljava/lang/String; // field@5ef1 │ │ -42b804: 1100 |0002: return-object v0 │ │ +42b7ec: |[42b7ec] org.purple.smoke.Settings$7SingleShot.access$2900:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; │ │ +42b7fc: 5400 f15e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_string2:Ljava/lang/String; // field@5ef1 │ │ +42b800: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2943 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings$7SingleShot; │ │ │ │ #3 : (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 │ │ -42b808: |[42b808] org.purple.smoke.Settings$7SingleShot.access$3000:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; │ │ -42b818: 5400 ef5e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ -42b81c: 1100 |0002: return-object v0 │ │ +42b804: |[42b804] org.purple.smoke.Settings$7SingleShot.access$3000:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; │ │ +42b814: 5400 ef5e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ +42b818: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2943 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings$7SingleShot; │ │ │ │ #4 : (in Lorg/purple/smoke/Settings$7SingleShot;) │ │ @@ -740020,17 +740019,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 │ │ -42b820: |[42b820] org.purple.smoke.Settings$7SingleShot.access$3100:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; │ │ -42b830: 5400 ed5e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ -42b834: 1100 |0002: return-object v0 │ │ +42b81c: |[42b81c] org.purple.smoke.Settings$7SingleShot.access$3100:(Lorg/purple/smoke/Settings$7SingleShot;)Ljava/lang/String; │ │ +42b82c: 5400 ed5e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ +42b830: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2943 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings$7SingleShot; │ │ │ │ #5 : (in Lorg/purple/smoke/Settings$7SingleShot;) │ │ @@ -740038,17 +740037,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 │ │ -42b838: |[42b838] org.purple.smoke.Settings$7SingleShot.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; │ │ -42b848: 5400 f25e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ -42b84c: 1100 |0002: return-object v0 │ │ +42b834: |[42b834] org.purple.smoke.Settings$7SingleShot.access$3200:(Lorg/purple/smoke/Settings$7SingleShot;)[Ljava/lang/String; │ │ +42b844: 5400 f25e |0000: iget-object v0, v0, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ +42b848: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2943 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/Settings$7SingleShot; │ │ │ │ Virtual methods - │ │ @@ -740057,91 +740056,91 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 146 16-bit code units │ │ -42b890: |[42b890] org.purple.smoke.Settings$7SingleShot.run:()V │ │ -42b8a0: 5450 f35e |0000: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b8a4: 7110 e1bc 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42b8aa: 0c00 |0005: move-result-object v0 │ │ -42b8ac: 7100 e0bc 0000 |0006: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42b8b2: 0c01 |0009: move-result-object v1 │ │ -42b8b4: 5452 ee5e |000a: iget-object v2, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_oid:Ljava/lang/String; // field@5eee │ │ -42b8b8: 6e30 1cba 1002 |000c: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSipHashId:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Lorg/purple/smoke/SipHashIdElement; // method@ba1c │ │ -42b8be: 0c00 |000f: move-result-object v0 │ │ -42b8c0: 1a01 0000 |0010: const-string v1, "" // string@0000 │ │ -42b8c4: 3900 0400 |0012: if-nez v0, 0016 // +0004 │ │ -42b8c8: 0712 |0014: move-object v2, v1 │ │ -42b8ca: 2803 |0015: goto 0018 // +0003 │ │ -42b8cc: 5402 235f |0016: iget-object v2, v0, Lorg/purple/smoke/SipHashIdElement;.m_sipHashId:Ljava/lang/String; // field@5f23 │ │ -42b8d0: 5b52 ef5e |0018: iput-object v2, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ -42b8d4: 3900 0400 |001a: if-nez v0, 001e // +0004 │ │ -42b8d8: 0712 |001c: move-object v2, v1 │ │ -42b8da: 2803 |001d: goto 0020 // +0003 │ │ -42b8dc: 5402 1b5f |001e: iget-object v2, v0, Lorg/purple/smoke/SipHashIdElement;.m_encryptionAlgorithm:Ljava/lang/String; // field@5f1b │ │ -42b8e0: 3900 0400 |0020: if-nez v0, 0024 // +0004 │ │ -42b8e4: 0710 |0022: move-object v0, v1 │ │ -42b8e6: 2803 |0023: goto 0026 // +0003 │ │ -42b8e8: 5400 205f |0024: iget-object v0, v0, Lorg/purple/smoke/SipHashIdElement;.m_name:Ljava/lang/String; // field@5f20 │ │ -42b8ec: 5b50 ed5e |0026: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ -42b8f0: 5450 f35e |0028: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b8f4: 7110 e1bc 0000 |002a: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42b8fa: 0c00 |002d: move-result-object v0 │ │ -42b8fc: 7100 e0bc 0000 |002e: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42b902: 0c03 |0031: move-result-object v3 │ │ -42b904: 5454 ef5e |0032: iget-object v4, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ -42b908: 6e30 0cba 3004 |0034: invoke-virtual {v0, v3, v4}, Lorg/purple/smoke/Database;.publicEncryptionKeyForSipHashId:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/security/PublicKey; // method@ba0c │ │ -42b90e: 0c00 |0037: move-result-object v0 │ │ -42b910: 1203 |0038: const/4 v3, #int 0 // #0 │ │ -42b912: 7130 89b9 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@b989 │ │ -42b918: 0c00 |003c: move-result-object v0 │ │ -42b91a: 6e10 d35c 0000 |003d: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42b920: 0c00 |0040: move-result-object v0 │ │ -42b922: 5b50 f05e |0041: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_string1:Ljava/lang/String; // field@5ef0 │ │ -42b926: 5450 f35e |0043: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b92a: 7110 e1bc 0000 |0045: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42b930: 0c00 |0048: move-result-object v0 │ │ -42b932: 7100 e0bc 0000 |0049: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42b938: 0c02 |004c: move-result-object v2 │ │ -42b93a: 5454 ef5e |004d: iget-object v4, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ -42b93e: 6e30 0eba 2004 |004f: invoke-virtual {v0, v2, v4}, Lorg/purple/smoke/Database;.publicSignatureKeyForSipHashId:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/security/PublicKey; // method@ba0e │ │ -42b944: 0c00 |0052: move-result-object v0 │ │ -42b946: 7130 89b9 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@b989 │ │ -42b94c: 0c00 |0056: move-result-object v0 │ │ -42b94e: 6e10 d35c 0000 |0057: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42b954: 0c00 |005a: move-result-object v0 │ │ -42b956: 5b50 f15e |005b: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_string2:Ljava/lang/String; // field@5ef1 │ │ -42b95a: 5450 f35e |005d: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b95e: 7110 e1bc 0000 |005f: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ -42b964: 0c00 |0062: move-result-object v0 │ │ -42b966: 7100 e0bc 0000 |0063: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ -42b96c: 0c01 |0066: move-result-object v1 │ │ -42b96e: 5452 ef5e |0067: iget-object v2, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ -42b972: 6e30 f9b9 1002 |0069: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.keysSigned:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)[Ljava/lang/String; // method@b9f9 │ │ -42b978: 0c00 |006c: move-result-object v0 │ │ -42b97a: 5b50 f25e |006d: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ -42b97e: 5450 ed5e |006f: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ -42b982: 6e10 c35c 0000 |0071: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42b988: 0a00 |0074: move-result v0 │ │ -42b98a: 3800 0600 |0075: if-eqz v0, 007b // +0006 │ │ -42b98e: 5450 ef5e |0077: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ -42b992: 5b50 ed5e |0079: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ -42b996: 5450 f25e |007b: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ -42b99a: 3900 0a00 |007d: if-nez v0, 0087 // +000a │ │ -42b99e: 1a00 1f68 |007f: const-string v0, "false" // string@681f │ │ -42b9a2: 2420 a81b 0000 |0081: filled-new-array {v0, v0}, [Ljava/lang/String; // type@1ba8 │ │ -42b9a8: 0c00 |0084: move-result-object v0 │ │ -42b9aa: 5b50 f25e |0085: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ -42b9ae: 5450 f35e |0087: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ -42b9b2: 2201 031b |0089: new-instance v1, Lorg/purple/smoke/Settings$7SingleShot$1; // type@1b03 │ │ -42b9b6: 7020 babc 5100 |008b: invoke-direct {v1, v5}, Lorg/purple/smoke/Settings$7SingleShot$1;.:(Lorg/purple/smoke/Settings$7SingleShot;)V // method@bcba │ │ -42b9bc: 6e20 0bbd 1000 |008e: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd0b │ │ -42b9c2: 0e00 |0091: return-void │ │ +42b88c: |[42b88c] org.purple.smoke.Settings$7SingleShot.run:()V │ │ +42b89c: 5450 f35e |0000: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b8a0: 7110 e1bc 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42b8a6: 0c00 |0005: move-result-object v0 │ │ +42b8a8: 7100 e0bc 0000 |0006: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42b8ae: 0c01 |0009: move-result-object v1 │ │ +42b8b0: 5452 ee5e |000a: iget-object v2, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_oid:Ljava/lang/String; // field@5eee │ │ +42b8b4: 6e30 1cba 1002 |000c: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSipHashId:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Lorg/purple/smoke/SipHashIdElement; // method@ba1c │ │ +42b8ba: 0c00 |000f: move-result-object v0 │ │ +42b8bc: 1a01 0000 |0010: const-string v1, "" // string@0000 │ │ +42b8c0: 3900 0400 |0012: if-nez v0, 0016 // +0004 │ │ +42b8c4: 0712 |0014: move-object v2, v1 │ │ +42b8c6: 2803 |0015: goto 0018 // +0003 │ │ +42b8c8: 5402 235f |0016: iget-object v2, v0, Lorg/purple/smoke/SipHashIdElement;.m_sipHashId:Ljava/lang/String; // field@5f23 │ │ +42b8cc: 5b52 ef5e |0018: iput-object v2, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ +42b8d0: 3900 0400 |001a: if-nez v0, 001e // +0004 │ │ +42b8d4: 0712 |001c: move-object v2, v1 │ │ +42b8d6: 2803 |001d: goto 0020 // +0003 │ │ +42b8d8: 5402 1b5f |001e: iget-object v2, v0, Lorg/purple/smoke/SipHashIdElement;.m_encryptionAlgorithm:Ljava/lang/String; // field@5f1b │ │ +42b8dc: 3900 0400 |0020: if-nez v0, 0024 // +0004 │ │ +42b8e0: 0710 |0022: move-object v0, v1 │ │ +42b8e2: 2803 |0023: goto 0026 // +0003 │ │ +42b8e4: 5400 205f |0024: iget-object v0, v0, Lorg/purple/smoke/SipHashIdElement;.m_name:Ljava/lang/String; // field@5f20 │ │ +42b8e8: 5b50 ed5e |0026: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ +42b8ec: 5450 f35e |0028: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b8f0: 7110 e1bc 0000 |002a: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42b8f6: 0c00 |002d: move-result-object v0 │ │ +42b8f8: 7100 e0bc 0000 |002e: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42b8fe: 0c03 |0031: move-result-object v3 │ │ +42b900: 5454 ef5e |0032: iget-object v4, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ +42b904: 6e30 0cba 3004 |0034: invoke-virtual {v0, v3, v4}, Lorg/purple/smoke/Database;.publicEncryptionKeyForSipHashId:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/security/PublicKey; // method@ba0c │ │ +42b90a: 0c00 |0037: move-result-object v0 │ │ +42b90c: 1203 |0038: const/4 v3, #int 0 // #0 │ │ +42b90e: 7130 89b9 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@b989 │ │ +42b914: 0c00 |003c: move-result-object v0 │ │ +42b916: 6e10 d35c 0000 |003d: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42b91c: 0c00 |0040: move-result-object v0 │ │ +42b91e: 5b50 f05e |0041: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_string1:Ljava/lang/String; // field@5ef0 │ │ +42b922: 5450 f35e |0043: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b926: 7110 e1bc 0000 |0045: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42b92c: 0c00 |0048: move-result-object v0 │ │ +42b92e: 7100 e0bc 0000 |0049: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42b934: 0c02 |004c: move-result-object v2 │ │ +42b936: 5454 ef5e |004d: iget-object v4, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ +42b93a: 6e30 0eba 2004 |004f: invoke-virtual {v0, v2, v4}, Lorg/purple/smoke/Database;.publicSignatureKeyForSipHashId:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/security/PublicKey; // method@ba0e │ │ +42b940: 0c00 |0052: move-result-object v0 │ │ +42b942: 7130 89b9 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@b989 │ │ +42b948: 0c00 |0056: move-result-object v0 │ │ +42b94a: 6e10 d35c 0000 |0057: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42b950: 0c00 |005a: move-result-object v0 │ │ +42b952: 5b50 f15e |005b: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_string2:Ljava/lang/String; // field@5ef1 │ │ +42b956: 5450 f35e |005d: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b95a: 7110 e1bc 0000 |005f: invoke-static {v0}, Lorg/purple/smoke/Settings;.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; // method@bce1 │ │ +42b960: 0c00 |0062: move-result-object v0 │ │ +42b962: 7100 e0bc 0000 |0063: invoke-static {}, Lorg/purple/smoke/Settings;.access$300:()Lorg/purple/smoke/Cryptography; // method@bce0 │ │ +42b968: 0c01 |0066: move-result-object v1 │ │ +42b96a: 5452 ef5e |0067: iget-object v2, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ +42b96e: 6e30 f9b9 1002 |0069: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.keysSigned:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)[Ljava/lang/String; // method@b9f9 │ │ +42b974: 0c00 |006c: move-result-object v0 │ │ +42b976: 5b50 f25e |006d: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ +42b97a: 5450 ed5e |006f: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ +42b97e: 6e10 c35c 0000 |0071: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42b984: 0a00 |0074: move-result v0 │ │ +42b986: 3800 0600 |0075: if-eqz v0, 007b // +0006 │ │ +42b98a: 5450 ef5e |0077: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_sipHashId:Ljava/lang/String; // field@5eef │ │ +42b98e: 5b50 ed5e |0079: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_name:Ljava/lang/String; // field@5eed │ │ +42b992: 5450 f25e |007b: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ +42b996: 3900 0a00 |007d: if-nez v0, 0087 // +000a │ │ +42b99a: 1a00 1f68 |007f: const-string v0, "false" // string@681f │ │ +42b99e: 2420 a81b 0000 |0081: filled-new-array {v0, v0}, [Ljava/lang/String; // type@1ba8 │ │ +42b9a4: 0c00 |0084: move-result-object v0 │ │ +42b9a6: 5b50 f25e |0085: iput-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.m_strings:[Ljava/lang/String; // field@5ef2 │ │ +42b9aa: 5450 f35e |0087: iget-object v0, v5, Lorg/purple/smoke/Settings$7SingleShot;.this$0:Lorg/purple/smoke/Settings; // field@5ef3 │ │ +42b9ae: 2201 031b |0089: new-instance v1, Lorg/purple/smoke/Settings$7SingleShot$1; // type@1b03 │ │ +42b9b2: 7020 babc 5100 |008b: invoke-direct {v1, v5}, Lorg/purple/smoke/Settings$7SingleShot$1;.:(Lorg/purple/smoke/Settings$7SingleShot;)V // method@bcba │ │ +42b9b8: 6e20 0bbd 1000 |008e: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bd0b │ │ +42b9be: 0e00 |0091: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2964 │ │ 0x0006 line=2965 │ │ 0x0016 line=2968 │ │ 0x001e line=2972 │ │ 0x0024 line=2975 │ │ @@ -740200,18 +740199,18 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -42ba1c: |[42ba1c] org.purple.smoke.Settings$8.:(Lorg/purple/smoke/Settings;)V │ │ -42ba2c: 5b01 f55e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ -42ba30: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42ba36: 0e00 |0005: return-void │ │ +42ba18: |[42ba18] org.purple.smoke.Settings$8.:(Lorg/purple/smoke/Settings;)V │ │ +42ba28: 5b01 f55e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ +42ba2c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42ba32: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1692 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$8; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings; │ │ │ │ @@ -740221,58 +740220,58 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 8 │ │ ins : 2 │ │ outs : 5 │ │ insns size : 93 16-bit code units │ │ -42ba38: |[42ba38] org.purple.smoke.Settings$8.onClick:(Landroid/view/View;)V │ │ -42ba48: 5460 f55e |0000: iget-object v0, v6, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ -42ba4c: 6e10 f4bc 0000 |0002: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ -42ba52: 0a00 |0005: move-result v0 │ │ -42ba54: 3800 0300 |0006: if-eqz v0, 0009 // +0003 │ │ -42ba58: 0e00 |0008: return-void │ │ -42ba5a: 2200 7b0a |0009: new-instance v0, Landroid/widget/PopupWindow; // type@0a7b │ │ -42ba5e: 5461 f55e |000b: iget-object v1, v6, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ -42ba62: 7020 325a 1000 |000d: invoke-direct {v0, v1}, Landroid/widget/PopupWindow;.:(Landroid/content/Context;)V // method@5a32 │ │ -42ba68: 2201 970a |0010: new-instance v1, Landroid/widget/TextView; // type@0a97 │ │ -42ba6c: 5462 f55e |0012: iget-object v2, v6, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ -42ba70: 7020 ff5a 2100 |0014: invoke-direct {v1, v2}, Landroid/widget/TextView;.:(Landroid/content/Context;)V // method@5aff │ │ -42ba76: 5462 f55e |0017: iget-object v2, v6, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ -42ba7a: 6e10 f0bc 0200 |0019: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.getResources:()Landroid/content/res/Resources; // method@bcf0 │ │ -42ba80: 0c02 |001c: move-result-object v2 │ │ -42ba82: 6e10 0e02 0200 |001d: invoke-virtual {v2}, Landroid/content/res/Resources;.getDisplayMetrics:()Landroid/util/DisplayMetrics; // method@020e │ │ -42ba88: 0c02 |0020: move-result-object v2 │ │ -42ba8a: 5222 992c |0021: iget v2, v2, Landroid/util/DisplayMetrics;.density:F // field@2c99 │ │ -42ba8e: 1303 e800 |0023: const/16 v3, #int 232 // #e8 │ │ -42ba92: 1304 ea00 |0025: const/16 v4, #int 234 // #ea │ │ -42ba96: 1305 f600 |0027: const/16 v5, #int 246 // #f6 │ │ -42ba9a: 7130 c902 4305 |0029: invoke-static {v3, v4, v5}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ -42baa0: 0a03 |002c: move-result v3 │ │ -42baa2: 6e20 275b 3100 |002d: invoke-virtual {v1, v3}, Landroid/widget/TextView;.setBackgroundColor:(I)V // method@5b27 │ │ -42baa8: 1503 2041 |0030: const/high16 v3, #int 1092616192 // #4120 │ │ -42baac: a802 0203 |0032: mul-float v2, v2, v3 │ │ -42bab0: 8722 |0034: float-to-int v2, v2 │ │ -42bab2: 6e52 415b 2122 |0035: invoke-virtual {v1, v2, v2, v2, v2}, Landroid/widget/TextView;.setPaddingRelative:(IIII)V // method@5b41 │ │ -42bab8: 1a02 0819 |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@1908 │ │ -42babc: 6e20 495b 2100 |003a: invoke-virtual {v1, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42bac2: 1502 8041 |003d: const/high16 v2, #int 1098907648 // #4180 │ │ -42bac6: 6e20 4f5b 2100 |003f: invoke-virtual {v1, v2}, Landroid/widget/TextView;.setTextSize:(F)V // method@5b4f │ │ -42bacc: 6e20 445a 1000 |0042: invoke-virtual {v0, v1}, Landroid/widget/PopupWindow;.setContentView:(Landroid/view/View;)V // method@5a44 │ │ -42bad2: 1211 |0045: const/4 v1, #int 1 // #1 │ │ -42bad4: 6e20 4b5a 1000 |0046: invoke-virtual {v0, v1}, Landroid/widget/PopupWindow;.setOutsideTouchable:(Z)V // method@5a4b │ │ -42bada: 6001 6d00 |0049: sget v1, Landroid/os/Build$VERSION;.SDK_INT:I // field@006d │ │ -42bade: 1302 1700 |004b: const/16 v2, #int 23 // #17 │ │ -42bae2: 3521 0c00 |004d: if-ge v1, v2, 0059 // +000c │ │ -42bae6: 1301 c201 |004f: const/16 v1, #int 450 // #1c2 │ │ -42baea: 6e20 485a 1000 |0051: invoke-virtual {v0, v1}, Landroid/widget/PopupWindow;.setHeight:(I)V // method@5a48 │ │ -42baf0: 1301 bc02 |0054: const/16 v1, #int 700 // #2bc │ │ -42baf4: 6e20 4f5a 1000 |0056: invoke-virtual {v0, v1}, Landroid/widget/PopupWindow;.setWidth:(I)V // method@5a4f │ │ -42bafa: 6e20 515a 7000 |0059: invoke-virtual {v0, v7}, Landroid/widget/PopupWindow;.showAsDropDown:(Landroid/view/View;)V // method@5a51 │ │ -42bb00: 0e00 |005c: return-void │ │ +42ba34: |[42ba34] org.purple.smoke.Settings$8.onClick:(Landroid/view/View;)V │ │ +42ba44: 5460 f55e |0000: iget-object v0, v6, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ +42ba48: 6e10 f4bc 0000 |0002: invoke-virtual {v0}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ +42ba4e: 0a00 |0005: move-result v0 │ │ +42ba50: 3800 0300 |0006: if-eqz v0, 0009 // +0003 │ │ +42ba54: 0e00 |0008: return-void │ │ +42ba56: 2200 7b0a |0009: new-instance v0, Landroid/widget/PopupWindow; // type@0a7b │ │ +42ba5a: 5461 f55e |000b: iget-object v1, v6, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ +42ba5e: 7020 325a 1000 |000d: invoke-direct {v0, v1}, Landroid/widget/PopupWindow;.:(Landroid/content/Context;)V // method@5a32 │ │ +42ba64: 2201 970a |0010: new-instance v1, Landroid/widget/TextView; // type@0a97 │ │ +42ba68: 5462 f55e |0012: iget-object v2, v6, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ +42ba6c: 7020 ff5a 2100 |0014: invoke-direct {v1, v2}, Landroid/widget/TextView;.:(Landroid/content/Context;)V // method@5aff │ │ +42ba72: 5462 f55e |0017: iget-object v2, v6, Lorg/purple/smoke/Settings$8;.this$0:Lorg/purple/smoke/Settings; // field@5ef5 │ │ +42ba76: 6e10 f0bc 0200 |0019: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.getResources:()Landroid/content/res/Resources; // method@bcf0 │ │ +42ba7c: 0c02 |001c: move-result-object v2 │ │ +42ba7e: 6e10 0e02 0200 |001d: invoke-virtual {v2}, Landroid/content/res/Resources;.getDisplayMetrics:()Landroid/util/DisplayMetrics; // method@020e │ │ +42ba84: 0c02 |0020: move-result-object v2 │ │ +42ba86: 5222 992c |0021: iget v2, v2, Landroid/util/DisplayMetrics;.density:F // field@2c99 │ │ +42ba8a: 1303 e800 |0023: const/16 v3, #int 232 // #e8 │ │ +42ba8e: 1304 ea00 |0025: const/16 v4, #int 234 // #ea │ │ +42ba92: 1305 f600 |0027: const/16 v5, #int 246 // #f6 │ │ +42ba96: 7130 c902 4305 |0029: invoke-static {v3, v4, v5}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ +42ba9c: 0a03 |002c: move-result v3 │ │ +42ba9e: 6e20 275b 3100 |002d: invoke-virtual {v1, v3}, Landroid/widget/TextView;.setBackgroundColor:(I)V // method@5b27 │ │ +42baa4: 1503 2041 |0030: const/high16 v3, #int 1092616192 // #4120 │ │ +42baa8: a802 0203 |0032: mul-float v2, v2, v3 │ │ +42baac: 8722 |0034: float-to-int v2, v2 │ │ +42baae: 6e52 415b 2122 |0035: invoke-virtual {v1, v2, v2, v2, v2}, Landroid/widget/TextView;.setPaddingRelative:(IIII)V // method@5b41 │ │ +42bab4: 1a02 0819 |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@1908 │ │ +42bab8: 6e20 495b 2100 |003a: invoke-virtual {v1, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42babe: 1502 8041 |003d: const/high16 v2, #int 1098907648 // #4180 │ │ +42bac2: 6e20 4f5b 2100 |003f: invoke-virtual {v1, v2}, Landroid/widget/TextView;.setTextSize:(F)V // method@5b4f │ │ +42bac8: 6e20 445a 1000 |0042: invoke-virtual {v0, v1}, Landroid/widget/PopupWindow;.setContentView:(Landroid/view/View;)V // method@5a44 │ │ +42bace: 1211 |0045: const/4 v1, #int 1 // #1 │ │ +42bad0: 6e20 4b5a 1000 |0046: invoke-virtual {v0, v1}, Landroid/widget/PopupWindow;.setOutsideTouchable:(Z)V // method@5a4b │ │ +42bad6: 6001 6d00 |0049: sget v1, Landroid/os/Build$VERSION;.SDK_INT:I // field@006d │ │ +42bada: 1302 1700 |004b: const/16 v2, #int 23 // #17 │ │ +42bade: 3521 0c00 |004d: if-ge v1, v2, 0059 // +000c │ │ +42bae2: 1301 c201 |004f: const/16 v1, #int 450 // #1c2 │ │ +42bae6: 6e20 485a 1000 |0051: invoke-virtual {v0, v1}, Landroid/widget/PopupWindow;.setHeight:(I)V // method@5a48 │ │ +42baec: 1301 bc02 |0054: const/16 v1, #int 700 // #2bc │ │ +42baf0: 6e20 4f5a 1000 |0056: invoke-virtual {v0, v1}, Landroid/widget/PopupWindow;.setWidth:(I)V // method@5a4f │ │ +42baf6: 6e20 515a 7000 |0059: invoke-virtual {v0, v7}, Landroid/widget/PopupWindow;.showAsDropDown:(Landroid/view/View;)V // method@5a51 │ │ +42bafc: 0e00 |005c: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1695 │ │ 0x0009 line=1698 │ │ 0x0010 line=1699 │ │ 0x0017 line=1700 │ │ 0x001d line=1701 │ │ @@ -740325,18 +740324,18 @@ │ │ type : '(Lorg/purple/smoke/Settings;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -42bb04: |[42bb04] org.purple.smoke.Settings$9.:(Lorg/purple/smoke/Settings;)V │ │ -42bb14: 5b01 f65e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$9;.this$0:Lorg/purple/smoke/Settings; // field@5ef6 │ │ -42bb18: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42bb1e: 0e00 |0005: return-void │ │ +42bb00: |[42bb00] org.purple.smoke.Settings$9.:(Lorg/purple/smoke/Settings;)V │ │ +42bb10: 5b01 f65e |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$9;.this$0:Lorg/purple/smoke/Settings; // field@5ef6 │ │ +42bb14: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42bb1a: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1734 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/Settings$9; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/Settings; │ │ │ │ @@ -740346,24 +740345,24 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 17 16-bit code units │ │ -42bb20: |[42bb20] org.purple.smoke.Settings$9.onClick:(Landroid/view/View;)V │ │ -42bb30: 5412 f65e |0000: iget-object v2, v1, Lorg/purple/smoke/Settings$9;.this$0:Lorg/purple/smoke/Settings; // field@5ef6 │ │ -42bb34: 6e10 f4bc 0200 |0002: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ -42bb3a: 0a02 |0005: move-result v2 │ │ -42bb3c: 3802 0300 |0006: if-eqz v2, 0009 // +0003 │ │ -42bb40: 0e00 |0008: return-void │ │ -42bb42: 5412 f65e |0009: iget-object v2, v1, Lorg/purple/smoke/Settings$9;.this$0:Lorg/purple/smoke/Settings; // field@5ef6 │ │ -42bb46: 1a00 0000 |000b: const-string v0, "" // string@0000 │ │ -42bb4a: 7120 d8bc 0200 |000d: invoke-static {v2, v0}, Lorg/purple/smoke/Settings;.access$1800:(Lorg/purple/smoke/Settings;Ljava/lang/String;)V // method@bcd8 │ │ -42bb50: 0e00 |0010: return-void │ │ +42bb1c: |[42bb1c] org.purple.smoke.Settings$9.onClick:(Landroid/view/View;)V │ │ +42bb2c: 5412 f65e |0000: iget-object v2, v1, Lorg/purple/smoke/Settings$9;.this$0:Lorg/purple/smoke/Settings; // field@5ef6 │ │ +42bb30: 6e10 f4bc 0200 |0002: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ +42bb36: 0a02 |0005: move-result v2 │ │ +42bb38: 3802 0300 |0006: if-eqz v2, 0009 // +0003 │ │ +42bb3c: 0e00 |0008: return-void │ │ +42bb3e: 5412 f65e |0009: iget-object v2, v1, Lorg/purple/smoke/Settings$9;.this$0:Lorg/purple/smoke/Settings; // field@5ef6 │ │ +42bb42: 1a00 0000 |000b: const-string v0, "" // string@0000 │ │ +42bb46: 7120 d8bc 0200 |000d: invoke-static {v2, v0}, Lorg/purple/smoke/Settings;.access$1800:(Lorg/purple/smoke/Settings;Ljava/lang/String;)V // method@bcd8 │ │ +42bb4c: 0e00 |0010: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1737 │ │ 0x0009 line=1740 │ │ locals : │ │ 0x0000 - 0x0011 reg=1 this Lorg/purple/smoke/Settings$9; │ │ 0x0000 - 0x0011 reg=2 (null) Landroid/view/View; │ │ @@ -740438,17 +740437,17 @@ │ │ type : '()V' │ │ access : 0x10002 (PRIVATE CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -42bb54: |[42bb54] org.purple.smoke.Settings$ContextMenuEnumerator.:()V │ │ -42bb64: 7010 8f5c 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42bb6a: 0e00 |0003: return-void │ │ +42bb50: |[42bb50] org.purple.smoke.Settings$ContextMenuEnumerator.:()V │ │ +42bb60: 7010 8f5c 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42bb66: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=86 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lorg/purple/smoke/Settings$ContextMenuEnumerator; │ │ │ │ Virtual methods - │ │ @@ -740495,19 +740494,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 │ │ -42bb6c: |[42bb6c] org.purple.smoke.Settings$PopulateNeighbors.:(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V │ │ -42bb7c: 5b01 005f |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$PopulateNeighbors;.this$0:Lorg/purple/smoke/Settings; // field@5f00 │ │ -42bb80: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42bb86: 5b02 ff5e |0005: iput-object v2, v0, Lorg/purple/smoke/Settings$PopulateNeighbors;.m_arrayList:Ljava/util/ArrayList; // field@5eff │ │ -42bb8a: 0e00 |0007: return-void │ │ +42bb68: |[42bb68] org.purple.smoke.Settings$PopulateNeighbors.:(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V │ │ +42bb78: 5b01 005f |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$PopulateNeighbors;.this$0:Lorg/purple/smoke/Settings; // field@5f00 │ │ +42bb7c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42bb82: 5b02 ff5e |0005: iput-object v2, v0, Lorg/purple/smoke/Settings$PopulateNeighbors;.m_arrayList:Ljava/util/ArrayList; // field@5eff │ │ +42bb86: 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; │ │ @@ -740519,22 +740518,22 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 15 16-bit code units │ │ -42bb8c: |[42bb8c] org.purple.smoke.Settings$PopulateNeighbors.run:()V │ │ -42bb9c: 5420 005f |0000: iget-object v0, v2, Lorg/purple/smoke/Settings$PopulateNeighbors;.this$0:Lorg/purple/smoke/Settings; // field@5f00 │ │ -42bba0: 5421 ff5e |0002: iget-object v1, v2, Lorg/purple/smoke/Settings$PopulateNeighbors;.m_arrayList:Ljava/util/ArrayList; // field@5eff │ │ -42bba4: 7120 cebc 1000 |0004: invoke-static {v0, v1}, Lorg/purple/smoke/Settings;.access$000:(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V // method@bcce │ │ -42bbaa: 5420 ff5e |0007: iget-object v0, v2, Lorg/purple/smoke/Settings$PopulateNeighbors;.m_arrayList:Ljava/util/ArrayList; // field@5eff │ │ -42bbae: 3800 0500 |0009: if-eqz v0, 000e // +0005 │ │ -42bbb2: 6e10 a15f 0000 |000b: invoke-virtual {v0}, Ljava/util/ArrayList;.clear:()V // method@5fa1 │ │ -42bbb8: 0e00 |000e: return-void │ │ +42bb88: |[42bb88] org.purple.smoke.Settings$PopulateNeighbors.run:()V │ │ +42bb98: 5420 005f |0000: iget-object v0, v2, Lorg/purple/smoke/Settings$PopulateNeighbors;.this$0:Lorg/purple/smoke/Settings; // field@5f00 │ │ +42bb9c: 5421 ff5e |0002: iget-object v1, v2, Lorg/purple/smoke/Settings$PopulateNeighbors;.m_arrayList:Ljava/util/ArrayList; // field@5eff │ │ +42bba0: 7120 cebc 1000 |0004: invoke-static {v0, v1}, Lorg/purple/smoke/Settings;.access$000:(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V // method@bcce │ │ +42bba6: 5420 ff5e |0007: iget-object v0, v2, Lorg/purple/smoke/Settings$PopulateNeighbors;.m_arrayList:Ljava/util/ArrayList; // field@5eff │ │ +42bbaa: 3800 0500 |0009: if-eqz v0, 000e // +0005 │ │ +42bbae: 6e10 a15f 0000 |000b: invoke-virtual {v0}, Ljava/util/ArrayList;.clear:()V // method@5fa1 │ │ +42bbb4: 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; │ │ @@ -740573,18 +740572,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 │ │ -42bbbc: |[42bbbc] org.purple.smoke.Settings$SettingsBroadcastReceiver.:(Lorg/purple/smoke/Settings;)V │ │ -42bbcc: 5b01 015f |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bbd0: 7010 4201 0000 |0002: invoke-direct {v0}, Landroid/content/BroadcastReceiver;.:()V // method@0142 │ │ -42bbd6: 0e00 |0005: return-void │ │ +42bbb8: |[42bbb8] org.purple.smoke.Settings$SettingsBroadcastReceiver.:(Lorg/purple/smoke/Settings;)V │ │ +42bbc8: 5b01 015f |0000: iput-object v1, v0, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bbcc: 7010 4201 0000 |0002: invoke-direct {v0}, Landroid/content/BroadcastReceiver;.:()V // method@0142 │ │ +42bbd2: 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; │ │ │ │ @@ -740594,134 +740593,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 │ │ -42bbd8: |[42bbd8] org.purple.smoke.Settings$SettingsBroadcastReceiver.onReceive:(Landroid/content/Context;Landroid/content/Intent;)V │ │ -42bbe8: 3804 d500 |0000: if-eqz v4, 00d5 // +00d5 │ │ -42bbec: 6e10 a501 0400 |0002: invoke-virtual {v4}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ -42bbf2: 0c03 |0005: move-result-object v3 │ │ -42bbf4: 3903 0400 |0006: if-nez v3, 000a // +0004 │ │ -42bbf8: 2900 cd00 |0008: goto/16 00d5 // +00cd │ │ -42bbfc: 6e10 a501 0400 |000a: invoke-virtual {v4}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ -42bc02: 0c03 |000d: move-result-object v3 │ │ -42bc04: 6e10 bf5c 0300 |000e: invoke-virtual {v3}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -42bc0a: 12f0 |0011: const/4 v0, #int -1 // #ff │ │ -42bc0c: 6e10 bf5c 0300 |0012: invoke-virtual {v3}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -42bc12: 0a01 |0015: move-result v1 │ │ -42bc14: 2c01 c000 0000 |0016: sparse-switch v1, 000000d6 // +000000c0 │ │ -42bc1a: 2900 7500 |0019: goto/16 008e // +0075 │ │ -42bc1e: 1a01 fc91 |001b: const-string v1, "org.purple.smoke.neighbor_aborted" // string@91fc │ │ -42bc22: 6e20 b85c 1300 |001d: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bc28: 0a03 |0020: move-result v3 │ │ -42bc2a: 3903 0400 |0021: if-nez v3, 0025 // +0004 │ │ -42bc2e: 2900 6b00 |0023: goto/16 008e // +006b │ │ -42bc32: 1300 0900 |0025: const/16 v0, #int 9 // #9 │ │ -42bc36: 2900 6700 |0027: goto/16 008e // +0067 │ │ -42bc3a: 1a01 0892 |0029: const-string v1, "org.purple.smoke.state_participants_populated" // string@9208 │ │ -42bc3e: 6e20 b85c 1300 |002b: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bc44: 0a03 |002e: move-result v3 │ │ -42bc46: 3903 0400 |002f: if-nez v3, 0033 // +0004 │ │ -42bc4a: 2900 5d00 |0031: goto/16 008e // +005d │ │ -42bc4e: 1300 0800 |0033: const/16 v0, #int 8 // #8 │ │ -42bc52: 2900 5900 |0035: goto/16 008e // +0059 │ │ -42bc56: 1a01 0792 |0037: const-string v1, "org.purple.smoke.siphash_share_confirmation" // string@9207 │ │ -42bc5a: 6e20 b85c 1300 |0039: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bc60: 0a03 |003c: move-result v3 │ │ -42bc62: 3903 0300 |003d: if-nez v3, 0040 // +0003 │ │ -42bc66: 284f |003f: goto 008e // +004f │ │ -42bc68: 1270 |0040: const/4 v0, #int 7 // #7 │ │ -42bc6a: 284d |0041: goto 008e // +004d │ │ -42bc6c: 1a01 ff91 |0042: const-string v1, "org.purple.smoke.network_connected" // string@91ff │ │ -42bc70: 6e20 b85c 1300 |0044: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bc76: 0a03 |0047: move-result v3 │ │ -42bc78: 3903 0300 |0048: if-nez v3, 004b // +0003 │ │ -42bc7c: 2844 |004a: goto 008e // +0044 │ │ -42bc7e: 1260 |004b: const/4 v0, #int 6 // #6 │ │ -42bc80: 2842 |004c: goto 008e // +0042 │ │ -42bc82: 1a01 f491 |004d: const-string v1, "org.purple.smoke.chat_message" // string@91f4 │ │ -42bc86: 6e20 b85c 1300 |004f: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bc8c: 0a03 |0052: move-result v3 │ │ -42bc8e: 3903 0300 |0053: if-nez v3, 0056 // +0003 │ │ -42bc92: 2839 |0055: goto 008e // +0039 │ │ -42bc94: 1250 |0056: const/4 v0, #int 5 // #5 │ │ -42bc96: 2837 |0057: goto 008e // +0037 │ │ -42bc98: 1a01 0c92 |0058: const-string v1, "org.purple.smoke.time" // string@920c │ │ -42bc9c: 6e20 b85c 1300 |005a: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bca2: 0a03 |005d: move-result v3 │ │ -42bca4: 3903 0300 |005e: if-nez v3, 0061 // +0003 │ │ -42bca8: 282e |0060: goto 008e // +002e │ │ -42bcaa: 1240 |0061: const/4 v0, #int 4 // #4 │ │ -42bcac: 282c |0062: goto 008e // +002c │ │ -42bcae: 1a01 0292 |0063: const-string v1, "org.purple.smoke.populate_participants" // string@9202 │ │ -42bcb2: 6e20 b85c 1300 |0065: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bcb8: 0a03 |0068: move-result v3 │ │ -42bcba: 3903 0300 |0069: if-nez v3, 006c // +0003 │ │ -42bcbe: 2823 |006b: goto 008e // +0023 │ │ -42bcc0: 1230 |006c: const/4 v0, #int 3 // #3 │ │ -42bcc2: 2821 |006d: goto 008e // +0021 │ │ -42bcc4: 1a01 fe91 |006e: const-string v1, "org.purple.smoke.neighbor_disconnected" // string@91fe │ │ -42bcc8: 6e20 b85c 1300 |0070: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bcce: 0a03 |0073: move-result v3 │ │ -42bcd0: 3903 0300 |0074: if-nez v3, 0077 // +0003 │ │ -42bcd4: 2818 |0076: goto 008e // +0018 │ │ -42bcd6: 1220 |0077: const/4 v0, #int 2 // #2 │ │ -42bcd8: 2816 |0078: goto 008e // +0016 │ │ -42bcda: 1a01 fd91 |0079: const-string v1, "org.purple.smoke.neighbor_connected" // string@91fd │ │ -42bcde: 6e20 b85c 1300 |007b: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bce4: 0a03 |007e: move-result v3 │ │ -42bce6: 3903 0300 |007f: if-nez v3, 0082 // +0003 │ │ -42bcea: 280d |0081: goto 008e // +000d │ │ -42bcec: 1210 |0082: const/4 v0, #int 1 // #1 │ │ -42bcee: 280b |0083: goto 008e // +000b │ │ -42bcf0: 1a01 0092 |0084: const-string v1, "org.purple.smoke.network_disconnected" // string@9200 │ │ -42bcf4: 6e20 b85c 1300 |0086: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42bcfa: 0a03 |0089: move-result v3 │ │ -42bcfc: 3903 0300 |008a: if-nez v3, 008d // +0003 │ │ -42bd00: 2802 |008c: goto 008e // +0002 │ │ -42bd02: 1200 |008d: const/4 v0, #int 0 // #0 │ │ -42bd04: 1403 9900 087f |008e: const v3, #float 1.80778e+38 // #7f080099 │ │ -42bd0a: 2b00 6f00 0000 |0091: packed-switch v0, 00000100 // +0000006f │ │ -42bd10: 2841 |0094: goto 00d5 // +0041 │ │ -42bd12: 5423 015f |0095: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bd16: 6e10 f3bc 0300 |0097: invoke-virtual {v3}, Lorg/purple/smoke/Settings;.invalidateOptionsMenu:()V // method@bcf3 │ │ -42bd1c: 5423 015f |009a: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bd20: 7110 dabc 0300 |009c: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcda │ │ -42bd26: 2836 |009f: goto 00d5 // +0036 │ │ -42bd28: 5420 015f |00a0: iget-object v0, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bd2c: 6e20 eabc 3000 |00a2: invoke-virtual {v0, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42bd32: 0c03 |00a5: move-result-object v3 │ │ -42bd34: 7130 fbbb 4003 |00a6: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbfb │ │ -42bd3a: 282c |00a9: goto 00d5 // +002c │ │ -42bd3c: 5420 015f |00aa: iget-object v0, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bd40: 6e20 eabc 3000 |00ac: invoke-virtual {v0, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42bd46: 0c03 |00af: move-result-object v3 │ │ -42bd48: 7130 fbbb 4003 |00b0: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbfb │ │ -42bd4e: 2822 |00b3: goto 00d5 // +0022 │ │ -42bd50: 5420 015f |00b4: iget-object v0, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bd54: 6e20 eabc 3000 |00b6: invoke-virtual {v0, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42bd5a: 0c03 |00b9: move-result-object v3 │ │ -42bd5c: 7130 fbbb 4003 |00ba: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbfb │ │ -42bd62: 2818 |00bd: goto 00d5 // +0018 │ │ -42bd64: 5423 015f |00be: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bd68: 7110 dabc 0300 |00c0: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcda │ │ -42bd6e: 2812 |00c3: goto 00d5 // +0012 │ │ -42bd70: 5423 015f |00c4: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bd74: 7110 cfbc 0300 |00c6: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$100:(Lorg/purple/smoke/Settings;)V // method@bccf │ │ -42bd7a: 280c |00c9: goto 00d5 // +000c │ │ -42bd7c: 5423 015f |00ca: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bd80: 7110 cfbc 0300 |00cc: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$100:(Lorg/purple/smoke/Settings;)V // method@bccf │ │ -42bd86: 2806 |00cf: goto 00d5 // +0006 │ │ -42bd88: 5423 015f |00d0: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ -42bd8c: 7110 cfbc 0300 |00d2: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$100:(Lorg/purple/smoke/Settings;)V // method@bccf │ │ -42bd92: 0e00 |00d5: return-void │ │ -42bd94: 0002 0a00 b350 d3ac c38f deb3 411f ... |00d6: sparse-switch-data (42 units) │ │ -42bde8: 0001 0a00 0000 0000 3f00 0000 3900 ... |0100: packed-switch-data (24 units) │ │ +42bbd4: |[42bbd4] org.purple.smoke.Settings$SettingsBroadcastReceiver.onReceive:(Landroid/content/Context;Landroid/content/Intent;)V │ │ +42bbe4: 3804 d500 |0000: if-eqz v4, 00d5 // +00d5 │ │ +42bbe8: 6e10 a501 0400 |0002: invoke-virtual {v4}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ +42bbee: 0c03 |0005: move-result-object v3 │ │ +42bbf0: 3903 0400 |0006: if-nez v3, 000a // +0004 │ │ +42bbf4: 2900 cd00 |0008: goto/16 00d5 // +00cd │ │ +42bbf8: 6e10 a501 0400 |000a: invoke-virtual {v4}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ +42bbfe: 0c03 |000d: move-result-object v3 │ │ +42bc00: 6e10 bf5c 0300 |000e: invoke-virtual {v3}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +42bc06: 12f0 |0011: const/4 v0, #int -1 // #ff │ │ +42bc08: 6e10 bf5c 0300 |0012: invoke-virtual {v3}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +42bc0e: 0a01 |0015: move-result v1 │ │ +42bc10: 2c01 c000 0000 |0016: sparse-switch v1, 000000d6 // +000000c0 │ │ +42bc16: 2900 7500 |0019: goto/16 008e // +0075 │ │ +42bc1a: 1a01 fc91 |001b: const-string v1, "org.purple.smoke.neighbor_aborted" // string@91fc │ │ +42bc1e: 6e20 b85c 1300 |001d: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bc24: 0a03 |0020: move-result v3 │ │ +42bc26: 3903 0400 |0021: if-nez v3, 0025 // +0004 │ │ +42bc2a: 2900 6b00 |0023: goto/16 008e // +006b │ │ +42bc2e: 1300 0900 |0025: const/16 v0, #int 9 // #9 │ │ +42bc32: 2900 6700 |0027: goto/16 008e // +0067 │ │ +42bc36: 1a01 0892 |0029: const-string v1, "org.purple.smoke.state_participants_populated" // string@9208 │ │ +42bc3a: 6e20 b85c 1300 |002b: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bc40: 0a03 |002e: move-result v3 │ │ +42bc42: 3903 0400 |002f: if-nez v3, 0033 // +0004 │ │ +42bc46: 2900 5d00 |0031: goto/16 008e // +005d │ │ +42bc4a: 1300 0800 |0033: const/16 v0, #int 8 // #8 │ │ +42bc4e: 2900 5900 |0035: goto/16 008e // +0059 │ │ +42bc52: 1a01 0792 |0037: const-string v1, "org.purple.smoke.siphash_share_confirmation" // string@9207 │ │ +42bc56: 6e20 b85c 1300 |0039: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bc5c: 0a03 |003c: move-result v3 │ │ +42bc5e: 3903 0300 |003d: if-nez v3, 0040 // +0003 │ │ +42bc62: 284f |003f: goto 008e // +004f │ │ +42bc64: 1270 |0040: const/4 v0, #int 7 // #7 │ │ +42bc66: 284d |0041: goto 008e // +004d │ │ +42bc68: 1a01 ff91 |0042: const-string v1, "org.purple.smoke.network_connected" // string@91ff │ │ +42bc6c: 6e20 b85c 1300 |0044: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bc72: 0a03 |0047: move-result v3 │ │ +42bc74: 3903 0300 |0048: if-nez v3, 004b // +0003 │ │ +42bc78: 2844 |004a: goto 008e // +0044 │ │ +42bc7a: 1260 |004b: const/4 v0, #int 6 // #6 │ │ +42bc7c: 2842 |004c: goto 008e // +0042 │ │ +42bc7e: 1a01 f491 |004d: const-string v1, "org.purple.smoke.chat_message" // string@91f4 │ │ +42bc82: 6e20 b85c 1300 |004f: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bc88: 0a03 |0052: move-result v3 │ │ +42bc8a: 3903 0300 |0053: if-nez v3, 0056 // +0003 │ │ +42bc8e: 2839 |0055: goto 008e // +0039 │ │ +42bc90: 1250 |0056: const/4 v0, #int 5 // #5 │ │ +42bc92: 2837 |0057: goto 008e // +0037 │ │ +42bc94: 1a01 0c92 |0058: const-string v1, "org.purple.smoke.time" // string@920c │ │ +42bc98: 6e20 b85c 1300 |005a: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bc9e: 0a03 |005d: move-result v3 │ │ +42bca0: 3903 0300 |005e: if-nez v3, 0061 // +0003 │ │ +42bca4: 282e |0060: goto 008e // +002e │ │ +42bca6: 1240 |0061: const/4 v0, #int 4 // #4 │ │ +42bca8: 282c |0062: goto 008e // +002c │ │ +42bcaa: 1a01 0292 |0063: const-string v1, "org.purple.smoke.populate_participants" // string@9202 │ │ +42bcae: 6e20 b85c 1300 |0065: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bcb4: 0a03 |0068: move-result v3 │ │ +42bcb6: 3903 0300 |0069: if-nez v3, 006c // +0003 │ │ +42bcba: 2823 |006b: goto 008e // +0023 │ │ +42bcbc: 1230 |006c: const/4 v0, #int 3 // #3 │ │ +42bcbe: 2821 |006d: goto 008e // +0021 │ │ +42bcc0: 1a01 fe91 |006e: const-string v1, "org.purple.smoke.neighbor_disconnected" // string@91fe │ │ +42bcc4: 6e20 b85c 1300 |0070: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bcca: 0a03 |0073: move-result v3 │ │ +42bccc: 3903 0300 |0074: if-nez v3, 0077 // +0003 │ │ +42bcd0: 2818 |0076: goto 008e // +0018 │ │ +42bcd2: 1220 |0077: const/4 v0, #int 2 // #2 │ │ +42bcd4: 2816 |0078: goto 008e // +0016 │ │ +42bcd6: 1a01 fd91 |0079: const-string v1, "org.purple.smoke.neighbor_connected" // string@91fd │ │ +42bcda: 6e20 b85c 1300 |007b: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bce0: 0a03 |007e: move-result v3 │ │ +42bce2: 3903 0300 |007f: if-nez v3, 0082 // +0003 │ │ +42bce6: 280d |0081: goto 008e // +000d │ │ +42bce8: 1210 |0082: const/4 v0, #int 1 // #1 │ │ +42bcea: 280b |0083: goto 008e // +000b │ │ +42bcec: 1a01 0092 |0084: const-string v1, "org.purple.smoke.network_disconnected" // string@9200 │ │ +42bcf0: 6e20 b85c 1300 |0086: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42bcf6: 0a03 |0089: move-result v3 │ │ +42bcf8: 3903 0300 |008a: if-nez v3, 008d // +0003 │ │ +42bcfc: 2802 |008c: goto 008e // +0002 │ │ +42bcfe: 1200 |008d: const/4 v0, #int 0 // #0 │ │ +42bd00: 1403 9900 087f |008e: const v3, #float 1.80778e+38 // #7f080099 │ │ +42bd06: 2b00 6f00 0000 |0091: packed-switch v0, 00000100 // +0000006f │ │ +42bd0c: 2841 |0094: goto 00d5 // +0041 │ │ +42bd0e: 5423 015f |0095: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bd12: 6e10 f3bc 0300 |0097: invoke-virtual {v3}, Lorg/purple/smoke/Settings;.invalidateOptionsMenu:()V // method@bcf3 │ │ +42bd18: 5423 015f |009a: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bd1c: 7110 dabc 0300 |009c: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcda │ │ +42bd22: 2836 |009f: goto 00d5 // +0036 │ │ +42bd24: 5420 015f |00a0: iget-object v0, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bd28: 6e20 eabc 3000 |00a2: invoke-virtual {v0, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42bd2e: 0c03 |00a5: move-result-object v3 │ │ +42bd30: 7130 fbbb 4003 |00a6: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbfb │ │ +42bd36: 282c |00a9: goto 00d5 // +002c │ │ +42bd38: 5420 015f |00aa: iget-object v0, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bd3c: 6e20 eabc 3000 |00ac: invoke-virtual {v0, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42bd42: 0c03 |00af: move-result-object v3 │ │ +42bd44: 7130 fbbb 4003 |00b0: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbfb │ │ +42bd4a: 2822 |00b3: goto 00d5 // +0022 │ │ +42bd4c: 5420 015f |00b4: iget-object v0, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bd50: 6e20 eabc 3000 |00b6: invoke-virtual {v0, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42bd56: 0c03 |00b9: move-result-object v3 │ │ +42bd58: 7130 fbbb 4003 |00ba: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbfb │ │ +42bd5e: 2818 |00bd: goto 00d5 // +0018 │ │ +42bd60: 5423 015f |00be: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bd64: 7110 dabc 0300 |00c0: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$200:(Lorg/purple/smoke/Settings;)V // method@bcda │ │ +42bd6a: 2812 |00c3: goto 00d5 // +0012 │ │ +42bd6c: 5423 015f |00c4: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bd70: 7110 cfbc 0300 |00c6: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$100:(Lorg/purple/smoke/Settings;)V // method@bccf │ │ +42bd76: 280c |00c9: goto 00d5 // +000c │ │ +42bd78: 5423 015f |00ca: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bd7c: 7110 cfbc 0300 |00cc: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$100:(Lorg/purple/smoke/Settings;)V // method@bccf │ │ +42bd82: 2806 |00cf: goto 00d5 // +0006 │ │ +42bd84: 5423 015f |00d0: iget-object v3, v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.this$0:Lorg/purple/smoke/Settings; // field@5f01 │ │ +42bd88: 7110 cfbc 0300 |00d2: invoke-static {v3}, Lorg/purple/smoke/Settings;.access$100:(Lorg/purple/smoke/Settings;)V // method@bccf │ │ +42bd8e: 0e00 |00d5: return-void │ │ +42bd90: 0002 0a00 b350 d3ac c38f deb3 411f ... |00d6: sparse-switch-data (42 units) │ │ +42bde4: 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 │ │ @@ -740827,25 +740826,25 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 32 16-bit code units │ │ -42fc34: |[42fc34] org.purple.smoke.SipHash.:()V │ │ -42fc44: 1220 |0000: const/4 v0, #int 2 // #2 │ │ -42fc46: 2301 4c1b |0001: new-array v1, v0, [I // type@1b4c │ │ -42fc4a: 2601 0d00 0000 |0003: fill-array-data v1, 00000010 // +0000000d │ │ -42fc50: 6901 115f |0006: sput-object v1, Lorg/purple/smoke/SipHash;.C_ROUNDS:[I // field@5f11 │ │ -42fc54: 2300 4c1b |0008: new-array v0, v0, [I // type@1b4c │ │ -42fc58: 2600 0e00 0000 |000a: fill-array-data v0, 00000018 // +0000000e │ │ -42fc5e: 6900 125f |000d: sput-object v0, Lorg/purple/smoke/SipHash;.D_ROUNDS:[I // field@5f12 │ │ -42fc62: 0e00 |000f: return-void │ │ -42fc64: 0003 0400 0200 0000 0200 0000 0400 ... |0010: array-data (8 units) │ │ -42fc74: 0003 0400 0200 0000 0400 0000 0800 ... |0018: array-data (8 units) │ │ +42fc30: |[42fc30] org.purple.smoke.SipHash.:()V │ │ +42fc40: 1220 |0000: const/4 v0, #int 2 // #2 │ │ +42fc42: 2301 4c1b |0001: new-array v1, v0, [I // type@1b4c │ │ +42fc46: 2601 0d00 0000 |0003: fill-array-data v1, 00000010 // +0000000d │ │ +42fc4c: 6901 115f |0006: sput-object v1, Lorg/purple/smoke/SipHash;.C_ROUNDS:[I // field@5f11 │ │ +42fc50: 2300 4c1b |0008: new-array v0, v0, [I // type@1b4c │ │ +42fc54: 2600 0e00 0000 |000a: fill-array-data v0, 00000018 // +0000000e │ │ +42fc5a: 6900 125f |000d: sput-object v0, Lorg/purple/smoke/SipHash;.D_ROUNDS:[I // field@5f12 │ │ +42fc5e: 0e00 |000f: return-void │ │ +42fc60: 0003 0400 0200 0000 0200 0000 0400 ... |0010: array-data (8 units) │ │ +42fc70: 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;) │ │ @@ -740853,27 +740852,27 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 22 16-bit code units │ │ -42fc84: |[42fc84] org.purple.smoke.SipHash.:()V │ │ -42fc94: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42fc9a: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -42fc9c: 5b20 165f |0004: iput-object v0, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ -42fca0: 1210 |0006: const/4 v0, #int 1 // #1 │ │ -42fca2: 5920 145f |0007: iput v0, v2, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ -42fca6: 5920 155f |0009: iput v0, v2, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ -42fcaa: 1600 0000 |000b: const-wide/16 v0, #int 0 // #0 │ │ -42fcae: 5a20 175f |000d: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fcb2: 5a20 185f |000f: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fcb6: 5a20 195f |0011: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fcba: 5a20 1a5f |0013: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fcbe: 0e00 |0015: return-void │ │ +42fc80: |[42fc80] org.purple.smoke.SipHash.:()V │ │ +42fc90: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42fc96: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +42fc98: 5b20 165f |0004: iput-object v0, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ +42fc9c: 1210 |0006: const/4 v0, #int 1 // #1 │ │ +42fc9e: 5920 145f |0007: iput v0, v2, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ +42fca2: 5920 155f |0009: iput v0, v2, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ +42fca6: 1600 0000 |000b: const-wide/16 v0, #int 0 // #0 │ │ +42fcaa: 5a20 175f |000d: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fcae: 5a20 185f |000f: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fcb2: 5a20 195f |0011: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fcb6: 5a20 1a5f |0013: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fcba: 0e00 |0015: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=100 │ │ 0x0004 line=42 │ │ 0x0007 line=43 │ │ 0x0009 line=44 │ │ 0x000d line=45 │ │ @@ -740888,33 +740887,33 @@ │ │ type : '([B)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 32 16-bit code units │ │ -42fcc0: |[42fcc0] org.purple.smoke.SipHash.:([B)V │ │ -42fcd0: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42fcd6: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -42fcd8: 5b20 165f |0004: iput-object v0, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ -42fcdc: 1210 |0006: const/4 v0, #int 1 // #1 │ │ -42fcde: 5920 145f |0007: iput v0, v2, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ -42fce2: 5920 155f |0009: iput v0, v2, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ -42fce6: 1600 0000 |000b: const-wide/16 v0, #int 0 // #0 │ │ -42fcea: 5a20 175f |000d: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fcee: 5a20 185f |000f: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fcf2: 5a20 195f |0011: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fcf6: 5a20 1a5f |0013: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fcfa: 3803 0a00 |0015: if-eqz v3, 001f // +000a │ │ -42fcfe: 2130 |0017: array-length v0, v3 │ │ -42fd00: 1301 1000 |0018: const/16 v1, #int 16 // #10 │ │ -42fd04: 3210 0300 |001a: if-eq v0, v1, 001d // +0003 │ │ -42fd08: 2803 |001c: goto 001f // +0003 │ │ -42fd0a: 5b23 165f |001d: iput-object v3, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ -42fd0e: 0e00 |001f: return-void │ │ +42fcbc: |[42fcbc] org.purple.smoke.SipHash.:([B)V │ │ +42fccc: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42fcd2: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +42fcd4: 5b20 165f |0004: iput-object v0, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ +42fcd8: 1210 |0006: const/4 v0, #int 1 // #1 │ │ +42fcda: 5920 145f |0007: iput v0, v2, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ +42fcde: 5920 155f |0009: iput v0, v2, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ +42fce2: 1600 0000 |000b: const-wide/16 v0, #int 0 // #0 │ │ +42fce6: 5a20 175f |000d: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fcea: 5a20 185f |000f: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fcee: 5a20 195f |0011: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fcf2: 5a20 1a5f |0013: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fcf6: 3803 0a00 |0015: if-eqz v3, 001f // +000a │ │ +42fcfa: 2130 |0017: array-length v0, v3 │ │ +42fcfc: 1301 1000 |0018: const/16 v1, #int 16 // #10 │ │ +42fd00: 3210 0300 |001a: if-eq v0, v1, 001d // +0003 │ │ +42fd04: 2803 |001c: goto 001f // +0003 │ │ +42fd06: 5b23 165f |001d: iput-object v3, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ +42fd0a: 0e00 |001f: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=104 │ │ 0x0004 line=42 │ │ 0x0007 line=43 │ │ 0x0009 line=44 │ │ 0x000d line=45 │ │ @@ -740932,43 +740931,43 @@ │ │ type : '([BII)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 6 │ │ ins : 4 │ │ outs : 1 │ │ insns size : 50 16-bit code units │ │ -42fd10: |[42fd10] org.purple.smoke.SipHash.:([BII)V │ │ -42fd20: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42fd26: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -42fd28: 5b20 165f |0004: iput-object v0, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ -42fd2c: 1210 |0006: const/4 v0, #int 1 // #1 │ │ -42fd2e: 5920 145f |0007: iput v0, v2, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ -42fd32: 5920 155f |0009: iput v0, v2, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ -42fd36: 1600 0000 |000b: const-wide/16 v0, #int 0 // #0 │ │ -42fd3a: 5a20 175f |000d: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fd3e: 5a20 185f |000f: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fd42: 5a20 195f |0011: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fd46: 5a20 1a5f |0013: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fd4a: 3803 1c00 |0015: if-eqz v3, 0031 // +001c │ │ -42fd4e: 2130 |0017: array-length v0, v3 │ │ -42fd50: 1301 1000 |0018: const/16 v1, #int 16 // #10 │ │ -42fd54: 3210 0300 |001a: if-eq v0, v1, 001d // +0003 │ │ -42fd58: 2815 |001c: goto 0031 // +0015 │ │ -42fd5a: 3a04 0900 |001d: if-ltz v4, 0026 // +0009 │ │ -42fd5e: 6200 115f |001f: sget-object v0, Lorg/purple/smoke/SipHash;.C_ROUNDS:[I // field@5f11 │ │ -42fd62: 2100 |0021: array-length v0, v0 │ │ -42fd64: 3504 0400 |0022: if-ge v4, v0, 0026 // +0004 │ │ -42fd68: 5924 145f |0024: iput v4, v2, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ -42fd6c: 3a05 0900 |0026: if-ltz v5, 002f // +0009 │ │ -42fd70: 6204 125f |0028: sget-object v4, Lorg/purple/smoke/SipHash;.D_ROUNDS:[I // field@5f12 │ │ -42fd74: 2144 |002a: array-length v4, v4 │ │ -42fd76: 3545 0400 |002b: if-ge v5, v4, 002f // +0004 │ │ -42fd7a: 5925 155f |002d: iput v5, v2, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ -42fd7e: 5b23 165f |002f: iput-object v3, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ -42fd82: 0e00 |0031: return-void │ │ +42fd0c: |[42fd0c] org.purple.smoke.SipHash.:([BII)V │ │ +42fd1c: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42fd22: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +42fd24: 5b20 165f |0004: iput-object v0, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ +42fd28: 1210 |0006: const/4 v0, #int 1 // #1 │ │ +42fd2a: 5920 145f |0007: iput v0, v2, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ +42fd2e: 5920 155f |0009: iput v0, v2, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ +42fd32: 1600 0000 |000b: const-wide/16 v0, #int 0 // #0 │ │ +42fd36: 5a20 175f |000d: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fd3a: 5a20 185f |000f: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fd3e: 5a20 195f |0011: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fd42: 5a20 1a5f |0013: iput-wide v0, v2, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fd46: 3803 1c00 |0015: if-eqz v3, 0031 // +001c │ │ +42fd4a: 2130 |0017: array-length v0, v3 │ │ +42fd4c: 1301 1000 |0018: const/16 v1, #int 16 // #10 │ │ +42fd50: 3210 0300 |001a: if-eq v0, v1, 001d // +0003 │ │ +42fd54: 2815 |001c: goto 0031 // +0015 │ │ +42fd56: 3a04 0900 |001d: if-ltz v4, 0026 // +0009 │ │ +42fd5a: 6200 115f |001f: sget-object v0, Lorg/purple/smoke/SipHash;.C_ROUNDS:[I // field@5f11 │ │ +42fd5e: 2100 |0021: array-length v0, v0 │ │ +42fd60: 3504 0400 |0022: if-ge v4, v0, 0026 // +0004 │ │ +42fd64: 5924 145f |0024: iput v4, v2, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ +42fd68: 3a05 0900 |0026: if-ltz v5, 002f // +0009 │ │ +42fd6c: 6204 125f |0028: sget-object v4, Lorg/purple/smoke/SipHash;.D_ROUNDS:[I // field@5f12 │ │ +42fd70: 2144 |002a: array-length v4, v4 │ │ +42fd72: 3545 0400 |002b: if-ge v5, v4, 002f // +0004 │ │ +42fd76: 5925 155f |002d: iput v5, v2, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ +42fd7a: 5b23 165f |002f: iput-object v3, v2, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ +42fd7e: 0e00 |0031: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=112 │ │ 0x0004 line=42 │ │ 0x0007 line=43 │ │ 0x0009 line=44 │ │ 0x000d line=45 │ │ @@ -740992,77 +740991,77 @@ │ │ type : '([BI)J' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 11 │ │ ins : 3 │ │ outs : 0 │ │ insns size : 89 16-bit code units │ │ -42f77c: |[42f77c] org.purple.smoke.SipHash.byteArrayToLong:([BI)J │ │ -42f78c: 1600 0000 |0000: const-wide/16 v0, #int 0 // #0 │ │ -42f790: 3809 5600 |0002: if-eqz v9, 0058 // +0056 │ │ -42f794: 2192 |0004: array-length v2, v9 │ │ -42f796: b1a2 |0005: sub-int/2addr v2, v10 │ │ -42f798: 1303 0800 |0006: const/16 v3, #int 8 // #8 │ │ -42f79c: 3532 0300 |0008: if-ge v2, v3, 000b // +0003 │ │ -42f7a0: 284e |000a: goto 0058 // +004e │ │ -42f7a2: 4802 090a |000b: aget-byte v2, v9, v10 │ │ -42f7a6: 8124 |000d: int-to-long v4, v2 │ │ -42f7a8: 1606 ff00 |000e: const-wide/16 v6, #int 255 // #ff │ │ -42f7ac: c064 |0010: and-long/2addr v4, v6 │ │ -42f7ae: c140 |0011: or-long/2addr v0, v4 │ │ -42f7b0: d802 0a01 |0012: add-int/lit8 v2, v10, #int 1 // #01 │ │ -42f7b4: 4802 0902 |0014: aget-byte v2, v9, v2 │ │ -42f7b8: 8124 |0016: int-to-long v4, v2 │ │ -42f7ba: c064 |0017: and-long/2addr v4, v6 │ │ -42f7bc: a302 0403 |0018: shl-long v2, v4, v3 │ │ -42f7c0: c120 |001a: or-long/2addr v0, v2 │ │ -42f7c2: d802 0a02 |001b: add-int/lit8 v2, v10, #int 2 // #02 │ │ -42f7c6: 4802 0902 |001d: aget-byte v2, v9, v2 │ │ -42f7ca: 8122 |001f: int-to-long v2, v2 │ │ -42f7cc: c062 |0020: and-long/2addr v2, v6 │ │ -42f7ce: 1304 1000 |0021: const/16 v4, #int 16 // #10 │ │ -42f7d2: c342 |0023: shl-long/2addr v2, v4 │ │ -42f7d4: c120 |0024: or-long/2addr v0, v2 │ │ -42f7d6: d802 0a03 |0025: add-int/lit8 v2, v10, #int 3 // #03 │ │ -42f7da: 4802 0902 |0027: aget-byte v2, v9, v2 │ │ -42f7de: 8122 |0029: int-to-long v2, v2 │ │ -42f7e0: c062 |002a: and-long/2addr v2, v6 │ │ -42f7e2: 1304 1800 |002b: const/16 v4, #int 24 // #18 │ │ -42f7e6: c342 |002d: shl-long/2addr v2, v4 │ │ -42f7e8: c120 |002e: or-long/2addr v0, v2 │ │ -42f7ea: d802 0a04 |002f: add-int/lit8 v2, v10, #int 4 // #04 │ │ -42f7ee: 4802 0902 |0031: aget-byte v2, v9, v2 │ │ -42f7f2: 8122 |0033: int-to-long v2, v2 │ │ -42f7f4: c062 |0034: and-long/2addr v2, v6 │ │ -42f7f6: 1304 2000 |0035: const/16 v4, #int 32 // #20 │ │ -42f7fa: c342 |0037: shl-long/2addr v2, v4 │ │ -42f7fc: c120 |0038: or-long/2addr v0, v2 │ │ -42f7fe: d802 0a05 |0039: add-int/lit8 v2, v10, #int 5 // #05 │ │ -42f802: 4802 0902 |003b: aget-byte v2, v9, v2 │ │ -42f806: 8122 |003d: int-to-long v2, v2 │ │ -42f808: c062 |003e: and-long/2addr v2, v6 │ │ -42f80a: 1304 2800 |003f: const/16 v4, #int 40 // #28 │ │ -42f80e: c342 |0041: shl-long/2addr v2, v4 │ │ -42f810: c120 |0042: or-long/2addr v0, v2 │ │ -42f812: d802 0a06 |0043: add-int/lit8 v2, v10, #int 6 // #06 │ │ -42f816: 4802 0902 |0045: aget-byte v2, v9, v2 │ │ -42f81a: 8122 |0047: int-to-long v2, v2 │ │ -42f81c: c062 |0048: and-long/2addr v2, v6 │ │ -42f81e: 1304 3000 |0049: const/16 v4, #int 48 // #30 │ │ -42f822: c342 |004b: shl-long/2addr v2, v4 │ │ -42f824: c120 |004c: or-long/2addr v0, v2 │ │ -42f826: d80a 0a07 |004d: add-int/lit8 v10, v10, #int 7 // #07 │ │ -42f82a: 4809 090a |004f: aget-byte v9, v9, v10 │ │ -42f82e: 8199 |0051: int-to-long v9, v9 │ │ -42f830: c069 |0052: and-long/2addr v9, v6 │ │ -42f832: 1302 3800 |0053: const/16 v2, #int 56 // #38 │ │ -42f836: c329 |0055: shl-long/2addr v9, v2 │ │ -42f838: c109 |0056: or-long/2addr v9, v0 │ │ -42f83a: 1009 |0057: return-wide v9 │ │ -42f83c: 1000 |0058: return-wide v0 │ │ +42f778: |[42f778] org.purple.smoke.SipHash.byteArrayToLong:([BI)J │ │ +42f788: 1600 0000 |0000: const-wide/16 v0, #int 0 // #0 │ │ +42f78c: 3809 5600 |0002: if-eqz v9, 0058 // +0056 │ │ +42f790: 2192 |0004: array-length v2, v9 │ │ +42f792: b1a2 |0005: sub-int/2addr v2, v10 │ │ +42f794: 1303 0800 |0006: const/16 v3, #int 8 // #8 │ │ +42f798: 3532 0300 |0008: if-ge v2, v3, 000b // +0003 │ │ +42f79c: 284e |000a: goto 0058 // +004e │ │ +42f79e: 4802 090a |000b: aget-byte v2, v9, v10 │ │ +42f7a2: 8124 |000d: int-to-long v4, v2 │ │ +42f7a4: 1606 ff00 |000e: const-wide/16 v6, #int 255 // #ff │ │ +42f7a8: c064 |0010: and-long/2addr v4, v6 │ │ +42f7aa: c140 |0011: or-long/2addr v0, v4 │ │ +42f7ac: d802 0a01 |0012: add-int/lit8 v2, v10, #int 1 // #01 │ │ +42f7b0: 4802 0902 |0014: aget-byte v2, v9, v2 │ │ +42f7b4: 8124 |0016: int-to-long v4, v2 │ │ +42f7b6: c064 |0017: and-long/2addr v4, v6 │ │ +42f7b8: a302 0403 |0018: shl-long v2, v4, v3 │ │ +42f7bc: c120 |001a: or-long/2addr v0, v2 │ │ +42f7be: d802 0a02 |001b: add-int/lit8 v2, v10, #int 2 // #02 │ │ +42f7c2: 4802 0902 |001d: aget-byte v2, v9, v2 │ │ +42f7c6: 8122 |001f: int-to-long v2, v2 │ │ +42f7c8: c062 |0020: and-long/2addr v2, v6 │ │ +42f7ca: 1304 1000 |0021: const/16 v4, #int 16 // #10 │ │ +42f7ce: c342 |0023: shl-long/2addr v2, v4 │ │ +42f7d0: c120 |0024: or-long/2addr v0, v2 │ │ +42f7d2: d802 0a03 |0025: add-int/lit8 v2, v10, #int 3 // #03 │ │ +42f7d6: 4802 0902 |0027: aget-byte v2, v9, v2 │ │ +42f7da: 8122 |0029: int-to-long v2, v2 │ │ +42f7dc: c062 |002a: and-long/2addr v2, v6 │ │ +42f7de: 1304 1800 |002b: const/16 v4, #int 24 // #18 │ │ +42f7e2: c342 |002d: shl-long/2addr v2, v4 │ │ +42f7e4: c120 |002e: or-long/2addr v0, v2 │ │ +42f7e6: d802 0a04 |002f: add-int/lit8 v2, v10, #int 4 // #04 │ │ +42f7ea: 4802 0902 |0031: aget-byte v2, v9, v2 │ │ +42f7ee: 8122 |0033: int-to-long v2, v2 │ │ +42f7f0: c062 |0034: and-long/2addr v2, v6 │ │ +42f7f2: 1304 2000 |0035: const/16 v4, #int 32 // #20 │ │ +42f7f6: c342 |0037: shl-long/2addr v2, v4 │ │ +42f7f8: c120 |0038: or-long/2addr v0, v2 │ │ +42f7fa: d802 0a05 |0039: add-int/lit8 v2, v10, #int 5 // #05 │ │ +42f7fe: 4802 0902 |003b: aget-byte v2, v9, v2 │ │ +42f802: 8122 |003d: int-to-long v2, v2 │ │ +42f804: c062 |003e: and-long/2addr v2, v6 │ │ +42f806: 1304 2800 |003f: const/16 v4, #int 40 // #28 │ │ +42f80a: c342 |0041: shl-long/2addr v2, v4 │ │ +42f80c: c120 |0042: or-long/2addr v0, v2 │ │ +42f80e: d802 0a06 |0043: add-int/lit8 v2, v10, #int 6 // #06 │ │ +42f812: 4802 0902 |0045: aget-byte v2, v9, v2 │ │ +42f816: 8122 |0047: int-to-long v2, v2 │ │ +42f818: c062 |0048: and-long/2addr v2, v6 │ │ +42f81a: 1304 3000 |0049: const/16 v4, #int 48 // #30 │ │ +42f81e: c342 |004b: shl-long/2addr v2, v4 │ │ +42f820: c120 |004c: or-long/2addr v0, v2 │ │ +42f822: d80a 0a07 |004d: add-int/lit8 v10, v10, #int 7 // #07 │ │ +42f826: 4809 090a |004f: aget-byte v9, v9, v10 │ │ +42f82a: 8199 |0051: int-to-long v9, v9 │ │ +42f82c: c069 |0052: and-long/2addr v9, v6 │ │ +42f82e: 1302 3800 |0053: const/16 v2, #int 56 // #38 │ │ +42f832: c329 |0055: shl-long/2addr v9, v2 │ │ +42f834: c109 |0056: or-long/2addr v9, v0 │ │ +42f836: 1009 |0057: return-wide v9 │ │ +42f838: 1000 |0058: return-wide v0 │ │ catches : (none) │ │ positions : │ │ 0x0004 line=53 │ │ 0x000b line=58 │ │ 0x0014 line=59 │ │ 0x001d line=61 │ │ 0x0027 line=63 │ │ @@ -741080,84 +741079,84 @@ │ │ type : '(JJ)J' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 9 │ │ ins : 5 │ │ outs : 0 │ │ insns size : 10 16-bit code units │ │ -42f840: |[42f840] org.purple.smoke.SipHash.rotl:(JJ)J │ │ -42f850: 8470 |0000: long-to-int v0, v7 │ │ -42f852: a300 0500 |0001: shl-long v0, v5, v0 │ │ -42f856: 1602 4000 |0003: const-wide/16 v2, #int 64 // #40 │ │ -42f85a: bc72 |0005: sub-long/2addr v2, v7 │ │ -42f85c: 8427 |0006: long-to-int v7, v2 │ │ -42f85e: c575 |0007: ushr-long/2addr v5, v7 │ │ -42f860: c105 |0008: or-long/2addr v5, v0 │ │ -42f862: 1005 |0009: return-wide v5 │ │ +42f83c: |[42f83c] org.purple.smoke.SipHash.rotl:(JJ)J │ │ +42f84c: 8470 |0000: long-to-int v0, v7 │ │ +42f84e: a300 0500 |0001: shl-long v0, v5, v0 │ │ +42f852: 1602 4000 |0003: const-wide/16 v2, #int 64 // #40 │ │ +42f856: bc72 |0005: sub-long/2addr v2, v7 │ │ +42f858: 8427 |0006: long-to-int v7, v2 │ │ +42f85a: c575 |0007: ushr-long/2addr v5, v7 │ │ +42f85c: c105 |0008: or-long/2addr v5, v0 │ │ +42f85e: 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 │ │ -42fd84: |[42fd84] org.purple.smoke.SipHash.round:()V │ │ -42fd94: 5360 175f |0000: iget-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fd98: 5362 185f |0002: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fd9c: bb20 |0004: add-long/2addr v0, v2 │ │ -42fd9e: 5a60 175f |0005: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fda2: 1600 0d00 |0007: const-wide/16 v0, #int 13 // #d │ │ -42fda6: 7051 22bd 2603 |0009: invoke-direct {v6, v2, v3, v0, v1}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd22 │ │ -42fdac: 0b00 |000c: move-result-wide v0 │ │ -42fdae: 5362 175f |000d: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fdb2: c220 |000f: xor-long/2addr v0, v2 │ │ -42fdb4: 5a60 185f |0010: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fdb8: 1600 2000 |0012: const-wide/16 v0, #int 32 // #20 │ │ -42fdbc: 7051 22bd 2603 |0014: invoke-direct {v6, v2, v3, v0, v1}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd22 │ │ -42fdc2: 0b02 |0017: move-result-wide v2 │ │ -42fdc4: 5a62 175f |0018: iput-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fdc8: 5362 195f |001a: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fdcc: 5364 1a5f |001c: iget-wide v4, v6, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fdd0: bb42 |001e: add-long/2addr v2, v4 │ │ -42fdd2: 5a62 195f |001f: iput-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fdd6: 1602 1000 |0021: const-wide/16 v2, #int 16 // #10 │ │ -42fdda: 7053 22bd 4625 |0023: invoke-direct {v6, v4, v5, v2, v3}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd22 │ │ -42fde0: 0b02 |0026: move-result-wide v2 │ │ -42fde2: 5364 195f |0027: iget-wide v4, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fde6: c242 |0029: xor-long/2addr v2, v4 │ │ -42fde8: 5a62 1a5f |002a: iput-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fdec: 5362 185f |002c: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fdf0: bb24 |002e: add-long/2addr v4, v2 │ │ -42fdf2: 5a64 195f |002f: iput-wide v4, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fdf6: 1604 1100 |0031: const-wide/16 v4, #int 17 // #11 │ │ -42fdfa: 7055 22bd 2643 |0033: invoke-direct {v6, v2, v3, v4, v5}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd22 │ │ -42fe00: 0b02 |0036: move-result-wide v2 │ │ -42fe02: 5364 195f |0037: iget-wide v4, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fe06: c242 |0039: xor-long/2addr v2, v4 │ │ -42fe08: 5a62 185f |003a: iput-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fe0c: 7051 22bd 4605 |003c: invoke-direct {v6, v4, v5, v0, v1}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd22 │ │ -42fe12: 0b00 |003f: move-result-wide v0 │ │ -42fe14: 5a60 195f |0040: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fe18: 5360 175f |0042: iget-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fe1c: 5362 1a5f |0044: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fe20: bb20 |0046: add-long/2addr v0, v2 │ │ -42fe22: 5a60 175f |0047: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fe26: 1600 1500 |0049: const-wide/16 v0, #int 21 // #15 │ │ -42fe2a: 7051 22bd 2603 |004b: invoke-direct {v6, v2, v3, v0, v1}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd22 │ │ -42fe30: 0b00 |004e: move-result-wide v0 │ │ -42fe32: 5362 175f |004f: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fe36: c220 |0051: xor-long/2addr v0, v2 │ │ -42fe38: 5a60 1a5f |0052: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fe3c: 0e00 |0054: return-void │ │ +42fd80: |[42fd80] org.purple.smoke.SipHash.round:()V │ │ +42fd90: 5360 175f |0000: iget-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fd94: 5362 185f |0002: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fd98: bb20 |0004: add-long/2addr v0, v2 │ │ +42fd9a: 5a60 175f |0005: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fd9e: 1600 0d00 |0007: const-wide/16 v0, #int 13 // #d │ │ +42fda2: 7051 22bd 2603 |0009: invoke-direct {v6, v2, v3, v0, v1}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd22 │ │ +42fda8: 0b00 |000c: move-result-wide v0 │ │ +42fdaa: 5362 175f |000d: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fdae: c220 |000f: xor-long/2addr v0, v2 │ │ +42fdb0: 5a60 185f |0010: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fdb4: 1600 2000 |0012: const-wide/16 v0, #int 32 // #20 │ │ +42fdb8: 7051 22bd 2603 |0014: invoke-direct {v6, v2, v3, v0, v1}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd22 │ │ +42fdbe: 0b02 |0017: move-result-wide v2 │ │ +42fdc0: 5a62 175f |0018: iput-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fdc4: 5362 195f |001a: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fdc8: 5364 1a5f |001c: iget-wide v4, v6, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fdcc: bb42 |001e: add-long/2addr v2, v4 │ │ +42fdce: 5a62 195f |001f: iput-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fdd2: 1602 1000 |0021: const-wide/16 v2, #int 16 // #10 │ │ +42fdd6: 7053 22bd 4625 |0023: invoke-direct {v6, v4, v5, v2, v3}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd22 │ │ +42fddc: 0b02 |0026: move-result-wide v2 │ │ +42fdde: 5364 195f |0027: iget-wide v4, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fde2: c242 |0029: xor-long/2addr v2, v4 │ │ +42fde4: 5a62 1a5f |002a: iput-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fde8: 5362 185f |002c: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fdec: bb24 |002e: add-long/2addr v4, v2 │ │ +42fdee: 5a64 195f |002f: iput-wide v4, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fdf2: 1604 1100 |0031: const-wide/16 v4, #int 17 // #11 │ │ +42fdf6: 7055 22bd 2643 |0033: invoke-direct {v6, v2, v3, v4, v5}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd22 │ │ +42fdfc: 0b02 |0036: move-result-wide v2 │ │ +42fdfe: 5364 195f |0037: iget-wide v4, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fe02: c242 |0039: xor-long/2addr v2, v4 │ │ +42fe04: 5a62 185f |003a: iput-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fe08: 7051 22bd 4605 |003c: invoke-direct {v6, v4, v5, v0, v1}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd22 │ │ +42fe0e: 0b00 |003f: move-result-wide v0 │ │ +42fe10: 5a60 195f |0040: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fe14: 5360 175f |0042: iget-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fe18: 5362 1a5f |0044: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fe1c: bb20 |0046: add-long/2addr v0, v2 │ │ +42fe1e: 5a60 175f |0047: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fe22: 1600 1500 |0049: const-wide/16 v0, #int 21 // #15 │ │ +42fe26: 7051 22bd 2603 |004b: invoke-direct {v6, v2, v3, v0, v1}, Lorg/purple/smoke/SipHash;.rotl:(JJ)J // method@bd22 │ │ +42fe2c: 0b00 |004e: move-result-wide v0 │ │ +42fe2e: 5362 175f |004f: iget-wide v2, v6, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fe32: c220 |0051: xor-long/2addr v0, v2 │ │ +42fe34: 5a60 1a5f |0052: iput-wide v0, v6, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fe38: 0e00 |0054: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=83 │ │ 0x0009 line=84 │ │ 0x000d line=85 │ │ 0x0014 line=86 │ │ 0x001a line=87 │ │ @@ -741178,40 +741177,40 @@ │ │ type : '()Z' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 7 │ │ ins : 0 │ │ outs : 4 │ │ insns size : 76 16-bit code units │ │ -42f6d4: |[42f6d4] org.purple.smoke.SipHash.test1:()Z │ │ -42f6e4: 2200 0b1b |0000: new-instance v0, Lorg/purple/smoke/SipHash; // type@1b0b │ │ -42f6e8: 1301 1000 |0002: const/16 v1, #int 16 // #10 │ │ -42f6ec: 2311 481b |0004: new-array v1, v1, [B // type@1b48 │ │ -42f6f0: 2601 2600 0000 |0006: fill-array-data v1, 0000002c // +00000026 │ │ -42f6f6: 1202 |0009: const/4 v2, #int 0 // #0 │ │ -42f6f8: 7040 1ebd 1022 |000a: invoke-direct {v0, v1, v2, v2}, Lorg/purple/smoke/SipHash;.:([BII)V // method@bd1e │ │ -42f6fe: 1301 0800 |000d: const/16 v1, #int 8 // #8 │ │ -42f702: 2313 481b |000f: new-array v3, v1, [B // type@1b48 │ │ -42f706: 2603 2700 0000 |0011: fill-array-data v3, 00000038 // +00000027 │ │ -42f70c: 7110 e6bb 0300 |0014: invoke-static {v3}, Lorg/purple/smoke/Miscellaneous;.byteArrayToLong:([B)J // method@bbe6 │ │ -42f712: 0b03 |0017: move-result-wide v3 │ │ -42f714: 1305 0f00 |0018: const/16 v5, #int 15 // #f │ │ -42f718: 2355 481b |001a: new-array v5, v5, [B // type@1b48 │ │ -42f71c: 2605 2400 0000 |001c: fill-array-data v5, 00000040 // +00000024 │ │ -42f722: 6e30 20bd 5001 |001f: invoke-virtual {v0, v5, v1}, Lorg/purple/smoke/SipHash;.hmac:([BI)[J // method@bd20 │ │ -42f728: 0c00 |0022: move-result-object v0 │ │ -42f72a: 4505 0002 |0023: aget-wide v5, v0, v2 │ │ -42f72e: 3100 0305 |0025: cmp-long v0, v3, v5 │ │ -42f732: 3900 0300 |0027: if-nez v0, 002a // +0003 │ │ -42f736: 1212 |0029: const/4 v2, #int 1 // #1 │ │ -42f738: 0f02 |002a: return v2 │ │ -42f73a: 0000 |002b: nop // spacer │ │ -42f73c: 0003 0100 1000 0000 0001 0203 0405 ... |002c: array-data (12 units) │ │ -42f754: 0003 0100 0800 0000 a129 ca61 49be ... |0038: array-data (8 units) │ │ -42f764: 0003 0100 0f00 0000 0001 0203 0405 ... |0040: array-data (12 units) │ │ +42f6d0: |[42f6d0] org.purple.smoke.SipHash.test1:()Z │ │ +42f6e0: 2200 0b1b |0000: new-instance v0, Lorg/purple/smoke/SipHash; // type@1b0b │ │ +42f6e4: 1301 1000 |0002: const/16 v1, #int 16 // #10 │ │ +42f6e8: 2311 481b |0004: new-array v1, v1, [B // type@1b48 │ │ +42f6ec: 2601 2600 0000 |0006: fill-array-data v1, 0000002c // +00000026 │ │ +42f6f2: 1202 |0009: const/4 v2, #int 0 // #0 │ │ +42f6f4: 7040 1ebd 1022 |000a: invoke-direct {v0, v1, v2, v2}, Lorg/purple/smoke/SipHash;.:([BII)V // method@bd1e │ │ +42f6fa: 1301 0800 |000d: const/16 v1, #int 8 // #8 │ │ +42f6fe: 2313 481b |000f: new-array v3, v1, [B // type@1b48 │ │ +42f702: 2603 2700 0000 |0011: fill-array-data v3, 00000038 // +00000027 │ │ +42f708: 7110 e6bb 0300 |0014: invoke-static {v3}, Lorg/purple/smoke/Miscellaneous;.byteArrayToLong:([B)J // method@bbe6 │ │ +42f70e: 0b03 |0017: move-result-wide v3 │ │ +42f710: 1305 0f00 |0018: const/16 v5, #int 15 // #f │ │ +42f714: 2355 481b |001a: new-array v5, v5, [B // type@1b48 │ │ +42f718: 2605 2400 0000 |001c: fill-array-data v5, 00000040 // +00000024 │ │ +42f71e: 6e30 20bd 5001 |001f: invoke-virtual {v0, v5, v1}, Lorg/purple/smoke/SipHash;.hmac:([BI)[J // method@bd20 │ │ +42f724: 0c00 |0022: move-result-object v0 │ │ +42f726: 4505 0002 |0023: aget-wide v5, v0, v2 │ │ +42f72a: 3100 0305 |0025: cmp-long v0, v3, v5 │ │ +42f72e: 3900 0300 |0027: if-nez v0, 002a // +0003 │ │ +42f732: 1212 |0029: const/4 v2, #int 1 // #1 │ │ +42f734: 0f02 |002a: return v2 │ │ +42f736: 0000 |002b: nop // spacer │ │ +42f738: 0003 0100 1000 0000 0001 0203 0405 ... |002c: array-data (12 units) │ │ +42f750: 0003 0100 0800 0000 a129 ca61 49be ... |0038: array-data (8 units) │ │ +42f760: 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 │ │ @@ -741224,19 +741223,19 @@ │ │ type : '([BI)[J' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 4 │ │ insns size : 7 16-bit code units │ │ -42fc14: |[42fc14] org.purple.smoke.SipHash.hmac:([BI)[J │ │ -42fc24: 5410 165f |0000: iget-object v0, v1, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ -42fc28: 6e40 21bd 2130 |0002: invoke-virtual {v1, v2, v0, v3}, Lorg/purple/smoke/SipHash;.hmac:([B[BI)[J // method@bd21 │ │ -42fc2e: 0c02 |0005: move-result-object v2 │ │ -42fc30: 1102 |0006: return-object v2 │ │ +42fc10: |[42fc10] org.purple.smoke.SipHash.hmac:([BI)[J │ │ +42fc20: 5410 165f |0000: iget-object v0, v1, Lorg/purple/smoke/SipHash;.m_key:[B // field@5f16 │ │ +42fc24: 6e40 21bd 2130 |0002: invoke-virtual {v1, v2, v0, v3}, Lorg/purple/smoke/SipHash;.hmac:([B[BI)[J // method@bd21 │ │ +42fc2a: 0c02 |0005: move-result-object v2 │ │ +42fc2c: 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 │ │ @@ -741246,248 +741245,248 @@ │ │ type : '([B[BI)[J' │ │ access : 0x20001 (PUBLIC DECLARED_SYNCHRONIZED) │ │ code - │ │ registers : 21 │ │ ins : 4 │ │ outs : 3 │ │ insns size : 450 16-bit code units │ │ -42f864: |[42f864] org.purple.smoke.SipHash.hmac:([B[BI)[J │ │ -42f874: 0801 1100 |0000: move-object/from16 v1, v17 │ │ -42f878: 0800 1200 |0002: move-object/from16 v0, v18 │ │ -42f87c: 0802 1300 |0004: move-object/from16 v2, v19 │ │ -42f880: 0203 1400 |0006: move/from16 v3, v20 │ │ -42f884: 1d11 |0008: monitor-enter v17 │ │ -42f886: 1204 |0009: const/4 v4, #int 0 // #0 │ │ -42f888: 1228 |000a: const/4 v8, #int 2 // #2 │ │ -42f88a: 3800 9301 |000b: if-eqz v0, 019e // +0193 │ │ -42f88e: 3802 9101 |000d: if-eqz v2, 019e // +0191 │ │ -42f892: 2129 |000f: array-length v9, v2 │ │ -42f894: 130a 1000 |0010: const/16 v10, #int 16 // #10 │ │ -42f898: 32a9 0400 |0012: if-eq v9, v10, 0016 // +0004 │ │ -42f89c: 2900 8a01 |0014: goto/16 019e // +018a │ │ -42f8a0: 7030 1fbd 2104 |0016: invoke-direct {v1, v2, v4}, Lorg/purple/smoke/SipHash;.byteArrayToLong:([BI)J // method@bd1f │ │ -42f8a6: 0b0b |0019: move-result-wide v11 │ │ -42f8a8: 1309 0800 |001a: const/16 v9, #int 8 // #8 │ │ -42f8ac: 7030 1fbd 2109 |001c: invoke-direct {v1, v2, v9}, Lorg/purple/smoke/SipHash;.byteArrayToLong:([BI)J // method@bd1f │ │ -42f8b2: 0b0d |001f: move-result-wide v13 │ │ -42f8b4: 180f 7565 7370 656d 6f73 |0020: const-wide v15, #double 1.09869e+248 // #736f6d6570736575 │ │ -42f8be: a205 0b0f |0025: xor-long v5, v11, v15 │ │ -42f8c2: 5a15 175f |0027: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42f8c6: 1805 6d6f 646e 6172 6f64 |0029: const-wide v5, #double 6.2222e+175 // #646f72616e646f6d │ │ -42f8d0: c2d5 |002e: xor-long/2addr v5, v13 │ │ -42f8d2: 5a15 185f |002f: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42f8d6: 180f 6172 656e 6567 796c |0031: const-wide v15, #double 3.42087e+214 // #6c7967656e657261 │ │ -42f8e0: c2fb |0036: xor-long/2addr v11, v15 │ │ -42f8e2: 5a1b 195f |0037: iput-wide v11, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42f8e6: 180b 7365 7479 6264 6574 |0039: const-wide v11, #double 4.90118e+252 // #7465646279746573 │ │ -42f8f0: c2db |003e: xor-long/2addr v11, v13 │ │ -42f8f2: 5a1b 1a5f |003f: iput-wide v11, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42f8f6: 160b ee00 |0041: const-wide/16 v11, #int 238 // #ee │ │ -42f8fa: 33a3 0500 |0043: if-ne v3, v10, 0048 // +0005 │ │ -42f8fe: c2b5 |0045: xor-long/2addr v5, v11 │ │ -42f900: 5a15 185f |0046: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42f904: 2105 |0048: array-length v5, v0 │ │ -42f906: b395 |0049: div-int/2addr v5, v9 │ │ -42f908: 6206 115f |004a: sget-object v6, Lorg/purple/smoke/SipHash;.C_ROUNDS:[I // field@5f11 │ │ -42f90c: 5217 145f |004c: iget v7, v1, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ -42f910: 4406 0607 |004e: aget v6, v6, v7 │ │ -42f914: 1207 |0050: const/4 v7, #int 0 // #0 │ │ -42f916: 124d |0051: const/4 v13, #int 4 // #4 │ │ -42f918: 3557 3200 |0052: if-ge v7, v5, 0084 // +0032 │ │ -42f91c: da0e 0708 |0054: mul-int/lit8 v14, v7, #int 8 // #08 │ │ -42f920: 7030 1fbd 010e |0056: invoke-direct {v1, v0, v14}, Lorg/purple/smoke/SipHash;.byteArrayToLong:([BI)J // method@bd1f │ │ -42f926: 0b0e |0059: move-result-wide v14 │ │ -42f928: 0213 0500 |005a: move/from16 v19, v5 │ │ -42f92c: 5314 1a5f |005c: iget-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42f930: c2e4 |005e: xor-long/2addr v4, v14 │ │ -42f932: 5a14 1a5f |005f: iput-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42f936: 3286 1200 |0061: if-eq v6, v8, 0073 // +0012 │ │ -42f93a: 32d6 0300 |0063: if-eq v6, v13, 0066 // +0003 │ │ -42f93e: 2814 |0065: goto 0079 // +0014 │ │ -42f940: 7601 23bd 1100 |0066: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42f946: 7601 23bd 1100 |0069: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42f94c: 7601 23bd 1100 |006c: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42f952: 7601 23bd 1100 |006f: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42f958: 2807 |0072: goto 0079 // +0007 │ │ -42f95a: 7601 23bd 1100 |0073: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42f960: 7601 23bd 1100 |0076: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42f966: 5314 175f |0079: iget-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42f96a: c2e4 |007b: xor-long/2addr v4, v14 │ │ -42f96c: 5a14 175f |007c: iput-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42f970: d807 0701 |007e: add-int/lit8 v7, v7, #int 1 // #01 │ │ -42f974: 0205 1300 |0080: move/from16 v5, v19 │ │ -42f978: 1204 |0082: const/4 v4, #int 0 // #0 │ │ -42f97a: 28ce |0083: goto 0051 // -0032 │ │ -42f97c: 2104 |0084: array-length v4, v0 │ │ -42f97e: b394 |0085: div-int/2addr v4, v9 │ │ -42f980: da04 0408 |0086: mul-int/lit8 v4, v4, #int 8 // #08 │ │ -42f984: 2105 |0088: array-length v5, v0 │ │ -42f986: 8155 |0089: int-to-long v5, v5 │ │ -42f988: 1307 3800 |008a: const/16 v7, #int 56 // #38 │ │ -42f98c: c375 |008c: shl-long/2addr v5, v7 │ │ -42f98e: 2107 |008d: array-length v7, v0 │ │ -42f990: b497 |008e: rem-int/2addr v7, v9 │ │ -42f992: 2b07 2101 0000 |008f: packed-switch v7, 000001b0 // +00000121 │ │ -42f998: 2837 |0092: goto 00c9 // +0037 │ │ -42f99a: d807 0406 |0093: add-int/lit8 v7, v4, #int 6 // #06 │ │ -42f99e: 4807 0007 |0095: aget-byte v7, v0, v7 │ │ -42f9a2: 817e |0097: int-to-long v14, v7 │ │ -42f9a4: 1307 3000 |0098: const/16 v7, #int 48 // #30 │ │ -42f9a8: c37e |009a: shl-long/2addr v14, v7 │ │ -42f9aa: c1e5 |009b: or-long/2addr v5, v14 │ │ -42f9ac: d807 0405 |009c: add-int/lit8 v7, v4, #int 5 // #05 │ │ -42f9b0: 4807 0007 |009e: aget-byte v7, v0, v7 │ │ -42f9b4: 817e |00a0: int-to-long v14, v7 │ │ -42f9b6: 1307 2800 |00a1: const/16 v7, #int 40 // #28 │ │ -42f9ba: c37e |00a3: shl-long/2addr v14, v7 │ │ -42f9bc: c1e5 |00a4: or-long/2addr v5, v14 │ │ -42f9be: d807 0404 |00a5: add-int/lit8 v7, v4, #int 4 // #04 │ │ -42f9c2: 4807 0007 |00a7: aget-byte v7, v0, v7 │ │ -42f9c6: 817e |00a9: int-to-long v14, v7 │ │ -42f9c8: 1307 2000 |00aa: const/16 v7, #int 32 // #20 │ │ -42f9cc: c37e |00ac: shl-long/2addr v14, v7 │ │ -42f9ce: c1e5 |00ad: or-long/2addr v5, v14 │ │ -42f9d0: d807 0403 |00ae: add-int/lit8 v7, v4, #int 3 // #03 │ │ -42f9d4: 4807 0007 |00b0: aget-byte v7, v0, v7 │ │ -42f9d8: 817e |00b2: int-to-long v14, v7 │ │ -42f9da: 1307 1800 |00b3: const/16 v7, #int 24 // #18 │ │ -42f9de: c37e |00b5: shl-long/2addr v14, v7 │ │ -42f9e0: c1e5 |00b6: or-long/2addr v5, v14 │ │ -42f9e2: d807 0402 |00b7: add-int/lit8 v7, v4, #int 2 // #02 │ │ -42f9e6: 4807 0007 |00b9: aget-byte v7, v0, v7 │ │ -42f9ea: 817e |00bb: int-to-long v14, v7 │ │ -42f9ec: c3ae |00bc: shl-long/2addr v14, v10 │ │ -42f9ee: c1e5 |00bd: or-long/2addr v5, v14 │ │ -42f9f0: d807 0401 |00be: add-int/lit8 v7, v4, #int 1 // #01 │ │ -42f9f4: 4807 0007 |00c0: aget-byte v7, v0, v7 │ │ -42f9f8: 817e |00c2: int-to-long v14, v7 │ │ -42f9fa: c39e |00c3: shl-long/2addr v14, v9 │ │ -42f9fc: c1e5 |00c4: or-long/2addr v5, v14 │ │ -42f9fe: 4800 0004 |00c5: aget-byte v0, v0, v4 │ │ -42fa02: 810e |00c7: int-to-long v14, v0 │ │ -42fa04: c1e5 |00c8: or-long/2addr v5, v14 │ │ -42fa06: 531e 1a5f |00c9: iget-wide v14, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fa0a: c25e |00cb: xor-long/2addr v14, v5 │ │ -42fa0c: 5a1e 1a5f |00cc: iput-wide v14, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fa10: 6200 115f |00ce: sget-object v0, Lorg/purple/smoke/SipHash;.C_ROUNDS:[I // field@5f11 │ │ -42fa14: 5214 145f |00d0: iget v4, v1, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ -42fa18: 4400 0004 |00d2: aget v0, v0, v4 │ │ -42fa1c: 3280 1200 |00d4: if-eq v0, v8, 00e6 // +0012 │ │ -42fa20: 32d0 0300 |00d6: if-eq v0, v13, 00d9 // +0003 │ │ -42fa24: 2814 |00d8: goto 00ec // +0014 │ │ -42fa26: 7601 23bd 1100 |00d9: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fa2c: 7601 23bd 1100 |00dc: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fa32: 7601 23bd 1100 |00df: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fa38: 7601 23bd 1100 |00e2: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fa3e: 2807 |00e5: goto 00ec // +0007 │ │ -42fa40: 7601 23bd 1100 |00e6: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fa46: 7601 23bd 1100 |00e9: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fa4c: 531e 175f |00ec: iget-wide v14, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fa50: c2e5 |00ee: xor-long/2addr v5, v14 │ │ -42fa52: 5a15 175f |00ef: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fa56: 33a3 0800 |00f1: if-ne v3, v10, 00f9 // +0008 │ │ -42fa5a: 5314 195f |00f3: iget-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fa5e: c2b4 |00f5: xor-long/2addr v4, v11 │ │ -42fa60: 5a14 195f |00f6: iput-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fa64: 2808 |00f8: goto 0100 // +0008 │ │ -42fa66: 5314 195f |00f9: iget-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fa6a: 1606 ff00 |00fb: const-wide/16 v6, #int 255 // #ff │ │ -42fa6e: c264 |00fd: xor-long/2addr v4, v6 │ │ -42fa70: 5a14 195f |00fe: iput-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fa74: 6200 125f |0100: sget-object v0, Lorg/purple/smoke/SipHash;.D_ROUNDS:[I // field@5f12 │ │ -42fa78: 5214 155f |0102: iget v4, v1, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ -42fa7c: 4404 0004 |0104: aget v4, v0, v4 │ │ -42fa80: 32d4 1e00 |0106: if-eq v4, v13, 0124 // +001e │ │ -42fa84: 3294 0300 |0108: if-eq v4, v9, 010b // +0003 │ │ -42fa88: 2826 |010a: goto 0130 // +0026 │ │ -42fa8a: 7601 23bd 1100 |010b: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fa90: 7601 23bd 1100 |010e: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fa96: 7601 23bd 1100 |0111: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fa9c: 7601 23bd 1100 |0114: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42faa2: 7601 23bd 1100 |0117: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42faa8: 7601 23bd 1100 |011a: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42faae: 7601 23bd 1100 |011d: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fab4: 7601 23bd 1100 |0120: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42faba: 280d |0123: goto 0130 // +000d │ │ -42fabc: 7601 23bd 1100 |0124: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fac2: 7601 23bd 1100 |0127: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fac8: 7601 23bd 1100 |012a: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42face: 7601 23bd 1100 |012d: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fad4: 2384 4d1b |0130: new-array v4, v8, [J // type@1b4d │ │ -42fad8: 5315 175f |0132: iget-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fadc: 5317 185f |0134: iget-wide v7, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fae0: c275 |0136: xor-long/2addr v5, v7 │ │ -42fae2: 531a 195f |0137: iget-wide v10, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fae6: c2a5 |0139: xor-long/2addr v5, v10 │ │ -42fae8: 531a 1a5f |013a: iget-wide v10, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42faec: c2a5 |013c: xor-long/2addr v5, v10 │ │ -42faee: 120a |013d: const/4 v10, #int 0 // #0 │ │ -42faf0: 4c05 040a |013e: aput-wide v5, v4, v10 │ │ -42faf4: 1212 |0140: const/4 v2, #int 1 // #1 │ │ -42faf6: 1605 0000 |0141: const-wide/16 v5, #int 0 // #0 │ │ -42fafa: 4c05 0402 |0143: aput-wide v5, v4, v2 │ │ -42fafe: 3393 0c00 |0145: if-ne v3, v9, 0151 // +000c │ │ -42fb02: 5a15 1a5f |0147: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fb06: 5a15 195f |0149: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fb0a: 5a15 185f |014b: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fb0e: 5a15 175f |014d: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fb12: 1e11 |014f: monitor-exit v17 │ │ -42fb14: 1104 |0150: return-object v4 │ │ -42fb16: 1605 dd00 |0151: const-wide/16 v5, #int 221 // #dd │ │ -42fb1a: c275 |0153: xor-long/2addr v5, v7 │ │ -42fb1c: 5a15 185f |0154: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fb20: 5213 155f |0156: iget v3, v1, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ -42fb24: 4400 0003 |0158: aget v0, v0, v3 │ │ -42fb28: 32d0 1e00 |015a: if-eq v0, v13, 0178 // +001e │ │ -42fb2c: 3290 0300 |015c: if-eq v0, v9, 015f // +0003 │ │ -42fb30: 2826 |015e: goto 0184 // +0026 │ │ -42fb32: 7601 23bd 1100 |015f: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fb38: 7601 23bd 1100 |0162: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fb3e: 7601 23bd 1100 |0165: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fb44: 7601 23bd 1100 |0168: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fb4a: 7601 23bd 1100 |016b: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fb50: 7601 23bd 1100 |016e: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fb56: 7601 23bd 1100 |0171: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fb5c: 7601 23bd 1100 |0174: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fb62: 280d |0177: goto 0184 // +000d │ │ -42fb64: 7601 23bd 1100 |0178: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fb6a: 7601 23bd 1100 |017b: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fb70: 7601 23bd 1100 |017e: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fb76: 7601 23bd 1100 |0181: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ -42fb7c: 5315 175f |0184: iget-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fb80: 5317 185f |0186: iget-wide v7, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fb84: c275 |0188: xor-long/2addr v5, v7 │ │ -42fb86: 5317 195f |0189: iget-wide v7, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fb8a: c275 |018b: xor-long/2addr v5, v7 │ │ -42fb8c: 5317 1a5f |018c: iget-wide v7, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fb90: c275 |018e: xor-long/2addr v5, v7 │ │ -42fb92: 1210 |018f: const/4 v0, #int 1 // #1 │ │ -42fb94: 4c05 0400 |0190: aput-wide v5, v4, v0 │ │ -42fb98: 1602 0000 |0192: const-wide/16 v2, #int 0 // #0 │ │ -42fb9c: 5a12 1a5f |0194: iput-wide v2, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ -42fba0: 5a12 195f |0196: iput-wide v2, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ -42fba4: 5a12 185f |0198: iput-wide v2, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ -42fba8: 5a12 175f |019a: iput-wide v2, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ -42fbac: 1e11 |019c: monitor-exit v17 │ │ -42fbae: 1104 |019d: return-object v4 │ │ -42fbb0: 2380 4d1b |019e: new-array v0, v8, [J // type@1b4d │ │ -42fbb4: 1203 |01a0: const/4 v3, #int 0 // #0 │ │ -42fbb6: 1604 0000 |01a1: const-wide/16 v4, #int 0 // #0 │ │ -42fbba: 4c04 0003 |01a3: aput-wide v4, v0, v3 │ │ -42fbbe: 1212 |01a5: const/4 v2, #int 1 // #1 │ │ -42fbc0: 4c04 0002 |01a6: aput-wide v4, v0, v2 │ │ -42fbc4: 1e11 |01a8: monitor-exit v17 │ │ -42fbc6: 1100 |01a9: return-object v0 │ │ -42fbc8: 0d00 |01aa: move-exception v0 │ │ -42fbca: 1e11 |01ab: monitor-exit v17 │ │ -42fbcc: 2802 |01ac: goto 01ae // +0002 │ │ -42fbce: 2700 |01ad: throw v0 │ │ -42fbd0: 28ff |01ae: goto 01ad // -0001 │ │ -42fbd2: 0000 |01af: nop // spacer │ │ -42fbd4: 0001 0700 0100 0000 3600 0000 2f00 ... |01b0: packed-switch-data (18 units) │ │ +42f860: |[42f860] org.purple.smoke.SipHash.hmac:([B[BI)[J │ │ +42f870: 0801 1100 |0000: move-object/from16 v1, v17 │ │ +42f874: 0800 1200 |0002: move-object/from16 v0, v18 │ │ +42f878: 0802 1300 |0004: move-object/from16 v2, v19 │ │ +42f87c: 0203 1400 |0006: move/from16 v3, v20 │ │ +42f880: 1d11 |0008: monitor-enter v17 │ │ +42f882: 1204 |0009: const/4 v4, #int 0 // #0 │ │ +42f884: 1228 |000a: const/4 v8, #int 2 // #2 │ │ +42f886: 3800 9301 |000b: if-eqz v0, 019e // +0193 │ │ +42f88a: 3802 9101 |000d: if-eqz v2, 019e // +0191 │ │ +42f88e: 2129 |000f: array-length v9, v2 │ │ +42f890: 130a 1000 |0010: const/16 v10, #int 16 // #10 │ │ +42f894: 32a9 0400 |0012: if-eq v9, v10, 0016 // +0004 │ │ +42f898: 2900 8a01 |0014: goto/16 019e // +018a │ │ +42f89c: 7030 1fbd 2104 |0016: invoke-direct {v1, v2, v4}, Lorg/purple/smoke/SipHash;.byteArrayToLong:([BI)J // method@bd1f │ │ +42f8a2: 0b0b |0019: move-result-wide v11 │ │ +42f8a4: 1309 0800 |001a: const/16 v9, #int 8 // #8 │ │ +42f8a8: 7030 1fbd 2109 |001c: invoke-direct {v1, v2, v9}, Lorg/purple/smoke/SipHash;.byteArrayToLong:([BI)J // method@bd1f │ │ +42f8ae: 0b0d |001f: move-result-wide v13 │ │ +42f8b0: 180f 7565 7370 656d 6f73 |0020: const-wide v15, #double 1.09869e+248 // #736f6d6570736575 │ │ +42f8ba: a205 0b0f |0025: xor-long v5, v11, v15 │ │ +42f8be: 5a15 175f |0027: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42f8c2: 1805 6d6f 646e 6172 6f64 |0029: const-wide v5, #double 6.2222e+175 // #646f72616e646f6d │ │ +42f8cc: c2d5 |002e: xor-long/2addr v5, v13 │ │ +42f8ce: 5a15 185f |002f: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42f8d2: 180f 6172 656e 6567 796c |0031: const-wide v15, #double 3.42087e+214 // #6c7967656e657261 │ │ +42f8dc: c2fb |0036: xor-long/2addr v11, v15 │ │ +42f8de: 5a1b 195f |0037: iput-wide v11, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42f8e2: 180b 7365 7479 6264 6574 |0039: const-wide v11, #double 4.90118e+252 // #7465646279746573 │ │ +42f8ec: c2db |003e: xor-long/2addr v11, v13 │ │ +42f8ee: 5a1b 1a5f |003f: iput-wide v11, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42f8f2: 160b ee00 |0041: const-wide/16 v11, #int 238 // #ee │ │ +42f8f6: 33a3 0500 |0043: if-ne v3, v10, 0048 // +0005 │ │ +42f8fa: c2b5 |0045: xor-long/2addr v5, v11 │ │ +42f8fc: 5a15 185f |0046: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42f900: 2105 |0048: array-length v5, v0 │ │ +42f902: b395 |0049: div-int/2addr v5, v9 │ │ +42f904: 6206 115f |004a: sget-object v6, Lorg/purple/smoke/SipHash;.C_ROUNDS:[I // field@5f11 │ │ +42f908: 5217 145f |004c: iget v7, v1, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ +42f90c: 4406 0607 |004e: aget v6, v6, v7 │ │ +42f910: 1207 |0050: const/4 v7, #int 0 // #0 │ │ +42f912: 124d |0051: const/4 v13, #int 4 // #4 │ │ +42f914: 3557 3200 |0052: if-ge v7, v5, 0084 // +0032 │ │ +42f918: da0e 0708 |0054: mul-int/lit8 v14, v7, #int 8 // #08 │ │ +42f91c: 7030 1fbd 010e |0056: invoke-direct {v1, v0, v14}, Lorg/purple/smoke/SipHash;.byteArrayToLong:([BI)J // method@bd1f │ │ +42f922: 0b0e |0059: move-result-wide v14 │ │ +42f924: 0213 0500 |005a: move/from16 v19, v5 │ │ +42f928: 5314 1a5f |005c: iget-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42f92c: c2e4 |005e: xor-long/2addr v4, v14 │ │ +42f92e: 5a14 1a5f |005f: iput-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42f932: 3286 1200 |0061: if-eq v6, v8, 0073 // +0012 │ │ +42f936: 32d6 0300 |0063: if-eq v6, v13, 0066 // +0003 │ │ +42f93a: 2814 |0065: goto 0079 // +0014 │ │ +42f93c: 7601 23bd 1100 |0066: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42f942: 7601 23bd 1100 |0069: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42f948: 7601 23bd 1100 |006c: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42f94e: 7601 23bd 1100 |006f: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42f954: 2807 |0072: goto 0079 // +0007 │ │ +42f956: 7601 23bd 1100 |0073: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42f95c: 7601 23bd 1100 |0076: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42f962: 5314 175f |0079: iget-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42f966: c2e4 |007b: xor-long/2addr v4, v14 │ │ +42f968: 5a14 175f |007c: iput-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42f96c: d807 0701 |007e: add-int/lit8 v7, v7, #int 1 // #01 │ │ +42f970: 0205 1300 |0080: move/from16 v5, v19 │ │ +42f974: 1204 |0082: const/4 v4, #int 0 // #0 │ │ +42f976: 28ce |0083: goto 0051 // -0032 │ │ +42f978: 2104 |0084: array-length v4, v0 │ │ +42f97a: b394 |0085: div-int/2addr v4, v9 │ │ +42f97c: da04 0408 |0086: mul-int/lit8 v4, v4, #int 8 // #08 │ │ +42f980: 2105 |0088: array-length v5, v0 │ │ +42f982: 8155 |0089: int-to-long v5, v5 │ │ +42f984: 1307 3800 |008a: const/16 v7, #int 56 // #38 │ │ +42f988: c375 |008c: shl-long/2addr v5, v7 │ │ +42f98a: 2107 |008d: array-length v7, v0 │ │ +42f98c: b497 |008e: rem-int/2addr v7, v9 │ │ +42f98e: 2b07 2101 0000 |008f: packed-switch v7, 000001b0 // +00000121 │ │ +42f994: 2837 |0092: goto 00c9 // +0037 │ │ +42f996: d807 0406 |0093: add-int/lit8 v7, v4, #int 6 // #06 │ │ +42f99a: 4807 0007 |0095: aget-byte v7, v0, v7 │ │ +42f99e: 817e |0097: int-to-long v14, v7 │ │ +42f9a0: 1307 3000 |0098: const/16 v7, #int 48 // #30 │ │ +42f9a4: c37e |009a: shl-long/2addr v14, v7 │ │ +42f9a6: c1e5 |009b: or-long/2addr v5, v14 │ │ +42f9a8: d807 0405 |009c: add-int/lit8 v7, v4, #int 5 // #05 │ │ +42f9ac: 4807 0007 |009e: aget-byte v7, v0, v7 │ │ +42f9b0: 817e |00a0: int-to-long v14, v7 │ │ +42f9b2: 1307 2800 |00a1: const/16 v7, #int 40 // #28 │ │ +42f9b6: c37e |00a3: shl-long/2addr v14, v7 │ │ +42f9b8: c1e5 |00a4: or-long/2addr v5, v14 │ │ +42f9ba: d807 0404 |00a5: add-int/lit8 v7, v4, #int 4 // #04 │ │ +42f9be: 4807 0007 |00a7: aget-byte v7, v0, v7 │ │ +42f9c2: 817e |00a9: int-to-long v14, v7 │ │ +42f9c4: 1307 2000 |00aa: const/16 v7, #int 32 // #20 │ │ +42f9c8: c37e |00ac: shl-long/2addr v14, v7 │ │ +42f9ca: c1e5 |00ad: or-long/2addr v5, v14 │ │ +42f9cc: d807 0403 |00ae: add-int/lit8 v7, v4, #int 3 // #03 │ │ +42f9d0: 4807 0007 |00b0: aget-byte v7, v0, v7 │ │ +42f9d4: 817e |00b2: int-to-long v14, v7 │ │ +42f9d6: 1307 1800 |00b3: const/16 v7, #int 24 // #18 │ │ +42f9da: c37e |00b5: shl-long/2addr v14, v7 │ │ +42f9dc: c1e5 |00b6: or-long/2addr v5, v14 │ │ +42f9de: d807 0402 |00b7: add-int/lit8 v7, v4, #int 2 // #02 │ │ +42f9e2: 4807 0007 |00b9: aget-byte v7, v0, v7 │ │ +42f9e6: 817e |00bb: int-to-long v14, v7 │ │ +42f9e8: c3ae |00bc: shl-long/2addr v14, v10 │ │ +42f9ea: c1e5 |00bd: or-long/2addr v5, v14 │ │ +42f9ec: d807 0401 |00be: add-int/lit8 v7, v4, #int 1 // #01 │ │ +42f9f0: 4807 0007 |00c0: aget-byte v7, v0, v7 │ │ +42f9f4: 817e |00c2: int-to-long v14, v7 │ │ +42f9f6: c39e |00c3: shl-long/2addr v14, v9 │ │ +42f9f8: c1e5 |00c4: or-long/2addr v5, v14 │ │ +42f9fa: 4800 0004 |00c5: aget-byte v0, v0, v4 │ │ +42f9fe: 810e |00c7: int-to-long v14, v0 │ │ +42fa00: c1e5 |00c8: or-long/2addr v5, v14 │ │ +42fa02: 531e 1a5f |00c9: iget-wide v14, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fa06: c25e |00cb: xor-long/2addr v14, v5 │ │ +42fa08: 5a1e 1a5f |00cc: iput-wide v14, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fa0c: 6200 115f |00ce: sget-object v0, Lorg/purple/smoke/SipHash;.C_ROUNDS:[I // field@5f11 │ │ +42fa10: 5214 145f |00d0: iget v4, v1, Lorg/purple/smoke/SipHash;.m_c_rounds_index:I // field@5f14 │ │ +42fa14: 4400 0004 |00d2: aget v0, v0, v4 │ │ +42fa18: 3280 1200 |00d4: if-eq v0, v8, 00e6 // +0012 │ │ +42fa1c: 32d0 0300 |00d6: if-eq v0, v13, 00d9 // +0003 │ │ +42fa20: 2814 |00d8: goto 00ec // +0014 │ │ +42fa22: 7601 23bd 1100 |00d9: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fa28: 7601 23bd 1100 |00dc: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fa2e: 7601 23bd 1100 |00df: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fa34: 7601 23bd 1100 |00e2: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fa3a: 2807 |00e5: goto 00ec // +0007 │ │ +42fa3c: 7601 23bd 1100 |00e6: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fa42: 7601 23bd 1100 |00e9: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fa48: 531e 175f |00ec: iget-wide v14, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fa4c: c2e5 |00ee: xor-long/2addr v5, v14 │ │ +42fa4e: 5a15 175f |00ef: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fa52: 33a3 0800 |00f1: if-ne v3, v10, 00f9 // +0008 │ │ +42fa56: 5314 195f |00f3: iget-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fa5a: c2b4 |00f5: xor-long/2addr v4, v11 │ │ +42fa5c: 5a14 195f |00f6: iput-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fa60: 2808 |00f8: goto 0100 // +0008 │ │ +42fa62: 5314 195f |00f9: iget-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fa66: 1606 ff00 |00fb: const-wide/16 v6, #int 255 // #ff │ │ +42fa6a: c264 |00fd: xor-long/2addr v4, v6 │ │ +42fa6c: 5a14 195f |00fe: iput-wide v4, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fa70: 6200 125f |0100: sget-object v0, Lorg/purple/smoke/SipHash;.D_ROUNDS:[I // field@5f12 │ │ +42fa74: 5214 155f |0102: iget v4, v1, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ +42fa78: 4404 0004 |0104: aget v4, v0, v4 │ │ +42fa7c: 32d4 1e00 |0106: if-eq v4, v13, 0124 // +001e │ │ +42fa80: 3294 0300 |0108: if-eq v4, v9, 010b // +0003 │ │ +42fa84: 2826 |010a: goto 0130 // +0026 │ │ +42fa86: 7601 23bd 1100 |010b: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fa8c: 7601 23bd 1100 |010e: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fa92: 7601 23bd 1100 |0111: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fa98: 7601 23bd 1100 |0114: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fa9e: 7601 23bd 1100 |0117: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42faa4: 7601 23bd 1100 |011a: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42faaa: 7601 23bd 1100 |011d: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fab0: 7601 23bd 1100 |0120: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fab6: 280d |0123: goto 0130 // +000d │ │ +42fab8: 7601 23bd 1100 |0124: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fabe: 7601 23bd 1100 |0127: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fac4: 7601 23bd 1100 |012a: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42faca: 7601 23bd 1100 |012d: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fad0: 2384 4d1b |0130: new-array v4, v8, [J // type@1b4d │ │ +42fad4: 5315 175f |0132: iget-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fad8: 5317 185f |0134: iget-wide v7, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fadc: c275 |0136: xor-long/2addr v5, v7 │ │ +42fade: 531a 195f |0137: iget-wide v10, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fae2: c2a5 |0139: xor-long/2addr v5, v10 │ │ +42fae4: 531a 1a5f |013a: iget-wide v10, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fae8: c2a5 |013c: xor-long/2addr v5, v10 │ │ +42faea: 120a |013d: const/4 v10, #int 0 // #0 │ │ +42faec: 4c05 040a |013e: aput-wide v5, v4, v10 │ │ +42faf0: 1212 |0140: const/4 v2, #int 1 // #1 │ │ +42faf2: 1605 0000 |0141: const-wide/16 v5, #int 0 // #0 │ │ +42faf6: 4c05 0402 |0143: aput-wide v5, v4, v2 │ │ +42fafa: 3393 0c00 |0145: if-ne v3, v9, 0151 // +000c │ │ +42fafe: 5a15 1a5f |0147: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fb02: 5a15 195f |0149: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fb06: 5a15 185f |014b: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fb0a: 5a15 175f |014d: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fb0e: 1e11 |014f: monitor-exit v17 │ │ +42fb10: 1104 |0150: return-object v4 │ │ +42fb12: 1605 dd00 |0151: const-wide/16 v5, #int 221 // #dd │ │ +42fb16: c275 |0153: xor-long/2addr v5, v7 │ │ +42fb18: 5a15 185f |0154: iput-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fb1c: 5213 155f |0156: iget v3, v1, Lorg/purple/smoke/SipHash;.m_d_rounds_index:I // field@5f15 │ │ +42fb20: 4400 0003 |0158: aget v0, v0, v3 │ │ +42fb24: 32d0 1e00 |015a: if-eq v0, v13, 0178 // +001e │ │ +42fb28: 3290 0300 |015c: if-eq v0, v9, 015f // +0003 │ │ +42fb2c: 2826 |015e: goto 0184 // +0026 │ │ +42fb2e: 7601 23bd 1100 |015f: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fb34: 7601 23bd 1100 |0162: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fb3a: 7601 23bd 1100 |0165: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fb40: 7601 23bd 1100 |0168: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fb46: 7601 23bd 1100 |016b: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fb4c: 7601 23bd 1100 |016e: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fb52: 7601 23bd 1100 |0171: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fb58: 7601 23bd 1100 |0174: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fb5e: 280d |0177: goto 0184 // +000d │ │ +42fb60: 7601 23bd 1100 |0178: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fb66: 7601 23bd 1100 |017b: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fb6c: 7601 23bd 1100 |017e: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fb72: 7601 23bd 1100 |0181: invoke-direct/range {v17}, Lorg/purple/smoke/SipHash;.round:()V // method@bd23 │ │ +42fb78: 5315 175f |0184: iget-wide v5, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fb7c: 5317 185f |0186: iget-wide v7, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fb80: c275 |0188: xor-long/2addr v5, v7 │ │ +42fb82: 5317 195f |0189: iget-wide v7, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fb86: c275 |018b: xor-long/2addr v5, v7 │ │ +42fb88: 5317 1a5f |018c: iget-wide v7, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fb8c: c275 |018e: xor-long/2addr v5, v7 │ │ +42fb8e: 1210 |018f: const/4 v0, #int 1 // #1 │ │ +42fb90: 4c05 0400 |0190: aput-wide v5, v4, v0 │ │ +42fb94: 1602 0000 |0192: const-wide/16 v2, #int 0 // #0 │ │ +42fb98: 5a12 1a5f |0194: iput-wide v2, v1, Lorg/purple/smoke/SipHash;.m_v3:J // field@5f1a │ │ +42fb9c: 5a12 195f |0196: iput-wide v2, v1, Lorg/purple/smoke/SipHash;.m_v2:J // field@5f19 │ │ +42fba0: 5a12 185f |0198: iput-wide v2, v1, Lorg/purple/smoke/SipHash;.m_v1:J // field@5f18 │ │ +42fba4: 5a12 175f |019a: iput-wide v2, v1, Lorg/purple/smoke/SipHash;.m_v0:J // field@5f17 │ │ +42fba8: 1e11 |019c: monitor-exit v17 │ │ +42fbaa: 1104 |019d: return-object v4 │ │ +42fbac: 2380 4d1b |019e: new-array v0, v8, [J // type@1b4d │ │ +42fbb0: 1203 |01a0: const/4 v3, #int 0 // #0 │ │ +42fbb2: 1604 0000 |01a1: const-wide/16 v4, #int 0 // #0 │ │ +42fbb6: 4c04 0003 |01a3: aput-wide v4, v0, v3 │ │ +42fbba: 1212 |01a5: const/4 v2, #int 1 // #1 │ │ +42fbbc: 4c04 0002 |01a6: aput-wide v4, v0, v2 │ │ +42fbc0: 1e11 |01a8: monitor-exit v17 │ │ +42fbc2: 1100 |01a9: return-object v0 │ │ +42fbc4: 0d00 |01aa: move-exception v0 │ │ +42fbc6: 1e11 |01ab: monitor-exit v17 │ │ +42fbc8: 2802 |01ac: goto 01ae // +0002 │ │ +42fbca: 2700 |01ad: throw v0 │ │ +42fbcc: 28ff |01ae: goto 01ad // -0001 │ │ +42fbce: 0000 |01af: nop // spacer │ │ +42fbd0: 0001 0700 0100 0000 3600 0000 2f00 ... |01b0: packed-switch-data (18 units) │ │ catches : 3 │ │ 0x000f - 0x014f │ │ -> 0x01aa │ │ 0x0154 - 0x019c │ │ -> 0x01aa │ │ 0x019e - 0x01a8 │ │ -> 0x01aa │ │ @@ -741637,31 +741636,31 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 29 16-bit code units │ │ -42f688: |[42f688] org.purple.smoke.SipHashIdElement.:()V │ │ -42f698: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42f69e: 1a00 0000 |0003: const-string v0, "" // string@0000 │ │ -42f6a2: 5b20 1b5f |0005: iput-object v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_encryptionAlgorithm:Ljava/lang/String; // field@5f1b │ │ -42f6a6: 5b20 205f |0007: iput-object v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_name:Ljava/lang/String; // field@5f20 │ │ -42f6aa: 5b20 235f |0009: iput-object v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_sipHashId:Ljava/lang/String; // field@5f23 │ │ -42f6ae: 1200 |000b: const/4 v0, #int 0 // #0 │ │ -42f6b0: 5c20 1d5f |000c: iput-boolean v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_epksCompleted:Z // field@5f1d │ │ -42f6b4: 5c20 1f5f |000e: iput-boolean v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_keysSigned:Z // field@5f1f │ │ -42f6b8: 1201 |0010: const/4 v1, #int 0 // #0 │ │ -42f6ba: 5b21 1c5f |0011: iput-object v1, v2, Lorg/purple/smoke/SipHashIdElement;.m_encryptionPublicKey:[B // field@5f1c │ │ -42f6be: 5b21 225f |0013: iput-object v1, v2, Lorg/purple/smoke/SipHashIdElement;.m_signaturePublicKey:[B // field@5f22 │ │ -42f6c2: 5b21 245f |0015: iput-object v1, v2, Lorg/purple/smoke/SipHashIdElement;.m_stream:[B // field@5f24 │ │ -42f6c6: 5920 1e5f |0017: iput v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_fiascoKeys:I // field@5f1e │ │ -42f6ca: 12f0 |0019: const/4 v0, #int -1 // #ff │ │ -42f6cc: 5920 215f |001a: iput v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_oid:I // field@5f21 │ │ -42f6d0: 0e00 |001c: return-void │ │ +42f684: |[42f684] org.purple.smoke.SipHashIdElement.:()V │ │ +42f694: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42f69a: 1a00 0000 |0003: const-string v0, "" // string@0000 │ │ +42f69e: 5b20 1b5f |0005: iput-object v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_encryptionAlgorithm:Ljava/lang/String; // field@5f1b │ │ +42f6a2: 5b20 205f |0007: iput-object v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_name:Ljava/lang/String; // field@5f20 │ │ +42f6a6: 5b20 235f |0009: iput-object v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_sipHashId:Ljava/lang/String; // field@5f23 │ │ +42f6aa: 1200 |000b: const/4 v0, #int 0 // #0 │ │ +42f6ac: 5c20 1d5f |000c: iput-boolean v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_epksCompleted:Z // field@5f1d │ │ +42f6b0: 5c20 1f5f |000e: iput-boolean v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_keysSigned:Z // field@5f1f │ │ +42f6b4: 1201 |0010: const/4 v1, #int 0 // #0 │ │ +42f6b6: 5b21 1c5f |0011: iput-object v1, v2, Lorg/purple/smoke/SipHashIdElement;.m_encryptionPublicKey:[B // field@5f1c │ │ +42f6ba: 5b21 225f |0013: iput-object v1, v2, Lorg/purple/smoke/SipHashIdElement;.m_signaturePublicKey:[B // field@5f22 │ │ +42f6be: 5b21 245f |0015: iput-object v1, v2, Lorg/purple/smoke/SipHashIdElement;.m_stream:[B // field@5f24 │ │ +42f6c2: 5920 1e5f |0017: iput v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_fiascoKeys:I // field@5f1e │ │ +42f6c6: 12f0 |0019: const/4 v0, #int -1 // #ff │ │ +42f6c8: 5920 215f |001a: iput v0, v2, Lorg/purple/smoke/SipHashIdElement;.m_oid:I // field@5f21 │ │ +42f6cc: 0e00 |001c: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=44 │ │ 0x0005 line=32 │ │ 0x0007 line=33 │ │ 0x0009 line=34 │ │ 0x000c line=35 │ │ @@ -741710,18 +741709,18 @@ │ │ type : '(Landroid/content/Context;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -42fe40: |[42fe40] org.purple.smoke.Smoke$1.:(Landroid/content/Context;)V │ │ -42fe50: 5b01 255f |0000: iput-object v1, v0, Lorg/purple/smoke/Smoke$1;.val$context:Landroid/content/Context; // field@5f25 │ │ -42fe54: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -42fe5a: 0e00 |0005: return-void │ │ +42fe3c: |[42fe3c] org.purple.smoke.Smoke$1.:(Landroid/content/Context;)V │ │ +42fe4c: 5b01 255f |0000: iput-object v1, v0, Lorg/purple/smoke/Smoke$1;.val$context:Landroid/content/Context; // field@5f25 │ │ +42fe50: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +42fe56: 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; │ │ │ │ @@ -741731,43 +741730,43 @@ │ │ type : '(Landroid/content/DialogInterface;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 59 16-bit code units │ │ -42fe5c: |[42fe5c] org.purple.smoke.Smoke$1.onCancel:(Landroid/content/DialogInterface;)V │ │ -42fe6c: 7100 74bd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42fe72: 0c02 |0003: move-result-object v2 │ │ -42fe74: 1a00 c363 |0004: const-string v0, "dialog_accepted" // string@63c3 │ │ -42fe78: 6e20 75bd 0200 |0006: invoke-virtual {v2, v0}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd75 │ │ -42fe7e: 0c02 |0009: move-result-object v2 │ │ -42fe80: 1a00 97a5 |000a: const-string v0, "true" // string@a597 │ │ -42fe84: 6e20 b85c 0200 |000c: invoke-virtual {v2, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42fe8a: 0a02 |000f: move-result v2 │ │ -42fe8c: 3802 2a00 |0010: if-eqz v2, 003a // +002a │ │ -42fe90: 7100 91b9 0000 |0012: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ -42fe96: 0c02 |0015: move-result-object v2 │ │ -42fe98: 6e10 87b9 0200 |0016: invoke-virtual {v2}, Lorg/purple/smoke/Cryptography;.exit:()V // method@b987 │ │ -42fe9e: 7100 2bbd 0000 |0019: invoke-static {}, Lorg/purple/smoke/Smoke;.getApplication:()Lorg/purple/smoke/Smoke; // method@bd2b │ │ -42fea4: 0c02 |001c: move-result-object v2 │ │ -42fea6: 7110 3bbd 0200 |001d: invoke-static {v2}, Lorg/purple/smoke/SmokeService;.stopForegroundTask:(Landroid/content/Context;)V // method@bd3b │ │ -42feac: 7100 74bd 0000 |0020: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42feb2: 0c02 |0023: move-result-object v2 │ │ -42feb4: 6e10 8abd 0200 |0024: invoke-virtual {v2}, Lorg/purple/smoke/State;.setExit:()V // method@bd8a │ │ -42feba: 5412 255f |0027: iget-object v2, v1, Lorg/purple/smoke/Smoke$1;.val$context:Landroid/content/Context; // field@5f25 │ │ -42febe: 2020 1700 |0029: instance-of v0, v2, Landroid/app/Activity; // type@0017 │ │ -42fec2: 3800 0800 |002b: if-eqz v0, 0033 // +0008 │ │ -42fec6: 1f02 1700 |002d: check-cast v2, Landroid/app/Activity; // type@0017 │ │ -42feca: 6e10 6900 0200 |002f: invoke-virtual {v2}, Landroid/app/Activity;.finishAndRemoveTask:()V // method@0069 │ │ -42fed0: 2808 |0032: goto 003a // +0008 │ │ -42fed2: 7100 5705 0000 |0033: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ -42fed8: 0a02 |0036: move-result v2 │ │ -42feda: 7110 5605 0200 |0037: invoke-static {v2}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ -42fee0: 0e00 |003a: return-void │ │ +42fe58: |[42fe58] org.purple.smoke.Smoke$1.onCancel:(Landroid/content/DialogInterface;)V │ │ +42fe68: 7100 74bd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42fe6e: 0c02 |0003: move-result-object v2 │ │ +42fe70: 1a00 c363 |0004: const-string v0, "dialog_accepted" // string@63c3 │ │ +42fe74: 6e20 75bd 0200 |0006: invoke-virtual {v2, v0}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd75 │ │ +42fe7a: 0c02 |0009: move-result-object v2 │ │ +42fe7c: 1a00 97a5 |000a: const-string v0, "true" // string@a597 │ │ +42fe80: 6e20 b85c 0200 |000c: invoke-virtual {v2, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42fe86: 0a02 |000f: move-result v2 │ │ +42fe88: 3802 2a00 |0010: if-eqz v2, 003a // +002a │ │ +42fe8c: 7100 91b9 0000 |0012: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ +42fe92: 0c02 |0015: move-result-object v2 │ │ +42fe94: 6e10 87b9 0200 |0016: invoke-virtual {v2}, Lorg/purple/smoke/Cryptography;.exit:()V // method@b987 │ │ +42fe9a: 7100 2bbd 0000 |0019: invoke-static {}, Lorg/purple/smoke/Smoke;.getApplication:()Lorg/purple/smoke/Smoke; // method@bd2b │ │ +42fea0: 0c02 |001c: move-result-object v2 │ │ +42fea2: 7110 3bbd 0200 |001d: invoke-static {v2}, Lorg/purple/smoke/SmokeService;.stopForegroundTask:(Landroid/content/Context;)V // method@bd3b │ │ +42fea8: 7100 74bd 0000 |0020: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42feae: 0c02 |0023: move-result-object v2 │ │ +42feb0: 6e10 8abd 0200 |0024: invoke-virtual {v2}, Lorg/purple/smoke/State;.setExit:()V // method@bd8a │ │ +42feb6: 5412 255f |0027: iget-object v2, v1, Lorg/purple/smoke/Smoke$1;.val$context:Landroid/content/Context; // field@5f25 │ │ +42feba: 2020 1700 |0029: instance-of v0, v2, Landroid/app/Activity; // type@0017 │ │ +42febe: 3800 0800 |002b: if-eqz v0, 0033 // +0008 │ │ +42fec2: 1f02 1700 |002d: check-cast v2, Landroid/app/Activity; // type@0017 │ │ +42fec6: 6e10 6900 0200 |002f: invoke-virtual {v2}, Landroid/app/Activity;.finishAndRemoveTask:()V // method@0069 │ │ +42fecc: 2808 |0032: goto 003a // +0008 │ │ +42fece: 7100 5705 0000 |0033: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ +42fed4: 0a02 |0036: move-result v2 │ │ +42fed6: 7110 5605 0200 |0037: invoke-static {v2}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ +42fedc: 0e00 |003a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=67 │ │ 0x000c line=68 │ │ 0x0012 line=70 │ │ 0x0019 line=71 │ │ 0x0020 line=72 │ │ @@ -741807,32 +741806,32 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 0 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -4309dc: |[4309dc] org.purple.smoke.Smoke.:()V │ │ -4309ec: 0e00 |0000: return-void │ │ +4309d8: |[4309d8] org.purple.smoke.Smoke.:()V │ │ +4309e8: 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 │ │ -4309f0: |[4309f0] org.purple.smoke.Smoke.:()V │ │ -430a00: 7010 a500 0000 |0000: invoke-direct {v0}, Landroid/app/Application;.:()V // method@00a5 │ │ -430a06: 0e00 |0003: return-void │ │ +4309ec: |[4309ec] org.purple.smoke.Smoke.:()V │ │ +4309fc: 7010 a500 0000 |0000: invoke-direct {v0}, Landroid/app/Application;.:()V // method@00a5 │ │ +430a02: 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;) │ │ @@ -741840,47 +741839,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 │ │ -430a08: |[430a08] org.purple.smoke.Smoke.exit:(ZLandroid/content/Context;)V │ │ -430a18: 1c00 0e1b |0000: const-class v0, Lorg/purple/smoke/Smoke; // type@1b0e │ │ -430a1c: 1d00 |0002: monitor-enter v0 │ │ -430a1e: 3802 0f00 |0003: if-eqz v2, 0012 // +000f │ │ -430a22: 3803 0d00 |0005: if-eqz v3, 0012 // +000d │ │ -430a26: 2202 0d1b |0007: new-instance v2, Lorg/purple/smoke/Smoke$1; // type@1b0d │ │ -430a2a: 7020 26bd 3200 |0009: invoke-direct {v2, v3}, Lorg/purple/smoke/Smoke$1;.:(Landroid/content/Context;)V // method@bd26 │ │ -430a30: 1a01 764e |000c: const-string v1, "Terminate Smoke?" // string@4e76 │ │ -430a34: 7130 fcbb 2301 |000e: invoke-static {v3, v2, v1}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbfc │ │ -430a3a: 2829 |0011: goto 003a // +0029 │ │ -430a3c: 7100 91b9 0000 |0012: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ -430a42: 0c02 |0015: move-result-object v2 │ │ -430a44: 6e10 87b9 0200 |0016: invoke-virtual {v2}, Lorg/purple/smoke/Cryptography;.exit:()V // method@b987 │ │ -430a4a: 7100 2bbd 0000 |0019: invoke-static {}, Lorg/purple/smoke/Smoke;.getApplication:()Lorg/purple/smoke/Smoke; // method@bd2b │ │ -430a50: 0c02 |001c: move-result-object v2 │ │ -430a52: 7110 3bbd 0200 |001d: invoke-static {v2}, Lorg/purple/smoke/SmokeService;.stopForegroundTask:(Landroid/content/Context;)V // method@bd3b │ │ -430a58: 7100 74bd 0000 |0020: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -430a5e: 0c02 |0023: move-result-object v2 │ │ -430a60: 6e10 8abd 0200 |0024: invoke-virtual {v2}, Lorg/purple/smoke/State;.setExit:()V // method@bd8a │ │ -430a66: 3803 0c00 |0027: if-eqz v3, 0033 // +000c │ │ -430a6a: 2032 1700 |0029: instance-of v2, v3, Landroid/app/Activity; // type@0017 │ │ -430a6e: 3802 0800 |002b: if-eqz v2, 0033 // +0008 │ │ -430a72: 1f03 1700 |002d: check-cast v3, Landroid/app/Activity; // type@0017 │ │ -430a76: 6e10 6900 0300 |002f: invoke-virtual {v3}, Landroid/app/Activity;.finishAndRemoveTask:()V // method@0069 │ │ -430a7c: 2808 |0032: goto 003a // +0008 │ │ -430a7e: 7100 5705 0000 |0033: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ -430a84: 0a02 |0036: move-result v2 │ │ -430a86: 7110 5605 0200 |0037: invoke-static {v2}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ -430a8c: 1e00 |003a: monitor-exit v0 │ │ -430a8e: 0e00 |003b: return-void │ │ -430a90: 0d02 |003c: move-exception v2 │ │ -430a92: 1e00 |003d: monitor-exit v0 │ │ -430a94: 2702 |003e: throw v2 │ │ +430a04: |[430a04] org.purple.smoke.Smoke.exit:(ZLandroid/content/Context;)V │ │ +430a14: 1c00 0e1b |0000: const-class v0, Lorg/purple/smoke/Smoke; // type@1b0e │ │ +430a18: 1d00 |0002: monitor-enter v0 │ │ +430a1a: 3802 0f00 |0003: if-eqz v2, 0012 // +000f │ │ +430a1e: 3803 0d00 |0005: if-eqz v3, 0012 // +000d │ │ +430a22: 2202 0d1b |0007: new-instance v2, Lorg/purple/smoke/Smoke$1; // type@1b0d │ │ +430a26: 7020 26bd 3200 |0009: invoke-direct {v2, v3}, Lorg/purple/smoke/Smoke$1;.:(Landroid/content/Context;)V // method@bd26 │ │ +430a2c: 1a01 764e |000c: const-string v1, "Terminate Smoke?" // string@4e76 │ │ +430a30: 7130 fcbb 2301 |000e: invoke-static {v3, v2, v1}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbfc │ │ +430a36: 2829 |0011: goto 003a // +0029 │ │ +430a38: 7100 91b9 0000 |0012: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ +430a3e: 0c02 |0015: move-result-object v2 │ │ +430a40: 6e10 87b9 0200 |0016: invoke-virtual {v2}, Lorg/purple/smoke/Cryptography;.exit:()V // method@b987 │ │ +430a46: 7100 2bbd 0000 |0019: invoke-static {}, Lorg/purple/smoke/Smoke;.getApplication:()Lorg/purple/smoke/Smoke; // method@bd2b │ │ +430a4c: 0c02 |001c: move-result-object v2 │ │ +430a4e: 7110 3bbd 0200 |001d: invoke-static {v2}, Lorg/purple/smoke/SmokeService;.stopForegroundTask:(Landroid/content/Context;)V // method@bd3b │ │ +430a54: 7100 74bd 0000 |0020: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +430a5a: 0c02 |0023: move-result-object v2 │ │ +430a5c: 6e10 8abd 0200 |0024: invoke-virtual {v2}, Lorg/purple/smoke/State;.setExit:()V // method@bd8a │ │ +430a62: 3803 0c00 |0027: if-eqz v3, 0033 // +000c │ │ +430a66: 2032 1700 |0029: instance-of v2, v3, Landroid/app/Activity; // type@0017 │ │ +430a6a: 3802 0800 |002b: if-eqz v2, 0033 // +0008 │ │ +430a6e: 1f03 1700 |002d: check-cast v3, Landroid/app/Activity; // type@0017 │ │ +430a72: 6e10 6900 0300 |002f: invoke-virtual {v3}, Landroid/app/Activity;.finishAndRemoveTask:()V // method@0069 │ │ +430a78: 2808 |0032: goto 003a // +0008 │ │ +430a7a: 7100 5705 0000 |0033: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ +430a80: 0a02 |0036: move-result v2 │ │ +430a82: 7110 5605 0200 |0037: invoke-static {v2}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ +430a88: 1e00 |003a: monitor-exit v0 │ │ +430a8a: 0e00 |003b: return-void │ │ +430a8c: 0d02 |003c: move-exception v2 │ │ +430a8e: 1e00 |003d: monitor-exit v0 │ │ +430a90: 2702 |003e: throw v2 │ │ catches : 1 │ │ 0x0007 - 0x003a │ │ -> 0x003c │ │ positions : │ │ 0x0007 line=62 │ │ 0x000e line=84 │ │ 0x0012 line=88 │ │ @@ -741899,23 +741898,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 │ │ -430168: |[430168] org.purple.smoke.Smoke.getApplication:()Lorg/purple/smoke/Smoke; │ │ -430178: 1c00 0e1b |0000: const-class v0, Lorg/purple/smoke/Smoke; // type@1b0e │ │ -43017c: 1d00 |0002: monitor-enter v0 │ │ -43017e: 6201 265f |0003: sget-object v1, Lorg/purple/smoke/Smoke;.s_instance:Lorg/purple/smoke/Smoke; // field@5f26 │ │ -430182: 1e00 |0005: monitor-exit v0 │ │ -430184: 1101 |0006: return-object v1 │ │ -430186: 0d01 |0007: move-exception v1 │ │ -430188: 1e00 |0008: monitor-exit v0 │ │ -43018a: 2701 |0009: throw v1 │ │ +430164: |[430164] org.purple.smoke.Smoke.getApplication:()Lorg/purple/smoke/Smoke; │ │ +430174: 1c00 0e1b |0000: const-class v0, Lorg/purple/smoke/Smoke; // type@1b0e │ │ +430178: 1d00 |0002: monitor-enter v0 │ │ +43017a: 6201 265f |0003: sget-object v1, Lorg/purple/smoke/Smoke;.s_instance:Lorg/purple/smoke/Smoke; // field@5f26 │ │ +43017e: 1e00 |0005: monitor-exit v0 │ │ +430180: 1101 |0006: return-object v1 │ │ +430182: 0d01 |0007: move-exception v1 │ │ +430184: 1e00 |0008: monitor-exit v0 │ │ +430186: 2701 |0009: throw v1 │ │ catches : 1 │ │ 0x0003 - 0x0005 │ │ -> 0x0007 │ │ positions : │ │ 0x0003 line=55 │ │ locals : │ │ │ │ @@ -741924,34 +741923,34 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 3 │ │ ins : 0 │ │ outs : 2 │ │ insns size : 40 16-bit code units │ │ -430108: |[430108] org.purple.smoke.Smoke.networkStatusString:()Ljava/lang/String; │ │ -430118: 7100 10bb 0000 |0000: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -43011e: 0c00 |0003: move-result-object v0 │ │ -430120: 6e10 04bb 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.connectedNeighborAddress:()Ljava/lang/String; // method@bb04 │ │ -430126: 0c00 |0007: move-result-object v0 │ │ -430128: 6e10 c35c 0000 |0008: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -43012e: 0a01 |000b: move-result v1 │ │ -430130: 3801 0500 |000c: if-eqz v1, 0011 // +0005 │ │ -430134: 1a00 8617 |000e: const-string v0, "Disconnected" // string@1786 │ │ -430138: 1100 |0010: return-object v0 │ │ -43013a: 2201 f10a |0011: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -43013e: 7010 ee5c 0100 |0013: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -430144: 1a02 0f14 |0016: const-string v2, "Connected (" // string@140f │ │ -430148: 6e20 f95c 2100 |0018: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43014e: 6e20 f95c 0100 |001b: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -430154: 1a00 ec03 |001e: const-string v0, ")" // string@03ec │ │ -430158: 6e20 f95c 0100 |0020: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43015e: 6e10 035d 0100 |0023: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -430164: 0c00 |0026: move-result-object v0 │ │ -430166: 1100 |0027: return-object v0 │ │ +430104: |[430104] org.purple.smoke.Smoke.networkStatusString:()Ljava/lang/String; │ │ +430114: 7100 10bb 0000 |0000: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +43011a: 0c00 |0003: move-result-object v0 │ │ +43011c: 6e10 04bb 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.connectedNeighborAddress:()Ljava/lang/String; // method@bb04 │ │ +430122: 0c00 |0007: move-result-object v0 │ │ +430124: 6e10 c35c 0000 |0008: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +43012a: 0a01 |000b: move-result v1 │ │ +43012c: 3801 0500 |000c: if-eqz v1, 0011 // +0005 │ │ +430130: 1a00 8617 |000e: const-string v0, "Disconnected" // string@1786 │ │ +430134: 1100 |0010: return-object v0 │ │ +430136: 2201 f10a |0011: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +43013a: 7010 ee5c 0100 |0013: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +430140: 1a02 0f14 |0016: const-string v2, "Connected (" // string@140f │ │ +430144: 6e20 f95c 2100 |0018: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43014a: 6e20 f95c 0100 |001b: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +430150: 1a00 ec03 |001e: const-string v0, ")" // string@03ec │ │ +430154: 6e20 f95c 0100 |0020: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43015a: 6e10 035d 0100 |0023: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +430160: 0c00 |0026: move-result-object v0 │ │ +430162: 1100 |0027: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=41 │ │ 0x0008 line=43 │ │ 0x0011 line=46 │ │ locals : │ │ │ │ @@ -741961,19 +741960,19 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 9 16-bit code units │ │ -430aa4: |[430aa4] org.purple.smoke.Smoke.onCreate:()V │ │ -430ab4: 6f10 a600 0000 |0000: invoke-super {v0}, Landroid/app/Application;.onCreate:()V // method@00a6 │ │ -430aba: 7100 c8b8 0000 |0003: invoke-static {}, Lorg/purple/smoke/About;.about:()Ljava/lang/String; // method@b8c8 │ │ -430ac0: 6900 265f |0006: sput-object v0, Lorg/purple/smoke/Smoke;.s_instance:Lorg/purple/smoke/Smoke; // field@5f26 │ │ -430ac4: 0e00 |0008: return-void │ │ +430aa0: |[430aa0] org.purple.smoke.Smoke.onCreate:()V │ │ +430ab0: 6f10 a600 0000 |0000: invoke-super {v0}, Landroid/app/Application;.onCreate:()V // method@00a6 │ │ +430ab6: 7100 c8b8 0000 |0003: invoke-static {}, Lorg/purple/smoke/About;.about:()Ljava/lang/String; // method@b8c8 │ │ +430abc: 6900 265f |0006: sput-object v0, Lorg/purple/smoke/Smoke;.s_instance:Lorg/purple/smoke/Smoke; // field@5f26 │ │ +430ac0: 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; │ │ @@ -741983,23 +741982,23 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 18 16-bit code units │ │ -430ac8: |[430ac8] org.purple.smoke.Smoke.onLowMemory:()V │ │ -430ad8: 6f10 a700 0100 |0000: invoke-super {v1}, Landroid/app/Application;.onLowMemory:()V // method@00a7 │ │ -430ade: 7100 10bb 0000 |0003: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -430ae4: 0c00 |0006: move-result-object v0 │ │ -430ae6: 6e10 02bb 0000 |0007: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.clearMessagesToSend:()V // method@bb02 │ │ -430aec: 7100 10bb 0000 |000a: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -430af2: 0c00 |000d: move-result-object v0 │ │ -430af4: 6e10 03bb 0000 |000e: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.clearNeighborQueues:()V // method@bb03 │ │ -430afa: 0e00 |0011: return-void │ │ +430ac4: |[430ac4] org.purple.smoke.Smoke.onLowMemory:()V │ │ +430ad4: 6f10 a700 0100 |0000: invoke-super {v1}, Landroid/app/Application;.onLowMemory:()V // method@00a7 │ │ +430ada: 7100 10bb 0000 |0003: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +430ae0: 0c00 |0006: move-result-object v0 │ │ +430ae2: 6e10 02bb 0000 |0007: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.clearMessagesToSend:()V // method@bb02 │ │ +430ae8: 7100 10bb 0000 |000a: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +430aee: 0c00 |000d: move-result-object v0 │ │ +430af0: 6e10 03bb 0000 |000e: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.clearNeighborQueues:()V // method@bb03 │ │ +430af6: 0e00 |0011: return-void │ │ catches : 2 │ │ 0x0003 - 0x000a │ │ Ljava/lang/Exception; -> 0x000a │ │ 0x000a - 0x0011 │ │ Ljava/lang/Exception; -> 0x0011 │ │ positions : │ │ 0x0000 line=110 │ │ @@ -742042,19 +742041,19 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -42ff80: |[42ff80] org.purple.smoke.SmokeService.:()V │ │ -42ff90: 7010 3901 0100 |0000: invoke-direct {v1}, Landroid/app/Service;.:()V // method@0139 │ │ -42ff96: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -42ff98: 5c10 285f |0004: iput-boolean v0, v1, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ -42ff9c: 0e00 |0006: return-void │ │ +42ff7c: |[42ff7c] org.purple.smoke.SmokeService.:()V │ │ +42ff8c: 7010 3901 0100 |0000: invoke-direct {v1}, Landroid/app/Service;.:()V // method@0139 │ │ +42ff92: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +42ff94: 5c10 285f |0004: iput-boolean v0, v1, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ +42ff98: 0e00 |0006: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=37 │ │ 0x0004 line=39 │ │ locals : │ │ 0x0000 - 0x0007 reg=1 this Lorg/purple/smoke/SmokeService; │ │ │ │ @@ -742063,46 +742062,46 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 63 16-bit code units │ │ -42ffe0: |[42ffe0] org.purple.smoke.SmokeService.start:()V │ │ -42fff0: 5530 285f |0000: iget-boolean v0, v3, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ -42fff4: 3800 0300 |0002: if-eqz v0, 0005 // +0003 │ │ -42fff8: 0e00 |0004: return-void │ │ -42fffa: 1210 |0005: const/4 v0, #int 1 // #1 │ │ -42fffc: 5c30 285f |0006: iput-boolean v0, v3, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ -430000: 2200 4900 |0008: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -430004: 1c01 0a1b |000a: const-class v1, Lorg/purple/smoke/Settings; // type@1b0a │ │ -430008: 7030 9e01 3001 |000c: invoke-direct {v0, v3, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -43000e: 1201 |000f: const/4 v1, #int 0 // #0 │ │ -430010: 1502 0040 |0010: const/high16 v2, #int 1073741824 // #4000 │ │ -430014: 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 │ │ -43001a: 0c00 |0015: move-result-object v0 │ │ -43001c: 2201 2300 |0016: new-instance v1, Landroid/app/Notification$Builder; // type@0023 │ │ -430020: 7020 cc00 3100 |0018: invoke-direct {v1, v3}, Landroid/app/Notification$Builder;.:(Landroid/content/Context;)V // method@00cc │ │ -430026: 6e20 d700 0100 |001b: invoke-virtual {v1, v0}, Landroid/app/Notification$Builder;.setContentIntent:(Landroid/app/PendingIntent;)Landroid/app/Notification$Builder; // method@00d7 │ │ -43002c: 0c00 |001e: move-result-object v0 │ │ -43002e: 1a01 224c |001f: const-string v1, "Smoke Activity" // string@4c22 │ │ -430032: 6e20 d800 1000 |0021: invoke-virtual {v0, v1}, Landroid/app/Notification$Builder;.setContentText:(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; // method@00d8 │ │ -430038: 0c00 |0024: move-result-object v0 │ │ -43003a: 6e20 d900 1000 |0025: invoke-virtual {v0, v1}, Landroid/app/Notification$Builder;.setContentTitle:(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; // method@00d9 │ │ -430040: 0c00 |0028: move-result-object v0 │ │ -430042: 1402 8600 077f |0029: const v2, #float 1.79448e+38 // #7f070086 │ │ -430048: 6e20 ee00 2000 |002c: invoke-virtual {v0, v2}, Landroid/app/Notification$Builder;.setSmallIcon:(I)Landroid/app/Notification$Builder; // method@00ee │ │ -43004e: 0c00 |002f: move-result-object v0 │ │ -430050: 6e20 f400 1000 |0030: invoke-virtual {v0, v1}, Landroid/app/Notification$Builder;.setTicker:(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; // method@00f4 │ │ -430056: 0c00 |0033: move-result-object v0 │ │ -430058: 6e10 d000 0000 |0034: invoke-virtual {v0}, Landroid/app/Notification$Builder;.build:()Landroid/app/Notification; // method@00d0 │ │ -43005e: 0c00 |0037: move-result-object v0 │ │ -430060: 1401 6b6f 6d73 |0038: const v1, #float 1.88116e+31 // #736d6f6b │ │ -430066: 6e30 37bd 1300 |003b: invoke-virtual {v3, v1, v0}, Lorg/purple/smoke/SmokeService;.startForeground:(ILandroid/app/Notification;)V // method@bd37 │ │ -43006c: 0e00 |003e: return-void │ │ +42ffdc: |[42ffdc] org.purple.smoke.SmokeService.start:()V │ │ +42ffec: 5530 285f |0000: iget-boolean v0, v3, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ +42fff0: 3800 0300 |0002: if-eqz v0, 0005 // +0003 │ │ +42fff4: 0e00 |0004: return-void │ │ +42fff6: 1210 |0005: const/4 v0, #int 1 // #1 │ │ +42fff8: 5c30 285f |0006: iput-boolean v0, v3, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ +42fffc: 2200 4900 |0008: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +430000: 1c01 0a1b |000a: const-class v1, Lorg/purple/smoke/Settings; // type@1b0a │ │ +430004: 7030 9e01 3001 |000c: invoke-direct {v0, v3, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +43000a: 1201 |000f: const/4 v1, #int 0 // #0 │ │ +43000c: 1502 0040 |0010: const/high16 v2, #int 1073741824 // #4000 │ │ +430010: 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 │ │ +430016: 0c00 |0015: move-result-object v0 │ │ +430018: 2201 2300 |0016: new-instance v1, Landroid/app/Notification$Builder; // type@0023 │ │ +43001c: 7020 cc00 3100 |0018: invoke-direct {v1, v3}, Landroid/app/Notification$Builder;.:(Landroid/content/Context;)V // method@00cc │ │ +430022: 6e20 d700 0100 |001b: invoke-virtual {v1, v0}, Landroid/app/Notification$Builder;.setContentIntent:(Landroid/app/PendingIntent;)Landroid/app/Notification$Builder; // method@00d7 │ │ +430028: 0c00 |001e: move-result-object v0 │ │ +43002a: 1a01 224c |001f: const-string v1, "Smoke Activity" // string@4c22 │ │ +43002e: 6e20 d800 1000 |0021: invoke-virtual {v0, v1}, Landroid/app/Notification$Builder;.setContentText:(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; // method@00d8 │ │ +430034: 0c00 |0024: move-result-object v0 │ │ +430036: 6e20 d900 1000 |0025: invoke-virtual {v0, v1}, Landroid/app/Notification$Builder;.setContentTitle:(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; // method@00d9 │ │ +43003c: 0c00 |0028: move-result-object v0 │ │ +43003e: 1402 8600 077f |0029: const v2, #float 1.79448e+38 // #7f070086 │ │ +430044: 6e20 ee00 2000 |002c: invoke-virtual {v0, v2}, Landroid/app/Notification$Builder;.setSmallIcon:(I)Landroid/app/Notification$Builder; // method@00ee │ │ +43004a: 0c00 |002f: move-result-object v0 │ │ +43004c: 6e20 f400 1000 |0030: invoke-virtual {v0, v1}, Landroid/app/Notification$Builder;.setTicker:(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; // method@00f4 │ │ +430052: 0c00 |0033: move-result-object v0 │ │ +430054: 6e10 d000 0000 |0034: invoke-virtual {v0}, Landroid/app/Notification$Builder;.build:()Landroid/app/Notification; // method@00d0 │ │ +43005a: 0c00 |0037: move-result-object v0 │ │ +43005c: 1401 6b6f 6d73 |0038: const v1, #float 1.88116e+31 // #736d6f6b │ │ +430062: 6e30 37bd 1300 |003b: invoke-virtual {v3, v1, v0}, Lorg/purple/smoke/SmokeService;.startForeground:(ILandroid/app/Notification;)V // method@bd37 │ │ +430068: 0e00 |003e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=44 │ │ 0x0006 line=47 │ │ 0x0008 line=49 │ │ 0x0012 line=52 │ │ 0x0016 line=54 │ │ @@ -742121,24 +742120,24 @@ │ │ type : '(Landroid/content/Context;)V' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 19 16-bit code units │ │ -430070: |[430070] org.purple.smoke.SmokeService.startForegroundTask:(Landroid/content/Context;)V │ │ -430080: 3902 0300 |0000: if-nez v2, 0003 // +0003 │ │ -430084: 0e00 |0002: return-void │ │ -430086: 2200 4900 |0003: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -43008a: 1c01 0f1b |0005: const-class v1, Lorg/purple/smoke/SmokeService; // type@1b0f │ │ -43008e: 7030 9e01 2001 |0007: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -430094: 1a01 d6a2 |000a: const-string v1, "start" // string@a2d6 │ │ -430098: 6e20 c901 1000 |000c: invoke-virtual {v0, v1}, Landroid/content/Intent;.setAction:(Ljava/lang/String;)Landroid/content/Intent; // method@01c9 │ │ -43009e: 6e20 8f01 0200 |000f: invoke-virtual {v2, v0}, Landroid/content/Context;.startService:(Landroid/content/Intent;)Landroid/content/ComponentName; // method@018f │ │ -4300a4: 0e00 |0012: return-void │ │ +43006c: |[43006c] org.purple.smoke.SmokeService.startForegroundTask:(Landroid/content/Context;)V │ │ +43007c: 3902 0300 |0000: if-nez v2, 0003 // +0003 │ │ +430080: 0e00 |0002: return-void │ │ +430082: 2200 4900 |0003: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +430086: 1c01 0f1b |0005: const-class v1, Lorg/purple/smoke/SmokeService; // type@1b0f │ │ +43008a: 7030 9e01 2001 |0007: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +430090: 1a01 d6a2 |000a: const-string v1, "start" // string@a2d6 │ │ +430094: 6e20 c901 1000 |000c: invoke-virtual {v0, v1}, Landroid/content/Intent;.setAction:(Ljava/lang/String;)Landroid/content/Intent; // method@01c9 │ │ +43009a: 6e20 8f01 0200 |000f: invoke-virtual {v2, v0}, Landroid/content/Context;.startService:(Landroid/content/Intent;)Landroid/content/ComponentName; // method@018f │ │ +4300a0: 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; │ │ @@ -742148,21 +742147,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 11 16-bit code units │ │ -4300a8: |[4300a8] org.purple.smoke.SmokeService.stop:()V │ │ -4300b8: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -4300ba: 5c10 285f |0001: iput-boolean v0, v1, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ -4300be: 1210 |0003: const/4 v0, #int 1 // #1 │ │ -4300c0: 6e20 3abd 0100 |0004: invoke-virtual {v1, v0}, Lorg/purple/smoke/SmokeService;.stopForeground:(Z)V // method@bd3a │ │ -4300c6: 6e10 3cbd 0100 |0007: invoke-virtual {v1}, Lorg/purple/smoke/SmokeService;.stopSelf:()V // method@bd3c │ │ -4300cc: 0e00 |000a: return-void │ │ +4300a4: |[4300a4] org.purple.smoke.SmokeService.stop:()V │ │ +4300b4: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +4300b6: 5c10 285f |0001: iput-boolean v0, v1, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ +4300ba: 1210 |0003: const/4 v0, #int 1 // #1 │ │ +4300bc: 6e20 3abd 0100 |0004: invoke-virtual {v1, v0}, Lorg/purple/smoke/SmokeService;.stopForeground:(Z)V // method@bd3a │ │ +4300c2: 6e10 3cbd 0100 |0007: invoke-virtual {v1}, Lorg/purple/smoke/SmokeService;.stopSelf:()V // method@bd3c │ │ +4300c8: 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; │ │ @@ -742172,24 +742171,24 @@ │ │ type : '(Landroid/content/Context;)V' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 19 16-bit code units │ │ -4300d0: |[4300d0] org.purple.smoke.SmokeService.stopForegroundTask:(Landroid/content/Context;)V │ │ -4300e0: 3902 0300 |0000: if-nez v2, 0003 // +0003 │ │ -4300e4: 0e00 |0002: return-void │ │ -4300e6: 2200 4900 |0003: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -4300ea: 1c01 0f1b |0005: const-class v1, Lorg/purple/smoke/SmokeService; // type@1b0f │ │ -4300ee: 7030 9e01 2001 |0007: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -4300f4: 1a01 41a3 |000a: const-string v1, "stop" // string@a341 │ │ -4300f8: 6e20 c901 1000 |000c: invoke-virtual {v0, v1}, Landroid/content/Intent;.setAction:(Ljava/lang/String;)Landroid/content/Intent; // method@01c9 │ │ -4300fe: 6e20 9001 0200 |000f: invoke-virtual {v2, v0}, Landroid/content/Context;.stopService:(Landroid/content/Intent;)Z // method@0190 │ │ -430104: 0e00 |0012: return-void │ │ +4300cc: |[4300cc] org.purple.smoke.SmokeService.stopForegroundTask:(Landroid/content/Context;)V │ │ +4300dc: 3902 0300 |0000: if-nez v2, 0003 // +0003 │ │ +4300e0: 0e00 |0002: return-void │ │ +4300e2: 2200 4900 |0003: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +4300e6: 1c01 0f1b |0005: const-class v1, Lorg/purple/smoke/SmokeService; // type@1b0f │ │ +4300ea: 7030 9e01 2001 |0007: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +4300f0: 1a01 41a3 |000a: const-string v1, "stop" // string@a341 │ │ +4300f4: 6e20 c901 1000 |000c: invoke-virtual {v0, v1}, Landroid/content/Intent;.setAction:(Ljava/lang/String;)Landroid/content/Intent; // method@01c9 │ │ +4300fa: 6e20 9001 0200 |000f: invoke-virtual {v2, v0}, Landroid/content/Context;.stopService:(Landroid/content/Intent;)Z // method@0190 │ │ +430100: 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; │ │ @@ -742200,34 +742199,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 │ │ -42fee4: |[42fee4] org.purple.smoke.SmokeService.onBind:(Landroid/content/Intent;)Landroid/os/IBinder; │ │ -42fef4: 1201 |0000: const/4 v1, #int 0 // #0 │ │ -42fef6: 1101 |0001: return-object v1 │ │ +42fee0: |[42fee0] org.purple.smoke.SmokeService.onBind:(Landroid/content/Intent;)Landroid/os/IBinder; │ │ +42fef0: 1201 |0000: const/4 v1, #int 0 // #0 │ │ +42fef2: 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 │ │ -42ffa0: |[42ffa0] org.purple.smoke.SmokeService.onCreate:()V │ │ -42ffb0: 6f10 3a01 0000 |0000: invoke-super {v0}, Landroid/app/Service;.onCreate:()V // method@013a │ │ -42ffb6: 7010 36bd 0000 |0003: invoke-direct {v0}, Lorg/purple/smoke/SmokeService;.start:()V // method@bd36 │ │ -42ffbc: 0e00 |0006: return-void │ │ +42ff9c: |[42ff9c] org.purple.smoke.SmokeService.onCreate:()V │ │ +42ffac: 6f10 3a01 0000 |0000: invoke-super {v0}, Landroid/app/Service;.onCreate:()V // method@013a │ │ +42ffb2: 7010 36bd 0000 |0003: invoke-direct {v0}, Lorg/purple/smoke/SmokeService;.start:()V // method@bd36 │ │ +42ffb8: 0e00 |0006: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=128 │ │ 0x0003 line=129 │ │ locals : │ │ 0x0000 - 0x0007 reg=0 this Lorg/purple/smoke/SmokeService; │ │ │ │ @@ -742236,19 +742235,19 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -42ffc0: |[42ffc0] org.purple.smoke.SmokeService.onDestroy:()V │ │ -42ffd0: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -42ffd2: 5c10 285f |0001: iput-boolean v0, v1, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ -42ffd6: 6f10 3b01 0100 |0003: invoke-super {v1}, Landroid/app/Service;.onDestroy:()V // method@013b │ │ -42ffdc: 0e00 |0006: return-void │ │ +42ffbc: |[42ffbc] org.purple.smoke.SmokeService.onDestroy:()V │ │ +42ffcc: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +42ffce: 5c10 285f |0001: iput-boolean v0, v1, Lorg/purple/smoke/SmokeService;.m_isRunning:Z // field@5f28 │ │ +42ffd2: 6f10 3b01 0100 |0003: invoke-super {v1}, Landroid/app/Service;.onDestroy:()V // method@013b │ │ +42ffd8: 0e00 |0006: return-void │ │ catches : (none) │ │ positions : │ │ 0x0001 line=135 │ │ 0x0003 line=136 │ │ locals : │ │ 0x0000 - 0x0007 reg=1 this Lorg/purple/smoke/SmokeService; │ │ │ │ @@ -742257,38 +742256,38 @@ │ │ type : '(Landroid/content/Intent;II)I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 4 │ │ outs : 2 │ │ insns size : 43 16-bit code units │ │ -42ff18: |[42ff18] org.purple.smoke.SmokeService.onStartCommand:(Landroid/content/Intent;II)I │ │ -42ff28: 3801 2900 |0000: if-eqz v1, 0029 // +0029 │ │ -42ff2c: 6e10 a501 0100 |0002: invoke-virtual {v1}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ -42ff32: 0c02 |0005: move-result-object v2 │ │ -42ff34: 3802 2300 |0006: if-eqz v2, 0029 // +0023 │ │ -42ff38: 6e10 a501 0100 |0008: invoke-virtual {v1}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ -42ff3e: 0c01 |000b: move-result-object v1 │ │ -42ff40: 6e10 bf5c 0100 |000c: invoke-virtual {v1}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -42ff46: 1a02 41a3 |000f: const-string v2, "stop" // string@a341 │ │ -42ff4a: 6e20 b85c 2100 |0011: invoke-virtual {v1, v2}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42ff50: 0a02 |0014: move-result v2 │ │ -42ff52: 3902 0f00 |0015: if-nez v2, 0024 // +000f │ │ -42ff56: 1a02 d6a2 |0017: const-string v2, "start" // string@a2d6 │ │ -42ff5a: 6e20 b85c 2100 |0019: invoke-virtual {v1, v2}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42ff60: 0a01 |001c: move-result v1 │ │ -42ff62: 3901 0300 |001d: if-nez v1, 0020 // +0003 │ │ -42ff66: 280a |001f: goto 0029 // +000a │ │ -42ff68: 7010 36bd 0000 |0020: invoke-direct {v0}, Lorg/purple/smoke/SmokeService;.start:()V // method@bd36 │ │ -42ff6e: 2806 |0023: goto 0029 // +0006 │ │ -42ff70: 7010 39bd 0000 |0024: invoke-direct {v0}, Lorg/purple/smoke/SmokeService;.stop:()V // method@bd39 │ │ -42ff76: 1221 |0027: const/4 v1, #int 2 // #2 │ │ -42ff78: 0f01 |0028: return v1 │ │ -42ff7a: 1211 |0029: const/4 v1, #int 1 // #1 │ │ -42ff7c: 0f01 |002a: return v1 │ │ +42ff14: |[42ff14] org.purple.smoke.SmokeService.onStartCommand:(Landroid/content/Intent;II)I │ │ +42ff24: 3801 2900 |0000: if-eqz v1, 0029 // +0029 │ │ +42ff28: 6e10 a501 0100 |0002: invoke-virtual {v1}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ +42ff2e: 0c02 |0005: move-result-object v2 │ │ +42ff30: 3802 2300 |0006: if-eqz v2, 0029 // +0023 │ │ +42ff34: 6e10 a501 0100 |0008: invoke-virtual {v1}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ +42ff3a: 0c01 |000b: move-result-object v1 │ │ +42ff3c: 6e10 bf5c 0100 |000c: invoke-virtual {v1}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +42ff42: 1a02 41a3 |000f: const-string v2, "stop" // string@a341 │ │ +42ff46: 6e20 b85c 2100 |0011: invoke-virtual {v1, v2}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42ff4c: 0a02 |0014: move-result v2 │ │ +42ff4e: 3902 0f00 |0015: if-nez v2, 0024 // +000f │ │ +42ff52: 1a02 d6a2 |0017: const-string v2, "start" // string@a2d6 │ │ +42ff56: 6e20 b85c 2100 |0019: invoke-virtual {v1, v2}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42ff5c: 0a01 |001c: move-result v1 │ │ +42ff5e: 3901 0300 |001d: if-nez v1, 0020 // +0003 │ │ +42ff62: 280a |001f: goto 0029 // +000a │ │ +42ff64: 7010 36bd 0000 |0020: invoke-direct {v0}, Lorg/purple/smoke/SmokeService;.start:()V // method@bd36 │ │ +42ff6a: 2806 |0023: goto 0029 // +0006 │ │ +42ff6c: 7010 39bd 0000 |0024: invoke-direct {v0}, Lorg/purple/smoke/SmokeService;.stop:()V // method@bd39 │ │ +42ff72: 1221 |0027: const/4 v1, #int 2 // #2 │ │ +42ff74: 0f01 |0028: return v1 │ │ +42ff76: 1211 |0029: const/4 v1, #int 1 // #1 │ │ +42ff78: 0f01 |002a: return v1 │ │ catches : (none) │ │ positions : │ │ 0x0002 line=87 │ │ 0x0008 line=88 │ │ 0x0020 line=91 │ │ 0x0024 line=94 │ │ locals : │ │ @@ -742302,19 +742301,19 @@ │ │ type : '(Landroid/content/Intent;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 8 16-bit code units │ │ -42fef8: |[42fef8] org.purple.smoke.SmokeService.stopService:(Landroid/content/Intent;)Z │ │ -42ff08: 7010 39bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SmokeService;.stop:()V // method@bd39 │ │ -42ff0e: 6f20 3e01 1000 |0003: invoke-super {v0, v1}, Landroid/app/Service;.stopService:(Landroid/content/Intent;)Z // method@013e │ │ -42ff14: 0a01 |0006: move-result v1 │ │ -42ff16: 0f01 |0007: return v1 │ │ +42fef4: |[42fef4] org.purple.smoke.SmokeService.stopService:(Landroid/content/Intent;)Z │ │ +42ff04: 7010 39bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SmokeService;.stop:()V // method@bd39 │ │ +42ff0a: 6f20 3e01 1000 |0003: invoke-super {v0, v1}, Landroid/app/Service;.stopService:(Landroid/content/Intent;)Z // method@013e │ │ +42ff10: 0a01 |0006: move-result v1 │ │ +42ff12: 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; │ │ @@ -742354,18 +742353,18 @@ │ │ type : '(Lorg/purple/smoke/Smokescreen;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -430198: |[430198] org.purple.smoke.Smokescreen$1.:(Lorg/purple/smoke/Smokescreen;)V │ │ -4301a8: 5b01 295f |0000: iput-object v1, v0, Lorg/purple/smoke/Smokescreen$1;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f29 │ │ -4301ac: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -4301b2: 0e00 |0005: return-void │ │ +430194: |[430194] org.purple.smoke.Smokescreen$1.:(Lorg/purple/smoke/Smokescreen;)V │ │ +4301a4: 5b01 295f |0000: iput-object v1, v0, Lorg/purple/smoke/Smokescreen$1;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f29 │ │ +4301a8: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +4301ae: 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; │ │ │ │ @@ -742375,27 +742374,27 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 23 16-bit code units │ │ -4301b4: |[4301b4] org.purple.smoke.Smokescreen$1.onClick:(Landroid/view/View;)V │ │ -4301c4: 5412 295f |0000: iget-object v2, v1, Lorg/purple/smoke/Smokescreen$1;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f29 │ │ -4301c8: 6e10 4fbd 0200 |0002: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.isFinishing:()Z // method@bd4f │ │ -4301ce: 0a02 |0005: move-result v2 │ │ -4301d0: 3802 0300 |0006: if-eqz v2, 0009 // +0003 │ │ -4301d4: 0e00 |0008: return-void │ │ -4301d6: 7100 74bd 0000 |0009: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -4301dc: 0c02 |000c: move-result-object v2 │ │ -4301de: 1210 |000d: const/4 v0, #int 1 // #1 │ │ -4301e0: 6e20 8bbd 0200 |000e: invoke-virtual {v2, v0}, Lorg/purple/smoke/State;.setLocked:(Z)V // method@bd8b │ │ -4301e6: 5412 295f |0011: iget-object v2, v1, Lorg/purple/smoke/Smokescreen$1;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f29 │ │ -4301ea: 7110 46bd 0200 |0013: invoke-static {v2}, Lorg/purple/smoke/Smokescreen;.access$000:(Lorg/purple/smoke/Smokescreen;)V // method@bd46 │ │ -4301f0: 0e00 |0016: return-void │ │ +4301b0: |[4301b0] org.purple.smoke.Smokescreen$1.onClick:(Landroid/view/View;)V │ │ +4301c0: 5412 295f |0000: iget-object v2, v1, Lorg/purple/smoke/Smokescreen$1;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f29 │ │ +4301c4: 6e10 4fbd 0200 |0002: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.isFinishing:()Z // method@bd4f │ │ +4301ca: 0a02 |0005: move-result v2 │ │ +4301cc: 3802 0300 |0006: if-eqz v2, 0009 // +0003 │ │ +4301d0: 0e00 |0008: return-void │ │ +4301d2: 7100 74bd 0000 |0009: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +4301d8: 0c02 |000c: move-result-object v2 │ │ +4301da: 1210 |000d: const/4 v0, #int 1 // #1 │ │ +4301dc: 6e20 8bbd 0200 |000e: invoke-virtual {v2, v0}, Lorg/purple/smoke/State;.setLocked:(Z)V // method@bd8b │ │ +4301e2: 5412 295f |0011: iget-object v2, v1, Lorg/purple/smoke/Smokescreen$1;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f29 │ │ +4301e6: 7110 46bd 0200 |0013: invoke-static {v2}, Lorg/purple/smoke/Smokescreen;.access$000:(Lorg/purple/smoke/Smokescreen;)V // method@bd46 │ │ +4301ec: 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; │ │ @@ -742436,18 +742435,18 @@ │ │ type : '(Lorg/purple/smoke/Smokescreen;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -4301f4: |[4301f4] org.purple.smoke.Smokescreen$2.:(Lorg/purple/smoke/Smokescreen;)V │ │ -430204: 5b01 2a5f |0000: iput-object v1, v0, Lorg/purple/smoke/Smokescreen$2;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2a │ │ -430208: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43020e: 0e00 |0005: return-void │ │ +4301f0: |[4301f0] org.purple.smoke.Smokescreen$2.:(Lorg/purple/smoke/Smokescreen;)V │ │ +430200: 5b01 2a5f |0000: iput-object v1, v0, Lorg/purple/smoke/Smokescreen$2;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2a │ │ +430204: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43020a: 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; │ │ │ │ @@ -742457,25 +742456,25 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 20 16-bit code units │ │ -430210: |[430210] org.purple.smoke.Smokescreen$2.onClick:(Landroid/view/View;)V │ │ -430220: 5401 2a5f |0000: iget-object v1, v0, Lorg/purple/smoke/Smokescreen$2;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2a │ │ -430224: 6e10 4fbd 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Smokescreen;.isFinishing:()Z // method@bd4f │ │ -43022a: 0a01 |0005: move-result v1 │ │ -43022c: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ -430230: 0e00 |0008: return-void │ │ -430232: 5401 2a5f |0009: iget-object v1, v0, Lorg/purple/smoke/Smokescreen$2;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2a │ │ -430236: 7110 47bd 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Smokescreen;.access$100:(Lorg/purple/smoke/Smokescreen;)V // method@bd47 │ │ -43023c: 5401 2a5f |000e: iget-object v1, v0, Lorg/purple/smoke/Smokescreen$2;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2a │ │ -430240: 7110 46bd 0100 |0010: invoke-static {v1}, Lorg/purple/smoke/Smokescreen;.access$000:(Lorg/purple/smoke/Smokescreen;)V // method@bd46 │ │ -430246: 0e00 |0013: return-void │ │ +43020c: |[43020c] org.purple.smoke.Smokescreen$2.onClick:(Landroid/view/View;)V │ │ +43021c: 5401 2a5f |0000: iget-object v1, v0, Lorg/purple/smoke/Smokescreen$2;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2a │ │ +430220: 6e10 4fbd 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Smokescreen;.isFinishing:()Z // method@bd4f │ │ +430226: 0a01 |0005: move-result v1 │ │ +430228: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ +43022c: 0e00 |0008: return-void │ │ +43022e: 5401 2a5f |0009: iget-object v1, v0, Lorg/purple/smoke/Smokescreen$2;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2a │ │ +430232: 7110 47bd 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Smokescreen;.access$100:(Lorg/purple/smoke/Smokescreen;)V // method@bd47 │ │ +430238: 5401 2a5f |000e: iget-object v1, v0, Lorg/purple/smoke/Smokescreen$2;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2a │ │ +43023c: 7110 46bd 0100 |0010: invoke-static {v1}, Lorg/purple/smoke/Smokescreen;.access$000:(Lorg/purple/smoke/Smokescreen;)V // method@bd46 │ │ +430242: 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; │ │ @@ -742516,18 +742515,18 @@ │ │ type : '(Lorg/purple/smoke/Smokescreen;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -430248: |[430248] org.purple.smoke.Smokescreen$3.:(Lorg/purple/smoke/Smokescreen;)V │ │ -430258: 5b01 2b5f |0000: iput-object v1, v0, Lorg/purple/smoke/Smokescreen$3;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2b │ │ -43025c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -430262: 0e00 |0005: return-void │ │ +430244: |[430244] org.purple.smoke.Smokescreen$3.:(Lorg/purple/smoke/Smokescreen;)V │ │ +430254: 5b01 2b5f |0000: iput-object v1, v0, Lorg/purple/smoke/Smokescreen$3;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2b │ │ +430258: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43025e: 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; │ │ │ │ @@ -742537,20 +742536,20 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 10 16-bit code units │ │ -430264: |[430264] org.purple.smoke.Smokescreen$3.run:()V │ │ -430274: 5410 2b5f |0000: iget-object v0, v1, Lorg/purple/smoke/Smokescreen$3;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2b │ │ -430278: 7110 48bd 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Smokescreen;.access$200:(Lorg/purple/smoke/Smokescreen;)Landroid/widget/TextView; // method@bd48 │ │ -43027e: 0c00 |0005: move-result-object v0 │ │ -430280: 6e10 265b 0000 |0006: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ -430286: 0e00 |0009: return-void │ │ +430260: |[430260] org.purple.smoke.Smokescreen$3.run:()V │ │ +430270: 5410 2b5f |0000: iget-object v0, v1, Lorg/purple/smoke/Smokescreen$3;.this$0:Lorg/purple/smoke/Smokescreen; // field@5f2b │ │ +430274: 7110 48bd 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Smokescreen;.access$200:(Lorg/purple/smoke/Smokescreen;)Landroid/widget/TextView; // method@bd48 │ │ +43027a: 0c00 |0005: move-result-object v0 │ │ +43027c: 6e10 265b 0000 |0006: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ +430282: 0e00 |0009: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=151 │ │ locals : │ │ 0x0000 - 0x000a reg=1 this Lorg/purple/smoke/Smokescreen$3; │ │ │ │ source_file_idx : 19512 (Smokescreen.java) │ │ @@ -742588,18 +742587,18 @@ │ │ type : '(Lorg/purple/smoke/State;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -430b18: |[430b18] org.purple.smoke.State$1.:(Lorg/purple/smoke/State;)V │ │ -430b28: 5b01 325f |0000: iput-object v1, v0, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ -430b2c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -430b32: 0e00 |0005: return-void │ │ +430b14: |[430b14] org.purple.smoke.State$1.:(Lorg/purple/smoke/State;)V │ │ +430b24: 5b01 325f |0000: iput-object v1, v0, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ +430b28: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +430b2e: 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; │ │ │ │ @@ -742609,72 +742608,72 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 114 16-bit code units │ │ -430b34: |[430b34] org.purple.smoke.State$1.run:()V │ │ -430b44: 5430 325f |0000: iget-object v0, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ -430b48: 6e10 77bd 0000 |0002: invoke-virtual {v0}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ -430b4e: 0a00 |0005: move-result v0 │ │ -430b50: 3900 0300 |0006: if-nez v0, 0009 // +0003 │ │ -430b54: 0e00 |0008: return-void │ │ -430b56: 7100 f3b9 0000 |0009: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9f3 │ │ -430b5c: 0c00 |000c: move-result-object v0 │ │ -430b5e: 7100 91b9 0000 |000d: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ -430b64: 0c01 |0010: move-result-object v1 │ │ -430b66: 1a02 0000 |0011: const-string v2, "" // string@0000 │ │ -430b6a: 6e30 1aba 1002 |0013: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readParticipants:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/util/ArrayList; // method@ba1a │ │ -430b70: 0c00 |0016: move-result-object v0 │ │ -430b72: 3900 0300 |0017: if-nez v0, 001a // +0003 │ │ -430b76: 0e00 |0019: return-void │ │ -430b78: 7110 ed5f 0000 |001a: invoke-static {v0}, Ljava/util/Collections;.sort:(Ljava/util/List;)V // method@5fed │ │ -430b7e: 5431 325f |001d: iget-object v1, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ -430b82: 7110 62bd 0100 |001f: invoke-static {v1}, Lorg/purple/smoke/State;.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@bd62 │ │ -430b88: 0c01 |0022: move-result-object v1 │ │ -430b8a: 6e10 ef60 0100 |0023: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -430b90: 0c01 |0026: move-result-object v1 │ │ -430b92: 6e10 eb60 0100 |0027: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ -430b98: 5431 325f |002a: iget-object v1, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ -430b9c: 7110 63bd 0100 |002c: invoke-static {v1}, Lorg/purple/smoke/State;.access$100:(Lorg/purple/smoke/State;)Ljava/util/ArrayList; // method@bd63 │ │ -430ba2: 0c01 |002f: move-result-object v1 │ │ -430ba4: 6e20 a55f 1000 |0030: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.equals:(Ljava/lang/Object;)Z // method@5fa5 │ │ -430baa: 0a01 |0033: move-result v1 │ │ -430bac: 3901 1900 |0034: if-nez v1, 004d // +0019 │ │ -430bb0: 5431 325f |0036: iget-object v1, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ -430bb4: 7120 64bd 0100 |0038: invoke-static {v1, v0}, Lorg/purple/smoke/State;.access$102:(Lorg/purple/smoke/State;Ljava/util/ArrayList;)Ljava/util/ArrayList; // method@bd64 │ │ -430bba: 2200 4900 |003b: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -430bbe: 1a01 0892 |003d: const-string v1, "org.purple.smoke.state_participants_populated" // string@9208 │ │ -430bc2: 7020 a001 1000 |003f: invoke-direct {v0, v1}, Landroid/content/Intent;.:(Ljava/lang/String;)V // method@01a0 │ │ -430bc8: 7100 2bbd 0000 |0042: invoke-static {}, Lorg/purple/smoke/Smoke;.getApplication:()Lorg/purple/smoke/Smoke; // method@bd2b │ │ -430bce: 0c01 |0045: move-result-object v1 │ │ -430bd0: 7110 a41d 0100 |0046: invoke-static {v1}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ -430bd6: 0c01 |0049: move-result-object v1 │ │ -430bd8: 6e20 a61d 0100 |004a: invoke-virtual {v1, v0}, Landroid/support/v4/content/LocalBroadcastManager;.sendBroadcast:(Landroid/content/Intent;)Z // method@1da6 │ │ -430bde: 5430 325f |004d: iget-object v0, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ -430be2: 7110 62bd 0000 |004f: invoke-static {v0}, Lorg/purple/smoke/State;.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@bd62 │ │ -430be8: 0c00 |0052: move-result-object v0 │ │ -430bea: 6e10 ef60 0000 |0053: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -430bf0: 0c00 |0056: move-result-object v0 │ │ -430bf2: 6e10 ec60 0000 |0057: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -430bf8: 2817 |005a: goto 0071 // +0017 │ │ -430bfa: 0d00 |005b: move-exception v0 │ │ -430bfc: 5431 325f |005c: iget-object v1, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ -430c00: 7110 62bd 0100 |005e: invoke-static {v1}, Lorg/purple/smoke/State;.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@bd62 │ │ -430c06: 0c01 |0061: move-result-object v1 │ │ -430c08: 6e10 ef60 0100 |0062: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -430c0e: 0c01 |0065: move-result-object v1 │ │ -430c10: 6e10 ec60 0100 |0066: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -430c16: 2700 |0069: throw v0 │ │ -430c18: 5430 325f |006a: iget-object v0, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ -430c1c: 7110 62bd 0000 |006c: invoke-static {v0}, Lorg/purple/smoke/State;.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@bd62 │ │ -430c22: 0c00 |006f: move-result-object v0 │ │ -430c24: 28e3 |0070: goto 0053 // -001d │ │ -430c26: 0e00 |0071: return-void │ │ +430b30: |[430b30] org.purple.smoke.State$1.run:()V │ │ +430b40: 5430 325f |0000: iget-object v0, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ +430b44: 6e10 77bd 0000 |0002: invoke-virtual {v0}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ +430b4a: 0a00 |0005: move-result v0 │ │ +430b4c: 3900 0300 |0006: if-nez v0, 0009 // +0003 │ │ +430b50: 0e00 |0008: return-void │ │ +430b52: 7100 f3b9 0000 |0009: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9f3 │ │ +430b58: 0c00 |000c: move-result-object v0 │ │ +430b5a: 7100 91b9 0000 |000d: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ +430b60: 0c01 |0010: move-result-object v1 │ │ +430b62: 1a02 0000 |0011: const-string v2, "" // string@0000 │ │ +430b66: 6e30 1aba 1002 |0013: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readParticipants:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/util/ArrayList; // method@ba1a │ │ +430b6c: 0c00 |0016: move-result-object v0 │ │ +430b6e: 3900 0300 |0017: if-nez v0, 001a // +0003 │ │ +430b72: 0e00 |0019: return-void │ │ +430b74: 7110 ed5f 0000 |001a: invoke-static {v0}, Ljava/util/Collections;.sort:(Ljava/util/List;)V // method@5fed │ │ +430b7a: 5431 325f |001d: iget-object v1, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ +430b7e: 7110 62bd 0100 |001f: invoke-static {v1}, Lorg/purple/smoke/State;.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@bd62 │ │ +430b84: 0c01 |0022: move-result-object v1 │ │ +430b86: 6e10 ef60 0100 |0023: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +430b8c: 0c01 |0026: move-result-object v1 │ │ +430b8e: 6e10 eb60 0100 |0027: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ +430b94: 5431 325f |002a: iget-object v1, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ +430b98: 7110 63bd 0100 |002c: invoke-static {v1}, Lorg/purple/smoke/State;.access$100:(Lorg/purple/smoke/State;)Ljava/util/ArrayList; // method@bd63 │ │ +430b9e: 0c01 |002f: move-result-object v1 │ │ +430ba0: 6e20 a55f 1000 |0030: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.equals:(Ljava/lang/Object;)Z // method@5fa5 │ │ +430ba6: 0a01 |0033: move-result v1 │ │ +430ba8: 3901 1900 |0034: if-nez v1, 004d // +0019 │ │ +430bac: 5431 325f |0036: iget-object v1, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ +430bb0: 7120 64bd 0100 |0038: invoke-static {v1, v0}, Lorg/purple/smoke/State;.access$102:(Lorg/purple/smoke/State;Ljava/util/ArrayList;)Ljava/util/ArrayList; // method@bd64 │ │ +430bb6: 2200 4900 |003b: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +430bba: 1a01 0892 |003d: const-string v1, "org.purple.smoke.state_participants_populated" // string@9208 │ │ +430bbe: 7020 a001 1000 |003f: invoke-direct {v0, v1}, Landroid/content/Intent;.:(Ljava/lang/String;)V // method@01a0 │ │ +430bc4: 7100 2bbd 0000 |0042: invoke-static {}, Lorg/purple/smoke/Smoke;.getApplication:()Lorg/purple/smoke/Smoke; // method@bd2b │ │ +430bca: 0c01 |0045: move-result-object v1 │ │ +430bcc: 7110 a41d 0100 |0046: invoke-static {v1}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ +430bd2: 0c01 |0049: move-result-object v1 │ │ +430bd4: 6e20 a61d 0100 |004a: invoke-virtual {v1, v0}, Landroid/support/v4/content/LocalBroadcastManager;.sendBroadcast:(Landroid/content/Intent;)Z // method@1da6 │ │ +430bda: 5430 325f |004d: iget-object v0, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ +430bde: 7110 62bd 0000 |004f: invoke-static {v0}, Lorg/purple/smoke/State;.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@bd62 │ │ +430be4: 0c00 |0052: move-result-object v0 │ │ +430be6: 6e10 ef60 0000 |0053: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +430bec: 0c00 |0056: move-result-object v0 │ │ +430bee: 6e10 ec60 0000 |0057: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +430bf4: 2817 |005a: goto 0071 // +0017 │ │ +430bf6: 0d00 |005b: move-exception v0 │ │ +430bf8: 5431 325f |005c: iget-object v1, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ +430bfc: 7110 62bd 0100 |005e: invoke-static {v1}, Lorg/purple/smoke/State;.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@bd62 │ │ +430c02: 0c01 |0061: move-result-object v1 │ │ +430c04: 6e10 ef60 0100 |0062: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +430c0a: 0c01 |0065: move-result-object v1 │ │ +430c0c: 6e10 ec60 0100 |0066: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +430c12: 2700 |0069: throw v0 │ │ +430c14: 5430 325f |006a: iget-object v0, v3, Lorg/purple/smoke/State$1;.this$0:Lorg/purple/smoke/State; // field@5f32 │ │ +430c18: 7110 62bd 0000 |006c: invoke-static {v0}, Lorg/purple/smoke/State;.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@bd62 │ │ +430c1e: 0c00 |006f: move-result-object v0 │ │ +430c20: 28e3 |0070: goto 0053 // -001d │ │ +430c22: 0e00 |0071: return-void │ │ catches : 3 │ │ 0x0000 - 0x002a │ │ Ljava/lang/Exception; -> 0x0071 │ │ 0x002a - 0x004d │ │ Ljava/lang/Exception; -> 0x006a │ │ -> 0x005b │ │ 0x004d - 0x0070 │ │ @@ -742800,73 +742799,73 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 0 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -431588: |[431588] org.purple.smoke.State.:()V │ │ -431598: 0e00 |0000: return-void │ │ +431584: |[431584] org.purple.smoke.State.:()V │ │ +431594: 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 │ │ -43159c: |[43159c] org.purple.smoke.State.:()V │ │ -4315ac: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ -4315b2: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -4315b4: 5b20 365f |0004: iput-object v0, v2, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ -4315b8: 5b20 395f |0006: iput-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ -4315bc: 5b20 375f |0008: iput-object v0, v2, Lorg/purple/smoke/State;.m_exit:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f37 │ │ -4315c0: 5b20 3c5f |000a: iput-object v0, v2, Lorg/purple/smoke/State;.m_queryTimerServer:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3c │ │ -4315c4: 5b20 3e5f |000c: iput-object v0, v2, Lorg/purple/smoke/State;.m_silent:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3e │ │ -4315c8: 5b20 345f |000e: iput-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -4315cc: 5b20 3f5f |0010: iput-object v0, v2, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ -4315d0: 5b20 3d5f |0012: iput-object v0, v2, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ -4315d4: 5b20 385f |0014: iput-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -4315d8: 5b20 3b5f |0016: iput-object v0, v2, Lorg/purple/smoke/State;.m_participantsScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f3b │ │ -4315dc: 2200 ea0b |0018: new-instance v0, Ljava/util/concurrent/locks/ReentrantReadWriteLock; // type@0bea │ │ -4315e0: 7010 ed60 0000 |001a: invoke-direct {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.:()V // method@60ed │ │ -4315e6: 5b20 355f |001d: iput-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4315ea: 2200 ea0b |001f: new-instance v0, Ljava/util/concurrent/locks/ReentrantReadWriteLock; // type@0bea │ │ -4315ee: 7010 ed60 0000 |0021: invoke-direct {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.:()V // method@60ed │ │ -4315f4: 5b20 3a5f |0024: iput-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -4315f8: 2200 da00 |0026: new-instance v0, Landroid/os/Bundle; // type@00da │ │ -4315fc: 7010 bd04 0000 |0028: invoke-direct {v0}, Landroid/os/Bundle;.:()V // method@04bd │ │ -431602: 5b20 345f |002b: iput-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431606: 2200 e40b |002d: new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ -43160a: 1201 |002f: const/4 v1, #int 0 // #0 │ │ -43160c: 7020 d860 1000 |0030: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d8 │ │ -431612: 5b20 375f |0033: iput-object v0, v2, Lorg/purple/smoke/State;.m_exit:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f37 │ │ -431616: 2200 ab0b |0035: new-instance v0, Ljava/util/ArrayList; // type@0bab │ │ -43161a: 7010 9b5f 0000 |0037: invoke-direct {v0}, Ljava/util/ArrayList;.:()V // method@5f9b │ │ -431620: 5b20 395f |003a: iput-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ -431624: 2200 e40b |003c: new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ -431628: 7020 d860 1000 |003e: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d8 │ │ -43162e: 5b20 3c5f |0041: iput-object v0, v2, Lorg/purple/smoke/State;.m_queryTimerServer:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3c │ │ -431632: 2200 cb0b |0043: new-instance v0, Ljava/util/TreeMap; // type@0bcb │ │ -431636: 7010 8e60 0000 |0045: invoke-direct {v0}, Ljava/util/TreeMap;.:()V // method@608e │ │ -43163c: 5b20 3d5f |0048: iput-object v0, v2, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ -431640: 2200 e40b |004a: new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ -431644: 7020 d860 1000 |004c: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d8 │ │ -43164a: 5b20 3e5f |004f: iput-object v0, v2, Lorg/purple/smoke/State;.m_silent:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3e │ │ -43164e: 2200 cb0b |0051: new-instance v0, Ljava/util/TreeMap; // type@0bcb │ │ -431652: 7010 8e60 0000 |0053: invoke-direct {v0}, Ljava/util/TreeMap;.:()V // method@608e │ │ -431658: 5b20 3f5f |0056: iput-object v0, v2, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ -43165c: 7010 7ebd 0200 |0058: invoke-direct {v2}, Lorg/purple/smoke/State;.populateParticipants:()V // method@bd7e │ │ -431662: 6e20 88bd 1200 |005b: invoke-virtual {v2, v1}, Lorg/purple/smoke/State;.setAuthenticated:(Z)V // method@bd88 │ │ -431668: 0e00 |005e: return-void │ │ +431598: |[431598] org.purple.smoke.State.:()V │ │ +4315a8: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ +4315ae: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +4315b0: 5b20 365f |0004: iput-object v0, v2, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ +4315b4: 5b20 395f |0006: iput-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ +4315b8: 5b20 375f |0008: iput-object v0, v2, Lorg/purple/smoke/State;.m_exit:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f37 │ │ +4315bc: 5b20 3c5f |000a: iput-object v0, v2, Lorg/purple/smoke/State;.m_queryTimerServer:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3c │ │ +4315c0: 5b20 3e5f |000c: iput-object v0, v2, Lorg/purple/smoke/State;.m_silent:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3e │ │ +4315c4: 5b20 345f |000e: iput-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +4315c8: 5b20 3f5f |0010: iput-object v0, v2, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ +4315cc: 5b20 3d5f |0012: iput-object v0, v2, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ +4315d0: 5b20 385f |0014: iput-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +4315d4: 5b20 3b5f |0016: iput-object v0, v2, Lorg/purple/smoke/State;.m_participantsScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f3b │ │ +4315d8: 2200 ea0b |0018: new-instance v0, Ljava/util/concurrent/locks/ReentrantReadWriteLock; // type@0bea │ │ +4315dc: 7010 ed60 0000 |001a: invoke-direct {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.:()V // method@60ed │ │ +4315e2: 5b20 355f |001d: iput-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4315e6: 2200 ea0b |001f: new-instance v0, Ljava/util/concurrent/locks/ReentrantReadWriteLock; // type@0bea │ │ +4315ea: 7010 ed60 0000 |0021: invoke-direct {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.:()V // method@60ed │ │ +4315f0: 5b20 3a5f |0024: iput-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +4315f4: 2200 da00 |0026: new-instance v0, Landroid/os/Bundle; // type@00da │ │ +4315f8: 7010 bd04 0000 |0028: invoke-direct {v0}, Landroid/os/Bundle;.:()V // method@04bd │ │ +4315fe: 5b20 345f |002b: iput-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431602: 2200 e40b |002d: new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ +431606: 1201 |002f: const/4 v1, #int 0 // #0 │ │ +431608: 7020 d860 1000 |0030: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d8 │ │ +43160e: 5b20 375f |0033: iput-object v0, v2, Lorg/purple/smoke/State;.m_exit:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f37 │ │ +431612: 2200 ab0b |0035: new-instance v0, Ljava/util/ArrayList; // type@0bab │ │ +431616: 7010 9b5f 0000 |0037: invoke-direct {v0}, Ljava/util/ArrayList;.:()V // method@5f9b │ │ +43161c: 5b20 395f |003a: iput-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ +431620: 2200 e40b |003c: new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ +431624: 7020 d860 1000 |003e: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d8 │ │ +43162a: 5b20 3c5f |0041: iput-object v0, v2, Lorg/purple/smoke/State;.m_queryTimerServer:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3c │ │ +43162e: 2200 cb0b |0043: new-instance v0, Ljava/util/TreeMap; // type@0bcb │ │ +431632: 7010 8e60 0000 |0045: invoke-direct {v0}, Ljava/util/TreeMap;.:()V // method@608e │ │ +431638: 5b20 3d5f |0048: iput-object v0, v2, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ +43163c: 2200 e40b |004a: new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ +431640: 7020 d860 1000 |004c: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d8 │ │ +431646: 5b20 3e5f |004f: iput-object v0, v2, Lorg/purple/smoke/State;.m_silent:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3e │ │ +43164a: 2200 cb0b |0051: new-instance v0, Ljava/util/TreeMap; // type@0bcb │ │ +43164e: 7010 8e60 0000 |0053: invoke-direct {v0}, Ljava/util/TreeMap;.:()V // method@608e │ │ +431654: 5b20 3f5f |0056: iput-object v0, v2, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ +431658: 7010 7ebd 0200 |0058: invoke-direct {v2}, Lorg/purple/smoke/State;.populateParticipants:()V // method@bd7e │ │ +43165e: 6e20 88bd 1200 |005b: invoke-virtual {v2, v1}, Lorg/purple/smoke/State;.setAuthenticated:(Z)V // method@bd88 │ │ +431664: 0e00 |005e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=65 │ │ 0x0004 line=47 │ │ 0x0006 line=48 │ │ 0x0008 line=49 │ │ 0x000a line=50 │ │ @@ -742895,17 +742894,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 │ │ -431440: |[431440] org.purple.smoke.State.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; │ │ -431450: 5400 3a5f |0000: iget-object v0, v0, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -431454: 1100 |0002: return-object v0 │ │ +43143c: |[43143c] org.purple.smoke.State.access$000:(Lorg/purple/smoke/State;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; │ │ +43144c: 5400 3a5f |0000: iget-object v0, v0, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +431450: 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;) │ │ @@ -742913,17 +742912,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 │ │ -431270: |[431270] org.purple.smoke.State.access$100:(Lorg/purple/smoke/State;)Ljava/util/ArrayList; │ │ -431280: 5400 395f |0000: iget-object v0, v0, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ -431284: 1100 |0002: return-object v0 │ │ +43126c: |[43126c] org.purple.smoke.State.access$100:(Lorg/purple/smoke/State;)Ljava/util/ArrayList; │ │ +43127c: 5400 395f |0000: iget-object v0, v0, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ +431280: 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;) │ │ @@ -742931,17 +742930,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 │ │ -431288: |[431288] org.purple.smoke.State.access$102:(Lorg/purple/smoke/State;Ljava/util/ArrayList;)Ljava/util/ArrayList; │ │ -431298: 5b01 395f |0000: iput-object v1, v0, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ -43129c: 1101 |0002: return-object v1 │ │ +431284: |[431284] org.purple.smoke.State.access$102:(Lorg/purple/smoke/State;Ljava/util/ArrayList;)Ljava/util/ArrayList; │ │ +431294: 5b01 395f |0000: iput-object v1, v0, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ +431298: 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; │ │ │ │ @@ -742950,28 +742949,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 │ │ -431540: |[431540] org.purple.smoke.State.getInstance:()Lorg/purple/smoke/State; │ │ -431550: 1c00 151b |0000: const-class v0, Lorg/purple/smoke/State; // type@1b15 │ │ -431554: 1d00 |0002: monitor-enter v0 │ │ -431556: 6201 405f |0003: sget-object v1, Lorg/purple/smoke/State;.s_instance:Lorg/purple/smoke/State; // field@5f40 │ │ -43155a: 3901 0900 |0005: if-nez v1, 000e // +0009 │ │ -43155e: 2201 151b |0007: new-instance v1, Lorg/purple/smoke/State; // type@1b15 │ │ -431562: 7010 61bd 0100 |0009: invoke-direct {v1}, Lorg/purple/smoke/State;.:()V // method@bd61 │ │ -431568: 6901 405f |000c: sput-object v1, Lorg/purple/smoke/State;.s_instance:Lorg/purple/smoke/State; // field@5f40 │ │ -43156c: 6201 405f |000e: sget-object v1, Lorg/purple/smoke/State;.s_instance:Lorg/purple/smoke/State; // field@5f40 │ │ -431570: 1e00 |0010: monitor-exit v0 │ │ -431572: 1101 |0011: return-object v1 │ │ -431574: 0d01 |0012: move-exception v1 │ │ -431576: 1e00 |0013: monitor-exit v0 │ │ -431578: 2701 |0014: throw v1 │ │ +43153c: |[43153c] org.purple.smoke.State.getInstance:()Lorg/purple/smoke/State; │ │ +43154c: 1c00 151b |0000: const-class v0, Lorg/purple/smoke/State; // type@1b15 │ │ +431550: 1d00 |0002: monitor-enter v0 │ │ +431552: 6201 405f |0003: sget-object v1, Lorg/purple/smoke/State;.s_instance:Lorg/purple/smoke/State; // field@5f40 │ │ +431556: 3901 0900 |0005: if-nez v1, 000e // +0009 │ │ +43155a: 2201 151b |0007: new-instance v1, Lorg/purple/smoke/State; // type@1b15 │ │ +43155e: 7010 61bd 0100 |0009: invoke-direct {v1}, Lorg/purple/smoke/State;.:()V // method@bd61 │ │ +431564: 6901 405f |000c: sput-object v1, Lorg/purple/smoke/State;.s_instance:Lorg/purple/smoke/State; // field@5f40 │ │ +431568: 6201 405f |000e: sget-object v1, Lorg/purple/smoke/State;.s_instance:Lorg/purple/smoke/State; // field@5f40 │ │ +43156c: 1e00 |0010: monitor-exit v0 │ │ +43156e: 1101 |0011: return-object v1 │ │ +431570: 0d01 |0012: move-exception v1 │ │ +431572: 1e00 |0013: monitor-exit v0 │ │ +431574: 2701 |0014: throw v1 │ │ catches : 1 │ │ 0x0003 - 0x0010 │ │ -> 0x0012 │ │ positions : │ │ 0x0003 line=409 │ │ 0x0007 line=410 │ │ 0x000e line=412 │ │ @@ -742982,28 +742981,28 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 27 16-bit code units │ │ -4318d0: |[4318d0] org.purple.smoke.State.populateParticipants:()V │ │ -4318e0: 5480 3b5f |0000: iget-object v0, v8, Lorg/purple/smoke/State;.m_participantsScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f3b │ │ -4318e4: 3900 0800 |0002: if-nez v0, 000a // +0008 │ │ -4318e8: 7100 c860 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c8 │ │ -4318ee: 0c00 |0007: move-result-object v0 │ │ -4318f0: 5b80 3b5f |0008: iput-object v0, v8, Lorg/purple/smoke/State;.m_participantsScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f3b │ │ -4318f4: 5481 3b5f |000a: iget-object v1, v8, Lorg/purple/smoke/State;.m_participantsScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f3b │ │ -4318f8: 2202 141b |000c: new-instance v2, Lorg/purple/smoke/State$1; // type@1b14 │ │ -4318fc: 7020 5ebd 8200 |000e: invoke-direct {v2, v8}, Lorg/purple/smoke/State$1;.:(Lorg/purple/smoke/State;)V // method@bd5e │ │ -431902: 1603 0000 |0011: const-wide/16 v3, #int 0 // #0 │ │ -431906: 1605 c409 |0013: const-wide/16 v5, #int 2500 // #9c4 │ │ -43190a: 6207 ef2c |0015: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -43190e: 7807 d060 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@60d0 │ │ -431914: 0e00 |001a: return-void │ │ +4318cc: |[4318cc] org.purple.smoke.State.populateParticipants:()V │ │ +4318dc: 5480 3b5f |0000: iget-object v0, v8, Lorg/purple/smoke/State;.m_participantsScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f3b │ │ +4318e0: 3900 0800 |0002: if-nez v0, 000a // +0008 │ │ +4318e4: 7100 c860 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c8 │ │ +4318ea: 0c00 |0007: move-result-object v0 │ │ +4318ec: 5b80 3b5f |0008: iput-object v0, v8, Lorg/purple/smoke/State;.m_participantsScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f3b │ │ +4318f0: 5481 3b5f |000a: iget-object v1, v8, Lorg/purple/smoke/State;.m_participantsScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f3b │ │ +4318f4: 2202 141b |000c: new-instance v2, Lorg/purple/smoke/State$1; // type@1b14 │ │ +4318f8: 7020 5ebd 8200 |000e: invoke-direct {v2, v8}, Lorg/purple/smoke/State$1;.:(Lorg/purple/smoke/State;)V // method@bd5e │ │ +4318fe: 1603 0000 |0011: const-wide/16 v3, #int 0 // #0 │ │ +431902: 1605 c409 |0013: const-wide/16 v5, #int 2500 // #9c4 │ │ +431906: 6207 ef2c |0015: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +43190a: 7807 d060 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@60d0 │ │ +431910: 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; │ │ @@ -743014,34 +743013,34 @@ │ │ type : '(Lorg/purple/smoke/FireChannel;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 36 16-bit code units │ │ -43166c: |[43166c] org.purple.smoke.State.addFire:(Lorg/purple/smoke/FireChannel;)V │ │ -43167c: 3903 0300 |0000: if-nez v3, 0003 // +0003 │ │ -431680: 0e00 |0002: return-void │ │ -431682: 5420 385f |0003: iget-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -431686: 3900 0a00 |0005: if-nez v0, 000f // +000a │ │ -43168a: 2200 cb0b |0007: new-instance v0, Ljava/util/TreeMap; // type@0bcb │ │ -43168e: 7010 8e60 0000 |0009: invoke-direct {v0}, Ljava/util/TreeMap;.:()V // method@608e │ │ -431694: 5b20 385f |000c: iput-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -431698: 280c |000e: goto 001a // +000c │ │ -43169a: 6e10 b0ba 0300 |000f: invoke-virtual {v3}, Lorg/purple/smoke/FireChannel;.name:()Ljava/lang/String; // method@bab0 │ │ -4316a0: 0c01 |0012: move-result-object v1 │ │ -4316a2: 7220 5860 1000 |0013: invoke-interface {v0, v1}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6058 │ │ -4316a8: 0a00 |0016: move-result v0 │ │ -4316aa: 3800 0300 |0017: if-eqz v0, 001a // +0003 │ │ -4316ae: 0e00 |0019: return-void │ │ -4316b0: 5420 385f |001a: iget-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -4316b4: 6e10 b0ba 0300 |001c: invoke-virtual {v3}, Lorg/purple/smoke/FireChannel;.name:()Ljava/lang/String; // method@bab0 │ │ -4316ba: 0c01 |001f: move-result-object v1 │ │ -4316bc: 7230 5f60 1003 |0020: invoke-interface {v0, v1, v3}, Ljava/util/Map;.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; // method@605f │ │ -4316c2: 0e00 |0023: return-void │ │ +431668: |[431668] org.purple.smoke.State.addFire:(Lorg/purple/smoke/FireChannel;)V │ │ +431678: 3903 0300 |0000: if-nez v3, 0003 // +0003 │ │ +43167c: 0e00 |0002: return-void │ │ +43167e: 5420 385f |0003: iget-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +431682: 3900 0a00 |0005: if-nez v0, 000f // +000a │ │ +431686: 2200 cb0b |0007: new-instance v0, Ljava/util/TreeMap; // type@0bcb │ │ +43168a: 7010 8e60 0000 |0009: invoke-direct {v0}, Ljava/util/TreeMap;.:()V // method@608e │ │ +431690: 5b20 385f |000c: iput-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +431694: 280c |000e: goto 001a // +000c │ │ +431696: 6e10 b0ba 0300 |000f: invoke-virtual {v3}, Lorg/purple/smoke/FireChannel;.name:()Ljava/lang/String; // method@bab0 │ │ +43169c: 0c01 |0012: move-result-object v1 │ │ +43169e: 7220 5860 1000 |0013: invoke-interface {v0, v1}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6058 │ │ +4316a4: 0a00 |0016: move-result v0 │ │ +4316a6: 3800 0300 |0017: if-eqz v0, 001a // +0003 │ │ +4316aa: 0e00 |0019: return-void │ │ +4316ac: 5420 385f |001a: iget-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +4316b0: 6e10 b0ba 0300 |001c: invoke-virtual {v3}, Lorg/purple/smoke/FireChannel;.name:()Ljava/lang/String; // method@bab0 │ │ +4316b6: 0c01 |001f: move-result-object v1 │ │ +4316b8: 7230 5f60 1003 |0020: invoke-interface {v0, v1, v3}, Ljava/util/Map;.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; // method@605f │ │ +4316be: 0e00 |0023: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=480 │ │ 0x0007 line=481 │ │ 0x000f line=482 │ │ 0x001a line=485 │ │ locals : │ │ @@ -743053,50 +743052,50 @@ │ │ type : '(I)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 71 16-bit code units │ │ -430c4c: |[430c4c] org.purple.smoke.State.chatCheckBoxIsSelected:(I)Z │ │ -430c5c: 5440 355f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430c60: 6e10 ee60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -430c66: 0c00 |0005: move-result-object v0 │ │ -430c68: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ -430c6e: 1200 |0009: const/4 v0, #int 0 // #0 │ │ -430c70: 5441 345f |000a: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -430c74: 2202 f10a |000c: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -430c78: 7010 ee5c 0200 |000e: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -430c7e: 1a03 855e |0011: const-string v3, "chat_checkbox_" // string@5e85 │ │ -430c82: 6e20 f95c 3200 |0013: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -430c88: 6e20 f45c 5200 |0016: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ -430c8e: 6e10 035d 0200 |0019: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -430c94: 0c05 |001c: move-result-object v5 │ │ -430c96: 1302 3000 |001d: const/16 v2, #int 48 // #30 │ │ -430c9a: 6e30 c604 5102 |001f: invoke-virtual {v1, v5, v2}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ -430ca0: 0a05 |0022: move-result v5 │ │ -430ca2: 1301 3100 |0023: const/16 v1, #int 49 // #31 │ │ -430ca6: 3315 0300 |0025: if-ne v5, v1, 0028 // +0003 │ │ -430caa: 1210 |0027: const/4 v0, #int 1 // #1 │ │ -430cac: 5445 355f |0028: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430cb0: 6e10 ee60 0500 |002a: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -430cb6: 0c05 |002d: move-result-object v5 │ │ -430cb8: 6e10 ea60 0500 |002e: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -430cbe: 0f00 |0031: return v0 │ │ -430cc0: 0d05 |0032: move-exception v5 │ │ -430cc2: 5440 355f |0033: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430cc6: 6e10 ee60 0000 |0035: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -430ccc: 0c00 |0038: move-result-object v0 │ │ -430cce: 6e10 ea60 0000 |0039: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -430cd4: 2705 |003c: throw v5 │ │ -430cd6: 5445 355f |003d: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430cda: 6e10 ee60 0500 |003f: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -430ce0: 0c05 |0042: move-result-object v5 │ │ -430ce2: 6e10 ea60 0500 |0043: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -430ce8: 0f00 |0046: return v0 │ │ +430c48: |[430c48] org.purple.smoke.State.chatCheckBoxIsSelected:(I)Z │ │ +430c58: 5440 355f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430c5c: 6e10 ee60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +430c62: 0c00 |0005: move-result-object v0 │ │ +430c64: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ +430c6a: 1200 |0009: const/4 v0, #int 0 // #0 │ │ +430c6c: 5441 345f |000a: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +430c70: 2202 f10a |000c: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +430c74: 7010 ee5c 0200 |000e: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +430c7a: 1a03 855e |0011: const-string v3, "chat_checkbox_" // string@5e85 │ │ +430c7e: 6e20 f95c 3200 |0013: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +430c84: 6e20 f45c 5200 |0016: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ +430c8a: 6e10 035d 0200 |0019: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +430c90: 0c05 |001c: move-result-object v5 │ │ +430c92: 1302 3000 |001d: const/16 v2, #int 48 // #30 │ │ +430c96: 6e30 c604 5102 |001f: invoke-virtual {v1, v5, v2}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ +430c9c: 0a05 |0022: move-result v5 │ │ +430c9e: 1301 3100 |0023: const/16 v1, #int 49 // #31 │ │ +430ca2: 3315 0300 |0025: if-ne v5, v1, 0028 // +0003 │ │ +430ca6: 1210 |0027: const/4 v0, #int 1 // #1 │ │ +430ca8: 5445 355f |0028: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430cac: 6e10 ee60 0500 |002a: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +430cb2: 0c05 |002d: move-result-object v5 │ │ +430cb4: 6e10 ea60 0500 |002e: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +430cba: 0f00 |0031: return v0 │ │ +430cbc: 0d05 |0032: move-exception v5 │ │ +430cbe: 5440 355f |0033: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430cc2: 6e10 ee60 0000 |0035: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +430cc8: 0c00 |0038: move-result-object v0 │ │ +430cca: 6e10 ea60 0000 |0039: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +430cd0: 2705 |003c: throw v5 │ │ +430cd2: 5445 355f |003d: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430cd6: 6e10 ee60 0500 |003f: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +430cdc: 0c05 |0042: move-result-object v5 │ │ +430cde: 6e10 ea60 0500 |0043: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +430ce4: 0f00 |0046: return v0 │ │ catches : 1 │ │ 0x000a - 0x0023 │ │ Ljava/lang/Exception; -> 0x003d │ │ -> 0x0032 │ │ positions : │ │ 0x0000 line=248 │ │ 0x000a line=252 │ │ @@ -743112,40 +743111,40 @@ │ │ type : '()I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 49 16-bit code units │ │ -431064: |[431064] org.purple.smoke.State.chatCheckedParticipants:()I │ │ -431074: 5430 355f |0000: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431078: 6e10 ee60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -43107e: 0c00 |0005: move-result-object v0 │ │ -431080: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ -431086: 1200 |0009: const/4 v0, #int 0 // #0 │ │ -431088: 5431 345f |000a: iget-object v1, v3, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -43108c: 1a02 865e |000c: const-string v2, "chat_checkbox_counter" // string@5e86 │ │ -431090: 6e30 cc04 2100 |000e: invoke-virtual {v1, v2, v0}, Landroid/os/Bundle;.getInt:(Ljava/lang/String;I)I // method@04cc │ │ -431096: 0a00 |0011: move-result v0 │ │ -431098: 5431 355f |0012: iget-object v1, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -43109c: 6e10 ee60 0100 |0014: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -4310a2: 0c01 |0017: move-result-object v1 │ │ -4310a4: 6e10 ea60 0100 |0018: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -4310aa: 0f00 |001b: return v0 │ │ -4310ac: 0d00 |001c: move-exception v0 │ │ -4310ae: 5431 355f |001d: iget-object v1, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4310b2: 6e10 ee60 0100 |001f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -4310b8: 0c01 |0022: move-result-object v1 │ │ -4310ba: 6e10 ea60 0100 |0023: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -4310c0: 2700 |0026: throw v0 │ │ -4310c2: 5431 355f |0027: iget-object v1, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4310c6: 6e10 ee60 0100 |0029: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -4310cc: 0c01 |002c: move-result-object v1 │ │ -4310ce: 6e10 ea60 0100 |002d: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -4310d4: 0f00 |0030: return v0 │ │ +431060: |[431060] org.purple.smoke.State.chatCheckedParticipants:()I │ │ +431070: 5430 355f |0000: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431074: 6e10 ee60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +43107a: 0c00 |0005: move-result-object v0 │ │ +43107c: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ +431082: 1200 |0009: const/4 v0, #int 0 // #0 │ │ +431084: 5431 345f |000a: iget-object v1, v3, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431088: 1a02 865e |000c: const-string v2, "chat_checkbox_counter" // string@5e86 │ │ +43108c: 6e30 cc04 2100 |000e: invoke-virtual {v1, v2, v0}, Landroid/os/Bundle;.getInt:(Ljava/lang/String;I)I // method@04cc │ │ +431092: 0a00 |0011: move-result v0 │ │ +431094: 5431 355f |0012: iget-object v1, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431098: 6e10 ee60 0100 |0014: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +43109e: 0c01 |0017: move-result-object v1 │ │ +4310a0: 6e10 ea60 0100 |0018: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +4310a6: 0f00 |001b: return v0 │ │ +4310a8: 0d00 |001c: move-exception v0 │ │ +4310aa: 5431 355f |001d: iget-object v1, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4310ae: 6e10 ee60 0100 |001f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +4310b4: 0c01 |0022: move-result-object v1 │ │ +4310b6: 6e10 ea60 0100 |0023: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +4310bc: 2700 |0026: throw v0 │ │ +4310be: 5431 355f |0027: iget-object v1, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4310c2: 6e10 ee60 0100 |0029: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +4310c8: 0c01 |002c: move-result-object v1 │ │ +4310ca: 6e10 ea60 0100 |002d: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +4310d0: 0f00 |0030: return v0 │ │ catches : 1 │ │ 0x000a - 0x0012 │ │ Ljava/lang/Exception; -> 0x0027 │ │ -> 0x001c │ │ positions : │ │ 0x0000 line=371 │ │ 0x000a line=375 │ │ @@ -743160,22 +743159,22 @@ │ │ type : '()Ljava/util/ArrayList;' │ │ access : 0x20001 (PUBLIC DECLARED_SYNCHRONIZED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 8 16-bit code units │ │ -4312a0: |[4312a0] org.purple.smoke.State.chatLog:()Ljava/util/ArrayList; │ │ -4312b0: 1d01 |0000: monitor-enter v1 │ │ -4312b2: 5410 365f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ -4312b6: 1e01 |0003: monitor-exit v1 │ │ -4312b8: 1100 |0004: return-object v0 │ │ -4312ba: 0d00 |0005: move-exception v0 │ │ -4312bc: 1e01 |0006: monitor-exit v1 │ │ -4312be: 2700 |0007: throw v0 │ │ +43129c: |[43129c] org.purple.smoke.State.chatLog:()Ljava/util/ArrayList; │ │ +4312ac: 1d01 |0000: monitor-enter v1 │ │ +4312ae: 5410 365f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ +4312b2: 1e01 |0003: monitor-exit v1 │ │ +4312b4: 1100 |0004: return-object v0 │ │ +4312b6: 0d00 |0005: move-exception v0 │ │ +4312b8: 1e01 |0006: monitor-exit v1 │ │ +4312ba: 2700 |0007: throw v0 │ │ catches : 1 │ │ 0x0001 - 0x0003 │ │ -> 0x0005 │ │ positions : │ │ 0x0001 line=417 │ │ locals : │ │ 0x0000 - 0x0008 reg=1 this Lorg/purple/smoke/State; │ │ @@ -743185,47 +743184,47 @@ │ │ type : '(Ljava/lang/String;)J' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 67 16-bit code units │ │ -431458: |[431458] org.purple.smoke.State.chatSequence:(Ljava/lang/String;)J │ │ -431468: 5430 355f |0000: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -43146c: 6e10 ee60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -431472: 0c00 |0005: move-result-object v0 │ │ -431474: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ -43147a: 5430 345f |0009: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -43147e: 2201 f10a |000b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -431482: 7010 ee5c 0100 |000d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -431488: 1a02 8e5e |0010: const-string v2, "chat_sequence" // string@5e8e │ │ -43148c: 6e20 f95c 2100 |0012: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -431492: 6e20 f95c 4100 |0015: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -431498: 6e10 035d 0100 |0018: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -43149e: 0c04 |001b: move-result-object v4 │ │ -4314a0: 1601 0100 |001c: const-wide/16 v1, #int 1 // #1 │ │ -4314a4: 6e40 cf04 4021 |001e: invoke-virtual {v0, v4, v1, v2}, Landroid/os/Bundle;.getLong:(Ljava/lang/String;J)J // method@04cf │ │ -4314aa: 0b00 |0021: move-result-wide v0 │ │ -4314ac: 5434 355f |0022: iget-object v4, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4314b0: 6e10 ee60 0400 |0024: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -4314b6: 0c04 |0027: move-result-object v4 │ │ -4314b8: 6e10 ea60 0400 |0028: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -4314be: 1000 |002b: return-wide v0 │ │ -4314c0: 0d04 |002c: move-exception v4 │ │ -4314c2: 5430 355f |002d: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4314c6: 6e10 ee60 0000 |002f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -4314cc: 0c00 |0032: move-result-object v0 │ │ -4314ce: 6e10 ea60 0000 |0033: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -4314d4: 2704 |0036: throw v4 │ │ -4314d6: 5434 355f |0037: iget-object v4, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4314da: 6e10 ee60 0400 |0039: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -4314e0: 0c04 |003c: move-result-object v4 │ │ -4314e2: 6e10 ea60 0400 |003d: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -4314e8: 1600 0000 |0040: const-wide/16 v0, #int 0 // #0 │ │ -4314ec: 1000 |0042: return-wide v0 │ │ +431454: |[431454] org.purple.smoke.State.chatSequence:(Ljava/lang/String;)J │ │ +431464: 5430 355f |0000: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431468: 6e10 ee60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +43146e: 0c00 |0005: move-result-object v0 │ │ +431470: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ +431476: 5430 345f |0009: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +43147a: 2201 f10a |000b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +43147e: 7010 ee5c 0100 |000d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +431484: 1a02 8e5e |0010: const-string v2, "chat_sequence" // string@5e8e │ │ +431488: 6e20 f95c 2100 |0012: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43148e: 6e20 f95c 4100 |0015: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +431494: 6e10 035d 0100 |0018: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +43149a: 0c04 |001b: move-result-object v4 │ │ +43149c: 1601 0100 |001c: const-wide/16 v1, #int 1 // #1 │ │ +4314a0: 6e40 cf04 4021 |001e: invoke-virtual {v0, v4, v1, v2}, Landroid/os/Bundle;.getLong:(Ljava/lang/String;J)J // method@04cf │ │ +4314a6: 0b00 |0021: move-result-wide v0 │ │ +4314a8: 5434 355f |0022: iget-object v4, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4314ac: 6e10 ee60 0400 |0024: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +4314b2: 0c04 |0027: move-result-object v4 │ │ +4314b4: 6e10 ea60 0400 |0028: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +4314ba: 1000 |002b: return-wide v0 │ │ +4314bc: 0d04 |002c: move-exception v4 │ │ +4314be: 5430 355f |002d: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4314c2: 6e10 ee60 0000 |002f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +4314c8: 0c00 |0032: move-result-object v0 │ │ +4314ca: 6e10 ea60 0000 |0033: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +4314d0: 2704 |0036: throw v4 │ │ +4314d2: 5434 355f |0037: iget-object v4, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4314d6: 6e10 ee60 0400 |0039: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +4314dc: 0c04 |003c: move-result-object v4 │ │ +4314de: 6e10 ea60 0400 |003d: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +4314e4: 1600 0000 |0040: const-wide/16 v0, #int 0 // #0 │ │ +4314e8: 1000 |0042: return-wide v0 │ │ catches : 1 │ │ 0x0009 - 0x0022 │ │ Ljava/lang/Exception; -> 0x0037 │ │ -> 0x002c │ │ positions : │ │ 0x0000 line=390 │ │ 0x0009 line=394 │ │ @@ -743241,26 +743240,26 @@ │ │ type : '()V' │ │ access : 0x20001 (PUBLIC DECLARED_SYNCHRONIZED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 16 16-bit code units │ │ -4316c4: |[4316c4] org.purple.smoke.State.clearChatLog:()V │ │ -4316d4: 1d01 |0000: monitor-enter v1 │ │ -4316d6: 5410 365f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ -4316da: 3800 0500 |0003: if-eqz v0, 0008 // +0005 │ │ -4316de: 6e10 a15f 0000 |0005: invoke-virtual {v0}, Ljava/util/ArrayList;.clear:()V // method@5fa1 │ │ -4316e4: 1200 |0008: const/4 v0, #int 0 // #0 │ │ -4316e6: 5b10 365f |0009: iput-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ -4316ea: 1e01 |000b: monitor-exit v1 │ │ -4316ec: 0e00 |000c: return-void │ │ -4316ee: 0d00 |000d: move-exception v0 │ │ -4316f0: 1e01 |000e: monitor-exit v1 │ │ -4316f2: 2700 |000f: throw v0 │ │ +4316c0: |[4316c0] org.purple.smoke.State.clearChatLog:()V │ │ +4316d0: 1d01 |0000: monitor-enter v1 │ │ +4316d2: 5410 365f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ +4316d6: 3800 0500 |0003: if-eqz v0, 0008 // +0005 │ │ +4316da: 6e10 a15f 0000 |0005: invoke-virtual {v0}, Ljava/util/ArrayList;.clear:()V // method@5fa1 │ │ +4316e0: 1200 |0008: const/4 v0, #int 0 // #0 │ │ +4316e2: 5b10 365f |0009: iput-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ +4316e6: 1e01 |000b: monitor-exit v1 │ │ +4316e8: 0e00 |000c: return-void │ │ +4316ea: 0d00 |000d: move-exception v0 │ │ +4316ec: 1e01 |000e: monitor-exit v1 │ │ +4316ee: 2700 |000f: throw v0 │ │ catches : 1 │ │ 0x0001 - 0x000b │ │ -> 0x000d │ │ positions : │ │ 0x0001 line=430 │ │ 0x0005 line=431 │ │ 0x0009 line=433 │ │ @@ -743273,34 +743272,34 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 38 16-bit code units │ │ -431700: |[431700] org.purple.smoke.State.clearParticipants:()V │ │ -431710: 5420 3a5f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -431714: 6e10 ef60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -43171a: 0c00 |0005: move-result-object v0 │ │ -43171c: 6e10 eb60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ -431722: 5420 395f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ -431726: 3800 1100 |000b: if-eqz v0, 001c // +0011 │ │ -43172a: 6e10 a15f 0000 |000d: invoke-virtual {v0}, Ljava/util/ArrayList;.clear:()V // method@5fa1 │ │ -431730: 280c |0010: goto 001c // +000c │ │ -431732: 0d00 |0011: move-exception v0 │ │ -431734: 5421 3a5f |0012: iget-object v1, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -431738: 6e10 ef60 0100 |0014: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -43173e: 0c01 |0017: move-result-object v1 │ │ -431740: 6e10 ec60 0100 |0018: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431746: 2700 |001b: throw v0 │ │ -431748: 5420 3a5f |001c: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -43174c: 6e10 ef60 0000 |001e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431752: 0c00 |0021: move-result-object v0 │ │ -431754: 6e10 ec60 0000 |0022: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -43175a: 0e00 |0025: return-void │ │ +4316fc: |[4316fc] org.purple.smoke.State.clearParticipants:()V │ │ +43170c: 5420 3a5f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +431710: 6e10 ef60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431716: 0c00 |0005: move-result-object v0 │ │ +431718: 6e10 eb60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ +43171e: 5420 395f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ +431722: 3800 1100 |000b: if-eqz v0, 001c // +0011 │ │ +431726: 6e10 a15f 0000 |000d: invoke-virtual {v0}, Ljava/util/ArrayList;.clear:()V // method@5fa1 │ │ +43172c: 280c |0010: goto 001c // +000c │ │ +43172e: 0d00 |0011: move-exception v0 │ │ +431730: 5421 3a5f |0012: iget-object v1, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +431734: 6e10 ef60 0100 |0014: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +43173a: 0c01 |0017: move-result-object v1 │ │ +43173c: 6e10 ec60 0100 |0018: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431742: 2700 |001b: throw v0 │ │ +431744: 5420 3a5f |001c: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +431748: 6e10 ef60 0000 |001e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +43174e: 0c00 |0021: move-result-object v0 │ │ +431750: 6e10 ec60 0000 |0022: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431756: 0e00 |0025: return-void │ │ catches : 1 │ │ 0x0009 - 0x0010 │ │ Ljava/lang/Exception; -> 0x001c │ │ -> 0x0011 │ │ positions : │ │ 0x0000 line=490 │ │ 0x0009 line=494 │ │ @@ -743316,18 +743315,18 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -43176c: |[43176c] org.purple.smoke.State.clearSelectedSwitches:()V │ │ -43177c: 5410 3d5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ -431780: 7210 5760 0000 |0002: invoke-interface {v0}, Ljava/util/Map;.clear:()V // method@6057 │ │ -431786: 0e00 |0005: return-void │ │ +431768: |[431768] org.purple.smoke.State.clearSelectedSwitches:()V │ │ +431778: 5410 3d5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ +43177c: 7210 5760 0000 |0002: invoke-interface {v0}, Ljava/util/Map;.clear:()V // method@6057 │ │ +431782: 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;) │ │ @@ -743335,23 +743334,23 @@ │ │ type : '()V' │ │ access : 0x20001 (PUBLIC DECLARED_SYNCHRONIZED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 11 16-bit code units │ │ -431788: |[431788] org.purple.smoke.State.clearSteamDetailsStates:()V │ │ -431798: 1d01 |0000: monitor-enter v1 │ │ -43179a: 5410 3f5f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ -43179e: 7210 5760 0000 |0003: invoke-interface {v0}, Ljava/util/Map;.clear:()V // method@6057 │ │ -4317a4: 1e01 |0006: monitor-exit v1 │ │ -4317a6: 0e00 |0007: return-void │ │ -4317a8: 0d00 |0008: move-exception v0 │ │ -4317aa: 1e01 |0009: monitor-exit v1 │ │ -4317ac: 2700 |000a: throw v0 │ │ +431784: |[431784] org.purple.smoke.State.clearSteamDetailsStates:()V │ │ +431794: 1d01 |0000: monitor-enter v1 │ │ +431796: 5410 3f5f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ +43179a: 7210 5760 0000 |0003: invoke-interface {v0}, Ljava/util/Map;.clear:()V // method@6057 │ │ +4317a0: 1e01 |0006: monitor-exit v1 │ │ +4317a2: 0e00 |0007: return-void │ │ +4317a4: 0d00 |0008: move-exception v0 │ │ +4317a6: 1e01 |0009: monitor-exit v1 │ │ +4317a8: 2700 |000a: throw v0 │ │ catches : 1 │ │ 0x0001 - 0x0006 │ │ -> 0x0008 │ │ positions : │ │ 0x0001 line=438 │ │ 0x0006 line=439 │ │ locals : │ │ @@ -743362,24 +743361,24 @@ │ │ type : '(Ljava/lang/String;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 14 16-bit code units │ │ -430cfc: |[430cfc] org.purple.smoke.State.containsFire:(Ljava/lang/String;)Z │ │ -430d0c: 5410 385f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -430d10: 3800 0a00 |0002: if-eqz v0, 000c // +000a │ │ -430d14: 7220 5860 2000 |0004: invoke-interface {v0, v2}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6058 │ │ -430d1a: 0a02 |0007: move-result v2 │ │ -430d1c: 3802 0400 |0008: if-eqz v2, 000c // +0004 │ │ -430d20: 1212 |000a: const/4 v2, #int 1 // #1 │ │ -430d22: 2802 |000b: goto 000d // +0002 │ │ -430d24: 1202 |000c: const/4 v2, #int 0 // #0 │ │ -430d26: 0f02 |000d: return v2 │ │ +430cf8: |[430cf8] org.purple.smoke.State.containsFire:(Ljava/lang/String;)Z │ │ +430d08: 5410 385f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +430d0c: 3800 0a00 |0002: if-eqz v0, 000c // +000a │ │ +430d10: 7220 5860 2000 |0004: invoke-interface {v0, v2}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6058 │ │ +430d16: 0a02 |0007: move-result v2 │ │ +430d18: 3802 0400 |0008: if-eqz v2, 000c // +0004 │ │ +430d1c: 1212 |000a: const/4 v2, #int 1 // #1 │ │ +430d1e: 2802 |000b: goto 000d // +0002 │ │ +430d20: 1202 |000c: const/4 v2, #int 0 // #0 │ │ +430d22: 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; │ │ │ │ @@ -743388,19 +743387,19 @@ │ │ type : '()Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -430d28: |[430d28] org.purple.smoke.State.exit:()Z │ │ -430d38: 5410 375f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_exit:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f37 │ │ -430d3c: 6e10 da60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -430d42: 0a00 |0005: move-result v0 │ │ -430d44: 0f00 |0006: return v0 │ │ +430d24: |[430d24] org.purple.smoke.State.exit:()Z │ │ +430d34: 5410 375f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_exit:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f37 │ │ +430d38: 6e10 da60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +430d3e: 0a00 |0005: move-result v0 │ │ +430d40: 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;) │ │ @@ -743408,29 +743407,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 │ │ -431500: |[431500] org.purple.smoke.State.fireChannel:(Ljava/lang/String;)Lorg/purple/smoke/FireChannel; │ │ -431510: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -431512: 3903 0300 |0001: if-nez v3, 0004 // +0003 │ │ -431516: 1100 |0003: return-object v0 │ │ -431518: 5421 385f |0004: iget-object v1, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -43151c: 3801 1100 |0006: if-eqz v1, 0017 // +0011 │ │ -431520: 7220 5860 3100 |0008: invoke-interface {v1, v3}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6058 │ │ -431526: 0a01 |000b: move-result v1 │ │ -431528: 3801 0b00 |000c: if-eqz v1, 0017 // +000b │ │ -43152c: 5420 385f |000e: iget-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -431530: 7220 5b60 3000 |0010: invoke-interface {v0, v3}, Ljava/util/Map;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@605b │ │ -431536: 0c03 |0013: move-result-object v3 │ │ -431538: 1f03 801a |0014: check-cast v3, Lorg/purple/smoke/FireChannel; // type@1a80 │ │ -43153c: 1103 |0016: return-object v3 │ │ -43153e: 1100 |0017: return-object v0 │ │ +4314fc: |[4314fc] org.purple.smoke.State.fireChannel:(Ljava/lang/String;)Lorg/purple/smoke/FireChannel; │ │ +43150c: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +43150e: 3903 0300 |0001: if-nez v3, 0004 // +0003 │ │ +431512: 1100 |0003: return-object v0 │ │ +431514: 5421 385f |0004: iget-object v1, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +431518: 3801 1100 |0006: if-eqz v1, 0017 // +0011 │ │ +43151c: 7220 5860 3100 |0008: invoke-interface {v1, v3}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6058 │ │ +431522: 0a01 |000b: move-result v1 │ │ +431524: 3801 0b00 |000c: if-eqz v1, 0017 // +000b │ │ +431528: 5420 385f |000e: iget-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +43152c: 7220 5b60 3000 |0010: invoke-interface {v0, v3}, Ljava/util/Map;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@605b │ │ +431532: 0c03 |0013: move-result-object v3 │ │ +431534: 1f03 801a |0014: check-cast v3, Lorg/purple/smoke/FireChannel; // type@1a80 │ │ +431538: 1103 |0016: return-object v3 │ │ +43153a: 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; │ │ @@ -743440,17 +743439,17 @@ │ │ type : '()Ljava/util/Map;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -431408: |[431408] org.purple.smoke.State.fireChannels:()Ljava/util/Map; │ │ -431418: 5410 385f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -43141c: 1100 |0002: return-object v0 │ │ +431404: |[431404] org.purple.smoke.State.fireChannels:()Ljava/util/Map; │ │ +431414: 5410 385f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +431418: 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;) │ │ @@ -743458,39 +743457,39 @@ │ │ type : '(Ljava/lang/String;)C' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 48 16-bit code units │ │ -430fe4: |[430fe4] org.purple.smoke.State.getChar:(Ljava/lang/String;)C │ │ -430ff4: 5420 355f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430ff8: 6e10 ee60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -430ffe: 0c00 |0005: move-result-object v0 │ │ -431000: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ -431006: 1300 3000 |0009: const/16 v0, #int 48 // #30 │ │ -43100a: 5421 345f |000b: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -43100e: 6e30 c604 3100 |000d: invoke-virtual {v1, v3, v0}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ -431014: 0a03 |0010: move-result v3 │ │ -431016: 5420 355f |0011: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -43101a: 6e10 ee60 0000 |0013: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -431020: 0c00 |0016: move-result-object v0 │ │ -431022: 6e10 ea60 0000 |0017: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -431028: 0f03 |001a: return v3 │ │ -43102a: 0d03 |001b: move-exception v3 │ │ -43102c: 5420 355f |001c: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431030: 6e10 ee60 0000 |001e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -431036: 0c00 |0021: move-result-object v0 │ │ -431038: 6e10 ea60 0000 |0022: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -43103e: 2703 |0025: throw v3 │ │ -431040: 5423 355f |0026: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431044: 6e10 ee60 0300 |0028: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -43104a: 0c03 |002b: move-result-object v3 │ │ -43104c: 6e10 ea60 0300 |002c: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -431052: 0f00 |002f: return v0 │ │ +430fe0: |[430fe0] org.purple.smoke.State.getChar:(Ljava/lang/String;)C │ │ +430ff0: 5420 355f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430ff4: 6e10 ee60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +430ffa: 0c00 |0005: move-result-object v0 │ │ +430ffc: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ +431002: 1300 3000 |0009: const/16 v0, #int 48 // #30 │ │ +431006: 5421 345f |000b: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +43100a: 6e30 c604 3100 |000d: invoke-virtual {v1, v3, v0}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ +431010: 0a03 |0010: move-result v3 │ │ +431012: 5420 355f |0011: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431016: 6e10 ee60 0000 |0013: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +43101c: 0c00 |0016: move-result-object v0 │ │ +43101e: 6e10 ea60 0000 |0017: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +431024: 0f03 |001a: return v3 │ │ +431026: 0d03 |001b: move-exception v3 │ │ +431028: 5420 355f |001c: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +43102c: 6e10 ee60 0000 |001e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +431032: 0c00 |0021: move-result-object v0 │ │ +431034: 6e10 ea60 0000 |0022: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +43103a: 2703 |0025: throw v3 │ │ +43103c: 5423 355f |0026: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431040: 6e10 ee60 0300 |0028: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +431046: 0c03 |002b: move-result-object v3 │ │ +431048: 6e10 ea60 0300 |002c: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +43104e: 0f00 |002f: return v0 │ │ catches : 1 │ │ 0x000b - 0x0011 │ │ Ljava/lang/Exception; -> 0x0026 │ │ -> 0x001b │ │ positions : │ │ 0x0000 line=352 │ │ 0x000b line=356 │ │ @@ -743506,39 +743505,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 │ │ -4310e8: |[4310e8] org.purple.smoke.State.getCharSequence:(Ljava/lang/String;)Ljava/lang/CharSequence; │ │ -4310f8: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ -4310fc: 5421 355f |0002: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431100: 6e10 ee60 0100 |0004: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -431106: 0c01 |0007: move-result-object v1 │ │ -431108: 6e10 e960 0100 |0008: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ -43110e: 5421 345f |000b: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431112: 6e30 c804 3100 |000d: invoke-virtual {v1, v3, v0}, Landroid/os/Bundle;.getCharSequence:(Ljava/lang/String;Ljava/lang/CharSequence;)Ljava/lang/CharSequence; // method@04c8 │ │ -431118: 0c03 |0010: move-result-object v3 │ │ -43111a: 5420 355f |0011: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -43111e: 6e10 ee60 0000 |0013: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -431124: 0c00 |0016: move-result-object v0 │ │ -431126: 6e10 ea60 0000 |0017: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -43112c: 1103 |001a: return-object v3 │ │ -43112e: 0d03 |001b: move-exception v3 │ │ -431130: 5420 355f |001c: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431134: 6e10 ee60 0000 |001e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -43113a: 0c00 |0021: move-result-object v0 │ │ -43113c: 6e10 ea60 0000 |0022: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -431142: 2703 |0025: throw v3 │ │ -431144: 5423 355f |0026: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431148: 6e10 ee60 0300 |0028: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -43114e: 0c03 |002b: move-result-object v3 │ │ -431150: 6e10 ea60 0300 |002c: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -431156: 1100 |002f: return-object v0 │ │ +4310e4: |[4310e4] org.purple.smoke.State.getCharSequence:(Ljava/lang/String;)Ljava/lang/CharSequence; │ │ +4310f4: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ +4310f8: 5421 355f |0002: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4310fc: 6e10 ee60 0100 |0004: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +431102: 0c01 |0007: move-result-object v1 │ │ +431104: 6e10 e960 0100 |0008: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ +43110a: 5421 345f |000b: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +43110e: 6e30 c804 3100 |000d: invoke-virtual {v1, v3, v0}, Landroid/os/Bundle;.getCharSequence:(Ljava/lang/String;Ljava/lang/CharSequence;)Ljava/lang/CharSequence; // method@04c8 │ │ +431114: 0c03 |0010: move-result-object v3 │ │ +431116: 5420 355f |0011: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +43111a: 6e10 ee60 0000 |0013: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +431120: 0c00 |0016: move-result-object v0 │ │ +431122: 6e10 ea60 0000 |0017: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +431128: 1103 |001a: return-object v3 │ │ +43112a: 0d03 |001b: move-exception v3 │ │ +43112c: 5420 355f |001c: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431130: 6e10 ee60 0000 |001e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +431136: 0c00 |0021: move-result-object v0 │ │ +431138: 6e10 ea60 0000 |0022: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +43113e: 2703 |0025: throw v3 │ │ +431140: 5423 355f |0026: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431144: 6e10 ee60 0300 |0028: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +43114a: 0c03 |002b: move-result-object v3 │ │ +43114c: 6e10 ea60 0300 |002c: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +431152: 1100 |002f: return-object v0 │ │ catches : 1 │ │ 0x000b - 0x0011 │ │ Ljava/lang/Exception; -> 0x0026 │ │ -> 0x001b │ │ positions : │ │ 0x0002 line=176 │ │ 0x000b line=180 │ │ @@ -743554,39 +743553,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 │ │ -431168: |[431168] org.purple.smoke.State.getString:(Ljava/lang/String;)Ljava/lang/String; │ │ -431178: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ -43117c: 5421 355f |0002: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431180: 6e10 ee60 0100 |0004: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -431186: 0c01 |0007: move-result-object v1 │ │ -431188: 6e10 e960 0100 |0008: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ -43118e: 5421 345f |000b: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431192: 6e30 d504 3100 |000d: invoke-virtual {v1, v3, v0}, Landroid/os/Bundle;.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; // method@04d5 │ │ -431198: 0c03 |0010: move-result-object v3 │ │ -43119a: 5420 355f |0011: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -43119e: 6e10 ee60 0000 |0013: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -4311a4: 0c00 |0016: move-result-object v0 │ │ -4311a6: 6e10 ea60 0000 |0017: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -4311ac: 1103 |001a: return-object v3 │ │ -4311ae: 0d03 |001b: move-exception v3 │ │ -4311b0: 5420 355f |001c: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4311b4: 6e10 ee60 0000 |001e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -4311ba: 0c00 |0021: move-result-object v0 │ │ -4311bc: 6e10 ea60 0000 |0022: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -4311c2: 2703 |0025: throw v3 │ │ -4311c4: 5423 355f |0026: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4311c8: 6e10 ee60 0300 |0028: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -4311ce: 0c03 |002b: move-result-object v3 │ │ -4311d0: 6e10 ea60 0300 |002c: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -4311d6: 1100 |002f: return-object v0 │ │ +431164: |[431164] org.purple.smoke.State.getString:(Ljava/lang/String;)Ljava/lang/String; │ │ +431174: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ +431178: 5421 355f |0002: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +43117c: 6e10 ee60 0100 |0004: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +431182: 0c01 |0007: move-result-object v1 │ │ +431184: 6e10 e960 0100 |0008: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ +43118a: 5421 345f |000b: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +43118e: 6e30 d504 3100 |000d: invoke-virtual {v1, v3, v0}, Landroid/os/Bundle;.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; // method@04d5 │ │ +431194: 0c03 |0010: move-result-object v3 │ │ +431196: 5420 355f |0011: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +43119a: 6e10 ee60 0000 |0013: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +4311a0: 0c00 |0016: move-result-object v0 │ │ +4311a2: 6e10 ea60 0000 |0017: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +4311a8: 1103 |001a: return-object v3 │ │ +4311aa: 0d03 |001b: move-exception v3 │ │ +4311ac: 5420 355f |001c: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4311b0: 6e10 ee60 0000 |001e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +4311b6: 0c00 |0021: move-result-object v0 │ │ +4311b8: 6e10 ea60 0000 |0022: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +4311be: 2703 |0025: throw v3 │ │ +4311c0: 5423 355f |0026: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4311c4: 6e10 ee60 0300 |0028: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +4311ca: 0c03 |002b: move-result-object v3 │ │ +4311cc: 6e10 ea60 0300 |002c: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +4311d2: 1100 |002f: return-object v0 │ │ catches : 1 │ │ 0x000b - 0x0011 │ │ Ljava/lang/Exception; -> 0x0026 │ │ -> 0x001b │ │ positions : │ │ 0x0002 line=216 │ │ 0x000b line=220 │ │ @@ -743602,44 +743601,44 @@ │ │ type : '(Ljava/lang/String;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 60 16-bit code units │ │ -4317bc: |[4317bc] org.purple.smoke.State.incrementChatSequence:(Ljava/lang/String;)V │ │ -4317cc: 6e20 69bd 6500 |0000: invoke-virtual {v5, v6}, Lorg/purple/smoke/State;.chatSequence:(Ljava/lang/String;)J // method@bd69 │ │ -4317d2: 0b00 |0003: move-result-wide v0 │ │ -4317d4: 5452 355f |0004: iget-object v2, v5, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4317d8: 6e10 ef60 0200 |0006: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -4317de: 0c02 |0009: move-result-object v2 │ │ -4317e0: 6e10 eb60 0200 |000a: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ -4317e6: 5452 345f |000d: iget-object v2, v5, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -4317ea: 2203 f10a |000f: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ -4317ee: 7010 ee5c 0300 |0011: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -4317f4: 1a04 8e5e |0014: const-string v4, "chat_sequence" // string@5e8e │ │ -4317f8: 6e20 f95c 4300 |0016: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4317fe: 6e20 f95c 6300 |0019: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -431804: 6e10 035d 0300 |001c: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -43180a: 0c06 |001f: move-result-object v6 │ │ -43180c: 1603 0100 |0020: const-wide/16 v3, #int 1 // #1 │ │ -431810: bb30 |0022: add-long/2addr v0, v3 │ │ -431812: 6e40 e304 6210 |0023: invoke-virtual {v2, v6, v0, v1}, Landroid/os/Bundle;.putLong:(Ljava/lang/String;J)V // method@04e3 │ │ -431818: 280c |0026: goto 0032 // +000c │ │ -43181a: 0d06 |0027: move-exception v6 │ │ -43181c: 5450 355f |0028: iget-object v0, v5, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431820: 6e10 ef60 0000 |002a: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431826: 0c00 |002d: move-result-object v0 │ │ -431828: 6e10 ec60 0000 |002e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -43182e: 2706 |0031: throw v6 │ │ -431830: 5456 355f |0032: iget-object v6, v5, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431834: 6e10 ef60 0600 |0034: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -43183a: 0c06 |0037: move-result-object v6 │ │ -43183c: 6e10 ec60 0600 |0038: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431842: 0e00 |003b: return-void │ │ +4317b8: |[4317b8] org.purple.smoke.State.incrementChatSequence:(Ljava/lang/String;)V │ │ +4317c8: 6e20 69bd 6500 |0000: invoke-virtual {v5, v6}, Lorg/purple/smoke/State;.chatSequence:(Ljava/lang/String;)J // method@bd69 │ │ +4317ce: 0b00 |0003: move-result-wide v0 │ │ +4317d0: 5452 355f |0004: iget-object v2, v5, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4317d4: 6e10 ef60 0200 |0006: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +4317da: 0c02 |0009: move-result-object v2 │ │ +4317dc: 6e10 eb60 0200 |000a: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ +4317e2: 5452 345f |000d: iget-object v2, v5, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +4317e6: 2203 f10a |000f: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ +4317ea: 7010 ee5c 0300 |0011: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4317f0: 1a04 8e5e |0014: const-string v4, "chat_sequence" // string@5e8e │ │ +4317f4: 6e20 f95c 4300 |0016: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4317fa: 6e20 f95c 6300 |0019: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +431800: 6e10 035d 0300 |001c: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +431806: 0c06 |001f: move-result-object v6 │ │ +431808: 1603 0100 |0020: const-wide/16 v3, #int 1 // #1 │ │ +43180c: bb30 |0022: add-long/2addr v0, v3 │ │ +43180e: 6e40 e304 6210 |0023: invoke-virtual {v2, v6, v0, v1}, Landroid/os/Bundle;.putLong:(Ljava/lang/String;J)V // method@04e3 │ │ +431814: 280c |0026: goto 0032 // +000c │ │ +431816: 0d06 |0027: move-exception v6 │ │ +431818: 5450 355f |0028: iget-object v0, v5, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +43181c: 6e10 ef60 0000 |002a: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431822: 0c00 |002d: move-result-object v0 │ │ +431824: 6e10 ec60 0000 |002e: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +43182a: 2706 |0031: throw v6 │ │ +43182c: 5456 355f |0032: iget-object v6, v5, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431830: 6e10 ef60 0600 |0034: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431836: 0c06 |0037: move-result-object v6 │ │ +431838: 6e10 ec60 0600 |0038: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +43183e: 0e00 |003b: return-void │ │ catches : 1 │ │ 0x000d - 0x0026 │ │ Ljava/lang/Exception; -> 0x0032 │ │ -> 0x0027 │ │ positions : │ │ 0x0000 line=513 │ │ 0x0004 line=515 │ │ @@ -743656,44 +743655,44 @@ │ │ type : '()Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 56 16-bit code units │ │ -430d48: |[430d48] org.purple.smoke.State.isAuthenticated:()Z │ │ -430d58: 5440 355f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430d5c: 6e10 ee60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -430d62: 0c00 |0005: move-result-object v0 │ │ -430d64: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ -430d6a: 1200 |0009: const/4 v0, #int 0 // #0 │ │ -430d6c: 5441 345f |000a: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -430d70: 1a02 e27b |000c: const-string v2, "is_authenticated" // string@7be2 │ │ -430d74: 1303 3000 |000e: const/16 v3, #int 48 // #30 │ │ -430d78: 6e30 c604 2103 |0010: invoke-virtual {v1, v2, v3}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ -430d7e: 0a01 |0013: move-result v1 │ │ -430d80: 1302 3100 |0014: const/16 v2, #int 49 // #31 │ │ -430d84: 3321 0300 |0016: if-ne v1, v2, 0019 // +0003 │ │ -430d88: 1210 |0018: const/4 v0, #int 1 // #1 │ │ -430d8a: 5441 355f |0019: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430d8e: 6e10 ee60 0100 |001b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -430d94: 0c01 |001e: move-result-object v1 │ │ -430d96: 6e10 ea60 0100 |001f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -430d9c: 0f00 |0022: return v0 │ │ -430d9e: 0d00 |0023: move-exception v0 │ │ -430da0: 5441 355f |0024: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430da4: 6e10 ee60 0100 |0026: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -430daa: 0c01 |0029: move-result-object v1 │ │ -430dac: 6e10 ea60 0100 |002a: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -430db2: 2700 |002d: throw v0 │ │ -430db4: 5441 355f |002e: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430db8: 6e10 ee60 0100 |0030: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -430dbe: 0c01 |0033: move-result-object v1 │ │ -430dc0: 6e10 ea60 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -430dc6: 0f00 |0037: return v0 │ │ +430d44: |[430d44] org.purple.smoke.State.isAuthenticated:()Z │ │ +430d54: 5440 355f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430d58: 6e10 ee60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +430d5e: 0c00 |0005: move-result-object v0 │ │ +430d60: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ +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 e27b |000c: const-string v2, "is_authenticated" // string@7be2 │ │ +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 ee60 0100 |001b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +430d90: 0c01 |001e: move-result-object v1 │ │ +430d92: 6e10 ea60 0100 |001f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +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 ee60 0100 |0026: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +430da6: 0c01 |0029: move-result-object v1 │ │ +430da8: 6e10 ea60 0100 |002a: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +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 ee60 0100 |0030: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +430dba: 0c01 |0033: move-result-object v1 │ │ +430dbc: 6e10 ea60 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +430dc2: 0f00 |0037: return v0 │ │ catches : 1 │ │ 0x000a - 0x0014 │ │ Ljava/lang/Exception; -> 0x002e │ │ -> 0x0023 │ │ positions : │ │ 0x0000 line=277 │ │ 0x000a line=281 │ │ @@ -743708,44 +743707,44 @@ │ │ type : '()Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 56 16-bit code units │ │ -430dd8: |[430dd8] org.purple.smoke.State.isLocked:()Z │ │ -430de8: 5440 355f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430dec: 6e10 ee60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -430df2: 0c00 |0005: move-result-object v0 │ │ -430df4: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ -430dfa: 1200 |0009: const/4 v0, #int 0 // #0 │ │ -430dfc: 5441 345f |000a: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -430e00: 1a02 e57b |000c: const-string v2, "is_locked" // string@7be5 │ │ -430e04: 1303 3000 |000e: const/16 v3, #int 48 // #30 │ │ -430e08: 6e30 c604 2103 |0010: invoke-virtual {v1, v2, v3}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ -430e0e: 0a01 |0013: move-result v1 │ │ -430e10: 1302 3100 |0014: const/16 v2, #int 49 // #31 │ │ -430e14: 3321 0300 |0016: if-ne v1, v2, 0019 // +0003 │ │ -430e18: 1210 |0018: const/4 v0, #int 1 // #1 │ │ -430e1a: 5441 355f |0019: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430e1e: 6e10 ee60 0100 |001b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -430e24: 0c01 |001e: move-result-object v1 │ │ -430e26: 6e10 ea60 0100 |001f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -430e2c: 0f00 |0022: return v0 │ │ -430e2e: 0d00 |0023: move-exception v0 │ │ -430e30: 5441 355f |0024: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430e34: 6e10 ee60 0100 |0026: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -430e3a: 0c01 |0029: move-result-object v1 │ │ -430e3c: 6e10 ea60 0100 |002a: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -430e42: 2700 |002d: throw v0 │ │ -430e44: 5441 355f |002e: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430e48: 6e10 ee60 0100 |0030: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -430e4e: 0c01 |0033: move-result-object v1 │ │ -430e50: 6e10 ea60 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -430e56: 0f00 |0037: return v0 │ │ +430dd4: |[430dd4] org.purple.smoke.State.isLocked:()Z │ │ +430de4: 5440 355f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430de8: 6e10 ee60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +430dee: 0c00 |0005: move-result-object v0 │ │ +430df0: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ +430df6: 1200 |0009: const/4 v0, #int 0 // #0 │ │ +430df8: 5441 345f |000a: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +430dfc: 1a02 e57b |000c: const-string v2, "is_locked" // string@7be5 │ │ +430e00: 1303 3000 |000e: const/16 v3, #int 48 // #30 │ │ +430e04: 6e30 c604 2103 |0010: invoke-virtual {v1, v2, v3}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ +430e0a: 0a01 |0013: move-result v1 │ │ +430e0c: 1302 3100 |0014: const/16 v2, #int 49 // #31 │ │ +430e10: 3321 0300 |0016: if-ne v1, v2, 0019 // +0003 │ │ +430e14: 1210 |0018: const/4 v0, #int 1 // #1 │ │ +430e16: 5441 355f |0019: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430e1a: 6e10 ee60 0100 |001b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +430e20: 0c01 |001e: move-result-object v1 │ │ +430e22: 6e10 ea60 0100 |001f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +430e28: 0f00 |0022: return v0 │ │ +430e2a: 0d00 |0023: move-exception v0 │ │ +430e2c: 5441 355f |0024: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430e30: 6e10 ee60 0100 |0026: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +430e36: 0c01 |0029: move-result-object v1 │ │ +430e38: 6e10 ea60 0100 |002a: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +430e3e: 2700 |002d: throw v0 │ │ +430e40: 5441 355f |002e: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430e44: 6e10 ee60 0100 |0030: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +430e4a: 0c01 |0033: move-result-object v1 │ │ +430e4c: 6e10 ea60 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +430e52: 0f00 |0037: return v0 │ │ catches : 1 │ │ 0x000a - 0x0014 │ │ Ljava/lang/Exception; -> 0x002e │ │ -> 0x0023 │ │ positions : │ │ 0x0000 line=296 │ │ 0x000a line=300 │ │ @@ -743760,42 +743759,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 │ │ -431854: |[431854] org.purple.smoke.State.logChatMessage:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZJJ)V │ │ -431864: 1d01 |0000: monitor-enter v1 │ │ -431866: 3802 2d00 |0001: if-eqz v2, 002e // +002d │ │ -43186a: 3803 2b00 |0003: if-eqz v3, 002e // +002b │ │ -43186e: 3904 0300 |0005: if-nez v4, 0008 // +0003 │ │ -431872: 2827 |0007: goto 002e // +0027 │ │ -431874: 5410 365f |0008: iget-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ -431878: 3900 0900 |000a: if-nez v0, 0013 // +0009 │ │ -43187c: 2200 ab0b |000c: new-instance v0, Ljava/util/ArrayList; // type@0bab │ │ -431880: 7010 9b5f 0000 |000e: invoke-direct {v0}, Ljava/util/ArrayList;.:()V // method@5f9b │ │ -431886: 5b10 365f |0011: iput-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ -43188a: 2200 aa1a |0013: new-instance v0, Lorg/purple/smoke/MessageElement; // type@1aaa │ │ -43188e: 7010 b2bb 0000 |0015: invoke-direct {v0}, Lorg/purple/smoke/MessageElement;.:()V // method@bbb2 │ │ -431894: 5b04 f654 |0018: iput-object v4, v0, Lorg/purple/smoke/MessageElement;.m_id:Ljava/lang/String; // field@54f6 │ │ -431898: 5b02 f854 |001a: iput-object v2, v0, Lorg/purple/smoke/MessageElement;.m_message:Ljava/lang/String; // field@54f8 │ │ -43189c: 5b03 fb54 |001c: iput-object v3, v0, Lorg/purple/smoke/MessageElement;.m_name:Ljava/lang/String; // field@54fb │ │ -4318a0: 5c05 fd54 |001e: iput-boolean v5, v0, Lorg/purple/smoke/MessageElement;.m_purple:Z // field@54fd │ │ -4318a4: 5a06 fe54 |0020: iput-wide v6, v0, Lorg/purple/smoke/MessageElement;.m_sequence:J // field@54fe │ │ -4318a8: 5a08 ff54 |0022: iput-wide v8, v0, Lorg/purple/smoke/MessageElement;.m_timestamp:J // field@54ff │ │ -4318ac: 5412 365f |0024: iget-object v2, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ -4318b0: 6e20 9f5f 0200 |0026: invoke-virtual {v2, v0}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9f │ │ -4318b6: 1e01 |0029: monitor-exit v1 │ │ -4318b8: 0e00 |002a: return-void │ │ -4318ba: 0d02 |002b: move-exception v2 │ │ -4318bc: 1e01 |002c: monitor-exit v1 │ │ -4318be: 2702 |002d: throw v2 │ │ -4318c0: 1e01 |002e: monitor-exit v1 │ │ -4318c2: 0e00 |002f: return-void │ │ +431850: |[431850] org.purple.smoke.State.logChatMessage:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZJJ)V │ │ +431860: 1d01 |0000: monitor-enter v1 │ │ +431862: 3802 2d00 |0001: if-eqz v2, 002e // +002d │ │ +431866: 3803 2b00 |0003: if-eqz v3, 002e // +002b │ │ +43186a: 3904 0300 |0005: if-nez v4, 0008 // +0003 │ │ +43186e: 2827 |0007: goto 002e // +0027 │ │ +431870: 5410 365f |0008: iget-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ +431874: 3900 0900 |000a: if-nez v0, 0013 // +0009 │ │ +431878: 2200 ab0b |000c: new-instance v0, Ljava/util/ArrayList; // type@0bab │ │ +43187c: 7010 9b5f 0000 |000e: invoke-direct {v0}, Ljava/util/ArrayList;.:()V // method@5f9b │ │ +431882: 5b10 365f |0011: iput-object v0, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ +431886: 2200 aa1a |0013: new-instance v0, Lorg/purple/smoke/MessageElement; // type@1aaa │ │ +43188a: 7010 b2bb 0000 |0015: invoke-direct {v0}, Lorg/purple/smoke/MessageElement;.:()V // method@bbb2 │ │ +431890: 5b04 f654 |0018: iput-object v4, v0, Lorg/purple/smoke/MessageElement;.m_id:Ljava/lang/String; // field@54f6 │ │ +431894: 5b02 f854 |001a: iput-object v2, v0, Lorg/purple/smoke/MessageElement;.m_message:Ljava/lang/String; // field@54f8 │ │ +431898: 5b03 fb54 |001c: iput-object v3, v0, Lorg/purple/smoke/MessageElement;.m_name:Ljava/lang/String; // field@54fb │ │ +43189c: 5c05 fd54 |001e: iput-boolean v5, v0, Lorg/purple/smoke/MessageElement;.m_purple:Z // field@54fd │ │ +4318a0: 5a06 fe54 |0020: iput-wide v6, v0, Lorg/purple/smoke/MessageElement;.m_sequence:J // field@54fe │ │ +4318a4: 5a08 ff54 |0022: iput-wide v8, v0, Lorg/purple/smoke/MessageElement;.m_timestamp:J // field@54ff │ │ +4318a8: 5412 365f |0024: iget-object v2, v1, Lorg/purple/smoke/State;.m_chatMessages:Ljava/util/ArrayList; // field@5f36 │ │ +4318ac: 6e20 9f5f 0200 |0026: invoke-virtual {v2, v0}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9f │ │ +4318b2: 1e01 |0029: monitor-exit v1 │ │ +4318b4: 0e00 |002a: return-void │ │ +4318b6: 0d02 |002b: move-exception v2 │ │ +4318b8: 1e01 |002c: monitor-exit v1 │ │ +4318ba: 2702 |002d: throw v2 │ │ +4318bc: 1e01 |002e: monitor-exit v1 │ │ +4318be: 0e00 |002f: return-void │ │ catches : 1 │ │ 0x0008 - 0x0029 │ │ -> 0x002b │ │ positions : │ │ 0x0008 line=451 │ │ 0x000c line=452 │ │ 0x0013 line=454 │ │ @@ -743822,46 +743821,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 │ │ -4311e8: |[4311e8] org.purple.smoke.State.nameOfFireFromView:(Landroid/view/View;)Ljava/lang/String; │ │ -4311f8: 5440 385f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -4311fc: 1a01 0000 |0002: const-string v1, "" // string@0000 │ │ -431200: 3800 3600 |0004: if-eqz v0, 003a // +0036 │ │ -431204: 3905 0300 |0006: if-nez v5, 0009 // +0003 │ │ -431208: 2832 |0008: goto 003a // +0032 │ │ -43120a: 7210 5960 0000 |0009: invoke-interface {v0}, Ljava/util/Map;.entrySet:()Ljava/util/Set; // method@6059 │ │ -431210: 0c00 |000c: move-result-object v0 │ │ -431212: 7210 7560 0000 |000d: invoke-interface {v0}, Ljava/util/Set;.iterator:()Ljava/util/Iterator; // method@6075 │ │ -431218: 0c00 |0010: move-result-object v0 │ │ -43121a: 7210 1d60 0000 |0011: invoke-interface {v0}, Ljava/util/Iterator;.hasNext:()Z // method@601d │ │ -431220: 0a02 |0014: move-result v2 │ │ -431222: 3802 2500 |0015: if-eqz v2, 003a // +0025 │ │ -431226: 7210 1e60 0000 |0017: invoke-interface {v0}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601e │ │ -43122c: 0c02 |001a: move-result-object v2 │ │ -43122e: 1f02 be0b |001b: check-cast v2, Ljava/util/Map$Entry; // type@0bbe │ │ -431232: 7210 5660 0200 |001d: invoke-interface {v2}, Ljava/util/Map$Entry;.getValue:()Ljava/lang/Object; // method@6056 │ │ -431238: 0c03 |0020: move-result-object v3 │ │ -43123a: 3803 f0ff |0021: if-eqz v3, 0011 // -0010 │ │ -43123e: 7210 5660 0200 |0023: invoke-interface {v2}, Ljava/util/Map$Entry;.getValue:()Ljava/lang/Object; // method@6056 │ │ -431244: 0c03 |0026: move-result-object v3 │ │ -431246: 1f03 801a |0027: check-cast v3, Lorg/purple/smoke/FireChannel; // type@1a80 │ │ -43124a: 6e10 b7ba 0300 |0029: invoke-virtual {v3}, Lorg/purple/smoke/FireChannel;.view:()Landroid/view/View; // method@bab7 │ │ -431250: 0c03 |002c: move-result-object v3 │ │ -431252: 3353 e4ff |002d: if-ne v3, v5, 0011 // -001c │ │ -431256: 7210 5660 0200 |002f: invoke-interface {v2}, Ljava/util/Map$Entry;.getValue:()Ljava/lang/Object; // method@6056 │ │ -43125c: 0c05 |0032: move-result-object v5 │ │ -43125e: 1f05 801a |0033: check-cast v5, Lorg/purple/smoke/FireChannel; // type@1a80 │ │ -431262: 6e10 b0ba 0500 |0035: invoke-virtual {v5}, Lorg/purple/smoke/FireChannel;.name:()Ljava/lang/String; // method@bab0 │ │ -431268: 0c05 |0038: move-result-object v5 │ │ -43126a: 1105 |0039: return-object v5 │ │ -43126c: 1101 |003a: return-object v1 │ │ +4311e4: |[4311e4] org.purple.smoke.State.nameOfFireFromView:(Landroid/view/View;)Ljava/lang/String; │ │ +4311f4: 5440 385f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +4311f8: 1a01 0000 |0002: const-string v1, "" // string@0000 │ │ +4311fc: 3800 3600 |0004: if-eqz v0, 003a // +0036 │ │ +431200: 3905 0300 |0006: if-nez v5, 0009 // +0003 │ │ +431204: 2832 |0008: goto 003a // +0032 │ │ +431206: 7210 5960 0000 |0009: invoke-interface {v0}, Ljava/util/Map;.entrySet:()Ljava/util/Set; // method@6059 │ │ +43120c: 0c00 |000c: move-result-object v0 │ │ +43120e: 7210 7560 0000 |000d: invoke-interface {v0}, Ljava/util/Set;.iterator:()Ljava/util/Iterator; // method@6075 │ │ +431214: 0c00 |0010: move-result-object v0 │ │ +431216: 7210 1d60 0000 |0011: invoke-interface {v0}, Ljava/util/Iterator;.hasNext:()Z // method@601d │ │ +43121c: 0a02 |0014: move-result v2 │ │ +43121e: 3802 2500 |0015: if-eqz v2, 003a // +0025 │ │ +431222: 7210 1e60 0000 |0017: invoke-interface {v0}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601e │ │ +431228: 0c02 |001a: move-result-object v2 │ │ +43122a: 1f02 be0b |001b: check-cast v2, Ljava/util/Map$Entry; // type@0bbe │ │ +43122e: 7210 5660 0200 |001d: invoke-interface {v2}, Ljava/util/Map$Entry;.getValue:()Ljava/lang/Object; // method@6056 │ │ +431234: 0c03 |0020: move-result-object v3 │ │ +431236: 3803 f0ff |0021: if-eqz v3, 0011 // -0010 │ │ +43123a: 7210 5660 0200 |0023: invoke-interface {v2}, Ljava/util/Map$Entry;.getValue:()Ljava/lang/Object; // method@6056 │ │ +431240: 0c03 |0026: move-result-object v3 │ │ +431242: 1f03 801a |0027: check-cast v3, Lorg/purple/smoke/FireChannel; // type@1a80 │ │ +431246: 6e10 b7ba 0300 |0029: invoke-virtual {v3}, Lorg/purple/smoke/FireChannel;.view:()Landroid/view/View; // method@bab7 │ │ +43124c: 0c03 |002c: move-result-object v3 │ │ +43124e: 3353 e4ff |002d: if-ne v3, v5, 0011 // -001c │ │ +431252: 7210 5660 0200 |002f: invoke-interface {v2}, Ljava/util/Map$Entry;.getValue:()Ljava/lang/Object; // method@6056 │ │ +431258: 0c05 |0032: move-result-object v5 │ │ +43125a: 1f05 801a |0033: check-cast v5, Lorg/purple/smoke/FireChannel; // type@1a80 │ │ +43125e: 6e10 b0ba 0500 |0035: invoke-virtual {v5}, Lorg/purple/smoke/FireChannel;.name:()Ljava/lang/String; // method@bab0 │ │ +431264: 0c05 |0038: move-result-object v5 │ │ +431266: 1105 |0039: return-object v5 │ │ +431268: 1101 |003a: return-object v1 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=235 │ │ 0x0009 line=238 │ │ 0x001d line=239 │ │ 0x0023 line=240 │ │ 0x002f line=241 │ │ @@ -743874,44 +743873,44 @@ │ │ type : '()Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 56 16-bit code units │ │ -430e68: |[430e68] org.purple.smoke.State.neighborsEcho:()Z │ │ -430e78: 5440 355f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430e7c: 6e10 ee60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -430e82: 0c00 |0005: move-result-object v0 │ │ -430e84: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ -430e8a: 1200 |0009: const/4 v0, #int 0 // #0 │ │ -430e8c: 5441 345f |000a: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -430e90: 1a02 f48b |000c: const-string v2, "neighbors_echo" // string@8bf4 │ │ -430e94: 1303 3000 |000e: const/16 v3, #int 48 // #30 │ │ -430e98: 6e30 c604 2103 |0010: invoke-virtual {v1, v2, v3}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ -430e9e: 0a01 |0013: move-result v1 │ │ -430ea0: 1302 3100 |0014: const/16 v2, #int 49 // #31 │ │ -430ea4: 3321 0300 |0016: if-ne v1, v2, 0019 // +0003 │ │ -430ea8: 1210 |0018: const/4 v0, #int 1 // #1 │ │ -430eaa: 5441 355f |0019: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430eae: 6e10 ee60 0100 |001b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -430eb4: 0c01 |001e: move-result-object v1 │ │ -430eb6: 6e10 ea60 0100 |001f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -430ebc: 0f00 |0022: return v0 │ │ -430ebe: 0d00 |0023: move-exception v0 │ │ -430ec0: 5441 355f |0024: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430ec4: 6e10 ee60 0100 |0026: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -430eca: 0c01 |0029: move-result-object v1 │ │ -430ecc: 6e10 ea60 0100 |002a: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -430ed2: 2700 |002d: throw v0 │ │ -430ed4: 5441 355f |002e: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -430ed8: 6e10 ee60 0100 |0030: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -430ede: 0c01 |0033: move-result-object v1 │ │ -430ee0: 6e10 ea60 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -430ee6: 0f00 |0037: return v0 │ │ +430e64: |[430e64] org.purple.smoke.State.neighborsEcho:()Z │ │ +430e74: 5440 355f |0000: iget-object v0, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430e78: 6e10 ee60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +430e7e: 0c00 |0005: move-result-object v0 │ │ +430e80: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ +430e86: 1200 |0009: const/4 v0, #int 0 // #0 │ │ +430e88: 5441 345f |000a: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +430e8c: 1a02 f48b |000c: const-string v2, "neighbors_echo" // string@8bf4 │ │ +430e90: 1303 3000 |000e: const/16 v3, #int 48 // #30 │ │ +430e94: 6e30 c604 2103 |0010: invoke-virtual {v1, v2, v3}, Landroid/os/Bundle;.getChar:(Ljava/lang/String;C)C // method@04c6 │ │ +430e9a: 0a01 |0013: move-result v1 │ │ +430e9c: 1302 3100 |0014: const/16 v2, #int 49 // #31 │ │ +430ea0: 3321 0300 |0016: if-ne v1, v2, 0019 // +0003 │ │ +430ea4: 1210 |0018: const/4 v0, #int 1 // #1 │ │ +430ea6: 5441 355f |0019: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430eaa: 6e10 ee60 0100 |001b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +430eb0: 0c01 |001e: move-result-object v1 │ │ +430eb2: 6e10 ea60 0100 |001f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +430eb8: 0f00 |0022: return v0 │ │ +430eba: 0d00 |0023: move-exception v0 │ │ +430ebc: 5441 355f |0024: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430ec0: 6e10 ee60 0100 |0026: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +430ec6: 0c01 |0029: move-result-object v1 │ │ +430ec8: 6e10 ea60 0100 |002a: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +430ece: 2700 |002d: throw v0 │ │ +430ed0: 5441 355f |002e: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +430ed4: 6e10 ee60 0100 |0030: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +430eda: 0c01 |0033: move-result-object v1 │ │ +430edc: 6e10 ea60 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +430ee2: 0f00 |0037: return v0 │ │ catches : 1 │ │ 0x000a - 0x0014 │ │ Ljava/lang/Exception; -> 0x002e │ │ -> 0x0023 │ │ positions : │ │ 0x0000 line=315 │ │ 0x000a line=319 │ │ @@ -743926,31 +743925,31 @@ │ │ type : '()Ljava/util/ArrayList;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 32 16-bit code units │ │ -4312cc: |[4312cc] org.purple.smoke.State.participants:()Ljava/util/ArrayList; │ │ -4312dc: 5420 3a5f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -4312e0: 6e10 ee60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -4312e6: 0c00 |0005: move-result-object v0 │ │ -4312e8: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ -4312ee: 5420 395f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ -4312f2: 5421 3a5f |000b: iget-object v1, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -4312f6: 6e10 ee60 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -4312fc: 0c01 |0010: move-result-object v1 │ │ -4312fe: 6e10 ea60 0100 |0011: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -431304: 1100 |0014: return-object v0 │ │ -431306: 0d00 |0015: move-exception v0 │ │ -431308: 5421 3a5f |0016: iget-object v1, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -43130c: 6e10 ee60 0100 |0018: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -431312: 0c01 |001b: move-result-object v1 │ │ -431314: 6e10 ea60 0100 |001c: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -43131a: 2700 |001f: throw v0 │ │ +4312c8: |[4312c8] org.purple.smoke.State.participants:()Ljava/util/ArrayList; │ │ +4312d8: 5420 3a5f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +4312dc: 6e10 ee60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +4312e2: 0c00 |0005: move-result-object v0 │ │ +4312e4: 6e10 e960 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ +4312ea: 5420 395f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ +4312ee: 5421 3a5f |000b: iget-object v1, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +4312f2: 6e10 ee60 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +4312f8: 0c01 |0010: move-result-object v1 │ │ +4312fa: 6e10 ea60 0100 |0011: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +431300: 1100 |0014: return-object v0 │ │ +431302: 0d00 |0015: move-exception v0 │ │ +431304: 5421 3a5f |0016: iget-object v1, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +431308: 6e10 ee60 0100 |0018: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +43130e: 0c01 |001b: move-result-object v1 │ │ +431310: 6e10 ea60 0100 |001c: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +431316: 2700 |001f: throw v0 │ │ catches : 1 │ │ 0x0009 - 0x000b │ │ -> 0x0015 │ │ positions : │ │ 0x0000 line=137 │ │ 0x0009 line=141 │ │ 0x000b line=145 │ │ @@ -743963,62 +743962,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 │ │ -431328: |[431328] org.purple.smoke.State.participantsNames:(Ljava/lang/String;)Ljava/util/ArrayList; │ │ -431338: 2200 ab0b |0000: new-instance v0, Ljava/util/ArrayList; // type@0bab │ │ -43133c: 7010 9b5f 0000 |0002: invoke-direct {v0}, Ljava/util/ArrayList;.:()V // method@5f9b │ │ -431342: 5451 3a5f |0005: iget-object v1, v5, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -431346: 6e10 ee60 0100 |0007: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -43134c: 0c01 |000a: move-result-object v1 │ │ -43134e: 6e10 e960 0100 |000b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ -431354: 5451 395f |000e: iget-object v1, v5, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ -431358: 6e10 a95f 0100 |0010: invoke-virtual {v1}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa9 │ │ -43135e: 0c01 |0013: move-result-object v1 │ │ -431360: 7210 1d60 0100 |0014: invoke-interface {v1}, Ljava/util/Iterator;.hasNext:()Z // method@601d │ │ -431366: 0a02 |0017: move-result v2 │ │ -431368: 3802 3300 |0018: if-eqz v2, 004b // +0033 │ │ -43136c: 7210 1e60 0100 |001a: invoke-interface {v1}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601e │ │ -431372: 0c02 |001d: move-result-object v2 │ │ -431374: 1f02 c01a |001e: check-cast v2, Lorg/purple/smoke/ParticipantElement; // type@1ac0 │ │ -431378: 3802 f4ff |0020: if-eqz v2, 0014 // -000c │ │ -43137c: 5423 8255 |0022: iget-object v3, v2, Lorg/purple/smoke/ParticipantElement;.m_sipHashId:Ljava/lang/String; // field@5582 │ │ -431380: 6e20 b85c 6300 |0024: invoke-virtual {v3, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -431386: 0a03 |0027: move-result v3 │ │ -431388: 3903 ecff |0028: if-nez v3, 0014 // -0014 │ │ -43138c: 2203 f10a |002a: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ -431390: 7010 ee5c 0300 |002c: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -431396: 5424 8055 |002f: iget-object v4, v2, Lorg/purple/smoke/ParticipantElement;.m_name:Ljava/lang/String; // field@5580 │ │ -43139a: 6e20 f95c 4300 |0031: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4313a0: 1a04 9800 |0034: const-string v4, " (" // string@0098 │ │ -4313a4: 6e20 f95c 4300 |0036: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4313aa: 5422 8255 |0039: iget-object v2, v2, Lorg/purple/smoke/ParticipantElement;.m_sipHashId:Ljava/lang/String; // field@5582 │ │ -4313ae: 6e20 f95c 2300 |003b: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4313b4: 1a02 ec03 |003e: const-string v2, ")" // string@03ec │ │ -4313b8: 6e20 f95c 2300 |0040: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4313be: 6e10 035d 0300 |0043: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4313c4: 0c02 |0046: move-result-object v2 │ │ -4313c6: 6e20 9f5f 2000 |0047: invoke-virtual {v0, v2}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9f │ │ -4313cc: 28ca |004a: goto 0014 // -0036 │ │ -4313ce: 5456 3a5f |004b: iget-object v6, v5, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -4313d2: 6e10 ee60 0600 |004d: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -4313d8: 0c06 |0050: move-result-object v6 │ │ -4313da: 6e10 ea60 0600 |0051: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -4313e0: 1100 |0054: return-object v0 │ │ -4313e2: 0d06 |0055: move-exception v6 │ │ -4313e4: 5450 3a5f |0056: iget-object v0, v5, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -4313e8: 6e10 ee60 0000 |0058: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -4313ee: 0c00 |005b: move-result-object v0 │ │ -4313f0: 6e10 ea60 0000 |005c: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -4313f6: 2802 |005f: goto 0061 // +0002 │ │ -4313f8: 2706 |0060: throw v6 │ │ -4313fa: 28ff |0061: goto 0060 // -0001 │ │ +431324: |[431324] org.purple.smoke.State.participantsNames:(Ljava/lang/String;)Ljava/util/ArrayList; │ │ +431334: 2200 ab0b |0000: new-instance v0, Ljava/util/ArrayList; // type@0bab │ │ +431338: 7010 9b5f 0000 |0002: invoke-direct {v0}, Ljava/util/ArrayList;.:()V // method@5f9b │ │ +43133e: 5451 3a5f |0005: iget-object v1, v5, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +431342: 6e10 ee60 0100 |0007: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +431348: 0c01 |000a: move-result-object v1 │ │ +43134a: 6e10 e960 0100 |000b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ +431350: 5451 395f |000e: iget-object v1, v5, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ +431354: 6e10 a95f 0100 |0010: invoke-virtual {v1}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa9 │ │ +43135a: 0c01 |0013: move-result-object v1 │ │ +43135c: 7210 1d60 0100 |0014: invoke-interface {v1}, Ljava/util/Iterator;.hasNext:()Z // method@601d │ │ +431362: 0a02 |0017: move-result v2 │ │ +431364: 3802 3300 |0018: if-eqz v2, 004b // +0033 │ │ +431368: 7210 1e60 0100 |001a: invoke-interface {v1}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601e │ │ +43136e: 0c02 |001d: move-result-object v2 │ │ +431370: 1f02 c01a |001e: check-cast v2, Lorg/purple/smoke/ParticipantElement; // type@1ac0 │ │ +431374: 3802 f4ff |0020: if-eqz v2, 0014 // -000c │ │ +431378: 5423 8255 |0022: iget-object v3, v2, Lorg/purple/smoke/ParticipantElement;.m_sipHashId:Ljava/lang/String; // field@5582 │ │ +43137c: 6e20 b85c 6300 |0024: invoke-virtual {v3, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +431382: 0a03 |0027: move-result v3 │ │ +431384: 3903 ecff |0028: if-nez v3, 0014 // -0014 │ │ +431388: 2203 f10a |002a: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ +43138c: 7010 ee5c 0300 |002c: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +431392: 5424 8055 |002f: iget-object v4, v2, Lorg/purple/smoke/ParticipantElement;.m_name:Ljava/lang/String; // field@5580 │ │ +431396: 6e20 f95c 4300 |0031: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43139c: 1a04 9800 |0034: const-string v4, " (" // string@0098 │ │ +4313a0: 6e20 f95c 4300 |0036: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4313a6: 5422 8255 |0039: iget-object v2, v2, Lorg/purple/smoke/ParticipantElement;.m_sipHashId:Ljava/lang/String; // field@5582 │ │ +4313aa: 6e20 f95c 2300 |003b: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4313b0: 1a02 ec03 |003e: const-string v2, ")" // string@03ec │ │ +4313b4: 6e20 f95c 2300 |0040: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4313ba: 6e10 035d 0300 |0043: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4313c0: 0c02 |0046: move-result-object v2 │ │ +4313c2: 6e20 9f5f 2000 |0047: invoke-virtual {v0, v2}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9f │ │ +4313c8: 28ca |004a: goto 0014 // -0036 │ │ +4313ca: 5456 3a5f |004b: iget-object v6, v5, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +4313ce: 6e10 ee60 0600 |004d: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +4313d4: 0c06 |0050: move-result-object v6 │ │ +4313d6: 6e10 ea60 0600 |0051: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +4313dc: 1100 |0054: return-object v0 │ │ +4313de: 0d06 |0055: move-exception v6 │ │ +4313e0: 5450 3a5f |0056: iget-object v0, v5, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +4313e4: 6e10 ee60 0000 |0058: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +4313ea: 0c00 |005b: move-result-object v0 │ │ +4313ec: 6e10 ea60 0000 |005c: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +4313f2: 2802 |005f: goto 0061 // +0002 │ │ +4313f4: 2706 |0060: throw v6 │ │ +4313f6: 28ff |0061: goto 0060 // -0001 │ │ catches : 1 │ │ 0x000e - 0x004a │ │ -> 0x0055 │ │ positions : │ │ 0x0000 line=151 │ │ 0x0005 line=153 │ │ 0x000e line=157 │ │ @@ -744037,19 +744036,19 @@ │ │ type : '()Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -430ef8: |[430ef8] org.purple.smoke.State.queryTimerServer:()Z │ │ -430f08: 5410 3c5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_queryTimerServer:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3c │ │ -430f0c: 6e10 da60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -430f12: 0a00 |0005: move-result v0 │ │ -430f14: 0f00 |0006: return v0 │ │ +430ef4: |[430ef4] org.purple.smoke.State.queryTimerServer:()Z │ │ +430f04: 5410 3c5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_queryTimerServer:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3c │ │ +430f08: 6e10 da60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +430f0e: 0a00 |0005: move-result v0 │ │ +430f10: 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;) │ │ @@ -744057,40 +744056,40 @@ │ │ type : '(I)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 53 16-bit code units │ │ -431918: |[431918] org.purple.smoke.State.removeChatCheckBoxOid:(I)V │ │ -431928: 5430 355f |0000: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -43192c: 6e10 ef60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431932: 0c00 |0005: move-result-object v0 │ │ -431934: 6e10 eb60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ -43193a: 5430 345f |0009: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -43193e: 2201 f10a |000b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -431942: 7010 ee5c 0100 |000d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -431948: 1a02 855e |0010: const-string v2, "chat_checkbox_" // string@5e85 │ │ -43194c: 6e20 f95c 2100 |0012: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -431952: 6e20 f45c 4100 |0015: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ -431958: 6e10 035d 0100 |0018: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -43195e: 0c04 |001b: move-result-object v4 │ │ -431960: 6e20 ea04 4000 |001c: invoke-virtual {v0, v4}, Landroid/os/Bundle;.remove:(Ljava/lang/String;)V // method@04ea │ │ -431966: 280c |001f: goto 002b // +000c │ │ -431968: 0d04 |0020: move-exception v4 │ │ -43196a: 5430 355f |0021: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -43196e: 6e10 ef60 0000 |0023: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431974: 0c00 |0026: move-result-object v0 │ │ -431976: 6e10 ec60 0000 |0027: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -43197c: 2704 |002a: throw v4 │ │ -43197e: 5434 355f |002b: iget-object v4, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431982: 6e10 ef60 0400 |002d: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431988: 0c04 |0030: move-result-object v4 │ │ -43198a: 6e10 ec60 0400 |0031: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431990: 0e00 |0034: return-void │ │ +431914: |[431914] org.purple.smoke.State.removeChatCheckBoxOid:(I)V │ │ +431924: 5430 355f |0000: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431928: 6e10 ef60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +43192e: 0c00 |0005: move-result-object v0 │ │ +431930: 6e10 eb60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ +431936: 5430 345f |0009: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +43193a: 2201 f10a |000b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +43193e: 7010 ee5c 0100 |000d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +431944: 1a02 855e |0010: const-string v2, "chat_checkbox_" // string@5e85 │ │ +431948: 6e20 f95c 2100 |0012: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43194e: 6e20 f45c 4100 |0015: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ +431954: 6e10 035d 0100 |0018: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +43195a: 0c04 |001b: move-result-object v4 │ │ +43195c: 6e20 ea04 4000 |001c: invoke-virtual {v0, v4}, Landroid/os/Bundle;.remove:(Ljava/lang/String;)V // method@04ea │ │ +431962: 280c |001f: goto 002b // +000c │ │ +431964: 0d04 |0020: move-exception v4 │ │ +431966: 5430 355f |0021: iget-object v0, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +43196a: 6e10 ef60 0000 |0023: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431970: 0c00 |0026: move-result-object v0 │ │ +431972: 6e10 ec60 0000 |0027: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431978: 2704 |002a: throw v4 │ │ +43197a: 5434 355f |002b: iget-object v4, v3, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +43197e: 6e10 ef60 0400 |002d: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431984: 0c04 |0030: move-result-object v4 │ │ +431986: 6e10 ec60 0400 |0031: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +43198c: 0e00 |0034: return-void │ │ catches : 1 │ │ 0x0009 - 0x001f │ │ Ljava/lang/Exception; -> 0x002b │ │ -> 0x0020 │ │ positions : │ │ 0x0000 line=532 │ │ 0x0009 line=536 │ │ @@ -744106,20 +744105,20 @@ │ │ type : '(Ljava/lang/String;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 9 16-bit code units │ │ -4319a4: |[4319a4] org.purple.smoke.State.removeFireChannel:(Ljava/lang/String;)V │ │ -4319b4: 5410 385f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -4319b8: 3900 0300 |0002: if-nez v0, 0005 // +0003 │ │ -4319bc: 0e00 |0004: return-void │ │ -4319be: 7220 6160 2000 |0005: invoke-interface {v0, v2}, Ljava/util/Map;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@6061 │ │ -4319c4: 0e00 |0008: return-void │ │ +4319a0: |[4319a0] org.purple.smoke.State.removeFireChannel:(Ljava/lang/String;)V │ │ +4319b0: 5410 385f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +4319b4: 3900 0300 |0002: if-nez v0, 0005 // +0003 │ │ +4319b8: 0e00 |0004: return-void │ │ +4319ba: 7220 6160 2000 |0005: invoke-interface {v0, v2}, Ljava/util/Map;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@6061 │ │ +4319c0: 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; │ │ @@ -744129,33 +744128,33 @@ │ │ type : '(Ljava/lang/String;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 36 16-bit code units │ │ -4319c8: |[4319c8] org.purple.smoke.State.removeKey:(Ljava/lang/String;)V │ │ -4319d8: 5410 355f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4319dc: 6e10 ef60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -4319e2: 0c00 |0005: move-result-object v0 │ │ -4319e4: 6e10 eb60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ -4319ea: 5410 345f |0009: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -4319ee: 6e20 ea04 2000 |000b: invoke-virtual {v0, v2}, Landroid/os/Bundle;.remove:(Ljava/lang/String;)V // method@04ea │ │ -4319f4: 280c |000e: goto 001a // +000c │ │ -4319f6: 0d02 |000f: move-exception v2 │ │ -4319f8: 5410 355f |0010: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4319fc: 6e10 ef60 0000 |0012: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431a02: 0c00 |0015: move-result-object v0 │ │ -431a04: 6e10 ec60 0000 |0016: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431a0a: 2702 |0019: throw v2 │ │ -431a0c: 5412 355f |001a: iget-object v2, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431a10: 6e10 ef60 0200 |001c: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431a16: 0c02 |001f: move-result-object v2 │ │ -431a18: 6e10 ec60 0200 |0020: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431a1e: 0e00 |0023: return-void │ │ +4319c4: |[4319c4] org.purple.smoke.State.removeKey:(Ljava/lang/String;)V │ │ +4319d4: 5410 355f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4319d8: 6e10 ef60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +4319de: 0c00 |0005: move-result-object v0 │ │ +4319e0: 6e10 eb60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ +4319e6: 5410 345f |0009: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +4319ea: 6e20 ea04 2000 |000b: invoke-virtual {v0, v2}, Landroid/os/Bundle;.remove:(Ljava/lang/String;)V // method@04ea │ │ +4319f0: 280c |000e: goto 001a // +000c │ │ +4319f2: 0d02 |000f: move-exception v2 │ │ +4319f4: 5410 355f |0010: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4319f8: 6e10 ef60 0000 |0012: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +4319fe: 0c00 |0015: move-result-object v0 │ │ +431a00: 6e10 ec60 0000 |0016: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431a06: 2702 |0019: throw v2 │ │ +431a08: 5412 355f |001a: iget-object v2, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431a0c: 6e10 ef60 0200 |001c: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431a12: 0c02 |001f: move-result-object v2 │ │ +431a14: 6e10 ec60 0200 |0020: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431a1a: 0e00 |0023: return-void │ │ catches : 1 │ │ 0x0009 - 0x000e │ │ Ljava/lang/Exception; -> 0x001a │ │ -> 0x000f │ │ positions : │ │ 0x0000 line=557 │ │ 0x0009 line=561 │ │ @@ -744171,25 +744170,25 @@ │ │ type : '(I)V' │ │ access : 0x20001 (PUBLIC DECLARED_SYNCHRONIZED) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 15 16-bit code units │ │ -431a30: |[431a30] org.purple.smoke.State.removeSteamDetailsState:(I)V │ │ -431a40: 1d01 |0000: monitor-enter v1 │ │ -431a42: 5410 3f5f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ -431a46: 7110 605c 0200 |0003: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ -431a4c: 0c02 |0006: move-result-object v2 │ │ -431a4e: 7220 6160 2000 |0007: invoke-interface {v0, v2}, Ljava/util/Map;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@6061 │ │ -431a54: 1e01 |000a: monitor-exit v1 │ │ -431a56: 0e00 |000b: return-void │ │ -431a58: 0d02 |000c: move-exception v2 │ │ -431a5a: 1e01 |000d: monitor-exit v1 │ │ -431a5c: 2702 |000e: throw v2 │ │ +431a2c: |[431a2c] org.purple.smoke.State.removeSteamDetailsState:(I)V │ │ +431a3c: 1d01 |0000: monitor-enter v1 │ │ +431a3e: 5410 3f5f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ +431a42: 7110 605c 0200 |0003: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ +431a48: 0c02 |0006: move-result-object v2 │ │ +431a4a: 7220 6160 2000 |0007: invoke-interface {v0, v2}, Ljava/util/Map;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@6061 │ │ +431a50: 1e01 |000a: monitor-exit v1 │ │ +431a52: 0e00 |000b: return-void │ │ +431a54: 0d02 |000c: move-exception v2 │ │ +431a56: 1e01 |000d: monitor-exit v1 │ │ +431a58: 2702 |000e: throw v2 │ │ catches : 1 │ │ 0x0001 - 0x000a │ │ -> 0x000c │ │ positions : │ │ 0x0001 line=467 │ │ 0x000a line=468 │ │ locals : │ │ @@ -744201,55 +744200,55 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 87 16-bit code units │ │ -431a6c: |[431a6c] org.purple.smoke.State.reset:()V │ │ -431a7c: 6e10 6abd 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/State;.clearChatLog:()V // method@bd6a │ │ -431a82: 6e10 6cbd 0200 |0003: invoke-virtual {v2}, Lorg/purple/smoke/State;.clearSelectedSwitches:()V // method@bd6c │ │ -431a88: 6e10 6dbd 0200 |0006: invoke-virtual {v2}, Lorg/purple/smoke/State;.clearSteamDetailsStates:()V // method@bd6d │ │ -431a8e: 5420 355f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431a92: 6e10 ef60 0000 |000b: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431a98: 0c00 |000e: move-result-object v0 │ │ -431a9a: 6e10 eb60 0000 |000f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ -431aa0: 5420 345f |0012: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431aa4: 6e10 bf04 0000 |0014: invoke-virtual {v0}, Landroid/os/Bundle;.clear:()V // method@04bf │ │ -431aaa: 5420 355f |0017: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431aae: 6e10 ef60 0000 |0019: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431ab4: 0c00 |001c: move-result-object v0 │ │ -431ab6: 6e10 ec60 0000 |001d: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431abc: 5420 385f |0020: iget-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ -431ac0: 3800 0500 |0022: if-eqz v0, 0027 // +0005 │ │ -431ac4: 7210 5760 0000 |0024: invoke-interface {v0}, Ljava/util/Map;.clear:()V // method@6057 │ │ -431aca: 5420 3a5f |0027: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -431ace: 6e10 ef60 0000 |0029: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431ad4: 0c00 |002c: move-result-object v0 │ │ -431ad6: 6e10 eb60 0000 |002d: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ -431adc: 5420 395f |0030: iget-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ -431ae0: 3800 0500 |0032: if-eqz v0, 0037 // +0005 │ │ -431ae4: 6e10 a15f 0000 |0034: invoke-virtual {v0}, Ljava/util/ArrayList;.clear:()V // method@5fa1 │ │ -431aea: 5420 3a5f |0037: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -431aee: 6e10 ef60 0000 |0039: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431af4: 0c00 |003c: move-result-object v0 │ │ -431af6: 6e10 ec60 0000 |003d: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431afc: 0e00 |0040: return-void │ │ -431afe: 0d00 |0041: move-exception v0 │ │ -431b00: 5421 3a5f |0042: iget-object v1, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ -431b04: 6e10 ef60 0100 |0044: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431b0a: 0c01 |0047: move-result-object v1 │ │ -431b0c: 6e10 ec60 0100 |0048: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431b12: 2700 |004b: throw v0 │ │ -431b14: 0d00 |004c: move-exception v0 │ │ -431b16: 5421 355f |004d: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431b1a: 6e10 ef60 0100 |004f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431b20: 0c01 |0052: move-result-object v1 │ │ -431b22: 6e10 ec60 0100 |0053: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431b28: 2700 |0056: throw v0 │ │ +431a68: |[431a68] org.purple.smoke.State.reset:()V │ │ +431a78: 6e10 6abd 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/State;.clearChatLog:()V // method@bd6a │ │ +431a7e: 6e10 6cbd 0200 |0003: invoke-virtual {v2}, Lorg/purple/smoke/State;.clearSelectedSwitches:()V // method@bd6c │ │ +431a84: 6e10 6dbd 0200 |0006: invoke-virtual {v2}, Lorg/purple/smoke/State;.clearSteamDetailsStates:()V // method@bd6d │ │ +431a8a: 5420 355f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431a8e: 6e10 ef60 0000 |000b: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431a94: 0c00 |000e: move-result-object v0 │ │ +431a96: 6e10 eb60 0000 |000f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ +431a9c: 5420 345f |0012: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431aa0: 6e10 bf04 0000 |0014: invoke-virtual {v0}, Landroid/os/Bundle;.clear:()V // method@04bf │ │ +431aa6: 5420 355f |0017: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431aaa: 6e10 ef60 0000 |0019: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431ab0: 0c00 |001c: move-result-object v0 │ │ +431ab2: 6e10 ec60 0000 |001d: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431ab8: 5420 385f |0020: iget-object v0, v2, Lorg/purple/smoke/State;.m_fireChannels:Ljava/util/Map; // field@5f38 │ │ +431abc: 3800 0500 |0022: if-eqz v0, 0027 // +0005 │ │ +431ac0: 7210 5760 0000 |0024: invoke-interface {v0}, Ljava/util/Map;.clear:()V // method@6057 │ │ +431ac6: 5420 3a5f |0027: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +431aca: 6e10 ef60 0000 |0029: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431ad0: 0c00 |002c: move-result-object v0 │ │ +431ad2: 6e10 eb60 0000 |002d: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ +431ad8: 5420 395f |0030: iget-object v0, v2, Lorg/purple/smoke/State;.m_participants:Ljava/util/ArrayList; // field@5f39 │ │ +431adc: 3800 0500 |0032: if-eqz v0, 0037 // +0005 │ │ +431ae0: 6e10 a15f 0000 |0034: invoke-virtual {v0}, Ljava/util/ArrayList;.clear:()V // method@5fa1 │ │ +431ae6: 5420 3a5f |0037: iget-object v0, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +431aea: 6e10 ef60 0000 |0039: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431af0: 0c00 |003c: move-result-object v0 │ │ +431af2: 6e10 ec60 0000 |003d: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431af8: 0e00 |0040: return-void │ │ +431afa: 0d00 |0041: move-exception v0 │ │ +431afc: 5421 3a5f |0042: iget-object v1, v2, Lorg/purple/smoke/State;.m_participantsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f3a │ │ +431b00: 6e10 ef60 0100 |0044: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431b06: 0c01 |0047: move-result-object v1 │ │ +431b08: 6e10 ec60 0100 |0048: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431b0e: 2700 |004b: throw v0 │ │ +431b10: 0d00 |004c: move-exception v0 │ │ +431b12: 5421 355f |004d: iget-object v1, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431b16: 6e10 ef60 0100 |004f: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431b1c: 0c01 |0052: move-result-object v1 │ │ +431b1e: 6e10 ec60 0100 |0053: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431b24: 2700 |0056: throw v0 │ │ catches : 2 │ │ 0x0012 - 0x0017 │ │ -> 0x004c │ │ 0x0030 - 0x0037 │ │ -> 0x0041 │ │ positions : │ │ 0x0000 line=574 │ │ @@ -744275,26 +744274,26 @@ │ │ type : '(Ljava/lang/String;Z)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 23 16-bit code units │ │ -431b44: |[431b44] org.purple.smoke.State.selectSwitch:(Ljava/lang/String;Z)V │ │ -431b54: 3903 0700 |0000: if-nez v3, 0007 // +0007 │ │ -431b58: 5410 3d5f |0002: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ -431b5c: 7220 6160 2000 |0004: invoke-interface {v0, v2}, Ljava/util/Map;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@6061 │ │ -431b62: 6e10 c35c 0200 |0007: invoke-virtual {v2}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -431b68: 0a00 |000a: move-result v0 │ │ -431b6a: 3900 0b00 |000b: if-nez v0, 0016 // +000b │ │ -431b6e: 5410 3d5f |000d: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ -431b72: 7110 ff5b 0300 |000f: invoke-static {v3}, Ljava/lang/Boolean;.valueOf:(Z)Ljava/lang/Boolean; // method@5bff │ │ -431b78: 0c03 |0012: move-result-object v3 │ │ -431b7a: 7230 5f60 2003 |0013: invoke-interface {v0, v2, v3}, Ljava/util/Map;.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; // method@605f │ │ -431b80: 0e00 |0016: return-void │ │ +431b40: |[431b40] org.purple.smoke.State.selectSwitch:(Ljava/lang/String;Z)V │ │ +431b50: 3903 0700 |0000: if-nez v3, 0007 // +0007 │ │ +431b54: 5410 3d5f |0002: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ +431b58: 7220 6160 2000 |0004: invoke-interface {v0, v2}, Ljava/util/Map;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@6061 │ │ +431b5e: 6e10 c35c 0200 |0007: invoke-virtual {v2}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +431b64: 0a00 |000a: move-result v0 │ │ +431b66: 3900 0b00 |000b: if-nez v0, 0016 // +000b │ │ +431b6a: 5410 3d5f |000d: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ +431b6e: 7110 ff5b 0300 |000f: invoke-static {v3}, Ljava/lang/Boolean;.valueOf:(Z)Ljava/lang/Boolean; // method@5bff │ │ +431b74: 0c03 |0012: move-result-object v3 │ │ +431b76: 7230 5f60 2003 |0013: invoke-interface {v0, v2, v3}, Ljava/util/Map;.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; // method@605f │ │ +431b7c: 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; │ │ @@ -744306,29 +744305,29 @@ │ │ type : '(Ljava/lang/String;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 25 16-bit code units │ │ -430f18: |[430f18] org.purple.smoke.State.selectSwitch:(Ljava/lang/String;)Z │ │ -430f28: 3802 1700 |0000: if-eqz v2, 0017 // +0017 │ │ -430f2c: 5410 3d5f |0002: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ -430f30: 7220 5860 2000 |0004: invoke-interface {v0, v2}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6058 │ │ -430f36: 0a00 |0007: move-result v0 │ │ -430f38: 3800 0f00 |0008: if-eqz v0, 0017 // +000f │ │ -430f3c: 5410 3d5f |000a: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ -430f40: 7220 5b60 2000 |000c: invoke-interface {v0, v2}, Ljava/util/Map;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@605b │ │ -430f46: 0c02 |000f: move-result-object v2 │ │ -430f48: 1f02 c60a |0010: check-cast v2, Ljava/lang/Boolean; // type@0ac6 │ │ -430f4c: 6e10 fe5b 0200 |0012: invoke-virtual {v2}, Ljava/lang/Boolean;.booleanValue:()Z // method@5bfe │ │ -430f52: 0a02 |0015: move-result v2 │ │ -430f54: 0f02 |0016: return v2 │ │ -430f56: 1202 |0017: const/4 v2, #int 0 // #0 │ │ -430f58: 0f02 |0018: return v2 │ │ +430f14: |[430f14] org.purple.smoke.State.selectSwitch:(Ljava/lang/String;)Z │ │ +430f24: 3802 1700 |0000: if-eqz v2, 0017 // +0017 │ │ +430f28: 5410 3d5f |0002: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ +430f2c: 7220 5860 2000 |0004: invoke-interface {v0, v2}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6058 │ │ +430f32: 0a00 |0007: move-result v0 │ │ +430f34: 3800 0f00 |0008: if-eqz v0, 0017 // +000f │ │ +430f38: 5410 3d5f |000a: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ +430f3c: 7220 5b60 2000 |000c: invoke-interface {v0, v2}, Ljava/util/Map;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@605b │ │ +430f42: 0c02 |000f: move-result-object v2 │ │ +430f44: 1f02 c60a |0010: check-cast v2, Ljava/lang/Boolean; // type@0ac6 │ │ +430f48: 6e10 fe5b 0200 |0012: invoke-virtual {v2}, Ljava/lang/Boolean;.booleanValue:()Z // method@5bfe │ │ +430f4e: 0a02 |0015: move-result v2 │ │ +430f50: 0f02 |0016: return v2 │ │ +430f52: 1202 |0017: const/4 v2, #int 0 // #0 │ │ +430f54: 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; │ │ @@ -744338,19 +744337,19 @@ │ │ type : '()Ljava/util/Set;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -431420: |[431420] org.purple.smoke.State.selectedSwitches:()Ljava/util/Set; │ │ -431430: 5410 3d5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ -431434: 7210 5e60 0000 |0002: invoke-interface {v0}, Ljava/util/Map;.keySet:()Ljava/util/Set; // method@605e │ │ -43143a: 0c00 |0005: move-result-object v0 │ │ -43143c: 1100 |0006: return-object v0 │ │ +43141c: |[43141c] org.purple.smoke.State.selectedSwitches:()Ljava/util/Set; │ │ +43142c: 5410 3d5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_selectedSwitches:Ljava/util/Map; // field@5f3d │ │ +431430: 7210 5e60 0000 |0002: invoke-interface {v0}, Ljava/util/Map;.keySet:()Ljava/util/Set; // method@605e │ │ +431436: 0c00 |0005: move-result-object v0 │ │ +431438: 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;) │ │ @@ -744358,38 +744357,38 @@ │ │ type : '(Z)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 45 16-bit code units │ │ -431b84: |[431b84] org.purple.smoke.State.setAuthenticated:(Z)V │ │ -431b94: 5420 355f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431b98: 6e10 ef60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431b9e: 0c00 |0005: move-result-object v0 │ │ -431ba0: 6e10 eb60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ -431ba6: 5420 345f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431baa: 1a01 e27b |000b: const-string v1, "is_authenticated" // string@7be2 │ │ -431bae: 3803 0500 |000d: if-eqz v3, 0012 // +0005 │ │ -431bb2: 1303 3100 |000f: const/16 v3, #int 49 // #31 │ │ -431bb6: 2803 |0011: goto 0014 // +0003 │ │ -431bb8: 1303 3000 |0012: const/16 v3, #int 48 // #30 │ │ -431bbc: 6e30 dd04 1003 |0014: invoke-virtual {v0, v1, v3}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ -431bc2: 280c |0017: goto 0023 // +000c │ │ -431bc4: 0d03 |0018: move-exception v3 │ │ -431bc6: 5420 355f |0019: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431bca: 6e10 ef60 0000 |001b: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431bd0: 0c00 |001e: move-result-object v0 │ │ -431bd2: 6e10 ec60 0000 |001f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431bd8: 2703 |0022: throw v3 │ │ -431bda: 5423 355f |0023: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431bde: 6e10 ef60 0300 |0025: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431be4: 0c03 |0028: move-result-object v3 │ │ -431be6: 6e10 ec60 0300 |0029: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431bec: 0e00 |002c: return-void │ │ +431b80: |[431b80] org.purple.smoke.State.setAuthenticated:(Z)V │ │ +431b90: 5420 355f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431b94: 6e10 ef60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431b9a: 0c00 |0005: move-result-object v0 │ │ +431b9c: 6e10 eb60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ +431ba2: 5420 345f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431ba6: 1a01 e27b |000b: const-string v1, "is_authenticated" // string@7be2 │ │ +431baa: 3803 0500 |000d: if-eqz v3, 0012 // +0005 │ │ +431bae: 1303 3100 |000f: const/16 v3, #int 49 // #31 │ │ +431bb2: 2803 |0011: goto 0014 // +0003 │ │ +431bb4: 1303 3000 |0012: const/16 v3, #int 48 // #30 │ │ +431bb8: 6e30 dd04 1003 |0014: invoke-virtual {v0, v1, v3}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ +431bbe: 280c |0017: goto 0023 // +000c │ │ +431bc0: 0d03 |0018: move-exception v3 │ │ +431bc2: 5420 355f |0019: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431bc6: 6e10 ef60 0000 |001b: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431bcc: 0c00 |001e: move-result-object v0 │ │ +431bce: 6e10 ec60 0000 |001f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431bd4: 2703 |0022: throw v3 │ │ +431bd6: 5423 355f |0023: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431bda: 6e10 ef60 0300 |0025: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431be0: 0c03 |0028: move-result-object v3 │ │ +431be2: 6e10 ec60 0300 |0029: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431be8: 0e00 |002c: return-void │ │ catches : 1 │ │ 0x0009 - 0x0017 │ │ Ljava/lang/Exception; -> 0x0023 │ │ -> 0x0018 │ │ positions : │ │ 0x0000 line=615 │ │ 0x0009 line=619 │ │ @@ -744405,124 +744404,124 @@ │ │ type : '(IZ)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 229 16-bit code units │ │ -431c00: |[431c00] org.purple.smoke.State.setChatCheckBoxSelected:(IZ)V │ │ -431c10: 1a00 855e |0000: const-string v0, "chat_checkbox_" // string@5e85 │ │ -431c14: 5441 355f |0002: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431c18: 6e10 ee60 0100 |0004: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -431c1e: 0c01 |0007: move-result-object v1 │ │ -431c20: 6e10 e960 0100 |0008: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ -431c26: 5441 345f |000b: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431c2a: 2202 f10a |000d: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -431c2e: 7010 ee5c 0200 |000f: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -431c34: 6e20 f95c 0200 |0012: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -431c3a: 6e20 f45c 5200 |0015: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ -431c40: 6e10 035d 0200 |0018: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -431c46: 0c02 |001b: move-result-object v2 │ │ -431c48: 6e20 c004 2100 |001c: invoke-virtual {v1, v2}, Landroid/os/Bundle;.containsKey:(Ljava/lang/String;)Z // method@04c0 │ │ -431c4e: 0a01 |001f: move-result v1 │ │ -431c50: 5442 355f |0020: iget-object v2, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431c54: 6e10 ee60 0200 |0022: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -431c5a: 0c02 |0025: move-result-object v2 │ │ -431c5c: 6e10 ea60 0200 |0026: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -431c62: 2816 |0029: goto 003f // +0016 │ │ -431c64: 0d05 |002a: move-exception v5 │ │ -431c66: 5446 355f |002b: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431c6a: 6e10 ee60 0600 |002d: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -431c70: 0c06 |0030: move-result-object v6 │ │ -431c72: 6e10 ea60 0600 |0031: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -431c78: 2705 |0034: throw v5 │ │ -431c7a: 5441 355f |0035: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431c7e: 6e10 ee60 0100 |0037: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ -431c84: 0c01 |003a: move-result-object v1 │ │ -431c86: 6e10 ea60 0100 |003b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ -431c8c: 1201 |003e: const/4 v1, #int 0 // #0 │ │ -431c8e: 1a02 865e |003f: const-string v2, "chat_checkbox_counter" // string@5e86 │ │ -431c92: 3806 4400 |0041: if-eqz v6, 0085 // +0044 │ │ -431c96: 5446 355f |0043: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431c9a: 6e10 ef60 0600 |0045: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431ca0: 0c06 |0048: move-result-object v6 │ │ -431ca2: 6e10 eb60 0600 |0049: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ -431ca8: 5446 345f |004c: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431cac: 2203 f10a |004e: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ -431cb0: 7010 ee5c 0300 |0050: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -431cb6: 6e20 f95c 0300 |0053: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -431cbc: 6e20 f45c 5300 |0056: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ -431cc2: 6e10 035d 0300 |0059: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -431cc8: 0c05 |005c: move-result-object v5 │ │ -431cca: 1300 3100 |005d: const/16 v0, #int 49 // #31 │ │ -431cce: 6e30 dd04 5600 |005f: invoke-virtual {v6, v5, v0}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ -431cd4: 3901 1900 |0062: if-nez v1, 007b // +0019 │ │ -431cd8: 5445 345f |0064: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431cdc: 6e10 67bd 0400 |0066: invoke-virtual {v4}, Lorg/purple/smoke/State;.chatCheckedParticipants:()I // method@bd67 │ │ -431ce2: 0a06 |0069: move-result v6 │ │ -431ce4: d806 0601 |006a: add-int/lit8 v6, v6, #int 1 // #01 │ │ -431ce8: 6e30 e104 2506 |006c: invoke-virtual {v5, v2, v6}, Landroid/os/Bundle;.putInt:(Ljava/lang/String;I)V // method@04e1 │ │ -431cee: 280c |006f: goto 007b // +000c │ │ -431cf0: 0d05 |0070: move-exception v5 │ │ -431cf2: 5446 355f |0071: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431cf6: 6e10 ef60 0600 |0073: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431cfc: 0c06 |0076: move-result-object v6 │ │ -431cfe: 6e10 ec60 0600 |0077: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431d04: 2705 |007a: throw v5 │ │ -431d06: 5445 355f |007b: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431d0a: 6e10 ef60 0500 |007d: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431d10: 0c05 |0080: move-result-object v5 │ │ -431d12: 6e10 ec60 0500 |0081: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431d18: 2860 |0084: goto 00e4 // +0060 │ │ -431d1a: 5446 355f |0085: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431d1e: 6e10 ef60 0600 |0087: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431d24: 0c06 |008a: move-result-object v6 │ │ -431d26: 6e10 eb60 0600 |008b: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ -431d2c: 5446 345f |008e: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431d30: 2203 f10a |0090: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ -431d34: 7010 ee5c 0300 |0092: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -431d3a: 6e20 f95c 0300 |0095: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -431d40: 6e20 f45c 5300 |0098: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ -431d46: 6e10 035d 0300 |009b: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -431d4c: 0c05 |009e: move-result-object v5 │ │ -431d4e: 6e20 ea04 5600 |009f: invoke-virtual {v6, v5}, Landroid/os/Bundle;.remove:(Ljava/lang/String;)V // method@04ea │ │ -431d54: 280c |00a2: goto 00ae // +000c │ │ -431d56: 0d05 |00a3: move-exception v5 │ │ -431d58: 5446 355f |00a4: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431d5c: 6e10 ef60 0600 |00a6: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431d62: 0c06 |00a9: move-result-object v6 │ │ -431d64: 6e10 ec60 0600 |00aa: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431d6a: 2705 |00ad: throw v5 │ │ -431d6c: 5445 355f |00ae: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431d70: 6e10 ef60 0500 |00b0: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431d76: 0c05 |00b3: move-result-object v5 │ │ -431d78: 6e10 ec60 0500 |00b4: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431d7e: 3801 2d00 |00b7: if-eqz v1, 00e4 // +002d │ │ -431d82: 6e10 67bd 0400 |00b9: invoke-virtual {v4}, Lorg/purple/smoke/State;.chatCheckedParticipants:()I // method@bd67 │ │ -431d88: 0a05 |00bc: move-result v5 │ │ -431d8a: 3d05 0400 |00bd: if-lez v5, 00c1 // +0004 │ │ -431d8e: d805 05ff |00bf: add-int/lit8 v5, v5, #int -1 // #ff │ │ -431d92: 5446 355f |00c1: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431d96: 6e10 ef60 0600 |00c3: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431d9c: 0c06 |00c6: move-result-object v6 │ │ -431d9e: 6e10 eb60 0600 |00c7: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ -431da4: 5446 345f |00ca: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431da8: 6e30 e104 2605 |00cc: invoke-virtual {v6, v2, v5}, Landroid/os/Bundle;.putInt:(Ljava/lang/String;I)V // method@04e1 │ │ -431dae: 280c |00cf: goto 00db // +000c │ │ -431db0: 0d05 |00d0: move-exception v5 │ │ -431db2: 5446 355f |00d1: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431db6: 6e10 ef60 0600 |00d3: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431dbc: 0c06 |00d6: move-result-object v6 │ │ -431dbe: 6e10 ec60 0600 |00d7: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431dc4: 2705 |00da: throw v5 │ │ -431dc6: 5445 355f |00db: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431dca: 6e10 ef60 0500 |00dd: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431dd0: 0c05 |00e0: move-result-object v5 │ │ -431dd2: 6e10 ec60 0500 |00e1: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431dd8: 0e00 |00e4: return-void │ │ +431bfc: |[431bfc] org.purple.smoke.State.setChatCheckBoxSelected:(IZ)V │ │ +431c0c: 1a00 855e |0000: const-string v0, "chat_checkbox_" // string@5e85 │ │ +431c10: 5441 355f |0002: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431c14: 6e10 ee60 0100 |0004: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +431c1a: 0c01 |0007: move-result-object v1 │ │ +431c1c: 6e10 e960 0100 |0008: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.lock:()V // method@60e9 │ │ +431c22: 5441 345f |000b: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431c26: 2202 f10a |000d: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +431c2a: 7010 ee5c 0200 |000f: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +431c30: 6e20 f95c 0200 |0012: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +431c36: 6e20 f45c 5200 |0015: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ +431c3c: 6e10 035d 0200 |0018: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +431c42: 0c02 |001b: move-result-object v2 │ │ +431c44: 6e20 c004 2100 |001c: invoke-virtual {v1, v2}, Landroid/os/Bundle;.containsKey:(Ljava/lang/String;)Z // method@04c0 │ │ +431c4a: 0a01 |001f: move-result v1 │ │ +431c4c: 5442 355f |0020: iget-object v2, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431c50: 6e10 ee60 0200 |0022: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +431c56: 0c02 |0025: move-result-object v2 │ │ +431c58: 6e10 ea60 0200 |0026: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +431c5e: 2816 |0029: goto 003f // +0016 │ │ +431c60: 0d05 |002a: move-exception v5 │ │ +431c62: 5446 355f |002b: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431c66: 6e10 ee60 0600 |002d: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +431c6c: 0c06 |0030: move-result-object v6 │ │ +431c6e: 6e10 ea60 0600 |0031: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +431c74: 2705 |0034: throw v5 │ │ +431c76: 5441 355f |0035: iget-object v1, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431c7a: 6e10 ee60 0100 |0037: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.readLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; // method@60ee │ │ +431c80: 0c01 |003a: move-result-object v1 │ │ +431c82: 6e10 ea60 0100 |003b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;.unlock:()V // method@60ea │ │ +431c88: 1201 |003e: const/4 v1, #int 0 // #0 │ │ +431c8a: 1a02 865e |003f: const-string v2, "chat_checkbox_counter" // string@5e86 │ │ +431c8e: 3806 4400 |0041: if-eqz v6, 0085 // +0044 │ │ +431c92: 5446 355f |0043: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431c96: 6e10 ef60 0600 |0045: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431c9c: 0c06 |0048: move-result-object v6 │ │ +431c9e: 6e10 eb60 0600 |0049: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ +431ca4: 5446 345f |004c: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431ca8: 2203 f10a |004e: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ +431cac: 7010 ee5c 0300 |0050: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +431cb2: 6e20 f95c 0300 |0053: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +431cb8: 6e20 f45c 5300 |0056: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ +431cbe: 6e10 035d 0300 |0059: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +431cc4: 0c05 |005c: move-result-object v5 │ │ +431cc6: 1300 3100 |005d: const/16 v0, #int 49 // #31 │ │ +431cca: 6e30 dd04 5600 |005f: invoke-virtual {v6, v5, v0}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ +431cd0: 3901 1900 |0062: if-nez v1, 007b // +0019 │ │ +431cd4: 5445 345f |0064: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431cd8: 6e10 67bd 0400 |0066: invoke-virtual {v4}, Lorg/purple/smoke/State;.chatCheckedParticipants:()I // method@bd67 │ │ +431cde: 0a06 |0069: move-result v6 │ │ +431ce0: d806 0601 |006a: add-int/lit8 v6, v6, #int 1 // #01 │ │ +431ce4: 6e30 e104 2506 |006c: invoke-virtual {v5, v2, v6}, Landroid/os/Bundle;.putInt:(Ljava/lang/String;I)V // method@04e1 │ │ +431cea: 280c |006f: goto 007b // +000c │ │ +431cec: 0d05 |0070: move-exception v5 │ │ +431cee: 5446 355f |0071: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431cf2: 6e10 ef60 0600 |0073: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431cf8: 0c06 |0076: move-result-object v6 │ │ +431cfa: 6e10 ec60 0600 |0077: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431d00: 2705 |007a: throw v5 │ │ +431d02: 5445 355f |007b: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431d06: 6e10 ef60 0500 |007d: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431d0c: 0c05 |0080: move-result-object v5 │ │ +431d0e: 6e10 ec60 0500 |0081: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431d14: 2860 |0084: goto 00e4 // +0060 │ │ +431d16: 5446 355f |0085: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431d1a: 6e10 ef60 0600 |0087: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431d20: 0c06 |008a: move-result-object v6 │ │ +431d22: 6e10 eb60 0600 |008b: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ +431d28: 5446 345f |008e: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431d2c: 2203 f10a |0090: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ +431d30: 7010 ee5c 0300 |0092: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +431d36: 6e20 f95c 0300 |0095: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +431d3c: 6e20 f45c 5300 |0098: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ +431d42: 6e10 035d 0300 |009b: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +431d48: 0c05 |009e: move-result-object v5 │ │ +431d4a: 6e20 ea04 5600 |009f: invoke-virtual {v6, v5}, Landroid/os/Bundle;.remove:(Ljava/lang/String;)V // method@04ea │ │ +431d50: 280c |00a2: goto 00ae // +000c │ │ +431d52: 0d05 |00a3: move-exception v5 │ │ +431d54: 5446 355f |00a4: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431d58: 6e10 ef60 0600 |00a6: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431d5e: 0c06 |00a9: move-result-object v6 │ │ +431d60: 6e10 ec60 0600 |00aa: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431d66: 2705 |00ad: throw v5 │ │ +431d68: 5445 355f |00ae: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431d6c: 6e10 ef60 0500 |00b0: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431d72: 0c05 |00b3: move-result-object v5 │ │ +431d74: 6e10 ec60 0500 |00b4: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431d7a: 3801 2d00 |00b7: if-eqz v1, 00e4 // +002d │ │ +431d7e: 6e10 67bd 0400 |00b9: invoke-virtual {v4}, Lorg/purple/smoke/State;.chatCheckedParticipants:()I // method@bd67 │ │ +431d84: 0a05 |00bc: move-result v5 │ │ +431d86: 3d05 0400 |00bd: if-lez v5, 00c1 // +0004 │ │ +431d8a: d805 05ff |00bf: add-int/lit8 v5, v5, #int -1 // #ff │ │ +431d8e: 5446 355f |00c1: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431d92: 6e10 ef60 0600 |00c3: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431d98: 0c06 |00c6: move-result-object v6 │ │ +431d9a: 6e10 eb60 0600 |00c7: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ +431da0: 5446 345f |00ca: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431da4: 6e30 e104 2605 |00cc: invoke-virtual {v6, v2, v5}, Landroid/os/Bundle;.putInt:(Ljava/lang/String;I)V // method@04e1 │ │ +431daa: 280c |00cf: goto 00db // +000c │ │ +431dac: 0d05 |00d0: move-exception v5 │ │ +431dae: 5446 355f |00d1: iget-object v6, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431db2: 6e10 ef60 0600 |00d3: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431db8: 0c06 |00d6: move-result-object v6 │ │ +431dba: 6e10 ec60 0600 |00d7: invoke-virtual {v6}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431dc0: 2705 |00da: throw v5 │ │ +431dc2: 5445 355f |00db: iget-object v5, v4, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431dc6: 6e10 ef60 0500 |00dd: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431dcc: 0c05 |00e0: move-result-object v5 │ │ +431dce: 6e10 ec60 0500 |00e1: invoke-virtual {v5}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431dd4: 0e00 |00e4: return-void │ │ catches : 4 │ │ 0x000b - 0x0020 │ │ Ljava/lang/Exception; -> 0x0035 │ │ -> 0x002a │ │ 0x004c - 0x006f │ │ Ljava/lang/Exception; -> 0x007b │ │ -> 0x0070 │ │ @@ -744567,19 +744566,19 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 7 16-bit code units │ │ -431e18: |[431e18] org.purple.smoke.State.setExit:()V │ │ -431e28: 5420 375f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_exit:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f37 │ │ -431e2c: 1211 |0002: const/4 v1, #int 1 // #1 │ │ -431e2e: 6e20 dc60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -431e34: 0e00 |0006: return-void │ │ +431e14: |[431e14] org.purple.smoke.State.setExit:()V │ │ +431e24: 5420 375f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_exit:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f37 │ │ +431e28: 1211 |0002: const/4 v1, #int 1 // #1 │ │ +431e2a: 6e20 dc60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +431e30: 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;) │ │ @@ -744587,38 +744586,38 @@ │ │ type : '(Z)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 45 16-bit code units │ │ -431e38: |[431e38] org.purple.smoke.State.setLocked:(Z)V │ │ -431e48: 5420 355f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431e4c: 6e10 ef60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431e52: 0c00 |0005: move-result-object v0 │ │ -431e54: 6e10 eb60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ -431e5a: 5420 345f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431e5e: 1a01 e57b |000b: const-string v1, "is_locked" // string@7be5 │ │ -431e62: 3803 0500 |000d: if-eqz v3, 0012 // +0005 │ │ -431e66: 1303 3100 |000f: const/16 v3, #int 49 // #31 │ │ -431e6a: 2803 |0011: goto 0014 // +0003 │ │ -431e6c: 1303 3000 |0012: const/16 v3, #int 48 // #30 │ │ -431e70: 6e30 dd04 1003 |0014: invoke-virtual {v0, v1, v3}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ -431e76: 280c |0017: goto 0023 // +000c │ │ -431e78: 0d03 |0018: move-exception v3 │ │ -431e7a: 5420 355f |0019: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431e7e: 6e10 ef60 0000 |001b: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431e84: 0c00 |001e: move-result-object v0 │ │ -431e86: 6e10 ec60 0000 |001f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431e8c: 2703 |0022: throw v3 │ │ -431e8e: 5423 355f |0023: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431e92: 6e10 ef60 0300 |0025: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431e98: 0c03 |0028: move-result-object v3 │ │ -431e9a: 6e10 ec60 0300 |0029: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431ea0: 0e00 |002c: return-void │ │ +431e34: |[431e34] org.purple.smoke.State.setLocked:(Z)V │ │ +431e44: 5420 355f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431e48: 6e10 ef60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431e4e: 0c00 |0005: move-result-object v0 │ │ +431e50: 6e10 eb60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ +431e56: 5420 345f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431e5a: 1a01 e57b |000b: const-string v1, "is_locked" // string@7be5 │ │ +431e5e: 3803 0500 |000d: if-eqz v3, 0012 // +0005 │ │ +431e62: 1303 3100 |000f: const/16 v3, #int 49 // #31 │ │ +431e66: 2803 |0011: goto 0014 // +0003 │ │ +431e68: 1303 3000 |0012: const/16 v3, #int 48 // #30 │ │ +431e6c: 6e30 dd04 1003 |0014: invoke-virtual {v0, v1, v3}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ +431e72: 280c |0017: goto 0023 // +000c │ │ +431e74: 0d03 |0018: move-exception v3 │ │ +431e76: 5420 355f |0019: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431e7a: 6e10 ef60 0000 |001b: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431e80: 0c00 |001e: move-result-object v0 │ │ +431e82: 6e10 ec60 0000 |001f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431e88: 2703 |0022: throw v3 │ │ +431e8a: 5423 355f |0023: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431e8e: 6e10 ef60 0300 |0025: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431e94: 0c03 |0028: move-result-object v3 │ │ +431e96: 6e10 ec60 0300 |0029: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431e9c: 0e00 |002c: return-void │ │ catches : 1 │ │ 0x0009 - 0x0017 │ │ Ljava/lang/Exception; -> 0x0023 │ │ -> 0x0018 │ │ positions : │ │ 0x0000 line=716 │ │ 0x0009 line=720 │ │ @@ -744634,38 +744633,38 @@ │ │ type : '(Z)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 45 16-bit code units │ │ -431eb4: |[431eb4] org.purple.smoke.State.setNeighborsEcho:(Z)V │ │ -431ec4: 5420 355f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431ec8: 6e10 ef60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431ece: 0c00 |0005: move-result-object v0 │ │ -431ed0: 6e10 eb60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ -431ed6: 5420 345f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431eda: 1a01 f48b |000b: const-string v1, "neighbors_echo" // string@8bf4 │ │ -431ede: 3803 0500 |000d: if-eqz v3, 0012 // +0005 │ │ -431ee2: 1303 3100 |000f: const/16 v3, #int 49 // #31 │ │ -431ee6: 2803 |0011: goto 0014 // +0003 │ │ -431ee8: 1303 3000 |0012: const/16 v3, #int 48 // #30 │ │ -431eec: 6e30 dd04 1003 |0014: invoke-virtual {v0, v1, v3}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ -431ef2: 280c |0017: goto 0023 // +000c │ │ -431ef4: 0d03 |0018: move-exception v3 │ │ -431ef6: 5420 355f |0019: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431efa: 6e10 ef60 0000 |001b: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431f00: 0c00 |001e: move-result-object v0 │ │ -431f02: 6e10 ec60 0000 |001f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431f08: 2703 |0022: throw v3 │ │ -431f0a: 5423 355f |0023: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431f0e: 6e10 ef60 0300 |0025: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431f14: 0c03 |0028: move-result-object v3 │ │ -431f16: 6e10 ec60 0300 |0029: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431f1c: 0e00 |002c: return-void │ │ +431eb0: |[431eb0] org.purple.smoke.State.setNeighborsEcho:(Z)V │ │ +431ec0: 5420 355f |0000: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431ec4: 6e10 ef60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431eca: 0c00 |0005: move-result-object v0 │ │ +431ecc: 6e10 eb60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ +431ed2: 5420 345f |0009: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431ed6: 1a01 f48b |000b: const-string v1, "neighbors_echo" // string@8bf4 │ │ +431eda: 3803 0500 |000d: if-eqz v3, 0012 // +0005 │ │ +431ede: 1303 3100 |000f: const/16 v3, #int 49 // #31 │ │ +431ee2: 2803 |0011: goto 0014 // +0003 │ │ +431ee4: 1303 3000 |0012: const/16 v3, #int 48 // #30 │ │ +431ee8: 6e30 dd04 1003 |0014: invoke-virtual {v0, v1, v3}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ +431eee: 280c |0017: goto 0023 // +000c │ │ +431ef0: 0d03 |0018: move-exception v3 │ │ +431ef2: 5420 355f |0019: iget-object v0, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431ef6: 6e10 ef60 0000 |001b: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431efc: 0c00 |001e: move-result-object v0 │ │ +431efe: 6e10 ec60 0000 |001f: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431f04: 2703 |0022: throw v3 │ │ +431f06: 5423 355f |0023: iget-object v3, v2, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431f0a: 6e10 ef60 0300 |0025: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431f10: 0c03 |0028: move-result-object v3 │ │ +431f12: 6e10 ec60 0300 |0029: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431f18: 0e00 |002c: return-void │ │ catches : 1 │ │ 0x0009 - 0x0017 │ │ Ljava/lang/Exception; -> 0x0023 │ │ -> 0x0018 │ │ positions : │ │ 0x0000 line=733 │ │ 0x0009 line=737 │ │ @@ -744681,18 +744680,18 @@ │ │ type : '(Z)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 6 16-bit code units │ │ -431f30: |[431f30] org.purple.smoke.State.setQueryTimerServer:(Z)V │ │ -431f40: 5410 3c5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_queryTimerServer:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3c │ │ -431f44: 6e20 dc60 2000 |0002: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -431f4a: 0e00 |0005: return-void │ │ +431f2c: |[431f2c] org.purple.smoke.State.setQueryTimerServer:(Z)V │ │ +431f3c: 5410 3c5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_queryTimerServer:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3c │ │ +431f40: 6e20 dc60 2000 |0002: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +431f46: 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 │ │ │ │ @@ -744701,18 +744700,18 @@ │ │ type : '(Z)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 6 16-bit code units │ │ -431f4c: |[431f4c] org.purple.smoke.State.setSilent:(Z)V │ │ -431f5c: 5410 3e5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_silent:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3e │ │ -431f60: 6e20 dc60 2000 |0002: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -431f66: 0e00 |0005: return-void │ │ +431f48: |[431f48] org.purple.smoke.State.setSilent:(Z)V │ │ +431f58: 5410 3e5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_silent:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3e │ │ +431f5c: 6e20 dc60 2000 |0002: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +431f62: 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 │ │ │ │ @@ -744721,27 +744720,27 @@ │ │ type : '(ZI)V' │ │ access : 0x20001 (PUBLIC DECLARED_SYNCHRONIZED) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 19 16-bit code units │ │ -431f68: |[431f68] org.purple.smoke.State.setSteamDetailsState:(ZI)V │ │ -431f78: 1d01 |0000: monitor-enter v1 │ │ -431f7a: 5410 3f5f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ -431f7e: 7110 605c 0300 |0003: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ -431f84: 0c03 |0006: move-result-object v3 │ │ -431f86: 7110 ff5b 0200 |0007: invoke-static {v2}, Ljava/lang/Boolean;.valueOf:(Z)Ljava/lang/Boolean; // method@5bff │ │ -431f8c: 0c02 |000a: move-result-object v2 │ │ -431f8e: 7230 5f60 3002 |000b: invoke-interface {v0, v3, v2}, Ljava/util/Map;.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; // method@605f │ │ -431f94: 1e01 |000e: monitor-exit v1 │ │ -431f96: 0e00 |000f: return-void │ │ -431f98: 0d02 |0010: move-exception v2 │ │ -431f9a: 1e01 |0011: monitor-exit v1 │ │ -431f9c: 2702 |0012: throw v2 │ │ +431f64: |[431f64] org.purple.smoke.State.setSteamDetailsState:(ZI)V │ │ +431f74: 1d01 |0000: monitor-enter v1 │ │ +431f76: 5410 3f5f |0001: iget-object v0, v1, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ +431f7a: 7110 605c 0300 |0003: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ +431f80: 0c03 |0006: move-result-object v3 │ │ +431f82: 7110 ff5b 0200 |0007: invoke-static {v2}, Ljava/lang/Boolean;.valueOf:(Z)Ljava/lang/Boolean; // method@5bff │ │ +431f88: 0c02 |000a: move-result-object v2 │ │ +431f8a: 7230 5f60 3002 |000b: invoke-interface {v0, v3, v2}, Ljava/util/Map;.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; // method@605f │ │ +431f90: 1e01 |000e: monitor-exit v1 │ │ +431f92: 0e00 |000f: return-void │ │ +431f94: 0d02 |0010: move-exception v2 │ │ +431f96: 1e01 |0011: monitor-exit v1 │ │ +431f98: 2702 |0012: throw v2 │ │ catches : 1 │ │ 0x0001 - 0x000e │ │ -> 0x0010 │ │ positions : │ │ 0x0001 line=472 │ │ 0x000e line=473 │ │ locals : │ │ @@ -744754,33 +744753,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 │ │ -431fac: |[431fac] org.purple.smoke.State.setString:(Ljava/lang/String;Ljava/lang/String;)V │ │ -431fbc: 5410 355f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431fc0: 6e10 ef60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431fc6: 0c00 |0005: move-result-object v0 │ │ -431fc8: 6e10 eb60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ -431fce: 5410 345f |0009: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -431fd2: 6e30 e804 2003 |000b: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.putString:(Ljava/lang/String;Ljava/lang/String;)V // method@04e8 │ │ -431fd8: 280c |000e: goto 001a // +000c │ │ -431fda: 0d02 |000f: move-exception v2 │ │ -431fdc: 5413 355f |0010: iget-object v3, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431fe0: 6e10 ef60 0300 |0012: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431fe6: 0c03 |0015: move-result-object v3 │ │ -431fe8: 6e10 ec60 0300 |0016: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -431fee: 2702 |0019: throw v2 │ │ -431ff0: 5412 355f |001a: iget-object v2, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -431ff4: 6e10 ef60 0200 |001c: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -431ffa: 0c02 |001f: move-result-object v2 │ │ -431ffc: 6e10 ec60 0200 |0020: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -432002: 0e00 |0023: return-void │ │ +431fa8: |[431fa8] org.purple.smoke.State.setString:(Ljava/lang/String;Ljava/lang/String;)V │ │ +431fb8: 5410 355f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431fbc: 6e10 ef60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431fc2: 0c00 |0005: move-result-object v0 │ │ +431fc4: 6e10 eb60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ +431fca: 5410 345f |0009: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +431fce: 6e30 e804 2003 |000b: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.putString:(Ljava/lang/String;Ljava/lang/String;)V // method@04e8 │ │ +431fd4: 280c |000e: goto 001a // +000c │ │ +431fd6: 0d02 |000f: move-exception v2 │ │ +431fd8: 5413 355f |0010: iget-object v3, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431fdc: 6e10 ef60 0300 |0012: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431fe2: 0c03 |0015: move-result-object v3 │ │ +431fe4: 6e10 ec60 0300 |0016: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431fea: 2702 |0019: throw v2 │ │ +431fec: 5412 355f |001a: iget-object v2, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +431ff0: 6e10 ef60 0200 |001c: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +431ff6: 0c02 |001f: move-result-object v2 │ │ +431ff8: 6e10 ec60 0200 |0020: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +431ffe: 0e00 |0023: return-void │ │ catches : 1 │ │ 0x0009 - 0x000e │ │ Ljava/lang/Exception; -> 0x001a │ │ -> 0x000f │ │ positions : │ │ 0x0000 line=760 │ │ 0x0009 line=764 │ │ @@ -744797,19 +744796,19 @@ │ │ type : '()Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -430f5c: |[430f5c] org.purple.smoke.State.silent:()Z │ │ -430f6c: 5410 3e5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_silent:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3e │ │ -430f70: 6e10 da60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -430f76: 0a00 |0005: move-result v0 │ │ -430f78: 0f00 |0006: return v0 │ │ +430f58: |[430f58] org.purple.smoke.State.silent:()Z │ │ +430f68: 5410 3e5f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_silent:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5f3e │ │ +430f6c: 6e10 da60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +430f72: 0a00 |0005: move-result v0 │ │ +430f74: 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;) │ │ @@ -744817,38 +744816,38 @@ │ │ type : '(I)Z' │ │ access : 0x20001 (PUBLIC DECLARED_SYNCHRONIZED) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 37 16-bit code units │ │ -430f7c: |[430f7c] org.purple.smoke.State.steamDetailsState:(I)Z │ │ -430f8c: 1d02 |0000: monitor-enter v2 │ │ -430f8e: 5420 3f5f |0001: iget-object v0, v2, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ -430f92: 7110 605c 0300 |0003: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ -430f98: 0c01 |0006: move-result-object v1 │ │ -430f9a: 7220 5860 1000 |0007: invoke-interface {v0, v1}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6058 │ │ -430fa0: 0a00 |000a: move-result v0 │ │ -430fa2: 3800 1400 |000b: if-eqz v0, 001f // +0014 │ │ -430fa6: 5420 3f5f |000d: iget-object v0, v2, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ -430faa: 7110 605c 0300 |000f: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ -430fb0: 0c03 |0012: move-result-object v3 │ │ -430fb2: 7220 5b60 3000 |0013: invoke-interface {v0, v3}, Ljava/util/Map;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@605b │ │ -430fb8: 0c03 |0016: move-result-object v3 │ │ -430fba: 1f03 c60a |0017: check-cast v3, Ljava/lang/Boolean; // type@0ac6 │ │ -430fbe: 6e10 fe5b 0300 |0019: invoke-virtual {v3}, Ljava/lang/Boolean;.booleanValue:()Z // method@5bfe │ │ -430fc4: 0a03 |001c: move-result v3 │ │ -430fc6: 1e02 |001d: monitor-exit v2 │ │ -430fc8: 0f03 |001e: return v3 │ │ -430fca: 1203 |001f: const/4 v3, #int 0 // #0 │ │ -430fcc: 1e02 |0020: monitor-exit v2 │ │ -430fce: 0f03 |0021: return v3 │ │ -430fd0: 0d03 |0022: move-exception v3 │ │ -430fd2: 1e02 |0023: monitor-exit v2 │ │ -430fd4: 2703 |0024: throw v3 │ │ +430f78: |[430f78] org.purple.smoke.State.steamDetailsState:(I)Z │ │ +430f88: 1d02 |0000: monitor-enter v2 │ │ +430f8a: 5420 3f5f |0001: iget-object v0, v2, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ +430f8e: 7110 605c 0300 |0003: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ +430f94: 0c01 |0006: move-result-object v1 │ │ +430f96: 7220 5860 1000 |0007: invoke-interface {v0, v1}, Ljava/util/Map;.containsKey:(Ljava/lang/Object;)Z // method@6058 │ │ +430f9c: 0a00 |000a: move-result v0 │ │ +430f9e: 3800 1400 |000b: if-eqz v0, 001f // +0014 │ │ +430fa2: 5420 3f5f |000d: iget-object v0, v2, Lorg/purple/smoke/State;.m_steamDetailsStates:Ljava/util/Map; // field@5f3f │ │ +430fa6: 7110 605c 0300 |000f: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ +430fac: 0c03 |0012: move-result-object v3 │ │ +430fae: 7220 5b60 3000 |0013: invoke-interface {v0, v3}, Ljava/util/Map;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@605b │ │ +430fb4: 0c03 |0016: move-result-object v3 │ │ +430fb6: 1f03 c60a |0017: check-cast v3, Ljava/lang/Boolean; // type@0ac6 │ │ +430fba: 6e10 fe5b 0300 |0019: invoke-virtual {v3}, Ljava/lang/Boolean;.booleanValue:()Z // method@5bfe │ │ +430fc0: 0a03 |001c: move-result v3 │ │ +430fc2: 1e02 |001d: monitor-exit v2 │ │ +430fc4: 0f03 |001e: return v3 │ │ +430fc6: 1203 |001f: const/4 v3, #int 0 // #0 │ │ +430fc8: 1e02 |0020: monitor-exit v2 │ │ +430fca: 0f03 |0021: return v3 │ │ +430fcc: 0d03 |0022: move-exception v3 │ │ +430fce: 1e02 |0023: monitor-exit v2 │ │ +430fd0: 2703 |0024: throw v3 │ │ catches : 1 │ │ 0x0001 - 0x001d │ │ -> 0x0022 │ │ positions : │ │ 0x0001 line=422 │ │ 0x000d line=423 │ │ 0x0020 line=425 │ │ @@ -744861,32 +744860,32 @@ │ │ type : '(Ljava/lang/String;C)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 35 16-bit code units │ │ -432014: |[432014] org.purple.smoke.State.writeChar:(Ljava/lang/String;C)V │ │ -432024: 5410 355f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -432028: 6e10 ef60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -43202e: 0c00 |0005: move-result-object v0 │ │ -432030: 6e10 eb60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ -432036: 5410 345f |0009: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -43203a: 6e30 dd04 2003 |000b: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ -432040: 5412 355f |000e: iget-object v2, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -432044: 6e10 ef60 0200 |0010: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -43204a: 0c02 |0013: move-result-object v2 │ │ -43204c: 6e10 ec60 0200 |0014: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -432052: 0e00 |0017: return-void │ │ -432054: 0d02 |0018: move-exception v2 │ │ -432056: 5413 355f |0019: iget-object v3, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -43205a: 6e10 ef60 0300 |001b: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -432060: 0c03 |001e: move-result-object v3 │ │ -432062: 6e10 ec60 0300 |001f: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -432068: 2702 |0022: throw v2 │ │ +432010: |[432010] org.purple.smoke.State.writeChar:(Ljava/lang/String;C)V │ │ +432020: 5410 355f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +432024: 6e10 ef60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +43202a: 0c00 |0005: move-result-object v0 │ │ +43202c: 6e10 eb60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ +432032: 5410 345f |0009: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +432036: 6e30 dd04 2003 |000b: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.putChar:(Ljava/lang/String;C)V // method@04dd │ │ +43203c: 5412 355f |000e: iget-object v2, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +432040: 6e10 ef60 0200 |0010: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +432046: 0c02 |0013: move-result-object v2 │ │ +432048: 6e10 ec60 0200 |0014: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +43204e: 0e00 |0017: return-void │ │ +432050: 0d02 |0018: move-exception v2 │ │ +432052: 5413 355f |0019: iget-object v3, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +432056: 6e10 ef60 0300 |001b: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +43205c: 0c03 |001e: move-result-object v3 │ │ +43205e: 6e10 ec60 0300 |001f: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +432064: 2702 |0022: throw v2 │ │ catches : 1 │ │ 0x0009 - 0x000e │ │ -> 0x0018 │ │ positions : │ │ 0x0000 line=777 │ │ 0x0009 line=781 │ │ 0x000e line=785 │ │ @@ -744901,32 +744900,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 │ │ -432078: |[432078] org.purple.smoke.State.writeCharSequence:(Ljava/lang/String;Ljava/lang/CharSequence;)V │ │ -432088: 5410 355f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -43208c: 6e10 ef60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -432092: 0c00 |0005: move-result-object v0 │ │ -432094: 6e10 eb60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ -43209a: 5410 345f |0009: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ -43209e: 6e30 de04 2003 |000b: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.putCharSequence:(Ljava/lang/String;Ljava/lang/CharSequence;)V // method@04de │ │ -4320a4: 5412 355f |000e: iget-object v2, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4320a8: 6e10 ef60 0200 |0010: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -4320ae: 0c02 |0013: move-result-object v2 │ │ -4320b0: 6e10 ec60 0200 |0014: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -4320b6: 0e00 |0017: return-void │ │ -4320b8: 0d02 |0018: move-exception v2 │ │ -4320ba: 5413 355f |0019: iget-object v3, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ -4320be: 6e10 ef60 0300 |001b: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -4320c4: 0c03 |001e: move-result-object v3 │ │ -4320c6: 6e10 ec60 0300 |001f: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -4320cc: 2702 |0022: throw v2 │ │ +432074: |[432074] org.purple.smoke.State.writeCharSequence:(Ljava/lang/String;Ljava/lang/CharSequence;)V │ │ +432084: 5410 355f |0000: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +432088: 6e10 ef60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +43208e: 0c00 |0005: move-result-object v0 │ │ +432090: 6e10 eb60 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ +432096: 5410 345f |0009: iget-object v0, v1, Lorg/purple/smoke/State;.m_bundle:Landroid/os/Bundle; // field@5f34 │ │ +43209a: 6e30 de04 2003 |000b: invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;.putCharSequence:(Ljava/lang/String;Ljava/lang/CharSequence;)V // method@04de │ │ +4320a0: 5412 355f |000e: iget-object v2, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4320a4: 6e10 ef60 0200 |0010: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +4320aa: 0c02 |0013: move-result-object v2 │ │ +4320ac: 6e10 ec60 0200 |0014: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +4320b2: 0e00 |0017: return-void │ │ +4320b4: 0d02 |0018: move-exception v2 │ │ +4320b6: 5413 355f |0019: iget-object v3, v1, Lorg/purple/smoke/State;.m_bundleMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5f35 │ │ +4320ba: 6e10 ef60 0300 |001b: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +4320c0: 0c03 |001e: move-result-object v3 │ │ +4320c2: 6e10 ec60 0300 |001f: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +4320c8: 2702 |0022: throw v2 │ │ catches : 1 │ │ 0x0009 - 0x000e │ │ -> 0x0018 │ │ positions : │ │ 0x0000 line=791 │ │ 0x0009 line=795 │ │ 0x000e line=799 │ │ @@ -744971,18 +744970,18 @@ │ │ type : '(Lorg/purple/smoke/Steam;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -4320dc: |[4320dc] org.purple.smoke.Steam$1.:(Lorg/purple/smoke/Steam;)V │ │ -4320ec: 5b01 415f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$1;.this$0:Lorg/purple/smoke/Steam; // field@5f41 │ │ -4320f0: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -4320f6: 0e00 |0005: return-void │ │ +4320d8: |[4320d8] org.purple.smoke.Steam$1.:(Lorg/purple/smoke/Steam;)V │ │ +4320e8: 5b01 415f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$1;.this$0:Lorg/purple/smoke/Steam; // field@5f41 │ │ +4320ec: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +4320f2: 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; │ │ │ │ @@ -744992,23 +744991,23 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 15 16-bit code units │ │ -4320f8: |[4320f8] org.purple.smoke.Steam$1.onClick:(Landroid/view/View;)V │ │ -432108: 5401 415f |0000: iget-object v1, v0, Lorg/purple/smoke/Steam$1;.this$0:Lorg/purple/smoke/Steam; // field@5f41 │ │ -43210c: 6e10 c0bd 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Steam;.isFinishing:()Z // method@bdc0 │ │ -432112: 0a01 |0005: move-result v1 │ │ -432114: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ -432118: 0e00 |0008: return-void │ │ -43211a: 5401 415f |0009: iget-object v1, v0, Lorg/purple/smoke/Steam$1;.this$0:Lorg/purple/smoke/Steam; // field@5f41 │ │ -43211e: 7110 b2bd 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$300:(Lorg/purple/smoke/Steam;)V // method@bdb2 │ │ -432124: 0e00 |000e: return-void │ │ +4320f4: |[4320f4] org.purple.smoke.Steam$1.onClick:(Landroid/view/View;)V │ │ +432104: 5401 415f |0000: iget-object v1, v0, Lorg/purple/smoke/Steam$1;.this$0:Lorg/purple/smoke/Steam; // field@5f41 │ │ +432108: 6e10 c0bd 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Steam;.isFinishing:()Z // method@bdc0 │ │ +43210e: 0a01 |0005: move-result v1 │ │ +432110: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ +432114: 0e00 |0008: return-void │ │ +432116: 5401 415f |0009: iget-object v1, v0, Lorg/purple/smoke/Steam$1;.this$0:Lorg/purple/smoke/Steam; // field@5f41 │ │ +43211a: 7110 b2bd 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$300:(Lorg/purple/smoke/Steam;)V // method@bdb2 │ │ +432120: 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; │ │ @@ -745052,18 +745051,18 @@ │ │ type : '(Lorg/purple/smoke/Steam;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -432128: |[432128] org.purple.smoke.Steam$2.:(Lorg/purple/smoke/Steam;)V │ │ -432138: 5b01 425f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$2;.this$0:Lorg/purple/smoke/Steam; // field@5f42 │ │ -43213c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -432142: 0e00 |0005: return-void │ │ +432124: |[432124] org.purple.smoke.Steam$2.:(Lorg/purple/smoke/Steam;)V │ │ +432134: 5b01 425f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$2;.this$0:Lorg/purple/smoke/Steam; // field@5f42 │ │ +432138: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43213e: 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; │ │ │ │ @@ -745073,29 +745072,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 │ │ -432144: |[432144] org.purple.smoke.Steam$2.onItemSelected:(Landroid/widget/AdapterView;Landroid/view/View;IJ)V │ │ -432154: 5401 425f |0000: iget-object v1, v0, Lorg/purple/smoke/Steam$2;.this$0:Lorg/purple/smoke/Steam; // field@5f42 │ │ -432158: 7110 b3bd 0100 |0002: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$400:(Lorg/purple/smoke/Steam;)Landroid/widget/Spinner; // method@bdb3 │ │ -43215e: 0c01 |0005: move-result-object v1 │ │ -432160: 1212 |0006: const/4 v2, #int 1 // #1 │ │ -432162: 3803 0400 |0007: if-eqz v3, 000b // +0004 │ │ -432166: 1213 |0009: const/4 v3, #int 1 // #1 │ │ -432168: 2802 |000a: goto 000c // +0002 │ │ -43216a: 1203 |000b: const/4 v3, #int 0 // #0 │ │ -43216c: 6e20 c65a 3100 |000c: invoke-virtual {v1, v3}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ -432172: 5401 425f |000f: iget-object v1, v0, Lorg/purple/smoke/Steam$2;.this$0:Lorg/purple/smoke/Steam; // field@5f42 │ │ -432176: 7110 b3bd 0100 |0011: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$400:(Lorg/purple/smoke/Steam;)Landroid/widget/Spinner; // method@bdb3 │ │ -43217c: 0c01 |0014: move-result-object v1 │ │ -43217e: 6e20 cc5a 2100 |0015: invoke-virtual {v1, v2}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -432184: 0e00 |0018: return-void │ │ +432140: |[432140] org.purple.smoke.Steam$2.onItemSelected:(Landroid/widget/AdapterView;Landroid/view/View;IJ)V │ │ +432150: 5401 425f |0000: iget-object v1, v0, Lorg/purple/smoke/Steam$2;.this$0:Lorg/purple/smoke/Steam; // field@5f42 │ │ +432154: 7110 b3bd 0100 |0002: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$400:(Lorg/purple/smoke/Steam;)Landroid/widget/Spinner; // method@bdb3 │ │ +43215a: 0c01 |0005: move-result-object v1 │ │ +43215c: 1212 |0006: const/4 v2, #int 1 // #1 │ │ +43215e: 3803 0400 |0007: if-eqz v3, 000b // +0004 │ │ +432162: 1213 |0009: const/4 v3, #int 1 // #1 │ │ +432164: 2802 |000a: goto 000c // +0002 │ │ +432166: 1203 |000b: const/4 v3, #int 0 // #0 │ │ +432168: 6e20 c65a 3100 |000c: invoke-virtual {v1, v3}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ +43216e: 5401 425f |000f: iget-object v1, v0, Lorg/purple/smoke/Steam$2;.this$0:Lorg/purple/smoke/Steam; // field@5f42 │ │ +432172: 7110 b3bd 0100 |0011: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$400:(Lorg/purple/smoke/Steam;)Landroid/widget/Spinner; // method@bdb3 │ │ +432178: 0c01 |0014: move-result-object v1 │ │ +43217a: 6e20 cc5a 2100 |0015: invoke-virtual {v1, v2}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +432180: 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; │ │ @@ -745108,16 +745107,16 @@ │ │ type : '(Landroid/widget/AdapterView;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -432188: |[432188] org.purple.smoke.Steam$2.onNothingSelected:(Landroid/widget/AdapterView;)V │ │ -432198: 0e00 |0000: return-void │ │ +432184: |[432184] org.purple.smoke.Steam$2.onNothingSelected:(Landroid/widget/AdapterView;)V │ │ +432194: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ source_file_idx : 19579 (Steam.java) │ │ │ │ Class #2733 header: │ │ @@ -745153,18 +745152,18 @@ │ │ type : '(Lorg/purple/smoke/Steam;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -43219c: |[43219c] org.purple.smoke.Steam$3.:(Lorg/purple/smoke/Steam;)V │ │ -4321ac: 5b01 435f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$3;.this$0:Lorg/purple/smoke/Steam; // field@5f43 │ │ -4321b0: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -4321b6: 0e00 |0005: return-void │ │ +432198: |[432198] org.purple.smoke.Steam$3.:(Lorg/purple/smoke/Steam;)V │ │ +4321a8: 5b01 435f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$3;.this$0:Lorg/purple/smoke/Steam; // field@5f43 │ │ +4321ac: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +4321b2: 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; │ │ │ │ @@ -745174,23 +745173,23 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 15 16-bit code units │ │ -4321b8: |[4321b8] org.purple.smoke.Steam$3.onClick:(Landroid/view/View;)V │ │ -4321c8: 5401 435f |0000: iget-object v1, v0, Lorg/purple/smoke/Steam$3;.this$0:Lorg/purple/smoke/Steam; // field@5f43 │ │ -4321cc: 6e10 c0bd 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Steam;.isFinishing:()Z // method@bdc0 │ │ -4321d2: 0a01 |0005: move-result v1 │ │ -4321d4: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ -4321d8: 0e00 |0008: return-void │ │ -4321da: 5401 435f |0009: iget-object v1, v0, Lorg/purple/smoke/Steam$3;.this$0:Lorg/purple/smoke/Steam; // field@5f43 │ │ -4321de: 7110 b4bd 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$500:(Lorg/purple/smoke/Steam;)V // method@bdb4 │ │ -4321e4: 0e00 |000e: return-void │ │ +4321b4: |[4321b4] org.purple.smoke.Steam$3.onClick:(Landroid/view/View;)V │ │ +4321c4: 5401 435f |0000: iget-object v1, v0, Lorg/purple/smoke/Steam$3;.this$0:Lorg/purple/smoke/Steam; // field@5f43 │ │ +4321c8: 6e10 c0bd 0100 |0002: invoke-virtual {v1}, Lorg/purple/smoke/Steam;.isFinishing:()Z // method@bdc0 │ │ +4321ce: 0a01 |0005: move-result v1 │ │ +4321d0: 3801 0300 |0006: if-eqz v1, 0009 // +0003 │ │ +4321d4: 0e00 |0008: return-void │ │ +4321d6: 5401 435f |0009: iget-object v1, v0, Lorg/purple/smoke/Steam$3;.this$0:Lorg/purple/smoke/Steam; // field@5f43 │ │ +4321da: 7110 b4bd 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$500:(Lorg/purple/smoke/Steam;)V // method@bdb4 │ │ +4321e0: 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; │ │ @@ -745238,20 +745237,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 │ │ -4321e8: |[4321e8] org.purple.smoke.Steam$4$1.:(Lorg/purple/smoke/Steam$4;II)V │ │ -4321f8: 5b01 445f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$4$1;.this$1:Lorg/purple/smoke/Steam$4; // field@5f44 │ │ -4321fc: 5902 455f |0002: iput v2, v0, Lorg/purple/smoke/Steam$4$1;.val$availableSteamReaders:I // field@5f45 │ │ -432200: 5903 465f |0004: iput v3, v0, Lorg/purple/smoke/Steam$4$1;.val$availableSteamWriters:I // field@5f46 │ │ -432204: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43220a: 0e00 |0009: return-void │ │ +4321e4: |[4321e4] org.purple.smoke.Steam$4$1.:(Lorg/purple/smoke/Steam$4;II)V │ │ +4321f4: 5b01 445f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$4$1;.this$1:Lorg/purple/smoke/Steam$4; // field@5f44 │ │ +4321f8: 5902 455f |0002: iput v2, v0, Lorg/purple/smoke/Steam$4$1;.val$availableSteamReaders:I // field@5f45 │ │ +4321fc: 5903 465f |0004: iput v3, v0, Lorg/purple/smoke/Steam$4$1;.val$availableSteamWriters:I // field@5f46 │ │ +432200: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +432206: 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 │ │ @@ -745263,39 +745262,39 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 52 16-bit code units │ │ -43220c: |[43220c] org.purple.smoke.Steam$4$1.run:()V │ │ -43221c: 5430 445f |0000: iget-object v0, v3, Lorg/purple/smoke/Steam$4$1;.this$1:Lorg/purple/smoke/Steam$4; // field@5f44 │ │ -432220: 5400 475f |0002: iget-object v0, v0, Lorg/purple/smoke/Steam$4;.this$0:Lorg/purple/smoke/Steam; // field@5f47 │ │ -432224: 7110 b1bd 0000 |0004: invoke-static {v0}, Lorg/purple/smoke/Steam;.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; // method@bdb1 │ │ -43222a: 0c00 |0007: move-result-object v0 │ │ -43222c: 6e10 364c 0000 |0008: invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -432232: 5430 445f |000b: iget-object v0, v3, Lorg/purple/smoke/Steam$4$1;.this$1:Lorg/purple/smoke/Steam$4; // field@5f44 │ │ -432236: 5400 475f |000d: iget-object v0, v0, Lorg/purple/smoke/Steam$4;.this$0:Lorg/purple/smoke/Steam; // field@5f47 │ │ -43223a: 7110 b5bd 0000 |000f: invoke-static {v0}, Lorg/purple/smoke/Steam;.access$600:(Lorg/purple/smoke/Steam;)Landroid/widget/TextView; // method@bdb5 │ │ -432240: 0c00 |0012: move-result-object v0 │ │ -432242: 2201 f10a |0013: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -432246: 7010 ee5c 0100 |0015: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -43224c: 1a02 380b |0018: const-string v2, "Active Steam Readers: " // string@0b38 │ │ -432250: 6e20 f95c 2100 |001a: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -432256: 5232 455f |001d: iget v2, v3, Lorg/purple/smoke/Steam$4$1;.val$availableSteamReaders:I // field@5f45 │ │ -43225a: 6e20 f45c 2100 |001f: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ -432260: 1a02 0900 |0022: const-string v2, " │ │ +432208: |[432208] org.purple.smoke.Steam$4$1.run:()V │ │ +432218: 5430 445f |0000: iget-object v0, v3, Lorg/purple/smoke/Steam$4$1;.this$1:Lorg/purple/smoke/Steam$4; // field@5f44 │ │ +43221c: 5400 475f |0002: iget-object v0, v0, Lorg/purple/smoke/Steam$4;.this$0:Lorg/purple/smoke/Steam; // field@5f47 │ │ +432220: 7110 b1bd 0000 |0004: invoke-static {v0}, Lorg/purple/smoke/Steam;.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; // method@bdb1 │ │ +432226: 0c00 |0007: move-result-object v0 │ │ +432228: 6e10 364c 0000 |0008: invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +43222e: 5430 445f |000b: iget-object v0, v3, Lorg/purple/smoke/Steam$4$1;.this$1:Lorg/purple/smoke/Steam$4; // field@5f44 │ │ +432232: 5400 475f |000d: iget-object v0, v0, Lorg/purple/smoke/Steam$4;.this$0:Lorg/purple/smoke/Steam; // field@5f47 │ │ +432236: 7110 b5bd 0000 |000f: invoke-static {v0}, Lorg/purple/smoke/Steam;.access$600:(Lorg/purple/smoke/Steam;)Landroid/widget/TextView; // method@bdb5 │ │ +43223c: 0c00 |0012: move-result-object v0 │ │ +43223e: 2201 f10a |0013: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +432242: 7010 ee5c 0100 |0015: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +432248: 1a02 380b |0018: const-string v2, "Active Steam Readers: " // string@0b38 │ │ +43224c: 6e20 f95c 2100 |001a: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +432252: 5232 455f |001d: iget v2, v3, Lorg/purple/smoke/Steam$4$1;.val$availableSteamReaders:I // field@5f45 │ │ +432256: 6e20 f45c 2100 |001f: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ +43225c: 1a02 0900 |0022: const-string v2, " │ │ Active Steam Writers: " // string@0009 │ │ -432264: 6e20 f95c 2100 |0024: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43226a: 5232 465f |0027: iget v2, v3, Lorg/purple/smoke/Steam$4$1;.val$availableSteamWriters:I // field@5f46 │ │ -43226e: 6e20 f45c 2100 |0029: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ -432274: 6e10 035d 0100 |002c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -43227a: 0c01 |002f: move-result-object v1 │ │ -43227c: 6e20 495b 1000 |0030: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -432282: 0e00 |0033: return-void │ │ +432260: 6e20 f95c 2100 |0024: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +432266: 5232 465f |0027: iget v2, v3, Lorg/purple/smoke/Steam$4$1;.val$availableSteamWriters:I // field@5f46 │ │ +43226a: 6e20 f45c 2100 |0029: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ +432270: 6e10 035d 0100 |002c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +432276: 0c01 |002f: move-result-object v1 │ │ +432278: 6e20 495b 1000 |0030: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +43227e: 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; │ │ @@ -745335,18 +745334,18 @@ │ │ type : '(Lorg/purple/smoke/Steam;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -432284: |[432284] org.purple.smoke.Steam$4.:(Lorg/purple/smoke/Steam;)V │ │ -432294: 5b01 475f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$4;.this$0:Lorg/purple/smoke/Steam; // field@5f47 │ │ -432298: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43229e: 0e00 |0005: return-void │ │ +432280: |[432280] org.purple.smoke.Steam$4.:(Lorg/purple/smoke/Steam;)V │ │ +432290: 5b01 475f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$4;.this$0:Lorg/purple/smoke/Steam; // field@5f47 │ │ +432294: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43229a: 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; │ │ │ │ @@ -745356,28 +745355,28 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 27 16-bit code units │ │ -4322a0: |[4322a0] org.purple.smoke.Steam$4.run:()V │ │ -4322b0: 7100 10bb 0000 |0000: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -4322b6: 0c00 |0003: move-result-object v0 │ │ -4322b8: 6e10 fdba 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.availableSteamReaders:()I // method@bafd │ │ -4322be: 0a00 |0007: move-result v0 │ │ -4322c0: 7100 10bb 0000 |0008: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -4322c6: 0c01 |000b: move-result-object v1 │ │ -4322c8: 6e10 feba 0100 |000c: invoke-virtual {v1}, Lorg/purple/smoke/Kernel;.availableSteamWriters:()I // method@bafe │ │ -4322ce: 0a01 |000f: move-result v1 │ │ -4322d0: 5442 475f |0010: iget-object v2, v4, Lorg/purple/smoke/Steam$4;.this$0:Lorg/purple/smoke/Steam; // field@5f47 │ │ -4322d4: 2203 191b |0012: new-instance v3, Lorg/purple/smoke/Steam$4$1; // type@1b19 │ │ -4322d8: 7040 9cbd 4310 |0014: invoke-direct {v3, v4, v0, v1}, Lorg/purple/smoke/Steam$4$1;.:(Lorg/purple/smoke/Steam$4;II)V // method@bd9c │ │ -4322de: 6e20 d3bd 3200 |0017: invoke-virtual {v2, v3}, Lorg/purple/smoke/Steam;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bdd3 │ │ -4322e4: 0e00 |001a: return-void │ │ +43229c: |[43229c] org.purple.smoke.Steam$4.run:()V │ │ +4322ac: 7100 10bb 0000 |0000: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +4322b2: 0c00 |0003: move-result-object v0 │ │ +4322b4: 6e10 fdba 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.availableSteamReaders:()I // method@bafd │ │ +4322ba: 0a00 |0007: move-result v0 │ │ +4322bc: 7100 10bb 0000 |0008: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +4322c2: 0c01 |000b: move-result-object v1 │ │ +4322c4: 6e10 feba 0100 |000c: invoke-virtual {v1}, Lorg/purple/smoke/Kernel;.availableSteamWriters:()I // method@bafe │ │ +4322ca: 0a01 |000f: move-result v1 │ │ +4322cc: 5442 475f |0010: iget-object v2, v4, Lorg/purple/smoke/Steam$4;.this$0:Lorg/purple/smoke/Steam; // field@5f47 │ │ +4322d0: 2203 191b |0012: new-instance v3, Lorg/purple/smoke/Steam$4$1; // type@1b19 │ │ +4322d4: 7040 9cbd 4310 |0014: invoke-direct {v3, v4, v0, v1}, Lorg/purple/smoke/Steam$4$1;.:(Lorg/purple/smoke/Steam$4;II)V // method@bd9c │ │ +4322da: 6e20 d3bd 3200 |0017: invoke-virtual {v2, v3}, Lorg/purple/smoke/Steam;.runOnUiThread:(Ljava/lang/Runnable;)V // method@bdd3 │ │ +4322e0: 0e00 |001a: return-void │ │ catches : 1 │ │ 0x0000 - 0x001a │ │ Ljava/lang/Exception; -> 0x001a │ │ positions : │ │ 0x0000 line=267 │ │ 0x0004 line=268 │ │ 0x0008 line=269 │ │ @@ -745429,20 +745428,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 │ │ -43237c: |[43237c] org.purple.smoke.Steam$6.:(Lorg/purple/smoke/Steam;II)V │ │ -43238c: 5b01 495f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ -432390: 5902 4a5f |0002: iput v2, v0, Lorg/purple/smoke/Steam$6;.val$groupId:I // field@5f4a │ │ -432394: 5903 4b5f |0004: iput v3, v0, Lorg/purple/smoke/Steam$6;.val$itemId:I // field@5f4b │ │ -432398: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43239e: 0e00 |0009: return-void │ │ +432378: |[432378] org.purple.smoke.Steam$6.:(Lorg/purple/smoke/Steam;II)V │ │ +432388: 5b01 495f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ +43238c: 5902 4a5f |0002: iput v2, v0, Lorg/purple/smoke/Steam$6;.val$groupId:I // field@5f4a │ │ +432390: 5903 4b5f |0004: iput v3, v0, Lorg/purple/smoke/Steam$6;.val$itemId:I // field@5f4b │ │ +432394: 7010 8f5c 0000 |0006: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43239a: 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 │ │ @@ -745454,89 +745453,89 @@ │ │ type : '(Landroid/content/DialogInterface;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 5 │ │ insns size : 150 16-bit code units │ │ -4323a0: |[4323a0] org.purple.smoke.Steam$6.onCancel:(Landroid/content/DialogInterface;)V │ │ -4323b0: 5245 4a5f |0000: iget v5, v4, Lorg/purple/smoke/Steam$6;.val$groupId:I // field@5f4a │ │ -4323b4: 1a00 3ca3 |0002: const-string v0, "steam_files" // string@a33c │ │ -4323b8: 1a01 97a5 |0004: const-string v1, "true" // string@a597 │ │ -4323bc: 1a02 c363 |0006: const-string v2, "dialog_accepted" // string@63c3 │ │ -4323c0: 3805 6600 |0008: if-eqz v5, 006e // +0066 │ │ -4323c4: 1213 |000a: const/4 v3, #int 1 // #1 │ │ -4323c6: 3235 3000 |000b: if-eq v5, v3, 003b // +0030 │ │ -4323ca: 1270 |000d: const/4 v0, #int 7 // #7 │ │ -4323cc: 3205 0400 |000e: if-eq v5, v0, 0012 // +0004 │ │ -4323d0: 2900 8500 |0010: goto/16 0095 // +0085 │ │ -4323d4: 5445 495f |0012: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ -4323d8: 7110 b8bd 0500 |0014: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$900:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Database; // method@bdb8 │ │ -4323de: 0c05 |0017: move-result-object v5 │ │ -4323e0: 7100 b0bd 0000 |0018: invoke-static {}, Lorg/purple/smoke/Steam;.access$1000:()Lorg/purple/smoke/Cryptography; // method@bdb0 │ │ -4323e6: 0c00 |001b: move-result-object v0 │ │ -4323e8: 7100 74bd 0000 |001c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -4323ee: 0c01 |001f: move-result-object v1 │ │ -4323f0: 6e10 87bd 0100 |0020: invoke-virtual {v1}, Lorg/purple/smoke/State;.selectedSwitches:()Ljava/util/Set; // method@bd87 │ │ -4323f6: 0c01 |0023: move-result-object v1 │ │ -4323f8: 6202 6f00 |0024: sget-object v2, Landroid/os/Environment;.DIRECTORY_DOWNLOADS:Ljava/lang/String; // field@006f │ │ -4323fc: 7110 f304 0200 |0026: invoke-static {v2}, Landroid/os/Environment;.getExternalStoragePublicDirectory:(Ljava/lang/String;)Ljava/io/File; // method@04f3 │ │ -432402: 0c02 |0029: move-result-object v2 │ │ -432404: 6e10 a25b 0200 |002a: invoke-virtual {v2}, Ljava/io/File;.toString:()Ljava/lang/String; // method@5ba2 │ │ -43240a: 0c02 |002d: move-result-object v2 │ │ -43240c: 5243 4b5f |002e: iget v3, v4, Lorg/purple/smoke/Steam$6;.val$itemId:I // field@5f4b │ │ -432410: 6e53 2dba 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@ba2d │ │ -432416: 7100 74bd 0000 |0033: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -43241c: 0c05 |0036: move-result-object v5 │ │ -43241e: 6e10 6cbd 0500 |0037: invoke-virtual {v5}, Lorg/purple/smoke/State;.clearSelectedSwitches:()V // method@bd6c │ │ -432424: 285b |003a: goto 0095 // +005b │ │ -432426: 7100 74bd 0000 |003b: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -43242c: 0c05 |003e: move-result-object v5 │ │ -43242e: 6e20 75bd 2500 |003f: invoke-virtual {v5, v2}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd75 │ │ -432434: 0c05 |0042: move-result-object v5 │ │ -432436: 6e20 b85c 1500 |0043: invoke-virtual {v5, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -43243c: 0a05 |0046: move-result v5 │ │ -43243e: 3805 4e00 |0047: if-eqz v5, 0095 // +004e │ │ -432442: 5445 495f |0049: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ -432446: 7110 b8bd 0500 |004b: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$900:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Database; // method@bdb8 │ │ -43244c: 0c05 |004e: move-result-object v5 │ │ -43244e: 5241 4b5f |004f: iget v1, v4, Lorg/purple/smoke/Steam$6;.val$itemId:I // field@5f4b │ │ -432452: 7110 d55c 0100 |0051: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -432458: 0c01 |0054: move-result-object v1 │ │ -43245a: 6e30 eab9 1500 |0055: invoke-virtual {v5, v1, v0}, Lorg/purple/smoke/Database;.deleteEntry:(Ljava/lang/String;Ljava/lang/String;)Z // method@b9ea │ │ -432460: 0a05 |0058: move-result v5 │ │ -432462: 3805 3c00 |0059: if-eqz v5, 0095 // +003c │ │ -432466: 7100 74bd 0000 |005b: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -43246c: 0c05 |005e: move-result-object v5 │ │ -43246e: 5240 4b5f |005f: iget v0, v4, Lorg/purple/smoke/Steam$6;.val$itemId:I // field@5f4b │ │ -432472: 6e20 83bd 0500 |0061: invoke-virtual {v5, v0}, Lorg/purple/smoke/State;.removeSteamDetailsState:(I)V // method@bd83 │ │ -432478: 5445 495f |0064: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ -43247c: 7110 b1bd 0500 |0066: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; // method@bdb1 │ │ -432482: 0c05 |0069: move-result-object v5 │ │ -432484: 6e10 364c 0500 |006a: invoke-virtual {v5}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -43248a: 2828 |006d: goto 0095 // +0028 │ │ -43248c: 7100 74bd 0000 |006e: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -432492: 0c05 |0071: move-result-object v5 │ │ -432494: 6e20 75bd 2500 |0072: invoke-virtual {v5, v2}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd75 │ │ -43249a: 0c05 |0075: move-result-object v5 │ │ -43249c: 6e20 b85c 1500 |0076: invoke-virtual {v5, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4324a2: 0a05 |0079: move-result v5 │ │ -4324a4: 3805 1b00 |007a: if-eqz v5, 0095 // +001b │ │ -4324a8: 7100 74bd 0000 |007c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -4324ae: 0c05 |007f: move-result-object v5 │ │ -4324b0: 6e10 6dbd 0500 |0080: invoke-virtual {v5}, Lorg/purple/smoke/State;.clearSteamDetailsStates:()V // method@bd6d │ │ -4324b6: 5445 495f |0083: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ -4324ba: 7110 b8bd 0500 |0085: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$900:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Database; // method@bdb8 │ │ -4324c0: 0c05 |0088: move-result-object v5 │ │ -4324c2: 6e20 e4b9 0500 |0089: invoke-virtual {v5, v0}, Lorg/purple/smoke/Database;.clearTable:(Ljava/lang/String;)V // method@b9e4 │ │ -4324c8: 5445 495f |008c: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ -4324cc: 7110 b1bd 0500 |008e: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; // method@bdb1 │ │ -4324d2: 0c05 |0091: move-result-object v5 │ │ -4324d4: 6e10 364c 0500 |0092: invoke-virtual {v5}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -4324da: 0e00 |0095: return-void │ │ +43239c: |[43239c] org.purple.smoke.Steam$6.onCancel:(Landroid/content/DialogInterface;)V │ │ +4323ac: 5245 4a5f |0000: iget v5, v4, Lorg/purple/smoke/Steam$6;.val$groupId:I // field@5f4a │ │ +4323b0: 1a00 3ca3 |0002: const-string v0, "steam_files" // string@a33c │ │ +4323b4: 1a01 97a5 |0004: const-string v1, "true" // string@a597 │ │ +4323b8: 1a02 c363 |0006: const-string v2, "dialog_accepted" // string@63c3 │ │ +4323bc: 3805 6600 |0008: if-eqz v5, 006e // +0066 │ │ +4323c0: 1213 |000a: const/4 v3, #int 1 // #1 │ │ +4323c2: 3235 3000 |000b: if-eq v5, v3, 003b // +0030 │ │ +4323c6: 1270 |000d: const/4 v0, #int 7 // #7 │ │ +4323c8: 3205 0400 |000e: if-eq v5, v0, 0012 // +0004 │ │ +4323cc: 2900 8500 |0010: goto/16 0095 // +0085 │ │ +4323d0: 5445 495f |0012: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ +4323d4: 7110 b8bd 0500 |0014: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$900:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Database; // method@bdb8 │ │ +4323da: 0c05 |0017: move-result-object v5 │ │ +4323dc: 7100 b0bd 0000 |0018: invoke-static {}, Lorg/purple/smoke/Steam;.access$1000:()Lorg/purple/smoke/Cryptography; // method@bdb0 │ │ +4323e2: 0c00 |001b: move-result-object v0 │ │ +4323e4: 7100 74bd 0000 |001c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +4323ea: 0c01 |001f: move-result-object v1 │ │ +4323ec: 6e10 87bd 0100 |0020: invoke-virtual {v1}, Lorg/purple/smoke/State;.selectedSwitches:()Ljava/util/Set; // method@bd87 │ │ +4323f2: 0c01 |0023: move-result-object v1 │ │ +4323f4: 6202 6f00 |0024: sget-object v2, Landroid/os/Environment;.DIRECTORY_DOWNLOADS:Ljava/lang/String; // field@006f │ │ +4323f8: 7110 f304 0200 |0026: invoke-static {v2}, Landroid/os/Environment;.getExternalStoragePublicDirectory:(Ljava/lang/String;)Ljava/io/File; // method@04f3 │ │ +4323fe: 0c02 |0029: move-result-object v2 │ │ +432400: 6e10 a25b 0200 |002a: invoke-virtual {v2}, Ljava/io/File;.toString:()Ljava/lang/String; // method@5ba2 │ │ +432406: 0c02 |002d: move-result-object v2 │ │ +432408: 5243 4b5f |002e: iget v3, v4, Lorg/purple/smoke/Steam$6;.val$itemId:I // field@5f4b │ │ +43240c: 6e53 2dba 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@ba2d │ │ +432412: 7100 74bd 0000 |0033: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +432418: 0c05 |0036: move-result-object v5 │ │ +43241a: 6e10 6cbd 0500 |0037: invoke-virtual {v5}, Lorg/purple/smoke/State;.clearSelectedSwitches:()V // method@bd6c │ │ +432420: 285b |003a: goto 0095 // +005b │ │ +432422: 7100 74bd 0000 |003b: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +432428: 0c05 |003e: move-result-object v5 │ │ +43242a: 6e20 75bd 2500 |003f: invoke-virtual {v5, v2}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd75 │ │ +432430: 0c05 |0042: move-result-object v5 │ │ +432432: 6e20 b85c 1500 |0043: invoke-virtual {v5, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +432438: 0a05 |0046: move-result v5 │ │ +43243a: 3805 4e00 |0047: if-eqz v5, 0095 // +004e │ │ +43243e: 5445 495f |0049: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ +432442: 7110 b8bd 0500 |004b: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$900:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Database; // method@bdb8 │ │ +432448: 0c05 |004e: move-result-object v5 │ │ +43244a: 5241 4b5f |004f: iget v1, v4, Lorg/purple/smoke/Steam$6;.val$itemId:I // field@5f4b │ │ +43244e: 7110 d55c 0100 |0051: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +432454: 0c01 |0054: move-result-object v1 │ │ +432456: 6e30 eab9 1500 |0055: invoke-virtual {v5, v1, v0}, Lorg/purple/smoke/Database;.deleteEntry:(Ljava/lang/String;Ljava/lang/String;)Z // method@b9ea │ │ +43245c: 0a05 |0058: move-result v5 │ │ +43245e: 3805 3c00 |0059: if-eqz v5, 0095 // +003c │ │ +432462: 7100 74bd 0000 |005b: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +432468: 0c05 |005e: move-result-object v5 │ │ +43246a: 5240 4b5f |005f: iget v0, v4, Lorg/purple/smoke/Steam$6;.val$itemId:I // field@5f4b │ │ +43246e: 6e20 83bd 0500 |0061: invoke-virtual {v5, v0}, Lorg/purple/smoke/State;.removeSteamDetailsState:(I)V // method@bd83 │ │ +432474: 5445 495f |0064: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ +432478: 7110 b1bd 0500 |0066: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; // method@bdb1 │ │ +43247e: 0c05 |0069: move-result-object v5 │ │ +432480: 6e10 364c 0500 |006a: invoke-virtual {v5}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +432486: 2828 |006d: goto 0095 // +0028 │ │ +432488: 7100 74bd 0000 |006e: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +43248e: 0c05 |0071: move-result-object v5 │ │ +432490: 6e20 75bd 2500 |0072: invoke-virtual {v5, v2}, Lorg/purple/smoke/State;.getString:(Ljava/lang/String;)Ljava/lang/String; // method@bd75 │ │ +432496: 0c05 |0075: move-result-object v5 │ │ +432498: 6e20 b85c 1500 |0076: invoke-virtual {v5, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +43249e: 0a05 |0079: move-result v5 │ │ +4324a0: 3805 1b00 |007a: if-eqz v5, 0095 // +001b │ │ +4324a4: 7100 74bd 0000 |007c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +4324aa: 0c05 |007f: move-result-object v5 │ │ +4324ac: 6e10 6dbd 0500 |0080: invoke-virtual {v5}, Lorg/purple/smoke/State;.clearSteamDetailsStates:()V // method@bd6d │ │ +4324b2: 5445 495f |0083: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ +4324b6: 7110 b8bd 0500 |0085: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$900:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Database; // method@bdb8 │ │ +4324bc: 0c05 |0088: move-result-object v5 │ │ +4324be: 6e20 e4b9 0500 |0089: invoke-virtual {v5, v0}, Lorg/purple/smoke/Database;.clearTable:(Ljava/lang/String;)V // method@b9e4 │ │ +4324c4: 5445 495f |008c: iget-object v5, v4, Lorg/purple/smoke/Steam$6;.this$0:Lorg/purple/smoke/Steam; // field@5f49 │ │ +4324c8: 7110 b1bd 0500 |008e: invoke-static {v5}, Lorg/purple/smoke/Steam;.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; // method@bdb1 │ │ +4324ce: 0c05 |0091: move-result-object v5 │ │ +4324d0: 6e10 364c 0500 |0092: invoke-virtual {v5}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +4324d6: 0e00 |0095: return-void │ │ catches : 2 │ │ 0x0049 - 0x006d │ │ Ljava/lang/Exception; -> 0x0095 │ │ 0x007c - 0x0095 │ │ Ljava/lang/Exception; -> 0x0095 │ │ positions : │ │ 0x0000 line=613 │ │ @@ -745637,17 +745636,17 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -4324f4: |[4324f4] org.purple.smoke.Steam$ContextMenuEnumerator.:()V │ │ -432504: 7010 8f5c 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43250a: 0e00 |0003: return-void │ │ +4324f0: |[4324f0] org.purple.smoke.Steam$ContextMenuEnumerator.:()V │ │ +432500: 7010 8f5c 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +432506: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=149 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lorg/purple/smoke/Steam$ContextMenuEnumerator; │ │ │ │ Virtual methods - │ │ @@ -745685,18 +745684,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 │ │ -43250c: |[43250c] org.purple.smoke.Steam$SteamBroadcastReceiver.:(Lorg/purple/smoke/Steam;)V │ │ -43251c: 5b01 555f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ -432520: 7010 4201 0000 |0002: invoke-direct {v0}, Landroid/content/BroadcastReceiver;.:()V // method@0142 │ │ -432526: 0e00 |0005: return-void │ │ +432508: |[432508] org.purple.smoke.Steam$SteamBroadcastReceiver.:(Lorg/purple/smoke/Steam;)V │ │ +432518: 5b01 555f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ +43251c: 7010 4201 0000 |0002: invoke-direct {v0}, Landroid/content/BroadcastReceiver;.:()V // method@0142 │ │ +432522: 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; │ │ │ │ @@ -745706,114 +745705,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 │ │ -432528: |[432528] org.purple.smoke.Steam$SteamBroadcastReceiver.onReceive:(Landroid/content/Context;Landroid/content/Intent;)V │ │ -432538: 3804 ad00 |0000: if-eqz v4, 00ad // +00ad │ │ -43253c: 6e10 a501 0400 |0002: invoke-virtual {v4}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ -432542: 0c03 |0005: move-result-object v3 │ │ -432544: 3903 0400 |0006: if-nez v3, 000a // +0004 │ │ -432548: 2900 a500 |0008: goto/16 00ad // +00a5 │ │ -43254c: 6e10 a501 0400 |000a: invoke-virtual {v4}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ -432552: 0c03 |000d: move-result-object v3 │ │ -432554: 6e10 bf5c 0300 |000e: invoke-virtual {v3}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -43255a: 12f0 |0011: const/4 v0, #int -1 // #ff │ │ -43255c: 6e10 bf5c 0300 |0012: invoke-virtual {v3}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -432562: 0a01 |0015: move-result v1 │ │ -432564: 2c01 9800 0000 |0016: sparse-switch v1, 000000ae // +00000098 │ │ -43256a: 2900 5900 |0019: goto/16 0072 // +0059 │ │ -43256e: 1a01 0892 |001b: const-string v1, "org.purple.smoke.state_participants_populated" // string@9208 │ │ -432572: 6e20 b85c 1300 |001d: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -432578: 0a03 |0020: move-result v3 │ │ -43257a: 3903 0300 |0021: if-nez v3, 0024 // +0003 │ │ -43257e: 284f |0023: goto 0072 // +004f │ │ -432580: 1270 |0024: const/4 v0, #int 7 // #7 │ │ -432582: 284d |0025: goto 0072 // +004d │ │ -432584: 1a01 0b92 |0026: const-string v1, "org.purple.smoke.steam_status" // string@920b │ │ -432588: 6e20 b85c 1300 |0028: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -43258e: 0a03 |002b: move-result v3 │ │ -432590: 3903 0300 |002c: if-nez v3, 002f // +0003 │ │ -432594: 2844 |002e: goto 0072 // +0044 │ │ -432596: 1260 |002f: const/4 v0, #int 6 // #6 │ │ -432598: 2842 |0030: goto 0072 // +0042 │ │ -43259a: 1a01 ff91 |0031: const-string v1, "org.purple.smoke.network_connected" // string@91ff │ │ -43259e: 6e20 b85c 1300 |0033: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4325a4: 0a03 |0036: move-result v3 │ │ -4325a6: 3903 0300 |0037: if-nez v3, 003a // +0003 │ │ -4325aa: 2839 |0039: goto 0072 // +0039 │ │ -4325ac: 1250 |003a: const/4 v0, #int 5 // #5 │ │ -4325ae: 2837 |003b: goto 0072 // +0037 │ │ -4325b0: 1a01 f491 |003c: const-string v1, "org.purple.smoke.chat_message" // string@91f4 │ │ -4325b4: 6e20 b85c 1300 |003e: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4325ba: 0a03 |0041: move-result v3 │ │ -4325bc: 3903 0300 |0042: if-nez v3, 0045 // +0003 │ │ -4325c0: 282e |0044: goto 0072 // +002e │ │ -4325c2: 1240 |0045: const/4 v0, #int 4 // #4 │ │ -4325c4: 282c |0046: goto 0072 // +002c │ │ -4325c6: 1a01 0c92 |0047: const-string v1, "org.purple.smoke.time" // string@920c │ │ -4325ca: 6e20 b85c 1300 |0049: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4325d0: 0a03 |004c: move-result v3 │ │ -4325d2: 3903 0300 |004d: if-nez v3, 0050 // +0003 │ │ -4325d6: 2823 |004f: goto 0072 // +0023 │ │ -4325d8: 1230 |0050: const/4 v0, #int 3 // #3 │ │ -4325da: 2821 |0051: goto 0072 // +0021 │ │ -4325dc: 1a01 0992 |0052: const-string v1, "org.purple.smoke.steam_added" // string@9209 │ │ -4325e0: 6e20 b85c 1300 |0054: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4325e6: 0a03 |0057: move-result v3 │ │ -4325e8: 3903 0300 |0058: if-nez v3, 005b // +0003 │ │ -4325ec: 2818 |005a: goto 0072 // +0018 │ │ -4325ee: 1220 |005b: const/4 v0, #int 2 // #2 │ │ -4325f0: 2816 |005c: goto 0072 // +0016 │ │ -4325f2: 1a01 fd91 |005d: const-string v1, "org.purple.smoke.neighbor_connected" // string@91fd │ │ -4325f6: 6e20 b85c 1300 |005f: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4325fc: 0a03 |0062: move-result v3 │ │ -4325fe: 3903 0300 |0063: if-nez v3, 0066 // +0003 │ │ -432602: 280d |0065: goto 0072 // +000d │ │ -432604: 1210 |0066: const/4 v0, #int 1 // #1 │ │ -432606: 280b |0067: goto 0072 // +000b │ │ -432608: 1a01 0092 |0068: const-string v1, "org.purple.smoke.network_disconnected" // string@9200 │ │ -43260c: 6e20 b85c 1300 |006a: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -432612: 0a03 |006d: move-result v3 │ │ -432614: 3903 0300 |006e: if-nez v3, 0071 // +0003 │ │ -432618: 2802 |0070: goto 0072 // +0002 │ │ -43261a: 1200 |0071: const/4 v0, #int 0 // #0 │ │ -43261c: 1403 9900 087f |0072: const v3, #float 1.80778e+38 // #7f080099 │ │ -432622: 2b00 5b00 0000 |0075: packed-switch v0, 000000d0 // +0000005b │ │ -432628: 2835 |0078: goto 00ad // +0035 │ │ -43262a: 5423 555f |0079: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ -43262e: 6e10 bfbd 0300 |007b: invoke-virtual {v3}, Lorg/purple/smoke/Steam;.invalidateOptionsMenu:()V // method@bdbf │ │ -432634: 5423 555f |007e: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ -432638: 7110 afbd 0300 |0080: invoke-static {v3}, Lorg/purple/smoke/Steam;.access$100:(Lorg/purple/smoke/Steam;)V // method@bdaf │ │ -43263e: 282a |0083: goto 00ad // +002a │ │ -432640: 5420 555f |0084: iget-object v0, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ -432644: 6e20 b9bd 3000 |0086: invoke-virtual {v0, v3}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ -43264a: 0c03 |0089: move-result-object v3 │ │ -43264c: 7130 fbbb 4003 |008a: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbfb │ │ -432652: 2820 |008d: goto 00ad // +0020 │ │ -432654: 5420 555f |008e: iget-object v0, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ -432658: 6e20 b9bd 3000 |0090: invoke-virtual {v0, v3}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ -43265e: 0c03 |0093: move-result-object v3 │ │ -432660: 7130 fbbb 4003 |0094: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbfb │ │ -432666: 2816 |0097: goto 00ad // +0016 │ │ -432668: 5423 555f |0098: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ -43266c: 7110 b1bd 0300 |009a: invoke-static {v3}, Lorg/purple/smoke/Steam;.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; // method@bdb1 │ │ -432672: 0c03 |009d: move-result-object v3 │ │ -432674: 6e10 364c 0300 |009e: invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -43267a: 280c |00a1: goto 00ad // +000c │ │ -43267c: 5423 555f |00a2: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ -432680: 7110 aebd 0300 |00a4: invoke-static {v3}, Lorg/purple/smoke/Steam;.access$000:(Lorg/purple/smoke/Steam;)V // method@bdae │ │ -432686: 2806 |00a7: goto 00ad // +0006 │ │ -432688: 5423 555f |00a8: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ -43268c: 7110 aebd 0300 |00aa: invoke-static {v3}, Lorg/purple/smoke/Steam;.access$000:(Lorg/purple/smoke/Steam;)V // method@bdae │ │ -432692: 0e00 |00ad: return-void │ │ -432694: 0002 0800 b350 d3ac c38f deb3 6a4d ... |00ae: sparse-switch-data (34 units) │ │ -4326d8: 0001 0800 0000 0000 3300 0000 2d00 ... |00d0: packed-switch-data (20 units) │ │ +432524: |[432524] org.purple.smoke.Steam$SteamBroadcastReceiver.onReceive:(Landroid/content/Context;Landroid/content/Intent;)V │ │ +432534: 3804 ad00 |0000: if-eqz v4, 00ad // +00ad │ │ +432538: 6e10 a501 0400 |0002: invoke-virtual {v4}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ +43253e: 0c03 |0005: move-result-object v3 │ │ +432540: 3903 0400 |0006: if-nez v3, 000a // +0004 │ │ +432544: 2900 a500 |0008: goto/16 00ad // +00a5 │ │ +432548: 6e10 a501 0400 |000a: invoke-virtual {v4}, Landroid/content/Intent;.getAction:()Ljava/lang/String; // method@01a5 │ │ +43254e: 0c03 |000d: move-result-object v3 │ │ +432550: 6e10 bf5c 0300 |000e: invoke-virtual {v3}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +432556: 12f0 |0011: const/4 v0, #int -1 // #ff │ │ +432558: 6e10 bf5c 0300 |0012: invoke-virtual {v3}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +43255e: 0a01 |0015: move-result v1 │ │ +432560: 2c01 9800 0000 |0016: sparse-switch v1, 000000ae // +00000098 │ │ +432566: 2900 5900 |0019: goto/16 0072 // +0059 │ │ +43256a: 1a01 0892 |001b: const-string v1, "org.purple.smoke.state_participants_populated" // string@9208 │ │ +43256e: 6e20 b85c 1300 |001d: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +432574: 0a03 |0020: move-result v3 │ │ +432576: 3903 0300 |0021: if-nez v3, 0024 // +0003 │ │ +43257a: 284f |0023: goto 0072 // +004f │ │ +43257c: 1270 |0024: const/4 v0, #int 7 // #7 │ │ +43257e: 284d |0025: goto 0072 // +004d │ │ +432580: 1a01 0b92 |0026: const-string v1, "org.purple.smoke.steam_status" // string@920b │ │ +432584: 6e20 b85c 1300 |0028: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +43258a: 0a03 |002b: move-result v3 │ │ +43258c: 3903 0300 |002c: if-nez v3, 002f // +0003 │ │ +432590: 2844 |002e: goto 0072 // +0044 │ │ +432592: 1260 |002f: const/4 v0, #int 6 // #6 │ │ +432594: 2842 |0030: goto 0072 // +0042 │ │ +432596: 1a01 ff91 |0031: const-string v1, "org.purple.smoke.network_connected" // string@91ff │ │ +43259a: 6e20 b85c 1300 |0033: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4325a0: 0a03 |0036: move-result v3 │ │ +4325a2: 3903 0300 |0037: if-nez v3, 003a // +0003 │ │ +4325a6: 2839 |0039: goto 0072 // +0039 │ │ +4325a8: 1250 |003a: const/4 v0, #int 5 // #5 │ │ +4325aa: 2837 |003b: goto 0072 // +0037 │ │ +4325ac: 1a01 f491 |003c: const-string v1, "org.purple.smoke.chat_message" // string@91f4 │ │ +4325b0: 6e20 b85c 1300 |003e: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4325b6: 0a03 |0041: move-result v3 │ │ +4325b8: 3903 0300 |0042: if-nez v3, 0045 // +0003 │ │ +4325bc: 282e |0044: goto 0072 // +002e │ │ +4325be: 1240 |0045: const/4 v0, #int 4 // #4 │ │ +4325c0: 282c |0046: goto 0072 // +002c │ │ +4325c2: 1a01 0c92 |0047: const-string v1, "org.purple.smoke.time" // string@920c │ │ +4325c6: 6e20 b85c 1300 |0049: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4325cc: 0a03 |004c: move-result v3 │ │ +4325ce: 3903 0300 |004d: if-nez v3, 0050 // +0003 │ │ +4325d2: 2823 |004f: goto 0072 // +0023 │ │ +4325d4: 1230 |0050: const/4 v0, #int 3 // #3 │ │ +4325d6: 2821 |0051: goto 0072 // +0021 │ │ +4325d8: 1a01 0992 |0052: const-string v1, "org.purple.smoke.steam_added" // string@9209 │ │ +4325dc: 6e20 b85c 1300 |0054: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4325e2: 0a03 |0057: move-result v3 │ │ +4325e4: 3903 0300 |0058: if-nez v3, 005b // +0003 │ │ +4325e8: 2818 |005a: goto 0072 // +0018 │ │ +4325ea: 1220 |005b: const/4 v0, #int 2 // #2 │ │ +4325ec: 2816 |005c: goto 0072 // +0016 │ │ +4325ee: 1a01 fd91 |005d: const-string v1, "org.purple.smoke.neighbor_connected" // string@91fd │ │ +4325f2: 6e20 b85c 1300 |005f: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4325f8: 0a03 |0062: move-result v3 │ │ +4325fa: 3903 0300 |0063: if-nez v3, 0066 // +0003 │ │ +4325fe: 280d |0065: goto 0072 // +000d │ │ +432600: 1210 |0066: const/4 v0, #int 1 // #1 │ │ +432602: 280b |0067: goto 0072 // +000b │ │ +432604: 1a01 0092 |0068: const-string v1, "org.purple.smoke.network_disconnected" // string@9200 │ │ +432608: 6e20 b85c 1300 |006a: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +43260e: 0a03 |006d: move-result v3 │ │ +432610: 3903 0300 |006e: if-nez v3, 0071 // +0003 │ │ +432614: 2802 |0070: goto 0072 // +0002 │ │ +432616: 1200 |0071: const/4 v0, #int 0 // #0 │ │ +432618: 1403 9900 087f |0072: const v3, #float 1.80778e+38 // #7f080099 │ │ +43261e: 2b00 5b00 0000 |0075: packed-switch v0, 000000d0 // +0000005b │ │ +432624: 2835 |0078: goto 00ad // +0035 │ │ +432626: 5423 555f |0079: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ +43262a: 6e10 bfbd 0300 |007b: invoke-virtual {v3}, Lorg/purple/smoke/Steam;.invalidateOptionsMenu:()V // method@bdbf │ │ +432630: 5423 555f |007e: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ +432634: 7110 afbd 0300 |0080: invoke-static {v3}, Lorg/purple/smoke/Steam;.access$100:(Lorg/purple/smoke/Steam;)V // method@bdaf │ │ +43263a: 282a |0083: goto 00ad // +002a │ │ +43263c: 5420 555f |0084: iget-object v0, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ +432640: 6e20 b9bd 3000 |0086: invoke-virtual {v0, v3}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ +432646: 0c03 |0089: move-result-object v3 │ │ +432648: 7130 fbbb 4003 |008a: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbfb │ │ +43264e: 2820 |008d: goto 00ad // +0020 │ │ +432650: 5420 555f |008e: iget-object v0, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ +432654: 6e20 b9bd 3000 |0090: invoke-virtual {v0, v3}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ +43265a: 0c03 |0093: move-result-object v3 │ │ +43265c: 7130 fbbb 4003 |0094: invoke-static {v0, v4, v3}, Lorg/purple/smoke/Miscellaneous;.showNotification:(Landroid/content/Context;Landroid/content/Intent;Landroid/view/View;)V // method@bbfb │ │ +432662: 2816 |0097: goto 00ad // +0016 │ │ +432664: 5423 555f |0098: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ +432668: 7110 b1bd 0300 |009a: invoke-static {v3}, Lorg/purple/smoke/Steam;.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; // method@bdb1 │ │ +43266e: 0c03 |009d: move-result-object v3 │ │ +432670: 6e10 364c 0300 |009e: invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +432676: 280c |00a1: goto 00ad // +000c │ │ +432678: 5423 555f |00a2: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ +43267c: 7110 aebd 0300 |00a4: invoke-static {v3}, Lorg/purple/smoke/Steam;.access$000:(Lorg/purple/smoke/Steam;)V // method@bdae │ │ +432682: 2806 |00a7: goto 00ad // +0006 │ │ +432684: 5423 555f |00a8: iget-object v3, v2, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.this$0:Lorg/purple/smoke/Steam; // field@5f55 │ │ +432688: 7110 aebd 0300 |00aa: invoke-static {v3}, Lorg/purple/smoke/Steam;.access$000:(Lorg/purple/smoke/Steam;)V // method@bdae │ │ +43268e: 0e00 |00ad: return-void │ │ +432690: 0002 0800 b350 d3ac c38f deb3 6a4d ... |00ae: sparse-switch-data (34 units) │ │ +4326d4: 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 │ │ @@ -745863,18 +745862,18 @@ │ │ type : '(Lorg/purple/smoke/SteamBubble;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -432a6c: |[432a6c] org.purple.smoke.SteamBubble$1.:(Lorg/purple/smoke/SteamBubble;)V │ │ -432a7c: 5b01 6f5f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ -432a80: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -432a86: 0e00 |0005: return-void │ │ +432a68: |[432a68] org.purple.smoke.SteamBubble$1.:(Lorg/purple/smoke/SteamBubble;)V │ │ +432a78: 5b01 6f5f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ +432a7c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +432a82: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=141 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/SteamBubble$1; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/SteamBubble; │ │ │ │ @@ -745884,91 +745883,91 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 10 │ │ ins : 2 │ │ outs : 7 │ │ insns size : 168 16-bit code units │ │ -432a88: |[432a88] org.purple.smoke.SteamBubble$1.onClick:(Landroid/view/View;)V │ │ -432a98: 5489 6f5f |0000: iget-object v9, v8, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ -432a9c: 7110 f8bd 0900 |0002: invoke-static {v9}, Lorg/purple/smoke/SteamBubble;.access$000:(Lorg/purple/smoke/SteamBubble;)Ljava/lang/String; // method@bdf8 │ │ -432aa2: 0c09 |0005: move-result-object v9 │ │ -432aa4: 6e10 bf5c 0900 |0006: invoke-virtual {v9}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -432aaa: 6e10 bf5c 0900 |0009: invoke-virtual {v9}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -432ab0: 0a00 |000c: move-result v0 │ │ -432ab2: 12f1 |000d: const/4 v1, #int -1 // #ff │ │ -432ab4: 2c00 8200 0000 |000e: sparse-switch v0, 00000090 // +00000082 │ │ -432aba: 2821 |0011: goto 0032 // +0021 │ │ -432abc: 1a00 2593 |0012: const-string v0, "pause" // string@9325 │ │ -432ac0: 6e20 b85c 0900 |0014: invoke-virtual {v9, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -432ac6: 0a09 |0017: move-result v9 │ │ -432ac8: 3909 0300 |0018: if-nez v9, 001b // +0003 │ │ -432acc: 2818 |001a: goto 0032 // +0018 │ │ -432ace: 1221 |001b: const/4 v1, #int 2 // #2 │ │ -432ad0: 2816 |001c: goto 0032 // +0016 │ │ -432ad2: 1a00 4998 |001d: const-string v0, "rewind" // string@9849 │ │ -432ad6: 6e20 b85c 0900 |001f: invoke-virtual {v9, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -432adc: 0a09 |0022: move-result v9 │ │ -432ade: 3909 0300 |0023: if-nez v9, 0026 // +0003 │ │ -432ae2: 280d |0025: goto 0032 // +000d │ │ -432ae4: 1211 |0026: const/4 v1, #int 1 // #1 │ │ -432ae6: 280b |0027: goto 0032 // +000b │ │ -432ae8: 1a00 2598 |0028: const-string v0, "resume" // string@9825 │ │ -432aec: 6e20 b85c 0900 |002a: invoke-virtual {v9, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -432af2: 0a09 |002d: move-result v9 │ │ -432af4: 3909 0300 |002e: if-nez v9, 0031 // +0003 │ │ -432af8: 2802 |0030: goto 0032 // +0002 │ │ -432afa: 1201 |0031: const/4 v1, #int 0 // #0 │ │ -432afc: 1a09 0b92 |0032: const-string v9, "org.purple.smoke.steam_status" // string@920b │ │ -432b00: 2b01 6a00 0000 |0034: packed-switch v1, 0000009e // +0000006a │ │ -432b06: 2858 |0037: goto 008f // +0058 │ │ -432b08: 5480 6f5f |0038: iget-object v0, v8, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ -432b0c: 7110 f9bd 0000 |003a: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$100:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/TextView; // method@bdf9 │ │ -432b12: 0c00 |003d: move-result-object v0 │ │ -432b14: 1a01 b918 |003e: const-string v1, "ETA: stalled" // string@18b9 │ │ -432b18: 6e20 495b 1000 |0040: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -432b1e: 5480 6f5f |0043: iget-object v0, v8, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ -432b22: 7110 fcbd 0000 |0045: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$400:(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Database; // method@bdfc │ │ -432b28: 0c00 |0048: move-result-object v0 │ │ -432b2a: 7100 fabd 0000 |0049: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$200:()Lorg/purple/smoke/Cryptography; // method@bdfa │ │ -432b30: 0c01 |004c: move-result-object v1 │ │ -432b32: 5482 6f5f |004d: iget-object v2, v8, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ -432b36: 7110 fbbd 0200 |004f: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdfb │ │ -432b3c: 0a02 |0052: move-result v2 │ │ -432b3e: 1a03 2993 |0053: const-string v3, "paused" // string@9329 │ │ -432b42: 1a04 cc04 |0055: const-string v4, "0.00 B / s" // string@04cc │ │ -432b46: 6e52 46ba 1043 |0057: 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@ba46 │ │ -432b4c: 7110 f7bb 0900 |005a: invoke-static {v9}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf7 │ │ -432b52: 2832 |005d: goto 008f // +0032 │ │ -432b54: 5480 6f5f |005e: iget-object v0, v8, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ -432b58: 7110 fcbd 0000 |0060: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$400:(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Database; // method@bdfc │ │ -432b5e: 0c01 |0063: move-result-object v1 │ │ -432b60: 7100 fabd 0000 |0064: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$200:()Lorg/purple/smoke/Cryptography; // method@bdfa │ │ -432b66: 0c02 |0067: move-result-object v2 │ │ -432b68: 5480 6f5f |0068: iget-object v0, v8, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ -432b6c: 7110 fbbd 0000 |006a: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdfb │ │ -432b72: 0a05 |006d: move-result v5 │ │ -432b74: 1606 0000 |006e: const-wide/16 v6, #int 0 // #0 │ │ -432b78: 1a03 4998 |0070: const-string v3, "rewind" // string@9849 │ │ -432b7c: 1a04 cc04 |0072: const-string v4, "0.00 B / s" // string@04cc │ │ -432b80: 7407 47ba 0100 |0074: 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@ba47 │ │ -432b86: 7110 f7bb 0900 |0077: invoke-static {v9}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf7 │ │ -432b8c: 2815 |007a: goto 008f // +0015 │ │ -432b8e: 5480 6f5f |007b: iget-object v0, v8, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ -432b92: 7110 fcbd 0000 |007d: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$400:(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Database; // method@bdfc │ │ -432b98: 0c00 |0080: move-result-object v0 │ │ -432b9a: 5481 6f5f |0081: iget-object v1, v8, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ -432b9e: 7110 fbbd 0100 |0083: invoke-static {v1}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdfb │ │ -432ba4: 0a01 |0086: move-result v1 │ │ -432ba6: 1a02 68a5 |0087: const-string v2, "transferring" // string@a568 │ │ -432baa: 6e30 44ba 2001 |0089: invoke-virtual {v0, v2, v1}, Lorg/purple/smoke/Database;.writeSteamStatus:(Ljava/lang/String;I)V // method@ba44 │ │ -432bb0: 7110 f7bb 0900 |008c: invoke-static {v9}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf7 │ │ -432bb6: 0e00 |008f: return-void │ │ -432bb8: 0002 0300 2dc8 4dc8 bb6c 4fc8 f625 ... |0090: sparse-switch-data (14 units) │ │ -432bd4: 0001 0300 0000 0000 4700 0000 2a00 ... |009e: packed-switch-data (10 units) │ │ +432a84: |[432a84] org.purple.smoke.SteamBubble$1.onClick:(Landroid/view/View;)V │ │ +432a94: 5489 6f5f |0000: iget-object v9, v8, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ +432a98: 7110 f8bd 0900 |0002: invoke-static {v9}, Lorg/purple/smoke/SteamBubble;.access$000:(Lorg/purple/smoke/SteamBubble;)Ljava/lang/String; // method@bdf8 │ │ +432a9e: 0c09 |0005: move-result-object v9 │ │ +432aa0: 6e10 bf5c 0900 |0006: invoke-virtual {v9}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +432aa6: 6e10 bf5c 0900 |0009: invoke-virtual {v9}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +432aac: 0a00 |000c: move-result v0 │ │ +432aae: 12f1 |000d: const/4 v1, #int -1 // #ff │ │ +432ab0: 2c00 8200 0000 |000e: sparse-switch v0, 00000090 // +00000082 │ │ +432ab6: 2821 |0011: goto 0032 // +0021 │ │ +432ab8: 1a00 2593 |0012: const-string v0, "pause" // string@9325 │ │ +432abc: 6e20 b85c 0900 |0014: invoke-virtual {v9, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +432ac2: 0a09 |0017: move-result v9 │ │ +432ac4: 3909 0300 |0018: if-nez v9, 001b // +0003 │ │ +432ac8: 2818 |001a: goto 0032 // +0018 │ │ +432aca: 1221 |001b: const/4 v1, #int 2 // #2 │ │ +432acc: 2816 |001c: goto 0032 // +0016 │ │ +432ace: 1a00 4998 |001d: const-string v0, "rewind" // string@9849 │ │ +432ad2: 6e20 b85c 0900 |001f: invoke-virtual {v9, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +432ad8: 0a09 |0022: move-result v9 │ │ +432ada: 3909 0300 |0023: if-nez v9, 0026 // +0003 │ │ +432ade: 280d |0025: goto 0032 // +000d │ │ +432ae0: 1211 |0026: const/4 v1, #int 1 // #1 │ │ +432ae2: 280b |0027: goto 0032 // +000b │ │ +432ae4: 1a00 2598 |0028: const-string v0, "resume" // string@9825 │ │ +432ae8: 6e20 b85c 0900 |002a: invoke-virtual {v9, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +432aee: 0a09 |002d: move-result v9 │ │ +432af0: 3909 0300 |002e: if-nez v9, 0031 // +0003 │ │ +432af4: 2802 |0030: goto 0032 // +0002 │ │ +432af6: 1201 |0031: const/4 v1, #int 0 // #0 │ │ +432af8: 1a09 0b92 |0032: const-string v9, "org.purple.smoke.steam_status" // string@920b │ │ +432afc: 2b01 6a00 0000 |0034: packed-switch v1, 0000009e // +0000006a │ │ +432b02: 2858 |0037: goto 008f // +0058 │ │ +432b04: 5480 6f5f |0038: iget-object v0, v8, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ +432b08: 7110 f9bd 0000 |003a: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$100:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/TextView; // method@bdf9 │ │ +432b0e: 0c00 |003d: move-result-object v0 │ │ +432b10: 1a01 b918 |003e: const-string v1, "ETA: stalled" // string@18b9 │ │ +432b14: 6e20 495b 1000 |0040: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +432b1a: 5480 6f5f |0043: iget-object v0, v8, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ +432b1e: 7110 fcbd 0000 |0045: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$400:(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Database; // method@bdfc │ │ +432b24: 0c00 |0048: move-result-object v0 │ │ +432b26: 7100 fabd 0000 |0049: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$200:()Lorg/purple/smoke/Cryptography; // method@bdfa │ │ +432b2c: 0c01 |004c: move-result-object v1 │ │ +432b2e: 5482 6f5f |004d: iget-object v2, v8, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ +432b32: 7110 fbbd 0200 |004f: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdfb │ │ +432b38: 0a02 |0052: move-result v2 │ │ +432b3a: 1a03 2993 |0053: const-string v3, "paused" // string@9329 │ │ +432b3e: 1a04 cc04 |0055: const-string v4, "0.00 B / s" // string@04cc │ │ +432b42: 6e52 46ba 1043 |0057: 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@ba46 │ │ +432b48: 7110 f7bb 0900 |005a: invoke-static {v9}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf7 │ │ +432b4e: 2832 |005d: goto 008f // +0032 │ │ +432b50: 5480 6f5f |005e: iget-object v0, v8, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ +432b54: 7110 fcbd 0000 |0060: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$400:(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Database; // method@bdfc │ │ +432b5a: 0c01 |0063: move-result-object v1 │ │ +432b5c: 7100 fabd 0000 |0064: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$200:()Lorg/purple/smoke/Cryptography; // method@bdfa │ │ +432b62: 0c02 |0067: move-result-object v2 │ │ +432b64: 5480 6f5f |0068: iget-object v0, v8, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ +432b68: 7110 fbbd 0000 |006a: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdfb │ │ +432b6e: 0a05 |006d: move-result v5 │ │ +432b70: 1606 0000 |006e: const-wide/16 v6, #int 0 // #0 │ │ +432b74: 1a03 4998 |0070: const-string v3, "rewind" // string@9849 │ │ +432b78: 1a04 cc04 |0072: const-string v4, "0.00 B / s" // string@04cc │ │ +432b7c: 7407 47ba 0100 |0074: 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@ba47 │ │ +432b82: 7110 f7bb 0900 |0077: invoke-static {v9}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf7 │ │ +432b88: 2815 |007a: goto 008f // +0015 │ │ +432b8a: 5480 6f5f |007b: iget-object v0, v8, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ +432b8e: 7110 fcbd 0000 |007d: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$400:(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Database; // method@bdfc │ │ +432b94: 0c00 |0080: move-result-object v0 │ │ +432b96: 5481 6f5f |0081: iget-object v1, v8, Lorg/purple/smoke/SteamBubble$1;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f6f │ │ +432b9a: 7110 fbbd 0100 |0083: invoke-static {v1}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdfb │ │ +432ba0: 0a01 |0086: move-result v1 │ │ +432ba2: 1a02 68a5 |0087: const-string v2, "transferring" // string@a568 │ │ +432ba6: 6e30 44ba 2001 |0089: invoke-virtual {v0, v2, v1}, Lorg/purple/smoke/Database;.writeSteamStatus:(Ljava/lang/String;I)V // method@ba44 │ │ +432bac: 7110 f7bb 0900 |008c: invoke-static {v9}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf7 │ │ +432bb2: 0e00 |008f: return-void │ │ +432bb4: 0002 0300 2dc8 4dc8 bb6c 4fc8 f625 ... |0090: sparse-switch-data (14 units) │ │ +432bd0: 0001 0300 0000 0000 4700 0000 2a00 ... |009e: packed-switch-data (10 units) │ │ catches : (none) │ │ positions : │ │ 0x0000 line=144 │ │ 0x0038 line=147 │ │ 0x0043 line=148 │ │ 0x0049 line=149 │ │ 0x005a line=151 │ │ @@ -746018,18 +746017,18 @@ │ │ type : '(Lorg/purple/smoke/SteamBubble;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -432be8: |[432be8] org.purple.smoke.SteamBubble$2.:(Lorg/purple/smoke/SteamBubble;)V │ │ -432bf8: 5b01 705f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f70 │ │ -432bfc: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -432c02: 0e00 |0005: return-void │ │ +432be4: |[432be4] org.purple.smoke.SteamBubble$2.:(Lorg/purple/smoke/SteamBubble;)V │ │ +432bf4: 5b01 705f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f70 │ │ +432bf8: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +432bfe: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=177 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/SteamBubble$2; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/SteamBubble; │ │ │ │ @@ -746039,42 +746038,42 @@ │ │ type : '(Landroid/widget/CompoundButton;Z)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 56 16-bit code units │ │ -432c04: |[432c04] org.purple.smoke.SteamBubble$2.onCheckedChanged:(Landroid/widget/CompoundButton;Z)V │ │ -432c14: 7100 74bd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -432c1a: 0c02 |0003: move-result-object v2 │ │ -432c1c: 5410 705f |0004: iget-object v0, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f70 │ │ -432c20: 7110 fbbd 0000 |0006: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdfb │ │ -432c26: 0a00 |0009: move-result v0 │ │ -432c28: 6e30 8fbd 3200 |000a: invoke-virtual {v2, v3, v0}, Lorg/purple/smoke/State;.setSteamDetailsState:(ZI)V // method@bd8f │ │ -432c2e: 3803 1600 |000d: if-eqz v3, 0023 // +0016 │ │ -432c32: 5412 705f |000f: iget-object v2, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f70 │ │ -432c36: 7110 fdbd 0200 |0011: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$500:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; // method@bdfd │ │ -432c3c: 0c02 |0014: move-result-object v2 │ │ -432c3e: 1203 |0015: const/4 v3, #int 0 // #0 │ │ -432c40: 6e20 e859 3200 |0016: invoke-virtual {v2, v3}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ -432c46: 5412 705f |0019: iget-object v2, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f70 │ │ -432c4a: 7110 febd 0200 |001b: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$600:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; // method@bdfe │ │ -432c50: 0c02 |001e: move-result-object v2 │ │ -432c52: 6e20 e859 3200 |001f: invoke-virtual {v2, v3}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ -432c58: 2815 |0022: goto 0037 // +0015 │ │ -432c5a: 5412 705f |0023: iget-object v2, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f70 │ │ -432c5e: 7110 fdbd 0200 |0025: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$500:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; // method@bdfd │ │ -432c64: 0c02 |0028: move-result-object v2 │ │ -432c66: 1303 0800 |0029: const/16 v3, #int 8 // #8 │ │ -432c6a: 6e20 e859 3200 |002b: invoke-virtual {v2, v3}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ -432c70: 5412 705f |002e: iget-object v2, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f70 │ │ -432c74: 7110 febd 0200 |0030: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$600:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; // method@bdfe │ │ -432c7a: 0c02 |0033: move-result-object v2 │ │ -432c7c: 6e20 e859 3200 |0034: invoke-virtual {v2, v3}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ -432c82: 0e00 |0037: return-void │ │ +432c00: |[432c00] org.purple.smoke.SteamBubble$2.onCheckedChanged:(Landroid/widget/CompoundButton;Z)V │ │ +432c10: 7100 74bd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +432c16: 0c02 |0003: move-result-object v2 │ │ +432c18: 5410 705f |0004: iget-object v0, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f70 │ │ +432c1c: 7110 fbbd 0000 |0006: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdfb │ │ +432c22: 0a00 |0009: move-result v0 │ │ +432c24: 6e30 8fbd 3200 |000a: invoke-virtual {v2, v3, v0}, Lorg/purple/smoke/State;.setSteamDetailsState:(ZI)V // method@bd8f │ │ +432c2a: 3803 1600 |000d: if-eqz v3, 0023 // +0016 │ │ +432c2e: 5412 705f |000f: iget-object v2, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f70 │ │ +432c32: 7110 fdbd 0200 |0011: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$500:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; // method@bdfd │ │ +432c38: 0c02 |0014: move-result-object v2 │ │ +432c3a: 1203 |0015: const/4 v3, #int 0 // #0 │ │ +432c3c: 6e20 e859 3200 |0016: invoke-virtual {v2, v3}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ +432c42: 5412 705f |0019: iget-object v2, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f70 │ │ +432c46: 7110 febd 0200 |001b: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$600:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; // method@bdfe │ │ +432c4c: 0c02 |001e: move-result-object v2 │ │ +432c4e: 6e20 e859 3200 |001f: invoke-virtual {v2, v3}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ +432c54: 2815 |0022: goto 0037 // +0015 │ │ +432c56: 5412 705f |0023: iget-object v2, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f70 │ │ +432c5a: 7110 fdbd 0200 |0025: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$500:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; // method@bdfd │ │ +432c60: 0c02 |0028: move-result-object v2 │ │ +432c62: 1303 0800 |0029: const/16 v3, #int 8 // #8 │ │ +432c66: 6e20 e859 3200 |002b: invoke-virtual {v2, v3}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ +432c6c: 5412 705f |002e: iget-object v2, v1, Lorg/purple/smoke/SteamBubble$2;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f70 │ │ +432c70: 7110 febd 0200 |0030: invoke-static {v2}, Lorg/purple/smoke/SteamBubble;.access$600:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; // method@bdfe │ │ +432c76: 0c02 |0033: move-result-object v2 │ │ +432c78: 6e20 e859 3200 |0034: invoke-virtual {v2, v3}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ +432c7e: 0e00 |0037: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=182 │ │ 0x000f line=186 │ │ 0x0019 line=187 │ │ 0x0023 line=191 │ │ 0x002e line=192 │ │ @@ -746118,18 +746117,18 @@ │ │ type : '(Lorg/purple/smoke/SteamBubble;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -432c84: |[432c84] org.purple.smoke.SteamBubble$3.:(Lorg/purple/smoke/SteamBubble;)V │ │ -432c94: 5b01 715f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamBubble$3;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f71 │ │ -432c98: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -432c9e: 0e00 |0005: return-void │ │ +432c80: |[432c80] org.purple.smoke.SteamBubble$3.:(Lorg/purple/smoke/SteamBubble;)V │ │ +432c90: 5b01 715f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamBubble$3;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f71 │ │ +432c94: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +432c9a: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=214 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/SteamBubble$3; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/SteamBubble; │ │ │ │ @@ -746139,20 +746138,20 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 10 16-bit code units │ │ -432ca0: |[432ca0] org.purple.smoke.SteamBubble$3.onClick:(Landroid/view/View;)V │ │ -432cb0: 5410 715f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamBubble$3;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f71 │ │ -432cb4: 7110 ffbd 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$700:(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Steam; // method@bdff │ │ -432cba: 0c00 |0005: move-result-object v0 │ │ -432cbc: 6e20 d8bd 2000 |0006: invoke-virtual {v0, v2}, Lorg/purple/smoke/Steam;.showContextMenu:(Landroid/view/View;)V // method@bdd8 │ │ -432cc2: 0e00 |0009: return-void │ │ +432c9c: |[432c9c] org.purple.smoke.SteamBubble$3.onClick:(Landroid/view/View;)V │ │ +432cac: 5410 715f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamBubble$3;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f71 │ │ +432cb0: 7110 ffbd 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/SteamBubble;.access$700:(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Steam; // method@bdff │ │ +432cb6: 0c00 |0005: move-result-object v0 │ │ +432cb8: 6e20 d8bd 2000 |0006: invoke-virtual {v0, v2}, Lorg/purple/smoke/Steam;.showContextMenu:(Landroid/view/View;)V // method@bdd8 │ │ +432cbe: 0e00 |0009: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=217 │ │ locals : │ │ 0x0000 - 0x000a reg=1 this Lorg/purple/smoke/SteamBubble$3; │ │ 0x0000 - 0x000a reg=2 (null) Landroid/view/View; │ │ │ │ @@ -746191,18 +746190,18 @@ │ │ type : '(Lorg/purple/smoke/SteamBubble;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -432cc4: |[432cc4] org.purple.smoke.SteamBubble$4.:(Lorg/purple/smoke/SteamBubble;)V │ │ -432cd4: 5b01 725f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamBubble$4;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f72 │ │ -432cd8: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -432cde: 0e00 |0005: return-void │ │ +432cc0: |[432cc0] org.purple.smoke.SteamBubble$4.:(Lorg/purple/smoke/SteamBubble;)V │ │ +432cd0: 5b01 725f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamBubble$4;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f72 │ │ +432cd4: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +432cda: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=224 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/SteamBubble$4; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/SteamBubble; │ │ │ │ @@ -746212,62 +746211,62 @@ │ │ type : '(Landroid/widget/SeekBar;IZ)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 4 │ │ outs : 4 │ │ insns size : 87 16-bit code units │ │ -432ce0: |[432ce0] org.purple.smoke.SteamBubble$4.onProgressChanged:(Landroid/widget/SeekBar;IZ)V │ │ -432cf0: 1234 |0000: const/4 v4, #int 3 // #3 │ │ -432cf2: 1220 |0001: const/4 v0, #int 2 // #2 │ │ -432cf4: 1211 |0002: const/4 v1, #int 1 // #1 │ │ -432cf6: 1242 |0003: const/4 v2, #int 4 // #4 │ │ -432cf8: 3805 0b00 |0004: if-eqz v5, 000f // +000b │ │ -432cfc: 3215 0900 |0006: if-eq v5, v1, 000f // +0009 │ │ -432d00: 3205 0700 |0008: if-eq v5, v0, 000f // +0007 │ │ -432d04: 3245 0500 |000a: if-eq v5, v4, 000f // +0005 │ │ -432d08: 3225 0300 |000c: if-eq v5, v2, 000f // +0003 │ │ -432d0c: 2848 |000e: goto 0056 // +0048 │ │ -432d0e: 3215 1a00 |000f: if-eq v5, v1, 0029 // +001a │ │ -432d12: 3205 1300 |0011: if-eq v5, v0, 0024 // +0013 │ │ -432d16: 3245 0c00 |0013: if-eq v5, v4, 001f // +000c │ │ -432d1a: 3225 0500 |0015: if-eq v5, v2, 001a // +0005 │ │ -432d1e: 1a04 c507 |0017: const-string v4, "4 reads / s" // string@07c5 │ │ -432d22: 2814 |0019: goto 002d // +0014 │ │ -432d24: 1302 6400 |001a: const/16 v2, #int 100 // #64 │ │ -432d28: 1a04 6006 |001c: const-string v4, "100 reads / s" // string@0660 │ │ -432d2c: 280f |001e: goto 002d // +000f │ │ -432d2e: 1302 3200 |001f: const/16 v2, #int 50 // #32 │ │ -432d32: 1a04 ec07 |0021: const-string v4, "50 reads / s" // string@07ec │ │ -432d36: 280a |0023: goto 002d // +000a │ │ -432d38: 1302 1400 |0024: const/16 v2, #int 20 // #14 │ │ -432d3c: 1a04 4007 |0026: const-string v4, "20 reads / s" // string@0740 │ │ -432d40: 2805 |0028: goto 002d // +0005 │ │ -432d42: 1302 0a00 |0029: const/16 v2, #int 10 // #a │ │ -432d46: 1a04 5d06 |002b: const-string v4, "10 reads / s" // string@065d │ │ -432d4a: 5435 725f |002d: iget-object v5, v3, Lorg/purple/smoke/SteamBubble$4;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f72 │ │ -432d4e: 7110 00be 0500 |002f: invoke-static {v5}, Lorg/purple/smoke/SteamBubble;.access$800:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/TextView; // method@be00 │ │ -432d54: 0c05 |0032: move-result-object v5 │ │ -432d56: 6e20 495b 4500 |0033: invoke-virtual {v5, v4}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -432d5c: 3806 2000 |0036: if-eqz v6, 0056 // +0020 │ │ -432d60: 5434 725f |0038: iget-object v4, v3, Lorg/purple/smoke/SteamBubble$4;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f72 │ │ -432d64: 7110 fcbd 0400 |003a: invoke-static {v4}, Lorg/purple/smoke/SteamBubble;.access$400:(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Database; // method@bdfc │ │ -432d6a: 0c04 |003d: move-result-object v4 │ │ -432d6c: 7100 fabd 0000 |003e: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$200:()Lorg/purple/smoke/Cryptography; // method@bdfa │ │ -432d72: 0c05 |0041: move-result-object v5 │ │ -432d74: 5436 725f |0042: iget-object v6, v3, Lorg/purple/smoke/SteamBubble$4;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f72 │ │ -432d78: 7110 fbbd 0600 |0044: invoke-static {v6}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdfb │ │ -432d7e: 0a06 |0047: move-result v6 │ │ -432d80: 6e40 45ba 5426 |0048: invoke-virtual {v4, v5, v6, v2}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;II)V // method@ba45 │ │ -432d86: 5434 725f |004b: iget-object v4, v3, Lorg/purple/smoke/SteamBubble$4;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f72 │ │ -432d8a: 7110 fbbd 0400 |004d: invoke-static {v4}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdfb │ │ -432d90: 0a04 |0050: move-result v4 │ │ -432d92: 1a05 0a92 |0051: const-string v5, "org.purple.smoke.steam_read_interval_change" // string@920a │ │ -432d96: 7130 f8bb 4502 |0053: invoke-static {v5, v4, v2}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;II)V // method@bbf8 │ │ -432d9c: 0e00 |0056: return-void │ │ +432cdc: |[432cdc] org.purple.smoke.SteamBubble$4.onProgressChanged:(Landroid/widget/SeekBar;IZ)V │ │ +432cec: 1234 |0000: const/4 v4, #int 3 // #3 │ │ +432cee: 1220 |0001: const/4 v0, #int 2 // #2 │ │ +432cf0: 1211 |0002: const/4 v1, #int 1 // #1 │ │ +432cf2: 1242 |0003: const/4 v2, #int 4 // #4 │ │ +432cf4: 3805 0b00 |0004: if-eqz v5, 000f // +000b │ │ +432cf8: 3215 0900 |0006: if-eq v5, v1, 000f // +0009 │ │ +432cfc: 3205 0700 |0008: if-eq v5, v0, 000f // +0007 │ │ +432d00: 3245 0500 |000a: if-eq v5, v4, 000f // +0005 │ │ +432d04: 3225 0300 |000c: if-eq v5, v2, 000f // +0003 │ │ +432d08: 2848 |000e: goto 0056 // +0048 │ │ +432d0a: 3215 1a00 |000f: if-eq v5, v1, 0029 // +001a │ │ +432d0e: 3205 1300 |0011: if-eq v5, v0, 0024 // +0013 │ │ +432d12: 3245 0c00 |0013: if-eq v5, v4, 001f // +000c │ │ +432d16: 3225 0500 |0015: if-eq v5, v2, 001a // +0005 │ │ +432d1a: 1a04 c507 |0017: const-string v4, "4 reads / s" // string@07c5 │ │ +432d1e: 2814 |0019: goto 002d // +0014 │ │ +432d20: 1302 6400 |001a: const/16 v2, #int 100 // #64 │ │ +432d24: 1a04 6006 |001c: const-string v4, "100 reads / s" // string@0660 │ │ +432d28: 280f |001e: goto 002d // +000f │ │ +432d2a: 1302 3200 |001f: const/16 v2, #int 50 // #32 │ │ +432d2e: 1a04 ec07 |0021: const-string v4, "50 reads / s" // string@07ec │ │ +432d32: 280a |0023: goto 002d // +000a │ │ +432d34: 1302 1400 |0024: const/16 v2, #int 20 // #14 │ │ +432d38: 1a04 4007 |0026: const-string v4, "20 reads / s" // string@0740 │ │ +432d3c: 2805 |0028: goto 002d // +0005 │ │ +432d3e: 1302 0a00 |0029: const/16 v2, #int 10 // #a │ │ +432d42: 1a04 5d06 |002b: const-string v4, "10 reads / s" // string@065d │ │ +432d46: 5435 725f |002d: iget-object v5, v3, Lorg/purple/smoke/SteamBubble$4;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f72 │ │ +432d4a: 7110 00be 0500 |002f: invoke-static {v5}, Lorg/purple/smoke/SteamBubble;.access$800:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/TextView; // method@be00 │ │ +432d50: 0c05 |0032: move-result-object v5 │ │ +432d52: 6e20 495b 4500 |0033: invoke-virtual {v5, v4}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +432d58: 3806 2000 |0036: if-eqz v6, 0056 // +0020 │ │ +432d5c: 5434 725f |0038: iget-object v4, v3, Lorg/purple/smoke/SteamBubble$4;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f72 │ │ +432d60: 7110 fcbd 0400 |003a: invoke-static {v4}, Lorg/purple/smoke/SteamBubble;.access$400:(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Database; // method@bdfc │ │ +432d66: 0c04 |003d: move-result-object v4 │ │ +432d68: 7100 fabd 0000 |003e: invoke-static {}, Lorg/purple/smoke/SteamBubble;.access$200:()Lorg/purple/smoke/Cryptography; // method@bdfa │ │ +432d6e: 0c05 |0041: move-result-object v5 │ │ +432d70: 5436 725f |0042: iget-object v6, v3, Lorg/purple/smoke/SteamBubble$4;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f72 │ │ +432d74: 7110 fbbd 0600 |0044: invoke-static {v6}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdfb │ │ +432d7a: 0a06 |0047: move-result v6 │ │ +432d7c: 6e40 45ba 5426 |0048: invoke-virtual {v4, v5, v6, v2}, Lorg/purple/smoke/Database;.writeSteamStatus:(Lorg/purple/smoke/Cryptography;II)V // method@ba45 │ │ +432d82: 5434 725f |004b: iget-object v4, v3, Lorg/purple/smoke/SteamBubble$4;.this$0:Lorg/purple/smoke/SteamBubble; // field@5f72 │ │ +432d86: 7110 fbbd 0400 |004d: invoke-static {v4}, Lorg/purple/smoke/SteamBubble;.access$300:(Lorg/purple/smoke/SteamBubble;)I // method@bdfb │ │ +432d8c: 0a04 |0050: move-result v4 │ │ +432d8e: 1a05 0a92 |0051: const-string v5, "org.purple.smoke.steam_read_interval_change" // string@920a │ │ +432d92: 7130 f8bb 4502 |0053: invoke-static {v5, v4, v2}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;II)V // method@bbf8 │ │ +432d98: 0e00 |0056: return-void │ │ catches : (none) │ │ positions : │ │ 0x002d line=260 │ │ 0x0038 line=264 │ │ 0x003e line=265 │ │ 0x004b line=266 │ │ 0x004d line=268 │ │ @@ -746283,31 +746282,31 @@ │ │ type : '(Landroid/widget/SeekBar;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -432da0: |[432da0] org.purple.smoke.SteamBubble$4.onStartTrackingTouch:(Landroid/widget/SeekBar;)V │ │ -432db0: 0e00 |0000: return-void │ │ +432d9c: |[432d9c] org.purple.smoke.SteamBubble$4.onStartTrackingTouch:(Landroid/widget/SeekBar;)V │ │ +432dac: 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 │ │ -432db4: |[432db4] org.purple.smoke.SteamBubble$4.onStopTrackingTouch:(Landroid/widget/SeekBar;)V │ │ -432dc4: 0e00 |0000: return-void │ │ +432db0: |[432db0] org.purple.smoke.SteamBubble$4.onStopTrackingTouch:(Landroid/widget/SeekBar;)V │ │ +432dc0: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ source_file_idx : 19582 (SteamBubble.java) │ │ │ │ Class #2743 header: │ │ @@ -746469,26 +746468,26 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 0 │ │ outs : 2 │ │ insns size : 22 16-bit code units │ │ -432ff4: |[432ff4] org.purple.smoke.SteamBubble.:()V │ │ -433004: 7100 91b9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ -43300a: 0c00 |0003: move-result-object v0 │ │ -43300c: 6900 915f |0004: sput-object v0, Lorg/purple/smoke/SteamBubble;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f91 │ │ -433010: 2200 a50b |0006: new-instance v0, Ljava/text/DecimalFormat; // type@0ba5 │ │ -433014: 1a01 cb04 |0008: const-string v1, "0.00" // string@04cb │ │ -433018: 7020 885f 1000 |000a: invoke-direct {v0, v1}, Ljava/text/DecimalFormat;.:(Ljava/lang/String;)V // method@5f88 │ │ -43301e: 6900 925f |000d: sput-object v0, Lorg/purple/smoke/SteamBubble;.s_decimalFormat:Ljava/text/DecimalFormat; // field@5f92 │ │ -433022: 7100 925f 0000 |000f: invoke-static {}, Ljava/text/NumberFormat;.getInstance:()Ljava/text/NumberFormat; // method@5f92 │ │ -433028: 0c00 |0012: move-result-object v0 │ │ -43302a: 6900 935f |0013: sput-object v0, Lorg/purple/smoke/SteamBubble;.s_numberFormat:Ljava/text/NumberFormat; // field@5f93 │ │ -43302e: 0e00 |0015: return-void │ │ +432ff0: |[432ff0] org.purple.smoke.SteamBubble.:()V │ │ +433000: 7100 91b9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ +433006: 0c00 |0003: move-result-object v0 │ │ +433008: 6900 915f |0004: sput-object v0, Lorg/purple/smoke/SteamBubble;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f91 │ │ +43300c: 2200 a50b |0006: new-instance v0, Ljava/text/DecimalFormat; // type@0ba5 │ │ +433010: 1a01 cb04 |0008: const-string v1, "0.00" // string@04cb │ │ +433014: 7020 885f 1000 |000a: invoke-direct {v0, v1}, Ljava/text/DecimalFormat;.:(Ljava/lang/String;)V // method@5f88 │ │ +43301a: 6900 925f |000d: sput-object v0, Lorg/purple/smoke/SteamBubble;.s_decimalFormat:Ljava/text/DecimalFormat; // field@5f92 │ │ +43301e: 7100 925f 0000 |000f: invoke-static {}, Ljava/text/NumberFormat;.getInstance:()Ljava/text/NumberFormat; // method@5f92 │ │ +433024: 0c00 |0012: move-result-object v0 │ │ +433026: 6900 935f |0013: sput-object v0, Lorg/purple/smoke/SteamBubble;.s_numberFormat:Ljava/text/NumberFormat; // field@5f93 │ │ +43302a: 0e00 |0015: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=79 │ │ 0x0006 line=80 │ │ 0x000f line=83 │ │ locals : │ │ │ │ @@ -746497,232 +746496,232 @@ │ │ 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 : 469 16-bit code units │ │ -433030: |[433030] org.purple.smoke.SteamBubble.:(Landroid/content/Context;Lorg/purple/smoke/Steam;Landroid/view/ViewGroup;)V │ │ -433040: 7020 c755 3200 |0000: invoke-direct {v2, v3}, Landroid/view/View;.:(Landroid/content/Context;)V // method@55c7 │ │ -433046: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -433048: 5b20 745f |0004: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ -43304c: 5b20 765f |0006: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_database:Lorg/purple/smoke/Database; // field@5f76 │ │ -433050: 5b20 855f |0008: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_menuButton:Landroid/widget/ImageButton; // field@5f85 │ │ -433054: 5b20 825f |000a: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_layoutA:Landroid/widget/LinearLayout; // field@5f82 │ │ -433058: 5b20 835f |000c: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_layoutB:Landroid/widget/LinearLayout; // field@5f83 │ │ -43305c: 5b20 885f |000e: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f88 │ │ -433060: 5b20 895f |0010: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ -433064: 5b20 8e5f |0012: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_steam:Lorg/purple/smoke/Steam; // field@5f8e │ │ -433068: 1a01 0000 |0014: const-string v1, "" // string@0000 │ │ -43306c: 5b21 755f |0016: iput-object v1, v2, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f75 │ │ -433070: 5b20 785f |0018: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_details:Landroid/widget/Switch; // field@5f78 │ │ -433074: 5b20 775f |001a: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f77 │ │ -433078: 5b20 795f |001c: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_digest:Landroid/widget/TextView; // field@5f79 │ │ -43307c: 5b20 7b5f |001e: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f7b │ │ -433080: 5b20 7c5f |0020: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_eta:Landroid/widget/TextView; // field@5f7c │ │ -433084: 5b20 7d5f |0022: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_fileIdentity:Landroid/widget/TextView; // field@5f7d │ │ -433088: 5b20 7e5f |0024: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_fileName:Landroid/widget/TextView; // field@5f7e │ │ -43308c: 5b20 7f5f |0026: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_fileSize:Landroid/widget/TextView; // field@5f7f │ │ -433090: 5b20 815f |0028: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f81 │ │ -433094: 5b20 845f |002a: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f84 │ │ -433098: 5b20 875f |002c: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f87 │ │ -43309c: 5b20 8a5f |002e: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f8a │ │ -4330a0: 5b20 8b5f |0030: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f8b │ │ -4330a4: 5b20 8d5f |0032: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_status:Landroid/widget/TextView; // field@5f8d │ │ -4330a8: 5b20 8f5f |0034: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_transferRate:Landroid/widget/TextView; // field@5f8f │ │ -4330ac: 5b20 7a5f |0036: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f7a │ │ -4330b0: 5b20 805f |0038: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f80 │ │ -4330b4: 5b20 8c5f |003a: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_separator:Landroid/view/View; // field@5f8c │ │ -4330b8: 5b20 905f |003c: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -4330bc: 5b20 735f |003e: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_context:Ljava/lang/ref/WeakReference; // field@5f73 │ │ -4330c0: 12f0 |0040: const/4 v0, #int -1 // #ff │ │ -4330c2: 5920 865f |0041: iput v0, v2, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f86 │ │ -4330c6: 2201 000b |0043: new-instance v1, Ljava/lang/ref/WeakReference; // type@0b00 │ │ -4330ca: 7020 285d 3100 |0045: invoke-direct {v1, v3}, Ljava/lang/ref/WeakReference;.:(Ljava/lang/Object;)V // method@5d28 │ │ -4330d0: 5b21 735f |0048: iput-object v1, v2, Lorg/purple/smoke/SteamBubble;.m_context:Ljava/lang/ref/WeakReference; // field@5f73 │ │ -4330d4: 7110 f4b9 0300 |004a: invoke-static {v3}, Lorg/purple/smoke/Database;.getInstance:(Landroid/content/Context;)Lorg/purple/smoke/Database; // method@b9f4 │ │ -4330da: 0c03 |004d: move-result-object v3 │ │ -4330dc: 5b23 765f |004e: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_database:Lorg/purple/smoke/Database; // field@5f76 │ │ -4330e0: 5b24 8e5f |0050: iput-object v4, v2, Lorg/purple/smoke/SteamBubble;.m_steam:Lorg/purple/smoke/Steam; // field@5f8e │ │ -4330e4: 5423 735f |0052: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_context:Ljava/lang/ref/WeakReference; // field@5f73 │ │ -4330e8: 6e10 295d 0300 |0054: invoke-virtual {v3}, Ljava/lang/ref/WeakReference;.get:()Ljava/lang/Object; // method@5d29 │ │ -4330ee: 0c03 |0057: move-result-object v3 │ │ -4330f0: 1f03 4100 |0058: check-cast v3, Landroid/content/Context; // type@0041 │ │ -4330f4: 1a04 537d |005a: const-string v4, "layout_inflater" // string@7d53 │ │ -4330f8: 6e20 7f01 4300 |005c: invoke-virtual {v3, v4}, Landroid/content/Context;.getSystemService:(Ljava/lang/String;)Ljava/lang/Object; // method@017f │ │ -4330fe: 0c03 |005f: move-result-object v3 │ │ -433100: 1f03 000a |0060: check-cast v3, Landroid/view/LayoutInflater; // type@0a00 │ │ -433104: 1404 4900 0a7f |0062: const v4, #float 1.83435e+38 // #7f0a0049 │ │ -43310a: 1201 |0065: const/4 v1, #int 0 // #0 │ │ -43310c: 6e40 5555 4315 |0066: invoke-virtual {v3, v4, v5, v1}, Landroid/view/LayoutInflater;.inflate:(ILandroid/view/ViewGroup;Z)Landroid/view/View; // method@5555 │ │ -433112: 0c03 |0069: move-result-object v3 │ │ -433114: 5b23 905f |006a: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -433118: 1404 4700 087f |006c: const v4, #float 1.80776e+38 // #7f080047 │ │ -43311e: 6e20 dd55 4300 |006f: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433124: 0c03 |0072: move-result-object v3 │ │ -433126: 1f03 5e0a |0073: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ -43312a: 5b23 745f |0075: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ -43312e: 2204 231b |0077: new-instance v4, Lorg/purple/smoke/SteamBubble$1; // type@1b23 │ │ -433132: 7020 ecbd 2400 |0079: invoke-direct {v4, v2}, Lorg/purple/smoke/SteamBubble$1;.:(Lorg/purple/smoke/SteamBubble;)V // method@bdec │ │ -433138: 6e20 e258 4300 |007c: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -43313e: 5423 905f |007f: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -433142: 1404 5300 087f |0081: const v4, #float 1.80777e+38 // #7f080053 │ │ -433148: 6e20 dd55 4300 |0084: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -43314e: 0c03 |0087: move-result-object v3 │ │ -433150: 1f03 970a |0088: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -433154: 5b23 775f |008a: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f77 │ │ -433158: 5423 905f |008c: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -43315c: 1404 5400 087f |008e: const v4, #float 1.80777e+38 // #7f080054 │ │ -433162: 6e20 dd55 4300 |0091: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433168: 0c03 |0094: move-result-object v3 │ │ -43316a: 1f03 8d0a |0095: check-cast v3, Landroid/widget/Switch; // type@0a8d │ │ -43316e: 5b23 785f |0097: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_details:Landroid/widget/Switch; // field@5f78 │ │ -433172: 2204 241b |0099: new-instance v4, Lorg/purple/smoke/SteamBubble$2; // type@1b24 │ │ -433176: 7020 eebd 2400 |009b: invoke-direct {v4, v2}, Lorg/purple/smoke/SteamBubble$2;.:(Lorg/purple/smoke/SteamBubble;)V // method@bdee │ │ -43317c: 6e20 e25a 4300 |009e: invoke-virtual {v3, v4}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -433182: 5423 905f |00a1: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -433186: 1404 5500 087f |00a3: const v4, #float 1.80777e+38 // #7f080055 │ │ -43318c: 6e20 dd55 4300 |00a6: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433192: 0c03 |00a9: move-result-object v3 │ │ -433194: 1f03 970a |00aa: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -433198: 5b23 795f |00ac: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_digest:Landroid/widget/TextView; // field@5f79 │ │ -43319c: 5423 905f |00ae: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -4331a0: 1404 5800 087f |00b0: const v4, #float 1.80777e+38 // #7f080058 │ │ -4331a6: 6e20 dd55 4300 |00b3: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -4331ac: 0c03 |00b6: move-result-object v3 │ │ -4331ae: 5b23 7a5f |00b7: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f7a │ │ -4331b2: 5423 905f |00b9: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -4331b6: 1404 6300 087f |00bb: const v4, #float 1.80777e+38 // #7f080063 │ │ -4331bc: 6e20 dd55 4300 |00be: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -4331c2: 0c03 |00c1: move-result-object v3 │ │ -4331c4: 1f03 970a |00c2: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -4331c8: 5b23 7b5f |00c4: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f7b │ │ -4331cc: 5423 905f |00c6: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -4331d0: 1404 6500 087f |00c8: const v4, #float 1.80777e+38 // #7f080065 │ │ -4331d6: 6e20 dd55 4300 |00cb: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -4331dc: 0c03 |00ce: move-result-object v3 │ │ -4331de: 1f03 970a |00cf: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -4331e2: 5b23 7c5f |00d1: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_eta:Landroid/widget/TextView; // field@5f7c │ │ -4331e6: 5423 905f |00d3: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -4331ea: 1404 6900 087f |00d5: const v4, #float 1.80777e+38 // #7f080069 │ │ -4331f0: 6e20 dd55 4300 |00d8: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -4331f6: 0c03 |00db: move-result-object v3 │ │ -4331f8: 1f03 970a |00dc: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -4331fc: 5b23 7d5f |00de: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_fileIdentity:Landroid/widget/TextView; // field@5f7d │ │ -433200: 5423 905f |00e0: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -433204: 1404 6b00 087f |00e2: const v4, #float 1.80777e+38 // #7f08006b │ │ -43320a: 6e20 dd55 4300 |00e5: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433210: 0c03 |00e8: move-result-object v3 │ │ -433212: 1f03 970a |00e9: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -433216: 5b23 7e5f |00eb: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_fileName:Landroid/widget/TextView; // field@5f7e │ │ -43321a: 5423 905f |00ed: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -43321e: 1404 6a00 087f |00ef: const v4, #float 1.80777e+38 // #7f08006a │ │ -433224: 6e20 dd55 4300 |00f2: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -43322a: 0c03 |00f5: move-result-object v3 │ │ -43322c: 1f03 970a |00f6: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -433230: 5b23 7f5f |00f8: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_fileSize:Landroid/widget/TextView; // field@5f7f │ │ -433234: 5423 905f |00fa: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -433238: 1404 8800 087f |00fc: const v4, #float 1.80778e+38 // #7f080088 │ │ -43323e: 6e20 dd55 4300 |00ff: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433244: 0c03 |0102: move-result-object v3 │ │ -433246: 5b23 805f |0103: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f80 │ │ -43324a: 5423 905f |0105: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -43324e: 1404 8a00 087f |0107: const v4, #float 1.80778e+38 // #7f08008a │ │ -433254: 6e20 dd55 4300 |010a: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -43325a: 0c03 |010d: move-result-object v3 │ │ -43325c: 1f03 970a |010e: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -433260: 5b23 815f |0110: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f81 │ │ -433264: 5423 905f |0112: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -433268: 1404 8d00 087f |0114: const v4, #float 1.80778e+38 // #7f08008d │ │ -43326e: 6e20 dd55 4300 |0117: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433274: 0c03 |011a: move-result-object v3 │ │ -433276: 1f03 730a |011b: check-cast v3, Landroid/widget/LinearLayout; // type@0a73 │ │ -43327a: 5b23 825f |011d: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_layoutA:Landroid/widget/LinearLayout; // field@5f82 │ │ -43327e: 1304 0800 |011f: const/16 v4, #int 8 // #8 │ │ -433282: 6e20 e859 4300 |0121: invoke-virtual {v3, v4}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ -433288: 5423 905f |0124: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -43328c: 1405 8e00 087f |0126: const v5, #float 1.80778e+38 // #7f08008e │ │ -433292: 6e20 dd55 5300 |0129: invoke-virtual {v3, v5}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433298: 0c03 |012c: move-result-object v3 │ │ -43329a: 1f03 730a |012d: check-cast v3, Landroid/widget/LinearLayout; // type@0a73 │ │ -43329e: 5b23 835f |012f: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_layoutB:Landroid/widget/LinearLayout; // field@5f83 │ │ -4332a2: 6e20 e859 4300 |0131: invoke-virtual {v3, v4}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ -4332a8: 5423 905f |0134: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -4332ac: 1404 9800 087f |0136: const v4, #float 1.80778e+38 // #7f080098 │ │ -4332b2: 6e20 dd55 4300 |0139: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -4332b8: 0c03 |013c: move-result-object v3 │ │ -4332ba: 1f03 970a |013d: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -4332be: 5b23 845f |013f: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f84 │ │ -4332c2: 5423 905f |0141: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -4332c6: 1404 9c00 087f |0143: const v4, #float 1.80778e+38 // #7f08009c │ │ -4332cc: 6e20 dd55 4300 |0146: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -4332d2: 0c03 |0149: move-result-object v3 │ │ -4332d4: 1f03 6f0a |014a: check-cast v3, Landroid/widget/ImageButton; // type@0a6f │ │ -4332d8: 5b23 855f |014c: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_menuButton:Landroid/widget/ImageButton; // field@5f85 │ │ -4332dc: 2204 251b |014e: new-instance v4, Lorg/purple/smoke/SteamBubble$3; // type@1b25 │ │ -4332e0: 7020 f0bd 2400 |0150: invoke-direct {v4, v2}, Lorg/purple/smoke/SteamBubble$3;.:(Lorg/purple/smoke/SteamBubble;)V // method@bdf0 │ │ -4332e6: 6e20 9059 4300 |0153: invoke-virtual {v3, v4}, Landroid/widget/ImageButton;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@5990 │ │ -4332ec: 5423 905f |0156: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -4332f0: 1404 c800 087f |0158: const v4, #float 1.80779e+38 // #7f0800c8 │ │ -4332f6: 6e20 dd55 4300 |015b: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -4332fc: 0c03 |015e: move-result-object v3 │ │ -4332fe: 1f03 970a |015f: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -433302: 5b23 875f |0161: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f87 │ │ -433306: 5423 905f |0163: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -43330a: 1404 cf00 087f |0165: const v4, #float 1.80779e+38 // #7f0800cf │ │ -433310: 6e20 dd55 4300 |0168: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433316: 0c03 |016b: move-result-object v3 │ │ -433318: 1f03 7c0a |016c: check-cast v3, Landroid/widget/ProgressBar; // type@0a7c │ │ -43331c: 5b23 885f |016e: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f88 │ │ -433320: 5423 905f |0170: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -433324: 1404 d700 087f |0172: const v4, #float 1.80779e+38 // #7f0800d7 │ │ -43332a: 6e20 dd55 4300 |0175: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433330: 0c03 |0178: move-result-object v3 │ │ -433332: 1f03 880a |0179: check-cast v3, Landroid/widget/SeekBar; // type@0a88 │ │ -433336: 5b23 895f |017b: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ -43333a: 2204 261b |017d: new-instance v4, Lorg/purple/smoke/SteamBubble$4; // type@1b26 │ │ -43333e: 7020 f2bd 2400 |017f: invoke-direct {v4, v2}, Lorg/purple/smoke/SteamBubble$4;.:(Lorg/purple/smoke/SteamBubble;)V // method@bdf2 │ │ -433344: 6e20 a65a 4300 |0182: invoke-virtual {v3, v4}, Landroid/widget/SeekBar;.setOnSeekBarChangeListener:(Landroid/widget/SeekBar$OnSeekBarChangeListener;)V // method@5aa6 │ │ -43334a: 5423 905f |0185: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -43334e: 1404 d800 087f |0187: const v4, #float 1.80779e+38 // #7f0800d8 │ │ -433354: 6e20 dd55 4300 |018a: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -43335a: 0c03 |018d: move-result-object v3 │ │ -43335c: 1f03 970a |018e: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -433360: 5b23 8a5f |0190: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f8a │ │ -433364: 1a04 c507 |0192: const-string v4, "4 reads / s" // string@07c5 │ │ -433368: 6e20 495b 4300 |0194: invoke-virtual {v3, v4}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43336e: 5423 905f |0197: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -433372: 1404 fd00 087f |0199: const v4, #float 1.8078e+38 // #7f0800fd │ │ -433378: 6e20 dd55 4300 |019c: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -43337e: 0c03 |019f: move-result-object v3 │ │ -433380: 1f03 970a |01a0: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -433384: 5b23 8b5f |01a2: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f8b │ │ -433388: 5423 905f |01a4: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -43338c: 1404 fe00 087f |01a6: const v4, #float 1.8078e+38 // #7f0800fe │ │ -433392: 6e20 dd55 4300 |01a9: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -433398: 0c03 |01ac: move-result-object v3 │ │ -43339a: 5b23 8c5f |01ad: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_separator:Landroid/view/View; // field@5f8c │ │ -43339e: 5423 905f |01af: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -4333a2: 1404 1a01 087f |01b1: const v4, #float 1.80781e+38 // #7f08011a │ │ -4333a8: 6e20 dd55 4300 |01b4: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -4333ae: 0c03 |01b7: move-result-object v3 │ │ -4333b0: 1f03 970a |01b8: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -4333b4: 5b23 8d5f |01ba: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_status:Landroid/widget/TextView; // field@5f8d │ │ -4333b8: 5423 905f |01bc: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -4333bc: 1404 2f01 087f |01be: const v4, #float 1.80781e+38 // #7f08012f │ │ -4333c2: 6e20 dd55 4300 |01c1: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -4333c8: 0c03 |01c4: move-result-object v3 │ │ -4333ca: 1f03 970a |01c5: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ -4333ce: 5b23 8f5f |01c7: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_transferRate:Landroid/widget/TextView; // field@5f8f │ │ -4333d2: 5423 905f |01c9: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -4333d6: 6e20 8256 0300 |01cb: invoke-virtual {v3, v0}, Landroid/view/View;.setId:(I)V // method@5682 │ │ -4333dc: 6203 935f |01ce: sget-object v3, Lorg/purple/smoke/SteamBubble;.s_numberFormat:Ljava/text/NumberFormat; // field@5f93 │ │ -4333e0: 1214 |01d0: const/4 v4, #int 1 // #1 │ │ -4333e2: 6e20 945f 4300 |01d1: invoke-virtual {v3, v4}, Ljava/text/NumberFormat;.setGroupingUsed:(Z)V // method@5f94 │ │ -4333e8: 0e00 |01d4: return-void │ │ +43302c: |[43302c] org.purple.smoke.SteamBubble.:(Landroid/content/Context;Lorg/purple/smoke/Steam;Landroid/view/ViewGroup;)V │ │ +43303c: 7020 c755 3200 |0000: invoke-direct {v2, v3}, Landroid/view/View;.:(Landroid/content/Context;)V // method@55c7 │ │ +433042: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +433044: 5b20 745f |0004: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ +433048: 5b20 765f |0006: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_database:Lorg/purple/smoke/Database; // field@5f76 │ │ +43304c: 5b20 855f |0008: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_menuButton:Landroid/widget/ImageButton; // field@5f85 │ │ +433050: 5b20 825f |000a: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_layoutA:Landroid/widget/LinearLayout; // field@5f82 │ │ +433054: 5b20 835f |000c: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_layoutB:Landroid/widget/LinearLayout; // field@5f83 │ │ +433058: 5b20 885f |000e: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f88 │ │ +43305c: 5b20 895f |0010: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ +433060: 5b20 8e5f |0012: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_steam:Lorg/purple/smoke/Steam; // field@5f8e │ │ +433064: 1a01 0000 |0014: const-string v1, "" // string@0000 │ │ +433068: 5b21 755f |0016: iput-object v1, v2, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f75 │ │ +43306c: 5b20 785f |0018: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_details:Landroid/widget/Switch; // field@5f78 │ │ +433070: 5b20 775f |001a: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f77 │ │ +433074: 5b20 795f |001c: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_digest:Landroid/widget/TextView; // field@5f79 │ │ +433078: 5b20 7b5f |001e: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f7b │ │ +43307c: 5b20 7c5f |0020: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_eta:Landroid/widget/TextView; // field@5f7c │ │ +433080: 5b20 7d5f |0022: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_fileIdentity:Landroid/widget/TextView; // field@5f7d │ │ +433084: 5b20 7e5f |0024: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_fileName:Landroid/widget/TextView; // field@5f7e │ │ +433088: 5b20 7f5f |0026: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_fileSize:Landroid/widget/TextView; // field@5f7f │ │ +43308c: 5b20 815f |0028: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f81 │ │ +433090: 5b20 845f |002a: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f84 │ │ +433094: 5b20 875f |002c: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f87 │ │ +433098: 5b20 8a5f |002e: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f8a │ │ +43309c: 5b20 8b5f |0030: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f8b │ │ +4330a0: 5b20 8d5f |0032: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_status:Landroid/widget/TextView; // field@5f8d │ │ +4330a4: 5b20 8f5f |0034: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_transferRate:Landroid/widget/TextView; // field@5f8f │ │ +4330a8: 5b20 7a5f |0036: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f7a │ │ +4330ac: 5b20 805f |0038: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f80 │ │ +4330b0: 5b20 8c5f |003a: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_separator:Landroid/view/View; // field@5f8c │ │ +4330b4: 5b20 905f |003c: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +4330b8: 5b20 735f |003e: iput-object v0, v2, Lorg/purple/smoke/SteamBubble;.m_context:Ljava/lang/ref/WeakReference; // field@5f73 │ │ +4330bc: 12f0 |0040: const/4 v0, #int -1 // #ff │ │ +4330be: 5920 865f |0041: iput v0, v2, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f86 │ │ +4330c2: 2201 000b |0043: new-instance v1, Ljava/lang/ref/WeakReference; // type@0b00 │ │ +4330c6: 7020 285d 3100 |0045: invoke-direct {v1, v3}, Ljava/lang/ref/WeakReference;.:(Ljava/lang/Object;)V // method@5d28 │ │ +4330cc: 5b21 735f |0048: iput-object v1, v2, Lorg/purple/smoke/SteamBubble;.m_context:Ljava/lang/ref/WeakReference; // field@5f73 │ │ +4330d0: 7110 f4b9 0300 |004a: invoke-static {v3}, Lorg/purple/smoke/Database;.getInstance:(Landroid/content/Context;)Lorg/purple/smoke/Database; // method@b9f4 │ │ +4330d6: 0c03 |004d: move-result-object v3 │ │ +4330d8: 5b23 765f |004e: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_database:Lorg/purple/smoke/Database; // field@5f76 │ │ +4330dc: 5b24 8e5f |0050: iput-object v4, v2, Lorg/purple/smoke/SteamBubble;.m_steam:Lorg/purple/smoke/Steam; // field@5f8e │ │ +4330e0: 5423 735f |0052: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_context:Ljava/lang/ref/WeakReference; // field@5f73 │ │ +4330e4: 6e10 295d 0300 |0054: invoke-virtual {v3}, Ljava/lang/ref/WeakReference;.get:()Ljava/lang/Object; // method@5d29 │ │ +4330ea: 0c03 |0057: move-result-object v3 │ │ +4330ec: 1f03 4100 |0058: check-cast v3, Landroid/content/Context; // type@0041 │ │ +4330f0: 1a04 537d |005a: const-string v4, "layout_inflater" // string@7d53 │ │ +4330f4: 6e20 7f01 4300 |005c: invoke-virtual {v3, v4}, Landroid/content/Context;.getSystemService:(Ljava/lang/String;)Ljava/lang/Object; // method@017f │ │ +4330fa: 0c03 |005f: move-result-object v3 │ │ +4330fc: 1f03 000a |0060: check-cast v3, Landroid/view/LayoutInflater; // type@0a00 │ │ +433100: 1404 4900 0a7f |0062: const v4, #float 1.83435e+38 // #7f0a0049 │ │ +433106: 1201 |0065: const/4 v1, #int 0 // #0 │ │ +433108: 6e40 5555 4315 |0066: invoke-virtual {v3, v4, v5, v1}, Landroid/view/LayoutInflater;.inflate:(ILandroid/view/ViewGroup;Z)Landroid/view/View; // method@5555 │ │ +43310e: 0c03 |0069: move-result-object v3 │ │ +433110: 5b23 905f |006a: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +433114: 1404 4700 087f |006c: const v4, #float 1.80776e+38 // #7f080047 │ │ +43311a: 6e20 dd55 4300 |006f: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433120: 0c03 |0072: move-result-object v3 │ │ +433122: 1f03 5e0a |0073: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ +433126: 5b23 745f |0075: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ +43312a: 2204 231b |0077: new-instance v4, Lorg/purple/smoke/SteamBubble$1; // type@1b23 │ │ +43312e: 7020 ecbd 2400 |0079: invoke-direct {v4, v2}, Lorg/purple/smoke/SteamBubble$1;.:(Lorg/purple/smoke/SteamBubble;)V // method@bdec │ │ +433134: 6e20 e258 4300 |007c: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +43313a: 5423 905f |007f: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +43313e: 1404 5300 087f |0081: const v4, #float 1.80777e+38 // #7f080053 │ │ +433144: 6e20 dd55 4300 |0084: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +43314a: 0c03 |0087: move-result-object v3 │ │ +43314c: 1f03 970a |0088: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +433150: 5b23 775f |008a: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f77 │ │ +433154: 5423 905f |008c: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +433158: 1404 5400 087f |008e: const v4, #float 1.80777e+38 // #7f080054 │ │ +43315e: 6e20 dd55 4300 |0091: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433164: 0c03 |0094: move-result-object v3 │ │ +433166: 1f03 8d0a |0095: check-cast v3, Landroid/widget/Switch; // type@0a8d │ │ +43316a: 5b23 785f |0097: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_details:Landroid/widget/Switch; // field@5f78 │ │ +43316e: 2204 241b |0099: new-instance v4, Lorg/purple/smoke/SteamBubble$2; // type@1b24 │ │ +433172: 7020 eebd 2400 |009b: invoke-direct {v4, v2}, Lorg/purple/smoke/SteamBubble$2;.:(Lorg/purple/smoke/SteamBubble;)V // method@bdee │ │ +433178: 6e20 e25a 4300 |009e: invoke-virtual {v3, v4}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +43317e: 5423 905f |00a1: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +433182: 1404 5500 087f |00a3: const v4, #float 1.80777e+38 // #7f080055 │ │ +433188: 6e20 dd55 4300 |00a6: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +43318e: 0c03 |00a9: move-result-object v3 │ │ +433190: 1f03 970a |00aa: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +433194: 5b23 795f |00ac: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_digest:Landroid/widget/TextView; // field@5f79 │ │ +433198: 5423 905f |00ae: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +43319c: 1404 5800 087f |00b0: const v4, #float 1.80777e+38 // #7f080058 │ │ +4331a2: 6e20 dd55 4300 |00b3: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +4331a8: 0c03 |00b6: move-result-object v3 │ │ +4331aa: 5b23 7a5f |00b7: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f7a │ │ +4331ae: 5423 905f |00b9: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +4331b2: 1404 6300 087f |00bb: const v4, #float 1.80777e+38 // #7f080063 │ │ +4331b8: 6e20 dd55 4300 |00be: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +4331be: 0c03 |00c1: move-result-object v3 │ │ +4331c0: 1f03 970a |00c2: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +4331c4: 5b23 7b5f |00c4: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f7b │ │ +4331c8: 5423 905f |00c6: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +4331cc: 1404 6500 087f |00c8: const v4, #float 1.80777e+38 // #7f080065 │ │ +4331d2: 6e20 dd55 4300 |00cb: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +4331d8: 0c03 |00ce: move-result-object v3 │ │ +4331da: 1f03 970a |00cf: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +4331de: 5b23 7c5f |00d1: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_eta:Landroid/widget/TextView; // field@5f7c │ │ +4331e2: 5423 905f |00d3: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +4331e6: 1404 6900 087f |00d5: const v4, #float 1.80777e+38 // #7f080069 │ │ +4331ec: 6e20 dd55 4300 |00d8: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +4331f2: 0c03 |00db: move-result-object v3 │ │ +4331f4: 1f03 970a |00dc: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +4331f8: 5b23 7d5f |00de: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_fileIdentity:Landroid/widget/TextView; // field@5f7d │ │ +4331fc: 5423 905f |00e0: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +433200: 1404 6b00 087f |00e2: const v4, #float 1.80777e+38 // #7f08006b │ │ +433206: 6e20 dd55 4300 |00e5: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +43320c: 0c03 |00e8: move-result-object v3 │ │ +43320e: 1f03 970a |00e9: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +433212: 5b23 7e5f |00eb: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_fileName:Landroid/widget/TextView; // field@5f7e │ │ +433216: 5423 905f |00ed: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +43321a: 1404 6a00 087f |00ef: const v4, #float 1.80777e+38 // #7f08006a │ │ +433220: 6e20 dd55 4300 |00f2: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433226: 0c03 |00f5: move-result-object v3 │ │ +433228: 1f03 970a |00f6: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +43322c: 5b23 7f5f |00f8: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_fileSize:Landroid/widget/TextView; // field@5f7f │ │ +433230: 5423 905f |00fa: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +433234: 1404 8800 087f |00fc: const v4, #float 1.80778e+38 // #7f080088 │ │ +43323a: 6e20 dd55 4300 |00ff: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433240: 0c03 |0102: move-result-object v3 │ │ +433242: 5b23 805f |0103: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f80 │ │ +433246: 5423 905f |0105: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +43324a: 1404 8a00 087f |0107: const v4, #float 1.80778e+38 // #7f08008a │ │ +433250: 6e20 dd55 4300 |010a: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433256: 0c03 |010d: move-result-object v3 │ │ +433258: 1f03 970a |010e: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +43325c: 5b23 815f |0110: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f81 │ │ +433260: 5423 905f |0112: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +433264: 1404 8d00 087f |0114: const v4, #float 1.80778e+38 // #7f08008d │ │ +43326a: 6e20 dd55 4300 |0117: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433270: 0c03 |011a: move-result-object v3 │ │ +433272: 1f03 730a |011b: check-cast v3, Landroid/widget/LinearLayout; // type@0a73 │ │ +433276: 5b23 825f |011d: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_layoutA:Landroid/widget/LinearLayout; // field@5f82 │ │ +43327a: 1304 0800 |011f: const/16 v4, #int 8 // #8 │ │ +43327e: 6e20 e859 4300 |0121: invoke-virtual {v3, v4}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ +433284: 5423 905f |0124: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +433288: 1405 8e00 087f |0126: const v5, #float 1.80778e+38 // #7f08008e │ │ +43328e: 6e20 dd55 5300 |0129: invoke-virtual {v3, v5}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433294: 0c03 |012c: move-result-object v3 │ │ +433296: 1f03 730a |012d: check-cast v3, Landroid/widget/LinearLayout; // type@0a73 │ │ +43329a: 5b23 835f |012f: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_layoutB:Landroid/widget/LinearLayout; // field@5f83 │ │ +43329e: 6e20 e859 4300 |0131: invoke-virtual {v3, v4}, Landroid/widget/LinearLayout;.setVisibility:(I)V // method@59e8 │ │ +4332a4: 5423 905f |0134: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +4332a8: 1404 9800 087f |0136: const v4, #float 1.80778e+38 // #7f080098 │ │ +4332ae: 6e20 dd55 4300 |0139: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +4332b4: 0c03 |013c: move-result-object v3 │ │ +4332b6: 1f03 970a |013d: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +4332ba: 5b23 845f |013f: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f84 │ │ +4332be: 5423 905f |0141: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +4332c2: 1404 9c00 087f |0143: const v4, #float 1.80778e+38 // #7f08009c │ │ +4332c8: 6e20 dd55 4300 |0146: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +4332ce: 0c03 |0149: move-result-object v3 │ │ +4332d0: 1f03 6f0a |014a: check-cast v3, Landroid/widget/ImageButton; // type@0a6f │ │ +4332d4: 5b23 855f |014c: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_menuButton:Landroid/widget/ImageButton; // field@5f85 │ │ +4332d8: 2204 251b |014e: new-instance v4, Lorg/purple/smoke/SteamBubble$3; // type@1b25 │ │ +4332dc: 7020 f0bd 2400 |0150: invoke-direct {v4, v2}, Lorg/purple/smoke/SteamBubble$3;.:(Lorg/purple/smoke/SteamBubble;)V // method@bdf0 │ │ +4332e2: 6e20 9059 4300 |0153: invoke-virtual {v3, v4}, Landroid/widget/ImageButton;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@5990 │ │ +4332e8: 5423 905f |0156: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +4332ec: 1404 c800 087f |0158: const v4, #float 1.80779e+38 // #7f0800c8 │ │ +4332f2: 6e20 dd55 4300 |015b: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +4332f8: 0c03 |015e: move-result-object v3 │ │ +4332fa: 1f03 970a |015f: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +4332fe: 5b23 875f |0161: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f87 │ │ +433302: 5423 905f |0163: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +433306: 1404 cf00 087f |0165: const v4, #float 1.80779e+38 // #7f0800cf │ │ +43330c: 6e20 dd55 4300 |0168: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433312: 0c03 |016b: move-result-object v3 │ │ +433314: 1f03 7c0a |016c: check-cast v3, Landroid/widget/ProgressBar; // type@0a7c │ │ +433318: 5b23 885f |016e: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f88 │ │ +43331c: 5423 905f |0170: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +433320: 1404 d700 087f |0172: const v4, #float 1.80779e+38 // #7f0800d7 │ │ +433326: 6e20 dd55 4300 |0175: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +43332c: 0c03 |0178: move-result-object v3 │ │ +43332e: 1f03 880a |0179: check-cast v3, Landroid/widget/SeekBar; // type@0a88 │ │ +433332: 5b23 895f |017b: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ +433336: 2204 261b |017d: new-instance v4, Lorg/purple/smoke/SteamBubble$4; // type@1b26 │ │ +43333a: 7020 f2bd 2400 |017f: invoke-direct {v4, v2}, Lorg/purple/smoke/SteamBubble$4;.:(Lorg/purple/smoke/SteamBubble;)V // method@bdf2 │ │ +433340: 6e20 a65a 4300 |0182: invoke-virtual {v3, v4}, Landroid/widget/SeekBar;.setOnSeekBarChangeListener:(Landroid/widget/SeekBar$OnSeekBarChangeListener;)V // method@5aa6 │ │ +433346: 5423 905f |0185: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +43334a: 1404 d800 087f |0187: const v4, #float 1.80779e+38 // #7f0800d8 │ │ +433350: 6e20 dd55 4300 |018a: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433356: 0c03 |018d: move-result-object v3 │ │ +433358: 1f03 970a |018e: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +43335c: 5b23 8a5f |0190: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f8a │ │ +433360: 1a04 c507 |0192: const-string v4, "4 reads / s" // string@07c5 │ │ +433364: 6e20 495b 4300 |0194: invoke-virtual {v3, v4}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +43336a: 5423 905f |0197: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +43336e: 1404 fd00 087f |0199: const v4, #float 1.8078e+38 // #7f0800fd │ │ +433374: 6e20 dd55 4300 |019c: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +43337a: 0c03 |019f: move-result-object v3 │ │ +43337c: 1f03 970a |01a0: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +433380: 5b23 8b5f |01a2: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f8b │ │ +433384: 5423 905f |01a4: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +433388: 1404 fe00 087f |01a6: const v4, #float 1.8078e+38 // #7f0800fe │ │ +43338e: 6e20 dd55 4300 |01a9: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +433394: 0c03 |01ac: move-result-object v3 │ │ +433396: 5b23 8c5f |01ad: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_separator:Landroid/view/View; // field@5f8c │ │ +43339a: 5423 905f |01af: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +43339e: 1404 1a01 087f |01b1: const v4, #float 1.80781e+38 // #7f08011a │ │ +4333a4: 6e20 dd55 4300 |01b4: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +4333aa: 0c03 |01b7: move-result-object v3 │ │ +4333ac: 1f03 970a |01b8: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +4333b0: 5b23 8d5f |01ba: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_status:Landroid/widget/TextView; // field@5f8d │ │ +4333b4: 5423 905f |01bc: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +4333b8: 1404 2f01 087f |01be: const v4, #float 1.80781e+38 // #7f08012f │ │ +4333be: 6e20 dd55 4300 |01c1: invoke-virtual {v3, v4}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +4333c4: 0c03 |01c4: move-result-object v3 │ │ +4333c6: 1f03 970a |01c5: check-cast v3, Landroid/widget/TextView; // type@0a97 │ │ +4333ca: 5b23 8f5f |01c7: iput-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_transferRate:Landroid/widget/TextView; // field@5f8f │ │ +4333ce: 5423 905f |01c9: iget-object v3, v2, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +4333d2: 6e20 8256 0300 |01cb: invoke-virtual {v3, v0}, Landroid/view/View;.setId:(I)V // method@5682 │ │ +4333d8: 6203 935f |01ce: sget-object v3, Lorg/purple/smoke/SteamBubble;.s_numberFormat:Ljava/text/NumberFormat; // field@5f93 │ │ +4333dc: 1214 |01d0: const/4 v4, #int 1 // #1 │ │ +4333de: 6e20 945f 4300 |01d1: invoke-virtual {v3, v4}, Ljava/text/NumberFormat;.setGroupingUsed:(Z)V // method@5f94 │ │ +4333e4: 0e00 |01d4: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=130 │ │ 0x0004 line=49 │ │ 0x0006 line=50 │ │ 0x0008 line=51 │ │ 0x000a line=52 │ │ @@ -746806,17 +746805,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 │ │ -432e58: |[432e58] org.purple.smoke.SteamBubble.access$000:(Lorg/purple/smoke/SteamBubble;)Ljava/lang/String; │ │ -432e68: 5400 755f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f75 │ │ -432e6c: 1100 |0002: return-object v0 │ │ +432e54: |[432e54] org.purple.smoke.SteamBubble.access$000:(Lorg/purple/smoke/SteamBubble;)Ljava/lang/String; │ │ +432e64: 5400 755f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f75 │ │ +432e68: 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;) │ │ @@ -746824,17 +746823,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 │ │ -432e10: |[432e10] org.purple.smoke.SteamBubble.access$100:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/TextView; │ │ -432e20: 5400 7c5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_eta:Landroid/widget/TextView; // field@5f7c │ │ -432e24: 1100 |0002: return-object v0 │ │ +432e0c: |[432e0c] org.purple.smoke.SteamBubble.access$100:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/TextView; │ │ +432e1c: 5400 7c5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_eta:Landroid/widget/TextView; // field@5f7c │ │ +432e20: 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;) │ │ @@ -746842,34 +746841,34 @@ │ │ type : '()Lorg/purple/smoke/Cryptography;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -432fac: |[432fac] org.purple.smoke.SteamBubble.access$200:()Lorg/purple/smoke/Cryptography; │ │ -432fbc: 6200 915f |0000: sget-object v0, Lorg/purple/smoke/SteamBubble;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f91 │ │ -432fc0: 1100 |0002: return-object v0 │ │ +432fa8: |[432fa8] org.purple.smoke.SteamBubble.access$200:()Lorg/purple/smoke/Cryptography; │ │ +432fb8: 6200 915f |0000: sget-object v0, Lorg/purple/smoke/SteamBubble;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f91 │ │ +432fbc: 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 │ │ -432e40: |[432e40] org.purple.smoke.SteamBubble.access$300:(Lorg/purple/smoke/SteamBubble;)I │ │ -432e50: 5200 865f |0000: iget v0, v0, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f86 │ │ -432e54: 0f00 |0002: return v0 │ │ +432e3c: |[432e3c] org.purple.smoke.SteamBubble.access$300:(Lorg/purple/smoke/SteamBubble;)I │ │ +432e4c: 5200 865f |0000: iget v0, v0, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f86 │ │ +432e50: 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;) │ │ @@ -746877,17 +746876,17 @@ │ │ type : '(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Database;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -432fc4: |[432fc4] org.purple.smoke.SteamBubble.access$400:(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Database; │ │ -432fd4: 5400 765f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_database:Lorg/purple/smoke/Database; // field@5f76 │ │ -432fd8: 1100 |0002: return-object v0 │ │ +432fc0: |[432fc0] org.purple.smoke.SteamBubble.access$400:(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Database; │ │ +432fd0: 5400 765f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_database:Lorg/purple/smoke/Database; // field@5f76 │ │ +432fd4: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=47 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamBubble; │ │ │ │ #7 : (in Lorg/purple/smoke/SteamBubble;) │ │ @@ -746895,17 +746894,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 │ │ -432de0: |[432de0] org.purple.smoke.SteamBubble.access$500:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; │ │ -432df0: 5400 825f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_layoutA:Landroid/widget/LinearLayout; // field@5f82 │ │ -432df4: 1100 |0002: return-object v0 │ │ +432ddc: |[432ddc] org.purple.smoke.SteamBubble.access$500:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; │ │ +432dec: 5400 825f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_layoutA:Landroid/widget/LinearLayout; // field@5f82 │ │ +432df0: 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;) │ │ @@ -746913,17 +746912,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 │ │ -432df8: |[432df8] org.purple.smoke.SteamBubble.access$600:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; │ │ -432e08: 5400 835f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_layoutB:Landroid/widget/LinearLayout; // field@5f83 │ │ -432e0c: 1100 |0002: return-object v0 │ │ +432df4: |[432df4] org.purple.smoke.SteamBubble.access$600:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/LinearLayout; │ │ +432e04: 5400 835f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_layoutB:Landroid/widget/LinearLayout; // field@5f83 │ │ +432e08: 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;) │ │ @@ -746931,17 +746930,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 │ │ -432fdc: |[432fdc] org.purple.smoke.SteamBubble.access$700:(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Steam; │ │ -432fec: 5400 8e5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_steam:Lorg/purple/smoke/Steam; // field@5f8e │ │ -432ff0: 1100 |0002: return-object v0 │ │ +432fd8: |[432fd8] org.purple.smoke.SteamBubble.access$700:(Lorg/purple/smoke/SteamBubble;)Lorg/purple/smoke/Steam; │ │ +432fe8: 5400 8e5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_steam:Lorg/purple/smoke/Steam; // field@5f8e │ │ +432fec: 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;) │ │ @@ -746949,17 +746948,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 │ │ -432e28: |[432e28] org.purple.smoke.SteamBubble.access$800:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/TextView; │ │ -432e38: 5400 8a5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f8a │ │ -432e3c: 1100 |0002: return-object v0 │ │ +432e24: |[432e24] org.purple.smoke.SteamBubble.access$800:(Lorg/purple/smoke/SteamBubble;)Landroid/widget/TextView; │ │ +432e34: 5400 8a5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f8a │ │ +432e38: 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;) │ │ @@ -746967,20 +746966,20 @@ │ │ type : '(J)Ljava/lang/String;' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 2 │ │ insns size : 9 16-bit code units │ │ -432e70: |[432e70] org.purple.smoke.SteamBubble.formatSize:(J)Ljava/lang/String; │ │ -432e80: 7120 d65c 2100 |0000: invoke-static {v1, v2}, Ljava/lang/String;.valueOf:(J)Ljava/lang/String; // method@5cd6 │ │ -432e86: 0c01 |0003: move-result-object v1 │ │ -432e88: 7110 edbb 0100 |0004: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbed │ │ -432e8e: 0c01 |0007: move-result-object v1 │ │ -432e90: 1101 |0008: return-object v1 │ │ +432e6c: |[432e6c] org.purple.smoke.SteamBubble.formatSize:(J)Ljava/lang/String; │ │ +432e7c: 7120 d65c 2100 |0000: invoke-static {v1, v2}, Ljava/lang/String;.valueOf:(J)Ljava/lang/String; // method@5cd6 │ │ +432e82: 0c01 |0003: move-result-object v1 │ │ +432e84: 7110 edbb 0100 |0004: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbed │ │ +432e8a: 0c01 |0007: move-result-object v1 │ │ +432e8c: 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 │ │ │ │ @@ -746989,19 +746988,19 @@ │ │ type : '(J)Ljava/lang/String;' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 7 16-bit code units │ │ -432e94: |[432e94] org.purple.smoke.SteamBubble.niceBytes:(J)Ljava/lang/String; │ │ -432ea4: 6200 935f |0000: sget-object v0, Lorg/purple/smoke/SteamBubble;.s_numberFormat:Ljava/text/NumberFormat; // field@5f93 │ │ -432ea8: 6e30 915f 2003 |0002: invoke-virtual {v0, v2, v3}, Ljava/text/NumberFormat;.format:(J)Ljava/lang/String; // method@5f91 │ │ -432eae: 0c02 |0005: move-result-object v2 │ │ -432eb0: 1102 |0006: return-object v2 │ │ +432e90: |[432e90] org.purple.smoke.SteamBubble.niceBytes:(J)Ljava/lang/String; │ │ +432ea0: 6200 935f |0000: sget-object v0, Lorg/purple/smoke/SteamBubble;.s_numberFormat:Ljava/text/NumberFormat; // field@5f93 │ │ +432ea4: 6e30 915f 2003 |0002: invoke-virtual {v0, v2, v3}, Ljava/text/NumberFormat;.format:(J)Ljava/lang/String; // method@5f91 │ │ +432eaa: 0c02 |0005: move-result-object v2 │ │ +432eac: 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 │ │ │ │ @@ -747010,70 +747009,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 │ │ -432eb4: |[432eb4] org.purple.smoke.SteamBubble.prettyEta:(Ljava/lang/String;JJ)Ljava/lang/String; │ │ -432ec4: 3100 0608 |0000: cmp-long v0, v6, v8 │ │ -432ec8: 3900 0500 |0002: if-nez v0, 0007 // +0005 │ │ -432ecc: 1a05 b818 |0004: const-string v5, "ETA: completed" // string@18b8 │ │ -432ed0: 1105 |0006: return-object v5 │ │ -432ed2: 1200 |0007: const/4 v0, #int 0 // #0 │ │ -432ed4: 1301 2000 |0008: const/16 v1, #int 32 // #20 │ │ -432ed8: 6e20 c05c 1500 |000a: invoke-virtual {v5, v1}, Ljava/lang/String;.indexOf:(I)I // method@5cc0 │ │ -432ede: 0a01 |000d: move-result v1 │ │ -432ee0: 6e30 cd5c 0501 |000e: invoke-virtual {v5, v0, v1}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ -432ee6: 0c00 |0011: move-result-object v0 │ │ -432ee8: 7110 2d5c 0000 |0012: invoke-static {v0}, Ljava/lang/Double;.parseDouble:(Ljava/lang/String;)D // method@5c2d │ │ -432eee: 0b00 |0015: move-result-wide v0 │ │ -432ef0: 1a02 bf1b |0016: const-string v2, "GiB" // string@1bbf │ │ -432ef4: 6e20 b65c 2500 |0018: invoke-virtual {v5, v2}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -432efa: 0a02 |001b: move-result v2 │ │ -432efc: 3802 0700 |001c: if-eqz v2, 0023 // +0007 │ │ -432f00: 1902 d041 |001e: const-wide/high16 v2, #long 4742290407621132288 // #41d0 │ │ -432f04: ad00 0002 |0020: mul-double v0, v0, v2 │ │ -432f08: 2817 |0022: goto 0039 // +0017 │ │ -432f0a: 1a02 a520 |0023: const-string v2, "KiB" // string@20a5 │ │ -432f0e: 6e20 b65c 2500 |0025: invoke-virtual {v5, v2}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -432f14: 0a02 |0028: move-result v2 │ │ -432f16: 3802 0500 |0029: if-eqz v2, 002e // +0005 │ │ -432f1a: 1902 9040 |002b: const-wide/high16 v2, #long 4652218415073722368 // #4090 │ │ -432f1e: 28f3 |002d: goto 0020 // -000d │ │ -432f20: 1a02 9d40 |002e: const-string v2, "MiB" // string@409d │ │ -432f24: 6e20 b65c 2500 |0030: invoke-virtual {v5, v2}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -432f2a: 0a05 |0033: move-result v5 │ │ -432f2c: 3805 0500 |0034: if-eqz v5, 0039 // +0005 │ │ -432f30: 1902 3041 |0036: const-wide/high16 v2, #long 4697254411347427328 // #4130 │ │ -432f34: 28e8 |0038: goto 0020 // -0018 │ │ -432f36: 1602 0000 |0039: const-wide/16 v2, #int 0 // #0 │ │ -432f3a: 2f05 0002 |003b: cmpl-double v5, v0, v2 │ │ -432f3e: 3d05 2800 |003d: if-lez v5, 0065 // +0028 │ │ -432f42: 2205 f10a |003f: new-instance v5, Ljava/lang/StringBuilder; // type@0af1 │ │ -432f46: 7010 ee5c 0500 |0041: invoke-direct {v5}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -432f4c: 1a02 b718 |0044: const-string v2, "ETA: " // string@18b7 │ │ -432f50: 6e20 f95c 2500 |0046: invoke-virtual {v5, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -432f56: 6202 925f |0049: sget-object v2, Lorg/purple/smoke/SteamBubble;.s_decimalFormat:Ljava/text/DecimalFormat; // field@5f92 │ │ -432f5a: bc86 |004b: sub-long/2addr v6, v8 │ │ -432f5c: 8666 |004c: long-to-double v6, v6 │ │ -432f5e: 7120 2c5c 7600 |004d: invoke-static {v6, v7}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ -432f64: ce06 |0050: div-double/2addr v6, v0 │ │ -432f66: 1908 4e40 |0051: const-wide/high16 v8, #long 4633641066610819072 // #404e │ │ -432f6a: ce86 |0053: div-double/2addr v6, v8 │ │ -432f6c: 6e30 895f 6207 |0054: invoke-virtual {v2, v6, v7}, Ljava/text/DecimalFormat;.format:(D)Ljava/lang/String; // method@5f89 │ │ -432f72: 0c06 |0057: move-result-object v6 │ │ -432f74: 6e20 f95c 6500 |0058: invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -432f7a: 1a06 8501 |005b: const-string v6, " minute(s)" // string@0185 │ │ -432f7e: 6e20 f95c 6500 |005d: invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -432f84: 6e10 035d 0500 |0060: invoke-virtual {v5}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -432f8a: 0c05 |0063: move-result-object v5 │ │ -432f8c: 1105 |0064: return-object v5 │ │ -432f8e: 1a05 b918 |0065: const-string v5, "ETA: stalled" // string@18b9 │ │ -432f92: 1105 |0067: return-object v5 │ │ +432eb0: |[432eb0] org.purple.smoke.SteamBubble.prettyEta:(Ljava/lang/String;JJ)Ljava/lang/String; │ │ +432ec0: 3100 0608 |0000: cmp-long v0, v6, v8 │ │ +432ec4: 3900 0500 |0002: if-nez v0, 0007 // +0005 │ │ +432ec8: 1a05 b818 |0004: const-string v5, "ETA: completed" // string@18b8 │ │ +432ecc: 1105 |0006: return-object v5 │ │ +432ece: 1200 |0007: const/4 v0, #int 0 // #0 │ │ +432ed0: 1301 2000 |0008: const/16 v1, #int 32 // #20 │ │ +432ed4: 6e20 c05c 1500 |000a: invoke-virtual {v5, v1}, Ljava/lang/String;.indexOf:(I)I // method@5cc0 │ │ +432eda: 0a01 |000d: move-result v1 │ │ +432edc: 6e30 cd5c 0501 |000e: invoke-virtual {v5, v0, v1}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ +432ee2: 0c00 |0011: move-result-object v0 │ │ +432ee4: 7110 2d5c 0000 |0012: invoke-static {v0}, Ljava/lang/Double;.parseDouble:(Ljava/lang/String;)D // method@5c2d │ │ +432eea: 0b00 |0015: move-result-wide v0 │ │ +432eec: 1a02 bf1b |0016: const-string v2, "GiB" // string@1bbf │ │ +432ef0: 6e20 b65c 2500 |0018: invoke-virtual {v5, v2}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +432ef6: 0a02 |001b: move-result v2 │ │ +432ef8: 3802 0700 |001c: if-eqz v2, 0023 // +0007 │ │ +432efc: 1902 d041 |001e: const-wide/high16 v2, #long 4742290407621132288 // #41d0 │ │ +432f00: ad00 0002 |0020: mul-double v0, v0, v2 │ │ +432f04: 2817 |0022: goto 0039 // +0017 │ │ +432f06: 1a02 a520 |0023: const-string v2, "KiB" // string@20a5 │ │ +432f0a: 6e20 b65c 2500 |0025: invoke-virtual {v5, v2}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +432f10: 0a02 |0028: move-result v2 │ │ +432f12: 3802 0500 |0029: if-eqz v2, 002e // +0005 │ │ +432f16: 1902 9040 |002b: const-wide/high16 v2, #long 4652218415073722368 // #4090 │ │ +432f1a: 28f3 |002d: goto 0020 // -000d │ │ +432f1c: 1a02 9d40 |002e: const-string v2, "MiB" // string@409d │ │ +432f20: 6e20 b65c 2500 |0030: invoke-virtual {v5, v2}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +432f26: 0a05 |0033: move-result v5 │ │ +432f28: 3805 0500 |0034: if-eqz v5, 0039 // +0005 │ │ +432f2c: 1902 3041 |0036: const-wide/high16 v2, #long 4697254411347427328 // #4130 │ │ +432f30: 28e8 |0038: goto 0020 // -0018 │ │ +432f32: 1602 0000 |0039: const-wide/16 v2, #int 0 // #0 │ │ +432f36: 2f05 0002 |003b: cmpl-double v5, v0, v2 │ │ +432f3a: 3d05 2800 |003d: if-lez v5, 0065 // +0028 │ │ +432f3e: 2205 f10a |003f: new-instance v5, Ljava/lang/StringBuilder; // type@0af1 │ │ +432f42: 7010 ee5c 0500 |0041: invoke-direct {v5}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +432f48: 1a02 b718 |0044: const-string v2, "ETA: " // string@18b7 │ │ +432f4c: 6e20 f95c 2500 |0046: invoke-virtual {v5, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +432f52: 6202 925f |0049: sget-object v2, Lorg/purple/smoke/SteamBubble;.s_decimalFormat:Ljava/text/DecimalFormat; // field@5f92 │ │ +432f56: bc86 |004b: sub-long/2addr v6, v8 │ │ +432f58: 8666 |004c: long-to-double v6, v6 │ │ +432f5a: 7120 2c5c 7600 |004d: invoke-static {v6, v7}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ +432f60: ce06 |0050: div-double/2addr v6, v0 │ │ +432f62: 1908 4e40 |0051: const-wide/high16 v8, #long 4633641066610819072 // #404e │ │ +432f66: ce86 |0053: div-double/2addr v6, v8 │ │ +432f68: 6e30 895f 6207 |0054: invoke-virtual {v2, v6, v7}, Ljava/text/DecimalFormat;.format:(D)Ljava/lang/String; // method@5f89 │ │ +432f6e: 0c06 |0057: move-result-object v6 │ │ +432f70: 6e20 f95c 6500 |0058: invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +432f76: 1a06 8501 |005b: const-string v6, " minute(s)" // string@0185 │ │ +432f7a: 6e20 f95c 6500 |005d: invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +432f80: 6e10 035d 0500 |0060: invoke-virtual {v5}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +432f86: 0c05 |0063: move-result-object v5 │ │ +432f88: 1105 |0064: return-object v5 │ │ +432f8a: 1a05 b918 |0065: const-string v5, "ETA: stalled" // string@18b9 │ │ +432f8e: 1105 |0067: return-object v5 │ │ catches : 2 │ │ 0x000a - 0x004b │ │ Ljava/lang/Exception; -> 0x0065 │ │ 0x0054 - 0x0064 │ │ Ljava/lang/Exception; -> 0x0065 │ │ positions : │ │ 0x000a line=106 │ │ @@ -747094,502 +747093,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 │ │ -4333ec: |[4333ec] org.purple.smoke.SteamBubble.setData:(Lorg/purple/smoke/SteamElement;II)V │ │ -4333fc: 0806 1000 |0000: move-object/from16 v6, v16 │ │ -433400: 0807 1100 |0002: move-object/from16 v7, v17 │ │ -433404: 3907 0300 |0004: if-nez v7, 0007 // +0003 │ │ -433408: 0e00 |0006: return-void │ │ -43340a: 5270 a25f |0007: iget v0, v7, Lorg/purple/smoke/SteamElement;.m_oid:I // field@5fa2 │ │ -43340e: 5960 865f |0009: iput v0, v6, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f86 │ │ -433412: 5470 a65f |000b: iget-object v0, v7, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa6 │ │ -433416: 6e10 bf5c 0000 |000d: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -43341c: 6e10 bf5c 0000 |0010: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -433422: 0a01 |0013: move-result v1 │ │ -433424: 1238 |0014: const/4 v8, #int 3 // #3 │ │ -433426: 12f2 |0015: const/4 v2, #int -1 // #ff │ │ -433428: 121a |0016: const/4 v10, #int 1 // #1 │ │ -43342a: 120b |0017: const/4 v11, #int 0 // #0 │ │ -43342c: 2c01 0204 0000 |0018: sparse-switch v1, 0000041a // +00000402 │ │ -433432: 12f0 |001b: const/4 v0, #int -1 // #ff │ │ -433434: 282c |001c: goto 0048 // +002c │ │ -433436: 1a01 7c96 |001d: const-string v1, "receiving" // string@967c │ │ -43343a: 6e20 b85c 1000 |001f: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -433440: 0a00 |0022: move-result v0 │ │ -433442: 3900 0300 |0023: if-nez v0, 0026 // +0003 │ │ -433446: 28f6 |0025: goto 001b // -000a │ │ -433448: 1230 |0026: const/4 v0, #int 3 // #3 │ │ -43344a: 2821 |0027: goto 0048 // +0021 │ │ -43344c: 1a01 2993 |0028: const-string v1, "paused" // string@9329 │ │ -433450: 6e20 b85c 1000 |002a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -433456: 0a00 |002d: move-result v0 │ │ -433458: 3900 0300 |002e: if-nez v0, 0031 // +0003 │ │ -43345c: 28eb |0030: goto 001b // -0015 │ │ -43345e: 1220 |0031: const/4 v0, #int 2 // #2 │ │ -433460: 2816 |0032: goto 0048 // +0016 │ │ -433462: 1a01 fa5f |0033: const-string v1, "completed" // string@5ffa │ │ -433466: 6e20 b85c 1000 |0035: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -43346c: 0a00 |0038: move-result v0 │ │ -43346e: 3900 0300 |0039: if-nez v0, 003c // +0003 │ │ -433472: 28e0 |003b: goto 001b // -0020 │ │ -433474: 1210 |003c: const/4 v0, #int 1 // #1 │ │ -433476: 280b |003d: goto 0048 // +000b │ │ -433478: 1a01 68a5 |003e: const-string v1, "transferring" // string@a568 │ │ -43347c: 6e20 b85c 1000 |0040: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -433482: 0a00 |0043: move-result v0 │ │ -433484: 3900 0300 |0044: if-nez v0, 0047 // +0003 │ │ -433488: 28d5 |0046: goto 001b // -002b │ │ -43348a: 1200 |0047: const/4 v0, #int 0 // #0 │ │ -43348c: 1a01 ac44 |0048: const-string v1, "Pause" // string@44ac │ │ -433490: 130c 0800 |004a: const/16 v12, #int 8 // #8 │ │ -433494: 2b00 e003 0000 |004c: packed-switch v0, 0000042c // +000003e0 │ │ -43349a: 2859 |004f: goto 00a8 // +0059 │ │ -43349c: 5460 875f |0050: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f87 │ │ -4334a0: 6e20 535b b000 |0052: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -4334a6: 5460 885f |0055: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f88 │ │ -4334aa: 6e20 5f5a b000 |0057: invoke-virtual {v0, v11}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -4334b0: 284e |005a: goto 00a8 // +004e │ │ -4334b2: 5460 745f |005b: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ -4334b6: 1a01 0647 |005d: const-string v1, "Resume" // string@4706 │ │ -4334ba: 6e20 e358 1000 |005f: invoke-virtual {v0, v1}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@58e3 │ │ -4334c0: 1a00 2598 |0062: const-string v0, "resume" // string@9825 │ │ -4334c4: 5b60 755f |0064: iput-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f75 │ │ -4334c8: 5460 875f |0066: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f87 │ │ -4334cc: 6e20 535b c000 |0068: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -4334d2: 5460 885f |006b: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f88 │ │ -4334d6: 6e20 5f5a c000 |006d: invoke-virtual {v0, v12}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -4334dc: 2838 |0070: goto 00a8 // +0038 │ │ -4334de: 5870 975f |0071: iget-short v0, v7, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f97 │ │ -4334e2: 3900 0c00 |0073: if-nez v0, 007f // +000c │ │ -4334e6: 5460 745f |0075: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ -4334ea: 6e20 e358 1000 |0077: invoke-virtual {v0, v1}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@58e3 │ │ -4334f0: 1a00 0000 |007a: const-string v0, "" // string@0000 │ │ -4334f4: 5b60 755f |007c: iput-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f75 │ │ -4334f8: 280c |007e: goto 008a // +000c │ │ -4334fa: 5460 745f |007f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ -4334fe: 1a01 0b47 |0081: const-string v1, "Rewind" // string@470b │ │ -433502: 6e20 e358 1000 |0083: invoke-virtual {v0, v1}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@58e3 │ │ -433508: 1a00 4998 |0086: const-string v0, "rewind" // string@9849 │ │ -43350c: 5b60 755f |0088: iput-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f75 │ │ -433510: 5460 875f |008a: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f87 │ │ -433514: 6e20 535b c000 |008c: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -43351a: 5460 885f |008f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f88 │ │ -43351e: 6e20 5f5a c000 |0091: invoke-virtual {v0, v12}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -433524: 2814 |0094: goto 00a8 // +0014 │ │ -433526: 5460 745f |0095: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ -43352a: 6e20 e358 1000 |0097: invoke-virtual {v0, v1}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@58e3 │ │ -433530: 1a00 2593 |009a: const-string v0, "pause" // string@9325 │ │ -433534: 5b60 755f |009c: iput-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f75 │ │ -433538: 5460 875f |009e: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f87 │ │ -43353c: 6e20 535b b000 |00a0: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -433542: 5460 885f |00a3: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f88 │ │ -433546: 6e20 5f5a b000 |00a5: invoke-virtual {v0, v11}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -43354c: 5470 965f |00a8: iget-object v0, v7, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ -433550: 1a01 b442 |00aa: const-string v1, "Other (Non-Smoke)" // string@42b4 │ │ -433554: 6e20 b85c 1000 |00ac: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -43355a: 0a00 |00af: move-result v0 │ │ -43355c: 1a0d ec03 |00b0: const-string v13, ")" // string@03ec │ │ -433560: 1a0e 9800 |00b2: const-string v14, " (" // string@0098 │ │ -433564: 1a01 244b |00b4: const-string v1, "Sent: " // string@4b24 │ │ -433568: 1403 8a00 077f |00b6: const v3, #float 1.79449e+38 // #7f07008a │ │ -43356e: 1a04 3e17 |00b9: const-string v4, "Destination: " // string@173e │ │ -433572: 130f 6000 |00bb: const/16 v15, #int 96 // #60 │ │ -433576: 3800 7300 |00bd: if-eqz v0, 0130 // +0073 │ │ -43357a: 7100 10bb 0000 |00bf: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -433580: 0c00 |00c2: move-result-object v0 │ │ -433582: 6e10 15bb 0000 |00c3: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.nextSimpleSteamOid:()I // method@bb15 │ │ -433588: 0a00 |00c6: move-result v0 │ │ -43358a: 5465 745f |00c7: iget-object v5, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ -43358e: 5269 865f |00c9: iget v9, v6, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f86 │ │ -433592: 3209 0700 |00cb: if-eq v9, v0, 00d2 // +0007 │ │ -433596: 3320 0300 |00cd: if-ne v0, v2, 00d0 // +0003 │ │ -43359a: 2803 |00cf: goto 00d2 // +0003 │ │ -43359c: 1200 |00d0: const/4 v0, #int 0 // #0 │ │ -43359e: 2802 |00d1: goto 00d3 // +0002 │ │ -4335a0: 1210 |00d2: const/4 v0, #int 1 // #1 │ │ -4335a2: 6e20 e058 0500 |00d3: invoke-virtual {v5, v0}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -4335a8: 5460 745f |00d6: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ -4335ac: 6e20 e558 b000 |00d8: invoke-virtual {v0, v11}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ -4335b2: 5460 775f |00db: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f77 │ │ -4335b6: 2202 f10a |00dd: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -4335ba: 7010 ee5c 0200 |00df: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -4335c0: 6e20 f95c 4200 |00e2: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4335c6: 5474 965f |00e5: iget-object v4, v7, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ -4335ca: 6e20 f95c 4200 |00e7: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4335d0: 6e10 035d 0200 |00ea: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4335d6: 0c02 |00ed: move-result-object v2 │ │ -4335d8: 6e20 495b 2000 |00ee: invoke-virtual {v0, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -4335de: 5460 7a5f |00f1: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f7a │ │ -4335e2: 6e20 7756 3000 |00f3: invoke-virtual {v0, v3}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ -4335e8: 5460 7b5f |00f6: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f7b │ │ -4335ec: 6e20 535b c000 |00f8: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -4335f2: 5460 805f |00fb: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f80 │ │ -4335f6: 6e20 ac56 c000 |00fd: invoke-virtual {v0, v12}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -4335fc: 5460 815f |0100: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f81 │ │ -433600: 6e20 535b c000 |0102: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -433606: 5460 845f |0105: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f84 │ │ -43360a: 6e20 535b c000 |0107: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -433610: 5460 895f |010a: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ -433614: 6e20 a95a b000 |010c: invoke-virtual {v0, v11}, Landroid/widget/SeekBar;.setVisibility:(I)V // method@5aa9 │ │ -43361a: 5460 8a5f |010f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f8a │ │ -43361e: 6e20 535b b000 |0111: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -433624: 5460 8b5f |0114: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f8b │ │ -433628: 2202 f10a |0116: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -43362c: 7010 ee5c 0200 |0118: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433632: 6e20 f95c 1200 |011b: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433638: 5373 a45f |011e: iget-wide v3, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa4 │ │ -43363c: 7030 01be 3604 |0120: invoke-direct {v6, v3, v4}, Lorg/purple/smoke/SteamBubble;.formatSize:(J)Ljava/lang/String; // method@be01 │ │ -433642: 0c01 |0123: move-result-object v1 │ │ -433644: 6e20 f95c 1200 |0124: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43364a: 6e10 035d 0200 |0127: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433650: 0c01 |012a: move-result-object v1 │ │ -433652: 6e20 495b 1000 |012b: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -433658: 2900 2301 |012e: goto/16 0251 // +0123 │ │ -43365c: 5870 975f |0130: iget-short v0, v7, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f97 │ │ -433660: 1402 7100 077f |0132: const v2, #float 1.79448e+38 // #7f070071 │ │ -433666: 1405 8900 077f |0135: const v5, #float 1.79449e+38 // #7f070089 │ │ -43366c: 3900 a300 |0138: if-nez v0, 01db // +00a3 │ │ -433670: 5460 745f |013a: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ -433674: 6e20 e558 c000 |013c: invoke-virtual {v0, v12}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ -43367a: 5460 775f |013f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f77 │ │ -43367e: 2201 f10a |0141: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -433682: 7010 ee5c 0100 |0143: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433688: 1a03 b342 |0146: const-string v3, "Origin: " // string@42b3 │ │ -43368c: 6e20 f95c 3100 |0148: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433692: 5473 965f |014b: iget-object v3, v7, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ -433696: 6e20 f95c 3100 |014d: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43369c: 6e10 035d 0100 |0150: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4336a2: 0c01 |0153: move-result-object v1 │ │ -4336a4: 6e20 495b 1000 |0154: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -4336aa: 5460 7a5f |0157: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f7a │ │ -4336ae: 1401 6900 077f |0159: const v1, #float 1.79448e+38 // #7f070069 │ │ -4336b4: 6e20 7756 1000 |015c: invoke-virtual {v0, v1}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ -4336ba: 5460 7b5f |015f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f7b │ │ -4336be: 6e20 535b b000 |0161: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -4336c4: 5460 805f |0164: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f80 │ │ -4336c8: 5471 9f5f |0166: iget-object v1, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ -4336cc: 3801 0800 |0168: if-eqz v1, 0170 // +0008 │ │ -4336d0: 5471 9f5f |016a: iget-object v1, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ -4336d4: 2111 |016c: array-length v1, v1 │ │ -4336d6: 33f1 0300 |016d: if-ne v1, v15, 0170 // +0003 │ │ -4336da: 2804 |016f: goto 0173 // +0004 │ │ -4336dc: 1402 8900 077f |0170: const v2, #float 1.79449e+38 // #7f070089 │ │ -4336e2: 6e20 7756 2000 |0173: invoke-virtual {v0, v2}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ -4336e8: 5460 805f |0176: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f80 │ │ -4336ec: 6e20 ac56 b000 |0178: invoke-virtual {v0, v11}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -4336f2: 5460 815f |017b: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f81 │ │ -4336f6: 6e20 535b b000 |017d: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -4336fc: 5460 845f |0180: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f84 │ │ -433700: 6e20 535b b000 |0182: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -433706: 5460 845f |0185: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f84 │ │ -43370a: 2201 f10a |0187: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -43370e: 7010 ee5c 0100 |0189: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433714: 1a02 e32e |018c: const-string v2, "Locked: " // string@2ee3 │ │ -433718: 6e20 f95c 2100 |018e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43371e: 5572 a15f |0191: iget-boolean v2, v7, Lorg/purple/smoke/SteamElement;.m_locked:Z // field@5fa1 │ │ -433722: 3802 0500 |0193: if-eqz v2, 0198 // +0005 │ │ -433726: 1a02 3354 |0195: const-string v2, "Yes" // string@5433 │ │ -43372a: 2803 |0197: goto 019a // +0003 │ │ -43372c: 1a02 4a41 |0198: const-string v2, "No" // string@414a │ │ -433730: 6e20 f95c 2100 |019a: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433736: 6e10 035d 0100 |019d: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -43373c: 0c01 |01a0: move-result-object v1 │ │ -43373e: 6e20 495b 1000 |01a1: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -433744: 5460 895f |01a4: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ -433748: 6e20 a95a c000 |01a6: invoke-virtual {v0, v12}, Landroid/widget/SeekBar;.setVisibility:(I)V // method@5aa9 │ │ -43374e: 5460 8a5f |01a9: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f8a │ │ -433752: 6e20 535b c000 |01ab: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -433758: 5460 8b5f |01ae: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f8b │ │ -43375c: 2201 f10a |01b0: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -433760: 7010 ee5c 0100 |01b2: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433766: 1a02 b246 |01b5: const-string v2, "Received: " // string@46b2 │ │ -43376a: 6e20 f95c 2100 |01b7: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433770: 5372 a45f |01ba: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa4 │ │ -433774: 7030 01be 2603 |01bc: invoke-direct {v6, v2, v3}, Lorg/purple/smoke/SteamBubble;.formatSize:(J)Ljava/lang/String; // method@be01 │ │ -43377a: 0c02 |01bf: move-result-object v2 │ │ -43377c: 6e20 f95c 2100 |01c0: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433782: 6e20 f95c e100 |01c3: invoke-virtual {v1, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433788: 5372 a45f |01c6: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa4 │ │ -43378c: 7030 02be 2603 |01c8: invoke-direct {v6, v2, v3}, Lorg/purple/smoke/SteamBubble;.niceBytes:(J)Ljava/lang/String; // method@be02 │ │ -433792: 0c02 |01cb: move-result-object v2 │ │ -433794: 6e20 f95c 2100 |01cc: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43379a: 6e20 f95c d100 |01cf: invoke-virtual {v1, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4337a0: 6e10 035d 0100 |01d2: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4337a6: 0c01 |01d5: move-result-object v1 │ │ -4337a8: 6e20 495b 1000 |01d6: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -4337ae: 2900 7800 |01d9: goto/16 0251 // +0078 │ │ -4337b2: 5460 745f |01db: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ -4337b6: 5479 9f5f |01dd: iget-object v9, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ -4337ba: 3809 0900 |01df: if-eqz v9, 01e8 // +0009 │ │ -4337be: 5479 9f5f |01e1: iget-object v9, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ -4337c2: 2199 |01e3: array-length v9, v9 │ │ -4337c4: 33f9 0400 |01e4: if-ne v9, v15, 01e8 // +0004 │ │ -4337c8: 1219 |01e6: const/4 v9, #int 1 // #1 │ │ -4337ca: 2802 |01e7: goto 01e9 // +0002 │ │ -4337cc: 1209 |01e8: const/4 v9, #int 0 // #0 │ │ -4337ce: 6e20 e058 9000 |01e9: invoke-virtual {v0, v9}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -4337d4: 5460 745f |01ec: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ -4337d8: 6e20 e558 b000 |01ee: invoke-virtual {v0, v11}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ -4337de: 5460 775f |01f1: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f77 │ │ -4337e2: 2209 f10a |01f3: new-instance v9, Ljava/lang/StringBuilder; // type@0af1 │ │ -4337e6: 7010 ee5c 0900 |01f5: invoke-direct {v9}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -4337ec: 6e20 f95c 4900 |01f8: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4337f2: 5474 965f |01fb: iget-object v4, v7, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ -4337f6: 6e20 f95c 4900 |01fd: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4337fc: 6e10 035d 0900 |0200: invoke-virtual {v9}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433802: 0c04 |0203: move-result-object v4 │ │ -433804: 6e20 495b 4000 |0204: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43380a: 5460 7a5f |0207: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f7a │ │ -43380e: 6e20 7756 3000 |0209: invoke-virtual {v0, v3}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ -433814: 5460 7b5f |020c: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f7b │ │ -433818: 6e20 535b b000 |020e: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -43381e: 5460 805f |0211: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f80 │ │ -433822: 5473 9f5f |0213: iget-object v3, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ -433826: 3803 0800 |0215: if-eqz v3, 021d // +0008 │ │ -43382a: 5473 9f5f |0217: iget-object v3, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ -43382e: 2133 |0219: array-length v3, v3 │ │ -433830: 33f3 0300 |021a: if-ne v3, v15, 021d // +0003 │ │ -433834: 2804 |021c: goto 0220 // +0004 │ │ -433836: 1402 8900 077f |021d: const v2, #float 1.79449e+38 // #7f070089 │ │ -43383c: 6e20 7756 2000 |0220: invoke-virtual {v0, v2}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ -433842: 5460 805f |0223: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f80 │ │ -433846: 6e20 ac56 b000 |0225: invoke-virtual {v0, v11}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -43384c: 5460 815f |0228: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f81 │ │ -433850: 6e20 535b b000 |022a: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -433856: 5460 845f |022d: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f84 │ │ -43385a: 6e20 535b c000 |022f: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -433860: 5460 895f |0232: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ -433864: 6e20 a95a c000 |0234: invoke-virtual {v0, v12}, Landroid/widget/SeekBar;.setVisibility:(I)V // method@5aa9 │ │ -43386a: 5460 8b5f |0237: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f8b │ │ -43386e: 2202 f10a |0239: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -433872: 7010 ee5c 0200 |023b: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433878: 6e20 f95c 1200 |023e: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43387e: 5373 a45f |0241: iget-wide v3, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa4 │ │ -433882: 7030 01be 3604 |0243: invoke-direct {v6, v3, v4}, Lorg/purple/smoke/SteamBubble;.formatSize:(J)Ljava/lang/String; // method@be01 │ │ -433888: 0c01 |0246: move-result-object v1 │ │ -43388a: 6e20 f95c 1200 |0247: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433890: 6e10 035d 0200 |024a: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433896: 0c01 |024d: move-result-object v1 │ │ -433898: 6e20 495b 1000 |024e: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43389e: 5460 785f |0251: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_details:Landroid/widget/Switch; // field@5f78 │ │ -4338a2: 7100 74bd 0000 |0253: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -4338a8: 0c01 |0256: move-result-object v1 │ │ -4338aa: 5262 865f |0257: iget v2, v6, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f86 │ │ -4338ae: 6e20 92bd 2100 |0259: invoke-virtual {v1, v2}, Lorg/purple/smoke/State;.steamDetailsState:(I)Z // method@bd92 │ │ -4338b4: 0a01 |025c: move-result v1 │ │ -4338b6: 6e20 db5a 1000 |025d: invoke-virtual {v0, v1}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -4338bc: 5460 795f |0260: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_digest:Landroid/widget/TextView; // field@5f79 │ │ -4338c0: 2201 f10a |0262: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -4338c4: 7010 ee5c 0100 |0264: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -4338ca: 1a02 4548 |0267: const-string v2, "SHA-256: " // string@4845 │ │ -4338ce: 6e20 f95c 2100 |0269: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4338d4: 5472 9b5f |026c: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9b │ │ -4338d8: 7110 e4bb 0200 |026e: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayAsHexString:([B)Ljava/lang/String; // method@bbe4 │ │ -4338de: 0c02 |0271: move-result-object v2 │ │ -4338e0: 6e20 f95c 2100 |0272: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4338e6: 6e10 035d 0100 |0275: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4338ec: 0c01 |0278: move-result-object v1 │ │ -4338ee: 6e20 495b 1000 |0279: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -4338f4: 5460 7b5f |027c: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f7b │ │ -4338f8: 2201 f10a |027e: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -4338fc: 7010 ee5c 0100 |0280: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433902: 1a02 4919 |0283: const-string v2, "Ephemeral Key Type: " // string@1949 │ │ -433906: 6e20 f95c 2100 |0285: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43390c: 5472 a05f |0288: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5fa0 │ │ -433910: 6e20 f95c 2100 |028a: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433916: 6e10 035d 0100 |028d: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -43391c: 0c01 |0290: move-result-object v1 │ │ -43391e: 6e20 495b 1000 |0291: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -433924: 5469 7c5f |0294: iget-object v9, v6, Lorg/purple/smoke/SteamBubble;.m_eta:Landroid/widget/TextView; // field@5f7c │ │ -433928: 5471 a75f |0296: iget-object v1, v7, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa7 │ │ -43392c: 5372 9e5f |0298: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ -433930: 5374 a45f |029a: iget-wide v4, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa4 │ │ -433934: 0800 1000 |029c: move-object/from16 v0, v16 │ │ -433938: 7606 03be 0000 |029e: invoke-direct/range {v0, v1, v2, v3, v4, v5}, Lorg/purple/smoke/SteamBubble;.prettyEta:(Ljava/lang/String;JJ)Ljava/lang/String; // method@be03 │ │ -43393e: 0c00 |02a1: move-result-object v0 │ │ -433940: 6e20 495b 0900 |02a2: invoke-virtual {v9, v0}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -433946: 5460 7d5f |02a5: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_fileIdentity:Landroid/widget/TextView; // field@5f7d │ │ -43394a: 2201 f10a |02a7: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -43394e: 7010 ee5c 0100 |02a9: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433954: 1a02 dc1a |02ac: const-string v2, "File Identity: " // string@1adc │ │ -433958: 6e20 f95c 2100 |02ae: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43395e: 5472 9c5f |02b1: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9c │ │ -433962: 7110 e4bb 0200 |02b3: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayAsHexString:([B)Ljava/lang/String; // method@bbe4 │ │ -433968: 0c02 |02b6: move-result-object v2 │ │ -43396a: 6e20 f95c 2100 |02b7: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433970: 6e10 035d 0100 |02ba: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433976: 0c01 |02bd: move-result-object v1 │ │ -433978: 6e20 495b 1000 |02be: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43397e: 5460 7e5f |02c1: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_fileName:Landroid/widget/TextView; // field@5f7e │ │ -433982: 2201 f10a |02c3: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -433986: 7010 ee5c 0100 |02c5: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -43398c: 1a02 de1a |02c8: const-string v2, "File: " // string@1ade │ │ -433990: 6e20 f95c 2100 |02ca: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433996: 5472 985f |02cd: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f98 │ │ -43399a: 6e20 f95c 2100 |02cf: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4339a0: 6e10 035d 0100 |02d2: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4339a6: 0c01 |02d5: move-result-object v1 │ │ -4339a8: 6e20 495b 1000 |02d6: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -4339ae: 5460 7f5f |02d9: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_fileSize:Landroid/widget/TextView; // field@5f7f │ │ -4339b2: 2201 f10a |02db: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -4339b6: 7010 ee5c 0100 |02dd: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -4339bc: 1a02 db4b |02e0: const-string v2, "Size: " // string@4bdb │ │ -4339c0: 6e20 f95c 2100 |02e2: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4339c6: 5372 9e5f |02e5: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ -4339ca: 7030 01be 2603 |02e7: invoke-direct {v6, v2, v3}, Lorg/purple/smoke/SteamBubble;.formatSize:(J)Ljava/lang/String; // method@be01 │ │ -4339d0: 0c02 |02ea: move-result-object v2 │ │ -4339d2: 6e20 f95c 2100 |02eb: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4339d8: 6e20 f95c e100 |02ee: invoke-virtual {v1, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4339de: 5372 9e5f |02f1: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ -4339e2: 7030 02be 2603 |02f3: invoke-direct {v6, v2, v3}, Lorg/purple/smoke/SteamBubble;.niceBytes:(J)Ljava/lang/String; // method@be02 │ │ -4339e8: 0c02 |02f6: move-result-object v2 │ │ -4339ea: 6e20 f95c 2100 |02f7: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4339f0: 6e20 f95c d100 |02fa: invoke-virtual {v1, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4339f6: 6e10 035d 0100 |02fd: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4339fc: 0c01 |0300: move-result-object v1 │ │ -4339fe: 6e20 495b 1000 |0301: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -433a04: 5470 9f5f |0304: iget-object v0, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ -433a08: 3800 2d00 |0306: if-eqz v0, 0333 // +002d │ │ -433a0c: 5470 9f5f |0308: iget-object v0, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ -433a10: 2100 |030a: array-length v0, v0 │ │ -433a12: 32f0 0300 |030b: if-eq v0, v15, 030e // +0003 │ │ -433a16: 2826 |030d: goto 0333 // +0026 │ │ -433a18: 5460 815f |030e: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f81 │ │ -433a1c: 2201 f10a |0310: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -433a20: 7010 ee5c 0100 |0312: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433a26: 1a02 721f |0315: const-string v2, "Key Stream SHA-256: " // string@1f72 │ │ -433a2a: 6e20 f95c 2100 |0317: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433a30: 23a2 0f1c |031a: new-array v2, v10, [[B // type@1c0f │ │ -433a34: 5473 9f5f |031c: iget-object v3, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ -433a38: 4d03 020b |031e: aput-object v3, v2, v11 │ │ -433a3c: 7110 b9b9 0200 |0320: invoke-static {v2}, Lorg/purple/smoke/Cryptography;.sha256:([[B)[B // method@b9b9 │ │ -433a42: 0c02 |0323: move-result-object v2 │ │ -433a44: 7110 e4bb 0200 |0324: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayAsHexString:([B)Ljava/lang/String; // method@bbe4 │ │ -433a4a: 0c02 |0327: move-result-object v2 │ │ -433a4c: 6e20 f95c 2100 |0328: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433a52: 6e10 035d 0100 |032b: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433a58: 0c01 |032e: move-result-object v1 │ │ -433a5a: 6e20 495b 1000 |032f: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -433a60: 2808 |0332: goto 033a // +0008 │ │ -433a62: 5460 815f |0333: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f81 │ │ -433a66: 1a01 731f |0335: const-string v1, "Key Stream SHA-256: N/A" // string@1f73 │ │ -433a6a: 6e20 495b 1000 |0337: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -433a70: 5370 9e5f |033a: iget-wide v0, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ -433a74: 1602 0000 |033c: const-wide/16 v2, #int 0 // #0 │ │ -433a78: 3104 0002 |033e: cmp-long v4, v0, v2 │ │ -433a7c: 3d04 2b00 |0340: if-lez v4, 036b // +002b │ │ -433a80: 5460 875f |0342: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f87 │ │ -433a84: 2201 f10a |0344: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -433a88: 7010 ee5c 0100 |0346: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433a8e: 1902 5940 |0349: const-wide/high16 v2, #long 4636737291354636288 // #4059 │ │ -433a92: 5374 a45f |034b: iget-wide v4, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa4 │ │ -433a96: 8644 |034d: long-to-double v4, v4 │ │ -433a98: 7120 2c5c 5400 |034e: invoke-static {v4, v5}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ -433a9e: ad04 0402 |0351: mul-double v4, v4, v2 │ │ -433aa2: 5372 9e5f |0353: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ -433aa6: 8622 |0355: long-to-double v2, v2 │ │ -433aa8: 7120 2c5c 3200 |0356: invoke-static {v2, v3}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ -433aae: ce24 |0359: div-double/2addr v4, v2 │ │ -433ab0: 8a42 |035a: double-to-int v2, v4 │ │ -433ab2: 6e20 f45c 2100 |035b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ -433ab8: 1a02 1003 |035e: const-string v2, "%" // string@0310 │ │ -433abc: 6e20 f95c 2100 |0360: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433ac2: 6e10 035d 0100 |0363: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433ac8: 0c01 |0366: move-result-object v1 │ │ -433aca: 6e20 495b 1000 |0367: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -433ad0: 2808 |036a: goto 0372 // +0008 │ │ -433ad2: 5460 875f |036b: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f87 │ │ -433ad6: 1a01 c804 |036d: const-string v1, "0%" // string@04c8 │ │ -433ada: 6e20 495b 1000 |036f: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -433ae0: 5460 885f |0372: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f88 │ │ -433ae4: 5371 9e5f |0374: iget-wide v1, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ -433ae8: 8412 |0376: long-to-int v2, v1 │ │ -433aea: 6e20 5c5a 2000 |0377: invoke-virtual {v0, v2}, Landroid/widget/ProgressBar;.setMax:(I)V // method@5a5c │ │ -433af0: 5460 885f |037a: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f88 │ │ -433af4: 5371 a45f |037c: iget-wide v1, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa4 │ │ -433af8: 8412 |037e: long-to-int v2, v1 │ │ -433afa: 6e20 5d5a 2000 |037f: invoke-virtual {v0, v2}, Landroid/widget/ProgressBar;.setProgress:(I)V // method@5a5d │ │ -433b00: 5370 a35f |0382: iget-wide v0, v7, Lorg/purple/smoke/SteamElement;.m_readInterval:J // field@5fa3 │ │ -433b04: 8401 |0384: long-to-int v1, v0 │ │ -433b06: 1240 |0385: const/4 v0, #int 4 // #4 │ │ -433b08: 3201 2c00 |0386: if-eq v1, v0, 03b2 // +002c │ │ -433b0c: 1302 0a00 |0388: const/16 v2, #int 10 // #a │ │ -433b10: 3221 2200 |038a: if-eq v1, v2, 03ac // +0022 │ │ -433b14: 1302 1400 |038c: const/16 v2, #int 20 // #14 │ │ -433b18: 3221 1700 |038e: if-eq v1, v2, 03a5 // +0017 │ │ -433b1c: 1302 3200 |0390: const/16 v2, #int 50 // #32 │ │ -433b20: 3221 0d00 |0392: if-eq v1, v2, 039f // +000d │ │ -433b24: 1302 6400 |0394: const/16 v2, #int 100 // #64 │ │ -433b28: 3221 0300 |0396: if-eq v1, v2, 0399 // +0003 │ │ -433b2c: 281f |0398: goto 03b7 // +001f │ │ -433b2e: 5461 895f |0399: iget-object v1, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ -433b32: 6e20 a75a 0100 |039b: invoke-virtual {v1, v0}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ -433b38: 2819 |039e: goto 03b7 // +0019 │ │ -433b3a: 5460 895f |039f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ -433b3e: 6e20 a75a 8000 |03a1: invoke-virtual {v0, v8}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ -433b44: 2813 |03a4: goto 03b7 // +0013 │ │ -433b46: 5460 895f |03a5: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ -433b4a: 1221 |03a7: const/4 v1, #int 2 // #2 │ │ -433b4c: 6e20 a75a 1000 |03a8: invoke-virtual {v0, v1}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ -433b52: 280c |03ab: goto 03b7 // +000c │ │ -433b54: 5460 895f |03ac: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ -433b58: 6e20 a75a a000 |03ae: invoke-virtual {v0, v10}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ -433b5e: 2806 |03b1: goto 03b7 // +0006 │ │ -433b60: 5460 895f |03b2: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ -433b64: 6e20 a75a b000 |03b4: invoke-virtual {v0, v11}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ -433b6a: 5460 8c5f |03b7: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_separator:Landroid/view/View; // field@5f8c │ │ -433b6e: d801 12ff |03b9: add-int/lit8 v1, v18, #int -1 // #ff │ │ -433b72: 0202 1300 |03bb: move/from16 v2, v19 │ │ -433b76: 3321 0400 |03bd: if-ne v1, v2, 03c1 // +0004 │ │ -433b7a: 130b 0800 |03bf: const/16 v11, #int 8 // #8 │ │ -433b7e: 6e20 ac56 b000 |03c1: invoke-virtual {v0, v11}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -433b84: 5460 8d5f |03c4: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_status:Landroid/widget/TextView; // field@5f8d │ │ -433b88: 2201 f10a |03c6: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -433b8c: 7010 ee5c 0100 |03c8: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433b92: 1a02 754c |03cb: const-string v2, "Status: " // string@4c75 │ │ -433b96: 6e20 f95c 2100 |03cd: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433b9c: 5472 a65f |03d0: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa6 │ │ -433ba0: 6e20 f95c 2100 |03d2: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433ba6: 6e10 035d 0100 |03d5: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433bac: 0c01 |03d8: move-result-object v1 │ │ -433bae: 6e20 495b 1000 |03d9: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -433bb4: 5870 975f |03dc: iget-short v0, v7, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f97 │ │ -433bb8: 3900 1b00 |03de: if-nez v0, 03f9 // +001b │ │ -433bbc: 5460 8f5f |03e0: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_transferRate:Landroid/widget/TextView; // field@5f8f │ │ -433bc0: 2201 f10a |03e2: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -433bc4: 7010 ee5c 0100 |03e4: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433bca: 1a02 aa46 |03e7: const-string v2, "Receive Rate: " // string@46aa │ │ -433bce: 6e20 f95c 2100 |03e9: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433bd4: 5472 a75f |03ec: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa7 │ │ -433bd8: 6e20 f95c 2100 |03ee: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433bde: 6e10 035d 0100 |03f1: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433be4: 0c01 |03f4: move-result-object v1 │ │ -433be6: 6e20 495b 1000 |03f5: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -433bec: 2819 |03f8: goto 0411 // +0019 │ │ -433bee: 5460 8f5f |03f9: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_transferRate:Landroid/widget/TextView; // field@5f8f │ │ -433bf2: 2201 f10a |03fb: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -433bf6: 7010 ee5c 0100 |03fd: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -433bfc: 1a02 b34f |0400: const-string v2, "Transfer Rate: " // string@4fb3 │ │ -433c00: 6e20 f95c 2100 |0402: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433c06: 5472 a75f |0405: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa7 │ │ -433c0a: 6e20 f95c 2100 |0407: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -433c10: 6e10 035d 0100 |040a: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -433c16: 0c01 |040d: move-result-object v1 │ │ -433c18: 6e20 495b 1000 |040e: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -433c1e: 5460 905f |0411: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -433c22: 5261 865f |0413: iget v1, v6, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f86 │ │ -433c26: 6e20 8256 1000 |0415: invoke-virtual {v0, v1}, Landroid/view/View;.setId:(I)V // method@5682 │ │ -433c2c: 0e00 |0418: return-void │ │ -433c2e: 0000 |0419: nop // spacer │ │ -433c30: 0002 0400 9b34 4a80 4bf6 60ac 2e99 ... |041a: sparse-switch-data (18 units) │ │ -433c54: 0001 0400 0000 0000 4900 0000 2500 ... |042c: packed-switch-data (12 units) │ │ +4333e8: |[4333e8] org.purple.smoke.SteamBubble.setData:(Lorg/purple/smoke/SteamElement;II)V │ │ +4333f8: 0806 1000 |0000: move-object/from16 v6, v16 │ │ +4333fc: 0807 1100 |0002: move-object/from16 v7, v17 │ │ +433400: 3907 0300 |0004: if-nez v7, 0007 // +0003 │ │ +433404: 0e00 |0006: return-void │ │ +433406: 5270 a25f |0007: iget v0, v7, Lorg/purple/smoke/SteamElement;.m_oid:I // field@5fa2 │ │ +43340a: 5960 865f |0009: iput v0, v6, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f86 │ │ +43340e: 5470 a65f |000b: iget-object v0, v7, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa6 │ │ +433412: 6e10 bf5c 0000 |000d: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +433418: 6e10 bf5c 0000 |0010: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +43341e: 0a01 |0013: move-result v1 │ │ +433420: 1238 |0014: const/4 v8, #int 3 // #3 │ │ +433422: 12f2 |0015: const/4 v2, #int -1 // #ff │ │ +433424: 121a |0016: const/4 v10, #int 1 // #1 │ │ +433426: 120b |0017: const/4 v11, #int 0 // #0 │ │ +433428: 2c01 0204 0000 |0018: sparse-switch v1, 0000041a // +00000402 │ │ +43342e: 12f0 |001b: const/4 v0, #int -1 // #ff │ │ +433430: 282c |001c: goto 0048 // +002c │ │ +433432: 1a01 7c96 |001d: const-string v1, "receiving" // string@967c │ │ +433436: 6e20 b85c 1000 |001f: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +43343c: 0a00 |0022: move-result v0 │ │ +43343e: 3900 0300 |0023: if-nez v0, 0026 // +0003 │ │ +433442: 28f6 |0025: goto 001b // -000a │ │ +433444: 1230 |0026: const/4 v0, #int 3 // #3 │ │ +433446: 2821 |0027: goto 0048 // +0021 │ │ +433448: 1a01 2993 |0028: const-string v1, "paused" // string@9329 │ │ +43344c: 6e20 b85c 1000 |002a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +433452: 0a00 |002d: move-result v0 │ │ +433454: 3900 0300 |002e: if-nez v0, 0031 // +0003 │ │ +433458: 28eb |0030: goto 001b // -0015 │ │ +43345a: 1220 |0031: const/4 v0, #int 2 // #2 │ │ +43345c: 2816 |0032: goto 0048 // +0016 │ │ +43345e: 1a01 fa5f |0033: const-string v1, "completed" // string@5ffa │ │ +433462: 6e20 b85c 1000 |0035: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +433468: 0a00 |0038: move-result v0 │ │ +43346a: 3900 0300 |0039: if-nez v0, 003c // +0003 │ │ +43346e: 28e0 |003b: goto 001b // -0020 │ │ +433470: 1210 |003c: const/4 v0, #int 1 // #1 │ │ +433472: 280b |003d: goto 0048 // +000b │ │ +433474: 1a01 68a5 |003e: const-string v1, "transferring" // string@a568 │ │ +433478: 6e20 b85c 1000 |0040: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +43347e: 0a00 |0043: move-result v0 │ │ +433480: 3900 0300 |0044: if-nez v0, 0047 // +0003 │ │ +433484: 28d5 |0046: goto 001b // -002b │ │ +433486: 1200 |0047: const/4 v0, #int 0 // #0 │ │ +433488: 1a01 ac44 |0048: const-string v1, "Pause" // string@44ac │ │ +43348c: 130c 0800 |004a: const/16 v12, #int 8 // #8 │ │ +433490: 2b00 e003 0000 |004c: packed-switch v0, 0000042c // +000003e0 │ │ +433496: 2859 |004f: goto 00a8 // +0059 │ │ +433498: 5460 875f |0050: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f87 │ │ +43349c: 6e20 535b b000 |0052: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +4334a2: 5460 885f |0055: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f88 │ │ +4334a6: 6e20 5f5a b000 |0057: invoke-virtual {v0, v11}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +4334ac: 284e |005a: goto 00a8 // +004e │ │ +4334ae: 5460 745f |005b: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ +4334b2: 1a01 0647 |005d: const-string v1, "Resume" // string@4706 │ │ +4334b6: 6e20 e358 1000 |005f: invoke-virtual {v0, v1}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@58e3 │ │ +4334bc: 1a00 2598 |0062: const-string v0, "resume" // string@9825 │ │ +4334c0: 5b60 755f |0064: iput-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f75 │ │ +4334c4: 5460 875f |0066: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f87 │ │ +4334c8: 6e20 535b c000 |0068: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +4334ce: 5460 885f |006b: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f88 │ │ +4334d2: 6e20 5f5a c000 |006d: invoke-virtual {v0, v12}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +4334d8: 2838 |0070: goto 00a8 // +0038 │ │ +4334da: 5870 975f |0071: iget-short v0, v7, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f97 │ │ +4334de: 3900 0c00 |0073: if-nez v0, 007f // +000c │ │ +4334e2: 5460 745f |0075: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ +4334e6: 6e20 e358 1000 |0077: invoke-virtual {v0, v1}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@58e3 │ │ +4334ec: 1a00 0000 |007a: const-string v0, "" // string@0000 │ │ +4334f0: 5b60 755f |007c: iput-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f75 │ │ +4334f4: 280c |007e: goto 008a // +000c │ │ +4334f6: 5460 745f |007f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ +4334fa: 1a01 0b47 |0081: const-string v1, "Rewind" // string@470b │ │ +4334fe: 6e20 e358 1000 |0083: invoke-virtual {v0, v1}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@58e3 │ │ +433504: 1a00 4998 |0086: const-string v0, "rewind" // string@9849 │ │ +433508: 5b60 755f |0088: iput-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f75 │ │ +43350c: 5460 875f |008a: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f87 │ │ +433510: 6e20 535b c000 |008c: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +433516: 5460 885f |008f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f88 │ │ +43351a: 6e20 5f5a c000 |0091: invoke-virtual {v0, v12}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +433520: 2814 |0094: goto 00a8 // +0014 │ │ +433522: 5460 745f |0095: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ +433526: 6e20 e358 1000 |0097: invoke-virtual {v0, v1}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@58e3 │ │ +43352c: 1a00 2593 |009a: const-string v0, "pause" // string@9325 │ │ +433530: 5b60 755f |009c: iput-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_controlString:Ljava/lang/String; // field@5f75 │ │ +433534: 5460 875f |009e: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f87 │ │ +433538: 6e20 535b b000 |00a0: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +43353e: 5460 885f |00a3: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f88 │ │ +433542: 6e20 5f5a b000 |00a5: invoke-virtual {v0, v11}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +433548: 5470 965f |00a8: iget-object v0, v7, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ +43354c: 1a01 b442 |00aa: const-string v1, "Other (Non-Smoke)" // string@42b4 │ │ +433550: 6e20 b85c 1000 |00ac: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +433556: 0a00 |00af: move-result v0 │ │ +433558: 1a0d ec03 |00b0: const-string v13, ")" // string@03ec │ │ +43355c: 1a0e 9800 |00b2: const-string v14, " (" // string@0098 │ │ +433560: 1a01 244b |00b4: const-string v1, "Sent: " // string@4b24 │ │ +433564: 1403 8a00 077f |00b6: const v3, #float 1.79449e+38 // #7f07008a │ │ +43356a: 1a04 3e17 |00b9: const-string v4, "Destination: " // string@173e │ │ +43356e: 130f 6000 |00bb: const/16 v15, #int 96 // #60 │ │ +433572: 3800 7300 |00bd: if-eqz v0, 0130 // +0073 │ │ +433576: 7100 10bb 0000 |00bf: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +43357c: 0c00 |00c2: move-result-object v0 │ │ +43357e: 6e10 15bb 0000 |00c3: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.nextSimpleSteamOid:()I // method@bb15 │ │ +433584: 0a00 |00c6: move-result v0 │ │ +433586: 5465 745f |00c7: iget-object v5, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ +43358a: 5269 865f |00c9: iget v9, v6, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f86 │ │ +43358e: 3209 0700 |00cb: if-eq v9, v0, 00d2 // +0007 │ │ +433592: 3320 0300 |00cd: if-ne v0, v2, 00d0 // +0003 │ │ +433596: 2803 |00cf: goto 00d2 // +0003 │ │ +433598: 1200 |00d0: const/4 v0, #int 0 // #0 │ │ +43359a: 2802 |00d1: goto 00d3 // +0002 │ │ +43359c: 1210 |00d2: const/4 v0, #int 1 // #1 │ │ +43359e: 6e20 e058 0500 |00d3: invoke-virtual {v5, v0}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +4335a4: 5460 745f |00d6: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ +4335a8: 6e20 e558 b000 |00d8: invoke-virtual {v0, v11}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ +4335ae: 5460 775f |00db: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f77 │ │ +4335b2: 2202 f10a |00dd: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +4335b6: 7010 ee5c 0200 |00df: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4335bc: 6e20 f95c 4200 |00e2: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4335c2: 5474 965f |00e5: iget-object v4, v7, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ +4335c6: 6e20 f95c 4200 |00e7: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4335cc: 6e10 035d 0200 |00ea: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4335d2: 0c02 |00ed: move-result-object v2 │ │ +4335d4: 6e20 495b 2000 |00ee: invoke-virtual {v0, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +4335da: 5460 7a5f |00f1: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f7a │ │ +4335de: 6e20 7756 3000 |00f3: invoke-virtual {v0, v3}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ +4335e4: 5460 7b5f |00f6: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f7b │ │ +4335e8: 6e20 535b c000 |00f8: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +4335ee: 5460 805f |00fb: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f80 │ │ +4335f2: 6e20 ac56 c000 |00fd: invoke-virtual {v0, v12}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +4335f8: 5460 815f |0100: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f81 │ │ +4335fc: 6e20 535b c000 |0102: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +433602: 5460 845f |0105: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f84 │ │ +433606: 6e20 535b c000 |0107: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +43360c: 5460 895f |010a: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ +433610: 6e20 a95a b000 |010c: invoke-virtual {v0, v11}, Landroid/widget/SeekBar;.setVisibility:(I)V // method@5aa9 │ │ +433616: 5460 8a5f |010f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f8a │ │ +43361a: 6e20 535b b000 |0111: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +433620: 5460 8b5f |0114: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f8b │ │ +433624: 2202 f10a |0116: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +433628: 7010 ee5c 0200 |0118: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +43362e: 6e20 f95c 1200 |011b: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433634: 5373 a45f |011e: iget-wide v3, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa4 │ │ +433638: 7030 01be 3604 |0120: invoke-direct {v6, v3, v4}, Lorg/purple/smoke/SteamBubble;.formatSize:(J)Ljava/lang/String; // method@be01 │ │ +43363e: 0c01 |0123: move-result-object v1 │ │ +433640: 6e20 f95c 1200 |0124: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433646: 6e10 035d 0200 |0127: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +43364c: 0c01 |012a: move-result-object v1 │ │ +43364e: 6e20 495b 1000 |012b: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433654: 2900 2301 |012e: goto/16 0251 // +0123 │ │ +433658: 5870 975f |0130: iget-short v0, v7, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f97 │ │ +43365c: 1402 7100 077f |0132: const v2, #float 1.79448e+38 // #7f070071 │ │ +433662: 1405 8900 077f |0135: const v5, #float 1.79449e+38 // #7f070089 │ │ +433668: 3900 a300 |0138: if-nez v0, 01db // +00a3 │ │ +43366c: 5460 745f |013a: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ +433670: 6e20 e558 c000 |013c: invoke-virtual {v0, v12}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ +433676: 5460 775f |013f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f77 │ │ +43367a: 2201 f10a |0141: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +43367e: 7010 ee5c 0100 |0143: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433684: 1a03 b342 |0146: const-string v3, "Origin: " // string@42b3 │ │ +433688: 6e20 f95c 3100 |0148: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43368e: 5473 965f |014b: iget-object v3, v7, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ +433692: 6e20 f95c 3100 |014d: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433698: 6e10 035d 0100 |0150: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +43369e: 0c01 |0153: move-result-object v1 │ │ +4336a0: 6e20 495b 1000 |0154: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +4336a6: 5460 7a5f |0157: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f7a │ │ +4336aa: 1401 6900 077f |0159: const v1, #float 1.79448e+38 // #7f070069 │ │ +4336b0: 6e20 7756 1000 |015c: invoke-virtual {v0, v1}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ +4336b6: 5460 7b5f |015f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f7b │ │ +4336ba: 6e20 535b b000 |0161: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +4336c0: 5460 805f |0164: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f80 │ │ +4336c4: 5471 9f5f |0166: iget-object v1, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ +4336c8: 3801 0800 |0168: if-eqz v1, 0170 // +0008 │ │ +4336cc: 5471 9f5f |016a: iget-object v1, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ +4336d0: 2111 |016c: array-length v1, v1 │ │ +4336d2: 33f1 0300 |016d: if-ne v1, v15, 0170 // +0003 │ │ +4336d6: 2804 |016f: goto 0173 // +0004 │ │ +4336d8: 1402 8900 077f |0170: const v2, #float 1.79449e+38 // #7f070089 │ │ +4336de: 6e20 7756 2000 |0173: invoke-virtual {v0, v2}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ +4336e4: 5460 805f |0176: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f80 │ │ +4336e8: 6e20 ac56 b000 |0178: invoke-virtual {v0, v11}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +4336ee: 5460 815f |017b: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f81 │ │ +4336f2: 6e20 535b b000 |017d: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +4336f8: 5460 845f |0180: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f84 │ │ +4336fc: 6e20 535b b000 |0182: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +433702: 5460 845f |0185: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f84 │ │ +433706: 2201 f10a |0187: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +43370a: 7010 ee5c 0100 |0189: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433710: 1a02 e32e |018c: const-string v2, "Locked: " // string@2ee3 │ │ +433714: 6e20 f95c 2100 |018e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43371a: 5572 a15f |0191: iget-boolean v2, v7, Lorg/purple/smoke/SteamElement;.m_locked:Z // field@5fa1 │ │ +43371e: 3802 0500 |0193: if-eqz v2, 0198 // +0005 │ │ +433722: 1a02 3354 |0195: const-string v2, "Yes" // string@5433 │ │ +433726: 2803 |0197: goto 019a // +0003 │ │ +433728: 1a02 4a41 |0198: const-string v2, "No" // string@414a │ │ +43372c: 6e20 f95c 2100 |019a: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433732: 6e10 035d 0100 |019d: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +433738: 0c01 |01a0: move-result-object v1 │ │ +43373a: 6e20 495b 1000 |01a1: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433740: 5460 895f |01a4: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ +433744: 6e20 a95a c000 |01a6: invoke-virtual {v0, v12}, Landroid/widget/SeekBar;.setVisibility:(I)V // method@5aa9 │ │ +43374a: 5460 8a5f |01a9: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readIntervalLabel:Landroid/widget/TextView; // field@5f8a │ │ +43374e: 6e20 535b c000 |01ab: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +433754: 5460 8b5f |01ae: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f8b │ │ +433758: 2201 f10a |01b0: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +43375c: 7010 ee5c 0100 |01b2: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433762: 1a02 b246 |01b5: const-string v2, "Received: " // string@46b2 │ │ +433766: 6e20 f95c 2100 |01b7: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43376c: 5372 a45f |01ba: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa4 │ │ +433770: 7030 01be 2603 |01bc: invoke-direct {v6, v2, v3}, Lorg/purple/smoke/SteamBubble;.formatSize:(J)Ljava/lang/String; // method@be01 │ │ +433776: 0c02 |01bf: move-result-object v2 │ │ +433778: 6e20 f95c 2100 |01c0: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43377e: 6e20 f95c e100 |01c3: invoke-virtual {v1, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433784: 5372 a45f |01c6: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa4 │ │ +433788: 7030 02be 2603 |01c8: invoke-direct {v6, v2, v3}, Lorg/purple/smoke/SteamBubble;.niceBytes:(J)Ljava/lang/String; // method@be02 │ │ +43378e: 0c02 |01cb: move-result-object v2 │ │ +433790: 6e20 f95c 2100 |01cc: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433796: 6e20 f95c d100 |01cf: invoke-virtual {v1, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43379c: 6e10 035d 0100 |01d2: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4337a2: 0c01 |01d5: move-result-object v1 │ │ +4337a4: 6e20 495b 1000 |01d6: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +4337aa: 2900 7800 |01d9: goto/16 0251 // +0078 │ │ +4337ae: 5460 745f |01db: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ +4337b2: 5479 9f5f |01dd: iget-object v9, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ +4337b6: 3809 0900 |01df: if-eqz v9, 01e8 // +0009 │ │ +4337ba: 5479 9f5f |01e1: iget-object v9, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ +4337be: 2199 |01e3: array-length v9, v9 │ │ +4337c0: 33f9 0400 |01e4: if-ne v9, v15, 01e8 // +0004 │ │ +4337c4: 1219 |01e6: const/4 v9, #int 1 // #1 │ │ +4337c6: 2802 |01e7: goto 01e9 // +0002 │ │ +4337c8: 1209 |01e8: const/4 v9, #int 0 // #0 │ │ +4337ca: 6e20 e058 9000 |01e9: invoke-virtual {v0, v9}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +4337d0: 5460 745f |01ec: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_control:Landroid/widget/Button; // field@5f74 │ │ +4337d4: 6e20 e558 b000 |01ee: invoke-virtual {v0, v11}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ +4337da: 5460 775f |01f1: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_destination:Landroid/widget/TextView; // field@5f77 │ │ +4337de: 2209 f10a |01f3: new-instance v9, Ljava/lang/StringBuilder; // type@0af1 │ │ +4337e2: 7010 ee5c 0900 |01f5: invoke-direct {v9}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4337e8: 6e20 f95c 4900 |01f8: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4337ee: 5474 965f |01fb: iget-object v4, v7, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ +4337f2: 6e20 f95c 4900 |01fd: invoke-virtual {v9, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4337f8: 6e10 035d 0900 |0200: invoke-virtual {v9}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4337fe: 0c04 |0203: move-result-object v4 │ │ +433800: 6e20 495b 4000 |0204: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433806: 5460 7a5f |0207: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_direction:Landroid/view/View; // field@5f7a │ │ +43380a: 6e20 7756 3000 |0209: invoke-virtual {v0, v3}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ +433810: 5460 7b5f |020c: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f7b │ │ +433814: 6e20 535b b000 |020e: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +43381a: 5460 805f |0211: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f80 │ │ +43381e: 5473 9f5f |0213: iget-object v3, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ +433822: 3803 0800 |0215: if-eqz v3, 021d // +0008 │ │ +433826: 5473 9f5f |0217: iget-object v3, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ +43382a: 2133 |0219: array-length v3, v3 │ │ +43382c: 33f3 0300 |021a: if-ne v3, v15, 021d // +0003 │ │ +433830: 2804 |021c: goto 0220 // +0004 │ │ +433832: 1402 8900 077f |021d: const v2, #float 1.79449e+38 // #7f070089 │ │ +433838: 6e20 7756 2000 |0220: invoke-virtual {v0, v2}, Landroid/view/View;.setBackgroundResource:(I)V // method@5677 │ │ +43383e: 5460 805f |0223: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyExchangeStatus:Landroid/view/View; // field@5f80 │ │ +433842: 6e20 ac56 b000 |0225: invoke-virtual {v0, v11}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +433848: 5460 815f |0228: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f81 │ │ +43384c: 6e20 535b b000 |022a: invoke-virtual {v0, v11}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +433852: 5460 845f |022d: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_locked:Landroid/widget/TextView; // field@5f84 │ │ +433856: 6e20 535b c000 |022f: invoke-virtual {v0, v12}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +43385c: 5460 895f |0232: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ +433860: 6e20 a95a c000 |0234: invoke-virtual {v0, v12}, Landroid/widget/SeekBar;.setVisibility:(I)V // method@5aa9 │ │ +433866: 5460 8b5f |0237: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_sent:Landroid/widget/TextView; // field@5f8b │ │ +43386a: 2202 f10a |0239: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +43386e: 7010 ee5c 0200 |023b: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433874: 6e20 f95c 1200 |023e: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43387a: 5373 a45f |0241: iget-wide v3, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa4 │ │ +43387e: 7030 01be 3604 |0243: invoke-direct {v6, v3, v4}, Lorg/purple/smoke/SteamBubble;.formatSize:(J)Ljava/lang/String; // method@be01 │ │ +433884: 0c01 |0246: move-result-object v1 │ │ +433886: 6e20 f95c 1200 |0247: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43388c: 6e10 035d 0200 |024a: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +433892: 0c01 |024d: move-result-object v1 │ │ +433894: 6e20 495b 1000 |024e: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +43389a: 5460 785f |0251: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_details:Landroid/widget/Switch; // field@5f78 │ │ +43389e: 7100 74bd 0000 |0253: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +4338a4: 0c01 |0256: move-result-object v1 │ │ +4338a6: 5262 865f |0257: iget v2, v6, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f86 │ │ +4338aa: 6e20 92bd 2100 |0259: invoke-virtual {v1, v2}, Lorg/purple/smoke/State;.steamDetailsState:(I)Z // method@bd92 │ │ +4338b0: 0a01 |025c: move-result v1 │ │ +4338b2: 6e20 db5a 1000 |025d: invoke-virtual {v0, v1}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +4338b8: 5460 795f |0260: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_digest:Landroid/widget/TextView; // field@5f79 │ │ +4338bc: 2201 f10a |0262: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +4338c0: 7010 ee5c 0100 |0264: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4338c6: 1a02 4548 |0267: const-string v2, "SHA-256: " // string@4845 │ │ +4338ca: 6e20 f95c 2100 |0269: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4338d0: 5472 9b5f |026c: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9b │ │ +4338d4: 7110 e4bb 0200 |026e: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayAsHexString:([B)Ljava/lang/String; // method@bbe4 │ │ +4338da: 0c02 |0271: move-result-object v2 │ │ +4338dc: 6e20 f95c 2100 |0272: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4338e2: 6e10 035d 0100 |0275: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4338e8: 0c01 |0278: move-result-object v1 │ │ +4338ea: 6e20 495b 1000 |0279: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +4338f0: 5460 7b5f |027c: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_ephemeralKeyType:Landroid/widget/TextView; // field@5f7b │ │ +4338f4: 2201 f10a |027e: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +4338f8: 7010 ee5c 0100 |0280: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4338fe: 1a02 4919 |0283: const-string v2, "Ephemeral Key Type: " // string@1949 │ │ +433902: 6e20 f95c 2100 |0285: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433908: 5472 a05f |0288: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5fa0 │ │ +43390c: 6e20 f95c 2100 |028a: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433912: 6e10 035d 0100 |028d: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +433918: 0c01 |0290: move-result-object v1 │ │ +43391a: 6e20 495b 1000 |0291: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433920: 5469 7c5f |0294: iget-object v9, v6, Lorg/purple/smoke/SteamBubble;.m_eta:Landroid/widget/TextView; // field@5f7c │ │ +433924: 5471 a75f |0296: iget-object v1, v7, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa7 │ │ +433928: 5372 9e5f |0298: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ +43392c: 5374 a45f |029a: iget-wide v4, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa4 │ │ +433930: 0800 1000 |029c: move-object/from16 v0, v16 │ │ +433934: 7606 03be 0000 |029e: invoke-direct/range {v0, v1, v2, v3, v4, v5}, Lorg/purple/smoke/SteamBubble;.prettyEta:(Ljava/lang/String;JJ)Ljava/lang/String; // method@be03 │ │ +43393a: 0c00 |02a1: move-result-object v0 │ │ +43393c: 6e20 495b 0900 |02a2: invoke-virtual {v9, v0}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433942: 5460 7d5f |02a5: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_fileIdentity:Landroid/widget/TextView; // field@5f7d │ │ +433946: 2201 f10a |02a7: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +43394a: 7010 ee5c 0100 |02a9: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433950: 1a02 dc1a |02ac: const-string v2, "File Identity: " // string@1adc │ │ +433954: 6e20 f95c 2100 |02ae: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43395a: 5472 9c5f |02b1: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9c │ │ +43395e: 7110 e4bb 0200 |02b3: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayAsHexString:([B)Ljava/lang/String; // method@bbe4 │ │ +433964: 0c02 |02b6: move-result-object v2 │ │ +433966: 6e20 f95c 2100 |02b7: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43396c: 6e10 035d 0100 |02ba: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +433972: 0c01 |02bd: move-result-object v1 │ │ +433974: 6e20 495b 1000 |02be: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +43397a: 5460 7e5f |02c1: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_fileName:Landroid/widget/TextView; // field@5f7e │ │ +43397e: 2201 f10a |02c3: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +433982: 7010 ee5c 0100 |02c5: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433988: 1a02 de1a |02c8: const-string v2, "File: " // string@1ade │ │ +43398c: 6e20 f95c 2100 |02ca: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433992: 5472 985f |02cd: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f98 │ │ +433996: 6e20 f95c 2100 |02cf: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43399c: 6e10 035d 0100 |02d2: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4339a2: 0c01 |02d5: move-result-object v1 │ │ +4339a4: 6e20 495b 1000 |02d6: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +4339aa: 5460 7f5f |02d9: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_fileSize:Landroid/widget/TextView; // field@5f7f │ │ +4339ae: 2201 f10a |02db: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +4339b2: 7010 ee5c 0100 |02dd: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4339b8: 1a02 db4b |02e0: const-string v2, "Size: " // string@4bdb │ │ +4339bc: 6e20 f95c 2100 |02e2: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4339c2: 5372 9e5f |02e5: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ +4339c6: 7030 01be 2603 |02e7: invoke-direct {v6, v2, v3}, Lorg/purple/smoke/SteamBubble;.formatSize:(J)Ljava/lang/String; // method@be01 │ │ +4339cc: 0c02 |02ea: move-result-object v2 │ │ +4339ce: 6e20 f95c 2100 |02eb: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4339d4: 6e20 f95c e100 |02ee: invoke-virtual {v1, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4339da: 5372 9e5f |02f1: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ +4339de: 7030 02be 2603 |02f3: invoke-direct {v6, v2, v3}, Lorg/purple/smoke/SteamBubble;.niceBytes:(J)Ljava/lang/String; // method@be02 │ │ +4339e4: 0c02 |02f6: move-result-object v2 │ │ +4339e6: 6e20 f95c 2100 |02f7: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4339ec: 6e20 f95c d100 |02fa: invoke-virtual {v1, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4339f2: 6e10 035d 0100 |02fd: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4339f8: 0c01 |0300: move-result-object v1 │ │ +4339fa: 6e20 495b 1000 |0301: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433a00: 5470 9f5f |0304: iget-object v0, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ +433a04: 3800 2d00 |0306: if-eqz v0, 0333 // +002d │ │ +433a08: 5470 9f5f |0308: iget-object v0, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ +433a0c: 2100 |030a: array-length v0, v0 │ │ +433a0e: 32f0 0300 |030b: if-eq v0, v15, 030e // +0003 │ │ +433a12: 2826 |030d: goto 0333 // +0026 │ │ +433a14: 5460 815f |030e: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f81 │ │ +433a18: 2201 f10a |0310: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +433a1c: 7010 ee5c 0100 |0312: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433a22: 1a02 721f |0315: const-string v2, "Key Stream SHA-256: " // string@1f72 │ │ +433a26: 6e20 f95c 2100 |0317: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433a2c: 23a2 0f1c |031a: new-array v2, v10, [[B // type@1c0f │ │ +433a30: 5473 9f5f |031c: iget-object v3, v7, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ +433a34: 4d03 020b |031e: aput-object v3, v2, v11 │ │ +433a38: 7110 b9b9 0200 |0320: invoke-static {v2}, Lorg/purple/smoke/Cryptography;.sha256:([[B)[B // method@b9b9 │ │ +433a3e: 0c02 |0323: move-result-object v2 │ │ +433a40: 7110 e4bb 0200 |0324: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayAsHexString:([B)Ljava/lang/String; // method@bbe4 │ │ +433a46: 0c02 |0327: move-result-object v2 │ │ +433a48: 6e20 f95c 2100 |0328: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433a4e: 6e10 035d 0100 |032b: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +433a54: 0c01 |032e: move-result-object v1 │ │ +433a56: 6e20 495b 1000 |032f: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433a5c: 2808 |0332: goto 033a // +0008 │ │ +433a5e: 5460 815f |0333: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_keyStreamDigest:Landroid/widget/TextView; // field@5f81 │ │ +433a62: 1a01 731f |0335: const-string v1, "Key Stream SHA-256: N/A" // string@1f73 │ │ +433a66: 6e20 495b 1000 |0337: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433a6c: 5370 9e5f |033a: iget-wide v0, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ +433a70: 1602 0000 |033c: const-wide/16 v2, #int 0 // #0 │ │ +433a74: 3104 0002 |033e: cmp-long v4, v0, v2 │ │ +433a78: 3d04 2b00 |0340: if-lez v4, 036b // +002b │ │ +433a7c: 5460 875f |0342: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f87 │ │ +433a80: 2201 f10a |0344: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +433a84: 7010 ee5c 0100 |0346: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433a8a: 1902 5940 |0349: const-wide/high16 v2, #long 4636737291354636288 // #4059 │ │ +433a8e: 5374 a45f |034b: iget-wide v4, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa4 │ │ +433a92: 8644 |034d: long-to-double v4, v4 │ │ +433a94: 7120 2c5c 5400 |034e: invoke-static {v4, v5}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ +433a9a: ad04 0402 |0351: mul-double v4, v4, v2 │ │ +433a9e: 5372 9e5f |0353: iget-wide v2, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ +433aa2: 8622 |0355: long-to-double v2, v2 │ │ +433aa4: 7120 2c5c 3200 |0356: invoke-static {v2, v3}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ +433aaa: ce24 |0359: div-double/2addr v4, v2 │ │ +433aac: 8a42 |035a: double-to-int v2, v4 │ │ +433aae: 6e20 f45c 2100 |035b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ +433ab4: 1a02 1003 |035e: const-string v2, "%" // string@0310 │ │ +433ab8: 6e20 f95c 2100 |0360: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433abe: 6e10 035d 0100 |0363: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +433ac4: 0c01 |0366: move-result-object v1 │ │ +433ac6: 6e20 495b 1000 |0367: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433acc: 2808 |036a: goto 0372 // +0008 │ │ +433ace: 5460 875f |036b: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_percent:Landroid/widget/TextView; // field@5f87 │ │ +433ad2: 1a01 c804 |036d: const-string v1, "0%" // string@04c8 │ │ +433ad6: 6e20 495b 1000 |036f: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433adc: 5460 885f |0372: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f88 │ │ +433ae0: 5371 9e5f |0374: iget-wide v1, v7, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ +433ae4: 8412 |0376: long-to-int v2, v1 │ │ +433ae6: 6e20 5c5a 2000 |0377: invoke-virtual {v0, v2}, Landroid/widget/ProgressBar;.setMax:(I)V // method@5a5c │ │ +433aec: 5460 885f |037a: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_progress:Landroid/widget/ProgressBar; // field@5f88 │ │ +433af0: 5371 a45f |037c: iget-wide v1, v7, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa4 │ │ +433af4: 8412 |037e: long-to-int v2, v1 │ │ +433af6: 6e20 5d5a 2000 |037f: invoke-virtual {v0, v2}, Landroid/widget/ProgressBar;.setProgress:(I)V // method@5a5d │ │ +433afc: 5370 a35f |0382: iget-wide v0, v7, Lorg/purple/smoke/SteamElement;.m_readInterval:J // field@5fa3 │ │ +433b00: 8401 |0384: long-to-int v1, v0 │ │ +433b02: 1240 |0385: const/4 v0, #int 4 // #4 │ │ +433b04: 3201 2c00 |0386: if-eq v1, v0, 03b2 // +002c │ │ +433b08: 1302 0a00 |0388: const/16 v2, #int 10 // #a │ │ +433b0c: 3221 2200 |038a: if-eq v1, v2, 03ac // +0022 │ │ +433b10: 1302 1400 |038c: const/16 v2, #int 20 // #14 │ │ +433b14: 3221 1700 |038e: if-eq v1, v2, 03a5 // +0017 │ │ +433b18: 1302 3200 |0390: const/16 v2, #int 50 // #32 │ │ +433b1c: 3221 0d00 |0392: if-eq v1, v2, 039f // +000d │ │ +433b20: 1302 6400 |0394: const/16 v2, #int 100 // #64 │ │ +433b24: 3221 0300 |0396: if-eq v1, v2, 0399 // +0003 │ │ +433b28: 281f |0398: goto 03b7 // +001f │ │ +433b2a: 5461 895f |0399: iget-object v1, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ +433b2e: 6e20 a75a 0100 |039b: invoke-virtual {v1, v0}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ +433b34: 2819 |039e: goto 03b7 // +0019 │ │ +433b36: 5460 895f |039f: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ +433b3a: 6e20 a75a 8000 |03a1: invoke-virtual {v0, v8}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ +433b40: 2813 |03a4: goto 03b7 // +0013 │ │ +433b42: 5460 895f |03a5: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ +433b46: 1221 |03a7: const/4 v1, #int 2 // #2 │ │ +433b48: 6e20 a75a 1000 |03a8: invoke-virtual {v0, v1}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ +433b4e: 280c |03ab: goto 03b7 // +000c │ │ +433b50: 5460 895f |03ac: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ +433b54: 6e20 a75a a000 |03ae: invoke-virtual {v0, v10}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ +433b5a: 2806 |03b1: goto 03b7 // +0006 │ │ +433b5c: 5460 895f |03b2: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_readInterval:Landroid/widget/SeekBar; // field@5f89 │ │ +433b60: 6e20 a75a b000 |03b4: invoke-virtual {v0, v11}, Landroid/widget/SeekBar;.setProgress:(I)V // method@5aa7 │ │ +433b66: 5460 8c5f |03b7: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_separator:Landroid/view/View; // field@5f8c │ │ +433b6a: d801 12ff |03b9: add-int/lit8 v1, v18, #int -1 // #ff │ │ +433b6e: 0202 1300 |03bb: move/from16 v2, v19 │ │ +433b72: 3321 0400 |03bd: if-ne v1, v2, 03c1 // +0004 │ │ +433b76: 130b 0800 |03bf: const/16 v11, #int 8 // #8 │ │ +433b7a: 6e20 ac56 b000 |03c1: invoke-virtual {v0, v11}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +433b80: 5460 8d5f |03c4: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_status:Landroid/widget/TextView; // field@5f8d │ │ +433b84: 2201 f10a |03c6: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +433b88: 7010 ee5c 0100 |03c8: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433b8e: 1a02 754c |03cb: const-string v2, "Status: " // string@4c75 │ │ +433b92: 6e20 f95c 2100 |03cd: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433b98: 5472 a65f |03d0: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa6 │ │ +433b9c: 6e20 f95c 2100 |03d2: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433ba2: 6e10 035d 0100 |03d5: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +433ba8: 0c01 |03d8: move-result-object v1 │ │ +433baa: 6e20 495b 1000 |03d9: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433bb0: 5870 975f |03dc: iget-short v0, v7, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f97 │ │ +433bb4: 3900 1b00 |03de: if-nez v0, 03f9 // +001b │ │ +433bb8: 5460 8f5f |03e0: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_transferRate:Landroid/widget/TextView; // field@5f8f │ │ +433bbc: 2201 f10a |03e2: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +433bc0: 7010 ee5c 0100 |03e4: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433bc6: 1a02 aa46 |03e7: const-string v2, "Receive Rate: " // string@46aa │ │ +433bca: 6e20 f95c 2100 |03e9: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433bd0: 5472 a75f |03ec: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa7 │ │ +433bd4: 6e20 f95c 2100 |03ee: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433bda: 6e10 035d 0100 |03f1: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +433be0: 0c01 |03f4: move-result-object v1 │ │ +433be2: 6e20 495b 1000 |03f5: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433be8: 2819 |03f8: goto 0411 // +0019 │ │ +433bea: 5460 8f5f |03f9: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_transferRate:Landroid/widget/TextView; // field@5f8f │ │ +433bee: 2201 f10a |03fb: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +433bf2: 7010 ee5c 0100 |03fd: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +433bf8: 1a02 b34f |0400: const-string v2, "Transfer Rate: " // string@4fb3 │ │ +433bfc: 6e20 f95c 2100 |0402: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433c02: 5472 a75f |0405: iget-object v2, v7, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa7 │ │ +433c06: 6e20 f95c 2100 |0407: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +433c0c: 6e10 035d 0100 |040a: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +433c12: 0c01 |040d: move-result-object v1 │ │ +433c14: 6e20 495b 1000 |040e: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +433c1a: 5460 905f |0411: iget-object v0, v6, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +433c1e: 5261 865f |0413: iget v1, v6, Lorg/purple/smoke/SteamBubble;.m_oid:I // field@5f86 │ │ +433c22: 6e20 8256 1000 |0415: invoke-virtual {v0, v1}, Landroid/view/View;.setId:(I)V // method@5682 │ │ +433c28: 0e00 |0418: return-void │ │ +433c2a: 0000 |0419: nop // spacer │ │ +433c2c: 0002 0400 9b34 4a80 4bf6 60ac 2e99 ... |041a: sparse-switch-data (18 units) │ │ +433c50: 0001 0400 0000 0000 4900 0000 2500 ... |042c: packed-switch-data (12 units) │ │ catches : (none) │ │ positions : │ │ 0x0007 line=309 │ │ 0x000b line=311 │ │ 0x0050 line=335 │ │ 0x0055 line=336 │ │ 0x005b line=329 │ │ @@ -747704,17 +747703,17 @@ │ │ type : '()Landroid/view/View;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -432dc8: |[432dc8] org.purple.smoke.SteamBubble.view:()Landroid/view/View; │ │ -432dd8: 5410 905f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ -432ddc: 1100 |0002: return-object v0 │ │ +432dc4: |[432dc4] org.purple.smoke.SteamBubble.view:()Landroid/view/View; │ │ +432dd4: 5410 905f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamBubble;.m_view:Landroid/view/View; // field@5f90 │ │ +432dd8: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=301 │ │ locals : │ │ 0x0000 - 0x0003 reg=1 this Lorg/purple/smoke/SteamBubble; │ │ │ │ source_file_idx : 19582 (SteamBubble.java) │ │ @@ -747824,44 +747823,44 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 54 16-bit code units │ │ -433c6c: |[433c6c] org.purple.smoke.SteamElement.:()V │ │ -433c7c: 7010 8f5c 0400 |0000: invoke-direct {v4}, Ljava/lang/Object;.:()V // method@5c8f │ │ -433c82: 1a00 0000 |0003: const-string v0, "" // string@0000 │ │ -433c86: 5b40 965f |0005: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ -433c8a: 5b40 985f |0007: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f98 │ │ -433c8e: 5b40 9d5f |0009: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_fileName:Ljava/lang/String; // field@5f9d │ │ -433c92: 1a01 ae3f |000b: const-string v1, "McEliece" // string@3fae │ │ -433c96: 5b41 a05f |000d: iput-object v1, v4, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5fa0 │ │ -433c9a: 1a01 2993 |000f: const-string v1, "paused" // string@9329 │ │ -433c9e: 5b41 a65f |0011: iput-object v1, v4, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa6 │ │ -433ca2: 5b40 a75f |0013: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa7 │ │ -433ca6: 1210 |0015: const/4 v0, #int 1 // #1 │ │ -433ca8: 5c40 a15f |0016: iput-boolean v0, v4, Lorg/purple/smoke/SteamElement;.m_locked:Z // field@5fa1 │ │ -433cac: 1200 |0018: const/4 v0, #int 0 // #0 │ │ -433cae: 5b40 995f |0019: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f99 │ │ -433cb2: 5b40 9a5f |001b: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f9a │ │ -433cb6: 5b40 9b5f |001d: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9b │ │ -433cba: 5b40 9c5f |001f: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9c │ │ -433cbe: 5b40 9f5f |0021: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ -433cc2: 12f0 |0023: const/4 v0, #int -1 // #ff │ │ -433cc4: 5940 a25f |0024: iput v0, v4, Lorg/purple/smoke/SteamElement;.m_oid:I // field@5fa2 │ │ -433cc8: 5940 a55f |0026: iput v0, v4, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa5 │ │ -433ccc: 1600 0000 |0028: const-wide/16 v0, #int 0 // #0 │ │ -433cd0: 5a40 9e5f |002a: iput-wide v0, v4, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ -433cd4: 1602 0400 |002c: const-wide/16 v2, #int 4 // #4 │ │ -433cd8: 5a42 a35f |002e: iput-wide v2, v4, Lorg/purple/smoke/SteamElement;.m_readInterval:J // field@5fa3 │ │ -433cdc: 5a40 a45f |0030: iput-wide v0, v4, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa4 │ │ -433ce0: 1200 |0032: const/4 v0, #int 0 // #0 │ │ -433ce2: 5f40 975f |0033: iput-short v0, v4, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f97 │ │ -433ce6: 0e00 |0035: return-void │ │ +433c68: |[433c68] org.purple.smoke.SteamElement.:()V │ │ +433c78: 7010 8f5c 0400 |0000: invoke-direct {v4}, Ljava/lang/Object;.:()V // method@5c8f │ │ +433c7e: 1a00 0000 |0003: const-string v0, "" // string@0000 │ │ +433c82: 5b40 965f |0005: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ +433c86: 5b40 985f |0007: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f98 │ │ +433c8a: 5b40 9d5f |0009: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_fileName:Ljava/lang/String; // field@5f9d │ │ +433c8e: 1a01 ae3f |000b: const-string v1, "McEliece" // string@3fae │ │ +433c92: 5b41 a05f |000d: iput-object v1, v4, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5fa0 │ │ +433c96: 1a01 2993 |000f: const-string v1, "paused" // string@9329 │ │ +433c9a: 5b41 a65f |0011: iput-object v1, v4, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa6 │ │ +433c9e: 5b40 a75f |0013: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa7 │ │ +433ca2: 1210 |0015: const/4 v0, #int 1 // #1 │ │ +433ca4: 5c40 a15f |0016: iput-boolean v0, v4, Lorg/purple/smoke/SteamElement;.m_locked:Z // field@5fa1 │ │ +433ca8: 1200 |0018: const/4 v0, #int 0 // #0 │ │ +433caa: 5b40 995f |0019: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f99 │ │ +433cae: 5b40 9a5f |001b: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f9a │ │ +433cb2: 5b40 9b5f |001d: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9b │ │ +433cb6: 5b40 9c5f |001f: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9c │ │ +433cba: 5b40 9f5f |0021: iput-object v0, v4, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ +433cbe: 12f0 |0023: const/4 v0, #int -1 // #ff │ │ +433cc0: 5940 a25f |0024: iput v0, v4, Lorg/purple/smoke/SteamElement;.m_oid:I // field@5fa2 │ │ +433cc4: 5940 a55f |0026: iput v0, v4, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa5 │ │ +433cc8: 1600 0000 |0028: const-wide/16 v0, #int 0 // #0 │ │ +433ccc: 5a40 9e5f |002a: iput-wide v0, v4, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ +433cd0: 1602 0400 |002c: const-wide/16 v2, #int 4 // #4 │ │ +433cd4: 5a42 a35f |002e: iput-wide v2, v4, Lorg/purple/smoke/SteamElement;.m_readInterval:J // field@5fa3 │ │ +433cd8: 5a40 a45f |0030: iput-wide v0, v4, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa4 │ │ +433cdc: 1200 |0032: const/4 v0, #int 0 // #0 │ │ +433cde: 5f40 975f |0033: iput-short v0, v4, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f97 │ │ +433ce2: 0e00 |0035: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=54 │ │ 0x0005 line=32 │ │ 0x0007 line=33 │ │ 0x0009 line=34 │ │ 0x000d line=35 │ │ @@ -747887,56 +747886,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 │ │ -433ce8: |[433ce8] org.purple.smoke.SteamElement.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V │ │ -433cf8: 7010 8f5c 0500 |0000: invoke-direct {v5}, Ljava/lang/Object;.:()V // method@5c8f │ │ -433cfe: 1a00 0000 |0003: const-string v0, "" // string@0000 │ │ -433d02: 5b50 965f |0005: iput-object v0, v5, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ -433d06: 1a01 ae3f |0007: const-string v1, "McEliece" // string@3fae │ │ -433d0a: 5b51 a05f |0009: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5fa0 │ │ -433d0e: 1a01 2993 |000b: const-string v1, "paused" // string@9329 │ │ -433d12: 5b51 a65f |000d: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa6 │ │ -433d16: 5b50 a75f |000f: iput-object v0, v5, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa7 │ │ -433d1a: 1210 |0011: const/4 v0, #int 1 // #1 │ │ -433d1c: 5c50 a15f |0012: iput-boolean v0, v5, Lorg/purple/smoke/SteamElement;.m_locked:Z // field@5fa1 │ │ -433d20: 1201 |0014: const/4 v1, #int 0 // #0 │ │ -433d22: 5b51 995f |0015: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f99 │ │ -433d26: 5b51 9a5f |0017: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f9a │ │ -433d2a: 5b51 9b5f |0019: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9b │ │ -433d2e: 5b51 9c5f |001b: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9c │ │ -433d32: 5b51 9f5f |001d: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ -433d36: 12f1 |001f: const/4 v1, #int -1 // #ff │ │ -433d38: 5951 a25f |0020: iput v1, v5, Lorg/purple/smoke/SteamElement;.m_oid:I // field@5fa2 │ │ -433d3c: 5951 a55f |0022: iput v1, v5, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa5 │ │ -433d40: 1601 0000 |0024: const-wide/16 v1, #int 0 // #0 │ │ -433d44: 5a51 9e5f |0026: iput-wide v1, v5, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ -433d48: 1603 0400 |0028: const-wide/16 v3, #int 4 // #4 │ │ -433d4c: 5a53 a35f |002a: iput-wide v3, v5, Lorg/purple/smoke/SteamElement;.m_readInterval:J // field@5fa3 │ │ -433d50: 5a51 a45f |002c: iput-wide v1, v5, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa4 │ │ -433d54: 5f50 975f |002e: iput-short v0, v5, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f97 │ │ -433d58: 5b56 985f |0030: iput-object v6, v5, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f98 │ │ -433d5c: 5b57 9d5f |0032: iput-object v7, v5, Lorg/purple/smoke/SteamElement;.m_fileName:Ljava/lang/String; // field@5f9d │ │ -433d60: 1306 2e00 |0034: const/16 v6, #int 46 // #2e │ │ -433d64: 6e20 c45c 6700 |0036: invoke-virtual {v7, v6}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ -433d6a: 0a00 |0039: move-result v0 │ │ -433d6c: 3d00 0b00 |003a: if-lez v0, 0045 // +000b │ │ -433d70: 1200 |003c: const/4 v0, #int 0 // #0 │ │ -433d72: 6e20 c45c 6700 |003d: invoke-virtual {v7, v6}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ -433d78: 0a06 |0040: move-result v6 │ │ -433d7a: 6e30 cd5c 0706 |0041: invoke-virtual {v7, v0, v6}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ -433d80: 0c07 |0044: move-result-object v7 │ │ -433d82: 7110 ecbb 0700 |0045: invoke-static {v7}, Lorg/purple/smoke/Miscellaneous;.fileSize:(Ljava/lang/String;)J // method@bbec │ │ -433d88: 0b06 |0048: move-result-wide v6 │ │ -433d8a: 5a56 9e5f |0049: iput-wide v6, v5, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ -433d8e: 5b58 a05f |004b: iput-object v8, v5, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5fa0 │ │ -433d92: 0e00 |004d: return-void │ │ +433ce4: |[433ce4] org.purple.smoke.SteamElement.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V │ │ +433cf4: 7010 8f5c 0500 |0000: invoke-direct {v5}, Ljava/lang/Object;.:()V // method@5c8f │ │ +433cfa: 1a00 0000 |0003: const-string v0, "" // string@0000 │ │ +433cfe: 5b50 965f |0005: iput-object v0, v5, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ +433d02: 1a01 ae3f |0007: const-string v1, "McEliece" // string@3fae │ │ +433d06: 5b51 a05f |0009: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5fa0 │ │ +433d0a: 1a01 2993 |000b: const-string v1, "paused" // string@9329 │ │ +433d0e: 5b51 a65f |000d: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa6 │ │ +433d12: 5b50 a75f |000f: iput-object v0, v5, Lorg/purple/smoke/SteamElement;.m_transferRate:Ljava/lang/String; // field@5fa7 │ │ +433d16: 1210 |0011: const/4 v0, #int 1 // #1 │ │ +433d18: 5c50 a15f |0012: iput-boolean v0, v5, Lorg/purple/smoke/SteamElement;.m_locked:Z // field@5fa1 │ │ +433d1c: 1201 |0014: const/4 v1, #int 0 // #0 │ │ +433d1e: 5b51 995f |0015: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f99 │ │ +433d22: 5b51 9a5f |0017: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f9a │ │ +433d26: 5b51 9b5f |0019: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9b │ │ +433d2a: 5b51 9c5f |001b: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9c │ │ +433d2e: 5b51 9f5f |001d: iput-object v1, v5, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ +433d32: 12f1 |001f: const/4 v1, #int -1 // #ff │ │ +433d34: 5951 a25f |0020: iput v1, v5, Lorg/purple/smoke/SteamElement;.m_oid:I // field@5fa2 │ │ +433d38: 5951 a55f |0022: iput v1, v5, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa5 │ │ +433d3c: 1601 0000 |0024: const-wide/16 v1, #int 0 // #0 │ │ +433d40: 5a51 9e5f |0026: iput-wide v1, v5, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ +433d44: 1603 0400 |0028: const-wide/16 v3, #int 4 // #4 │ │ +433d48: 5a53 a35f |002a: iput-wide v3, v5, Lorg/purple/smoke/SteamElement;.m_readInterval:J // field@5fa3 │ │ +433d4c: 5a51 a45f |002c: iput-wide v1, v5, Lorg/purple/smoke/SteamElement;.m_readOffset:J // field@5fa4 │ │ +433d50: 5f50 975f |002e: iput-short v0, v5, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f97 │ │ +433d54: 5b56 985f |0030: iput-object v6, v5, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f98 │ │ +433d58: 5b57 9d5f |0032: iput-object v7, v5, Lorg/purple/smoke/SteamElement;.m_fileName:Ljava/lang/String; // field@5f9d │ │ +433d5c: 1306 2e00 |0034: const/16 v6, #int 46 // #2e │ │ +433d60: 6e20 c45c 6700 |0036: invoke-virtual {v7, v6}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ +433d66: 0a00 |0039: move-result v0 │ │ +433d68: 3d00 0b00 |003a: if-lez v0, 0045 // +000b │ │ +433d6c: 1200 |003c: const/4 v0, #int 0 // #0 │ │ +433d6e: 6e20 c45c 6700 |003d: invoke-virtual {v7, v6}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ +433d74: 0a06 |0040: move-result v6 │ │ +433d76: 6e30 cd5c 0706 |0041: invoke-virtual {v7, v0, v6}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ +433d7c: 0c07 |0044: move-result-object v7 │ │ +433d7e: 7110 ecbb 0700 |0045: invoke-static {v7}, Lorg/purple/smoke/Miscellaneous;.fileSize:(Ljava/lang/String;)J // method@bbec │ │ +433d84: 0b06 |0048: move-result-wide v6 │ │ +433d86: 5a56 9e5f |0049: iput-wide v6, v5, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ +433d8a: 5b58 a05f |004b: iput-object v8, v5, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5fa0 │ │ +433d8e: 0e00 |004d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=60 │ │ 0x0005 line=32 │ │ 0x0009 line=35 │ │ 0x000d line=36 │ │ 0x000f line=37 │ │ @@ -748000,18 +747999,18 @@ │ │ type : '(Lorg/purple/smoke/SteamKeyExchange;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -433d94: |[433d94] org.purple.smoke.SteamKeyExchange$1.:(Lorg/purple/smoke/SteamKeyExchange;)V │ │ -433da4: 5b01 a85f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ -433da8: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -433dae: 0e00 |0005: return-void │ │ +433d90: |[433d90] org.purple.smoke.SteamKeyExchange$1.:(Lorg/purple/smoke/SteamKeyExchange;)V │ │ +433da0: 5b01 a85f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ +433da4: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +433daa: 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; │ │ │ │ @@ -748021,95 +748020,95 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 147 16-bit code units │ │ -433db0: |[433db0] org.purple.smoke.SteamKeyExchange$1.run:()V │ │ -433dc0: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -433dc2: 5461 a85f |0001: iget-object v1, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ -433dc6: 7110 0fbe 0100 |0003: invoke-static {v1}, Lorg/purple/smoke/SteamKeyExchange;.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@be0f │ │ -433dcc: 0c01 |0006: move-result-object v1 │ │ -433dce: 6e10 ef60 0100 |0007: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -433dd4: 0c01 |000a: move-result-object v1 │ │ -433dd6: 6e10 eb60 0100 |000b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ -433ddc: 1211 |000e: const/4 v1, #int 1 // #1 │ │ -433dde: 5462 a85f |000f: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ -433de2: 7110 10be 0200 |0011: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$100:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/ArrayList; // method@be10 │ │ -433de8: 0c02 |0014: move-result-object v2 │ │ -433dea: 6e10 a85f 0200 |0015: invoke-virtual {v2}, Ljava/util/ArrayList;.isEmpty:()Z // method@5fa8 │ │ -433df0: 0a02 |0018: move-result v2 │ │ -433df2: 3902 1a00 |0019: if-nez v2, 0033 // +001a │ │ -433df6: 5462 a85f |001b: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ -433dfa: 7110 10be 0200 |001d: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$100:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/ArrayList; // method@be10 │ │ -433e00: 0c02 |0020: move-result-object v2 │ │ -433e02: 5463 a85f |0021: iget-object v3, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ -433e06: 7110 10be 0300 |0023: invoke-static {v3}, Lorg/purple/smoke/SteamKeyExchange;.access$100:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/ArrayList; // method@be10 │ │ -433e0c: 0c03 |0026: move-result-object v3 │ │ -433e0e: 6e10 af5f 0300 |0027: invoke-virtual {v3}, Ljava/util/ArrayList;.size:()I // method@5faf │ │ -433e14: 0a03 |002a: move-result v3 │ │ -433e16: b113 |002b: sub-int/2addr v3, v1 │ │ -433e18: 6e20 ab5f 3200 |002c: invoke-virtual {v2, v3}, Ljava/util/ArrayList;.remove:(I)Ljava/lang/Object; // method@5fab │ │ -433e1e: 0c02 |002f: move-result-object v2 │ │ -433e20: 1f02 2b1b |0030: check-cast v2, Lorg/purple/smoke/SteamKeyExchange$Pair; // type@1b2b │ │ -433e24: 0720 |0032: move-object v0, v2 │ │ -433e26: 5462 a85f |0033: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ -433e2a: 7110 0fbe 0200 |0035: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@be0f │ │ -433e30: 0c02 |0038: move-result-object v2 │ │ -433e32: 6e10 ef60 0200 |0039: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -433e38: 0c02 |003c: move-result-object v2 │ │ -433e3a: 6e10 ec60 0200 |003d: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -433e40: 2817 |0040: goto 0057 // +0017 │ │ -433e42: 0d00 |0041: move-exception v0 │ │ -433e44: 5461 a85f |0042: iget-object v1, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ -433e48: 7110 0fbe 0100 |0044: invoke-static {v1}, Lorg/purple/smoke/SteamKeyExchange;.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@be0f │ │ -433e4e: 0c01 |0047: move-result-object v1 │ │ -433e50: 6e10 ef60 0100 |0048: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -433e56: 0c01 |004b: move-result-object v1 │ │ -433e58: 6e10 ec60 0100 |004c: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -433e5e: 2700 |004f: throw v0 │ │ -433e60: 5462 a85f |0050: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ -433e64: 7110 0fbe 0200 |0052: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@be0f │ │ -433e6a: 0c02 |0055: move-result-object v2 │ │ -433e6c: 28e3 |0056: goto 0039 // -001d │ │ -433e6e: 3900 1b00 |0057: if-nez v0, 0072 // +001b │ │ -433e72: 5462 a85f |0059: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ -433e76: 7110 11be 0200 |005b: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$200:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/lang/Object; // method@be11 │ │ -433e7c: 0c02 |005e: move-result-object v2 │ │ -433e7e: 1d02 |005f: monitor-enter v2 │ │ -433e80: 5463 a85f |0060: iget-object v3, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ -433e84: 7110 11be 0300 |0062: invoke-static {v3}, Lorg/purple/smoke/SteamKeyExchange;.access$200:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/lang/Object; // method@be11 │ │ -433e8a: 0c03 |0065: move-result-object v3 │ │ -433e8c: 1604 1027 |0066: const-wide/16 v4, #int 10000 // #2710 │ │ -433e90: 6e30 985c 4305 |0068: invoke-virtual {v3, v4, v5}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ -433e96: 2803 |006b: goto 006e // +0003 │ │ -433e98: 0d00 |006c: move-exception v0 │ │ -433e9a: 2803 |006d: goto 0070 // +0003 │ │ -433e9c: 1e02 |006e: monitor-exit v2 │ │ -433e9e: 2803 |006f: goto 0072 // +0003 │ │ -433ea0: 1e02 |0070: monitor-exit v2 │ │ -433ea2: 2700 |0071: throw v0 │ │ -433ea4: 3800 2000 |0072: if-eqz v0, 0092 // +0020 │ │ -433ea8: 5402 aa5f |0074: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_ciphertext:[B // field@5faa │ │ -433eac: 1203 |0076: const/4 v3, #int 0 // #0 │ │ -433eae: 4802 0203 |0077: aget-byte v2, v2, v3 │ │ -433eb2: 6204 1855 |0079: sget-object v4, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ -433eb6: 4804 0403 |007b: aget-byte v4, v4, v3 │ │ -433eba: 3242 0c00 |007d: if-eq v2, v4, 0089 // +000c │ │ -433ebe: 5402 aa5f |007f: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_ciphertext:[B // field@5faa │ │ -433ec2: 4802 0203 |0081: aget-byte v2, v2, v3 │ │ -433ec6: 6203 1855 |0083: sget-object v3, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ -433eca: 4801 0301 |0085: aget-byte v1, v3, v1 │ │ -433ece: 3312 0b00 |0087: if-ne v2, v1, 0092 // +000b │ │ -433ed2: 5461 a85f |0089: iget-object v1, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ -433ed6: 5402 aa5f |008b: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_ciphertext:[B // field@5faa │ │ -433eda: 5400 ab5f |008d: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_pki:[B // field@5fab │ │ -433ede: 7130 12be 2100 |008f: invoke-static {v1, v2, v0}, Lorg/purple/smoke/SteamKeyExchange;.access$300:(Lorg/purple/smoke/SteamKeyExchange;[B[B)V // method@be12 │ │ -433ee4: 0e00 |0092: return-void │ │ +433dac: |[433dac] org.purple.smoke.SteamKeyExchange$1.run:()V │ │ +433dbc: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +433dbe: 5461 a85f |0001: iget-object v1, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ +433dc2: 7110 0fbe 0100 |0003: invoke-static {v1}, Lorg/purple/smoke/SteamKeyExchange;.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@be0f │ │ +433dc8: 0c01 |0006: move-result-object v1 │ │ +433dca: 6e10 ef60 0100 |0007: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +433dd0: 0c01 |000a: move-result-object v1 │ │ +433dd2: 6e10 eb60 0100 |000b: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ +433dd8: 1211 |000e: const/4 v1, #int 1 // #1 │ │ +433dda: 5462 a85f |000f: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ +433dde: 7110 10be 0200 |0011: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$100:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/ArrayList; // method@be10 │ │ +433de4: 0c02 |0014: move-result-object v2 │ │ +433de6: 6e10 a85f 0200 |0015: invoke-virtual {v2}, Ljava/util/ArrayList;.isEmpty:()Z // method@5fa8 │ │ +433dec: 0a02 |0018: move-result v2 │ │ +433dee: 3902 1a00 |0019: if-nez v2, 0033 // +001a │ │ +433df2: 5462 a85f |001b: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ +433df6: 7110 10be 0200 |001d: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$100:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/ArrayList; // method@be10 │ │ +433dfc: 0c02 |0020: move-result-object v2 │ │ +433dfe: 5463 a85f |0021: iget-object v3, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ +433e02: 7110 10be 0300 |0023: invoke-static {v3}, Lorg/purple/smoke/SteamKeyExchange;.access$100:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/ArrayList; // method@be10 │ │ +433e08: 0c03 |0026: move-result-object v3 │ │ +433e0a: 6e10 af5f 0300 |0027: invoke-virtual {v3}, Ljava/util/ArrayList;.size:()I // method@5faf │ │ +433e10: 0a03 |002a: move-result v3 │ │ +433e12: b113 |002b: sub-int/2addr v3, v1 │ │ +433e14: 6e20 ab5f 3200 |002c: invoke-virtual {v2, v3}, Ljava/util/ArrayList;.remove:(I)Ljava/lang/Object; // method@5fab │ │ +433e1a: 0c02 |002f: move-result-object v2 │ │ +433e1c: 1f02 2b1b |0030: check-cast v2, Lorg/purple/smoke/SteamKeyExchange$Pair; // type@1b2b │ │ +433e20: 0720 |0032: move-object v0, v2 │ │ +433e22: 5462 a85f |0033: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ +433e26: 7110 0fbe 0200 |0035: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@be0f │ │ +433e2c: 0c02 |0038: move-result-object v2 │ │ +433e2e: 6e10 ef60 0200 |0039: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +433e34: 0c02 |003c: move-result-object v2 │ │ +433e36: 6e10 ec60 0200 |003d: invoke-virtual {v2}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +433e3c: 2817 |0040: goto 0057 // +0017 │ │ +433e3e: 0d00 |0041: move-exception v0 │ │ +433e40: 5461 a85f |0042: iget-object v1, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ +433e44: 7110 0fbe 0100 |0044: invoke-static {v1}, Lorg/purple/smoke/SteamKeyExchange;.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@be0f │ │ +433e4a: 0c01 |0047: move-result-object v1 │ │ +433e4c: 6e10 ef60 0100 |0048: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +433e52: 0c01 |004b: move-result-object v1 │ │ +433e54: 6e10 ec60 0100 |004c: invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +433e5a: 2700 |004f: throw v0 │ │ +433e5c: 5462 a85f |0050: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ +433e60: 7110 0fbe 0200 |0052: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; // method@be0f │ │ +433e66: 0c02 |0055: move-result-object v2 │ │ +433e68: 28e3 |0056: goto 0039 // -001d │ │ +433e6a: 3900 1b00 |0057: if-nez v0, 0072 // +001b │ │ +433e6e: 5462 a85f |0059: iget-object v2, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ +433e72: 7110 11be 0200 |005b: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$200:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/lang/Object; // method@be11 │ │ +433e78: 0c02 |005e: move-result-object v2 │ │ +433e7a: 1d02 |005f: monitor-enter v2 │ │ +433e7c: 5463 a85f |0060: iget-object v3, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ +433e80: 7110 11be 0300 |0062: invoke-static {v3}, Lorg/purple/smoke/SteamKeyExchange;.access$200:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/lang/Object; // method@be11 │ │ +433e86: 0c03 |0065: move-result-object v3 │ │ +433e88: 1604 1027 |0066: const-wide/16 v4, #int 10000 // #2710 │ │ +433e8c: 6e30 985c 4305 |0068: invoke-virtual {v3, v4, v5}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ +433e92: 2803 |006b: goto 006e // +0003 │ │ +433e94: 0d00 |006c: move-exception v0 │ │ +433e96: 2803 |006d: goto 0070 // +0003 │ │ +433e98: 1e02 |006e: monitor-exit v2 │ │ +433e9a: 2803 |006f: goto 0072 // +0003 │ │ +433e9c: 1e02 |0070: monitor-exit v2 │ │ +433e9e: 2700 |0071: throw v0 │ │ +433ea0: 3800 2000 |0072: if-eqz v0, 0092 // +0020 │ │ +433ea4: 5402 aa5f |0074: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_ciphertext:[B // field@5faa │ │ +433ea8: 1203 |0076: const/4 v3, #int 0 // #0 │ │ +433eaa: 4802 0203 |0077: aget-byte v2, v2, v3 │ │ +433eae: 6204 1855 |0079: sget-object v4, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ +433eb2: 4804 0403 |007b: aget-byte v4, v4, v3 │ │ +433eb6: 3242 0c00 |007d: if-eq v2, v4, 0089 // +000c │ │ +433eba: 5402 aa5f |007f: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_ciphertext:[B // field@5faa │ │ +433ebe: 4802 0203 |0081: aget-byte v2, v2, v3 │ │ +433ec2: 6203 1855 |0083: sget-object v3, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ +433ec6: 4801 0301 |0085: aget-byte v1, v3, v1 │ │ +433eca: 3312 0b00 |0087: if-ne v2, v1, 0092 // +000b │ │ +433ece: 5461 a85f |0089: iget-object v1, v6, Lorg/purple/smoke/SteamKeyExchange$1;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa8 │ │ +433ed2: 5402 aa5f |008b: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_ciphertext:[B // field@5faa │ │ +433ed6: 5400 ab5f |008d: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_pki:[B // field@5fab │ │ +433eda: 7130 12be 2100 |008f: invoke-static {v1, v2, v0}, Lorg/purple/smoke/SteamKeyExchange;.access$300:(Lorg/purple/smoke/SteamKeyExchange;[B[B)V // method@be12 │ │ +433ee0: 0e00 |0092: return-void │ │ catches : 6 │ │ 0x0001 - 0x000e │ │ Ljava/lang/Exception; -> 0x0092 │ │ 0x000f - 0x0032 │ │ Ljava/lang/Exception; -> 0x0050 │ │ -> 0x0041 │ │ 0x0033 - 0x0060 │ │ @@ -748171,18 +748170,18 @@ │ │ type : '(Lorg/purple/smoke/SteamKeyExchange;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -433f2c: |[433f2c] org.purple.smoke.SteamKeyExchange$2.:(Lorg/purple/smoke/SteamKeyExchange;)V │ │ -433f3c: 5b01 a95f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa9 │ │ -433f40: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -433f46: 0e00 |0005: return-void │ │ +433f28: |[433f28] org.purple.smoke.SteamKeyExchange$2.:(Lorg/purple/smoke/SteamKeyExchange;)V │ │ +433f38: 5b01 a95f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa9 │ │ +433f3c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +433f42: 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; │ │ │ │ @@ -748192,176 +748191,176 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 18 │ │ ins : 1 │ │ outs : 10 │ │ insns size : 304 16-bit code units │ │ -433f48: |[433f48] org.purple.smoke.SteamKeyExchange$2.run:()V │ │ -433f58: 0800 1100 |0000: move-object/from16 v0, v17 │ │ -433f5c: 7100 74bd 0000 |0002: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -433f62: 0c01 |0005: move-result-object v1 │ │ -433f64: 6e10 77bd 0100 |0006: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ -433f6a: 0a01 |0009: move-result v1 │ │ -433f6c: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ -433f70: 0e00 |000c: return-void │ │ -433f72: 7100 15be 0000 |000d: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$600:()Lorg/purple/smoke/Database; // method@be15 │ │ -433f78: 0c01 |0010: move-result-object v1 │ │ -433f7a: 7100 13be 0000 |0011: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$400:()Lorg/purple/smoke/Cryptography; // method@be13 │ │ -433f80: 0c02 |0014: move-result-object v2 │ │ -433f82: 5403 a95f |0015: iget-object v3, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa9 │ │ -433f86: 7110 14be 0300 |0017: invoke-static {v3}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be14 │ │ -433f8c: 0c03 |001a: move-result-object v3 │ │ -433f8e: 6e10 de60 0300 |001b: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -433f94: 0a03 |001e: move-result v3 │ │ -433f96: 12f4 |001f: const/4 v4, #int -1 // #ff │ │ -433f98: 6e40 20ba 2134 |0020: invoke-virtual {v1, v2, v4, v3}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba20 │ │ -433f9e: 0c01 |0023: move-result-object v1 │ │ -433fa0: 3801 f400 |0024: if-eqz v1, 0118 // +00f4 │ │ -433fa4: 5412 965f |0026: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ -433fa8: 1a03 b442 |0028: const-string v3, "Other (Non-Smoke)" // string@42b4 │ │ -433fac: 6e20 b85c 3200 |002a: invoke-virtual {v2, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -433fb2: 0a02 |002d: move-result v2 │ │ -433fb4: 3902 ea00 |002e: if-nez v2, 0118 // +00ea │ │ -433fb8: 5812 975f |0030: iget-short v2, v1, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f97 │ │ -433fbc: 3802 e600 |0032: if-eqz v2, 0118 // +00e6 │ │ -433fc0: 5312 9e5f |0034: iget-wide v2, v1, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ -433fc4: 1605 0000 |0036: const-wide/16 v5, #int 0 // #0 │ │ -433fc8: 3107 0205 |0038: cmp-long v7, v2, v5 │ │ -433fcc: 3907 0400 |003a: if-nez v7, 003e // +0004 │ │ -433fd0: 2900 dc00 |003c: goto/16 0118 // +00dc │ │ -433fd4: 5412 9f5f |003e: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ -433fd8: 3802 1500 |0040: if-eqz v2, 0055 // +0015 │ │ -433fdc: 5412 9f5f |0042: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ -433fe0: 2122 |0044: array-length v2, v2 │ │ -433fe2: 1303 6000 |0045: const/16 v3, #int 96 // #60 │ │ -433fe6: 3332 0e00 |0047: if-ne v2, v3, 0055 // +000e │ │ -433fea: 5402 a95f |0049: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa9 │ │ -433fee: 7110 14be 0200 |004b: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be14 │ │ -433ff4: 0c02 |004e: move-result-object v2 │ │ -433ff6: 5211 a55f |004f: iget v1, v1, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa5 │ │ -433ffa: 6e20 e060 1200 |0051: invoke-virtual {v2, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60e0 │ │ -434000: 0e00 |0054: return-void │ │ -434002: 5412 995f |0055: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f99 │ │ -434006: 1a03 6b46 |0057: const-string v3, "RSA" // string@466b │ │ -43400a: 1204 |0059: const/4 v4, #int 0 // #0 │ │ -43400c: 1a05 ae3f |005a: const-string v5, "McEliece" // string@3fae │ │ -434010: 1206 |005c: const/4 v6, #int 0 // #0 │ │ -434012: 3802 3500 |005d: if-eqz v2, 0092 // +0035 │ │ -434016: 5412 995f |005f: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f99 │ │ -43401a: 2122 |0061: array-length v2, v2 │ │ -43401c: 3802 3000 |0062: if-eqz v2, 0092 // +0030 │ │ -434020: 5412 9a5f |0064: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f9a │ │ -434024: 3802 2c00 |0066: if-eqz v2, 0092 // +002c │ │ -434028: 5412 9a5f |0068: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f9a │ │ -43402c: 2122 |006a: array-length v2, v2 │ │ -43402e: 3902 0300 |006b: if-nez v2, 006e // +0003 │ │ -434032: 2825 |006d: goto 0092 // +0025 │ │ -434034: 7100 10bb 0000 |006e: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -43403a: 0c02 |0071: move-result-object v2 │ │ -43403c: 6e10 13bb 0200 |0072: invoke-virtual {v2}, Lorg/purple/smoke/Kernel;.isNetworkConnected:()Z // method@bb13 │ │ -434042: 0a02 |0075: move-result v2 │ │ -434044: 3802 4600 |0076: if-eqz v2, 00bc // +0046 │ │ -434048: 5412 a05f |0078: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5fa0 │ │ -43404c: 6e20 b85c 5200 |007a: invoke-virtual {v2, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434052: 0a02 |007d: move-result v2 │ │ -434054: 3802 0b00 |007e: if-eqz v2, 0089 // +000b │ │ -434058: 5412 995f |0080: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f99 │ │ -43405c: 5413 9a5f |0082: iget-object v3, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f9a │ │ -434060: 7130 90b9 2503 |0084: invoke-static {v5, v2, v3}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;[B[B)Ljava/security/KeyPair; // method@b990 │ │ -434066: 0c04 |0087: move-result-object v4 │ │ -434068: 2834 |0088: goto 00bc // +0034 │ │ -43406a: 5412 995f |0089: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f99 │ │ -43406e: 5414 9a5f |008b: iget-object v4, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f9a │ │ -434072: 7130 90b9 2304 |008d: invoke-static {v3, v2, v4}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;[B[B)Ljava/security/KeyPair; // method@b990 │ │ -434078: 0c04 |0090: move-result-object v4 │ │ -43407a: 282b |0091: goto 00bc // +002b │ │ -43407c: 5412 a05f |0092: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5fa0 │ │ -434080: 6e20 b85c 5200 |0094: invoke-virtual {v2, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434086: 0a02 |0097: move-result v2 │ │ -434088: 3802 0900 |0098: if-eqz v2, 00a1 // +0009 │ │ -43408c: 1a02 b23f |009a: const-string v2, "McEliece-Fujisaki (11, 50)" // string@3fb2 │ │ -434090: 7130 8fb9 6206 |009c: invoke-static {v2, v6, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ -434096: 0c02 |009f: move-result-object v2 │ │ -434098: 2807 |00a0: goto 00a7 // +0007 │ │ -43409a: 1302 000c |00a1: const/16 v2, #int 3072 // #c00 │ │ -43409e: 7130 8fb9 2306 |00a3: invoke-static {v3, v2, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ -4340a4: 0c02 |00a6: move-result-object v2 │ │ -4340a6: 3902 0300 |00a7: if-nez v2, 00aa // +0003 │ │ -4340aa: 0e00 |00a9: return-void │ │ -4340ac: 7100 15be 0000 |00aa: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$600:()Lorg/purple/smoke/Database; // method@be15 │ │ -4340b2: 0c03 |00ad: move-result-object v3 │ │ -4340b4: 7100 13be 0000 |00ae: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$400:()Lorg/purple/smoke/Cryptography; // method@be13 │ │ -4340ba: 0c07 |00b1: move-result-object v7 │ │ -4340bc: 5218 a55f |00b2: iget v8, v1, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa5 │ │ -4340c0: 6e58 42ba 7342 |00b4: invoke-virtual {v3, v7, v2, v4, v8}, Lorg/purple/smoke/Database;.writeSteamKeys:(Lorg/purple/smoke/Cryptography;Ljava/security/KeyPair;[BI)Z // method@ba42 │ │ -4340c6: 0a03 |00b7: move-result v3 │ │ -4340c8: 3903 0300 |00b8: if-nez v3, 00bb // +0003 │ │ -4340cc: 0e00 |00ba: return-void │ │ -4340ce: 0724 |00bb: move-object v4, v2 │ │ -4340d0: 7100 10bb 0000 |00bc: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -4340d6: 0c02 |00bf: move-result-object v2 │ │ -4340d8: 6e10 13bb 0200 |00c0: invoke-virtual {v2}, Lorg/purple/smoke/Kernel;.isNetworkConnected:()Z // method@bb13 │ │ -4340de: 0a02 |00c3: move-result v2 │ │ -4340e0: 3802 4800 |00c4: if-eqz v2, 010c // +0048 │ │ -4340e4: 3804 4600 |00c6: if-eqz v4, 010c // +0046 │ │ -4340e8: 5412 965f |00c8: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ -4340ec: 7110 00bc 0200 |00ca: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.sipHashIdFromDestination:(Ljava/lang/String;)Ljava/lang/String; // method@bc00 │ │ -4340f2: 0c02 |00cd: move-result-object v2 │ │ -4340f4: 7100 13be 0000 |00ce: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$400:()Lorg/purple/smoke/Cryptography; // method@be13 │ │ -4340fa: 0c07 |00d1: move-result-object v7 │ │ -4340fc: 5418 985f |00d2: iget-object v8, v1, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f98 │ │ -434100: 541a 9b5f |00d4: iget-object v10, v1, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9b │ │ -434104: 541b 9c5f |00d6: iget-object v11, v1, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9c │ │ -434108: 6e10 fe5d 0400 |00d8: invoke-virtual {v4}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfe │ │ -43410e: 0c03 |00db: move-result-object v3 │ │ -434110: 7210 3e5e 0300 |00dc: invoke-interface {v3}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3e │ │ -434116: 0c0c |00df: move-result-object v12 │ │ -434118: 5413 a05f |00e0: iget-object v3, v1, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5fa0 │ │ -43411c: 6e20 b85c 5300 |00e2: invoke-virtual {v3, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434122: 0a03 |00e5: move-result v3 │ │ -434124: 3803 0700 |00e6: if-eqz v3, 00ed // +0007 │ │ -434128: 6203 b553 |00e8: sget-object v3, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ -43412c: 4803 0306 |00ea: aget-byte v3, v3, v6 │ │ -434130: 2806 |00ec: goto 00f2 // +0006 │ │ -434132: 6203 b553 |00ed: sget-object v3, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ -434136: 1214 |00ef: const/4 v4, #int 1 // #1 │ │ -434138: 4803 0304 |00f0: aget-byte v3, v3, v4 │ │ -43413c: 013d |00f2: move v13, v3 │ │ -43413e: 6203 1855 |00f3: sget-object v3, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ -434142: 480e 0306 |00f5: aget-byte v14, v3, v6 │ │ -434146: 5313 9e5f |00f7: iget-wide v3, v1, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ -43414a: 0729 |00f9: move-object v9, v2 │ │ -43414c: 043f |00fa: move-wide v15, v3 │ │ -43414e: 770a c7bb 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@bbc7 │ │ -434154: 0c03 |00fe: move-result-object v3 │ │ -434156: 3803 0d00 |00ff: if-eqz v3, 010c // +000d │ │ -43415a: 7100 10bb 0000 |0101: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -434160: 0c04 |0104: move-result-object v4 │ │ -434162: 7110 b6bb 0300 |0105: invoke-static {v3}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb6 │ │ -434168: 0c03 |0108: move-result-object v3 │ │ -43416a: 6e30 0dbb 3402 |0109: invoke-virtual {v4, v3, v2}, Lorg/purple/smoke/Kernel;.enqueueSteamKeyExchange:(Ljava/lang/String;Ljava/lang/String;)V // method@bb0d │ │ -434170: 5402 a95f |010c: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa9 │ │ -434174: 7110 14be 0200 |010e: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be14 │ │ -43417a: 0c02 |0111: move-result-object v2 │ │ -43417c: 5211 a55f |0112: iget v1, v1, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa5 │ │ -434180: 6e20 e060 1200 |0114: invoke-virtual {v2, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60e0 │ │ -434186: 2818 |0117: goto 012f // +0018 │ │ -434188: 3801 0e00 |0118: if-eqz v1, 0126 // +000e │ │ -43418c: 5402 a95f |011a: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa9 │ │ -434190: 7110 14be 0200 |011c: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be14 │ │ -434196: 0c02 |011f: move-result-object v2 │ │ -434198: 5211 a55f |0120: iget v1, v1, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa5 │ │ -43419c: 6e20 e060 1200 |0122: invoke-virtual {v2, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60e0 │ │ -4341a2: 280a |0125: goto 012f // +000a │ │ -4341a4: 5401 a95f |0126: iget-object v1, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa9 │ │ -4341a8: 7110 14be 0100 |0128: invoke-static {v1}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be14 │ │ -4341ae: 0c01 |012b: move-result-object v1 │ │ -4341b0: 6e20 e060 4100 |012c: invoke-virtual {v1, v4}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60e0 │ │ -4341b6: 0e00 |012f: return-void │ │ +433f44: |[433f44] org.purple.smoke.SteamKeyExchange$2.run:()V │ │ +433f54: 0800 1100 |0000: move-object/from16 v0, v17 │ │ +433f58: 7100 74bd 0000 |0002: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +433f5e: 0c01 |0005: move-result-object v1 │ │ +433f60: 6e10 77bd 0100 |0006: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ +433f66: 0a01 |0009: move-result v1 │ │ +433f68: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ +433f6c: 0e00 |000c: return-void │ │ +433f6e: 7100 15be 0000 |000d: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$600:()Lorg/purple/smoke/Database; // method@be15 │ │ +433f74: 0c01 |0010: move-result-object v1 │ │ +433f76: 7100 13be 0000 |0011: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$400:()Lorg/purple/smoke/Cryptography; // method@be13 │ │ +433f7c: 0c02 |0014: move-result-object v2 │ │ +433f7e: 5403 a95f |0015: iget-object v3, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa9 │ │ +433f82: 7110 14be 0300 |0017: invoke-static {v3}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be14 │ │ +433f88: 0c03 |001a: move-result-object v3 │ │ +433f8a: 6e10 de60 0300 |001b: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +433f90: 0a03 |001e: move-result v3 │ │ +433f92: 12f4 |001f: const/4 v4, #int -1 // #ff │ │ +433f94: 6e40 20ba 2134 |0020: invoke-virtual {v1, v2, v4, v3}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba20 │ │ +433f9a: 0c01 |0023: move-result-object v1 │ │ +433f9c: 3801 f400 |0024: if-eqz v1, 0118 // +00f4 │ │ +433fa0: 5412 965f |0026: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ +433fa4: 1a03 b442 |0028: const-string v3, "Other (Non-Smoke)" // string@42b4 │ │ +433fa8: 6e20 b85c 3200 |002a: invoke-virtual {v2, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +433fae: 0a02 |002d: move-result v2 │ │ +433fb0: 3902 ea00 |002e: if-nez v2, 0118 // +00ea │ │ +433fb4: 5812 975f |0030: iget-short v2, v1, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f97 │ │ +433fb8: 3802 e600 |0032: if-eqz v2, 0118 // +00e6 │ │ +433fbc: 5312 9e5f |0034: iget-wide v2, v1, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ +433fc0: 1605 0000 |0036: const-wide/16 v5, #int 0 // #0 │ │ +433fc4: 3107 0205 |0038: cmp-long v7, v2, v5 │ │ +433fc8: 3907 0400 |003a: if-nez v7, 003e // +0004 │ │ +433fcc: 2900 dc00 |003c: goto/16 0118 // +00dc │ │ +433fd0: 5412 9f5f |003e: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ +433fd4: 3802 1500 |0040: if-eqz v2, 0055 // +0015 │ │ +433fd8: 5412 9f5f |0042: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ +433fdc: 2122 |0044: array-length v2, v2 │ │ +433fde: 1303 6000 |0045: const/16 v3, #int 96 // #60 │ │ +433fe2: 3332 0e00 |0047: if-ne v2, v3, 0055 // +000e │ │ +433fe6: 5402 a95f |0049: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa9 │ │ +433fea: 7110 14be 0200 |004b: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be14 │ │ +433ff0: 0c02 |004e: move-result-object v2 │ │ +433ff2: 5211 a55f |004f: iget v1, v1, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa5 │ │ +433ff6: 6e20 e060 1200 |0051: invoke-virtual {v2, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60e0 │ │ +433ffc: 0e00 |0054: return-void │ │ +433ffe: 5412 995f |0055: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f99 │ │ +434002: 1a03 6b46 |0057: const-string v3, "RSA" // string@466b │ │ +434006: 1204 |0059: const/4 v4, #int 0 // #0 │ │ +434008: 1a05 ae3f |005a: const-string v5, "McEliece" // string@3fae │ │ +43400c: 1206 |005c: const/4 v6, #int 0 // #0 │ │ +43400e: 3802 3500 |005d: if-eqz v2, 0092 // +0035 │ │ +434012: 5412 995f |005f: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f99 │ │ +434016: 2122 |0061: array-length v2, v2 │ │ +434018: 3802 3000 |0062: if-eqz v2, 0092 // +0030 │ │ +43401c: 5412 9a5f |0064: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f9a │ │ +434020: 3802 2c00 |0066: if-eqz v2, 0092 // +002c │ │ +434024: 5412 9a5f |0068: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f9a │ │ +434028: 2122 |006a: array-length v2, v2 │ │ +43402a: 3902 0300 |006b: if-nez v2, 006e // +0003 │ │ +43402e: 2825 |006d: goto 0092 // +0025 │ │ +434030: 7100 10bb 0000 |006e: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +434036: 0c02 |0071: move-result-object v2 │ │ +434038: 6e10 13bb 0200 |0072: invoke-virtual {v2}, Lorg/purple/smoke/Kernel;.isNetworkConnected:()Z // method@bb13 │ │ +43403e: 0a02 |0075: move-result v2 │ │ +434040: 3802 4600 |0076: if-eqz v2, 00bc // +0046 │ │ +434044: 5412 a05f |0078: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5fa0 │ │ +434048: 6e20 b85c 5200 |007a: invoke-virtual {v2, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +43404e: 0a02 |007d: move-result v2 │ │ +434050: 3802 0b00 |007e: if-eqz v2, 0089 // +000b │ │ +434054: 5412 995f |0080: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f99 │ │ +434058: 5413 9a5f |0082: iget-object v3, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f9a │ │ +43405c: 7130 90b9 2503 |0084: invoke-static {v5, v2, v3}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;[B[B)Ljava/security/KeyPair; // method@b990 │ │ +434062: 0c04 |0087: move-result-object v4 │ │ +434064: 2834 |0088: goto 00bc // +0034 │ │ +434066: 5412 995f |0089: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f99 │ │ +43406a: 5414 9a5f |008b: iget-object v4, v1, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f9a │ │ +43406e: 7130 90b9 2304 |008d: invoke-static {v3, v2, v4}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;[B[B)Ljava/security/KeyPair; // method@b990 │ │ +434074: 0c04 |0090: move-result-object v4 │ │ +434076: 282b |0091: goto 00bc // +002b │ │ +434078: 5412 a05f |0092: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5fa0 │ │ +43407c: 6e20 b85c 5200 |0094: invoke-virtual {v2, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +434082: 0a02 |0097: move-result v2 │ │ +434084: 3802 0900 |0098: if-eqz v2, 00a1 // +0009 │ │ +434088: 1a02 b23f |009a: const-string v2, "McEliece-Fujisaki (11, 50)" // string@3fb2 │ │ +43408c: 7130 8fb9 6206 |009c: invoke-static {v2, v6, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ +434092: 0c02 |009f: move-result-object v2 │ │ +434094: 2807 |00a0: goto 00a7 // +0007 │ │ +434096: 1302 000c |00a1: const/16 v2, #int 3072 // #c00 │ │ +43409a: 7130 8fb9 2306 |00a3: invoke-static {v3, v2, v6}, Lorg/purple/smoke/Cryptography;.generatePrivatePublicKeyPair:(Ljava/lang/String;II)Ljava/security/KeyPair; // method@b98f │ │ +4340a0: 0c02 |00a6: move-result-object v2 │ │ +4340a2: 3902 0300 |00a7: if-nez v2, 00aa // +0003 │ │ +4340a6: 0e00 |00a9: return-void │ │ +4340a8: 7100 15be 0000 |00aa: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$600:()Lorg/purple/smoke/Database; // method@be15 │ │ +4340ae: 0c03 |00ad: move-result-object v3 │ │ +4340b0: 7100 13be 0000 |00ae: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$400:()Lorg/purple/smoke/Cryptography; // method@be13 │ │ +4340b6: 0c07 |00b1: move-result-object v7 │ │ +4340b8: 5218 a55f |00b2: iget v8, v1, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa5 │ │ +4340bc: 6e58 42ba 7342 |00b4: invoke-virtual {v3, v7, v2, v4, v8}, Lorg/purple/smoke/Database;.writeSteamKeys:(Lorg/purple/smoke/Cryptography;Ljava/security/KeyPair;[BI)Z // method@ba42 │ │ +4340c2: 0a03 |00b7: move-result v3 │ │ +4340c4: 3903 0300 |00b8: if-nez v3, 00bb // +0003 │ │ +4340c8: 0e00 |00ba: return-void │ │ +4340ca: 0724 |00bb: move-object v4, v2 │ │ +4340cc: 7100 10bb 0000 |00bc: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +4340d2: 0c02 |00bf: move-result-object v2 │ │ +4340d4: 6e10 13bb 0200 |00c0: invoke-virtual {v2}, Lorg/purple/smoke/Kernel;.isNetworkConnected:()Z // method@bb13 │ │ +4340da: 0a02 |00c3: move-result v2 │ │ +4340dc: 3802 4800 |00c4: if-eqz v2, 010c // +0048 │ │ +4340e0: 3804 4600 |00c6: if-eqz v4, 010c // +0046 │ │ +4340e4: 5412 965f |00c8: iget-object v2, v1, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ +4340e8: 7110 00bc 0200 |00ca: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.sipHashIdFromDestination:(Ljava/lang/String;)Ljava/lang/String; // method@bc00 │ │ +4340ee: 0c02 |00cd: move-result-object v2 │ │ +4340f0: 7100 13be 0000 |00ce: invoke-static {}, Lorg/purple/smoke/SteamKeyExchange;.access$400:()Lorg/purple/smoke/Cryptography; // method@be13 │ │ +4340f6: 0c07 |00d1: move-result-object v7 │ │ +4340f8: 5418 985f |00d2: iget-object v8, v1, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f98 │ │ +4340fc: 541a 9b5f |00d4: iget-object v10, v1, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9b │ │ +434100: 541b 9c5f |00d6: iget-object v11, v1, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9c │ │ +434104: 6e10 fe5d 0400 |00d8: invoke-virtual {v4}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfe │ │ +43410a: 0c03 |00db: move-result-object v3 │ │ +43410c: 7210 3e5e 0300 |00dc: invoke-interface {v3}, Ljava/security/PublicKey;.getEncoded:()[B // method@5e3e │ │ +434112: 0c0c |00df: move-result-object v12 │ │ +434114: 5413 a05f |00e0: iget-object v3, v1, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5fa0 │ │ +434118: 6e20 b85c 5300 |00e2: invoke-virtual {v3, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +43411e: 0a03 |00e5: move-result v3 │ │ +434120: 3803 0700 |00e6: if-eqz v3, 00ed // +0007 │ │ +434124: 6203 b553 |00e8: sget-object v3, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ +434128: 4803 0306 |00ea: aget-byte v3, v3, v6 │ │ +43412c: 2806 |00ec: goto 00f2 // +0006 │ │ +43412e: 6203 b553 |00ed: sget-object v3, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ +434132: 1214 |00ef: const/4 v4, #int 1 // #1 │ │ +434134: 4803 0304 |00f0: aget-byte v3, v3, v4 │ │ +434138: 013d |00f2: move v13, v3 │ │ +43413a: 6203 1855 |00f3: sget-object v3, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ +43413e: 480e 0306 |00f5: aget-byte v14, v3, v6 │ │ +434142: 5313 9e5f |00f7: iget-wide v3, v1, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ +434146: 0729 |00f9: move-object v9, v2 │ │ +434148: 043f |00fa: move-wide v15, v3 │ │ +43414a: 770a c7bb 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@bbc7 │ │ +434150: 0c03 |00fe: move-result-object v3 │ │ +434152: 3803 0d00 |00ff: if-eqz v3, 010c // +000d │ │ +434156: 7100 10bb 0000 |0101: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +43415c: 0c04 |0104: move-result-object v4 │ │ +43415e: 7110 b6bb 0300 |0105: invoke-static {v3}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb6 │ │ +434164: 0c03 |0108: move-result-object v3 │ │ +434166: 6e30 0dbb 3402 |0109: invoke-virtual {v4, v3, v2}, Lorg/purple/smoke/Kernel;.enqueueSteamKeyExchange:(Ljava/lang/String;Ljava/lang/String;)V // method@bb0d │ │ +43416c: 5402 a95f |010c: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa9 │ │ +434170: 7110 14be 0200 |010e: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be14 │ │ +434176: 0c02 |0111: move-result-object v2 │ │ +434178: 5211 a55f |0112: iget v1, v1, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa5 │ │ +43417c: 6e20 e060 1200 |0114: invoke-virtual {v2, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60e0 │ │ +434182: 2818 |0117: goto 012f // +0018 │ │ +434184: 3801 0e00 |0118: if-eqz v1, 0126 // +000e │ │ +434188: 5402 a95f |011a: iget-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa9 │ │ +43418c: 7110 14be 0200 |011c: invoke-static {v2}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be14 │ │ +434192: 0c02 |011f: move-result-object v2 │ │ +434194: 5211 a55f |0120: iget v1, v1, Lorg/purple/smoke/SteamElement;.m_someOid:I // field@5fa5 │ │ +434198: 6e20 e060 1200 |0122: invoke-virtual {v2, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60e0 │ │ +43419e: 280a |0125: goto 012f // +000a │ │ +4341a0: 5401 a95f |0126: iget-object v1, v0, Lorg/purple/smoke/SteamKeyExchange$2;.this$0:Lorg/purple/smoke/SteamKeyExchange; // field@5fa9 │ │ +4341a4: 7110 14be 0100 |0128: invoke-static {v1}, Lorg/purple/smoke/SteamKeyExchange;.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; // method@be14 │ │ +4341aa: 0c01 |012b: move-result-object v1 │ │ +4341ac: 6e20 e060 4100 |012c: invoke-virtual {v1, v4}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60e0 │ │ +4341b2: 0e00 |012f: return-void │ │ catches : 2 │ │ 0x0002 - 0x0057 │ │ Ljava/lang/Exception; -> 0x012f │ │ 0x005f - 0x012f │ │ Ljava/lang/Exception; -> 0x012f │ │ positions : │ │ 0x0002 line=427 │ │ @@ -748438,19 +748437,19 @@ │ │ type : '([B[B)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 1 │ │ insns size : 8 16-bit code units │ │ -4341d0: |[4341d0] org.purple.smoke.SteamKeyExchange$Pair.:([B[B)V │ │ -4341e0: 7010 8f5c 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -4341e6: 5b01 aa5f |0003: iput-object v1, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_ciphertext:[B // field@5faa │ │ -4341ea: 5b02 ab5f |0005: iput-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_pki:[B // field@5fab │ │ -4341ee: 0e00 |0007: return-void │ │ +4341cc: |[4341cc] org.purple.smoke.SteamKeyExchange$Pair.:([B[B)V │ │ +4341dc: 7010 8f5c 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +4341e2: 5b01 aa5f |0003: iput-object v1, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_ciphertext:[B // field@5faa │ │ +4341e6: 5b02 ab5f |0005: iput-object v2, v0, Lorg/purple/smoke/SteamKeyExchange$Pair;.m_pki:[B // field@5fab │ │ +4341ea: 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; │ │ @@ -748541,22 +748540,22 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 13 16-bit code units │ │ -434280: |[434280] org.purple.smoke.SteamKeyExchange.:()V │ │ -434290: 7100 91b9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ -434296: 0c00 |0003: move-result-object v0 │ │ -434298: 6900 b65f |0004: sput-object v0, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb6 │ │ -43429c: 7100 f3b9 0000 |0006: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9f3 │ │ -4342a2: 0c00 |0009: move-result-object v0 │ │ -4342a4: 6900 b75f |000a: sput-object v0, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb7 │ │ -4342a8: 0e00 |000c: return-void │ │ +43427c: |[43427c] org.purple.smoke.SteamKeyExchange.:()V │ │ +43428c: 7100 91b9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ +434292: 0c00 |0003: move-result-object v0 │ │ +434294: 6900 b65f |0004: sput-object v0, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb6 │ │ +434298: 7100 f3b9 0000 |0006: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9f3 │ │ +43429e: 0c00 |0009: move-result-object v0 │ │ +4342a0: 6900 b75f |000a: sput-object v0, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb7 │ │ +4342a4: 0e00 |000c: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=65 │ │ 0x0006 line=66 │ │ locals : │ │ │ │ #1 : (in Lorg/purple/smoke/SteamKeyExchange;) │ │ @@ -748564,53 +748563,53 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 16 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 82 16-bit code units │ │ -4342ac: |[4342ac] org.purple.smoke.SteamKeyExchange.:()V │ │ -4342bc: 7010 8f5c 0f00 |0000: invoke-direct {v15}, Ljava/lang/Object;.:()V // method@5c8f │ │ -4342c2: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -4342c4: 5bf0 b15f |0004: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_pairs:Ljava/util/ArrayList; // field@5fb1 │ │ -4342c8: 5bf0 b05f |0006: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_lastReadSteamOid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fb0 │ │ -4342cc: 5bf0 b35f |0008: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_parseScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5fb3 │ │ -4342d0: 5bf0 b55f |000a: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_readScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5fb5 │ │ -4342d4: 2200 e60a |000c: new-instance v0, Ljava/lang/Object; // type@0ae6 │ │ -4342d8: 7010 8f5c 0000 |000e: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -4342de: 5bf0 b45f |0011: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_parseSchedulerMutex:Ljava/lang/Object; // field@5fb4 │ │ -4342e2: 2200 ea0b |0013: new-instance v0, Ljava/util/concurrent/locks/ReentrantReadWriteLock; // type@0bea │ │ -4342e6: 7010 ed60 0000 |0015: invoke-direct {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.:()V // method@60ed │ │ -4342ec: 5bf0 b25f |0018: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb2 │ │ -4342f0: 2200 e50b |001a: new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger; // type@0be5 │ │ -4342f4: 12f1 |001c: const/4 v1, #int -1 // #ff │ │ -4342f6: 7020 dd60 1000 |001d: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.:(I)V // method@60dd │ │ -4342fc: 5bf0 b05f |0020: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_lastReadSteamOid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fb0 │ │ -434300: 2200 ab0b |0022: new-instance v0, Ljava/util/ArrayList; // type@0bab │ │ -434304: 7010 9b5f 0000 |0024: invoke-direct {v0}, Ljava/util/ArrayList;.:()V // method@5f9b │ │ -43430a: 5bf0 b15f |0027: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_pairs:Ljava/util/ArrayList; // field@5fb1 │ │ -43430e: 7100 c860 0000 |0029: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c8 │ │ -434314: 0c01 |002c: move-result-object v1 │ │ -434316: 5bf1 b35f |002d: iput-object v1, v15, Lorg/purple/smoke/SteamKeyExchange;.m_parseScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5fb3 │ │ -43431a: 2202 291b |002f: new-instance v2, Lorg/purple/smoke/SteamKeyExchange$1; // type@1b29 │ │ -43431e: 7020 08be f200 |0031: invoke-direct {v2, v15}, Lorg/purple/smoke/SteamKeyExchange$1;.:(Lorg/purple/smoke/SteamKeyExchange;)V // method@be08 │ │ -434324: 6207 ef2c |0034: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -434328: 1603 dc05 |0036: const-wide/16 v3, #int 1500 // #5dc │ │ -43432c: 1605 3200 |0038: const-wide/16 v5, #int 50 // #32 │ │ -434330: 7807 d060 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@60d0 │ │ -434336: 7100 c860 0000 |003d: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c8 │ │ -43433c: 0c08 |0040: move-result-object v8 │ │ -43433e: 5bf8 b55f |0041: iput-object v8, v15, Lorg/purple/smoke/SteamKeyExchange;.m_readScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5fb5 │ │ -434342: 2209 2a1b |0043: new-instance v9, Lorg/purple/smoke/SteamKeyExchange$2; // type@1b2a │ │ -434346: 7020 0abe f900 |0045: invoke-direct {v9, v15}, Lorg/purple/smoke/SteamKeyExchange$2;.:(Lorg/purple/smoke/SteamKeyExchange;)V // method@be0a │ │ -43434c: 620e ef2c |0048: sget-object v14, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -434350: 160a dc05 |004a: const-wide/16 v10, #int 1500 // #5dc │ │ -434354: 160c 4c1d |004c: const-wide/16 v12, #int 7500 // #1d4c │ │ -434358: 7807 d060 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@60d0 │ │ -43435e: 0e00 |0051: return-void │ │ +4342a8: |[4342a8] org.purple.smoke.SteamKeyExchange.:()V │ │ +4342b8: 7010 8f5c 0f00 |0000: invoke-direct {v15}, Ljava/lang/Object;.:()V // method@5c8f │ │ +4342be: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +4342c0: 5bf0 b15f |0004: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_pairs:Ljava/util/ArrayList; // field@5fb1 │ │ +4342c4: 5bf0 b05f |0006: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_lastReadSteamOid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fb0 │ │ +4342c8: 5bf0 b35f |0008: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_parseScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5fb3 │ │ +4342cc: 5bf0 b55f |000a: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_readScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5fb5 │ │ +4342d0: 2200 e60a |000c: new-instance v0, Ljava/lang/Object; // type@0ae6 │ │ +4342d4: 7010 8f5c 0000 |000e: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +4342da: 5bf0 b45f |0011: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_parseSchedulerMutex:Ljava/lang/Object; // field@5fb4 │ │ +4342de: 2200 ea0b |0013: new-instance v0, Ljava/util/concurrent/locks/ReentrantReadWriteLock; // type@0bea │ │ +4342e2: 7010 ed60 0000 |0015: invoke-direct {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.:()V // method@60ed │ │ +4342e8: 5bf0 b25f |0018: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb2 │ │ +4342ec: 2200 e50b |001a: new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger; // type@0be5 │ │ +4342f0: 12f1 |001c: const/4 v1, #int -1 // #ff │ │ +4342f2: 7020 dd60 1000 |001d: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.:(I)V // method@60dd │ │ +4342f8: 5bf0 b05f |0020: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_lastReadSteamOid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fb0 │ │ +4342fc: 2200 ab0b |0022: new-instance v0, Ljava/util/ArrayList; // type@0bab │ │ +434300: 7010 9b5f 0000 |0024: invoke-direct {v0}, Ljava/util/ArrayList;.:()V // method@5f9b │ │ +434306: 5bf0 b15f |0027: iput-object v0, v15, Lorg/purple/smoke/SteamKeyExchange;.m_pairs:Ljava/util/ArrayList; // field@5fb1 │ │ +43430a: 7100 c860 0000 |0029: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c8 │ │ +434310: 0c01 |002c: move-result-object v1 │ │ +434312: 5bf1 b35f |002d: iput-object v1, v15, Lorg/purple/smoke/SteamKeyExchange;.m_parseScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5fb3 │ │ +434316: 2202 291b |002f: new-instance v2, Lorg/purple/smoke/SteamKeyExchange$1; // type@1b29 │ │ +43431a: 7020 08be f200 |0031: invoke-direct {v2, v15}, Lorg/purple/smoke/SteamKeyExchange$1;.:(Lorg/purple/smoke/SteamKeyExchange;)V // method@be08 │ │ +434320: 6207 ef2c |0034: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +434324: 1603 dc05 |0036: const-wide/16 v3, #int 1500 // #5dc │ │ +434328: 1605 3200 |0038: const-wide/16 v5, #int 50 // #32 │ │ +43432c: 7807 d060 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@60d0 │ │ +434332: 7100 c860 0000 |003d: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c8 │ │ +434338: 0c08 |0040: move-result-object v8 │ │ +43433a: 5bf8 b55f |0041: iput-object v8, v15, Lorg/purple/smoke/SteamKeyExchange;.m_readScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5fb5 │ │ +43433e: 2209 2a1b |0043: new-instance v9, Lorg/purple/smoke/SteamKeyExchange$2; // type@1b2a │ │ +434342: 7020 0abe f900 |0045: invoke-direct {v9, v15}, Lorg/purple/smoke/SteamKeyExchange$2;.:(Lorg/purple/smoke/SteamKeyExchange;)V // method@be0a │ │ +434348: 620e ef2c |0048: sget-object v14, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +43434c: 160a dc05 |004a: const-wide/16 v10, #int 1500 // #5dc │ │ +434350: 160c 4c1d |004c: const-wide/16 v12, #int 7500 // #1d4c │ │ +434354: 7807 d060 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@60d0 │ │ +43435a: 0e00 |0051: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=367 │ │ 0x0004 line=57 │ │ 0x0006 line=58 │ │ 0x0008 line=59 │ │ 0x000a line=60 │ │ @@ -748630,17 +748629,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 │ │ -434238: |[434238] org.purple.smoke.SteamKeyExchange.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; │ │ -434248: 5400 b25f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb2 │ │ -43424c: 1100 |0002: return-object v0 │ │ +434234: |[434234] org.purple.smoke.SteamKeyExchange.access$000:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/locks/ReentrantReadWriteLock; │ │ +434244: 5400 b25f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb2 │ │ +434248: 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;) │ │ @@ -748648,17 +748647,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 │ │ -434208: |[434208] org.purple.smoke.SteamKeyExchange.access$100:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/ArrayList; │ │ -434218: 5400 b15f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange;.m_pairs:Ljava/util/ArrayList; // field@5fb1 │ │ -43421c: 1100 |0002: return-object v0 │ │ +434204: |[434204] org.purple.smoke.SteamKeyExchange.access$100:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/ArrayList; │ │ +434214: 5400 b15f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange;.m_pairs:Ljava/util/ArrayList; // field@5fb1 │ │ +434218: 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;) │ │ @@ -748666,17 +748665,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 │ │ -4341f0: |[4341f0] org.purple.smoke.SteamKeyExchange.access$200:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/lang/Object; │ │ -434200: 5400 b45f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange;.m_parseSchedulerMutex:Ljava/lang/Object; // field@5fb4 │ │ -434204: 1100 |0002: return-object v0 │ │ +4341ec: |[4341ec] org.purple.smoke.SteamKeyExchange.access$200:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/lang/Object; │ │ +4341fc: 5400 b45f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange;.m_parseSchedulerMutex:Ljava/lang/Object; // field@5fb4 │ │ +434200: 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;) │ │ @@ -748684,17 +748683,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 │ │ -434360: |[434360] org.purple.smoke.SteamKeyExchange.access$300:(Lorg/purple/smoke/SteamKeyExchange;[B[B)V │ │ -434370: 7030 18be 1002 |0000: invoke-direct {v0, v1, v2}, Lorg/purple/smoke/SteamKeyExchange;.steamAorB:([B[B)V // method@be18 │ │ -434376: 0e00 |0003: return-void │ │ +43435c: |[43435c] org.purple.smoke.SteamKeyExchange.access$300:(Lorg/purple/smoke/SteamKeyExchange;[B[B)V │ │ +43436c: 7030 18be 1002 |0000: invoke-direct {v0, v1, v2}, Lorg/purple/smoke/SteamKeyExchange;.steamAorB:([B[B)V // method@be18 │ │ +434372: 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 │ │ @@ -748704,34 +748703,34 @@ │ │ type : '()Lorg/purple/smoke/Cryptography;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -434250: |[434250] org.purple.smoke.SteamKeyExchange.access$400:()Lorg/purple/smoke/Cryptography; │ │ -434260: 6200 b65f |0000: sget-object v0, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb6 │ │ -434264: 1100 |0002: return-object v0 │ │ +43424c: |[43424c] org.purple.smoke.SteamKeyExchange.access$400:()Lorg/purple/smoke/Cryptography; │ │ +43425c: 6200 b65f |0000: sget-object v0, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb6 │ │ +434260: 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 │ │ -434220: |[434220] org.purple.smoke.SteamKeyExchange.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; │ │ -434230: 5400 b05f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange;.m_lastReadSteamOid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fb0 │ │ -434234: 1100 |0002: return-object v0 │ │ +43421c: |[43421c] org.purple.smoke.SteamKeyExchange.access$500:(Lorg/purple/smoke/SteamKeyExchange;)Ljava/util/concurrent/atomic/AtomicInteger; │ │ +43422c: 5400 b05f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamKeyExchange;.m_lastReadSteamOid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fb0 │ │ +434230: 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;) │ │ @@ -748739,76 +748738,76 @@ │ │ type : '()Lorg/purple/smoke/Database;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -434268: |[434268] org.purple.smoke.SteamKeyExchange.access$600:()Lorg/purple/smoke/Database; │ │ -434278: 6200 b75f |0000: sget-object v0, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb7 │ │ -43427c: 1100 |0002: return-object v0 │ │ +434264: |[434264] org.purple.smoke.SteamKeyExchange.access$600:()Lorg/purple/smoke/Database; │ │ +434274: 6200 b75f |0000: sget-object v0, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb7 │ │ +434278: 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 │ │ -434444: |[434444] org.purple.smoke.SteamKeyExchange.shareB:(Lorg/purple/smoke/SteamElement;)V │ │ -434454: 390d 0300 |0000: if-nez v13, 0003 // +0003 │ │ -434458: 0e00 |0002: return-void │ │ -43445a: 54d0 9a5f |0003: iget-object v0, v13, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f9a │ │ -43445e: 7110 aab9 0000 |0005: invoke-static {v0}, Lorg/purple/smoke/Cryptography;.publicKeyFromBytes:([B)Ljava/security/PublicKey; // method@b9aa │ │ -434464: 0c00 |0008: move-result-object v0 │ │ -434466: 3900 0300 |0009: if-nez v0, 000c // +0003 │ │ -43446a: 0e00 |000b: return-void │ │ -43446c: 54d1 965f |000c: iget-object v1, v13, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ -434470: 7110 00bc 0100 |000e: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.sipHashIdFromDestination:(Ljava/lang/String;)Ljava/lang/String; // method@bc00 │ │ -434476: 0c01 |0011: move-result-object v1 │ │ -434478: 6202 b65f |0012: sget-object v2, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb6 │ │ -43447c: 54d3 985f |0014: iget-object v3, v13, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f98 │ │ -434480: 54d5 9b5f |0016: iget-object v5, v13, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9b │ │ -434484: 54d6 9c5f |0018: iget-object v6, v13, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9c │ │ -434488: 54d4 9f5f |001a: iget-object v4, v13, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ -43448c: 1a07 b23f |001c: const-string v7, "McEliece-Fujisaki (11, 50)" // string@3fb2 │ │ -434490: 7130 a3b9 7004 |001e: invoke-static {v0, v7, v4}, Lorg/purple/smoke/Cryptography;.pkiEncrypt:(Ljava/security/PublicKey;Ljava/lang/String;[B)[B // method@b9a3 │ │ -434496: 0c07 |0021: move-result-object v7 │ │ -434498: 54d0 a05f |0022: iget-object v0, v13, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5fa0 │ │ -43449c: 1a04 ae3f |0024: const-string v4, "McEliece" // string@3fae │ │ -4344a0: 6e20 b85c 4000 |0026: invoke-virtual {v0, v4}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4344a6: 0a00 |0029: move-result v0 │ │ -4344a8: 1214 |002a: const/4 v4, #int 1 // #1 │ │ -4344aa: 3800 0800 |002b: if-eqz v0, 0033 // +0008 │ │ -4344ae: 6200 b553 |002d: sget-object v0, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ -4344b2: 1208 |002f: const/4 v8, #int 0 // #0 │ │ -4344b4: 4800 0008 |0030: aget-byte v0, v0, v8 │ │ -4344b8: 2805 |0032: goto 0037 // +0005 │ │ -4344ba: 6200 b553 |0033: sget-object v0, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ -4344be: 4800 0004 |0035: aget-byte v0, v0, v4 │ │ -4344c2: 0108 |0037: move v8, v0 │ │ -4344c4: 6200 1855 |0038: sget-object v0, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ -4344c8: 4809 0004 |003a: aget-byte v9, v0, v4 │ │ -4344cc: 53da 9e5f |003c: iget-wide v10, v13, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ -4344d0: 0714 |003e: move-object v4, v1 │ │ -4344d2: 770a c7bb 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@bbc7 │ │ -4344d8: 0c0d |0042: move-result-object v13 │ │ -4344da: 380d 0d00 |0043: if-eqz v13, 0050 // +000d │ │ -4344de: 7100 10bb 0000 |0045: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -4344e4: 0c00 |0048: move-result-object v0 │ │ -4344e6: 7110 b6bb 0d00 |0049: invoke-static {v13}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb6 │ │ -4344ec: 0c0d |004c: move-result-object v13 │ │ -4344ee: 6e30 0dbb d001 |004d: invoke-virtual {v0, v13, v1}, Lorg/purple/smoke/Kernel;.enqueueSteamKeyExchange:(Ljava/lang/String;Ljava/lang/String;)V // method@bb0d │ │ -4344f4: 0e00 |0050: return-void │ │ +434440: |[434440] org.purple.smoke.SteamKeyExchange.shareB:(Lorg/purple/smoke/SteamElement;)V │ │ +434450: 390d 0300 |0000: if-nez v13, 0003 // +0003 │ │ +434454: 0e00 |0002: return-void │ │ +434456: 54d0 9a5f |0003: iget-object v0, v13, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f9a │ │ +43445a: 7110 aab9 0000 |0005: invoke-static {v0}, Lorg/purple/smoke/Cryptography;.publicKeyFromBytes:([B)Ljava/security/PublicKey; // method@b9aa │ │ +434460: 0c00 |0008: move-result-object v0 │ │ +434462: 3900 0300 |0009: if-nez v0, 000c // +0003 │ │ +434466: 0e00 |000b: return-void │ │ +434468: 54d1 965f |000c: iget-object v1, v13, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ +43446c: 7110 00bc 0100 |000e: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.sipHashIdFromDestination:(Ljava/lang/String;)Ljava/lang/String; // method@bc00 │ │ +434472: 0c01 |0011: move-result-object v1 │ │ +434474: 6202 b65f |0012: sget-object v2, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb6 │ │ +434478: 54d3 985f |0014: iget-object v3, v13, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f98 │ │ +43447c: 54d5 9b5f |0016: iget-object v5, v13, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9b │ │ +434480: 54d6 9c5f |0018: iget-object v6, v13, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9c │ │ +434484: 54d4 9f5f |001a: iget-object v4, v13, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ +434488: 1a07 b23f |001c: const-string v7, "McEliece-Fujisaki (11, 50)" // string@3fb2 │ │ +43448c: 7130 a3b9 7004 |001e: invoke-static {v0, v7, v4}, Lorg/purple/smoke/Cryptography;.pkiEncrypt:(Ljava/security/PublicKey;Ljava/lang/String;[B)[B // method@b9a3 │ │ +434492: 0c07 |0021: move-result-object v7 │ │ +434494: 54d0 a05f |0022: iget-object v0, v13, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5fa0 │ │ +434498: 1a04 ae3f |0024: const-string v4, "McEliece" // string@3fae │ │ +43449c: 6e20 b85c 4000 |0026: invoke-virtual {v0, v4}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4344a2: 0a00 |0029: move-result v0 │ │ +4344a4: 1214 |002a: const/4 v4, #int 1 // #1 │ │ +4344a6: 3800 0800 |002b: if-eqz v0, 0033 // +0008 │ │ +4344aa: 6200 b553 |002d: sget-object v0, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ +4344ae: 1208 |002f: const/4 v8, #int 0 // #0 │ │ +4344b0: 4800 0008 |0030: aget-byte v0, v0, v8 │ │ +4344b4: 2805 |0032: goto 0037 // +0005 │ │ +4344b6: 6200 b553 |0033: sget-object v0, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ +4344ba: 4800 0004 |0035: aget-byte v0, v0, v4 │ │ +4344be: 0108 |0037: move v8, v0 │ │ +4344c0: 6200 1855 |0038: sget-object v0, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ +4344c4: 4809 0004 |003a: aget-byte v9, v0, v4 │ │ +4344c8: 53da 9e5f |003c: iget-wide v10, v13, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ +4344cc: 0714 |003e: move-object v4, v1 │ │ +4344ce: 770a c7bb 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@bbc7 │ │ +4344d4: 0c0d |0042: move-result-object v13 │ │ +4344d6: 380d 0d00 |0043: if-eqz v13, 0050 // +000d │ │ +4344da: 7100 10bb 0000 |0045: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +4344e0: 0c00 |0048: move-result-object v0 │ │ +4344e2: 7110 b6bb 0d00 |0049: invoke-static {v13}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb6 │ │ +4344e8: 0c0d |004c: move-result-object v13 │ │ +4344ea: 6e30 0dbb d001 |004d: invoke-virtual {v0, v13, v1}, Lorg/purple/smoke/Kernel;.enqueueSteamKeyExchange:(Ljava/lang/String;Ljava/lang/String;)V // method@bb0d │ │ +4344f0: 0e00 |0050: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=81 │ │ 0x0005 line=82 │ │ 0x000c line=87 │ │ 0x000e line=88 │ │ 0x0012 line=91 │ │ @@ -748828,429 +748827,429 @@ │ │ type : '([B[B)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 31 │ │ ins : 3 │ │ outs : 6 │ │ insns size : 796 16-bit code units │ │ -4344f8: |[4344f8] org.purple.smoke.SteamKeyExchange.steamAorB:([B[B)V │ │ -434508: 0800 1c00 |0000: move-object/from16 v0, v28 │ │ -43450c: 0801 1d00 |0002: move-object/from16 v1, v29 │ │ -434510: 0802 1e00 |0004: move-object/from16 v2, v30 │ │ -434514: 3801 ff02 |0006: if-eqz v1, 0305 // +02ff │ │ -434518: 2113 |0008: array-length v3, v1 │ │ -43451a: 3803 fc02 |0009: if-eqz v3, 0305 // +02fc │ │ -43451e: 3802 fa02 |000b: if-eqz v2, 0305 // +02fa │ │ -434522: 2123 |000d: array-length v3, v2 │ │ -434524: 3903 0400 |000e: if-nez v3, 0012 // +0004 │ │ -434528: 2900 f502 |0010: goto/16 0305 // +02f5 │ │ -43452c: 1203 |0012: const/4 v3, #int 0 // #0 │ │ -43452e: 4804 0103 |0013: aget-byte v4, v1, v3 │ │ -434532: 2115 |0015: array-length v5, v1 │ │ -434534: 1216 |0016: const/4 v6, #int 1 // #1 │ │ -434536: 7130 b85f 6105 |0017: invoke-static {v1, v6, v5}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb8 │ │ -43453c: 0c01 |001a: move-result-object v1 │ │ -43453e: 2205 ef0a |001b: new-instance v5, Ljava/lang/String; // type@0aef │ │ -434542: 7020 ac5c 1500 |001d: invoke-direct {v5, v1}, Ljava/lang/String;.:([B)V // method@5cac │ │ -434548: 1a01 c155 |0020: const-string v1, "\n" // string@55c1 │ │ -43454c: 6e20 c95c 1500 |0022: invoke-virtual {v5, v1}, Ljava/lang/String;.split:(Ljava/lang/String;)[Ljava/lang/String; // method@5cc9 │ │ -434552: 0c01 |0025: move-result-object v1 │ │ -434554: 2115 |0026: array-length v5, v1 │ │ -434556: 1307 0900 |0027: const/16 v7, #int 9 // #9 │ │ -43455a: 3275 0300 |0029: if-eq v5, v7, 002c // +0003 │ │ -43455e: 0e00 |002b: return-void │ │ -434560: 2115 |002c: array-length v5, v1 │ │ -434562: 1a0a 0000 |002d: const-string v10, "" // string@0000 │ │ -434566: 120b |002f: const/4 v11, #int 0 // #0 │ │ -434568: 0810 0a00 |0030: move-object/from16 v16, v10 │ │ -43456c: 0811 1000 |0032: move-object/from16 v17, v16 │ │ -434570: 07bc |0034: move-object v12, v11 │ │ -434572: 07cd |0035: move-object v13, v12 │ │ -434574: 07de |0036: move-object v14, v13 │ │ -434576: 07ef |0037: move-object v15, v14 │ │ -434578: 1208 |0038: const/4 v8, #int 0 // #0 │ │ -43457a: 1209 |0039: const/4 v9, #int 0 // #0 │ │ -43457c: 1612 0000 |003a: const-wide/16 v18, #int 0 // #0 │ │ -434580: 1227 |003c: const/4 v7, #int 2 // #2 │ │ -434582: 3558 d001 |003d: if-ge v8, v5, 020d // +01d0 │ │ -434586: 4616 0108 |003f: aget-object v22, v1, v8 │ │ -43458a: 2b09 c502 0000 |0041: packed-switch v9, 00000306 // +000002c5 │ │ -434590: 0217 0500 |0044: move/from16 v23, v5 │ │ -434594: 0819 0a00 |0046: move-object/from16 v25, v10 │ │ -434598: 131b 0900 |0048: const/16 v27, #int 9 // #9 │ │ -43459c: 2900 b701 |004a: goto/16 0201 // +01b7 │ │ -4345a0: 6206 b75f |004c: sget-object v6, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb7 │ │ -4345a4: 6203 b65f |004e: sget-object v3, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb6 │ │ -4345a8: 6e30 2aba 360c |0050: invoke-virtual {v6, v3, v12}, Lorg/purple/smoke/Database;.signatureKeyForDigest:(Lorg/purple/smoke/Cryptography;[B)Ljava/security/PublicKey; // method@ba2a │ │ -4345ae: 0c06 |0053: move-result-object v6 │ │ -4345b0: 3906 0300 |0054: if-nez v6, 0057 // +0003 │ │ -4345b4: 0e00 |0056: return-void │ │ -4345b6: 0217 0500 |0057: move/from16 v23, v5 │ │ -4345ba: 7401 bc5c 1600 |0059: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4345c0: 0c05 |005c: move-result-object v5 │ │ -4345c2: 7120 c254 7500 |005d: invoke-static {v5, v7}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -4345c8: 0c05 |0060: move-result-object v5 │ │ -4345ca: 1307 1300 |0061: const/16 v7, #int 19 // #13 │ │ -4345ce: 2377 0f1c |0063: new-array v7, v7, [[B // type@1c0f │ │ -4345d2: 1314 0000 |0065: const/16 v20, #int 0 // #0 │ │ -4345d6: 4d02 0714 |0067: aput-object v2, v7, v20 │ │ -4345da: 0819 0a00 |0069: move-object/from16 v25, v10 │ │ -4345de: 1212 |006b: const/4 v2, #int 1 // #1 │ │ -4345e0: 232a 481b |006c: new-array v10, v2, [B // type@1b48 │ │ -4345e4: 4f04 0a14 |006e: aput-byte v4, v10, v20 │ │ -4345e8: 4d0a 0702 |0070: aput-object v10, v7, v2 │ │ -4345ec: 460a 0114 |0072: aget-object v10, v1, v20 │ │ -4345f0: 6e10 bc5c 0a00 |0074: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4345f6: 0c0a |0077: move-result-object v10 │ │ -4345f8: 1314 0200 |0078: const/16 v20, #int 2 // #2 │ │ -4345fc: 4d0a 0714 |007a: aput-object v10, v7, v20 │ │ -434600: 1a0a 0100 |007c: const-string v10, " │ │ +4344f4: |[4344f4] org.purple.smoke.SteamKeyExchange.steamAorB:([B[B)V │ │ +434504: 0800 1c00 |0000: move-object/from16 v0, v28 │ │ +434508: 0801 1d00 |0002: move-object/from16 v1, v29 │ │ +43450c: 0802 1e00 |0004: move-object/from16 v2, v30 │ │ +434510: 3801 ff02 |0006: if-eqz v1, 0305 // +02ff │ │ +434514: 2113 |0008: array-length v3, v1 │ │ +434516: 3803 fc02 |0009: if-eqz v3, 0305 // +02fc │ │ +43451a: 3802 fa02 |000b: if-eqz v2, 0305 // +02fa │ │ +43451e: 2123 |000d: array-length v3, v2 │ │ +434520: 3903 0400 |000e: if-nez v3, 0012 // +0004 │ │ +434524: 2900 f502 |0010: goto/16 0305 // +02f5 │ │ +434528: 1203 |0012: const/4 v3, #int 0 // #0 │ │ +43452a: 4804 0103 |0013: aget-byte v4, v1, v3 │ │ +43452e: 2115 |0015: array-length v5, v1 │ │ +434530: 1216 |0016: const/4 v6, #int 1 // #1 │ │ +434532: 7130 b85f 6105 |0017: invoke-static {v1, v6, v5}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb8 │ │ +434538: 0c01 |001a: move-result-object v1 │ │ +43453a: 2205 ef0a |001b: new-instance v5, Ljava/lang/String; // type@0aef │ │ +43453e: 7020 ac5c 1500 |001d: invoke-direct {v5, v1}, Ljava/lang/String;.:([B)V // method@5cac │ │ +434544: 1a01 c155 |0020: const-string v1, "\n" // string@55c1 │ │ +434548: 6e20 c95c 1500 |0022: invoke-virtual {v5, v1}, Ljava/lang/String;.split:(Ljava/lang/String;)[Ljava/lang/String; // method@5cc9 │ │ +43454e: 0c01 |0025: move-result-object v1 │ │ +434550: 2115 |0026: array-length v5, v1 │ │ +434552: 1307 0900 |0027: const/16 v7, #int 9 // #9 │ │ +434556: 3275 0300 |0029: if-eq v5, v7, 002c // +0003 │ │ +43455a: 0e00 |002b: return-void │ │ +43455c: 2115 |002c: array-length v5, v1 │ │ +43455e: 1a0a 0000 |002d: const-string v10, "" // string@0000 │ │ +434562: 120b |002f: const/4 v11, #int 0 // #0 │ │ +434564: 0810 0a00 |0030: move-object/from16 v16, v10 │ │ +434568: 0811 1000 |0032: move-object/from16 v17, v16 │ │ +43456c: 07bc |0034: move-object v12, v11 │ │ +43456e: 07cd |0035: move-object v13, v12 │ │ +434570: 07de |0036: move-object v14, v13 │ │ +434572: 07ef |0037: move-object v15, v14 │ │ +434574: 1208 |0038: const/4 v8, #int 0 // #0 │ │ +434576: 1209 |0039: const/4 v9, #int 0 // #0 │ │ +434578: 1612 0000 |003a: const-wide/16 v18, #int 0 // #0 │ │ +43457c: 1227 |003c: const/4 v7, #int 2 // #2 │ │ +43457e: 3558 d001 |003d: if-ge v8, v5, 020d // +01d0 │ │ +434582: 4616 0108 |003f: aget-object v22, v1, v8 │ │ +434586: 2b09 c502 0000 |0041: packed-switch v9, 00000306 // +000002c5 │ │ +43458c: 0217 0500 |0044: move/from16 v23, v5 │ │ +434590: 0819 0a00 |0046: move-object/from16 v25, v10 │ │ +434594: 131b 0900 |0048: const/16 v27, #int 9 // #9 │ │ +434598: 2900 b701 |004a: goto/16 0201 // +01b7 │ │ +43459c: 6206 b75f |004c: sget-object v6, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb7 │ │ +4345a0: 6203 b65f |004e: sget-object v3, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb6 │ │ +4345a4: 6e30 2aba 360c |0050: invoke-virtual {v6, v3, v12}, Lorg/purple/smoke/Database;.signatureKeyForDigest:(Lorg/purple/smoke/Cryptography;[B)Ljava/security/PublicKey; // method@ba2a │ │ +4345aa: 0c06 |0053: move-result-object v6 │ │ +4345ac: 3906 0300 |0054: if-nez v6, 0057 // +0003 │ │ +4345b0: 0e00 |0056: return-void │ │ +4345b2: 0217 0500 |0057: move/from16 v23, v5 │ │ +4345b6: 7401 bc5c 1600 |0059: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4345bc: 0c05 |005c: move-result-object v5 │ │ +4345be: 7120 c254 7500 |005d: invoke-static {v5, v7}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +4345c4: 0c05 |0060: move-result-object v5 │ │ +4345c6: 1307 1300 |0061: const/16 v7, #int 19 // #13 │ │ +4345ca: 2377 0f1c |0063: new-array v7, v7, [[B // type@1c0f │ │ +4345ce: 1314 0000 |0065: const/16 v20, #int 0 // #0 │ │ +4345d2: 4d02 0714 |0067: aput-object v2, v7, v20 │ │ +4345d6: 0819 0a00 |0069: move-object/from16 v25, v10 │ │ +4345da: 1212 |006b: const/4 v2, #int 1 // #1 │ │ +4345dc: 232a 481b |006c: new-array v10, v2, [B // type@1b48 │ │ +4345e0: 4f04 0a14 |006e: aput-byte v4, v10, v20 │ │ +4345e4: 4d0a 0702 |0070: aput-object v10, v7, v2 │ │ +4345e8: 460a 0114 |0072: aget-object v10, v1, v20 │ │ +4345ec: 6e10 bc5c 0a00 |0074: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4345f2: 0c0a |0077: move-result-object v10 │ │ +4345f4: 1314 0200 |0078: const/16 v20, #int 2 // #2 │ │ +4345f8: 4d0a 0714 |007a: aput-object v10, v7, v20 │ │ +4345fc: 1a0a 0100 |007c: const-string v10, " │ │ " // string@0001 │ │ -434604: 6e10 bc5c 0a00 |007e: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -43460a: 0c14 |0081: move-result-object v20 │ │ -43460c: 1315 0300 |0082: const/16 v21, #int 3 // #3 │ │ -434610: 4d14 0715 |0084: aput-object v20, v7, v21 │ │ -434614: 4614 0102 |0086: aget-object v20, v1, v2 │ │ -434618: 7401 bc5c 1400 |0088: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -43461e: 0c02 |008b: move-result-object v2 │ │ -434620: 1314 0400 |008c: const/16 v20, #int 4 // #4 │ │ -434624: 4d02 0714 |008e: aput-object v2, v7, v20 │ │ -434628: 6e10 bc5c 0a00 |0090: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -43462e: 0c02 |0093: move-result-object v2 │ │ -434630: 1316 0500 |0094: const/16 v22, #int 5 // #5 │ │ -434634: 4d02 0716 |0096: aput-object v2, v7, v22 │ │ -434638: 1222 |0098: const/4 v2, #int 2 // #2 │ │ -43463a: 4602 0102 |0099: aget-object v2, v1, v2 │ │ -43463e: 6e10 bc5c 0200 |009b: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434644: 0c02 |009e: move-result-object v2 │ │ -434646: 1318 0600 |009f: const/16 v24, #int 6 // #6 │ │ -43464a: 4d02 0718 |00a1: aput-object v2, v7, v24 │ │ -43464e: 6e10 bc5c 0a00 |00a3: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434654: 0c02 |00a6: move-result-object v2 │ │ -434656: 131a 0700 |00a7: const/16 v26, #int 7 // #7 │ │ -43465a: 4d02 071a |00a9: aput-object v2, v7, v26 │ │ -43465e: 1302 0800 |00ab: const/16 v2, #int 8 // #8 │ │ -434662: 4615 0115 |00ad: aget-object v21, v1, v21 │ │ -434666: 7401 bc5c 1500 |00af: invoke-virtual/range {v21}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -43466c: 0c15 |00b2: move-result-object v21 │ │ -43466e: 4d15 0702 |00b3: aput-object v21, v7, v2 │ │ -434672: 6e10 bc5c 0a00 |00b5: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434678: 0c02 |00b8: move-result-object v2 │ │ -43467a: 131b 0900 |00b9: const/16 v27, #int 9 // #9 │ │ -43467e: 4d02 071b |00bb: aput-object v2, v7, v27 │ │ -434682: 1302 0a00 |00bd: const/16 v2, #int 10 // #a │ │ -434686: 4614 0114 |00bf: aget-object v20, v1, v20 │ │ -43468a: 7401 bc5c 1400 |00c1: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434690: 0c14 |00c4: move-result-object v20 │ │ -434692: 4d14 0702 |00c5: aput-object v20, v7, v2 │ │ -434696: 1302 0b00 |00c7: const/16 v2, #int 11 // #b │ │ -43469a: 6e10 bc5c 0a00 |00c9: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4346a0: 0c14 |00cc: move-result-object v20 │ │ -4346a2: 4d14 0702 |00cd: aput-object v20, v7, v2 │ │ -4346a6: 1302 0c00 |00cf: const/16 v2, #int 12 // #c │ │ -4346aa: 4614 0116 |00d1: aget-object v20, v1, v22 │ │ -4346ae: 7401 bc5c 1400 |00d3: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4346b4: 0c14 |00d6: move-result-object v20 │ │ -4346b6: 4d14 0702 |00d7: aput-object v20, v7, v2 │ │ -4346ba: 1302 0d00 |00d9: const/16 v2, #int 13 // #d │ │ -4346be: 6e10 bc5c 0a00 |00db: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4346c4: 0c14 |00de: move-result-object v20 │ │ -4346c6: 4d14 0702 |00df: aput-object v20, v7, v2 │ │ -4346ca: 1302 0e00 |00e1: const/16 v2, #int 14 // #e │ │ -4346ce: 4614 0118 |00e3: aget-object v20, v1, v24 │ │ -4346d2: 7401 bc5c 1400 |00e5: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4346d8: 0c14 |00e8: move-result-object v20 │ │ -4346da: 4d14 0702 |00e9: aput-object v20, v7, v2 │ │ -4346de: 1302 0f00 |00eb: const/16 v2, #int 15 // #f │ │ -4346e2: 6e10 bc5c 0a00 |00ed: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4346e8: 0c14 |00f0: move-result-object v20 │ │ -4346ea: 4d14 0702 |00f1: aput-object v20, v7, v2 │ │ -4346ee: 1302 1000 |00f3: const/16 v2, #int 16 // #10 │ │ -4346f2: 4614 011a |00f5: aget-object v20, v1, v26 │ │ -4346f6: 7401 bc5c 1400 |00f7: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4346fc: 0c14 |00fa: move-result-object v20 │ │ -4346fe: 4d14 0702 |00fb: aput-object v20, v7, v2 │ │ -434702: 1302 1100 |00fd: const/16 v2, #int 17 // #11 │ │ -434706: 6e10 bc5c 0a00 |00ff: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -43470c: 0c0a |0102: move-result-object v10 │ │ -43470e: 4d0a 0702 |0103: aput-object v10, v7, v2 │ │ -434712: 1302 1200 |0105: const/16 v2, #int 18 // #12 │ │ -434716: 6e10 73b9 0300 |0107: invoke-virtual {v3}, Lorg/purple/smoke/Cryptography;.chatEncryptionPublicKeyDigest:()[B // method@b973 │ │ -43471c: 0c03 |010a: move-result-object v3 │ │ -43471e: 4d03 0702 |010b: aput-object v3, v7, v2 │ │ -434722: 7110 f0bb 0700 |010d: invoke-static {v7}, Lorg/purple/smoke/Miscellaneous;.joinByteArrays:([[B)[B // method@bbf0 │ │ -434728: 0c02 |0110: move-result-object v2 │ │ -43472a: 7130 c4b9 5602 |0111: invoke-static {v6, v5, v2}, Lorg/purple/smoke/Cryptography;.verifySignature:(Ljava/security/PublicKey;[B[B)Z // method@b9c4 │ │ -434730: 0a02 |0114: move-result v2 │ │ -434732: 3902 ea00 |0115: if-nez v2, 01ff // +00ea │ │ -434736: 0e00 |0117: return-void │ │ -434738: 0217 0500 |0118: move/from16 v23, v5 │ │ -43473c: 0819 0a00 |011a: move-object/from16 v25, v10 │ │ -434740: 131b 0900 |011c: const/16 v27, #int 9 // #9 │ │ -434744: 7401 bc5c 1600 |011e: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -43474a: 0c02 |0121: move-result-object v2 │ │ -43474c: 1223 |0122: const/4 v3, #int 2 // #2 │ │ -43474e: 7120 c254 3200 |0123: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -434754: 0c02 |0126: move-result-object v2 │ │ -434756: d809 0901 |0127: add-int/lit8 v9, v9, #int 1 // #01 │ │ -43475a: 072c |0129: move-object v12, v2 │ │ -43475c: 2900 d700 |012a: goto/16 0201 // +00d7 │ │ -434760: 0217 0500 |012c: move/from16 v23, v5 │ │ -434764: 0819 0a00 |012e: move-object/from16 v25, v10 │ │ -434768: 1223 |0130: const/4 v3, #int 2 // #2 │ │ -43476a: 131b 0900 |0131: const/16 v27, #int 9 // #9 │ │ -43476e: 7401 bc5c 1600 |0133: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434774: 0c02 |0136: move-result-object v2 │ │ -434776: 7120 c254 3200 |0137: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -43477c: 0c02 |013a: move-result-object v2 │ │ -43477e: 7110 e6bb 0200 |013b: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayToLong:([B)J // method@bbe6 │ │ -434784: 0b12 |013e: move-result-wide v18 │ │ -434786: 1602 0000 |013f: const-wide/16 v2, #int 0 // #0 │ │ -43478a: 3105 1202 |0141: cmp-long v5, v18, v2 │ │ -43478e: 3b05 bc00 |0143: if-gez v5, 01ff // +00bc │ │ -434792: 0e00 |0145: return-void │ │ -434794: 0217 0500 |0146: move/from16 v23, v5 │ │ -434798: 0819 0a00 |0148: move-object/from16 v25, v10 │ │ -43479c: 1223 |014a: const/4 v3, #int 2 // #2 │ │ -43479e: 131b 0900 |014b: const/16 v27, #int 9 // #9 │ │ -4347a2: 2202 ef0a |014d: new-instance v2, Ljava/lang/String; // type@0aef │ │ -4347a6: 7401 bc5c 1600 |014f: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4347ac: 0c05 |0152: move-result-object v5 │ │ -4347ae: 7120 c254 3500 |0153: invoke-static {v5, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -4347b4: 0c03 |0156: move-result-object v3 │ │ -4347b6: 6205 e42c |0157: sget-object v5, Ljava/nio/charset/StandardCharsets;.UTF_8:Ljava/nio/charset/Charset; // field@2ce4 │ │ -4347ba: 7030 af5c 3205 |0159: invoke-direct {v2, v3, v5}, Ljava/lang/String;.:([BLjava/nio/charset/Charset;)V // method@5caf │ │ -4347c0: 1303 2e00 |015c: const/16 v3, #int 46 // #2e │ │ -4347c4: 6e20 c05c 3200 |015e: invoke-virtual {v2, v3}, Ljava/lang/String;.indexOf:(I)I // method@5cc0 │ │ -4347ca: 0a05 |0161: move-result v5 │ │ -4347cc: 3905 0a00 |0162: if-nez v5, 016c // +000a │ │ -4347d0: 6e20 c05c 3200 |0164: invoke-virtual {v2, v3}, Ljava/lang/String;.indexOf:(I)I // method@5cc0 │ │ -4347d6: 0a03 |0167: move-result v3 │ │ -4347d8: 6e20 cc5c 3200 |0168: invoke-virtual {v2, v3}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ -4347de: 0c11 |016b: move-result-object v17 │ │ -4347e0: d809 0901 |016c: add-int/lit8 v9, v9, #int 1 // #01 │ │ -4347e4: 0810 0200 |016e: move-object/from16 v16, v2 │ │ -4347e8: 2900 9100 |0170: goto/16 0201 // +0091 │ │ -4347ec: 0217 0500 |0172: move/from16 v23, v5 │ │ -4347f0: 0819 0a00 |0174: move-object/from16 v25, v10 │ │ -4347f4: 131b 0900 |0176: const/16 v27, #int 9 // #9 │ │ -4347f8: 7401 bc5c 1600 |0178: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4347fe: 0c02 |017b: move-result-object v2 │ │ -434800: 1223 |017c: const/4 v3, #int 2 // #2 │ │ -434802: 7120 c254 3200 |017d: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -434808: 0c02 |0180: move-result-object v2 │ │ -43480a: 6203 1855 |0181: sget-object v3, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ -43480e: 1205 |0183: const/4 v5, #int 0 // #0 │ │ -434810: 4803 0305 |0184: aget-byte v3, v3, v5 │ │ -434814: 3334 1900 |0186: if-ne v4, v3, 019f // +0019 │ │ -434818: 6203 b75f |0188: sget-object v3, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb7 │ │ -43481c: 6205 b65f |018a: sget-object v5, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb6 │ │ -434820: 6e30 2cba 5302 |018c: invoke-virtual {v3, v5, v2}, Lorg/purple/smoke/Database;.steamOidFromFileIdentity:(Lorg/purple/smoke/Cryptography;[B)I // method@ba2c │ │ -434826: 0a06 |018f: move-result v6 │ │ -434828: 12f7 |0190: const/4 v7, #int -1 // #ff │ │ -43482a: 3776 0e00 |0191: if-le v6, v7, 019f // +000e │ │ -43482e: d806 06ff |0193: add-int/lit8 v6, v6, #int -1 // #ff │ │ -434832: 6e40 20ba 5367 |0195: invoke-virtual {v3, v5, v7, v6}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba20 │ │ -434838: 0c03 |0198: move-result-object v3 │ │ -43483a: 3803 0600 |0199: if-eqz v3, 019f // +0006 │ │ -43483e: 7020 17be 3000 |019b: invoke-direct {v0, v3}, Lorg/purple/smoke/SteamKeyExchange;.shareB:(Lorg/purple/smoke/SteamElement;)V // method@be17 │ │ -434844: 0e00 |019e: return-void │ │ -434846: d809 0901 |019f: add-int/lit8 v9, v9, #int 1 // #01 │ │ -43484a: 072b |01a1: move-object v11, v2 │ │ -43484c: 285f |01a2: goto 0201 // +005f │ │ -43484e: 0217 0500 |01a3: move/from16 v23, v5 │ │ -434852: 0819 0a00 |01a5: move-object/from16 v25, v10 │ │ -434856: 131b 0900 |01a7: const/16 v27, #int 9 // #9 │ │ -43485a: 7401 bc5c 1600 |01a9: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434860: 0c02 |01ac: move-result-object v2 │ │ -434862: 1223 |01ad: const/4 v3, #int 2 // #2 │ │ -434864: 7120 c254 3200 |01ae: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -43486a: 0c02 |01b1: move-result-object v2 │ │ -43486c: d809 0901 |01b2: add-int/lit8 v9, v9, #int 1 // #01 │ │ -434870: 072e |01b4: move-object v14, v2 │ │ -434872: 284c |01b5: goto 0201 // +004c │ │ -434874: 0217 0500 |01b6: move/from16 v23, v5 │ │ -434878: 0819 0a00 |01b8: move-object/from16 v25, v10 │ │ -43487c: 1223 |01ba: const/4 v3, #int 2 // #2 │ │ -43487e: 131b 0900 |01bb: const/16 v27, #int 9 // #9 │ │ -434882: 7401 bc5c 1600 |01bd: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -434888: 0c02 |01c0: move-result-object v2 │ │ -43488a: 7120 c254 3200 |01c1: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -434890: 0c02 |01c4: move-result-object v2 │ │ -434892: d809 0901 |01c5: add-int/lit8 v9, v9, #int 1 // #01 │ │ -434896: 072f |01c7: move-object v15, v2 │ │ -434898: 2839 |01c8: goto 0201 // +0039 │ │ -43489a: 0217 0500 |01c9: move/from16 v23, v5 │ │ -43489e: 0819 0a00 |01cb: move-object/from16 v25, v10 │ │ -4348a2: 1223 |01cd: const/4 v3, #int 2 // #2 │ │ -4348a4: 131b 0900 |01ce: const/16 v27, #int 9 // #9 │ │ -4348a8: 7401 bc5c 1600 |01d0: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4348ae: 0c02 |01d3: move-result-object v2 │ │ -4348b0: 7120 c254 3200 |01d4: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -4348b6: 0c02 |01d7: move-result-object v2 │ │ -4348b8: d809 0901 |01d8: add-int/lit8 v9, v9, #int 1 // #01 │ │ -4348bc: 072d |01da: move-object v13, v2 │ │ -4348be: 2826 |01db: goto 0201 // +0026 │ │ -4348c0: 0217 0500 |01dc: move/from16 v23, v5 │ │ -4348c4: 0819 0a00 |01de: move-object/from16 v25, v10 │ │ -4348c8: 1223 |01e0: const/4 v3, #int 2 // #2 │ │ -4348ca: 131b 0900 |01e1: const/16 v27, #int 9 // #9 │ │ -4348ce: 7401 bc5c 1600 |01e3: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4348d4: 0c02 |01e6: move-result-object v2 │ │ -4348d6: 7120 c254 3200 |01e7: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -4348dc: 0c02 |01ea: move-result-object v2 │ │ -4348de: 7110 e6bb 0200 |01eb: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayToLong:([B)J // method@bbe6 │ │ -4348e4: 0b02 |01ee: move-result-wide v2 │ │ -4348e6: 7100 065d 0000 |01ef: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -4348ec: 0b05 |01f2: move-result-wide v5 │ │ -4348ee: bc25 |01f3: sub-long/2addr v5, v2 │ │ -4348f0: 7120 735c 6500 |01f4: invoke-static {v5, v6}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ -4348f6: 0b02 |01f7: move-result-wide v2 │ │ -4348f8: 1605 3075 |01f8: const-wide/16 v5, #int 30000 // #7530 │ │ -4348fc: 3107 0205 |01fa: cmp-long v7, v2, v5 │ │ -434900: 3d07 0300 |01fc: if-lez v7, 01ff // +0003 │ │ -434904: 0e00 |01fe: return-void │ │ -434906: d809 0901 |01ff: add-int/lit8 v9, v9, #int 1 // #01 │ │ -43490a: d808 0801 |0201: add-int/lit8 v8, v8, #int 1 // #01 │ │ -43490e: 0802 1e00 |0203: move-object/from16 v2, v30 │ │ -434912: 0205 1700 |0205: move/from16 v5, v23 │ │ -434916: 080a 1900 |0207: move-object/from16 v10, v25 │ │ -43491a: 1203 |0209: const/4 v3, #int 0 // #0 │ │ -43491c: 1216 |020a: const/4 v6, #int 1 // #1 │ │ -43491e: 2900 31fe |020b: goto/16 003c // -01cf │ │ -434922: 0819 0a00 |020d: move-object/from16 v25, v10 │ │ -434926: 6201 1855 |020f: sget-object v1, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ -43492a: 1202 |0211: const/4 v2, #int 0 // #0 │ │ -43492c: 4801 0102 |0212: aget-byte v1, v1, v2 │ │ -434930: 3314 c000 |0214: if-ne v4, v1, 02d4 // +00c0 │ │ -434934: 6201 b75f |0216: sget-object v1, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb7 │ │ -434938: 6202 b65f |0218: sget-object v2, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb6 │ │ -43493c: 6e30 feb9 210c |021a: invoke-virtual {v1, v2, v12}, Lorg/purple/smoke/Database;.nameSipHashIdFromDigest:(Lorg/purple/smoke/Cryptography;[B)[Ljava/lang/String; // method@b9fe │ │ -434942: 0c03 |021d: move-result-object v3 │ │ -434944: 1214 |021e: const/4 v4, #int 1 // #1 │ │ -434946: 4605 0304 |021f: aget-object v5, v3, v4 │ │ -43494a: 6e30 19ba 2105 |0221: invoke-virtual {v1, v2, v5}, Lorg/purple/smoke/Database;.readParticipantOptions:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba19 │ │ -434950: 0c05 |0224: move-result-object v5 │ │ -434952: 1a06 f38f |0225: const-string v6, "optional_steam = true" // string@8ff3 │ │ -434956: 6e20 b65c 6500 |0227: invoke-virtual {v5, v6}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -43495c: 0a05 |022a: move-result v5 │ │ -43495e: 3805 0300 |022b: if-eqz v5, 022e // +0003 │ │ -434962: 0e00 |022d: return-void │ │ -434964: 2205 281b |022e: new-instance v5, Lorg/purple/smoke/SteamElement; // type@1b28 │ │ -434968: 7010 06be 0500 |0230: invoke-direct {v5}, Lorg/purple/smoke/SteamElement;.:()V // method@be06 │ │ -43496e: 4606 0304 |0233: aget-object v6, v3, v4 │ │ -434972: 6e10 c35c 0600 |0235: invoke-virtual {v6}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -434978: 0a04 |0238: move-result v4 │ │ -43497a: 3804 0800 |0239: if-eqz v4, 0241 // +0008 │ │ -43497e: 1204 |023b: const/4 v4, #int 0 // #0 │ │ -434980: 4603 0304 |023c: aget-object v3, v3, v4 │ │ -434984: 5b53 965f |023e: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ -434988: 2822 |0240: goto 0262 // +0022 │ │ -43498a: 1204 |0241: const/4 v4, #int 0 // #0 │ │ -43498c: 2206 f10a |0242: new-instance v6, Ljava/lang/StringBuilder; // type@0af1 │ │ -434990: 7010 ee5c 0600 |0244: invoke-direct {v6}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -434996: 4607 0304 |0247: aget-object v7, v3, v4 │ │ -43499a: 6e20 f95c 7600 |0249: invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4349a0: 1a04 9800 |024c: const-string v4, " (" // string@0098 │ │ -4349a4: 6e20 f95c 4600 |024e: invoke-virtual {v6, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4349aa: 1214 |0251: const/4 v4, #int 1 // #1 │ │ -4349ac: 4603 0304 |0252: aget-object v3, v3, v4 │ │ -4349b0: 6e20 f95c 3600 |0254: invoke-virtual {v6, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4349b6: 1a03 ec03 |0257: const-string v3, ")" // string@03ec │ │ -4349ba: 6e20 f95c 3600 |0259: invoke-virtual {v6, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4349c0: 6e10 035d 0600 |025c: invoke-virtual {v6}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4349c6: 0c03 |025f: move-result-object v3 │ │ -4349c8: 5b53 965f |0260: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ -4349cc: 080a 1000 |0262: move-object/from16 v10, v16 │ │ -4349d0: 1303 2e00 |0264: const/16 v3, #int 46 // #2e │ │ -4349d4: 6e20 c05c 3a00 |0266: invoke-virtual {v10, v3}, Ljava/lang/String;.indexOf:(I)I // method@5cc0 │ │ -4349da: 0a03 |0269: move-result v3 │ │ -4349dc: 3903 2500 |026a: if-nez v3, 028f // +0025 │ │ -4349e0: 2203 f10a |026c: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ -4349e4: 7010 ee5c 0300 |026e: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -4349ea: 1a04 374c |0271: const-string v4, "Smoke_" // string@4c37 │ │ -4349ee: 6e20 f95c 4300 |0273: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4349f4: 1304 2000 |0276: const/16 v4, #int 32 // #20 │ │ -4349f8: 7110 adb9 0400 |0278: invoke-static {v4}, Lorg/purple/smoke/Cryptography;.randomBytes:(I)[B // method@b9ad │ │ -4349fe: 0c04 |027b: move-result-object v4 │ │ -434a00: 7110 e4bb 0400 |027c: invoke-static {v4}, Lorg/purple/smoke/Miscellaneous;.byteArrayAsHexString:([B)Ljava/lang/String; // method@bbe4 │ │ -434a06: 0c04 |027f: move-result-object v4 │ │ -434a08: 6e20 f95c 4300 |0280: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -434a0e: 080a 1100 |0283: move-object/from16 v10, v17 │ │ -434a12: 6e20 f95c a300 |0285: invoke-virtual {v3, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -434a18: 6e10 035d 0300 |0288: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -434a1e: 0c03 |028b: move-result-object v3 │ │ -434a20: 5b53 985f |028c: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f98 │ │ -434a24: 2803 |028e: goto 0291 // +0003 │ │ -434a26: 5b5a 985f |028f: iput-object v10, v5, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f98 │ │ -434a2a: 5b5d 9a5f |0291: iput-object v13, v5, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f9a │ │ -434a2e: 5b5e 9b5f |0293: iput-object v14, v5, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9b │ │ -434a32: 5b5b 9c5f |0295: iput-object v11, v5, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9c │ │ -434a36: 5453 985f |0297: iget-object v3, v5, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f98 │ │ -434a3a: 5b53 9d5f |0299: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_fileName:Ljava/lang/String; // field@5f9d │ │ -434a3e: 0508 1200 |029b: move-wide/from16 v8, v18 │ │ -434a42: 5a58 9e5f |029d: iput-wide v8, v5, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ -434a46: 1223 |029f: const/4 v3, #int 2 // #2 │ │ -434a48: 2333 0f1c |02a0: new-array v3, v3, [[B // type@1c0f │ │ -434a4c: 7100 6fb9 0000 |02a2: invoke-static {}, Lorg/purple/smoke/Cryptography;.aes256KeyBytes:()[B // method@b96f │ │ -434a52: 0c04 |02a5: move-result-object v4 │ │ -434a54: 1206 |02a6: const/4 v6, #int 0 // #0 │ │ -434a56: 4d04 0306 |02a7: aput-object v4, v3, v6 │ │ -434a5a: 7100 bdb9 0000 |02a9: invoke-static {}, Lorg/purple/smoke/Cryptography;.sha512KeyBytes:()[B // method@b9bd │ │ -434a60: 0c04 |02ac: move-result-object v4 │ │ -434a62: 1217 |02ad: const/4 v7, #int 1 // #1 │ │ -434a64: 4d04 0307 |02ae: aput-object v4, v3, v7 │ │ -434a68: 7110 f0bb 0300 |02b0: invoke-static {v3}, Lorg/purple/smoke/Miscellaneous;.joinByteArrays:([[B)[B // method@bbf0 │ │ -434a6e: 0c03 |02b3: move-result-object v3 │ │ -434a70: 5b53 9f5f |02b4: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ -434a74: 4803 0f06 |02b6: aget-byte v3, v15, v6 │ │ -434a78: 6204 b553 |02b8: sget-object v4, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ -434a7c: 4804 0406 |02ba: aget-byte v4, v4, v6 │ │ -434a80: 3343 0500 |02bc: if-ne v3, v4, 02c1 // +0005 │ │ -434a84: 1a03 ae3f |02be: const-string v3, "McEliece" // string@3fae │ │ -434a88: 2803 |02c0: goto 02c3 // +0003 │ │ -434a8a: 1a03 6b46 |02c1: const-string v3, "RSA" // string@466b │ │ -434a8e: 5b53 a05f |02c3: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5fa0 │ │ -434a92: 1603 0000 |02c5: const-wide/16 v3, #int 0 // #0 │ │ -434a96: 5a53 a35f |02c7: iput-wide v3, v5, Lorg/purple/smoke/SteamElement;.m_readInterval:J // field@5fa3 │ │ -434a9a: 1a03 ff61 |02c9: const-string v3, "created private-key pair" // string@61ff │ │ -434a9e: 5b53 a65f |02cb: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa6 │ │ -434aa2: 6e30 40ba 2105 |02cd: invoke-virtual {v1, v2, v5}, Lorg/purple/smoke/Database;.writeSteam:(Lorg/purple/smoke/Cryptography;Lorg/purple/smoke/SteamElement;)V // method@ba40 │ │ -434aa8: 7020 17be 5000 |02d0: invoke-direct {v0, v5}, Lorg/purple/smoke/SteamKeyExchange;.shareB:(Lorg/purple/smoke/SteamElement;)V // method@be17 │ │ -434aae: 2832 |02d3: goto 0305 // +0032 │ │ -434ab0: 6201 b75f |02d4: sget-object v1, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb7 │ │ -434ab4: 6202 b65f |02d6: sget-object v2, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb6 │ │ -434ab8: 6e30 2cba 210b |02d8: invoke-virtual {v1, v2, v11}, Lorg/purple/smoke/Database;.steamOidFromFileIdentity:(Lorg/purple/smoke/Cryptography;[B)I // method@ba2c │ │ -434abe: 0a03 |02db: move-result v3 │ │ -434ac0: d804 03ff |02dc: add-int/lit8 v4, v3, #int -1 // #ff │ │ -434ac4: 12f5 |02de: const/4 v5, #int -1 // #ff │ │ -434ac6: 6e40 20ba 2145 |02df: invoke-virtual {v1, v2, v5, v4}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba20 │ │ -434acc: 0c04 |02e2: move-result-object v4 │ │ -434ace: 3904 0300 |02e3: if-nez v4, 02e6 // +0003 │ │ -434ad2: 0e00 |02e5: return-void │ │ -434ad4: 5444 995f |02e6: iget-object v4, v4, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f99 │ │ -434ad8: 7110 a7b9 0400 |02e8: invoke-static {v4}, Lorg/purple/smoke/Cryptography;.privateKeyFromBytes:([B)Ljava/security/PrivateKey; // method@b9a7 │ │ -434ade: 0c04 |02eb: move-result-object v4 │ │ -434ae0: 3904 0300 |02ec: if-nez v4, 02ef // +0003 │ │ -434ae4: 0e00 |02ee: return-void │ │ -434ae6: 7120 a1b9 d400 |02ef: invoke-static {v4, v13}, Lorg/purple/smoke/Cryptography;.pkiDecrypt:(Ljava/security/PrivateKey;[B)[B // method@b9a1 │ │ -434aec: 0c08 |02f2: move-result-object v8 │ │ -434aee: 3908 0300 |02f3: if-nez v8, 02f6 // +0003 │ │ -434af2: 0e00 |02f5: return-void │ │ -434af4: 1209 |02f6: const/4 v9, #int 0 // #0 │ │ -434af6: 120a |02f7: const/4 v10, #int 0 // #0 │ │ -434af8: 0716 |02f8: move-object v6, v1 │ │ -434afa: 0727 |02f9: move-object v7, v2 │ │ -434afc: 013b |02fa: move v11, v3 │ │ -434afe: 7406 43ba 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@ba43 │ │ -434b04: 1a04 7996 |02fe: const-string v4, "received private-key pair" // string@9679 │ │ -434b08: 0805 1900 |0300: move-object/from16 v5, v25 │ │ -434b0c: 6e53 46ba 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@ba46 │ │ -434b12: 0e00 |0305: return-void │ │ -434b14: 0001 0900 0000 0000 9b01 0000 8801 ... |0306: packed-switch-data (22 units) │ │ +434600: 6e10 bc5c 0a00 |007e: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434606: 0c14 |0081: move-result-object v20 │ │ +434608: 1315 0300 |0082: const/16 v21, #int 3 // #3 │ │ +43460c: 4d14 0715 |0084: aput-object v20, v7, v21 │ │ +434610: 4614 0102 |0086: aget-object v20, v1, v2 │ │ +434614: 7401 bc5c 1400 |0088: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +43461a: 0c02 |008b: move-result-object v2 │ │ +43461c: 1314 0400 |008c: const/16 v20, #int 4 // #4 │ │ +434620: 4d02 0714 |008e: aput-object v2, v7, v20 │ │ +434624: 6e10 bc5c 0a00 |0090: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +43462a: 0c02 |0093: move-result-object v2 │ │ +43462c: 1316 0500 |0094: const/16 v22, #int 5 // #5 │ │ +434630: 4d02 0716 |0096: aput-object v2, v7, v22 │ │ +434634: 1222 |0098: const/4 v2, #int 2 // #2 │ │ +434636: 4602 0102 |0099: aget-object v2, v1, v2 │ │ +43463a: 6e10 bc5c 0200 |009b: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434640: 0c02 |009e: move-result-object v2 │ │ +434642: 1318 0600 |009f: const/16 v24, #int 6 // #6 │ │ +434646: 4d02 0718 |00a1: aput-object v2, v7, v24 │ │ +43464a: 6e10 bc5c 0a00 |00a3: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434650: 0c02 |00a6: move-result-object v2 │ │ +434652: 131a 0700 |00a7: const/16 v26, #int 7 // #7 │ │ +434656: 4d02 071a |00a9: aput-object v2, v7, v26 │ │ +43465a: 1302 0800 |00ab: const/16 v2, #int 8 // #8 │ │ +43465e: 4615 0115 |00ad: aget-object v21, v1, v21 │ │ +434662: 7401 bc5c 1500 |00af: invoke-virtual/range {v21}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434668: 0c15 |00b2: move-result-object v21 │ │ +43466a: 4d15 0702 |00b3: aput-object v21, v7, v2 │ │ +43466e: 6e10 bc5c 0a00 |00b5: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434674: 0c02 |00b8: move-result-object v2 │ │ +434676: 131b 0900 |00b9: const/16 v27, #int 9 // #9 │ │ +43467a: 4d02 071b |00bb: aput-object v2, v7, v27 │ │ +43467e: 1302 0a00 |00bd: const/16 v2, #int 10 // #a │ │ +434682: 4614 0114 |00bf: aget-object v20, v1, v20 │ │ +434686: 7401 bc5c 1400 |00c1: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +43468c: 0c14 |00c4: move-result-object v20 │ │ +43468e: 4d14 0702 |00c5: aput-object v20, v7, v2 │ │ +434692: 1302 0b00 |00c7: const/16 v2, #int 11 // #b │ │ +434696: 6e10 bc5c 0a00 |00c9: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +43469c: 0c14 |00cc: move-result-object v20 │ │ +43469e: 4d14 0702 |00cd: aput-object v20, v7, v2 │ │ +4346a2: 1302 0c00 |00cf: const/16 v2, #int 12 // #c │ │ +4346a6: 4614 0116 |00d1: aget-object v20, v1, v22 │ │ +4346aa: 7401 bc5c 1400 |00d3: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4346b0: 0c14 |00d6: move-result-object v20 │ │ +4346b2: 4d14 0702 |00d7: aput-object v20, v7, v2 │ │ +4346b6: 1302 0d00 |00d9: const/16 v2, #int 13 // #d │ │ +4346ba: 6e10 bc5c 0a00 |00db: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4346c0: 0c14 |00de: move-result-object v20 │ │ +4346c2: 4d14 0702 |00df: aput-object v20, v7, v2 │ │ +4346c6: 1302 0e00 |00e1: const/16 v2, #int 14 // #e │ │ +4346ca: 4614 0118 |00e3: aget-object v20, v1, v24 │ │ +4346ce: 7401 bc5c 1400 |00e5: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4346d4: 0c14 |00e8: move-result-object v20 │ │ +4346d6: 4d14 0702 |00e9: aput-object v20, v7, v2 │ │ +4346da: 1302 0f00 |00eb: const/16 v2, #int 15 // #f │ │ +4346de: 6e10 bc5c 0a00 |00ed: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4346e4: 0c14 |00f0: move-result-object v20 │ │ +4346e6: 4d14 0702 |00f1: aput-object v20, v7, v2 │ │ +4346ea: 1302 1000 |00f3: const/16 v2, #int 16 // #10 │ │ +4346ee: 4614 011a |00f5: aget-object v20, v1, v26 │ │ +4346f2: 7401 bc5c 1400 |00f7: invoke-virtual/range {v20}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4346f8: 0c14 |00fa: move-result-object v20 │ │ +4346fa: 4d14 0702 |00fb: aput-object v20, v7, v2 │ │ +4346fe: 1302 1100 |00fd: const/16 v2, #int 17 // #11 │ │ +434702: 6e10 bc5c 0a00 |00ff: invoke-virtual {v10}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434708: 0c0a |0102: move-result-object v10 │ │ +43470a: 4d0a 0702 |0103: aput-object v10, v7, v2 │ │ +43470e: 1302 1200 |0105: const/16 v2, #int 18 // #12 │ │ +434712: 6e10 73b9 0300 |0107: invoke-virtual {v3}, Lorg/purple/smoke/Cryptography;.chatEncryptionPublicKeyDigest:()[B // method@b973 │ │ +434718: 0c03 |010a: move-result-object v3 │ │ +43471a: 4d03 0702 |010b: aput-object v3, v7, v2 │ │ +43471e: 7110 f0bb 0700 |010d: invoke-static {v7}, Lorg/purple/smoke/Miscellaneous;.joinByteArrays:([[B)[B // method@bbf0 │ │ +434724: 0c02 |0110: move-result-object v2 │ │ +434726: 7130 c4b9 5602 |0111: invoke-static {v6, v5, v2}, Lorg/purple/smoke/Cryptography;.verifySignature:(Ljava/security/PublicKey;[B[B)Z // method@b9c4 │ │ +43472c: 0a02 |0114: move-result v2 │ │ +43472e: 3902 ea00 |0115: if-nez v2, 01ff // +00ea │ │ +434732: 0e00 |0117: return-void │ │ +434734: 0217 0500 |0118: move/from16 v23, v5 │ │ +434738: 0819 0a00 |011a: move-object/from16 v25, v10 │ │ +43473c: 131b 0900 |011c: const/16 v27, #int 9 // #9 │ │ +434740: 7401 bc5c 1600 |011e: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434746: 0c02 |0121: move-result-object v2 │ │ +434748: 1223 |0122: const/4 v3, #int 2 // #2 │ │ +43474a: 7120 c254 3200 |0123: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +434750: 0c02 |0126: move-result-object v2 │ │ +434752: d809 0901 |0127: add-int/lit8 v9, v9, #int 1 // #01 │ │ +434756: 072c |0129: move-object v12, v2 │ │ +434758: 2900 d700 |012a: goto/16 0201 // +00d7 │ │ +43475c: 0217 0500 |012c: move/from16 v23, v5 │ │ +434760: 0819 0a00 |012e: move-object/from16 v25, v10 │ │ +434764: 1223 |0130: const/4 v3, #int 2 // #2 │ │ +434766: 131b 0900 |0131: const/16 v27, #int 9 // #9 │ │ +43476a: 7401 bc5c 1600 |0133: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434770: 0c02 |0136: move-result-object v2 │ │ +434772: 7120 c254 3200 |0137: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +434778: 0c02 |013a: move-result-object v2 │ │ +43477a: 7110 e6bb 0200 |013b: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayToLong:([B)J // method@bbe6 │ │ +434780: 0b12 |013e: move-result-wide v18 │ │ +434782: 1602 0000 |013f: const-wide/16 v2, #int 0 // #0 │ │ +434786: 3105 1202 |0141: cmp-long v5, v18, v2 │ │ +43478a: 3b05 bc00 |0143: if-gez v5, 01ff // +00bc │ │ +43478e: 0e00 |0145: return-void │ │ +434790: 0217 0500 |0146: move/from16 v23, v5 │ │ +434794: 0819 0a00 |0148: move-object/from16 v25, v10 │ │ +434798: 1223 |014a: const/4 v3, #int 2 // #2 │ │ +43479a: 131b 0900 |014b: const/16 v27, #int 9 // #9 │ │ +43479e: 2202 ef0a |014d: new-instance v2, Ljava/lang/String; // type@0aef │ │ +4347a2: 7401 bc5c 1600 |014f: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4347a8: 0c05 |0152: move-result-object v5 │ │ +4347aa: 7120 c254 3500 |0153: invoke-static {v5, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +4347b0: 0c03 |0156: move-result-object v3 │ │ +4347b2: 6205 e42c |0157: sget-object v5, Ljava/nio/charset/StandardCharsets;.UTF_8:Ljava/nio/charset/Charset; // field@2ce4 │ │ +4347b6: 7030 af5c 3205 |0159: invoke-direct {v2, v3, v5}, Ljava/lang/String;.:([BLjava/nio/charset/Charset;)V // method@5caf │ │ +4347bc: 1303 2e00 |015c: const/16 v3, #int 46 // #2e │ │ +4347c0: 6e20 c05c 3200 |015e: invoke-virtual {v2, v3}, Ljava/lang/String;.indexOf:(I)I // method@5cc0 │ │ +4347c6: 0a05 |0161: move-result v5 │ │ +4347c8: 3905 0a00 |0162: if-nez v5, 016c // +000a │ │ +4347cc: 6e20 c05c 3200 |0164: invoke-virtual {v2, v3}, Ljava/lang/String;.indexOf:(I)I // method@5cc0 │ │ +4347d2: 0a03 |0167: move-result v3 │ │ +4347d4: 6e20 cc5c 3200 |0168: invoke-virtual {v2, v3}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ +4347da: 0c11 |016b: move-result-object v17 │ │ +4347dc: d809 0901 |016c: add-int/lit8 v9, v9, #int 1 // #01 │ │ +4347e0: 0810 0200 |016e: move-object/from16 v16, v2 │ │ +4347e4: 2900 9100 |0170: goto/16 0201 // +0091 │ │ +4347e8: 0217 0500 |0172: move/from16 v23, v5 │ │ +4347ec: 0819 0a00 |0174: move-object/from16 v25, v10 │ │ +4347f0: 131b 0900 |0176: const/16 v27, #int 9 // #9 │ │ +4347f4: 7401 bc5c 1600 |0178: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4347fa: 0c02 |017b: move-result-object v2 │ │ +4347fc: 1223 |017c: const/4 v3, #int 2 // #2 │ │ +4347fe: 7120 c254 3200 |017d: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +434804: 0c02 |0180: move-result-object v2 │ │ +434806: 6203 1855 |0181: sget-object v3, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ +43480a: 1205 |0183: const/4 v5, #int 0 // #0 │ │ +43480c: 4803 0305 |0184: aget-byte v3, v3, v5 │ │ +434810: 3334 1900 |0186: if-ne v4, v3, 019f // +0019 │ │ +434814: 6203 b75f |0188: sget-object v3, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb7 │ │ +434818: 6205 b65f |018a: sget-object v5, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb6 │ │ +43481c: 6e30 2cba 5302 |018c: invoke-virtual {v3, v5, v2}, Lorg/purple/smoke/Database;.steamOidFromFileIdentity:(Lorg/purple/smoke/Cryptography;[B)I // method@ba2c │ │ +434822: 0a06 |018f: move-result v6 │ │ +434824: 12f7 |0190: const/4 v7, #int -1 // #ff │ │ +434826: 3776 0e00 |0191: if-le v6, v7, 019f // +000e │ │ +43482a: d806 06ff |0193: add-int/lit8 v6, v6, #int -1 // #ff │ │ +43482e: 6e40 20ba 5367 |0195: invoke-virtual {v3, v5, v7, v6}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba20 │ │ +434834: 0c03 |0198: move-result-object v3 │ │ +434836: 3803 0600 |0199: if-eqz v3, 019f // +0006 │ │ +43483a: 7020 17be 3000 |019b: invoke-direct {v0, v3}, Lorg/purple/smoke/SteamKeyExchange;.shareB:(Lorg/purple/smoke/SteamElement;)V // method@be17 │ │ +434840: 0e00 |019e: return-void │ │ +434842: d809 0901 |019f: add-int/lit8 v9, v9, #int 1 // #01 │ │ +434846: 072b |01a1: move-object v11, v2 │ │ +434848: 285f |01a2: goto 0201 // +005f │ │ +43484a: 0217 0500 |01a3: move/from16 v23, v5 │ │ +43484e: 0819 0a00 |01a5: move-object/from16 v25, v10 │ │ +434852: 131b 0900 |01a7: const/16 v27, #int 9 // #9 │ │ +434856: 7401 bc5c 1600 |01a9: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +43485c: 0c02 |01ac: move-result-object v2 │ │ +43485e: 1223 |01ad: const/4 v3, #int 2 // #2 │ │ +434860: 7120 c254 3200 |01ae: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +434866: 0c02 |01b1: move-result-object v2 │ │ +434868: d809 0901 |01b2: add-int/lit8 v9, v9, #int 1 // #01 │ │ +43486c: 072e |01b4: move-object v14, v2 │ │ +43486e: 284c |01b5: goto 0201 // +004c │ │ +434870: 0217 0500 |01b6: move/from16 v23, v5 │ │ +434874: 0819 0a00 |01b8: move-object/from16 v25, v10 │ │ +434878: 1223 |01ba: const/4 v3, #int 2 // #2 │ │ +43487a: 131b 0900 |01bb: const/16 v27, #int 9 // #9 │ │ +43487e: 7401 bc5c 1600 |01bd: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +434884: 0c02 |01c0: move-result-object v2 │ │ +434886: 7120 c254 3200 |01c1: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +43488c: 0c02 |01c4: move-result-object v2 │ │ +43488e: d809 0901 |01c5: add-int/lit8 v9, v9, #int 1 // #01 │ │ +434892: 072f |01c7: move-object v15, v2 │ │ +434894: 2839 |01c8: goto 0201 // +0039 │ │ +434896: 0217 0500 |01c9: move/from16 v23, v5 │ │ +43489a: 0819 0a00 |01cb: move-object/from16 v25, v10 │ │ +43489e: 1223 |01cd: const/4 v3, #int 2 // #2 │ │ +4348a0: 131b 0900 |01ce: const/16 v27, #int 9 // #9 │ │ +4348a4: 7401 bc5c 1600 |01d0: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4348aa: 0c02 |01d3: move-result-object v2 │ │ +4348ac: 7120 c254 3200 |01d4: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +4348b2: 0c02 |01d7: move-result-object v2 │ │ +4348b4: d809 0901 |01d8: add-int/lit8 v9, v9, #int 1 // #01 │ │ +4348b8: 072d |01da: move-object v13, v2 │ │ +4348ba: 2826 |01db: goto 0201 // +0026 │ │ +4348bc: 0217 0500 |01dc: move/from16 v23, v5 │ │ +4348c0: 0819 0a00 |01de: move-object/from16 v25, v10 │ │ +4348c4: 1223 |01e0: const/4 v3, #int 2 // #2 │ │ +4348c6: 131b 0900 |01e1: const/16 v27, #int 9 // #9 │ │ +4348ca: 7401 bc5c 1600 |01e3: invoke-virtual/range {v22}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4348d0: 0c02 |01e6: move-result-object v2 │ │ +4348d2: 7120 c254 3200 |01e7: invoke-static {v2, v3}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +4348d8: 0c02 |01ea: move-result-object v2 │ │ +4348da: 7110 e6bb 0200 |01eb: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.byteArrayToLong:([B)J // method@bbe6 │ │ +4348e0: 0b02 |01ee: move-result-wide v2 │ │ +4348e2: 7100 065d 0000 |01ef: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +4348e8: 0b05 |01f2: move-result-wide v5 │ │ +4348ea: bc25 |01f3: sub-long/2addr v5, v2 │ │ +4348ec: 7120 735c 6500 |01f4: invoke-static {v5, v6}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ +4348f2: 0b02 |01f7: move-result-wide v2 │ │ +4348f4: 1605 3075 |01f8: const-wide/16 v5, #int 30000 // #7530 │ │ +4348f8: 3107 0205 |01fa: cmp-long v7, v2, v5 │ │ +4348fc: 3d07 0300 |01fc: if-lez v7, 01ff // +0003 │ │ +434900: 0e00 |01fe: return-void │ │ +434902: d809 0901 |01ff: add-int/lit8 v9, v9, #int 1 // #01 │ │ +434906: d808 0801 |0201: add-int/lit8 v8, v8, #int 1 // #01 │ │ +43490a: 0802 1e00 |0203: move-object/from16 v2, v30 │ │ +43490e: 0205 1700 |0205: move/from16 v5, v23 │ │ +434912: 080a 1900 |0207: move-object/from16 v10, v25 │ │ +434916: 1203 |0209: const/4 v3, #int 0 // #0 │ │ +434918: 1216 |020a: const/4 v6, #int 1 // #1 │ │ +43491a: 2900 31fe |020b: goto/16 003c // -01cf │ │ +43491e: 0819 0a00 |020d: move-object/from16 v25, v10 │ │ +434922: 6201 1855 |020f: sget-object v1, Lorg/purple/smoke/Messages;.STEAM_KEY_EXCHANGE:[B // field@5518 │ │ +434926: 1202 |0211: const/4 v2, #int 0 // #0 │ │ +434928: 4801 0102 |0212: aget-byte v1, v1, v2 │ │ +43492c: 3314 c000 |0214: if-ne v4, v1, 02d4 // +00c0 │ │ +434930: 6201 b75f |0216: sget-object v1, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb7 │ │ +434934: 6202 b65f |0218: sget-object v2, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb6 │ │ +434938: 6e30 feb9 210c |021a: invoke-virtual {v1, v2, v12}, Lorg/purple/smoke/Database;.nameSipHashIdFromDigest:(Lorg/purple/smoke/Cryptography;[B)[Ljava/lang/String; // method@b9fe │ │ +43493e: 0c03 |021d: move-result-object v3 │ │ +434940: 1214 |021e: const/4 v4, #int 1 // #1 │ │ +434942: 4605 0304 |021f: aget-object v5, v3, v4 │ │ +434946: 6e30 19ba 2105 |0221: invoke-virtual {v1, v2, v5}, Lorg/purple/smoke/Database;.readParticipantOptions:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba19 │ │ +43494c: 0c05 |0224: move-result-object v5 │ │ +43494e: 1a06 f38f |0225: const-string v6, "optional_steam = true" // string@8ff3 │ │ +434952: 6e20 b65c 6500 |0227: invoke-virtual {v5, v6}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +434958: 0a05 |022a: move-result v5 │ │ +43495a: 3805 0300 |022b: if-eqz v5, 022e // +0003 │ │ +43495e: 0e00 |022d: return-void │ │ +434960: 2205 281b |022e: new-instance v5, Lorg/purple/smoke/SteamElement; // type@1b28 │ │ +434964: 7010 06be 0500 |0230: invoke-direct {v5}, Lorg/purple/smoke/SteamElement;.:()V // method@be06 │ │ +43496a: 4606 0304 |0233: aget-object v6, v3, v4 │ │ +43496e: 6e10 c35c 0600 |0235: invoke-virtual {v6}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +434974: 0a04 |0238: move-result v4 │ │ +434976: 3804 0800 |0239: if-eqz v4, 0241 // +0008 │ │ +43497a: 1204 |023b: const/4 v4, #int 0 // #0 │ │ +43497c: 4603 0304 |023c: aget-object v3, v3, v4 │ │ +434980: 5b53 965f |023e: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ +434984: 2822 |0240: goto 0262 // +0022 │ │ +434986: 1204 |0241: const/4 v4, #int 0 // #0 │ │ +434988: 2206 f10a |0242: new-instance v6, Ljava/lang/StringBuilder; // type@0af1 │ │ +43498c: 7010 ee5c 0600 |0244: invoke-direct {v6}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +434992: 4607 0304 |0247: aget-object v7, v3, v4 │ │ +434996: 6e20 f95c 7600 |0249: invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43499c: 1a04 9800 |024c: const-string v4, " (" // string@0098 │ │ +4349a0: 6e20 f95c 4600 |024e: invoke-virtual {v6, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4349a6: 1214 |0251: const/4 v4, #int 1 // #1 │ │ +4349a8: 4603 0304 |0252: aget-object v3, v3, v4 │ │ +4349ac: 6e20 f95c 3600 |0254: invoke-virtual {v6, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4349b2: 1a03 ec03 |0257: const-string v3, ")" // string@03ec │ │ +4349b6: 6e20 f95c 3600 |0259: invoke-virtual {v6, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4349bc: 6e10 035d 0600 |025c: invoke-virtual {v6}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4349c2: 0c03 |025f: move-result-object v3 │ │ +4349c4: 5b53 965f |0260: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ +4349c8: 080a 1000 |0262: move-object/from16 v10, v16 │ │ +4349cc: 1303 2e00 |0264: const/16 v3, #int 46 // #2e │ │ +4349d0: 6e20 c05c 3a00 |0266: invoke-virtual {v10, v3}, Ljava/lang/String;.indexOf:(I)I // method@5cc0 │ │ +4349d6: 0a03 |0269: move-result v3 │ │ +4349d8: 3903 2500 |026a: if-nez v3, 028f // +0025 │ │ +4349dc: 2203 f10a |026c: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ +4349e0: 7010 ee5c 0300 |026e: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4349e6: 1a04 374c |0271: const-string v4, "Smoke_" // string@4c37 │ │ +4349ea: 6e20 f95c 4300 |0273: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4349f0: 1304 2000 |0276: const/16 v4, #int 32 // #20 │ │ +4349f4: 7110 adb9 0400 |0278: invoke-static {v4}, Lorg/purple/smoke/Cryptography;.randomBytes:(I)[B // method@b9ad │ │ +4349fa: 0c04 |027b: move-result-object v4 │ │ +4349fc: 7110 e4bb 0400 |027c: invoke-static {v4}, Lorg/purple/smoke/Miscellaneous;.byteArrayAsHexString:([B)Ljava/lang/String; // method@bbe4 │ │ +434a02: 0c04 |027f: move-result-object v4 │ │ +434a04: 6e20 f95c 4300 |0280: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +434a0a: 080a 1100 |0283: move-object/from16 v10, v17 │ │ +434a0e: 6e20 f95c a300 |0285: invoke-virtual {v3, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +434a14: 6e10 035d 0300 |0288: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +434a1a: 0c03 |028b: move-result-object v3 │ │ +434a1c: 5b53 985f |028c: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f98 │ │ +434a20: 2803 |028e: goto 0291 // +0003 │ │ +434a22: 5b5a 985f |028f: iput-object v10, v5, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f98 │ │ +434a26: 5b5d 9a5f |0291: iput-object v13, v5, Lorg/purple/smoke/SteamElement;.m_ephemeralPublicKey:[B // field@5f9a │ │ +434a2a: 5b5e 9b5f |0293: iput-object v14, v5, Lorg/purple/smoke/SteamElement;.m_fileDigest:[B // field@5f9b │ │ +434a2e: 5b5b 9c5f |0295: iput-object v11, v5, Lorg/purple/smoke/SteamElement;.m_fileIdentity:[B // field@5f9c │ │ +434a32: 5453 985f |0297: iget-object v3, v5, Lorg/purple/smoke/SteamElement;.m_displayFileName:Ljava/lang/String; // field@5f98 │ │ +434a36: 5b53 9d5f |0299: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_fileName:Ljava/lang/String; // field@5f9d │ │ +434a3a: 0508 1200 |029b: move-wide/from16 v8, v18 │ │ +434a3e: 5a58 9e5f |029d: iput-wide v8, v5, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ +434a42: 1223 |029f: const/4 v3, #int 2 // #2 │ │ +434a44: 2333 0f1c |02a0: new-array v3, v3, [[B // type@1c0f │ │ +434a48: 7100 6fb9 0000 |02a2: invoke-static {}, Lorg/purple/smoke/Cryptography;.aes256KeyBytes:()[B // method@b96f │ │ +434a4e: 0c04 |02a5: move-result-object v4 │ │ +434a50: 1206 |02a6: const/4 v6, #int 0 // #0 │ │ +434a52: 4d04 0306 |02a7: aput-object v4, v3, v6 │ │ +434a56: 7100 bdb9 0000 |02a9: invoke-static {}, Lorg/purple/smoke/Cryptography;.sha512KeyBytes:()[B // method@b9bd │ │ +434a5c: 0c04 |02ac: move-result-object v4 │ │ +434a5e: 1217 |02ad: const/4 v7, #int 1 // #1 │ │ +434a60: 4d04 0307 |02ae: aput-object v4, v3, v7 │ │ +434a64: 7110 f0bb 0300 |02b0: invoke-static {v3}, Lorg/purple/smoke/Miscellaneous;.joinByteArrays:([[B)[B // method@bbf0 │ │ +434a6a: 0c03 |02b3: move-result-object v3 │ │ +434a6c: 5b53 9f5f |02b4: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ +434a70: 4803 0f06 |02b6: aget-byte v3, v15, v6 │ │ +434a74: 6204 b553 |02b8: sget-object v4, Lorg/purple/smoke/Cryptography;.MESSAGES_KEY_TYPES:[B // field@53b5 │ │ +434a78: 4804 0406 |02ba: aget-byte v4, v4, v6 │ │ +434a7c: 3343 0500 |02bc: if-ne v3, v4, 02c1 // +0005 │ │ +434a80: 1a03 ae3f |02be: const-string v3, "McEliece" // string@3fae │ │ +434a84: 2803 |02c0: goto 02c3 // +0003 │ │ +434a86: 1a03 6b46 |02c1: const-string v3, "RSA" // string@466b │ │ +434a8a: 5b53 a05f |02c3: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_keyType:Ljava/lang/String; // field@5fa0 │ │ +434a8e: 1603 0000 |02c5: const-wide/16 v3, #int 0 // #0 │ │ +434a92: 5a53 a35f |02c7: iput-wide v3, v5, Lorg/purple/smoke/SteamElement;.m_readInterval:J // field@5fa3 │ │ +434a96: 1a03 ff61 |02c9: const-string v3, "created private-key pair" // string@61ff │ │ +434a9a: 5b53 a65f |02cb: iput-object v3, v5, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa6 │ │ +434a9e: 6e30 40ba 2105 |02cd: invoke-virtual {v1, v2, v5}, Lorg/purple/smoke/Database;.writeSteam:(Lorg/purple/smoke/Cryptography;Lorg/purple/smoke/SteamElement;)V // method@ba40 │ │ +434aa4: 7020 17be 5000 |02d0: invoke-direct {v0, v5}, Lorg/purple/smoke/SteamKeyExchange;.shareB:(Lorg/purple/smoke/SteamElement;)V // method@be17 │ │ +434aaa: 2832 |02d3: goto 0305 // +0032 │ │ +434aac: 6201 b75f |02d4: sget-object v1, Lorg/purple/smoke/SteamKeyExchange;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fb7 │ │ +434ab0: 6202 b65f |02d6: sget-object v2, Lorg/purple/smoke/SteamKeyExchange;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fb6 │ │ +434ab4: 6e30 2cba 210b |02d8: invoke-virtual {v1, v2, v11}, Lorg/purple/smoke/Database;.steamOidFromFileIdentity:(Lorg/purple/smoke/Cryptography;[B)I // method@ba2c │ │ +434aba: 0a03 |02db: move-result v3 │ │ +434abc: d804 03ff |02dc: add-int/lit8 v4, v3, #int -1 // #ff │ │ +434ac0: 12f5 |02de: const/4 v5, #int -1 // #ff │ │ +434ac2: 6e40 20ba 2145 |02df: invoke-virtual {v1, v2, v5, v4}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba20 │ │ +434ac8: 0c04 |02e2: move-result-object v4 │ │ +434aca: 3904 0300 |02e3: if-nez v4, 02e6 // +0003 │ │ +434ace: 0e00 |02e5: return-void │ │ +434ad0: 5444 995f |02e6: iget-object v4, v4, Lorg/purple/smoke/SteamElement;.m_ephemeralPrivateKey:[B // field@5f99 │ │ +434ad4: 7110 a7b9 0400 |02e8: invoke-static {v4}, Lorg/purple/smoke/Cryptography;.privateKeyFromBytes:([B)Ljava/security/PrivateKey; // method@b9a7 │ │ +434ada: 0c04 |02eb: move-result-object v4 │ │ +434adc: 3904 0300 |02ec: if-nez v4, 02ef // +0003 │ │ +434ae0: 0e00 |02ee: return-void │ │ +434ae2: 7120 a1b9 d400 |02ef: invoke-static {v4, v13}, Lorg/purple/smoke/Cryptography;.pkiDecrypt:(Ljava/security/PrivateKey;[B)[B // method@b9a1 │ │ +434ae8: 0c08 |02f2: move-result-object v8 │ │ +434aea: 3908 0300 |02f3: if-nez v8, 02f6 // +0003 │ │ +434aee: 0e00 |02f5: return-void │ │ +434af0: 1209 |02f6: const/4 v9, #int 0 // #0 │ │ +434af2: 120a |02f7: const/4 v10, #int 0 // #0 │ │ +434af4: 0716 |02f8: move-object v6, v1 │ │ +434af6: 0727 |02f9: move-object v7, v2 │ │ +434af8: 013b |02fa: move v11, v3 │ │ +434afa: 7406 43ba 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@ba43 │ │ +434b00: 1a04 7996 |02fe: const-string v4, "received private-key pair" // string@9679 │ │ +434b04: 0805 1900 |0300: move-object/from16 v5, v25 │ │ +434b08: 6e53 46ba 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@ba46 │ │ +434b0e: 0e00 |0305: return-void │ │ +434b10: 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 │ │ @@ -749339,53 +749338,53 @@ │ │ type : '([B[B)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 68 16-bit code units │ │ -434378: |[434378] org.purple.smoke.SteamKeyExchange.append:([B[B)V │ │ -434388: 3803 4300 |0000: if-eqz v3, 0043 // +0043 │ │ -43438c: 2130 |0002: array-length v0, v3 │ │ -43438e: 3800 4000 |0003: if-eqz v0, 0043 // +0040 │ │ -434392: 3804 3e00 |0005: if-eqz v4, 0043 // +003e │ │ -434396: 2140 |0007: array-length v0, v4 │ │ -434398: 3900 0300 |0008: if-nez v0, 000b // +0003 │ │ -43439c: 2839 |000a: goto 0043 // +0039 │ │ -43439e: 5420 b25f |000b: iget-object v0, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb2 │ │ -4343a2: 6e10 ef60 0000 |000d: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -4343a8: 0c00 |0010: move-result-object v0 │ │ -4343aa: 6e10 eb60 0000 |0011: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ -4343b0: 5420 b15f |0014: iget-object v0, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairs:Ljava/util/ArrayList; // field@5fb1 │ │ -4343b4: 2201 2b1b |0016: new-instance v1, Lorg/purple/smoke/SteamKeyExchange$Pair; // type@1b2b │ │ -4343b8: 7030 0cbe 3104 |0018: invoke-direct {v1, v3, v4}, Lorg/purple/smoke/SteamKeyExchange$Pair;.:([B[B)V // method@be0c │ │ -4343be: 6e20 9f5f 1000 |001b: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9f │ │ -4343c4: 5423 b25f |001e: iget-object v3, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb2 │ │ -4343c8: 6e10 ef60 0300 |0020: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -4343ce: 0c03 |0023: move-result-object v3 │ │ -4343d0: 6e10 ec60 0300 |0024: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -4343d6: 280f |0027: goto 0036 // +000f │ │ -4343d8: 0d03 |0028: move-exception v3 │ │ -4343da: 5424 b25f |0029: iget-object v4, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb2 │ │ -4343de: 6e10 ef60 0400 |002b: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ -4343e4: 0c04 |002e: move-result-object v4 │ │ -4343e6: 6e10 ec60 0400 |002f: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ -4343ec: 2703 |0032: throw v3 │ │ -4343ee: 5423 b25f |0033: iget-object v3, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb2 │ │ -4343f2: 28eb |0035: goto 0020 // -0015 │ │ -4343f4: 5423 b45f |0036: iget-object v3, v2, Lorg/purple/smoke/SteamKeyExchange;.m_parseSchedulerMutex:Ljava/lang/Object; // field@5fb4 │ │ -4343f8: 1d03 |0038: monitor-enter v3 │ │ -4343fa: 5424 b45f |0039: iget-object v4, v2, Lorg/purple/smoke/SteamKeyExchange;.m_parseSchedulerMutex:Ljava/lang/Object; // field@5fb4 │ │ -4343fe: 6e10 945c 0400 |003b: invoke-virtual {v4}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ -434404: 1e03 |003e: monitor-exit v3 │ │ -434406: 2804 |003f: goto 0043 // +0004 │ │ -434408: 0d04 |0040: move-exception v4 │ │ -43440a: 1e03 |0041: monitor-exit v3 │ │ -43440c: 2704 |0042: throw v4 │ │ -43440e: 0e00 |0043: return-void │ │ +434374: |[434374] org.purple.smoke.SteamKeyExchange.append:([B[B)V │ │ +434384: 3803 4300 |0000: if-eqz v3, 0043 // +0043 │ │ +434388: 2130 |0002: array-length v0, v3 │ │ +43438a: 3800 4000 |0003: if-eqz v0, 0043 // +0040 │ │ +43438e: 3804 3e00 |0005: if-eqz v4, 0043 // +003e │ │ +434392: 2140 |0007: array-length v0, v4 │ │ +434394: 3900 0300 |0008: if-nez v0, 000b // +0003 │ │ +434398: 2839 |000a: goto 0043 // +0039 │ │ +43439a: 5420 b25f |000b: iget-object v0, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb2 │ │ +43439e: 6e10 ef60 0000 |000d: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +4343a4: 0c00 |0010: move-result-object v0 │ │ +4343a6: 6e10 eb60 0000 |0011: invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.lock:()V // method@60eb │ │ +4343ac: 5420 b15f |0014: iget-object v0, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairs:Ljava/util/ArrayList; // field@5fb1 │ │ +4343b0: 2201 2b1b |0016: new-instance v1, Lorg/purple/smoke/SteamKeyExchange$Pair; // type@1b2b │ │ +4343b4: 7030 0cbe 3104 |0018: invoke-direct {v1, v3, v4}, Lorg/purple/smoke/SteamKeyExchange$Pair;.:([B[B)V // method@be0c │ │ +4343ba: 6e20 9f5f 1000 |001b: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9f │ │ +4343c0: 5423 b25f |001e: iget-object v3, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb2 │ │ +4343c4: 6e10 ef60 0300 |0020: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +4343ca: 0c03 |0023: move-result-object v3 │ │ +4343cc: 6e10 ec60 0300 |0024: invoke-virtual {v3}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +4343d2: 280f |0027: goto 0036 // +000f │ │ +4343d4: 0d03 |0028: move-exception v3 │ │ +4343d6: 5424 b25f |0029: iget-object v4, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb2 │ │ +4343da: 6e10 ef60 0400 |002b: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;.writeLock:()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; // method@60ef │ │ +4343e0: 0c04 |002e: move-result-object v4 │ │ +4343e2: 6e10 ec60 0400 |002f: invoke-virtual {v4}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;.unlock:()V // method@60ec │ │ +4343e8: 2703 |0032: throw v3 │ │ +4343ea: 5423 b25f |0033: iget-object v3, v2, Lorg/purple/smoke/SteamKeyExchange;.m_pairsMutex:Ljava/util/concurrent/locks/ReentrantReadWriteLock; // field@5fb2 │ │ +4343ee: 28eb |0035: goto 0020 // -0015 │ │ +4343f0: 5423 b45f |0036: iget-object v3, v2, Lorg/purple/smoke/SteamKeyExchange;.m_parseSchedulerMutex:Ljava/lang/Object; // field@5fb4 │ │ +4343f4: 1d03 |0038: monitor-enter v3 │ │ +4343f6: 5424 b45f |0039: iget-object v4, v2, Lorg/purple/smoke/SteamKeyExchange;.m_parseSchedulerMutex:Ljava/lang/Object; // field@5fb4 │ │ +4343fa: 6e10 945c 0400 |003b: invoke-virtual {v4}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ +434400: 1e03 |003e: monitor-exit v3 │ │ +434402: 2804 |003f: goto 0043 // +0004 │ │ +434404: 0d04 |0040: move-exception v4 │ │ +434406: 1e03 |0041: monitor-exit v3 │ │ +434408: 2704 |0042: throw v4 │ │ +43440a: 0e00 |0043: return-void │ │ catches : 5 │ │ 0x000b - 0x0014 │ │ Ljava/lang/Exception; -> 0x0043 │ │ 0x0014 - 0x001e │ │ Ljava/lang/Exception; -> 0x0033 │ │ -> 0x0028 │ │ 0x001e - 0x0039 │ │ @@ -749487,22 +749486,22 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 13 16-bit code units │ │ -435eb0: |[435eb0] org.purple.smoke.SteamReader.:()V │ │ -435ec0: 7100 91b9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ -435ec6: 0c00 |0003: move-result-object v0 │ │ -435ec8: 6900 c35f |0004: sput-object v0, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ -435ecc: 7100 f3b9 0000 |0006: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9f3 │ │ -435ed2: 0c00 |0009: move-result-object v0 │ │ -435ed4: 6900 c45f |000a: sput-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ -435ed8: 0e00 |000c: return-void │ │ +435eac: |[435eac] org.purple.smoke.SteamReader.:()V │ │ +435ebc: 7100 91b9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ +435ec2: 0c00 |0003: move-result-object v0 │ │ +435ec4: 6900 c35f |0004: sput-object v0, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ +435ec8: 7100 f3b9 0000 |0006: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9f3 │ │ +435ece: 0c00 |0009: move-result-object v0 │ │ +435ed0: 6900 c45f |000a: sput-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ +435ed4: 0e00 |000c: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=53 │ │ 0x0006 line=54 │ │ locals : │ │ │ │ #1 : (in Lorg/purple/smoke/SteamReader;) │ │ @@ -749510,106 +749509,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 │ │ -435edc: |[435edc] org.purple.smoke.SteamReader.:(Ljava/lang/String;IJ)V │ │ -435eec: 7010 8f5c 0700 |0000: invoke-direct {v7}, Ljava/lang/Object;.:()V // method@5c8f │ │ -435ef2: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -435ef4: 5b70 b95f |0004: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb9 │ │ -435ef8: 5b70 ba5f |0006: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fba │ │ -435efc: 5b70 bb5f |0008: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fbb │ │ -435f00: 5b70 be5f |000a: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fbe │ │ -435f04: 5b70 bf5f |000c: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbf │ │ -435f08: 5b70 c05f |000e: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fc0 │ │ -435f0c: 5b70 c25f |0010: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fc2 │ │ -435f10: 5b70 bc5f |0012: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ -435f14: 5b70 c15f |0014: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc1 │ │ -435f18: 2201 e60a |0016: new-instance v1, Ljava/lang/Object; // type@0ae6 │ │ -435f1c: 7010 8f5c 0100 |0018: invoke-direct {v1}, Ljava/lang/Object;.:()V // method@5c8f │ │ -435f22: 5b71 bd5f |001b: iput-object v1, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbd │ │ -435f26: 1301 2e00 |001d: const/16 v1, #int 46 // #2e │ │ -435f2a: 1602 0000 |001f: const-wide/16 v2, #int 0 // #0 │ │ -435f2e: 1204 |0021: const/4 v4, #int 0 // #0 │ │ -435f30: 6e20 c45c 1800 |0022: invoke-virtual {v8, v1}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ -435f36: 0a05 |0025: move-result v5 │ │ -435f38: 3d05 2d00 |0026: if-lez v5, 0053 // +002d │ │ -435f3c: 1a05 8960 |0028: const-string v5, "content://" // string@6089 │ │ -435f40: 6e20 ca5c 5800 |002a: invoke-virtual {v8, v5}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ -435f46: 0a05 |002d: move-result v5 │ │ -435f48: 3805 2500 |002e: if-eqz v5, 0053 // +0025 │ │ -435f4c: 6e20 c45c 1800 |0030: invoke-virtual {v8, v1}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ -435f52: 0a01 |0033: move-result v1 │ │ -435f54: 6e30 cd5c 4801 |0034: invoke-virtual {v8, v4, v1}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ -435f5a: 0c08 |0037: move-result-object v8 │ │ -435f5c: 7110 ac04 0800 |0038: invoke-static {v8}, Landroid/net/Uri;.parse:(Ljava/lang/String;)Landroid/net/Uri; // method@04ac │ │ -435f62: 0c08 |003b: move-result-object v8 │ │ -435f64: 7100 2bbd 0000 |003c: invoke-static {}, Lorg/purple/smoke/Smoke;.getApplication:()Lorg/purple/smoke/Smoke; // method@bd2b │ │ -435f6a: 0c01 |003f: move-result-object v1 │ │ -435f6c: 6e10 2cbd 0100 |0040: invoke-virtual {v1}, Lorg/purple/smoke/Smoke;.getContentResolver:()Landroid/content/ContentResolver; // method@bd2c │ │ -435f72: 0c01 |0043: move-result-object v1 │ │ -435f74: 1a05 fc95 |0044: const-string v5, "r" // string@95fc │ │ -435f78: 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 │ │ -435f7e: 0c08 |0049: move-result-object v8 │ │ -435f80: 5b78 b95f |004a: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb9 │ │ -435f84: 6e10 f101 0800 |004c: invoke-virtual {v8}, Landroid/content/res/AssetFileDescriptor;.createInputStream:()Ljava/io/FileInputStream; // method@01f1 │ │ -435f8a: 0c08 |004f: move-result-object v8 │ │ -435f8c: 5b78 bc5f |0050: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ -435f90: 2808 |0052: goto 005a // +0008 │ │ -435f92: 2201 ac0a |0053: new-instance v1, Ljava/io/FileInputStream; // type@0aac │ │ -435f96: 7020 a55b 8100 |0055: invoke-direct {v1, v8}, Ljava/io/FileInputStream;.:(Ljava/lang/String;)V // method@5ba5 │ │ -435f9c: 5b71 bc5f |0058: iput-object v1, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ -435fa0: 5478 bc5f |005a: iget-object v8, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ -435fa4: 6e10 a85b 0800 |005c: invoke-virtual {v8}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ -435faa: 0c08 |005f: move-result-object v8 │ │ -435fac: 7140 7f5c 32ba |0060: invoke-static {v2, v3, v10, v11}, Ljava/lang/Math;.max:(JJ)J // method@5c7f │ │ -435fb2: 0b05 |0063: move-result-wide v5 │ │ -435fb4: 6e30 cd5d 5806 |0064: invoke-virtual {v8, v5, v6}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcd │ │ -435fba: 281d |0067: goto 0084 // +001d │ │ -435fbc: 5478 b95f |0068: iget-object v8, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb9 │ │ -435fc0: 3808 0a00 |006a: if-eqz v8, 0074 // +000a │ │ -435fc4: 6e10 f001 0800 |006c: invoke-virtual {v8}, Landroid/content/res/AssetFileDescriptor;.close:()V // method@01f0 │ │ -435fca: 2805 |006f: goto 0074 // +0005 │ │ -435fcc: 0d08 |0070: move-exception v8 │ │ -435fce: 5b70 b95f |0071: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb9 │ │ -435fd2: 2708 |0073: throw v8 │ │ -435fd4: 5b70 b95f |0074: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb9 │ │ -435fd8: 5478 bc5f |0076: iget-object v8, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ -435fdc: 3808 0a00 |0078: if-eqz v8, 0082 // +000a │ │ -435fe0: 6e10 a75b 0800 |007a: invoke-virtual {v8}, Ljava/io/FileInputStream;.close:()V // method@5ba7 │ │ -435fe6: 2805 |007d: goto 0082 // +0005 │ │ -435fe8: 0d08 |007e: move-exception v8 │ │ -435fea: 5b70 bc5f |007f: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ -435fee: 2708 |0081: throw v8 │ │ -435ff0: 5b70 bc5f |0082: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ -435ff4: 2208 e40b |0084: new-instance v8, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ -435ff8: 7020 d860 4800 |0086: invoke-direct {v8, v4}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d8 │ │ -435ffe: 5b78 ba5f |0089: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fba │ │ -436002: 2208 e40b |008b: new-instance v8, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ -436006: 7020 d860 4800 |008d: invoke-direct {v8, v4}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d8 │ │ -43600c: 5b78 bb5f |0090: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fbb │ │ -436010: 2208 e50b |0092: new-instance v8, Ljava/util/concurrent/atomic/AtomicInteger; // type@0be5 │ │ -436014: 7020 dd60 9800 |0094: invoke-direct {v8, v9}, Ljava/util/concurrent/atomic/AtomicInteger;.:(I)V // method@60dd │ │ -43601a: 5b78 be5f |0097: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fbe │ │ -43601e: 2208 e60b |0099: new-instance v8, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ -436022: 7030 e160 2803 |009b: invoke-direct {v8, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60e1 │ │ -436028: 5b78 bf5f |009e: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbf │ │ -43602c: 2208 e60b |00a0: new-instance v8, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ -436030: 7140 7f5c 32ba |00a2: invoke-static {v2, v3, v10, v11}, Ljava/lang/Math;.max:(JJ)J // method@5c7f │ │ -436036: 0b09 |00a5: move-result-wide v9 │ │ -436038: 7030 e160 980a |00a6: invoke-direct {v8, v9, v10}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60e1 │ │ -43603e: 5b78 c05f |00a9: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fc0 │ │ -436042: 2208 e60b |00ab: new-instance v8, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ -436046: 7100 065d 0000 |00ad: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -43604c: 0b09 |00b0: move-result-wide v9 │ │ -43604e: 7030 e160 980a |00b1: invoke-direct {v8, v9, v10}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60e1 │ │ -436054: 5b78 c25f |00b4: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fc2 │ │ -436058: 0e00 |00b6: return-void │ │ +435ed8: |[435ed8] org.purple.smoke.SteamReader.:(Ljava/lang/String;IJ)V │ │ +435ee8: 7010 8f5c 0700 |0000: invoke-direct {v7}, Ljava/lang/Object;.:()V // method@5c8f │ │ +435eee: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +435ef0: 5b70 b95f |0004: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb9 │ │ +435ef4: 5b70 ba5f |0006: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fba │ │ +435ef8: 5b70 bb5f |0008: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fbb │ │ +435efc: 5b70 be5f |000a: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fbe │ │ +435f00: 5b70 bf5f |000c: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbf │ │ +435f04: 5b70 c05f |000e: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fc0 │ │ +435f08: 5b70 c25f |0010: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fc2 │ │ +435f0c: 5b70 bc5f |0012: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ +435f10: 5b70 c15f |0014: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc1 │ │ +435f14: 2201 e60a |0016: new-instance v1, Ljava/lang/Object; // type@0ae6 │ │ +435f18: 7010 8f5c 0100 |0018: invoke-direct {v1}, Ljava/lang/Object;.:()V // method@5c8f │ │ +435f1e: 5b71 bd5f |001b: iput-object v1, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbd │ │ +435f22: 1301 2e00 |001d: const/16 v1, #int 46 // #2e │ │ +435f26: 1602 0000 |001f: const-wide/16 v2, #int 0 // #0 │ │ +435f2a: 1204 |0021: const/4 v4, #int 0 // #0 │ │ +435f2c: 6e20 c45c 1800 |0022: invoke-virtual {v8, v1}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ +435f32: 0a05 |0025: move-result v5 │ │ +435f34: 3d05 2d00 |0026: if-lez v5, 0053 // +002d │ │ +435f38: 1a05 8960 |0028: const-string v5, "content://" // string@6089 │ │ +435f3c: 6e20 ca5c 5800 |002a: invoke-virtual {v8, v5}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ +435f42: 0a05 |002d: move-result v5 │ │ +435f44: 3805 2500 |002e: if-eqz v5, 0053 // +0025 │ │ +435f48: 6e20 c45c 1800 |0030: invoke-virtual {v8, v1}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ +435f4e: 0a01 |0033: move-result v1 │ │ +435f50: 6e30 cd5c 4801 |0034: invoke-virtual {v8, v4, v1}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ +435f56: 0c08 |0037: move-result-object v8 │ │ +435f58: 7110 ac04 0800 |0038: invoke-static {v8}, Landroid/net/Uri;.parse:(Ljava/lang/String;)Landroid/net/Uri; // method@04ac │ │ +435f5e: 0c08 |003b: move-result-object v8 │ │ +435f60: 7100 2bbd 0000 |003c: invoke-static {}, Lorg/purple/smoke/Smoke;.getApplication:()Lorg/purple/smoke/Smoke; // method@bd2b │ │ +435f66: 0c01 |003f: move-result-object v1 │ │ +435f68: 6e10 2cbd 0100 |0040: invoke-virtual {v1}, Lorg/purple/smoke/Smoke;.getContentResolver:()Landroid/content/ContentResolver; // method@bd2c │ │ +435f6e: 0c01 |0043: move-result-object v1 │ │ +435f70: 1a05 fc95 |0044: const-string v5, "r" // string@95fc │ │ +435f74: 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 │ │ +435f7a: 0c08 |0049: move-result-object v8 │ │ +435f7c: 5b78 b95f |004a: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb9 │ │ +435f80: 6e10 f101 0800 |004c: invoke-virtual {v8}, Landroid/content/res/AssetFileDescriptor;.createInputStream:()Ljava/io/FileInputStream; // method@01f1 │ │ +435f86: 0c08 |004f: move-result-object v8 │ │ +435f88: 5b78 bc5f |0050: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ +435f8c: 2808 |0052: goto 005a // +0008 │ │ +435f8e: 2201 ac0a |0053: new-instance v1, Ljava/io/FileInputStream; // type@0aac │ │ +435f92: 7020 a55b 8100 |0055: invoke-direct {v1, v8}, Ljava/io/FileInputStream;.:(Ljava/lang/String;)V // method@5ba5 │ │ +435f98: 5b71 bc5f |0058: iput-object v1, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ +435f9c: 5478 bc5f |005a: iget-object v8, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ +435fa0: 6e10 a85b 0800 |005c: invoke-virtual {v8}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ +435fa6: 0c08 |005f: move-result-object v8 │ │ +435fa8: 7140 7f5c 32ba |0060: invoke-static {v2, v3, v10, v11}, Ljava/lang/Math;.max:(JJ)J // method@5c7f │ │ +435fae: 0b05 |0063: move-result-wide v5 │ │ +435fb0: 6e30 cd5d 5806 |0064: invoke-virtual {v8, v5, v6}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcd │ │ +435fb6: 281d |0067: goto 0084 // +001d │ │ +435fb8: 5478 b95f |0068: iget-object v8, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb9 │ │ +435fbc: 3808 0a00 |006a: if-eqz v8, 0074 // +000a │ │ +435fc0: 6e10 f001 0800 |006c: invoke-virtual {v8}, Landroid/content/res/AssetFileDescriptor;.close:()V // method@01f0 │ │ +435fc6: 2805 |006f: goto 0074 // +0005 │ │ +435fc8: 0d08 |0070: move-exception v8 │ │ +435fca: 5b70 b95f |0071: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb9 │ │ +435fce: 2708 |0073: throw v8 │ │ +435fd0: 5b70 b95f |0074: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb9 │ │ +435fd4: 5478 bc5f |0076: iget-object v8, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ +435fd8: 3808 0a00 |0078: if-eqz v8, 0082 // +000a │ │ +435fdc: 6e10 a75b 0800 |007a: invoke-virtual {v8}, Ljava/io/FileInputStream;.close:()V // method@5ba7 │ │ +435fe2: 2805 |007d: goto 0082 // +0005 │ │ +435fe4: 0d08 |007e: move-exception v8 │ │ +435fe6: 5b70 bc5f |007f: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ +435fea: 2708 |0081: throw v8 │ │ +435fec: 5b70 bc5f |0082: iput-object v0, v7, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ +435ff0: 2208 e40b |0084: new-instance v8, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ +435ff4: 7020 d860 4800 |0086: invoke-direct {v8, v4}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d8 │ │ +435ffa: 5b78 ba5f |0089: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fba │ │ +435ffe: 2208 e40b |008b: new-instance v8, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ +436002: 7020 d860 4800 |008d: invoke-direct {v8, v4}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d8 │ │ +436008: 5b78 bb5f |0090: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fbb │ │ +43600c: 2208 e50b |0092: new-instance v8, Ljava/util/concurrent/atomic/AtomicInteger; // type@0be5 │ │ +436010: 7020 dd60 9800 |0094: invoke-direct {v8, v9}, Ljava/util/concurrent/atomic/AtomicInteger;.:(I)V // method@60dd │ │ +436016: 5b78 be5f |0097: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fbe │ │ +43601a: 2208 e60b |0099: new-instance v8, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ +43601e: 7030 e160 2803 |009b: invoke-direct {v8, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60e1 │ │ +436024: 5b78 bf5f |009e: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbf │ │ +436028: 2208 e60b |00a0: new-instance v8, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ +43602c: 7140 7f5c 32ba |00a2: invoke-static {v2, v3, v10, v11}, Ljava/lang/Math;.max:(JJ)J // method@5c7f │ │ +436032: 0b09 |00a5: move-result-wide v9 │ │ +436034: 7030 e160 980a |00a6: invoke-direct {v8, v9, v10}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60e1 │ │ +43603a: 5b78 c05f |00a9: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fc0 │ │ +43603e: 2208 e60b |00ab: new-instance v8, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ +436042: 7100 065d 0000 |00ad: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +436048: 0b09 |00b0: move-result-wide v9 │ │ +43604a: 7030 e160 980a |00b1: invoke-direct {v8, v9, v10}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60e1 │ │ +436050: 5b78 c25f |00b4: iput-object v8, v7, Lorg/purple/smoke/SteamReader;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fc2 │ │ +436054: 0e00 |00b6: return-void │ │ catches : 3 │ │ 0x0022 - 0x0067 │ │ Ljava/lang/Exception; -> 0x0068 │ │ 0x0068 - 0x006f │ │ Ljava/lang/Exception; -> 0x0074 │ │ -> 0x0070 │ │ 0x0076 - 0x007d │ │ @@ -749664,33 +749663,33 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 33 16-bit code units │ │ -436084: |[436084] org.purple.smoke.SteamReader.cancelReader:()V │ │ -436094: 5450 c15f |0000: iget-object v0, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc1 │ │ -436098: 3800 1e00 |0002: if-eqz v0, 0020 // +001e │ │ -43609c: 7210 d160 0000 |0004: invoke-interface {v0}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60d1 │ │ -4360a2: 1200 |0007: const/4 v0, #int 0 // #0 │ │ -4360a4: 5451 c15f |0008: iget-object v1, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc1 │ │ -4360a8: 1602 0500 |000a: const-wide/16 v2, #int 5 // #5 │ │ -4360ac: 6204 f22c |000c: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ -4360b0: 7240 ce60 2143 |000e: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60ce │ │ -4360b6: 0a01 |0011: move-result v1 │ │ -4360b8: 3901 0c00 |0012: if-nez v1, 001e // +000c │ │ -4360bc: 5451 c15f |0014: iget-object v1, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc1 │ │ -4360c0: 7210 d260 0100 |0016: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d2 │ │ -4360c6: 2805 |0019: goto 001e // +0005 │ │ -4360c8: 0d01 |001a: move-exception v1 │ │ -4360ca: 5b50 c15f |001b: iput-object v0, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc1 │ │ -4360ce: 2701 |001d: throw v1 │ │ -4360d0: 5b50 c15f |001e: iput-object v0, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc1 │ │ -4360d4: 0e00 |0020: return-void │ │ +436080: |[436080] org.purple.smoke.SteamReader.cancelReader:()V │ │ +436090: 5450 c15f |0000: iget-object v0, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc1 │ │ +436094: 3800 1e00 |0002: if-eqz v0, 0020 // +001e │ │ +436098: 7210 d160 0000 |0004: invoke-interface {v0}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60d1 │ │ +43609e: 1200 |0007: const/4 v0, #int 0 // #0 │ │ +4360a0: 5451 c15f |0008: iget-object v1, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc1 │ │ +4360a4: 1602 0500 |000a: const-wide/16 v2, #int 5 // #5 │ │ +4360a8: 6204 f22c |000c: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ +4360ac: 7240 ce60 2143 |000e: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60ce │ │ +4360b2: 0a01 |0011: move-result v1 │ │ +4360b4: 3901 0c00 |0012: if-nez v1, 001e // +000c │ │ +4360b8: 5451 c15f |0014: iget-object v1, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc1 │ │ +4360bc: 7210 d260 0100 |0016: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d2 │ │ +4360c2: 2805 |0019: goto 001e // +0005 │ │ +4360c4: 0d01 |001a: move-exception v1 │ │ +4360c6: 5b50 c15f |001b: iput-object v0, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc1 │ │ +4360ca: 2701 |001d: throw v1 │ │ +4360cc: 5b50 c15f |001e: iput-object v0, v5, Lorg/purple/smoke/SteamReader;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fc1 │ │ +4360d0: 0e00 |0020: return-void │ │ catches : 2 │ │ 0x0004 - 0x0007 │ │ Ljava/lang/Exception; -> 0x0007 │ │ 0x0008 - 0x0019 │ │ Ljava/lang/Exception; -> 0x001e │ │ -> 0x001a │ │ positions : │ │ @@ -749710,19 +749709,19 @@ │ │ type : '()Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -435e20: |[435e20] org.purple.smoke.SteamReader.completed:()Z │ │ -435e30: 5410 bb5f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamReader;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fbb │ │ -435e34: 6e10 da60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -435e3a: 0a00 |0005: move-result v0 │ │ -435e3c: 0f00 |0006: return v0 │ │ +435e1c: |[435e1c] org.purple.smoke.SteamReader.completed:()Z │ │ +435e2c: 5410 bb5f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamReader;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fbb │ │ +435e30: 6e10 da60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +435e36: 0a00 |0005: move-result v0 │ │ +435e38: 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;) │ │ @@ -749730,70 +749729,70 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 87 16-bit code units │ │ -4360f4: |[4360f4] org.purple.smoke.SteamReader.delete:()V │ │ -436104: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -436106: 5431 b95f |0001: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb9 │ │ -43610a: 3801 0a00 |0003: if-eqz v1, 000d // +000a │ │ -43610e: 6e10 f001 0100 |0005: invoke-virtual {v1}, Landroid/content/res/AssetFileDescriptor;.close:()V // method@01f0 │ │ -436114: 2805 |0008: goto 000d // +0005 │ │ -436116: 0d01 |0009: move-exception v1 │ │ -436118: 5b30 b95f |000a: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb9 │ │ -43611c: 2701 |000c: throw v1 │ │ -43611e: 5b30 b95f |000d: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb9 │ │ -436122: 5431 ba5f |000f: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fba │ │ -436126: 1212 |0011: const/4 v2, #int 1 // #1 │ │ -436128: 6e20 dc60 2100 |0012: invoke-virtual {v1, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -43612e: 5431 bb5f |0015: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fbb │ │ -436132: 1202 |0017: const/4 v2, #int 0 // #0 │ │ -436134: 6e20 dc60 2100 |0018: invoke-virtual {v1, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -43613a: 5431 bd5f |001b: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbd │ │ -43613e: 1d01 |001d: monitor-enter v1 │ │ -436140: 5432 bc5f |001e: iget-object v2, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ -436144: 3802 0500 |0020: if-eqz v2, 0025 // +0005 │ │ -436148: 6e10 a75b 0200 |0022: invoke-virtual {v2}, Ljava/io/FileInputStream;.close:()V // method@5ba7 │ │ -43614e: 1e01 |0025: monitor-exit v1 │ │ -436150: 5432 bd5f |0026: iget-object v2, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbd │ │ -436154: 1d02 |0028: monitor-enter v2 │ │ -436156: 5b30 bc5f |0029: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ -43615a: 1e02 |002b: monitor-exit v2 │ │ -43615c: 2818 |002c: goto 0044 // +0018 │ │ -43615e: 0d00 |002d: move-exception v0 │ │ -436160: 1e02 |002e: monitor-exit v2 │ │ -436162: 2700 |002f: throw v0 │ │ -436164: 0d02 |0030: move-exception v2 │ │ -436166: 1e01 |0031: monitor-exit v1 │ │ -436168: 2702 |0032: throw v2 │ │ -43616a: 0d01 |0033: move-exception v1 │ │ -43616c: 5432 bd5f |0034: iget-object v2, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbd │ │ -436170: 1d02 |0036: monitor-enter v2 │ │ -436172: 5b30 bc5f |0037: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ -436176: 1e02 |0039: monitor-exit v2 │ │ -436178: 2701 |003a: throw v1 │ │ -43617a: 0d00 |003b: move-exception v0 │ │ -43617c: 1e02 |003c: monitor-exit v2 │ │ -43617e: 2700 |003d: throw v0 │ │ -436180: 5431 bd5f |003e: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbd │ │ -436184: 1d01 |0040: monitor-enter v1 │ │ -436186: 5b30 bc5f |0041: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ -43618a: 1e01 |0043: monitor-exit v1 │ │ -43618c: 5430 bf5f |0044: iget-object v0, v3, Lorg/purple/smoke/SteamReader;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbf │ │ -436190: 1601 0000 |0046: const-wide/16 v1, #int 0 // #0 │ │ -436194: 6e30 e560 1002 |0048: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43619a: 5430 c05f |004b: iget-object v0, v3, Lorg/purple/smoke/SteamReader;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fc0 │ │ -43619e: 6e30 e560 1002 |004d: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -4361a4: 6e10 1bbe 0300 |0050: invoke-virtual {v3}, Lorg/purple/smoke/SteamReader;.cancelReader:()V // method@be1b │ │ -4361aa: 0e00 |0053: return-void │ │ -4361ac: 0d00 |0054: move-exception v0 │ │ -4361ae: 1e01 |0055: monitor-exit v1 │ │ -4361b0: 2700 |0056: throw v0 │ │ +4360f0: |[4360f0] org.purple.smoke.SteamReader.delete:()V │ │ +436100: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +436102: 5431 b95f |0001: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb9 │ │ +436106: 3801 0a00 |0003: if-eqz v1, 000d // +000a │ │ +43610a: 6e10 f001 0100 |0005: invoke-virtual {v1}, Landroid/content/res/AssetFileDescriptor;.close:()V // method@01f0 │ │ +436110: 2805 |0008: goto 000d // +0005 │ │ +436112: 0d01 |0009: move-exception v1 │ │ +436114: 5b30 b95f |000a: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb9 │ │ +436118: 2701 |000c: throw v1 │ │ +43611a: 5b30 b95f |000d: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_assetFileDescriptor:Landroid/content/res/AssetFileDescriptor; // field@5fb9 │ │ +43611e: 5431 ba5f |000f: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fba │ │ +436122: 1212 |0011: const/4 v2, #int 1 // #1 │ │ +436124: 6e20 dc60 2100 |0012: invoke-virtual {v1, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +43612a: 5431 bb5f |0015: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fbb │ │ +43612e: 1202 |0017: const/4 v2, #int 0 // #0 │ │ +436130: 6e20 dc60 2100 |0018: invoke-virtual {v1, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +436136: 5431 bd5f |001b: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbd │ │ +43613a: 1d01 |001d: monitor-enter v1 │ │ +43613c: 5432 bc5f |001e: iget-object v2, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ +436140: 3802 0500 |0020: if-eqz v2, 0025 // +0005 │ │ +436144: 6e10 a75b 0200 |0022: invoke-virtual {v2}, Ljava/io/FileInputStream;.close:()V // method@5ba7 │ │ +43614a: 1e01 |0025: monitor-exit v1 │ │ +43614c: 5432 bd5f |0026: iget-object v2, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbd │ │ +436150: 1d02 |0028: monitor-enter v2 │ │ +436152: 5b30 bc5f |0029: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ +436156: 1e02 |002b: monitor-exit v2 │ │ +436158: 2818 |002c: goto 0044 // +0018 │ │ +43615a: 0d00 |002d: move-exception v0 │ │ +43615c: 1e02 |002e: monitor-exit v2 │ │ +43615e: 2700 |002f: throw v0 │ │ +436160: 0d02 |0030: move-exception v2 │ │ +436162: 1e01 |0031: monitor-exit v1 │ │ +436164: 2702 |0032: throw v2 │ │ +436166: 0d01 |0033: move-exception v1 │ │ +436168: 5432 bd5f |0034: iget-object v2, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbd │ │ +43616c: 1d02 |0036: monitor-enter v2 │ │ +43616e: 5b30 bc5f |0037: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ +436172: 1e02 |0039: monitor-exit v2 │ │ +436174: 2701 |003a: throw v1 │ │ +436176: 0d00 |003b: move-exception v0 │ │ +436178: 1e02 |003c: monitor-exit v2 │ │ +43617a: 2700 |003d: throw v0 │ │ +43617c: 5431 bd5f |003e: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fbd │ │ +436180: 1d01 |0040: monitor-enter v1 │ │ +436182: 5b30 bc5f |0041: iput-object v0, v3, Lorg/purple/smoke/SteamReader;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fbc │ │ +436186: 1e01 |0043: monitor-exit v1 │ │ +436188: 5430 bf5f |0044: iget-object v0, v3, Lorg/purple/smoke/SteamReader;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbf │ │ +43618c: 1601 0000 |0046: const-wide/16 v1, #int 0 // #0 │ │ +436190: 6e30 e560 1002 |0048: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +436196: 5430 c05f |004b: iget-object v0, v3, Lorg/purple/smoke/SteamReader;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fc0 │ │ +43619a: 6e30 e560 1002 |004d: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +4361a0: 6e10 1bbe 0300 |0050: invoke-virtual {v3}, Lorg/purple/smoke/SteamReader;.cancelReader:()V // method@be1b │ │ +4361a6: 0e00 |0053: return-void │ │ +4361a8: 0d00 |0054: move-exception v0 │ │ +4361aa: 1e01 |0055: monitor-exit v1 │ │ +4361ac: 2700 |0056: throw v0 │ │ catches : 10 │ │ 0x0001 - 0x0008 │ │ Ljava/lang/Exception; -> 0x000d │ │ -> 0x0009 │ │ 0x001b - 0x001e │ │ Ljava/lang/Exception; -> 0x003e │ │ -> 0x0033 │ │ @@ -749850,19 +749849,19 @@ │ │ type : '()I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -435e40: |[435e40] org.purple.smoke.SteamReader.getOid:()I │ │ -435e50: 5410 be5f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamReader;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fbe │ │ -435e54: 6e10 de60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -435e5a: 0a00 |0005: move-result v0 │ │ -435e5c: 0f00 |0006: return v0 │ │ +435e3c: |[435e3c] org.purple.smoke.SteamReader.getOid:()I │ │ +435e4c: 5410 be5f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamReader;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fbe │ │ +435e50: 6e10 de60 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +435e56: 0a00 |0005: move-result v0 │ │ +435e58: 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;) │ │ @@ -749870,30 +749869,30 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 32 16-bit code units │ │ -435e60: |[435e60] org.purple.smoke.SteamReader.prettyRate:()Ljava/lang/String; │ │ -435e70: 2200 f10a |0000: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ -435e74: 7010 ee5c 0000 |0002: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -435e7a: 5431 bf5f |0005: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbf │ │ -435e7e: 6e10 e360 0100 |0007: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -435e84: 0b01 |000a: move-result-wide v1 │ │ -435e86: 7120 d65c 2100 |000b: invoke-static {v1, v2}, Ljava/lang/String;.valueOf:(J)Ljava/lang/String; // method@5cd6 │ │ -435e8c: 0c01 |000e: move-result-object v1 │ │ -435e8e: 7110 edbb 0100 |000f: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbed │ │ -435e94: 0c01 |0012: move-result-object v1 │ │ -435e96: 6e20 f95c 1000 |0013: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -435e9c: 1a01 a800 |0016: const-string v1, " / s" // string@00a8 │ │ -435ea0: 6e20 f95c 1000 |0018: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -435ea6: 6e10 035d 0000 |001b: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -435eac: 0c00 |001e: move-result-object v0 │ │ -435eae: 1100 |001f: return-object v0 │ │ +435e5c: |[435e5c] org.purple.smoke.SteamReader.prettyRate:()Ljava/lang/String; │ │ +435e6c: 2200 f10a |0000: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ +435e70: 7010 ee5c 0000 |0002: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +435e76: 5431 bf5f |0005: iget-object v1, v3, Lorg/purple/smoke/SteamReader;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fbf │ │ +435e7a: 6e10 e360 0100 |0007: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +435e80: 0b01 |000a: move-result-wide v1 │ │ +435e82: 7120 d65c 2100 |000b: invoke-static {v1, v2}, Ljava/lang/String;.valueOf:(J)Ljava/lang/String; // method@5cd6 │ │ +435e88: 0c01 |000e: move-result-object v1 │ │ +435e8a: 7110 edbb 0100 |000f: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbed │ │ +435e90: 0c01 |0012: move-result-object v1 │ │ +435e92: 6e20 f95c 1000 |0013: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +435e98: 1a01 a800 |0016: const-string v1, " / s" // string@00a8 │ │ +435e9c: 6e20 f95c 1000 |0018: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +435ea2: 6e10 035d 0000 |001b: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +435ea8: 0c00 |001e: move-result-object v0 │ │ +435eaa: 1100 |001f: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=58 │ │ 0x0007 line=59 │ │ locals : │ │ 0x0000 - 0x0020 reg=3 this Lorg/purple/smoke/SteamReader; │ │ │ │ @@ -749942,20 +749941,20 @@ │ │ type : '(Lorg/purple/smoke/SteamReaderFull;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 9 16-bit code units │ │ -434b40: |[434b40] org.purple.smoke.SteamReaderFull$1.:(Lorg/purple/smoke/SteamReaderFull;)V │ │ -434b50: 5b01 c65f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434b54: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -434b5a: 1201 |0005: const/4 v1, #int 0 // #0 │ │ -434b5c: 5b01 c55f |0006: iput-object v1, v0, Lorg/purple/smoke/SteamReaderFull$1;.m_keyStream:[B // field@5fc5 │ │ -434b60: 0e00 |0008: return-void │ │ +434b3c: |[434b3c] org.purple.smoke.SteamReaderFull$1.:(Lorg/purple/smoke/SteamReaderFull;)V │ │ +434b4c: 5b01 c65f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434b50: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +434b56: 1201 |0005: const/4 v1, #int 0 // #0 │ │ +434b58: 5b01 c55f |0006: iput-object v1, v0, Lorg/purple/smoke/SteamReaderFull$1;.m_keyStream:[B // field@5fc5 │ │ +434b5c: 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; │ │ @@ -749966,353 +749965,353 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 25 │ │ ins : 1 │ │ outs : 8 │ │ insns size : 690 16-bit code units │ │ -434b64: |[434b64] org.purple.smoke.SteamReaderFull$1.run:()V │ │ -434b74: 0801 1800 |0000: move-object/from16 v1, v24 │ │ -434b78: 1202 |0002: const/4 v2, #int 0 // #0 │ │ -434b7a: 5410 c65f |0003: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434b7e: 5400 ca5f |0005: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ -434b82: 6e10 da60 0000 |0007: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -434b88: 0a00 |000a: move-result v0 │ │ -434b8a: 3800 0300 |000b: if-eqz v0, 000e // +0003 │ │ -434b8e: 0e00 |000d: return-void │ │ -434b90: 6200 c45f |000e: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ -434b94: 5413 c65f |0010: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434b98: 5433 d25f |0012: iget-object v3, v3, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ -434b9c: 6e10 de60 0300 |0014: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -434ba2: 0a03 |0017: move-result v3 │ │ -434ba4: 6e20 2fba 3000 |0018: invoke-virtual {v0, v3}, Lorg/purple/smoke/Database;.steamStatus:(I)Ljava/lang/String; // method@ba2f │ │ -434baa: 0c00 |001b: move-result-object v0 │ │ -434bac: 6e10 cf5c 0000 |001c: invoke-virtual {v0}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@5ccf │ │ -434bb2: 0c00 |001f: move-result-object v0 │ │ -434bb4: 6e10 d35c 0000 |0020: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -434bba: 0c00 |0023: move-result-object v0 │ │ -434bbc: 6e10 bf5c 0000 |0024: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -434bc2: 0a03 |0027: move-result v3 │ │ -434bc4: 12f4 |0028: const/4 v4, #int -1 // #ff │ │ -434bc6: 1215 |0029: const/4 v5, #int 1 // #1 │ │ -434bc8: 2c03 5202 0000 |002a: sparse-switch v3, 0000027c // +00000252 │ │ -434bce: 2851 |002d: goto 007e // +0051 │ │ -434bd0: 1a03 0263 |002e: const-string v3, "deleted" // string@6302 │ │ -434bd4: 6e20 b85c 3000 |0030: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434bda: 0a00 |0033: move-result v0 │ │ -434bdc: 3800 4a00 |0034: if-eqz v0, 007e // +004a │ │ -434be0: 1220 |0036: const/4 v0, #int 2 // #2 │ │ -434be2: 2848 |0037: goto 007f // +0048 │ │ -434be4: 1a03 7996 |0038: const-string v3, "received private-key pair" // string@9679 │ │ -434be8: 6e20 b85c 3000 |003a: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434bee: 0a00 |003d: move-result v0 │ │ -434bf0: 3800 4000 |003e: if-eqz v0, 007e // +0040 │ │ -434bf4: 1240 |0040: const/4 v0, #int 4 // #4 │ │ -434bf6: 283e |0041: goto 007f // +003e │ │ -434bf8: 1a03 0000 |0042: const-string v3, "" // string@0000 │ │ -434bfc: 6e20 b85c 3000 |0044: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434c02: 0a00 |0047: move-result v0 │ │ -434c04: 3800 3600 |0048: if-eqz v0, 007e // +0036 │ │ -434c08: 1200 |004a: const/4 v0, #int 0 // #0 │ │ -434c0a: 2834 |004b: goto 007f // +0034 │ │ -434c0c: 1a03 4a98 |004c: const-string v3, "rewind & resume" // string@984a │ │ -434c10: 6e20 b85c 3000 |004e: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434c16: 0a00 |0051: move-result v0 │ │ -434c18: 3800 2c00 |0052: if-eqz v0, 007e // +002c │ │ -434c1c: 1270 |0054: const/4 v0, #int 7 // #7 │ │ -434c1e: 282a |0055: goto 007f // +002a │ │ -434c20: 1a03 4998 |0056: const-string v3, "rewind" // string@9849 │ │ -434c24: 6e20 b85c 3000 |0058: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434c2a: 0a00 |005b: move-result v0 │ │ -434c2c: 3800 2200 |005c: if-eqz v0, 007e // +0022 │ │ -434c30: 1260 |005e: const/4 v0, #int 6 // #6 │ │ -434c32: 2820 |005f: goto 007f // +0020 │ │ -434c34: 1a03 2598 |0060: const-string v3, "resume" // string@9825 │ │ -434c38: 6e20 b85c 3000 |0062: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434c3e: 0a00 |0065: move-result v0 │ │ -434c40: 3800 1800 |0066: if-eqz v0, 007e // +0018 │ │ -434c44: 1250 |0068: const/4 v0, #int 5 // #5 │ │ -434c46: 2816 |0069: goto 007f // +0016 │ │ -434c48: 1a03 2993 |006a: const-string v3, "paused" // string@9329 │ │ -434c4c: 6e20 b85c 3000 |006c: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434c52: 0a00 |006f: move-result v0 │ │ -434c54: 3800 0e00 |0070: if-eqz v0, 007e // +000e │ │ -434c58: 1230 |0072: const/4 v0, #int 3 // #3 │ │ -434c5a: 280c |0073: goto 007f // +000c │ │ -434c5c: 1a03 fa5f |0074: const-string v3, "completed" // string@5ffa │ │ -434c60: 6e20 b85c 3000 |0076: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -434c66: 0a00 |0079: move-result v0 │ │ -434c68: 3800 0400 |007a: if-eqz v0, 007e // +0004 │ │ -434c6c: 1210 |007c: const/4 v0, #int 1 // #1 │ │ -434c6e: 2802 |007d: goto 007f // +0002 │ │ -434c70: 12f0 |007e: const/4 v0, #int -1 // #ff │ │ -434c72: 2b00 1f02 0000 |007f: packed-switch v0, 0000029e // +0000021f │ │ -434c78: 5410 c65f |0082: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434c7c: 2900 8100 |0084: goto/16 0105 // +0081 │ │ -434c80: 5410 c65f |0086: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434c84: 7110 24be 0000 |0088: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$000:(Lorg/purple/smoke/SteamReaderFull;)V // method@be24 │ │ -434c8a: 6206 c45f |008b: sget-object v6, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ -434c8e: 6207 c35f |008d: sget-object v7, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ -434c92: 1a08 68a5 |008f: const-string v8, "transferring" // string@a568 │ │ -434c96: 1a09 0000 |0091: const-string v9, "" // string@0000 │ │ -434c9a: 5410 c65f |0093: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434c9e: 5400 d25f |0095: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ -434ca2: 6e10 de60 0000 |0097: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -434ca8: 0a0a |009a: move-result v10 │ │ -434caa: 160b 0000 |009b: const-wide/16 v11, #int 0 // #0 │ │ -434cae: 7407 47ba 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@ba47 │ │ -434cb4: 2900 9b00 |00a0: goto/16 013b // +009b │ │ -434cb8: 5410 c65f |00a2: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434cbc: 7110 24be 0000 |00a4: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$000:(Lorg/purple/smoke/SteamReaderFull;)V // method@be24 │ │ -434cc2: 6203 c45f |00a7: sget-object v3, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ -434cc6: 6204 c35f |00a9: sget-object v4, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ -434cca: 1a05 2993 |00ab: const-string v5, "paused" // string@9329 │ │ -434cce: 1a06 0000 |00ad: const-string v6, "" // string@0000 │ │ -434cd2: 5410 c65f |00af: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434cd6: 5400 d25f |00b1: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ -434cda: 6e10 de60 0000 |00b3: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -434ce0: 0a07 |00b6: move-result v7 │ │ -434ce2: 1608 0000 |00b7: const-wide/16 v8, #int 0 // #0 │ │ -434ce6: 7407 47ba 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@ba47 │ │ -434cec: 0e00 |00bc: return-void │ │ -434cee: 620a c45f |00bd: sget-object v10, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ -434cf2: 620b c35f |00bf: sget-object v11, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ -434cf6: 1a0c 68a5 |00c1: const-string v12, "transferring" // string@a568 │ │ -434cfa: 1a0d 0000 |00c3: const-string v13, "" // string@0000 │ │ -434cfe: 5410 c65f |00c5: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434d02: 5400 d25f |00c7: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ -434d06: 6e10 de60 0000 |00c9: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -434d0c: 0a0e |00cc: move-result v14 │ │ -434d0e: 160f 0000 |00cd: const-wide/16 v15, #int 0 // #0 │ │ -434d12: 7407 47ba 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@ba47 │ │ -434d18: 2869 |00d2: goto 013b // +0069 │ │ -434d1a: 6211 c45f |00d3: sget-object v17, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ -434d1e: 6212 c35f |00d5: sget-object v18, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ -434d22: 1a13 68a5 |00d7: const-string v19, "transferring" // string@a568 │ │ -434d26: 1a14 0000 |00d9: const-string v20, "" // string@0000 │ │ -434d2a: 5410 c65f |00db: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434d2e: 5400 d25f |00dd: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ -434d32: 6e10 de60 0000 |00df: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -434d38: 0a15 |00e2: move-result v21 │ │ -434d3a: 1616 0000 |00e3: const-wide/16 v22, #int 0 // #0 │ │ -434d3e: 7407 47ba 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@ba47 │ │ -434d44: 2853 |00e8: goto 013b // +0053 │ │ -434d46: 6200 c45f |00e9: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ -434d4a: 6203 c35f |00eb: sget-object v3, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ -434d4e: 1a04 0000 |00ed: const-string v4, "" // string@0000 │ │ -434d52: 1a05 cc04 |00ef: const-string v5, "0.00 B / s" // string@04cc │ │ -434d56: 5416 c65f |00f1: iget-object v6, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434d5a: 5466 d25f |00f3: iget-object v6, v6, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ -434d5e: 6e10 de60 0600 |00f5: invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -434d64: 0a06 |00f8: move-result v6 │ │ -434d66: 6e56 46ba 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@ba46 │ │ -434d6c: 0e00 |00fc: return-void │ │ -434d6e: 5410 c65f |00fd: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434d72: 5400 cb5f |00ff: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fcb │ │ -434d76: 6e20 dc60 5000 |0101: invoke-virtual {v0, v5}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -434d7c: 0e00 |0104: return-void │ │ -434d7e: 7110 25be 0000 |0105: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$100:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; // method@be25 │ │ -434d84: 0c00 |0108: move-result-object v0 │ │ -434d86: 6e10 e360 0000 |0109: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -434d8c: 0b06 |010c: move-result-wide v6 │ │ -434d8e: 5410 c65f |010d: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434d92: 5400 d65f |010f: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ -434d96: 6e10 e360 0000 |0111: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -434d9c: 0b08 |0114: move-result-wide v8 │ │ -434d9e: 3100 0608 |0115: cmp-long v0, v6, v8 │ │ -434da2: 3900 2400 |0117: if-nez v0, 013b // +0024 │ │ -434da6: 5410 c65f |0119: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434daa: 5400 cb5f |011b: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fcb │ │ -434dae: 6e20 dc60 5000 |011d: invoke-virtual {v0, v5}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -434db4: 6206 c45f |0120: sget-object v6, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ -434db8: 6207 c35f |0122: sget-object v7, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ -434dbc: 1a08 fa5f |0124: const-string v8, "completed" // string@5ffa │ │ -434dc0: 1a09 0000 |0126: const-string v9, "" // string@0000 │ │ -434dc4: 5410 c65f |0128: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434dc8: 5400 d25f |012a: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ -434dcc: 6e10 de60 0000 |012c: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -434dd2: 0a0a |012f: move-result v10 │ │ -434dd4: 5410 c65f |0130: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434dd8: 5400 d65f |0132: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ -434ddc: 6e10 e360 0000 |0134: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -434de2: 0b0b |0137: move-result-wide v11 │ │ -434de4: 7407 47ba 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@ba47 │ │ -434dea: 5410 c65f |013b: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434dee: 7110 26be 0000 |013d: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$200:(Lorg/purple/smoke/SteamReaderFull;)V // method@be26 │ │ -434df4: 5410 c65f |0140: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434df8: 7110 27be 0000 |0142: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$300:(Lorg/purple/smoke/SteamReaderFull;)V // method@be27 │ │ -434dfe: 5410 c65f |0145: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434e02: 5400 ca5f |0147: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ -434e06: 6e10 da60 0000 |0149: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -434e0c: 0a00 |014c: move-result v0 │ │ -434e0e: 3900 2401 |014d: if-nez v0, 0271 // +0124 │ │ -434e12: 5410 c65f |014f: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434e16: 5400 cb5f |0151: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fcb │ │ -434e1a: 6e10 da60 0000 |0153: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -434e20: 0a00 |0156: move-result v0 │ │ -434e22: 3800 0400 |0157: if-eqz v0, 015b // +0004 │ │ -434e26: 2900 1801 |0159: goto/16 0271 // +0118 │ │ -434e2a: 5410 c65f |015b: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434e2e: 5403 ce5f |015d: iget-object v3, v0, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fce │ │ -434e32: 1d03 |015f: monitor-enter v3 │ │ -434e34: 5410 c65f |0160: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434e38: 5400 cd5f |0162: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcd │ │ -434e3c: 3900 0400 |0164: if-nez v0, 0168 // +0004 │ │ -434e40: 1e03 |0166: monitor-exit v3 │ │ -434e42: 0e00 |0167: return-void │ │ -434e44: 1e03 |0168: monitor-exit v3 │ │ -434e46: 5410 c55f |0169: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.m_keyStream:[B // field@5fc5 │ │ -434e4a: 1303 6000 |016b: const/16 v3, #int 96 // #60 │ │ -434e4e: 3800 0500 |016d: if-eqz v0, 0172 // +0005 │ │ -434e52: 2100 |016f: array-length v0, v0 │ │ -434e54: 3230 1e00 |0170: if-eq v0, v3, 018e // +001e │ │ -434e58: 6200 c45f |0172: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ -434e5c: 6206 c35f |0174: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ -434e60: 5417 c65f |0176: iget-object v7, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434e64: 5477 d25f |0178: iget-object v7, v7, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ -434e68: 6e10 de60 0700 |017a: invoke-virtual {v7}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -434e6e: 0a07 |017d: move-result v7 │ │ -434e70: b157 |017e: sub-int/2addr v7, v5 │ │ -434e72: 6e40 20ba 6074 |017f: invoke-virtual {v0, v6, v4, v7}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba20 │ │ -434e78: 0c00 |0182: move-result-object v0 │ │ -434e7a: 5400 9f5f |0183: iget-object v0, v0, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ -434e7e: 5b10 c55f |0185: iput-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.m_keyStream:[B // field@5fc5 │ │ -434e82: 3800 e600 |0187: if-eqz v0, 026d // +00e6 │ │ -434e86: 2100 |0189: array-length v0, v0 │ │ -434e88: 3230 0400 |018a: if-eq v0, v3, 018e // +0004 │ │ -434e8c: 2900 e100 |018c: goto/16 026d // +00e1 │ │ -434e90: 5410 c65f |018e: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434e94: 7110 28be 0000 |0190: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$400:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/Object; // method@be28 │ │ -434e9a: 0c03 |0193: move-result-object v3 │ │ -434e9c: 1d03 |0194: monitor-enter v3 │ │ -434e9e: 5410 c65f |0195: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434ea2: 7110 28be 0000 |0197: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$400:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/Object; // method@be28 │ │ -434ea8: 0c00 |019a: move-result-object v0 │ │ -434eaa: 1605 4c1d |019b: const-wide/16 v5, #int 7500 // #1d4c │ │ -434eae: 6e30 985c 5006 |019d: invoke-virtual {v0, v5, v6}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ -434eb4: 1e03 |01a0: monitor-exit v3 │ │ -434eb6: 5410 c65f |01a1: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434eba: 7110 29be 0000 |01a3: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be29 │ │ -434ec0: 0c00 |01a6: move-result-object v0 │ │ -434ec2: 6e10 da60 0000 |01a7: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -434ec8: 0a00 |01aa: move-result v0 │ │ -434eca: 3900 3900 |01ab: if-nez v0, 01e4 // +0039 │ │ -434ece: 7100 065d 0000 |01ad: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -434ed4: 0b07 |01b0: move-result-wide v7 │ │ -434ed6: 5410 c65f |01b1: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434eda: 7110 2abe 0000 |01b3: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$600:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; // method@be2a │ │ -434ee0: 0c00 |01b6: move-result-object v0 │ │ -434ee2: 6e10 e360 0000 |01b7: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -434ee8: 0b09 |01ba: move-result-wide v9 │ │ -434eea: bc97 |01bb: sub-long/2addr v7, v9 │ │ -434eec: 3100 0705 |01bc: cmp-long v0, v7, v5 │ │ -434ef0: 3d00 2500 |01be: if-lez v0, 01e3 // +0025 │ │ -434ef4: 5410 c65f |01c0: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434ef8: 5400 ca5f |01c2: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ -434efc: 6e10 da60 0000 |01c4: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -434f02: 0a00 |01c7: move-result v0 │ │ -434f04: 3900 1b00 |01c8: if-nez v0, 01e3 // +001b │ │ -434f08: 5410 c65f |01ca: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434f0c: 5400 cb5f |01cc: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fcb │ │ -434f10: 6e10 da60 0000 |01ce: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -434f16: 0a00 |01d1: move-result v0 │ │ -434f18: 3800 0300 |01d2: if-eqz v0, 01d5 // +0003 │ │ -434f1c: 280f |01d4: goto 01e3 // +000f │ │ -434f1e: 5410 c65f |01d5: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434f22: 7110 2abe 0000 |01d7: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$600:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; // method@be2a │ │ -434f28: 0c00 |01da: move-result-object v0 │ │ -434f2a: 7100 065d 0000 |01db: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -434f30: 0b05 |01de: move-result-wide v5 │ │ -434f32: 6e30 e560 5006 |01df: invoke-virtual {v0, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -434f38: 2802 |01e2: goto 01e4 // +0002 │ │ -434f3a: 0e00 |01e3: return-void │ │ -434f3c: 1400 0080 0000 |01e4: const v0, #float 4.59177e-41 // #00008000 │ │ -434f42: 2300 481b |01e7: new-array v0, v0, [B // type@1b48 │ │ -434f46: 5413 c65f |01e9: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434f4a: 5433 ce5f |01eb: iget-object v3, v3, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fce │ │ -434f4e: 1d03 |01ed: monitor-enter v3 │ │ -434f50: 5415 c65f |01ee: iget-object v5, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434f54: 5455 cd5f |01f0: iget-object v5, v5, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcd │ │ -434f58: 3905 0400 |01f2: if-nez v5, 01f6 // +0004 │ │ -434f5c: 1e03 |01f4: monitor-exit v3 │ │ -434f5e: 0e00 |01f5: return-void │ │ -434f60: 5415 c65f |01f6: iget-object v5, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434f64: 5455 cd5f |01f8: iget-object v5, v5, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcd │ │ -434f68: 6e10 a85b 0500 |01fa: invoke-virtual {v5}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ -434f6e: 0c05 |01fd: move-result-object v5 │ │ -434f70: 5416 c65f |01fe: iget-object v6, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434f74: 5466 d65f |0200: iget-object v6, v6, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ -434f78: 6e10 e360 0600 |0202: invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -434f7e: 0b06 |0205: move-result-wide v6 │ │ -434f80: 6e30 cd5d 6507 |0206: invoke-virtual {v5, v6, v7}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcd │ │ -434f86: 5415 c65f |0209: iget-object v5, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434f8a: 5455 cd5f |020b: iget-object v5, v5, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcd │ │ -434f8e: 6e20 a95b 0500 |020d: invoke-virtual {v5, v0}, Ljava/io/FileInputStream;.read:([B)I // method@5ba9 │ │ -434f94: 0a05 |0210: move-result v5 │ │ -434f96: 1e03 |0211: monitor-exit v3 │ │ -434f98: 3345 0c00 |0212: if-ne v5, v4, 021e // +000c │ │ -434f9c: 5410 c65f |0214: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434fa0: 7110 29be 0000 |0216: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be29 │ │ -434fa6: 0c00 |0219: move-result-object v0 │ │ -434fa8: 6e20 dc60 2000 |021a: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -434fae: 0e00 |021d: return-void │ │ -434fb0: 5413 c65f |021e: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434fb4: 7110 2bbe 0300 |0220: invoke-static {v3}, Lorg/purple/smoke/SteamReaderFull;.access$700:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; // method@be2b │ │ -434fba: 0c03 |0223: move-result-object v3 │ │ -434fbc: 8156 |0224: int-to-long v6, v5 │ │ -434fbe: 6e30 e560 6307 |0225: invoke-virtual {v3, v6, v7}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -434fc4: 5413 c65f |0228: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434fc8: 7110 29be 0300 |022a: invoke-static {v3}, Lorg/purple/smoke/SteamReaderFull;.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be29 │ │ -434fce: 0c03 |022d: move-result-object v3 │ │ -434fd0: 6e20 dc60 2300 |022e: invoke-virtual {v3, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -434fd6: 6206 c35f |0231: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ -434fda: 5413 c65f |0233: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434fde: 7110 2cbe 0300 |0235: invoke-static {v3}, Lorg/purple/smoke/SteamReaderFull;.access$800:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/String; // method@be2c │ │ -434fe4: 0c07 |0238: move-result-object v7 │ │ -434fe6: 5413 c65f |0239: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -434fea: 7110 2dbe 0300 |023b: invoke-static {v3}, Lorg/purple/smoke/SteamReaderFull;.access$900:(Lorg/purple/smoke/SteamReaderFull;)[B // method@be2d │ │ -434ff0: 0c08 |023e: move-result-object v8 │ │ -434ff2: 5419 c55f |023f: iget-object v9, v1, Lorg/purple/smoke/SteamReaderFull$1;.m_keyStream:[B // field@5fc5 │ │ -434ff6: 7130 b85f 2005 |0241: invoke-static {v0, v2, v5}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb8 │ │ -434ffc: 0c0a |0244: move-result-object v10 │ │ -434ffe: 6200 1a55 |0245: sget-object v0, Lorg/purple/smoke/Messages;.STEAM_SHARE:[B // field@551a │ │ -435002: 480b 0002 |0247: aget-byte v11, v0, v2 │ │ -435006: 5410 c65f |0249: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -43500a: 5400 d65f |024b: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ -43500e: 6e10 e360 0000 |024d: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -435014: 0b0c |0250: move-result-wide v12 │ │ -435016: 7708 c8bb 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@bbc8 │ │ -43501c: 0c00 |0254: move-result-object v0 │ │ -43501e: 3800 2600 |0255: if-eqz v0, 027b // +0026 │ │ -435022: 7100 10bb 0000 |0257: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -435028: 0c03 |025a: move-result-object v3 │ │ -43502a: 7110 b6bb 0000 |025b: invoke-static {v0}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb6 │ │ -435030: 0c00 |025e: move-result-object v0 │ │ -435032: 6e10 bc5c 0000 |025f: invoke-virtual {v0}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -435038: 0c00 |0262: move-result-object v0 │ │ -43503a: 6e30 22bb 2300 |0263: invoke-virtual {v3, v2, v0}, Lorg/purple/smoke/Kernel;.sendSteam:(Z[B)I // method@bb22 │ │ -435040: 2815 |0266: goto 027b // +0015 │ │ -435042: 0d00 |0267: move-exception v0 │ │ -435044: 1e03 |0268: monitor-exit v3 │ │ -435046: 2700 |0269: throw v0 │ │ -435048: 0d00 |026a: move-exception v0 │ │ -43504a: 1e03 |026b: monitor-exit v3 │ │ -43504c: 2700 |026c: throw v0 │ │ -43504e: 0e00 |026d: return-void │ │ -435050: 0d00 |026e: move-exception v0 │ │ -435052: 1e03 |026f: monitor-exit v3 │ │ -435054: 2700 |0270: throw v0 │ │ -435056: 0e00 |0271: return-void │ │ -435058: 5410 c65f |0272: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ -43505c: 7110 29be 0000 |0274: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be29 │ │ -435062: 0c00 |0277: move-result-object v0 │ │ -435064: 6e20 dc60 2000 |0278: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -43506a: 0e00 |027b: return-void │ │ -43506c: 0002 0800 4bf6 60ac 2e99 acc4 2dc8 ... |027c: sparse-switch-data (34 units) │ │ -4350b0: 0001 0800 0000 0000 8500 0000 7e00 ... |029e: packed-switch-data (20 units) │ │ +434b60: |[434b60] org.purple.smoke.SteamReaderFull$1.run:()V │ │ +434b70: 0801 1800 |0000: move-object/from16 v1, v24 │ │ +434b74: 1202 |0002: const/4 v2, #int 0 // #0 │ │ +434b76: 5410 c65f |0003: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434b7a: 5400 ca5f |0005: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ +434b7e: 6e10 da60 0000 |0007: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +434b84: 0a00 |000a: move-result v0 │ │ +434b86: 3800 0300 |000b: if-eqz v0, 000e // +0003 │ │ +434b8a: 0e00 |000d: return-void │ │ +434b8c: 6200 c45f |000e: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ +434b90: 5413 c65f |0010: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434b94: 5433 d25f |0012: iget-object v3, v3, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ +434b98: 6e10 de60 0300 |0014: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +434b9e: 0a03 |0017: move-result v3 │ │ +434ba0: 6e20 2fba 3000 |0018: invoke-virtual {v0, v3}, Lorg/purple/smoke/Database;.steamStatus:(I)Ljava/lang/String; // method@ba2f │ │ +434ba6: 0c00 |001b: move-result-object v0 │ │ +434ba8: 6e10 cf5c 0000 |001c: invoke-virtual {v0}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@5ccf │ │ +434bae: 0c00 |001f: move-result-object v0 │ │ +434bb0: 6e10 d35c 0000 |0020: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +434bb6: 0c00 |0023: move-result-object v0 │ │ +434bb8: 6e10 bf5c 0000 |0024: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +434bbe: 0a03 |0027: move-result v3 │ │ +434bc0: 12f4 |0028: const/4 v4, #int -1 // #ff │ │ +434bc2: 1215 |0029: const/4 v5, #int 1 // #1 │ │ +434bc4: 2c03 5202 0000 |002a: sparse-switch v3, 0000027c // +00000252 │ │ +434bca: 2851 |002d: goto 007e // +0051 │ │ +434bcc: 1a03 0263 |002e: const-string v3, "deleted" // string@6302 │ │ +434bd0: 6e20 b85c 3000 |0030: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +434bd6: 0a00 |0033: move-result v0 │ │ +434bd8: 3800 4a00 |0034: if-eqz v0, 007e // +004a │ │ +434bdc: 1220 |0036: const/4 v0, #int 2 // #2 │ │ +434bde: 2848 |0037: goto 007f // +0048 │ │ +434be0: 1a03 7996 |0038: const-string v3, "received private-key pair" // string@9679 │ │ +434be4: 6e20 b85c 3000 |003a: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +434bea: 0a00 |003d: move-result v0 │ │ +434bec: 3800 4000 |003e: if-eqz v0, 007e // +0040 │ │ +434bf0: 1240 |0040: const/4 v0, #int 4 // #4 │ │ +434bf2: 283e |0041: goto 007f // +003e │ │ +434bf4: 1a03 0000 |0042: const-string v3, "" // string@0000 │ │ +434bf8: 6e20 b85c 3000 |0044: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +434bfe: 0a00 |0047: move-result v0 │ │ +434c00: 3800 3600 |0048: if-eqz v0, 007e // +0036 │ │ +434c04: 1200 |004a: const/4 v0, #int 0 // #0 │ │ +434c06: 2834 |004b: goto 007f // +0034 │ │ +434c08: 1a03 4a98 |004c: const-string v3, "rewind & resume" // string@984a │ │ +434c0c: 6e20 b85c 3000 |004e: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +434c12: 0a00 |0051: move-result v0 │ │ +434c14: 3800 2c00 |0052: if-eqz v0, 007e // +002c │ │ +434c18: 1270 |0054: const/4 v0, #int 7 // #7 │ │ +434c1a: 282a |0055: goto 007f // +002a │ │ +434c1c: 1a03 4998 |0056: const-string v3, "rewind" // string@9849 │ │ +434c20: 6e20 b85c 3000 |0058: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +434c26: 0a00 |005b: move-result v0 │ │ +434c28: 3800 2200 |005c: if-eqz v0, 007e // +0022 │ │ +434c2c: 1260 |005e: const/4 v0, #int 6 // #6 │ │ +434c2e: 2820 |005f: goto 007f // +0020 │ │ +434c30: 1a03 2598 |0060: const-string v3, "resume" // string@9825 │ │ +434c34: 6e20 b85c 3000 |0062: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +434c3a: 0a00 |0065: move-result v0 │ │ +434c3c: 3800 1800 |0066: if-eqz v0, 007e // +0018 │ │ +434c40: 1250 |0068: const/4 v0, #int 5 // #5 │ │ +434c42: 2816 |0069: goto 007f // +0016 │ │ +434c44: 1a03 2993 |006a: const-string v3, "paused" // string@9329 │ │ +434c48: 6e20 b85c 3000 |006c: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +434c4e: 0a00 |006f: move-result v0 │ │ +434c50: 3800 0e00 |0070: if-eqz v0, 007e // +000e │ │ +434c54: 1230 |0072: const/4 v0, #int 3 // #3 │ │ +434c56: 280c |0073: goto 007f // +000c │ │ +434c58: 1a03 fa5f |0074: const-string v3, "completed" // string@5ffa │ │ +434c5c: 6e20 b85c 3000 |0076: invoke-virtual {v0, v3}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +434c62: 0a00 |0079: move-result v0 │ │ +434c64: 3800 0400 |007a: if-eqz v0, 007e // +0004 │ │ +434c68: 1210 |007c: const/4 v0, #int 1 // #1 │ │ +434c6a: 2802 |007d: goto 007f // +0002 │ │ +434c6c: 12f0 |007e: const/4 v0, #int -1 // #ff │ │ +434c6e: 2b00 1f02 0000 |007f: packed-switch v0, 0000029e // +0000021f │ │ +434c74: 5410 c65f |0082: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434c78: 2900 8100 |0084: goto/16 0105 // +0081 │ │ +434c7c: 5410 c65f |0086: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434c80: 7110 24be 0000 |0088: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$000:(Lorg/purple/smoke/SteamReaderFull;)V // method@be24 │ │ +434c86: 6206 c45f |008b: sget-object v6, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ +434c8a: 6207 c35f |008d: sget-object v7, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ +434c8e: 1a08 68a5 |008f: const-string v8, "transferring" // string@a568 │ │ +434c92: 1a09 0000 |0091: const-string v9, "" // string@0000 │ │ +434c96: 5410 c65f |0093: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434c9a: 5400 d25f |0095: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ +434c9e: 6e10 de60 0000 |0097: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +434ca4: 0a0a |009a: move-result v10 │ │ +434ca6: 160b 0000 |009b: const-wide/16 v11, #int 0 // #0 │ │ +434caa: 7407 47ba 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@ba47 │ │ +434cb0: 2900 9b00 |00a0: goto/16 013b // +009b │ │ +434cb4: 5410 c65f |00a2: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434cb8: 7110 24be 0000 |00a4: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$000:(Lorg/purple/smoke/SteamReaderFull;)V // method@be24 │ │ +434cbe: 6203 c45f |00a7: sget-object v3, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ +434cc2: 6204 c35f |00a9: sget-object v4, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ +434cc6: 1a05 2993 |00ab: const-string v5, "paused" // string@9329 │ │ +434cca: 1a06 0000 |00ad: const-string v6, "" // string@0000 │ │ +434cce: 5410 c65f |00af: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434cd2: 5400 d25f |00b1: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ +434cd6: 6e10 de60 0000 |00b3: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +434cdc: 0a07 |00b6: move-result v7 │ │ +434cde: 1608 0000 |00b7: const-wide/16 v8, #int 0 // #0 │ │ +434ce2: 7407 47ba 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@ba47 │ │ +434ce8: 0e00 |00bc: return-void │ │ +434cea: 620a c45f |00bd: sget-object v10, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ +434cee: 620b c35f |00bf: sget-object v11, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ +434cf2: 1a0c 68a5 |00c1: const-string v12, "transferring" // string@a568 │ │ +434cf6: 1a0d 0000 |00c3: const-string v13, "" // string@0000 │ │ +434cfa: 5410 c65f |00c5: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434cfe: 5400 d25f |00c7: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ +434d02: 6e10 de60 0000 |00c9: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +434d08: 0a0e |00cc: move-result v14 │ │ +434d0a: 160f 0000 |00cd: const-wide/16 v15, #int 0 // #0 │ │ +434d0e: 7407 47ba 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@ba47 │ │ +434d14: 2869 |00d2: goto 013b // +0069 │ │ +434d16: 6211 c45f |00d3: sget-object v17, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ +434d1a: 6212 c35f |00d5: sget-object v18, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ +434d1e: 1a13 68a5 |00d7: const-string v19, "transferring" // string@a568 │ │ +434d22: 1a14 0000 |00d9: const-string v20, "" // string@0000 │ │ +434d26: 5410 c65f |00db: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434d2a: 5400 d25f |00dd: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ +434d2e: 6e10 de60 0000 |00df: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +434d34: 0a15 |00e2: move-result v21 │ │ +434d36: 1616 0000 |00e3: const-wide/16 v22, #int 0 // #0 │ │ +434d3a: 7407 47ba 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@ba47 │ │ +434d40: 2853 |00e8: goto 013b // +0053 │ │ +434d42: 6200 c45f |00e9: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ +434d46: 6203 c35f |00eb: sget-object v3, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ +434d4a: 1a04 0000 |00ed: const-string v4, "" // string@0000 │ │ +434d4e: 1a05 cc04 |00ef: const-string v5, "0.00 B / s" // string@04cc │ │ +434d52: 5416 c65f |00f1: iget-object v6, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434d56: 5466 d25f |00f3: iget-object v6, v6, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ +434d5a: 6e10 de60 0600 |00f5: invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +434d60: 0a06 |00f8: move-result v6 │ │ +434d62: 6e56 46ba 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@ba46 │ │ +434d68: 0e00 |00fc: return-void │ │ +434d6a: 5410 c65f |00fd: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434d6e: 5400 cb5f |00ff: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fcb │ │ +434d72: 6e20 dc60 5000 |0101: invoke-virtual {v0, v5}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +434d78: 0e00 |0104: return-void │ │ +434d7a: 7110 25be 0000 |0105: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$100:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; // method@be25 │ │ +434d80: 0c00 |0108: move-result-object v0 │ │ +434d82: 6e10 e360 0000 |0109: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +434d88: 0b06 |010c: move-result-wide v6 │ │ +434d8a: 5410 c65f |010d: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434d8e: 5400 d65f |010f: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ +434d92: 6e10 e360 0000 |0111: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +434d98: 0b08 |0114: move-result-wide v8 │ │ +434d9a: 3100 0608 |0115: cmp-long v0, v6, v8 │ │ +434d9e: 3900 2400 |0117: if-nez v0, 013b // +0024 │ │ +434da2: 5410 c65f |0119: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434da6: 5400 cb5f |011b: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fcb │ │ +434daa: 6e20 dc60 5000 |011d: invoke-virtual {v0, v5}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +434db0: 6206 c45f |0120: sget-object v6, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ +434db4: 6207 c35f |0122: sget-object v7, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ +434db8: 1a08 fa5f |0124: const-string v8, "completed" // string@5ffa │ │ +434dbc: 1a09 0000 |0126: const-string v9, "" // string@0000 │ │ +434dc0: 5410 c65f |0128: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434dc4: 5400 d25f |012a: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ +434dc8: 6e10 de60 0000 |012c: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +434dce: 0a0a |012f: move-result v10 │ │ +434dd0: 5410 c65f |0130: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434dd4: 5400 d65f |0132: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ +434dd8: 6e10 e360 0000 |0134: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +434dde: 0b0b |0137: move-result-wide v11 │ │ +434de0: 7407 47ba 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@ba47 │ │ +434de6: 5410 c65f |013b: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434dea: 7110 26be 0000 |013d: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$200:(Lorg/purple/smoke/SteamReaderFull;)V // method@be26 │ │ +434df0: 5410 c65f |0140: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434df4: 7110 27be 0000 |0142: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$300:(Lorg/purple/smoke/SteamReaderFull;)V // method@be27 │ │ +434dfa: 5410 c65f |0145: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434dfe: 5400 ca5f |0147: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ +434e02: 6e10 da60 0000 |0149: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +434e08: 0a00 |014c: move-result v0 │ │ +434e0a: 3900 2401 |014d: if-nez v0, 0271 // +0124 │ │ +434e0e: 5410 c65f |014f: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434e12: 5400 cb5f |0151: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fcb │ │ +434e16: 6e10 da60 0000 |0153: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +434e1c: 0a00 |0156: move-result v0 │ │ +434e1e: 3800 0400 |0157: if-eqz v0, 015b // +0004 │ │ +434e22: 2900 1801 |0159: goto/16 0271 // +0118 │ │ +434e26: 5410 c65f |015b: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434e2a: 5403 ce5f |015d: iget-object v3, v0, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fce │ │ +434e2e: 1d03 |015f: monitor-enter v3 │ │ +434e30: 5410 c65f |0160: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434e34: 5400 cd5f |0162: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcd │ │ +434e38: 3900 0400 |0164: if-nez v0, 0168 // +0004 │ │ +434e3c: 1e03 |0166: monitor-exit v3 │ │ +434e3e: 0e00 |0167: return-void │ │ +434e40: 1e03 |0168: monitor-exit v3 │ │ +434e42: 5410 c55f |0169: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.m_keyStream:[B // field@5fc5 │ │ +434e46: 1303 6000 |016b: const/16 v3, #int 96 // #60 │ │ +434e4a: 3800 0500 |016d: if-eqz v0, 0172 // +0005 │ │ +434e4e: 2100 |016f: array-length v0, v0 │ │ +434e50: 3230 1e00 |0170: if-eq v0, v3, 018e // +001e │ │ +434e54: 6200 c45f |0172: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ +434e58: 6206 c35f |0174: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ +434e5c: 5417 c65f |0176: iget-object v7, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434e60: 5477 d25f |0178: iget-object v7, v7, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ +434e64: 6e10 de60 0700 |017a: invoke-virtual {v7}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +434e6a: 0a07 |017d: move-result v7 │ │ +434e6c: b157 |017e: sub-int/2addr v7, v5 │ │ +434e6e: 6e40 20ba 6074 |017f: invoke-virtual {v0, v6, v4, v7}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba20 │ │ +434e74: 0c00 |0182: move-result-object v0 │ │ +434e76: 5400 9f5f |0183: iget-object v0, v0, Lorg/purple/smoke/SteamElement;.m_keyStream:[B // field@5f9f │ │ +434e7a: 5b10 c55f |0185: iput-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.m_keyStream:[B // field@5fc5 │ │ +434e7e: 3800 e600 |0187: if-eqz v0, 026d // +00e6 │ │ +434e82: 2100 |0189: array-length v0, v0 │ │ +434e84: 3230 0400 |018a: if-eq v0, v3, 018e // +0004 │ │ +434e88: 2900 e100 |018c: goto/16 026d // +00e1 │ │ +434e8c: 5410 c65f |018e: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434e90: 7110 28be 0000 |0190: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$400:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/Object; // method@be28 │ │ +434e96: 0c03 |0193: move-result-object v3 │ │ +434e98: 1d03 |0194: monitor-enter v3 │ │ +434e9a: 5410 c65f |0195: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434e9e: 7110 28be 0000 |0197: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$400:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/Object; // method@be28 │ │ +434ea4: 0c00 |019a: move-result-object v0 │ │ +434ea6: 1605 4c1d |019b: const-wide/16 v5, #int 7500 // #1d4c │ │ +434eaa: 6e30 985c 5006 |019d: invoke-virtual {v0, v5, v6}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ +434eb0: 1e03 |01a0: monitor-exit v3 │ │ +434eb2: 5410 c65f |01a1: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434eb6: 7110 29be 0000 |01a3: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be29 │ │ +434ebc: 0c00 |01a6: move-result-object v0 │ │ +434ebe: 6e10 da60 0000 |01a7: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +434ec4: 0a00 |01aa: move-result v0 │ │ +434ec6: 3900 3900 |01ab: if-nez v0, 01e4 // +0039 │ │ +434eca: 7100 065d 0000 |01ad: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +434ed0: 0b07 |01b0: move-result-wide v7 │ │ +434ed2: 5410 c65f |01b1: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434ed6: 7110 2abe 0000 |01b3: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$600:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; // method@be2a │ │ +434edc: 0c00 |01b6: move-result-object v0 │ │ +434ede: 6e10 e360 0000 |01b7: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +434ee4: 0b09 |01ba: move-result-wide v9 │ │ +434ee6: bc97 |01bb: sub-long/2addr v7, v9 │ │ +434ee8: 3100 0705 |01bc: cmp-long v0, v7, v5 │ │ +434eec: 3d00 2500 |01be: if-lez v0, 01e3 // +0025 │ │ +434ef0: 5410 c65f |01c0: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434ef4: 5400 ca5f |01c2: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ +434ef8: 6e10 da60 0000 |01c4: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +434efe: 0a00 |01c7: move-result v0 │ │ +434f00: 3900 1b00 |01c8: if-nez v0, 01e3 // +001b │ │ +434f04: 5410 c65f |01ca: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434f08: 5400 cb5f |01cc: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fcb │ │ +434f0c: 6e10 da60 0000 |01ce: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +434f12: 0a00 |01d1: move-result v0 │ │ +434f14: 3800 0300 |01d2: if-eqz v0, 01d5 // +0003 │ │ +434f18: 280f |01d4: goto 01e3 // +000f │ │ +434f1a: 5410 c65f |01d5: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434f1e: 7110 2abe 0000 |01d7: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$600:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; // method@be2a │ │ +434f24: 0c00 |01da: move-result-object v0 │ │ +434f26: 7100 065d 0000 |01db: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +434f2c: 0b05 |01de: move-result-wide v5 │ │ +434f2e: 6e30 e560 5006 |01df: invoke-virtual {v0, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +434f34: 2802 |01e2: goto 01e4 // +0002 │ │ +434f36: 0e00 |01e3: return-void │ │ +434f38: 1400 0080 0000 |01e4: const v0, #float 4.59177e-41 // #00008000 │ │ +434f3e: 2300 481b |01e7: new-array v0, v0, [B // type@1b48 │ │ +434f42: 5413 c65f |01e9: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434f46: 5433 ce5f |01eb: iget-object v3, v3, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fce │ │ +434f4a: 1d03 |01ed: monitor-enter v3 │ │ +434f4c: 5415 c65f |01ee: iget-object v5, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434f50: 5455 cd5f |01f0: iget-object v5, v5, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcd │ │ +434f54: 3905 0400 |01f2: if-nez v5, 01f6 // +0004 │ │ +434f58: 1e03 |01f4: monitor-exit v3 │ │ +434f5a: 0e00 |01f5: return-void │ │ +434f5c: 5415 c65f |01f6: iget-object v5, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434f60: 5455 cd5f |01f8: iget-object v5, v5, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcd │ │ +434f64: 6e10 a85b 0500 |01fa: invoke-virtual {v5}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ +434f6a: 0c05 |01fd: move-result-object v5 │ │ +434f6c: 5416 c65f |01fe: iget-object v6, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434f70: 5466 d65f |0200: iget-object v6, v6, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ +434f74: 6e10 e360 0600 |0202: invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +434f7a: 0b06 |0205: move-result-wide v6 │ │ +434f7c: 6e30 cd5d 6507 |0206: invoke-virtual {v5, v6, v7}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcd │ │ +434f82: 5415 c65f |0209: iget-object v5, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434f86: 5455 cd5f |020b: iget-object v5, v5, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcd │ │ +434f8a: 6e20 a95b 0500 |020d: invoke-virtual {v5, v0}, Ljava/io/FileInputStream;.read:([B)I // method@5ba9 │ │ +434f90: 0a05 |0210: move-result v5 │ │ +434f92: 1e03 |0211: monitor-exit v3 │ │ +434f94: 3345 0c00 |0212: if-ne v5, v4, 021e // +000c │ │ +434f98: 5410 c65f |0214: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434f9c: 7110 29be 0000 |0216: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be29 │ │ +434fa2: 0c00 |0219: move-result-object v0 │ │ +434fa4: 6e20 dc60 2000 |021a: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +434faa: 0e00 |021d: return-void │ │ +434fac: 5413 c65f |021e: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434fb0: 7110 2bbe 0300 |0220: invoke-static {v3}, Lorg/purple/smoke/SteamReaderFull;.access$700:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; // method@be2b │ │ +434fb6: 0c03 |0223: move-result-object v3 │ │ +434fb8: 8156 |0224: int-to-long v6, v5 │ │ +434fba: 6e30 e560 6307 |0225: invoke-virtual {v3, v6, v7}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +434fc0: 5413 c65f |0228: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434fc4: 7110 29be 0300 |022a: invoke-static {v3}, Lorg/purple/smoke/SteamReaderFull;.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be29 │ │ +434fca: 0c03 |022d: move-result-object v3 │ │ +434fcc: 6e20 dc60 2300 |022e: invoke-virtual {v3, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +434fd2: 6206 c35f |0231: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ +434fd6: 5413 c65f |0233: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434fda: 7110 2cbe 0300 |0235: invoke-static {v3}, Lorg/purple/smoke/SteamReaderFull;.access$800:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/String; // method@be2c │ │ +434fe0: 0c07 |0238: move-result-object v7 │ │ +434fe2: 5413 c65f |0239: iget-object v3, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +434fe6: 7110 2dbe 0300 |023b: invoke-static {v3}, Lorg/purple/smoke/SteamReaderFull;.access$900:(Lorg/purple/smoke/SteamReaderFull;)[B // method@be2d │ │ +434fec: 0c08 |023e: move-result-object v8 │ │ +434fee: 5419 c55f |023f: iget-object v9, v1, Lorg/purple/smoke/SteamReaderFull$1;.m_keyStream:[B // field@5fc5 │ │ +434ff2: 7130 b85f 2005 |0241: invoke-static {v0, v2, v5}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb8 │ │ +434ff8: 0c0a |0244: move-result-object v10 │ │ +434ffa: 6200 1a55 |0245: sget-object v0, Lorg/purple/smoke/Messages;.STEAM_SHARE:[B // field@551a │ │ +434ffe: 480b 0002 |0247: aget-byte v11, v0, v2 │ │ +435002: 5410 c65f |0249: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +435006: 5400 d65f |024b: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ +43500a: 6e10 e360 0000 |024d: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +435010: 0b0c |0250: move-result-wide v12 │ │ +435012: 7708 c8bb 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@bbc8 │ │ +435018: 0c00 |0254: move-result-object v0 │ │ +43501a: 3800 2600 |0255: if-eqz v0, 027b // +0026 │ │ +43501e: 7100 10bb 0000 |0257: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +435024: 0c03 |025a: move-result-object v3 │ │ +435026: 7110 b6bb 0000 |025b: invoke-static {v0}, Lorg/purple/smoke/Messages;.bytesToMessageString:([B)Ljava/lang/String; // method@bbb6 │ │ +43502c: 0c00 |025e: move-result-object v0 │ │ +43502e: 6e10 bc5c 0000 |025f: invoke-virtual {v0}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +435034: 0c00 |0262: move-result-object v0 │ │ +435036: 6e30 22bb 2300 |0263: invoke-virtual {v3, v2, v0}, Lorg/purple/smoke/Kernel;.sendSteam:(Z[B)I // method@bb22 │ │ +43503c: 2815 |0266: goto 027b // +0015 │ │ +43503e: 0d00 |0267: move-exception v0 │ │ +435040: 1e03 |0268: monitor-exit v3 │ │ +435042: 2700 |0269: throw v0 │ │ +435044: 0d00 |026a: move-exception v0 │ │ +435046: 1e03 |026b: monitor-exit v3 │ │ +435048: 2700 |026c: throw v0 │ │ +43504a: 0e00 |026d: return-void │ │ +43504c: 0d00 |026e: move-exception v0 │ │ +43504e: 1e03 |026f: monitor-exit v3 │ │ +435050: 2700 |0270: throw v0 │ │ +435052: 0e00 |0271: return-void │ │ +435054: 5410 c65f |0272: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull$1;.this$0:Lorg/purple/smoke/SteamReaderFull; // field@5fc6 │ │ +435058: 7110 29be 0000 |0274: invoke-static {v0}, Lorg/purple/smoke/SteamReaderFull;.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be29 │ │ +43505e: 0c00 |0277: move-result-object v0 │ │ +435060: 6e20 dc60 2000 |0278: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +435066: 0e00 |027b: return-void │ │ +435068: 0002 0800 4bf6 60ac 2e99 acc4 2dc8 ... |027c: sparse-switch-data (34 units) │ │ +4350ac: 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 │ │ @@ -750448,18 +750447,18 @@ │ │ type : '(Lorg/purple/smoke/SteamReaderSimple;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -435738: |[435738] org.purple.smoke.SteamReaderSimple$1.:(Lorg/purple/smoke/SteamReaderSimple;)V │ │ -435748: 5b01 df5f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -43574c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -435752: 0e00 |0005: return-void │ │ +435734: |[435734] org.purple.smoke.SteamReaderSimple$1.:(Lorg/purple/smoke/SteamReaderSimple;)V │ │ +435744: 5b01 df5f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +435748: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43574e: 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; │ │ │ │ @@ -750469,241 +750468,241 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 13 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 464 16-bit code units │ │ -435754: |[435754] org.purple.smoke.SteamReaderSimple$1.run:()V │ │ -435764: 54c0 df5f |0000: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -435768: 5400 e15f |0002: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe1 │ │ -43576c: 6e10 da60 0000 |0004: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -435772: 0a00 |0007: move-result v0 │ │ -435774: 3800 0300 |0008: if-eqz v0, 000b // +0003 │ │ -435778: 0e00 |000a: return-void │ │ -43577a: 6200 c45f |000b: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ -43577e: 54c1 df5f |000d: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -435782: 5411 e65f |000f: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe6 │ │ -435786: 6e10 de60 0100 |0011: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -43578c: 0a01 |0014: move-result v1 │ │ -43578e: 6e20 2fba 1000 |0015: invoke-virtual {v0, v1}, Lorg/purple/smoke/Database;.steamStatus:(I)Ljava/lang/String; // method@ba2f │ │ -435794: 0c00 |0018: move-result-object v0 │ │ -435796: 6e10 cf5c 0000 |0019: invoke-virtual {v0}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@5ccf │ │ -43579c: 0c00 |001c: move-result-object v0 │ │ -43579e: 6e10 d35c 0000 |001d: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -4357a4: 0c00 |0020: move-result-object v0 │ │ -4357a6: 6e10 bf5c 0000 |0021: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -4357ac: 0a01 |0024: move-result v1 │ │ -4357ae: 1202 |0025: const/4 v2, #int 0 // #0 │ │ -4357b0: 12f3 |0026: const/4 v3, #int -1 // #ff │ │ -4357b2: 1214 |0027: const/4 v4, #int 1 // #1 │ │ -4357b4: 2c01 7801 0000 |0028: sparse-switch v1, 000001a0 // +00000178 │ │ -4357ba: 2847 |002b: goto 0072 // +0047 │ │ -4357bc: 1a01 0263 |002c: const-string v1, "deleted" // string@6302 │ │ -4357c0: 6e20 b85c 1000 |002e: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4357c6: 0a00 |0031: move-result v0 │ │ -4357c8: 3800 4000 |0032: if-eqz v0, 0072 // +0040 │ │ -4357cc: 1220 |0034: const/4 v0, #int 2 // #2 │ │ -4357ce: 283e |0035: goto 0073 // +003e │ │ -4357d0: 1a01 0000 |0036: const-string v1, "" // string@0000 │ │ -4357d4: 6e20 b85c 1000 |0038: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4357da: 0a00 |003b: move-result v0 │ │ -4357dc: 3800 3600 |003c: if-eqz v0, 0072 // +0036 │ │ -4357e0: 1200 |003e: const/4 v0, #int 0 // #0 │ │ -4357e2: 2834 |003f: goto 0073 // +0034 │ │ -4357e4: 1a01 4a98 |0040: const-string v1, "rewind & resume" // string@984a │ │ -4357e8: 6e20 b85c 1000 |0042: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4357ee: 0a00 |0045: move-result v0 │ │ -4357f0: 3800 2c00 |0046: if-eqz v0, 0072 // +002c │ │ -4357f4: 1260 |0048: const/4 v0, #int 6 // #6 │ │ -4357f6: 282a |0049: goto 0073 // +002a │ │ -4357f8: 1a01 4998 |004a: const-string v1, "rewind" // string@9849 │ │ -4357fc: 6e20 b85c 1000 |004c: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -435802: 0a00 |004f: move-result v0 │ │ -435804: 3800 2200 |0050: if-eqz v0, 0072 // +0022 │ │ -435808: 1250 |0052: const/4 v0, #int 5 // #5 │ │ -43580a: 2820 |0053: goto 0073 // +0020 │ │ -43580c: 1a01 2598 |0054: const-string v1, "resume" // string@9825 │ │ -435810: 6e20 b85c 1000 |0056: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -435816: 0a00 |0059: move-result v0 │ │ -435818: 3800 1800 |005a: if-eqz v0, 0072 // +0018 │ │ -43581c: 1240 |005c: const/4 v0, #int 4 // #4 │ │ -43581e: 2816 |005d: goto 0073 // +0016 │ │ -435820: 1a01 2993 |005e: const-string v1, "paused" // string@9329 │ │ -435824: 6e20 b85c 1000 |0060: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -43582a: 0a00 |0063: move-result v0 │ │ -43582c: 3800 0e00 |0064: if-eqz v0, 0072 // +000e │ │ -435830: 1230 |0066: const/4 v0, #int 3 // #3 │ │ -435832: 280c |0067: goto 0073 // +000c │ │ -435834: 1a01 fa5f |0068: const-string v1, "completed" // string@5ffa │ │ -435838: 6e20 b85c 1000 |006a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -43583e: 0a00 |006d: move-result v0 │ │ -435840: 3800 0400 |006e: if-eqz v0, 0072 // +0004 │ │ -435844: 1210 |0070: const/4 v0, #int 1 // #1 │ │ -435846: 2802 |0071: goto 0073 // +0002 │ │ -435848: 12f0 |0072: const/4 v0, #int -1 // #ff │ │ -43584a: 2b00 4b01 0000 |0073: packed-switch v0, 000001be // +0000014b │ │ -435850: 2869 |0076: goto 00df // +0069 │ │ -435852: 54c0 df5f |0077: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -435856: 7110 3abe 0000 |0079: invoke-static {v0}, Lorg/purple/smoke/SteamReaderSimple;.access$000:(Lorg/purple/smoke/SteamReaderSimple;)V // method@be3a │ │ -43585c: 6205 c45f |007c: sget-object v5, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ -435860: 6206 c35f |007e: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ -435864: 1a07 68a5 |0080: const-string v7, "transferring" // string@a568 │ │ -435868: 1a08 0000 |0082: const-string v8, "" // string@0000 │ │ -43586c: 54c0 df5f |0084: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -435870: 5400 e65f |0086: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe6 │ │ -435874: 6e10 de60 0000 |0088: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -43587a: 0a09 |008b: move-result v9 │ │ -43587c: 160a 0000 |008c: const-wide/16 v10, #int 0 // #0 │ │ -435880: 7407 47ba 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@ba47 │ │ -435886: 284e |0091: goto 00df // +004e │ │ -435888: 54c0 df5f |0092: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -43588c: 7110 3abe 0000 |0094: invoke-static {v0}, Lorg/purple/smoke/SteamReaderSimple;.access$000:(Lorg/purple/smoke/SteamReaderSimple;)V // method@be3a │ │ -435892: 6201 c45f |0097: sget-object v1, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ -435896: 6202 c35f |0099: sget-object v2, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ -43589a: 1a03 2993 |009b: const-string v3, "paused" // string@9329 │ │ -43589e: 1a04 0000 |009d: const-string v4, "" // string@0000 │ │ -4358a2: 54c0 df5f |009f: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -4358a6: 5400 e65f |00a1: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe6 │ │ -4358aa: 6e10 de60 0000 |00a3: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -4358b0: 0a05 |00a6: move-result v5 │ │ -4358b2: 1606 0000 |00a7: const-wide/16 v6, #int 0 // #0 │ │ -4358b6: 7407 47ba 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@ba47 │ │ -4358bc: 0e00 |00ac: return-void │ │ -4358be: 6205 c45f |00ad: sget-object v5, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ -4358c2: 6206 c35f |00af: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ -4358c6: 1a07 68a5 |00b1: const-string v7, "transferring" // string@a568 │ │ -4358ca: 1a08 0000 |00b3: const-string v8, "" // string@0000 │ │ -4358ce: 54c0 df5f |00b5: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -4358d2: 5400 e65f |00b7: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe6 │ │ -4358d6: 6e10 de60 0000 |00b9: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -4358dc: 0a09 |00bc: move-result v9 │ │ -4358de: 160a 0000 |00bd: const-wide/16 v10, #int 0 // #0 │ │ -4358e2: 7407 47ba 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@ba47 │ │ -4358e8: 281d |00c2: goto 00df // +001d │ │ -4358ea: 6200 c45f |00c3: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ -4358ee: 6201 c35f |00c5: sget-object v1, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ -4358f2: 1a02 0000 |00c7: const-string v2, "" // string@0000 │ │ -4358f6: 1a03 cc04 |00c9: const-string v3, "0.00 B / s" // string@04cc │ │ -4358fa: 54c4 df5f |00cb: iget-object v4, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -4358fe: 5444 e65f |00cd: iget-object v4, v4, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe6 │ │ -435902: 6e10 de60 0400 |00cf: invoke-virtual {v4}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -435908: 0a04 |00d2: move-result v4 │ │ -43590a: 6e54 46ba 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@ba46 │ │ -435910: 0e00 |00d6: return-void │ │ -435912: 54c0 df5f |00d7: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -435916: 5400 e25f |00d9: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe2 │ │ -43591a: 6e20 dc60 4000 |00db: invoke-virtual {v0, v4}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -435920: 0e00 |00de: return-void │ │ -435922: 7100 10bb 0000 |00df: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -435928: 0c00 |00e2: move-result-object v0 │ │ -43592a: 6e10 15bb 0000 |00e3: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.nextSimpleSteamOid:()I // method@bb15 │ │ -435930: 0a00 |00e6: move-result v0 │ │ -435932: 54c1 df5f |00e7: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -435936: 5411 e65f |00e9: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe6 │ │ -43593a: 6e10 de60 0100 |00eb: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -435940: 0a01 |00ee: move-result v1 │ │ -435942: 3310 ad00 |00ef: if-ne v0, v1, 019c // +00ad │ │ -435946: 54c0 df5f |00f1: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -43594a: 5400 e15f |00f3: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe1 │ │ -43594e: 6e10 da60 0000 |00f5: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -435954: 0a00 |00f8: move-result v0 │ │ -435956: 3800 0400 |00f9: if-eqz v0, 00fd // +0004 │ │ -43595a: 2900 a100 |00fb: goto/16 019c // +00a1 │ │ -43595e: 54c0 df5f |00fd: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -435962: 5400 e45f |00ff: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fe4 │ │ -435966: 1d00 |0101: monitor-enter v0 │ │ -435968: 54c1 df5f |0102: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -43596c: 5411 e35f |0104: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe3 │ │ -435970: 3901 0400 |0106: if-nez v1, 010a // +0004 │ │ -435974: 1e00 |0108: monitor-exit v0 │ │ -435976: 0e00 |0109: return-void │ │ -435978: 54c1 df5f |010a: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -43597c: 5411 e35f |010c: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe3 │ │ -435980: 6e10 a85b 0100 |010e: invoke-virtual {v1}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ -435986: 0c01 |0111: move-result-object v1 │ │ -435988: 54c5 df5f |0112: iget-object v5, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -43598c: 5455 e95f |0114: iget-object v5, v5, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe9 │ │ -435990: 6e10 e360 0500 |0116: invoke-virtual {v5}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -435996: 0b05 |0119: move-result-wide v5 │ │ -435998: 6e30 cd5d 5106 |011a: invoke-virtual {v1, v5, v6}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcd │ │ -43599e: 1e00 |011d: monitor-exit v0 │ │ -4359a0: 1300 0020 |011e: const/16 v0, #int 8192 // #2000 │ │ -4359a4: 2300 481b |0120: new-array v0, v0, [B // type@1b48 │ │ -4359a8: 54c1 df5f |0122: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -4359ac: 5411 e45f |0124: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fe4 │ │ -4359b0: 1d01 |0126: monitor-enter v1 │ │ -4359b2: 54c5 df5f |0127: iget-object v5, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -4359b6: 5455 e35f |0129: iget-object v5, v5, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe3 │ │ -4359ba: 3905 0400 |012b: if-nez v5, 012f // +0004 │ │ -4359be: 1e01 |012d: monitor-exit v1 │ │ -4359c0: 0e00 |012e: return-void │ │ -4359c2: 54c5 df5f |012f: iget-object v5, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -4359c6: 5455 e35f |0131: iget-object v5, v5, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe3 │ │ -4359ca: 6e20 a95b 0500 |0133: invoke-virtual {v5, v0}, Ljava/io/FileInputStream;.read:([B)I // method@5ba9 │ │ -4359d0: 0a05 |0136: move-result v5 │ │ -4359d2: 1e01 |0137: monitor-exit v1 │ │ -4359d4: 3335 2500 |0138: if-ne v5, v3, 015d // +0025 │ │ -4359d8: 54c0 df5f |013a: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -4359dc: 5400 e25f |013c: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe2 │ │ -4359e0: 6e20 dc60 4000 |013e: invoke-virtual {v0, v4}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -4359e6: 6205 c45f |0141: sget-object v5, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ -4359ea: 6206 c35f |0143: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ -4359ee: 1a07 fa5f |0145: const-string v7, "completed" // string@5ffa │ │ -4359f2: 1a08 0000 |0147: const-string v8, "" // string@0000 │ │ -4359f6: 54c0 df5f |0149: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -4359fa: 5400 e65f |014b: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe6 │ │ -4359fe: 6e10 de60 0000 |014d: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -435a04: 0a09 |0150: move-result v9 │ │ -435a06: 54c0 df5f |0151: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -435a0a: 5400 e95f |0153: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe9 │ │ -435a0e: 6e10 e360 0000 |0155: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -435a14: 0b0a |0158: move-result-wide v10 │ │ -435a16: 7407 47ba 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@ba47 │ │ -435a1c: 0e00 |015c: return-void │ │ -435a1e: 7100 10bb 0000 |015d: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -435a24: 0c01 |0160: move-result-object v1 │ │ -435a26: 7130 b85f 2005 |0161: invoke-static {v0, v2, v5}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb8 │ │ -435a2c: 0c00 |0164: move-result-object v0 │ │ -435a2e: 6e30 22bb 4100 |0165: invoke-virtual {v1, v4, v0}, Lorg/purple/smoke/Kernel;.sendSteam:(Z[B)I // method@bb22 │ │ -435a34: 0a00 |0168: move-result v0 │ │ -435a36: 54c1 df5f |0169: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -435a3a: 8102 |016b: int-to-long v2, v0 │ │ -435a3c: 7130 3bbe 2103 |016c: invoke-static {v1, v2, v3}, Lorg/purple/smoke/SteamReaderSimple;.access$100:(Lorg/purple/smoke/SteamReaderSimple;J)V // method@be3b │ │ -435a42: 54c0 df5f |016f: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -435a46: 5400 e95f |0171: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe9 │ │ -435a4a: 6e30 e260 2003 |0173: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.addAndGet:(J)J // method@60e2 │ │ -435a50: 6204 c45f |0176: sget-object v4, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ -435a54: 6205 c35f |0178: sget-object v5, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ -435a58: 1a06 0000 |017a: const-string v6, "" // string@0000 │ │ -435a5c: 54c0 df5f |017c: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -435a60: 6e10 40be 0000 |017e: invoke-virtual {v0}, Lorg/purple/smoke/SteamReaderSimple;.prettyRate:()Ljava/lang/String; // method@be40 │ │ -435a66: 0c07 |0181: move-result-object v7 │ │ -435a68: 54c0 df5f |0182: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -435a6c: 5400 e65f |0184: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe6 │ │ -435a70: 6e10 de60 0000 |0186: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -435a76: 0a08 |0189: move-result v8 │ │ -435a78: 54c0 df5f |018a: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ -435a7c: 5400 e95f |018c: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe9 │ │ -435a80: 6e10 e360 0000 |018e: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -435a86: 0b09 |0191: move-result-wide v9 │ │ -435a88: 7407 47ba 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@ba47 │ │ -435a8e: 280a |0195: goto 019f // +000a │ │ -435a90: 0d00 |0196: move-exception v0 │ │ -435a92: 1e01 |0197: monitor-exit v1 │ │ -435a94: 2700 |0198: throw v0 │ │ -435a96: 0d01 |0199: move-exception v1 │ │ -435a98: 1e00 |019a: monitor-exit v0 │ │ -435a9a: 2701 |019b: throw v1 │ │ -435a9c: 0e00 |019c: return-void │ │ -435a9e: 0d00 |019d: move-exception v0 │ │ -435aa0: 2700 |019e: throw v0 │ │ -435aa2: 0e00 |019f: return-void │ │ -435aa4: 0002 0700 4bf6 60ac 2e99 acc4 2dc8 ... |01a0: sparse-switch-data (30 units) │ │ -435ae0: 0001 0700 0000 0000 6b00 0000 6400 ... |01be: packed-switch-data (18 units) │ │ +435750: |[435750] org.purple.smoke.SteamReaderSimple$1.run:()V │ │ +435760: 54c0 df5f |0000: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +435764: 5400 e15f |0002: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe1 │ │ +435768: 6e10 da60 0000 |0004: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +43576e: 0a00 |0007: move-result v0 │ │ +435770: 3800 0300 |0008: if-eqz v0, 000b // +0003 │ │ +435774: 0e00 |000a: return-void │ │ +435776: 6200 c45f |000b: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ +43577a: 54c1 df5f |000d: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +43577e: 5411 e65f |000f: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe6 │ │ +435782: 6e10 de60 0100 |0011: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +435788: 0a01 |0014: move-result v1 │ │ +43578a: 6e20 2fba 1000 |0015: invoke-virtual {v0, v1}, Lorg/purple/smoke/Database;.steamStatus:(I)Ljava/lang/String; // method@ba2f │ │ +435790: 0c00 |0018: move-result-object v0 │ │ +435792: 6e10 cf5c 0000 |0019: invoke-virtual {v0}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@5ccf │ │ +435798: 0c00 |001c: move-result-object v0 │ │ +43579a: 6e10 d35c 0000 |001d: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +4357a0: 0c00 |0020: move-result-object v0 │ │ +4357a2: 6e10 bf5c 0000 |0021: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +4357a8: 0a01 |0024: move-result v1 │ │ +4357aa: 1202 |0025: const/4 v2, #int 0 // #0 │ │ +4357ac: 12f3 |0026: const/4 v3, #int -1 // #ff │ │ +4357ae: 1214 |0027: const/4 v4, #int 1 // #1 │ │ +4357b0: 2c01 7801 0000 |0028: sparse-switch v1, 000001a0 // +00000178 │ │ +4357b6: 2847 |002b: goto 0072 // +0047 │ │ +4357b8: 1a01 0263 |002c: const-string v1, "deleted" // string@6302 │ │ +4357bc: 6e20 b85c 1000 |002e: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4357c2: 0a00 |0031: move-result v0 │ │ +4357c4: 3800 4000 |0032: if-eqz v0, 0072 // +0040 │ │ +4357c8: 1220 |0034: const/4 v0, #int 2 // #2 │ │ +4357ca: 283e |0035: goto 0073 // +003e │ │ +4357cc: 1a01 0000 |0036: const-string v1, "" // string@0000 │ │ +4357d0: 6e20 b85c 1000 |0038: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4357d6: 0a00 |003b: move-result v0 │ │ +4357d8: 3800 3600 |003c: if-eqz v0, 0072 // +0036 │ │ +4357dc: 1200 |003e: const/4 v0, #int 0 // #0 │ │ +4357de: 2834 |003f: goto 0073 // +0034 │ │ +4357e0: 1a01 4a98 |0040: const-string v1, "rewind & resume" // string@984a │ │ +4357e4: 6e20 b85c 1000 |0042: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4357ea: 0a00 |0045: move-result v0 │ │ +4357ec: 3800 2c00 |0046: if-eqz v0, 0072 // +002c │ │ +4357f0: 1260 |0048: const/4 v0, #int 6 // #6 │ │ +4357f2: 282a |0049: goto 0073 // +002a │ │ +4357f4: 1a01 4998 |004a: const-string v1, "rewind" // string@9849 │ │ +4357f8: 6e20 b85c 1000 |004c: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4357fe: 0a00 |004f: move-result v0 │ │ +435800: 3800 2200 |0050: if-eqz v0, 0072 // +0022 │ │ +435804: 1250 |0052: const/4 v0, #int 5 // #5 │ │ +435806: 2820 |0053: goto 0073 // +0020 │ │ +435808: 1a01 2598 |0054: const-string v1, "resume" // string@9825 │ │ +43580c: 6e20 b85c 1000 |0056: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +435812: 0a00 |0059: move-result v0 │ │ +435814: 3800 1800 |005a: if-eqz v0, 0072 // +0018 │ │ +435818: 1240 |005c: const/4 v0, #int 4 // #4 │ │ +43581a: 2816 |005d: goto 0073 // +0016 │ │ +43581c: 1a01 2993 |005e: const-string v1, "paused" // string@9329 │ │ +435820: 6e20 b85c 1000 |0060: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +435826: 0a00 |0063: move-result v0 │ │ +435828: 3800 0e00 |0064: if-eqz v0, 0072 // +000e │ │ +43582c: 1230 |0066: const/4 v0, #int 3 // #3 │ │ +43582e: 280c |0067: goto 0073 // +000c │ │ +435830: 1a01 fa5f |0068: const-string v1, "completed" // string@5ffa │ │ +435834: 6e20 b85c 1000 |006a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +43583a: 0a00 |006d: move-result v0 │ │ +43583c: 3800 0400 |006e: if-eqz v0, 0072 // +0004 │ │ +435840: 1210 |0070: const/4 v0, #int 1 // #1 │ │ +435842: 2802 |0071: goto 0073 // +0002 │ │ +435844: 12f0 |0072: const/4 v0, #int -1 // #ff │ │ +435846: 2b00 4b01 0000 |0073: packed-switch v0, 000001be // +0000014b │ │ +43584c: 2869 |0076: goto 00df // +0069 │ │ +43584e: 54c0 df5f |0077: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +435852: 7110 3abe 0000 |0079: invoke-static {v0}, Lorg/purple/smoke/SteamReaderSimple;.access$000:(Lorg/purple/smoke/SteamReaderSimple;)V // method@be3a │ │ +435858: 6205 c45f |007c: sget-object v5, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ +43585c: 6206 c35f |007e: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ +435860: 1a07 68a5 |0080: const-string v7, "transferring" // string@a568 │ │ +435864: 1a08 0000 |0082: const-string v8, "" // string@0000 │ │ +435868: 54c0 df5f |0084: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +43586c: 5400 e65f |0086: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe6 │ │ +435870: 6e10 de60 0000 |0088: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +435876: 0a09 |008b: move-result v9 │ │ +435878: 160a 0000 |008c: const-wide/16 v10, #int 0 // #0 │ │ +43587c: 7407 47ba 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@ba47 │ │ +435882: 284e |0091: goto 00df // +004e │ │ +435884: 54c0 df5f |0092: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +435888: 7110 3abe 0000 |0094: invoke-static {v0}, Lorg/purple/smoke/SteamReaderSimple;.access$000:(Lorg/purple/smoke/SteamReaderSimple;)V // method@be3a │ │ +43588e: 6201 c45f |0097: sget-object v1, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ +435892: 6202 c35f |0099: sget-object v2, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ +435896: 1a03 2993 |009b: const-string v3, "paused" // string@9329 │ │ +43589a: 1a04 0000 |009d: const-string v4, "" // string@0000 │ │ +43589e: 54c0 df5f |009f: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +4358a2: 5400 e65f |00a1: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe6 │ │ +4358a6: 6e10 de60 0000 |00a3: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +4358ac: 0a05 |00a6: move-result v5 │ │ +4358ae: 1606 0000 |00a7: const-wide/16 v6, #int 0 // #0 │ │ +4358b2: 7407 47ba 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@ba47 │ │ +4358b8: 0e00 |00ac: return-void │ │ +4358ba: 6205 c45f |00ad: sget-object v5, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ +4358be: 6206 c35f |00af: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ +4358c2: 1a07 68a5 |00b1: const-string v7, "transferring" // string@a568 │ │ +4358c6: 1a08 0000 |00b3: const-string v8, "" // string@0000 │ │ +4358ca: 54c0 df5f |00b5: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +4358ce: 5400 e65f |00b7: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe6 │ │ +4358d2: 6e10 de60 0000 |00b9: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +4358d8: 0a09 |00bc: move-result v9 │ │ +4358da: 160a 0000 |00bd: const-wide/16 v10, #int 0 // #0 │ │ +4358de: 7407 47ba 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@ba47 │ │ +4358e4: 281d |00c2: goto 00df // +001d │ │ +4358e6: 6200 c45f |00c3: sget-object v0, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ +4358ea: 6201 c35f |00c5: sget-object v1, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ +4358ee: 1a02 0000 |00c7: const-string v2, "" // string@0000 │ │ +4358f2: 1a03 cc04 |00c9: const-string v3, "0.00 B / s" // string@04cc │ │ +4358f6: 54c4 df5f |00cb: iget-object v4, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +4358fa: 5444 e65f |00cd: iget-object v4, v4, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe6 │ │ +4358fe: 6e10 de60 0400 |00cf: invoke-virtual {v4}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +435904: 0a04 |00d2: move-result v4 │ │ +435906: 6e54 46ba 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@ba46 │ │ +43590c: 0e00 |00d6: return-void │ │ +43590e: 54c0 df5f |00d7: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +435912: 5400 e25f |00d9: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe2 │ │ +435916: 6e20 dc60 4000 |00db: invoke-virtual {v0, v4}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +43591c: 0e00 |00de: return-void │ │ +43591e: 7100 10bb 0000 |00df: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +435924: 0c00 |00e2: move-result-object v0 │ │ +435926: 6e10 15bb 0000 |00e3: invoke-virtual {v0}, Lorg/purple/smoke/Kernel;.nextSimpleSteamOid:()I // method@bb15 │ │ +43592c: 0a00 |00e6: move-result v0 │ │ +43592e: 54c1 df5f |00e7: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +435932: 5411 e65f |00e9: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe6 │ │ +435936: 6e10 de60 0100 |00eb: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +43593c: 0a01 |00ee: move-result v1 │ │ +43593e: 3310 ad00 |00ef: if-ne v0, v1, 019c // +00ad │ │ +435942: 54c0 df5f |00f1: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +435946: 5400 e15f |00f3: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe1 │ │ +43594a: 6e10 da60 0000 |00f5: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +435950: 0a00 |00f8: move-result v0 │ │ +435952: 3800 0400 |00f9: if-eqz v0, 00fd // +0004 │ │ +435956: 2900 a100 |00fb: goto/16 019c // +00a1 │ │ +43595a: 54c0 df5f |00fd: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +43595e: 5400 e45f |00ff: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fe4 │ │ +435962: 1d00 |0101: monitor-enter v0 │ │ +435964: 54c1 df5f |0102: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +435968: 5411 e35f |0104: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe3 │ │ +43596c: 3901 0400 |0106: if-nez v1, 010a // +0004 │ │ +435970: 1e00 |0108: monitor-exit v0 │ │ +435972: 0e00 |0109: return-void │ │ +435974: 54c1 df5f |010a: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +435978: 5411 e35f |010c: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe3 │ │ +43597c: 6e10 a85b 0100 |010e: invoke-virtual {v1}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ +435982: 0c01 |0111: move-result-object v1 │ │ +435984: 54c5 df5f |0112: iget-object v5, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +435988: 5455 e95f |0114: iget-object v5, v5, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe9 │ │ +43598c: 6e10 e360 0500 |0116: invoke-virtual {v5}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +435992: 0b05 |0119: move-result-wide v5 │ │ +435994: 6e30 cd5d 5106 |011a: invoke-virtual {v1, v5, v6}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcd │ │ +43599a: 1e00 |011d: monitor-exit v0 │ │ +43599c: 1300 0020 |011e: const/16 v0, #int 8192 // #2000 │ │ +4359a0: 2300 481b |0120: new-array v0, v0, [B // type@1b48 │ │ +4359a4: 54c1 df5f |0122: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +4359a8: 5411 e45f |0124: iget-object v1, v1, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fe4 │ │ +4359ac: 1d01 |0126: monitor-enter v1 │ │ +4359ae: 54c5 df5f |0127: iget-object v5, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +4359b2: 5455 e35f |0129: iget-object v5, v5, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe3 │ │ +4359b6: 3905 0400 |012b: if-nez v5, 012f // +0004 │ │ +4359ba: 1e01 |012d: monitor-exit v1 │ │ +4359bc: 0e00 |012e: return-void │ │ +4359be: 54c5 df5f |012f: iget-object v5, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +4359c2: 5455 e35f |0131: iget-object v5, v5, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe3 │ │ +4359c6: 6e20 a95b 0500 |0133: invoke-virtual {v5, v0}, Ljava/io/FileInputStream;.read:([B)I // method@5ba9 │ │ +4359cc: 0a05 |0136: move-result v5 │ │ +4359ce: 1e01 |0137: monitor-exit v1 │ │ +4359d0: 3335 2500 |0138: if-ne v5, v3, 015d // +0025 │ │ +4359d4: 54c0 df5f |013a: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +4359d8: 5400 e25f |013c: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe2 │ │ +4359dc: 6e20 dc60 4000 |013e: invoke-virtual {v0, v4}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +4359e2: 6205 c45f |0141: sget-object v5, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ +4359e6: 6206 c35f |0143: sget-object v6, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ +4359ea: 1a07 fa5f |0145: const-string v7, "completed" // string@5ffa │ │ +4359ee: 1a08 0000 |0147: const-string v8, "" // string@0000 │ │ +4359f2: 54c0 df5f |0149: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +4359f6: 5400 e65f |014b: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe6 │ │ +4359fa: 6e10 de60 0000 |014d: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +435a00: 0a09 |0150: move-result v9 │ │ +435a02: 54c0 df5f |0151: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +435a06: 5400 e95f |0153: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe9 │ │ +435a0a: 6e10 e360 0000 |0155: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +435a10: 0b0a |0158: move-result-wide v10 │ │ +435a12: 7407 47ba 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@ba47 │ │ +435a18: 0e00 |015c: return-void │ │ +435a1a: 7100 10bb 0000 |015d: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +435a20: 0c01 |0160: move-result-object v1 │ │ +435a22: 7130 b85f 2005 |0161: invoke-static {v0, v2, v5}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb8 │ │ +435a28: 0c00 |0164: move-result-object v0 │ │ +435a2a: 6e30 22bb 4100 |0165: invoke-virtual {v1, v4, v0}, Lorg/purple/smoke/Kernel;.sendSteam:(Z[B)I // method@bb22 │ │ +435a30: 0a00 |0168: move-result v0 │ │ +435a32: 54c1 df5f |0169: iget-object v1, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +435a36: 8102 |016b: int-to-long v2, v0 │ │ +435a38: 7130 3bbe 2103 |016c: invoke-static {v1, v2, v3}, Lorg/purple/smoke/SteamReaderSimple;.access$100:(Lorg/purple/smoke/SteamReaderSimple;J)V // method@be3b │ │ +435a3e: 54c0 df5f |016f: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +435a42: 5400 e95f |0171: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe9 │ │ +435a46: 6e30 e260 2003 |0173: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.addAndGet:(J)J // method@60e2 │ │ +435a4c: 6204 c45f |0176: sget-object v4, Lorg/purple/smoke/SteamReader;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fc4 │ │ +435a50: 6205 c35f |0178: sget-object v5, Lorg/purple/smoke/SteamReader;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fc3 │ │ +435a54: 1a06 0000 |017a: const-string v6, "" // string@0000 │ │ +435a58: 54c0 df5f |017c: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +435a5c: 6e10 40be 0000 |017e: invoke-virtual {v0}, Lorg/purple/smoke/SteamReaderSimple;.prettyRate:()Ljava/lang/String; // method@be40 │ │ +435a62: 0c07 |0181: move-result-object v7 │ │ +435a64: 54c0 df5f |0182: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +435a68: 5400 e65f |0184: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fe6 │ │ +435a6c: 6e10 de60 0000 |0186: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +435a72: 0a08 |0189: move-result v8 │ │ +435a74: 54c0 df5f |018a: iget-object v0, v12, Lorg/purple/smoke/SteamReaderSimple$1;.this$0:Lorg/purple/smoke/SteamReaderSimple; // field@5fdf │ │ +435a78: 5400 e95f |018c: iget-object v0, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe9 │ │ +435a7c: 6e10 e360 0000 |018e: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +435a82: 0b09 |0191: move-result-wide v9 │ │ +435a84: 7407 47ba 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@ba47 │ │ +435a8a: 280a |0195: goto 019f // +000a │ │ +435a8c: 0d00 |0196: move-exception v0 │ │ +435a8e: 1e01 |0197: monitor-exit v1 │ │ +435a90: 2700 |0198: throw v0 │ │ +435a92: 0d01 |0199: move-exception v1 │ │ +435a94: 1e00 |019a: monitor-exit v0 │ │ +435a96: 2701 |019b: throw v1 │ │ +435a98: 0e00 |019c: return-void │ │ +435a9a: 0d00 |019d: move-exception v0 │ │ +435a9c: 2700 |019e: throw v0 │ │ +435a9e: 0e00 |019f: return-void │ │ +435aa0: 0002 0700 4bf6 60ac 2e99 acc4 2dc8 ... |01a0: sparse-switch-data (30 units) │ │ +435adc: 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 │ │ @@ -750813,18 +750812,18 @@ │ │ type : '(Lorg/purple/smoke/SteamWriter;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -436218: |[436218] org.purple.smoke.SteamWriter$1.:(Lorg/purple/smoke/SteamWriter;)V │ │ -436228: 5b01 ec5f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5fec │ │ -43622c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -436232: 0e00 |0005: return-void │ │ +436214: |[436214] org.purple.smoke.SteamWriter$1.:(Lorg/purple/smoke/SteamWriter;)V │ │ +436224: 5b01 ec5f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5fec │ │ +436228: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43622e: 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; │ │ │ │ @@ -750834,99 +750833,99 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 13 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 158 16-bit code units │ │ -436234: |[436234] org.purple.smoke.SteamWriter$1.run:()V │ │ -436244: 54c0 ec5f |0000: iget-object v0, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5fec │ │ -436248: 7110 4abe 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be4a │ │ -43624e: 0c00 |0005: move-result-object v0 │ │ -436250: 6e10 b060 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/ConcurrentHashMap;.isEmpty:()Z // method@60b0 │ │ -436256: 0a00 |0009: move-result v0 │ │ -436258: 3800 1b00 |000a: if-eqz v0, 0025 // +001b │ │ -43625c: 54c0 ec5f |000c: iget-object v0, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5fec │ │ -436260: 7110 4bbe 0000 |000e: invoke-static {v0}, Lorg/purple/smoke/SteamWriter;.access$100:(Lorg/purple/smoke/SteamWriter;)Ljava/lang/Object; // method@be4b │ │ -436266: 0c00 |0011: move-result-object v0 │ │ -436268: 1d00 |0012: monitor-enter v0 │ │ -43626a: 54c1 ec5f |0013: iget-object v1, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5fec │ │ -43626e: 7110 4bbe 0100 |0015: invoke-static {v1}, Lorg/purple/smoke/SteamWriter;.access$100:(Lorg/purple/smoke/SteamWriter;)Ljava/lang/Object; // method@be4b │ │ -436274: 0c01 |0018: move-result-object v1 │ │ -436276: 1602 dc05 |0019: const-wide/16 v2, #int 1500 // #5dc │ │ -43627a: 6e30 985c 2103 |001b: invoke-virtual {v1, v2, v3}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ -436280: 2803 |001e: goto 0021 // +0003 │ │ -436282: 0d01 |001f: move-exception v1 │ │ -436284: 2803 |0020: goto 0023 // +0003 │ │ -436286: 1e00 |0021: monitor-exit v0 │ │ -436288: 2803 |0022: goto 0025 // +0003 │ │ -43628a: 1e00 |0023: monitor-exit v0 │ │ -43628c: 2701 |0024: throw v1 │ │ -43628e: 54c0 ec5f |0025: iget-object v0, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5fec │ │ -436292: 7110 4abe 0000 |0027: invoke-static {v0}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be4a │ │ -436298: 0c00 |002a: move-result-object v0 │ │ -43629a: 6e10 b160 0000 |002b: invoke-virtual {v0}, Ljava/util/concurrent/ConcurrentHashMap;.keySet:()Ljava/util/Set; // method@60b1 │ │ -4362a0: 0c00 |002e: move-result-object v0 │ │ -4362a2: 7210 7560 0000 |002f: invoke-interface {v0}, Ljava/util/Set;.iterator:()Ljava/util/Iterator; // method@6075 │ │ -4362a8: 0c00 |0032: move-result-object v0 │ │ -4362aa: 7210 1d60 0000 |0033: invoke-interface {v0}, Ljava/util/Iterator;.hasNext:()Z // method@601d │ │ -4362b0: 0a01 |0036: move-result v1 │ │ -4362b2: 3801 6600 |0037: if-eqz v1, 009d // +0066 │ │ -4362b6: 7210 1e60 0000 |0039: invoke-interface {v0}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601e │ │ -4362bc: 0c01 |003c: move-result-object v1 │ │ -4362be: 1f01 db0a |003d: check-cast v1, Ljava/lang/Integer; // type@0adb │ │ -4362c2: 54c2 ec5f |003f: iget-object v2, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5fec │ │ -4362c6: 7110 4abe 0200 |0041: invoke-static {v2}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be4a │ │ -4362cc: 0c02 |0044: move-result-object v2 │ │ -4362ce: 6e20 af60 1200 |0045: invoke-virtual {v2, v1}, Ljava/util/concurrent/ConcurrentHashMap;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@60af │ │ -4362d4: 0c02 |0048: move-result-object v2 │ │ -4362d6: 1f02 331b |0049: check-cast v2, Lorg/purple/smoke/SteamWriter$FileInformation; // type@1b33 │ │ -4362da: 3902 0c00 |004b: if-nez v2, 0057 // +000c │ │ -4362de: 54c2 ec5f |004d: iget-object v2, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5fec │ │ -4362e2: 7110 4abe 0200 |004f: invoke-static {v2}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be4a │ │ -4362e8: 0c02 |0052: move-result-object v2 │ │ -4362ea: 6e20 b360 1200 |0053: invoke-virtual {v2, v1}, Ljava/util/concurrent/ConcurrentHashMap;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@60b3 │ │ -4362f0: 28dd |0056: goto 0033 // -0023 │ │ -4362f2: 7100 4dbe 0000 |0057: invoke-static {}, Lorg/purple/smoke/SteamWriter;.access$300:()Lorg/purple/smoke/Database; // method@be4d │ │ -4362f8: 0c03 |005a: move-result-object v3 │ │ -4362fa: 7100 4cbe 0000 |005b: invoke-static {}, Lorg/purple/smoke/SteamWriter;.access$200:()Lorg/purple/smoke/Cryptography; // method@be4c │ │ -436300: 0c04 |005e: move-result-object v4 │ │ -436302: 5425 ed5f |005f: iget-object v5, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_fileIdentity:[B // field@5fed │ │ -436306: 6e30 2cba 4305 |0061: invoke-virtual {v3, v4, v5}, Lorg/purple/smoke/Database;.steamOidFromFileIdentity:(Lorg/purple/smoke/Cryptography;[B)I // method@ba2c │ │ -43630c: 0a03 |0064: move-result v3 │ │ -43630e: 7100 065d 0000 |0065: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -436314: 0b04 |0068: move-result-wide v4 │ │ -436316: 5326 ee5f |0069: iget-wide v6, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_lastStatusTimestamp:J // field@5fee │ │ -43631a: bc64 |006b: sub-long/2addr v4, v6 │ │ -43631c: 7120 735c 5400 |006c: invoke-static {v4, v5}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ -436322: 0b04 |006f: move-result-wide v4 │ │ -436324: 1606 983a |0070: const-wide/16 v6, #int 15000 // #3a98 │ │ -436328: 3108 0406 |0072: cmp-long v8, v4, v6 │ │ -43632c: 3c08 1f00 |0074: if-gtz v8, 0093 // +001f │ │ -436330: 12f4 |0076: const/4 v4, #int -1 // #ff │ │ -436332: 3343 0300 |0077: if-ne v3, v4, 007a // +0003 │ │ -436336: 281a |0079: goto 0093 // +001a │ │ -436338: 6e10 46be 0200 |007a: invoke-virtual {v2}, Lorg/purple/smoke/SteamWriter$FileInformation;.computeRate:()V // method@be46 │ │ -43633e: 7100 4dbe 0000 |007d: invoke-static {}, Lorg/purple/smoke/SteamWriter;.access$300:()Lorg/purple/smoke/Database; // method@be4d │ │ -436344: 0c05 |0080: move-result-object v5 │ │ -436346: 7100 4cbe 0000 |0081: invoke-static {}, Lorg/purple/smoke/SteamWriter;.access$200:()Lorg/purple/smoke/Cryptography; // method@be4c │ │ -43634c: 0c06 |0084: move-result-object v6 │ │ -43634e: 1a07 7c96 |0085: const-string v7, "receiving" // string@967c │ │ -436352: 6e10 47be 0200 |0087: invoke-virtual {v2}, Lorg/purple/smoke/SteamWriter$FileInformation;.prettyRate:()Ljava/lang/String; // method@be47 │ │ -436358: 0c08 |008a: move-result-object v8 │ │ -43635a: 5229 f05f |008b: iget v9, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_oid:I // field@5ff0 │ │ -43635e: 532a ef5f |008d: iget-wide v10, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fef │ │ -436362: 7407 47ba 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@ba47 │ │ -436368: 28a1 |0092: goto 0033 // -005f │ │ -43636a: 54c2 ec5f |0093: iget-object v2, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5fec │ │ -43636e: 7110 4abe 0200 |0095: invoke-static {v2}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be4a │ │ -436374: 0c02 |0098: move-result-object v2 │ │ -436376: 6e20 b360 1200 |0099: invoke-virtual {v2, v1}, Ljava/util/concurrent/ConcurrentHashMap;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@60b3 │ │ -43637c: 2897 |009c: goto 0033 // -0069 │ │ -43637e: 0e00 |009d: return-void │ │ +436230: |[436230] org.purple.smoke.SteamWriter$1.run:()V │ │ +436240: 54c0 ec5f |0000: iget-object v0, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5fec │ │ +436244: 7110 4abe 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be4a │ │ +43624a: 0c00 |0005: move-result-object v0 │ │ +43624c: 6e10 b060 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/ConcurrentHashMap;.isEmpty:()Z // method@60b0 │ │ +436252: 0a00 |0009: move-result v0 │ │ +436254: 3800 1b00 |000a: if-eqz v0, 0025 // +001b │ │ +436258: 54c0 ec5f |000c: iget-object v0, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5fec │ │ +43625c: 7110 4bbe 0000 |000e: invoke-static {v0}, Lorg/purple/smoke/SteamWriter;.access$100:(Lorg/purple/smoke/SteamWriter;)Ljava/lang/Object; // method@be4b │ │ +436262: 0c00 |0011: move-result-object v0 │ │ +436264: 1d00 |0012: monitor-enter v0 │ │ +436266: 54c1 ec5f |0013: iget-object v1, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5fec │ │ +43626a: 7110 4bbe 0100 |0015: invoke-static {v1}, Lorg/purple/smoke/SteamWriter;.access$100:(Lorg/purple/smoke/SteamWriter;)Ljava/lang/Object; // method@be4b │ │ +436270: 0c01 |0018: move-result-object v1 │ │ +436272: 1602 dc05 |0019: const-wide/16 v2, #int 1500 // #5dc │ │ +436276: 6e30 985c 2103 |001b: invoke-virtual {v1, v2, v3}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ +43627c: 2803 |001e: goto 0021 // +0003 │ │ +43627e: 0d01 |001f: move-exception v1 │ │ +436280: 2803 |0020: goto 0023 // +0003 │ │ +436282: 1e00 |0021: monitor-exit v0 │ │ +436284: 2803 |0022: goto 0025 // +0003 │ │ +436286: 1e00 |0023: monitor-exit v0 │ │ +436288: 2701 |0024: throw v1 │ │ +43628a: 54c0 ec5f |0025: iget-object v0, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5fec │ │ +43628e: 7110 4abe 0000 |0027: invoke-static {v0}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be4a │ │ +436294: 0c00 |002a: move-result-object v0 │ │ +436296: 6e10 b160 0000 |002b: invoke-virtual {v0}, Ljava/util/concurrent/ConcurrentHashMap;.keySet:()Ljava/util/Set; // method@60b1 │ │ +43629c: 0c00 |002e: move-result-object v0 │ │ +43629e: 7210 7560 0000 |002f: invoke-interface {v0}, Ljava/util/Set;.iterator:()Ljava/util/Iterator; // method@6075 │ │ +4362a4: 0c00 |0032: move-result-object v0 │ │ +4362a6: 7210 1d60 0000 |0033: invoke-interface {v0}, Ljava/util/Iterator;.hasNext:()Z // method@601d │ │ +4362ac: 0a01 |0036: move-result v1 │ │ +4362ae: 3801 6600 |0037: if-eqz v1, 009d // +0066 │ │ +4362b2: 7210 1e60 0000 |0039: invoke-interface {v0}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601e │ │ +4362b8: 0c01 |003c: move-result-object v1 │ │ +4362ba: 1f01 db0a |003d: check-cast v1, Ljava/lang/Integer; // type@0adb │ │ +4362be: 54c2 ec5f |003f: iget-object v2, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5fec │ │ +4362c2: 7110 4abe 0200 |0041: invoke-static {v2}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be4a │ │ +4362c8: 0c02 |0044: move-result-object v2 │ │ +4362ca: 6e20 af60 1200 |0045: invoke-virtual {v2, v1}, Ljava/util/concurrent/ConcurrentHashMap;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@60af │ │ +4362d0: 0c02 |0048: move-result-object v2 │ │ +4362d2: 1f02 331b |0049: check-cast v2, Lorg/purple/smoke/SteamWriter$FileInformation; // type@1b33 │ │ +4362d6: 3902 0c00 |004b: if-nez v2, 0057 // +000c │ │ +4362da: 54c2 ec5f |004d: iget-object v2, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5fec │ │ +4362de: 7110 4abe 0200 |004f: invoke-static {v2}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be4a │ │ +4362e4: 0c02 |0052: move-result-object v2 │ │ +4362e6: 6e20 b360 1200 |0053: invoke-virtual {v2, v1}, Ljava/util/concurrent/ConcurrentHashMap;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@60b3 │ │ +4362ec: 28dd |0056: goto 0033 // -0023 │ │ +4362ee: 7100 4dbe 0000 |0057: invoke-static {}, Lorg/purple/smoke/SteamWriter;.access$300:()Lorg/purple/smoke/Database; // method@be4d │ │ +4362f4: 0c03 |005a: move-result-object v3 │ │ +4362f6: 7100 4cbe 0000 |005b: invoke-static {}, Lorg/purple/smoke/SteamWriter;.access$200:()Lorg/purple/smoke/Cryptography; // method@be4c │ │ +4362fc: 0c04 |005e: move-result-object v4 │ │ +4362fe: 5425 ed5f |005f: iget-object v5, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_fileIdentity:[B // field@5fed │ │ +436302: 6e30 2cba 4305 |0061: invoke-virtual {v3, v4, v5}, Lorg/purple/smoke/Database;.steamOidFromFileIdentity:(Lorg/purple/smoke/Cryptography;[B)I // method@ba2c │ │ +436308: 0a03 |0064: move-result v3 │ │ +43630a: 7100 065d 0000 |0065: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +436310: 0b04 |0068: move-result-wide v4 │ │ +436312: 5326 ee5f |0069: iget-wide v6, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_lastStatusTimestamp:J // field@5fee │ │ +436316: bc64 |006b: sub-long/2addr v4, v6 │ │ +436318: 7120 735c 5400 |006c: invoke-static {v4, v5}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ +43631e: 0b04 |006f: move-result-wide v4 │ │ +436320: 1606 983a |0070: const-wide/16 v6, #int 15000 // #3a98 │ │ +436324: 3108 0406 |0072: cmp-long v8, v4, v6 │ │ +436328: 3c08 1f00 |0074: if-gtz v8, 0093 // +001f │ │ +43632c: 12f4 |0076: const/4 v4, #int -1 // #ff │ │ +43632e: 3343 0300 |0077: if-ne v3, v4, 007a // +0003 │ │ +436332: 281a |0079: goto 0093 // +001a │ │ +436334: 6e10 46be 0200 |007a: invoke-virtual {v2}, Lorg/purple/smoke/SteamWriter$FileInformation;.computeRate:()V // method@be46 │ │ +43633a: 7100 4dbe 0000 |007d: invoke-static {}, Lorg/purple/smoke/SteamWriter;.access$300:()Lorg/purple/smoke/Database; // method@be4d │ │ +436340: 0c05 |0080: move-result-object v5 │ │ +436342: 7100 4cbe 0000 |0081: invoke-static {}, Lorg/purple/smoke/SteamWriter;.access$200:()Lorg/purple/smoke/Cryptography; // method@be4c │ │ +436348: 0c06 |0084: move-result-object v6 │ │ +43634a: 1a07 7c96 |0085: const-string v7, "receiving" // string@967c │ │ +43634e: 6e10 47be 0200 |0087: invoke-virtual {v2}, Lorg/purple/smoke/SteamWriter$FileInformation;.prettyRate:()Ljava/lang/String; // method@be47 │ │ +436354: 0c08 |008a: move-result-object v8 │ │ +436356: 5229 f05f |008b: iget v9, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_oid:I // field@5ff0 │ │ +43635a: 532a ef5f |008d: iget-wide v10, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fef │ │ +43635e: 7407 47ba 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@ba47 │ │ +436364: 28a1 |0092: goto 0033 // -005f │ │ +436366: 54c2 ec5f |0093: iget-object v2, v12, Lorg/purple/smoke/SteamWriter$1;.this$0:Lorg/purple/smoke/SteamWriter; // field@5fec │ │ +43636a: 7110 4abe 0200 |0095: invoke-static {v2}, Lorg/purple/smoke/SteamWriter;.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; // method@be4a │ │ +436370: 0c02 |0098: move-result-object v2 │ │ +436372: 6e20 b360 1200 |0099: invoke-virtual {v2, v1}, Ljava/util/concurrent/ConcurrentHashMap;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@60b3 │ │ +436378: 2897 |009c: goto 0033 // -0069 │ │ +43637a: 0e00 |009d: return-void │ │ catches : 4 │ │ 0x0000 - 0x0013 │ │ Ljava/lang/Exception; -> 0x009d │ │ 0x0013 - 0x001e │ │ Ljava/lang/Exception; -> 0x0021 │ │ -> 0x001f │ │ 0x0021 - 0x0024 │ │ @@ -751015,36 +751014,36 @@ │ │ type : '([BIJ)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 7 │ │ ins : 5 │ │ outs : 1 │ │ insns size : 40 16-bit code units │ │ -4363f8: |[4363f8] org.purple.smoke.SteamWriter$FileInformation.:([BIJ)V │ │ -436408: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43640e: 12f0 |0003: const/4 v0, #int -1 // #ff │ │ -436410: 5920 f05f |0004: iput v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_oid:I // field@5ff0 │ │ -436414: 1600 0000 |0006: const-wide/16 v0, #int 0 // #0 │ │ -436418: 5a20 ee5f |0008: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_lastStatusTimestamp:J // field@5fee │ │ -43641c: 5a20 ef5f |000a: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fef │ │ -436420: 5a20 f15f |000c: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_previousOffset:J // field@5ff1 │ │ -436424: 5a20 f25f |000e: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff2 │ │ -436428: 5a20 f45f |0010: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_time0:J // field@5ff4 │ │ -43642c: 1200 |0012: const/4 v0, #int 0 // #0 │ │ -43642e: 5f20 f35f |0013: iput-short v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_stalled:S // field@5ff3 │ │ -436432: 5b23 ed5f |0015: iput-object v3, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_fileIdentity:[B // field@5fed │ │ -436436: 7100 065d 0000 |0017: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -43643c: 0b00 |001a: move-result-wide v0 │ │ -43643e: 5a20 ee5f |001b: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_lastStatusTimestamp:J // field@5fee │ │ -436442: 5a25 ef5f |001d: iput-wide v5, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fef │ │ -436446: 5924 f05f |001f: iput v4, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_oid:I // field@5ff0 │ │ -43644a: 7100 065d 0000 |0021: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -436450: 0b03 |0024: move-result-wide v3 │ │ -436452: 5a23 f45f |0025: iput-wide v3, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_time0:J // field@5ff4 │ │ -436456: 0e00 |0027: return-void │ │ +4363f4: |[4363f4] org.purple.smoke.SteamWriter$FileInformation.:([BIJ)V │ │ +436404: 7010 8f5c 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43640a: 12f0 |0003: const/4 v0, #int -1 // #ff │ │ +43640c: 5920 f05f |0004: iput v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_oid:I // field@5ff0 │ │ +436410: 1600 0000 |0006: const-wide/16 v0, #int 0 // #0 │ │ +436414: 5a20 ee5f |0008: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_lastStatusTimestamp:J // field@5fee │ │ +436418: 5a20 ef5f |000a: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fef │ │ +43641c: 5a20 f15f |000c: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_previousOffset:J // field@5ff1 │ │ +436420: 5a20 f25f |000e: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff2 │ │ +436424: 5a20 f45f |0010: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_time0:J // field@5ff4 │ │ +436428: 1200 |0012: const/4 v0, #int 0 // #0 │ │ +43642a: 5f20 f35f |0013: iput-short v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_stalled:S // field@5ff3 │ │ +43642e: 5b23 ed5f |0015: iput-object v3, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_fileIdentity:[B // field@5fed │ │ +436432: 7100 065d 0000 |0017: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +436438: 0b00 |001a: move-result-wide v0 │ │ +43643a: 5a20 ee5f |001b: iput-wide v0, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_lastStatusTimestamp:J // field@5fee │ │ +43643e: 5a25 ef5f |001d: iput-wide v5, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fef │ │ +436442: 5924 f05f |001f: iput v4, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_oid:I // field@5ff0 │ │ +436446: 7100 065d 0000 |0021: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +43644c: 0b03 |0024: move-result-wide v3 │ │ +43644e: 5a23 f45f |0025: iput-wide v3, v2, Lorg/purple/smoke/SteamWriter$FileInformation;.m_time0:J // field@5ff4 │ │ +436452: 0e00 |0027: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=52 │ │ 0x0004 line=43 │ │ 0x0008 line=44 │ │ 0x000a line=45 │ │ 0x000c line=46 │ │ @@ -751068,56 +751067,56 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 12 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 72 16-bit code units │ │ -436458: |[436458] org.purple.smoke.SteamWriter$FileInformation.computeRate:()V │ │ -436468: 7100 065d 0000 |0000: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -43646e: 0b00 |0003: move-result-wide v0 │ │ -436470: 1602 e803 |0004: const-wide/16 v2, #int 1000 // #3e8 │ │ -436474: be20 |0006: div-long/2addr v0, v2 │ │ -436476: 53b4 f45f |0007: iget-wide v4, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_time0:J // field@5ff4 │ │ -43647a: bc40 |0009: sub-long/2addr v0, v4 │ │ -43647c: 7120 735c 1000 |000a: invoke-static {v0, v1}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ -436482: 0b00 |000d: move-result-wide v0 │ │ -436484: 1604 0100 |000e: const-wide/16 v4, #int 1 // #1 │ │ -436488: 3106 0004 |0010: cmp-long v6, v0, v4 │ │ -43648c: 3a06 3500 |0012: if-ltz v6, 0047 // +0035 │ │ -436490: 53b4 f25f |0014: iget-wide v4, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff2 │ │ -436494: 53b6 ef5f |0016: iget-wide v6, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fef │ │ -436498: 53b8 f15f |0018: iget-wide v8, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_previousOffset:J // field@5ff1 │ │ -43649c: 9c08 0608 |001a: sub-long v8, v6, v8 │ │ -4364a0: 8688 |001c: long-to-double v8, v8 │ │ -4364a2: 8600 |001d: long-to-double v0, v0 │ │ -4364a4: 7120 2c5c 9800 |001e: invoke-static {v8, v9}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ -4364aa: 7120 2c5c 1000 |0021: invoke-static {v0, v1}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ -4364b0: ce08 |0024: div-double/2addr v8, v0 │ │ -4364b2: 8b80 |0025: double-to-long v0, v8 │ │ -4364b4: 5ab0 f25f |0026: iput-wide v0, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff2 │ │ -4364b8: 1608 0000 |0028: const-wide/16 v8, #int 0 // #0 │ │ -4364bc: 310a 0008 |002a: cmp-long v10, v0, v8 │ │ -4364c0: 3d0a 0600 |002c: if-lez v10, 0032 // +0006 │ │ -4364c4: 1200 |002e: const/4 v0, #int 0 // #0 │ │ -4364c6: 5fb0 f35f |002f: iput-short v0, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_stalled:S // field@5ff3 │ │ -4364ca: 280d |0031: goto 003e // +000d │ │ -4364cc: 58b0 f35f |0032: iget-short v0, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_stalled:S // field@5ff3 │ │ -4364d0: d801 0001 |0034: add-int/lit8 v1, v0, #int 1 // #01 │ │ -4364d4: 8f11 |0036: int-to-short v1, v1 │ │ -4364d6: 5fb1 f35f |0037: iput-short v1, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_stalled:S // field@5ff3 │ │ -4364da: 1251 |0039: const/4 v1, #int 5 // #5 │ │ -4364dc: 3610 0400 |003a: if-gt v0, v1, 003e // +0004 │ │ -4364e0: 5ab4 f25f |003c: iput-wide v4, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff2 │ │ -4364e4: 5ab6 f15f |003e: iput-wide v6, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_previousOffset:J // field@5ff1 │ │ -4364e8: 7100 065d 0000 |0040: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -4364ee: 0b00 |0043: move-result-wide v0 │ │ -4364f0: be20 |0044: div-long/2addr v0, v2 │ │ -4364f2: 5ab0 f45f |0045: iput-wide v0, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_time0:J // field@5ff4 │ │ -4364f6: 0e00 |0047: return-void │ │ +436454: |[436454] org.purple.smoke.SteamWriter$FileInformation.computeRate:()V │ │ +436464: 7100 065d 0000 |0000: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +43646a: 0b00 |0003: move-result-wide v0 │ │ +43646c: 1602 e803 |0004: const-wide/16 v2, #int 1000 // #3e8 │ │ +436470: be20 |0006: div-long/2addr v0, v2 │ │ +436472: 53b4 f45f |0007: iget-wide v4, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_time0:J // field@5ff4 │ │ +436476: bc40 |0009: sub-long/2addr v0, v4 │ │ +436478: 7120 735c 1000 |000a: invoke-static {v0, v1}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ +43647e: 0b00 |000d: move-result-wide v0 │ │ +436480: 1604 0100 |000e: const-wide/16 v4, #int 1 // #1 │ │ +436484: 3106 0004 |0010: cmp-long v6, v0, v4 │ │ +436488: 3a06 3500 |0012: if-ltz v6, 0047 // +0035 │ │ +43648c: 53b4 f25f |0014: iget-wide v4, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff2 │ │ +436490: 53b6 ef5f |0016: iget-wide v6, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fef │ │ +436494: 53b8 f15f |0018: iget-wide v8, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_previousOffset:J // field@5ff1 │ │ +436498: 9c08 0608 |001a: sub-long v8, v6, v8 │ │ +43649c: 8688 |001c: long-to-double v8, v8 │ │ +43649e: 8600 |001d: long-to-double v0, v0 │ │ +4364a0: 7120 2c5c 9800 |001e: invoke-static {v8, v9}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ +4364a6: 7120 2c5c 1000 |0021: invoke-static {v0, v1}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ +4364ac: ce08 |0024: div-double/2addr v8, v0 │ │ +4364ae: 8b80 |0025: double-to-long v0, v8 │ │ +4364b0: 5ab0 f25f |0026: iput-wide v0, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff2 │ │ +4364b4: 1608 0000 |0028: const-wide/16 v8, #int 0 // #0 │ │ +4364b8: 310a 0008 |002a: cmp-long v10, v0, v8 │ │ +4364bc: 3d0a 0600 |002c: if-lez v10, 0032 // +0006 │ │ +4364c0: 1200 |002e: const/4 v0, #int 0 // #0 │ │ +4364c2: 5fb0 f35f |002f: iput-short v0, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_stalled:S // field@5ff3 │ │ +4364c6: 280d |0031: goto 003e // +000d │ │ +4364c8: 58b0 f35f |0032: iget-short v0, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_stalled:S // field@5ff3 │ │ +4364cc: d801 0001 |0034: add-int/lit8 v1, v0, #int 1 // #01 │ │ +4364d0: 8f11 |0036: int-to-short v1, v1 │ │ +4364d2: 5fb1 f35f |0037: iput-short v1, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_stalled:S // field@5ff3 │ │ +4364d6: 1251 |0039: const/4 v1, #int 5 // #5 │ │ +4364d8: 3610 0400 |003a: if-gt v0, v1, 003e // +0004 │ │ +4364dc: 5ab4 f25f |003c: iput-wide v4, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff2 │ │ +4364e0: 5ab6 f15f |003e: iput-wide v6, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_previousOffset:J // field@5ff1 │ │ +4364e4: 7100 065d 0000 |0040: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +4364ea: 0b00 |0043: move-result-wide v0 │ │ +4364ec: be20 |0044: div-long/2addr v0, v2 │ │ +4364ee: 5ab0 f45f |0045: iput-wide v0, v11, Lorg/purple/smoke/SteamWriter$FileInformation;.m_time0:J // field@5ff4 │ │ +4364f2: 0e00 |0047: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=69 │ │ 0x0014 line=73 │ │ 0x0016 line=75 │ │ 0x002f line=79 │ │ 0x0032 line=80 │ │ @@ -751132,28 +751131,28 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 28 16-bit code units │ │ -4363b0: |[4363b0] org.purple.smoke.SteamWriter$FileInformation.prettyRate:()Ljava/lang/String; │ │ -4363c0: 2200 f10a |0000: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ -4363c4: 7010 ee5c 0000 |0002: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -4363ca: 5331 f25f |0005: iget-wide v1, v3, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff2 │ │ -4363ce: 7120 d65c 2100 |0007: invoke-static {v1, v2}, Ljava/lang/String;.valueOf:(J)Ljava/lang/String; // method@5cd6 │ │ -4363d4: 0c01 |000a: move-result-object v1 │ │ -4363d6: 7110 edbb 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbed │ │ -4363dc: 0c01 |000e: move-result-object v1 │ │ -4363de: 6e20 f95c 1000 |000f: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4363e4: 1a01 a800 |0012: const-string v1, " / s" // string@00a8 │ │ -4363e8: 6e20 f95c 1000 |0014: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4363ee: 6e10 035d 0000 |0017: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4363f4: 0c00 |001a: move-result-object v0 │ │ -4363f6: 1100 |001b: return-object v0 │ │ +4363ac: |[4363ac] org.purple.smoke.SteamWriter$FileInformation.prettyRate:()Ljava/lang/String; │ │ +4363bc: 2200 f10a |0000: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ +4363c0: 7010 ee5c 0000 |0002: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4363c6: 5331 f25f |0005: iget-wide v1, v3, Lorg/purple/smoke/SteamWriter$FileInformation;.m_rate:J // field@5ff2 │ │ +4363ca: 7120 d65c 2100 |0007: invoke-static {v1, v2}, Ljava/lang/String;.valueOf:(J)Ljava/lang/String; // method@5cd6 │ │ +4363d0: 0c01 |000a: move-result-object v1 │ │ +4363d2: 7110 edbb 0100 |000b: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbed │ │ +4363d8: 0c01 |000e: move-result-object v1 │ │ +4363da: 6e20 f95c 1000 |000f: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4363e0: 1a01 a800 |0012: const-string v1, " / s" // string@00a8 │ │ +4363e4: 6e20 f95c 1000 |0014: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4363ea: 6e10 035d 0000 |0017: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4363f0: 0c00 |001a: move-result-object v0 │ │ +4363f2: 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; │ │ │ │ @@ -751218,22 +751217,22 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 13 16-bit code units │ │ -436834: |[436834] org.purple.smoke.SteamWriter.:()V │ │ -436844: 7100 91b9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ -43684a: 0c00 |0003: move-result-object v0 │ │ -43684c: 6900 fa5f |0004: sput-object v0, Lorg/purple/smoke/SteamWriter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5ffa │ │ -436850: 7100 f3b9 0000 |0006: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9f3 │ │ -436856: 0c00 |0009: move-result-object v0 │ │ -436858: 6900 fb5f |000a: sput-object v0, Lorg/purple/smoke/SteamWriter;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5ffb │ │ -43685c: 0e00 |000c: return-void │ │ +436830: |[436830] org.purple.smoke.SteamWriter.:()V │ │ +436840: 7100 91b9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ +436846: 0c00 |0003: move-result-object v0 │ │ +436848: 6900 fa5f |0004: sput-object v0, Lorg/purple/smoke/SteamWriter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5ffa │ │ +43684c: 7100 f3b9 0000 |0006: invoke-static {}, Lorg/purple/smoke/Database;.getInstance:()Lorg/purple/smoke/Database; // method@b9f3 │ │ +436852: 0c00 |0009: move-result-object v0 │ │ +436854: 6900 fb5f |000a: sput-object v0, Lorg/purple/smoke/SteamWriter;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5ffb │ │ +436858: 0e00 |000c: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=93 │ │ 0x0006 line=94 │ │ locals : │ │ │ │ #1 : (in Lorg/purple/smoke/SteamWriter;) │ │ @@ -751241,34 +751240,34 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 41 16-bit code units │ │ -436860: |[436860] org.purple.smoke.SteamWriter.:()V │ │ -436870: 7010 8f5c 0800 |0000: invoke-direct {v8}, Ljava/lang/Object;.:()V // method@5c8f │ │ -436876: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -436878: 5b80 f85f |0004: iput-object v0, v8, Lorg/purple/smoke/SteamWriter;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5ff8 │ │ -43687c: 2200 e60a |0006: new-instance v0, Ljava/lang/Object; // type@0ae6 │ │ -436880: 7010 8f5c 0000 |0008: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -436886: 5b80 f95f |000b: iput-object v0, v8, Lorg/purple/smoke/SteamWriter;.m_schedulerMutex:Ljava/lang/Object; // field@5ff9 │ │ -43688a: 2200 d40b |000d: new-instance v0, Ljava/util/concurrent/ConcurrentHashMap; // type@0bd4 │ │ -43688e: 7010 ac60 0000 |000f: invoke-direct {v0}, Ljava/util/concurrent/ConcurrentHashMap;.:()V // method@60ac │ │ -436894: 5b80 f75f |0012: iput-object v0, v8, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff7 │ │ -436898: 7100 c860 0000 |0014: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c8 │ │ -43689e: 0c01 |0017: move-result-object v1 │ │ -4368a0: 5b81 f85f |0018: iput-object v1, v8, Lorg/purple/smoke/SteamWriter;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5ff8 │ │ -4368a4: 2202 321b |001a: new-instance v2, Lorg/purple/smoke/SteamWriter$1; // type@1b32 │ │ -4368a8: 7020 43be 8200 |001c: invoke-direct {v2, v8}, Lorg/purple/smoke/SteamWriter$1;.:(Lorg/purple/smoke/SteamWriter;)V // method@be43 │ │ -4368ae: 6207 ef2c |001f: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -4368b2: 1603 dc05 |0021: const-wide/16 v3, #int 1500 // #5dc │ │ -4368b6: 1605 dc05 |0023: const-wide/16 v5, #int 1500 // #5dc │ │ -4368ba: 7807 d060 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@60d0 │ │ -4368c0: 0e00 |0028: return-void │ │ +43685c: |[43685c] org.purple.smoke.SteamWriter.:()V │ │ +43686c: 7010 8f5c 0800 |0000: invoke-direct {v8}, Ljava/lang/Object;.:()V // method@5c8f │ │ +436872: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +436874: 5b80 f85f |0004: iput-object v0, v8, Lorg/purple/smoke/SteamWriter;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5ff8 │ │ +436878: 2200 e60a |0006: new-instance v0, Ljava/lang/Object; // type@0ae6 │ │ +43687c: 7010 8f5c 0000 |0008: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +436882: 5b80 f95f |000b: iput-object v0, v8, Lorg/purple/smoke/SteamWriter;.m_schedulerMutex:Ljava/lang/Object; // field@5ff9 │ │ +436886: 2200 d40b |000d: new-instance v0, Ljava/util/concurrent/ConcurrentHashMap; // type@0bd4 │ │ +43688a: 7010 ac60 0000 |000f: invoke-direct {v0}, Ljava/util/concurrent/ConcurrentHashMap;.:()V // method@60ac │ │ +436890: 5b80 f75f |0012: iput-object v0, v8, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff7 │ │ +436894: 7100 c860 0000 |0014: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c8 │ │ +43689a: 0c01 |0017: move-result-object v1 │ │ +43689c: 5b81 f85f |0018: iput-object v1, v8, Lorg/purple/smoke/SteamWriter;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5ff8 │ │ +4368a0: 2202 321b |001a: new-instance v2, Lorg/purple/smoke/SteamWriter$1; // type@1b32 │ │ +4368a4: 7020 43be 8200 |001c: invoke-direct {v2, v8}, Lorg/purple/smoke/SteamWriter$1;.:(Lorg/purple/smoke/SteamWriter;)V // method@be43 │ │ +4368aa: 6207 ef2c |001f: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +4368ae: 1603 dc05 |0021: const-wide/16 v3, #int 1500 // #5dc │ │ +4368b2: 1605 dc05 |0023: const-wide/16 v5, #int 1500 // #5dc │ │ +4368b6: 7807 d060 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@60d0 │ │ +4368bc: 0e00 |0028: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=110 │ │ 0x0004 line=89 │ │ 0x0006 line=91 │ │ 0x000d line=111 │ │ 0x0014 line=112 │ │ @@ -751281,17 +751280,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 │ │ -436530: |[436530] org.purple.smoke.SteamWriter.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; │ │ -436540: 5400 f75f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff7 │ │ -436544: 1100 |0002: return-object v0 │ │ +43652c: |[43652c] org.purple.smoke.SteamWriter.access$000:(Lorg/purple/smoke/SteamWriter;)Ljava/util/concurrent/ConcurrentHashMap; │ │ +43653c: 5400 f75f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff7 │ │ +436540: 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;) │ │ @@ -751299,17 +751298,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 │ │ -436518: |[436518] org.purple.smoke.SteamWriter.access$100:(Lorg/purple/smoke/SteamWriter;)Ljava/lang/Object; │ │ -436528: 5400 f95f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamWriter;.m_schedulerMutex:Ljava/lang/Object; // field@5ff9 │ │ -43652c: 1100 |0002: return-object v0 │ │ +436514: |[436514] org.purple.smoke.SteamWriter.access$100:(Lorg/purple/smoke/SteamWriter;)Ljava/lang/Object; │ │ +436524: 5400 f95f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamWriter;.m_schedulerMutex:Ljava/lang/Object; // field@5ff9 │ │ +436528: 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;) │ │ @@ -751317,54 +751316,54 @@ │ │ type : '()Lorg/purple/smoke/Cryptography;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -436804: |[436804] org.purple.smoke.SteamWriter.access$200:()Lorg/purple/smoke/Cryptography; │ │ -436814: 6200 fa5f |0000: sget-object v0, Lorg/purple/smoke/SteamWriter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5ffa │ │ -436818: 1100 |0002: return-object v0 │ │ +436800: |[436800] org.purple.smoke.SteamWriter.access$200:()Lorg/purple/smoke/Cryptography; │ │ +436810: 6200 fa5f |0000: sget-object v0, Lorg/purple/smoke/SteamWriter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5ffa │ │ +436814: 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 │ │ -43681c: |[43681c] org.purple.smoke.SteamWriter.access$300:()Lorg/purple/smoke/Database; │ │ -43682c: 6200 fb5f |0000: sget-object v0, Lorg/purple/smoke/SteamWriter;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5ffb │ │ -436830: 1100 |0002: return-object v0 │ │ +436818: |[436818] org.purple.smoke.SteamWriter.access$300:()Lorg/purple/smoke/Database; │ │ +436828: 6200 fb5f |0000: sget-object v0, Lorg/purple/smoke/SteamWriter;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5ffb │ │ +43682c: 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 │ │ -4368c4: |[4368c4] org.purple.smoke.SteamWriter.removeFileInformation:(I)V │ │ -4368d4: 5410 f75f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff7 │ │ -4368d8: 7110 605c 0200 |0002: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ -4368de: 0c02 |0005: move-result-object v2 │ │ -4368e0: 6e20 b360 2000 |0006: invoke-virtual {v0, v2}, Ljava/util/concurrent/ConcurrentHashMap;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@60b3 │ │ -4368e6: 0e00 |0009: return-void │ │ +4368c0: |[4368c0] org.purple.smoke.SteamWriter.removeFileInformation:(I)V │ │ +4368d0: 5410 f75f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff7 │ │ +4368d4: 7110 605c 0200 |0002: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ +4368da: 0c02 |0005: move-result-object v2 │ │ +4368dc: 6e20 b360 2000 |0006: invoke-virtual {v0, v2}, Ljava/util/concurrent/ConcurrentHashMap;.remove:(Ljava/lang/Object;)Ljava/lang/Object; // method@60b3 │ │ +4368e2: 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; │ │ @@ -751376,19 +751375,19 @@ │ │ type : '()I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -4364f8: |[4364f8] org.purple.smoke.SteamWriter.size:()I │ │ -436508: 5410 f75f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff7 │ │ -43650c: 6e10 b460 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/ConcurrentHashMap;.size:()I // method@60b4 │ │ -436512: 0a00 |0005: move-result v0 │ │ -436514: 0f00 |0006: return v0 │ │ +4364f4: |[4364f4] org.purple.smoke.SteamWriter.size:()I │ │ +436504: 5410 f75f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff7 │ │ +436508: 6e10 b460 0000 |0002: invoke-virtual {v0}, Ljava/util/concurrent/ConcurrentHashMap;.size:()I // method@60b4 │ │ +43650e: 0a00 |0005: move-result v0 │ │ +436510: 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;) │ │ @@ -751396,161 +751395,161 @@ │ │ type : '([B[BJ)J' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 23 │ │ ins : 5 │ │ outs : 7 │ │ insns size : 255 16-bit code units │ │ -436548: |[436548] org.purple.smoke.SteamWriter.write:([B[BJ)J │ │ -436558: 0801 1200 |0000: move-object/from16 v1, v18 │ │ -43655c: 0800 1300 |0002: move-object/from16 v0, v19 │ │ -436560: 0802 1400 |0004: move-object/from16 v2, v20 │ │ -436564: 0503 1500 |0006: move-wide/from16 v3, v21 │ │ -436568: 1605 ffff |0008: const-wide/16 v5, #int -1 // #ffff │ │ -43656c: 3800 f300 |000a: if-eqz v0, 00fd // +00f3 │ │ -436570: 2107 |000c: array-length v7, v0 │ │ -436572: 3807 f000 |000d: if-eqz v7, 00fd // +00f0 │ │ -436576: 1607 0000 |000f: const-wide/16 v7, #int 0 // #0 │ │ -43657a: 3109 0307 |0011: cmp-long v9, v3, v7 │ │ -43657e: 3a09 ea00 |0013: if-ltz v9, 00fd // +00ea │ │ -436582: 3802 e800 |0015: if-eqz v2, 00fd // +00e8 │ │ -436586: 2129 |0017: array-length v9, v2 │ │ -436588: 3909 0400 |0018: if-nez v9, 001c // +0004 │ │ -43658c: 2900 e300 |001a: goto/16 00fd // +00e3 │ │ -436590: 620a fb5f |001c: sget-object v10, Lorg/purple/smoke/SteamWriter;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5ffb │ │ -436594: 620b fa5f |001e: sget-object v11, Lorg/purple/smoke/SteamWriter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5ffa │ │ -436598: 6e30 2cba ba00 |0020: invoke-virtual {v10, v11, v0}, Lorg/purple/smoke/Database;.steamOidFromFileIdentity:(Lorg/purple/smoke/Cryptography;[B)I // method@ba2c │ │ -43659e: 0a0e |0023: move-result v14 │ │ -4365a0: 12f9 |0024: const/4 v9, #int -1 // #ff │ │ -4365a2: 339e 0300 |0025: if-ne v14, v9, 0028 // +0003 │ │ -4365a6: 1005 |0027: return-wide v5 │ │ -4365a8: d80c 0eff |0028: add-int/lit8 v12, v14, #int -1 // #ff │ │ -4365ac: 6e40 20ba bac9 |002a: invoke-virtual {v10, v11, v9, v12}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba20 │ │ -4365b2: 0c09 |002d: move-result-object v9 │ │ -4365b4: 3909 0300 |002e: if-nez v9, 0031 // +0003 │ │ -4365b8: 1005 |0030: return-wide v5 │ │ -4365ba: 212c |0031: array-length v12, v2 │ │ -4365bc: 81cc |0032: int-to-long v12, v12 │ │ -4365be: bb3c |0033: add-long/2addr v12, v3 │ │ -4365c0: 5397 9e5f |0034: iget-wide v7, v9, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ -4365c4: 3111 0c07 |0036: cmp-long v17, v12, v7 │ │ -4365c8: 3d11 0300 |0038: if-lez v17, 003b // +0003 │ │ -4365cc: 1005 |003a: return-wide v5 │ │ -4365ce: 5597 a15f |003b: iget-boolean v7, v9, Lorg/purple/smoke/SteamElement;.m_locked:Z // field@5fa1 │ │ -4365d2: 3807 0f00 |003d: if-eqz v7, 004c // +000f │ │ -4365d6: 5497 a65f |003f: iget-object v7, v9, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa6 │ │ -4365da: 1a08 fa5f |0041: const-string v8, "completed" // string@5ffa │ │ -4365de: 6e20 b85c 8700 |0043: invoke-virtual {v7, v8}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4365e4: 0a07 |0046: move-result v7 │ │ -4365e6: 3807 0500 |0047: if-eqz v7, 004c // +0005 │ │ -4365ea: 5392 9e5f |0049: iget-wide v2, v9, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ -4365ee: 1002 |004b: return-wide v2 │ │ -4365f0: 5597 a15f |004c: iget-boolean v7, v9, Lorg/purple/smoke/SteamElement;.m_locked:Z // field@5fa1 │ │ -4365f4: 3807 0300 |004e: if-eqz v7, 0051 // +0003 │ │ -4365f8: 1005 |0050: return-wide v5 │ │ -4365fa: 1207 |0051: const/4 v7, #int 0 // #0 │ │ -4365fc: 2208 aa0a |0052: new-instance v8, Ljava/io/File; // type@0aaa │ │ -436600: 620c 6f00 |0054: sget-object v12, Landroid/os/Environment;.DIRECTORY_DOWNLOADS:Ljava/lang/String; // field@006f │ │ -436604: 7110 f304 0c00 |0056: invoke-static {v12}, Landroid/os/Environment;.getExternalStoragePublicDirectory:(Ljava/lang/String;)Ljava/io/File; // method@04f3 │ │ -43660a: 0c0c |0059: move-result-object v12 │ │ -43660c: 549d 9d5f |005a: iget-object v13, v9, Lorg/purple/smoke/SteamElement;.m_fileName:Ljava/lang/String; // field@5f9d │ │ -436610: 7030 8d5b c80d |005c: invoke-direct {v8, v12, v13}, Ljava/io/File;.:(Ljava/io/File;Ljava/lang/String;)V // method@5b8d │ │ -436616: 6e10 945b 0800 |005f: invoke-virtual {v8}, Ljava/io/File;.exists:()Z // method@5b94 │ │ -43661c: 0a0c |0062: move-result v12 │ │ -43661e: 390c 0500 |0063: if-nez v12, 0068 // +0005 │ │ -436622: 6e10 925b 0800 |0065: invoke-virtual {v8}, Ljava/io/File;.createNewFile:()Z // method@5b92 │ │ -436628: 220d bc0a |0068: new-instance v13, Ljava/io/RandomAccessFile; // type@0abc │ │ -43662c: 1a0c ec98 |006a: const-string v12, "rwd" // string@98ec │ │ -436630: 7030 f05b 8d0c |006c: invoke-direct {v13, v8, v12}, Ljava/io/RandomAccessFile;.:(Ljava/io/File;Ljava/lang/String;)V // method@5bf0 │ │ -436636: 6e30 f25b 3d04 |006f: invoke-virtual {v13, v3, v4}, Ljava/io/RandomAccessFile;.seek:(J)V // method@5bf2 │ │ -43663c: 6e20 f35b 2d00 |0072: invoke-virtual {v13, v2}, Ljava/io/RandomAccessFile;.write:([B)V // method@5bf3 │ │ -436642: 160f 0000 |0075: const-wide/16 v15, #int 0 // #0 │ │ -436646: 3108 030f |0077: cmp-long v8, v3, v15 │ │ -43664a: 3908 0d00 |0079: if-nez v8, 0086 // +000d │ │ -43664e: 6e5e 35ba ba77 |007b: invoke-virtual {v10, v11, v7, v7, v14}, Lorg/purple/smoke/Database;.writeEphemeralSteamKeys:(Lorg/purple/smoke/Cryptography;[B[BI)Z // method@ba35 │ │ -436654: 2808 |007e: goto 0086 // +0008 │ │ -436656: 0d00 |007f: move-exception v0 │ │ -436658: 07d7 |0080: move-object v7, v13 │ │ -43665a: 2900 6e00 |0081: goto/16 00ef // +006e │ │ -43665e: 07d7 |0083: move-object v7, v13 │ │ -436660: 2900 7100 |0084: goto/16 00f5 // +0071 │ │ -436664: 2127 |0086: array-length v7, v2 │ │ -436666: 8177 |0087: int-to-long v7, v7 │ │ -436668: bb37 |0088: add-long/2addr v7, v3 │ │ -43666a: 5395 9e5f |0089: iget-wide v5, v9, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ -43666e: 3109 0705 |008b: cmp-long v9, v7, v5 │ │ -436672: 3909 1b00 |008d: if-nez v9, 00a8 // +001b │ │ -436676: 7020 4ebe e100 |008f: invoke-direct {v1, v14}, Lorg/purple/smoke/SteamWriter;.removeFileInformation:(I)V // method@be4e │ │ -43667c: 1a0c fa5f |0092: const-string v12, "completed" // string@5ffa │ │ -436680: 1a00 0000 |0094: const-string v0, "" // string@0000 │ │ -436684: 2122 |0096: array-length v2, v2 │ │ -436686: 8125 |0097: int-to-long v5, v2 │ │ -436688: 9b0f 0305 |0098: add-long v15, v3, v5 │ │ -43668c: 07d5 |009a: move-object v5, v13 │ │ -43668e: 070d |009b: move-object v13, v0 │ │ -436690: 7407 47ba 0a00 |009c: 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@ba47 │ │ -436696: 1a00 0b92 |009f: const-string v0, "org.purple.smoke.steam_status" // string@920b │ │ -43669a: 7110 f7bb 0000 |00a1: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf7 │ │ -4366a0: 6e10 f15b 0500 |00a4: invoke-virtual {v5}, Ljava/io/RandomAccessFile;.close:()V // method@5bf1 │ │ -4366a6: 1003 |00a7: return-wide v3 │ │ -4366a8: 07d5 |00a8: move-object v5, v13 │ │ -4366aa: 5416 f75f |00a9: iget-object v6, v1, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff7 │ │ -4366ae: 7110 605c 0e00 |00ab: invoke-static {v14}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ -4366b4: 0c07 |00ae: move-result-object v7 │ │ -4366b6: 6e20 af60 7600 |00af: invoke-virtual {v6, v7}, Ljava/util/concurrent/ConcurrentHashMap;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@60af │ │ -4366bc: 0c06 |00b2: move-result-object v6 │ │ -4366be: 1f06 331b |00b3: check-cast v6, Lorg/purple/smoke/SteamWriter$FileInformation; // type@1b33 │ │ -4366c2: 3906 0b00 |00b5: if-nez v6, 00c0 // +000b │ │ -4366c6: 2206 331b |00b7: new-instance v6, Lorg/purple/smoke/SteamWriter$FileInformation; // type@1b33 │ │ -4366ca: 2122 |00b9: array-length v2, v2 │ │ -4366cc: 8127 |00ba: int-to-long v7, v2 │ │ -4366ce: bb37 |00bb: add-long/2addr v7, v3 │ │ -4366d0: 7058 45be 067e |00bc: invoke-direct {v6, v0, v14, v7, v8}, Lorg/purple/smoke/SteamWriter$FileInformation;.:([BIJ)V // method@be45 │ │ -4366d6: 280c |00bf: goto 00cb // +000c │ │ -4366d8: 7100 065d 0000 |00c0: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -4366de: 0b07 |00c3: move-result-wide v7 │ │ -4366e0: 5a67 ee5f |00c4: iput-wide v7, v6, Lorg/purple/smoke/SteamWriter$FileInformation;.m_lastStatusTimestamp:J // field@5fee │ │ -4366e4: 2120 |00c6: array-length v0, v2 │ │ -4366e6: 8107 |00c7: int-to-long v7, v0 │ │ -4366e8: bb37 |00c8: add-long/2addr v7, v3 │ │ -4366ea: 5a67 ef5f |00c9: iput-wide v7, v6, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fef │ │ -4366ee: 5410 f75f |00cb: iget-object v0, v1, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff7 │ │ -4366f2: 7110 605c 0e00 |00cd: invoke-static {v14}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ -4366f8: 0c02 |00d0: move-result-object v2 │ │ -4366fa: 6e30 b260 2006 |00d1: invoke-virtual {v0, v2, v6}, Ljava/util/concurrent/ConcurrentHashMap;.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; // method@60b2 │ │ -436700: 2803 |00d4: goto 00d7 // +0003 │ │ -436702: 0d00 |00d5: move-exception v0 │ │ -436704: 2813 |00d6: goto 00e9 // +0013 │ │ -436706: 5412 f95f |00d7: iget-object v2, v1, Lorg/purple/smoke/SteamWriter;.m_schedulerMutex:Ljava/lang/Object; // field@5ff9 │ │ -43670a: 1d02 |00d9: monitor-enter v2 │ │ -43670c: 5410 f95f |00da: iget-object v0, v1, Lorg/purple/smoke/SteamWriter;.m_schedulerMutex:Ljava/lang/Object; // field@5ff9 │ │ -436710: 6e10 945c 0000 |00dc: invoke-virtual {v0}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ -436716: 1e02 |00df: monitor-exit v2 │ │ -436718: 6e10 f15b 0500 |00e0: invoke-virtual {v5}, Ljava/io/RandomAccessFile;.close:()V // method@5bf1 │ │ -43671e: 1003 |00e3: return-wide v3 │ │ -436720: 0d00 |00e4: move-exception v0 │ │ -436722: 1e02 |00e5: monitor-exit v2 │ │ -436724: 2700 |00e6: throw v0 │ │ -436726: 0d00 |00e7: move-exception v0 │ │ -436728: 07d5 |00e8: move-object v5, v13 │ │ -43672a: 0757 |00e9: move-object v7, v5 │ │ -43672c: 2805 |00ea: goto 00ef // +0005 │ │ -43672e: 07d5 |00eb: move-object v5, v13 │ │ -436730: 0757 |00ec: move-object v7, v5 │ │ -436732: 2808 |00ed: goto 00f5 // +0008 │ │ -436734: 0d00 |00ee: move-exception v0 │ │ -436736: 3807 0500 |00ef: if-eqz v7, 00f4 // +0005 │ │ -43673a: 6e10 f15b 0700 |00f1: invoke-virtual {v7}, Ljava/io/RandomAccessFile;.close:()V // method@5bf1 │ │ -436740: 2700 |00f4: throw v0 │ │ -436742: 3807 0500 |00f5: if-eqz v7, 00fa // +0005 │ │ -436746: 6e10 f15b 0700 |00f7: invoke-virtual {v7}, Ljava/io/RandomAccessFile;.close:()V // method@5bf1 │ │ -43674c: 1602 ffff |00fa: const-wide/16 v2, #int -1 // #ffff │ │ -436750: 1002 |00fc: return-wide v2 │ │ -436752: 0452 |00fd: move-wide v2, v5 │ │ -436754: 1002 |00fe: return-wide v2 │ │ +436544: |[436544] org.purple.smoke.SteamWriter.write:([B[BJ)J │ │ +436554: 0801 1200 |0000: move-object/from16 v1, v18 │ │ +436558: 0800 1300 |0002: move-object/from16 v0, v19 │ │ +43655c: 0802 1400 |0004: move-object/from16 v2, v20 │ │ +436560: 0503 1500 |0006: move-wide/from16 v3, v21 │ │ +436564: 1605 ffff |0008: const-wide/16 v5, #int -1 // #ffff │ │ +436568: 3800 f300 |000a: if-eqz v0, 00fd // +00f3 │ │ +43656c: 2107 |000c: array-length v7, v0 │ │ +43656e: 3807 f000 |000d: if-eqz v7, 00fd // +00f0 │ │ +436572: 1607 0000 |000f: const-wide/16 v7, #int 0 // #0 │ │ +436576: 3109 0307 |0011: cmp-long v9, v3, v7 │ │ +43657a: 3a09 ea00 |0013: if-ltz v9, 00fd // +00ea │ │ +43657e: 3802 e800 |0015: if-eqz v2, 00fd // +00e8 │ │ +436582: 2129 |0017: array-length v9, v2 │ │ +436584: 3909 0400 |0018: if-nez v9, 001c // +0004 │ │ +436588: 2900 e300 |001a: goto/16 00fd // +00e3 │ │ +43658c: 620a fb5f |001c: sget-object v10, Lorg/purple/smoke/SteamWriter;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5ffb │ │ +436590: 620b fa5f |001e: sget-object v11, Lorg/purple/smoke/SteamWriter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5ffa │ │ +436594: 6e30 2cba ba00 |0020: invoke-virtual {v10, v11, v0}, Lorg/purple/smoke/Database;.steamOidFromFileIdentity:(Lorg/purple/smoke/Cryptography;[B)I // method@ba2c │ │ +43659a: 0a0e |0023: move-result v14 │ │ +43659c: 12f9 |0024: const/4 v9, #int -1 // #ff │ │ +43659e: 339e 0300 |0025: if-ne v14, v9, 0028 // +0003 │ │ +4365a2: 1005 |0027: return-wide v5 │ │ +4365a4: d80c 0eff |0028: add-int/lit8 v12, v14, #int -1 // #ff │ │ +4365a8: 6e40 20ba bac9 |002a: invoke-virtual {v10, v11, v9, v12}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba20 │ │ +4365ae: 0c09 |002d: move-result-object v9 │ │ +4365b0: 3909 0300 |002e: if-nez v9, 0031 // +0003 │ │ +4365b4: 1005 |0030: return-wide v5 │ │ +4365b6: 212c |0031: array-length v12, v2 │ │ +4365b8: 81cc |0032: int-to-long v12, v12 │ │ +4365ba: bb3c |0033: add-long/2addr v12, v3 │ │ +4365bc: 5397 9e5f |0034: iget-wide v7, v9, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ +4365c0: 3111 0c07 |0036: cmp-long v17, v12, v7 │ │ +4365c4: 3d11 0300 |0038: if-lez v17, 003b // +0003 │ │ +4365c8: 1005 |003a: return-wide v5 │ │ +4365ca: 5597 a15f |003b: iget-boolean v7, v9, Lorg/purple/smoke/SteamElement;.m_locked:Z // field@5fa1 │ │ +4365ce: 3807 0f00 |003d: if-eqz v7, 004c // +000f │ │ +4365d2: 5497 a65f |003f: iget-object v7, v9, Lorg/purple/smoke/SteamElement;.m_status:Ljava/lang/String; // field@5fa6 │ │ +4365d6: 1a08 fa5f |0041: const-string v8, "completed" // string@5ffa │ │ +4365da: 6e20 b85c 8700 |0043: invoke-virtual {v7, v8}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4365e0: 0a07 |0046: move-result v7 │ │ +4365e2: 3807 0500 |0047: if-eqz v7, 004c // +0005 │ │ +4365e6: 5392 9e5f |0049: iget-wide v2, v9, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ +4365ea: 1002 |004b: return-wide v2 │ │ +4365ec: 5597 a15f |004c: iget-boolean v7, v9, Lorg/purple/smoke/SteamElement;.m_locked:Z // field@5fa1 │ │ +4365f0: 3807 0300 |004e: if-eqz v7, 0051 // +0003 │ │ +4365f4: 1005 |0050: return-wide v5 │ │ +4365f6: 1207 |0051: const/4 v7, #int 0 // #0 │ │ +4365f8: 2208 aa0a |0052: new-instance v8, Ljava/io/File; // type@0aaa │ │ +4365fc: 620c 6f00 |0054: sget-object v12, Landroid/os/Environment;.DIRECTORY_DOWNLOADS:Ljava/lang/String; // field@006f │ │ +436600: 7110 f304 0c00 |0056: invoke-static {v12}, Landroid/os/Environment;.getExternalStoragePublicDirectory:(Ljava/lang/String;)Ljava/io/File; // method@04f3 │ │ +436606: 0c0c |0059: move-result-object v12 │ │ +436608: 549d 9d5f |005a: iget-object v13, v9, Lorg/purple/smoke/SteamElement;.m_fileName:Ljava/lang/String; // field@5f9d │ │ +43660c: 7030 8d5b c80d |005c: invoke-direct {v8, v12, v13}, Ljava/io/File;.:(Ljava/io/File;Ljava/lang/String;)V // method@5b8d │ │ +436612: 6e10 945b 0800 |005f: invoke-virtual {v8}, Ljava/io/File;.exists:()Z // method@5b94 │ │ +436618: 0a0c |0062: move-result v12 │ │ +43661a: 390c 0500 |0063: if-nez v12, 0068 // +0005 │ │ +43661e: 6e10 925b 0800 |0065: invoke-virtual {v8}, Ljava/io/File;.createNewFile:()Z // method@5b92 │ │ +436624: 220d bc0a |0068: new-instance v13, Ljava/io/RandomAccessFile; // type@0abc │ │ +436628: 1a0c ec98 |006a: const-string v12, "rwd" // string@98ec │ │ +43662c: 7030 f05b 8d0c |006c: invoke-direct {v13, v8, v12}, Ljava/io/RandomAccessFile;.:(Ljava/io/File;Ljava/lang/String;)V // method@5bf0 │ │ +436632: 6e30 f25b 3d04 |006f: invoke-virtual {v13, v3, v4}, Ljava/io/RandomAccessFile;.seek:(J)V // method@5bf2 │ │ +436638: 6e20 f35b 2d00 |0072: invoke-virtual {v13, v2}, Ljava/io/RandomAccessFile;.write:([B)V // method@5bf3 │ │ +43663e: 160f 0000 |0075: const-wide/16 v15, #int 0 // #0 │ │ +436642: 3108 030f |0077: cmp-long v8, v3, v15 │ │ +436646: 3908 0d00 |0079: if-nez v8, 0086 // +000d │ │ +43664a: 6e5e 35ba ba77 |007b: invoke-virtual {v10, v11, v7, v7, v14}, Lorg/purple/smoke/Database;.writeEphemeralSteamKeys:(Lorg/purple/smoke/Cryptography;[B[BI)Z // method@ba35 │ │ +436650: 2808 |007e: goto 0086 // +0008 │ │ +436652: 0d00 |007f: move-exception v0 │ │ +436654: 07d7 |0080: move-object v7, v13 │ │ +436656: 2900 6e00 |0081: goto/16 00ef // +006e │ │ +43665a: 07d7 |0083: move-object v7, v13 │ │ +43665c: 2900 7100 |0084: goto/16 00f5 // +0071 │ │ +436660: 2127 |0086: array-length v7, v2 │ │ +436662: 8177 |0087: int-to-long v7, v7 │ │ +436664: bb37 |0088: add-long/2addr v7, v3 │ │ +436666: 5395 9e5f |0089: iget-wide v5, v9, Lorg/purple/smoke/SteamElement;.m_fileSize:J // field@5f9e │ │ +43666a: 3109 0705 |008b: cmp-long v9, v7, v5 │ │ +43666e: 3909 1b00 |008d: if-nez v9, 00a8 // +001b │ │ +436672: 7020 4ebe e100 |008f: invoke-direct {v1, v14}, Lorg/purple/smoke/SteamWriter;.removeFileInformation:(I)V // method@be4e │ │ +436678: 1a0c fa5f |0092: const-string v12, "completed" // string@5ffa │ │ +43667c: 1a00 0000 |0094: const-string v0, "" // string@0000 │ │ +436680: 2122 |0096: array-length v2, v2 │ │ +436682: 8125 |0097: int-to-long v5, v2 │ │ +436684: 9b0f 0305 |0098: add-long v15, v3, v5 │ │ +436688: 07d5 |009a: move-object v5, v13 │ │ +43668a: 070d |009b: move-object v13, v0 │ │ +43668c: 7407 47ba 0a00 |009c: 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@ba47 │ │ +436692: 1a00 0b92 |009f: const-string v0, "org.purple.smoke.steam_status" // string@920b │ │ +436696: 7110 f7bb 0000 |00a1: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf7 │ │ +43669c: 6e10 f15b 0500 |00a4: invoke-virtual {v5}, Ljava/io/RandomAccessFile;.close:()V // method@5bf1 │ │ +4366a2: 1003 |00a7: return-wide v3 │ │ +4366a4: 07d5 |00a8: move-object v5, v13 │ │ +4366a6: 5416 f75f |00a9: iget-object v6, v1, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff7 │ │ +4366aa: 7110 605c 0e00 |00ab: invoke-static {v14}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ +4366b0: 0c07 |00ae: move-result-object v7 │ │ +4366b2: 6e20 af60 7600 |00af: invoke-virtual {v6, v7}, Ljava/util/concurrent/ConcurrentHashMap;.get:(Ljava/lang/Object;)Ljava/lang/Object; // method@60af │ │ +4366b8: 0c06 |00b2: move-result-object v6 │ │ +4366ba: 1f06 331b |00b3: check-cast v6, Lorg/purple/smoke/SteamWriter$FileInformation; // type@1b33 │ │ +4366be: 3906 0b00 |00b5: if-nez v6, 00c0 // +000b │ │ +4366c2: 2206 331b |00b7: new-instance v6, Lorg/purple/smoke/SteamWriter$FileInformation; // type@1b33 │ │ +4366c6: 2122 |00b9: array-length v2, v2 │ │ +4366c8: 8127 |00ba: int-to-long v7, v2 │ │ +4366ca: bb37 |00bb: add-long/2addr v7, v3 │ │ +4366cc: 7058 45be 067e |00bc: invoke-direct {v6, v0, v14, v7, v8}, Lorg/purple/smoke/SteamWriter$FileInformation;.:([BIJ)V // method@be45 │ │ +4366d2: 280c |00bf: goto 00cb // +000c │ │ +4366d4: 7100 065d 0000 |00c0: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +4366da: 0b07 |00c3: move-result-wide v7 │ │ +4366dc: 5a67 ee5f |00c4: iput-wide v7, v6, Lorg/purple/smoke/SteamWriter$FileInformation;.m_lastStatusTimestamp:J // field@5fee │ │ +4366e0: 2120 |00c6: array-length v0, v2 │ │ +4366e2: 8107 |00c7: int-to-long v7, v0 │ │ +4366e4: bb37 |00c8: add-long/2addr v7, v3 │ │ +4366e6: 5a67 ef5f |00c9: iput-wide v7, v6, Lorg/purple/smoke/SteamWriter$FileInformation;.m_offset:J // field@5fef │ │ +4366ea: 5410 f75f |00cb: iget-object v0, v1, Lorg/purple/smoke/SteamWriter;.m_files:Ljava/util/concurrent/ConcurrentHashMap; // field@5ff7 │ │ +4366ee: 7110 605c 0e00 |00cd: invoke-static {v14}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@5c60 │ │ +4366f4: 0c02 |00d0: move-result-object v2 │ │ +4366f6: 6e30 b260 2006 |00d1: invoke-virtual {v0, v2, v6}, Ljava/util/concurrent/ConcurrentHashMap;.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; // method@60b2 │ │ +4366fc: 2803 |00d4: goto 00d7 // +0003 │ │ +4366fe: 0d00 |00d5: move-exception v0 │ │ +436700: 2813 |00d6: goto 00e9 // +0013 │ │ +436702: 5412 f95f |00d7: iget-object v2, v1, Lorg/purple/smoke/SteamWriter;.m_schedulerMutex:Ljava/lang/Object; // field@5ff9 │ │ +436706: 1d02 |00d9: monitor-enter v2 │ │ +436708: 5410 f95f |00da: iget-object v0, v1, Lorg/purple/smoke/SteamWriter;.m_schedulerMutex:Ljava/lang/Object; // field@5ff9 │ │ +43670c: 6e10 945c 0000 |00dc: invoke-virtual {v0}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ +436712: 1e02 |00df: monitor-exit v2 │ │ +436714: 6e10 f15b 0500 |00e0: invoke-virtual {v5}, Ljava/io/RandomAccessFile;.close:()V // method@5bf1 │ │ +43671a: 1003 |00e3: return-wide v3 │ │ +43671c: 0d00 |00e4: move-exception v0 │ │ +43671e: 1e02 |00e5: monitor-exit v2 │ │ +436720: 2700 |00e6: throw v0 │ │ +436722: 0d00 |00e7: move-exception v0 │ │ +436724: 07d5 |00e8: move-object v5, v13 │ │ +436726: 0757 |00e9: move-object v7, v5 │ │ +436728: 2805 |00ea: goto 00ef // +0005 │ │ +43672a: 07d5 |00eb: move-object v5, v13 │ │ +43672c: 0757 |00ec: move-object v7, v5 │ │ +43672e: 2808 |00ed: goto 00f5 // +0008 │ │ +436730: 0d00 |00ee: move-exception v0 │ │ +436732: 3807 0500 |00ef: if-eqz v7, 00f4 // +0005 │ │ +436736: 6e10 f15b 0700 |00f1: invoke-virtual {v7}, Ljava/io/RandomAccessFile;.close:()V // method@5bf1 │ │ +43673c: 2700 |00f4: throw v0 │ │ +43673e: 3807 0500 |00f5: if-eqz v7, 00fa // +0005 │ │ +436742: 6e10 f15b 0700 |00f7: invoke-virtual {v7}, Ljava/io/RandomAccessFile;.close:()V // method@5bf1 │ │ +436748: 1602 ffff |00fa: const-wide/16 v2, #int -1 // #ffff │ │ +43674c: 1002 |00fc: return-wide v2 │ │ +43674e: 0452 |00fd: move-wide v2, v5 │ │ +436750: 1002 |00fe: return-wide v2 │ │ catches : 14 │ │ 0x0052 - 0x006f │ │ Ljava/lang/Exception; -> 0x00f5 │ │ -> 0x00ee │ │ 0x006f - 0x0075 │ │ Ljava/lang/Exception; -> 0x00eb │ │ -> 0x00e7 │ │ @@ -751666,20 +751665,20 @@ │ │ type : '(Lorg/purple/smoke/TcpNeighbor;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 9 16-bit code units │ │ -437774: |[437774] org.purple.smoke.TcpNeighbor$1.:(Lorg/purple/smoke/TcpNeighbor;)V │ │ -437784: 5b01 fd5f |0000: iput-object v1, v0, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -437788: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43778e: 1201 |0005: const/4 v1, #int 0 // #0 │ │ -437790: 5c01 fc5f |0006: iput-boolean v1, v0, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffc │ │ -437794: 0e00 |0008: return-void │ │ +437770: |[437770] org.purple.smoke.TcpNeighbor$1.:(Lorg/purple/smoke/TcpNeighbor;)V │ │ +437780: 5b01 fd5f |0000: iput-object v1, v0, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +437784: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43778a: 1201 |0005: const/4 v1, #int 0 // #0 │ │ +43778c: 5c01 fc5f |0006: iput-boolean v1, v0, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffc │ │ +437790: 0e00 |0008: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=305 │ │ 0x0006 line=306 │ │ locals : │ │ 0x0000 - 0x0009 reg=0 this Lorg/purple/smoke/TcpNeighbor$1; │ │ 0x0000 - 0x0009 reg=1 (null) Lorg/purple/smoke/TcpNeighbor; │ │ @@ -751690,139 +751689,139 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 230 16-bit code units │ │ -437798: |[437798] org.purple.smoke.TcpNeighbor$1.run:()V │ │ -4377a8: 1210 |0000: const/4 v0, #int 1 // #1 │ │ -4377aa: 5481 fd5f |0001: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -4377ae: 6e10 57be 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be57 │ │ -4377b4: 0a01 |0006: move-result v1 │ │ -4377b6: 3901 2100 |0007: if-nez v1, 0028 // +0021 │ │ -4377ba: 5481 fd5f |0009: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -4377be: 5411 0260 |000b: iget-object v1, v1, Lorg/purple/smoke/TcpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6002 │ │ -4377c2: 6e10 da60 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -4377c8: 0a01 |0010: move-result v1 │ │ -4377ca: 3901 1700 |0011: if-nez v1, 0028 // +0017 │ │ -4377ce: 5481 fd5f |0013: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -4377d2: 5411 0760 |0015: iget-object v1, v1, Lorg/purple/smoke/TcpNeighbor;.m_mutex:Ljava/lang/Object; // field@6007 │ │ -4377d6: 1d01 |0017: monitor-enter v1 │ │ -4377d8: 5482 fd5f |0018: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -4377dc: 5422 0760 |001a: iget-object v2, v2, Lorg/purple/smoke/TcpNeighbor;.m_mutex:Ljava/lang/Object; // field@6007 │ │ -4377e0: 1603 1027 |001c: const-wide/16 v3, #int 10000 // #2710 │ │ -4377e4: 6e30 985c 3204 |001e: invoke-virtual {v2, v3, v4}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ -4377ea: 2803 |0021: goto 0024 // +0003 │ │ -4377ec: 0d02 |0022: move-exception v2 │ │ -4377ee: 2803 |0023: goto 0026 // +0003 │ │ -4377f0: 1e01 |0024: monitor-exit v1 │ │ -4377f2: 2803 |0025: goto 0028 // +0003 │ │ -4377f4: 1e01 |0026: monitor-exit v1 │ │ -4377f6: 2702 |0027: throw v2 │ │ -4377f8: 5481 fd5f |0028: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -4377fc: 6e10 57be 0100 |002a: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be57 │ │ -437802: 0a01 |002d: move-result v1 │ │ -437804: 3801 a800 |002e: if-eqz v1, 00d6 // +00a8 │ │ -437808: 5481 fd5f |0030: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -43780c: 5411 0260 |0032: iget-object v1, v1, Lorg/purple/smoke/TcpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6002 │ │ -437810: 6e10 da60 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -437816: 0a01 |0037: move-result v1 │ │ -437818: 3801 0400 |0038: if-eqz v1, 003c // +0004 │ │ -43781c: 2900 9c00 |003a: goto/16 00d6 // +009c │ │ -437820: 5581 fc5f |003c: iget-boolean v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffc │ │ -437824: 1202 |003e: const/4 v2, #int 0 // #0 │ │ -437826: 3801 0e00 |003f: if-eqz v1, 004d // +000e │ │ -43782a: 5481 fd5f |0041: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -43782e: 6e10 57be 0100 |0043: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be57 │ │ -437834: 0a01 |0046: move-result v1 │ │ -437836: 3801 0500 |0047: if-eqz v1, 004c // +0005 │ │ -43783a: 5c82 fc5f |0049: iput-boolean v2, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffc │ │ -43783e: 2818 |004b: goto 0063 // +0018 │ │ -437840: 0e00 |004c: return-void │ │ -437842: 5481 fd5f |004d: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -437846: 7110 55be 0100 |004f: invoke-static {v1}, Lorg/purple/smoke/TcpNeighbor;.access$000:(Lorg/purple/smoke/TcpNeighbor;)Ljava/net/Socket; // method@be55 │ │ -43784c: 0c01 |0052: move-result-object v1 │ │ -43784e: 3801 8300 |0053: if-eqz v1, 00d6 // +0083 │ │ -437852: 5481 fd5f |0055: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -437856: 7110 55be 0100 |0057: invoke-static {v1}, Lorg/purple/smoke/TcpNeighbor;.access$000:(Lorg/purple/smoke/TcpNeighbor;)Ljava/net/Socket; // method@be55 │ │ -43785c: 0c01 |005a: move-result-object v1 │ │ -43785e: 6e10 a45d 0100 |005b: invoke-virtual {v1}, Ljava/net/Socket;.getInputStream:()Ljava/io/InputStream; // method@5da4 │ │ -437864: 0c01 |005e: move-result-object v1 │ │ -437866: 3901 0400 |005f: if-nez v1, 0063 // +0004 │ │ -43786a: 2900 7500 |0061: goto/16 00d6 // +0075 │ │ -43786e: 1501 1000 |0063: const/high16 v1, #int 1048576 // #10 │ │ -437872: 2311 481b |0065: new-array v1, v1, [B // type@1b48 │ │ -437876: 5483 fd5f |0067: iget-object v3, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -43787a: 7110 55be 0300 |0069: invoke-static {v3}, Lorg/purple/smoke/TcpNeighbor;.access$000:(Lorg/purple/smoke/TcpNeighbor;)Ljava/net/Socket; // method@be55 │ │ -437880: 0c03 |006c: move-result-object v3 │ │ -437882: 6e10 a45d 0300 |006d: invoke-virtual {v3}, Ljava/net/Socket;.getInputStream:()Ljava/io/InputStream; // method@5da4 │ │ -437888: 0c03 |0070: move-result-object v3 │ │ -43788a: 6e20 c15b 1300 |0071: invoke-virtual {v3, v1}, Ljava/io/InputStream;.read:([B)I // method@5bc1 │ │ -437890: 0a03 |0074: move-result v3 │ │ -437892: 2806 |0075: goto 007b // +0006 │ │ -437894: 5c80 fc5f |0076: iput-boolean v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffc │ │ -437898: 2802 |0078: goto 007a // +0002 │ │ -43789a: 0000 |0079: nop // spacer │ │ -43789c: 1203 |007a: const/4 v3, #int 0 // #0 │ │ -43789e: 8133 |007b: int-to-long v3, v3 │ │ -4378a0: 1605 0000 |007c: const-wide/16 v5, #int 0 // #0 │ │ -4378a4: 3107 0305 |007e: cmp-long v7, v3, v5 │ │ -4378a8: 3a07 4800 |0080: if-ltz v7, 00c8 // +0048 │ │ -4378ac: 5587 fc5f |0082: iget-boolean v7, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffc │ │ -4378b0: 3807 0300 |0084: if-eqz v7, 0087 // +0003 │ │ -4378b4: 2842 |0086: goto 00c8 // +0042 │ │ -4378b6: 3107 0305 |0087: cmp-long v7, v3, v5 │ │ -4378ba: 3907 0300 |0089: if-nez v7, 008c // +0003 │ │ -4378be: 0e00 |008b: return-void │ │ -4378c0: 5485 fd5f |008c: iget-object v5, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -4378c4: 5455 ff5f |008e: iget-object v5, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@5fff │ │ -4378c8: 6e30 e460 3504 |0090: invoke-virtual {v5, v3, v4}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e4 │ │ -4378ce: 5485 fd5f |0093: iget-object v5, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -4378d2: 5455 0660 |0095: iget-object v5, v5, Lorg/purple/smoke/TcpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6006 │ │ -4378d6: 7100 0b5d 0000 |0097: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -4378dc: 0b06 |009a: move-result-wide v6 │ │ -4378de: 6e30 e560 6507 |009b: invoke-virtual {v5, v6, v7}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -4378e4: 5485 fd5f |009e: iget-object v5, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -4378e8: 5455 1160 |00a0: iget-object v5, v5, Lorg/purple/smoke/TcpNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6011 │ │ -4378ec: 6e10 e85c 0500 |00a2: invoke-virtual {v5}, Ljava/lang/StringBuffer;.length:()I // method@5ce8 │ │ -4378f2: 0a05 |00a5: move-result v5 │ │ -4378f4: 1506 8000 |00a6: const/high16 v6, #int 8388608 // #80 │ │ -4378f8: 3565 0f00 |00a8: if-ge v5, v6, 00b7 // +000f │ │ -4378fc: 5485 fd5f |00aa: iget-object v5, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -437900: 5455 1160 |00ac: iget-object v5, v5, Lorg/purple/smoke/TcpNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6011 │ │ -437904: 2206 ef0a |00ae: new-instance v6, Ljava/lang/String; // type@0aef │ │ -437908: 8434 |00b0: long-to-int v4, v3 │ │ -43790a: 7040 ad5c 1642 |00b1: invoke-direct {v6, v1, v2, v4}, Ljava/lang/String;.:([BII)V // method@5cad │ │ -437910: 6e20 e05c 6500 |00b4: invoke-virtual {v5, v6}, Ljava/lang/StringBuffer;.append:(Ljava/lang/String;)Ljava/lang/StringBuffer; // method@5ce0 │ │ -437916: 5481 fd5f |00b7: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -43791a: 5411 0860 |00b9: iget-object v1, v1, Lorg/purple/smoke/TcpNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6008 │ │ -43791e: 1d01 |00bb: monitor-enter v1 │ │ -437920: 5482 fd5f |00bc: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -437924: 5422 0860 |00be: iget-object v2, v2, Lorg/purple/smoke/TcpNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6008 │ │ -437928: 6e10 945c 0200 |00c0: invoke-virtual {v2}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ -43792e: 1e01 |00c3: monitor-exit v1 │ │ -437930: 2821 |00c4: goto 00e5 // +0021 │ │ -437932: 0d02 |00c5: move-exception v2 │ │ -437934: 1e01 |00c6: monitor-exit v1 │ │ -437936: 2702 |00c7: throw v2 │ │ -437938: 5c80 fc5f |00c8: iput-boolean v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffc │ │ -43793c: 5481 fd5f |00ca: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -437940: 1a02 1009 |00cc: const-string v2, "A socket read() error occurred." // string@0910 │ │ -437944: 6e20 62be 2100 |00ce: invoke-virtual {v1, v2}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be62 │ │ -43794a: 5481 fd5f |00d1: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -43794e: 6e10 58be 0100 |00d3: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be58 │ │ -437954: 0e00 |00d6: return-void │ │ -437956: 5c80 fc5f |00d7: iput-boolean v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffc │ │ -43795a: 5480 fd5f |00d9: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -43795e: 1a01 0f09 |00db: const-string v1, "A socket error occurred while reading data." // string@090f │ │ -437962: 6e20 62be 1000 |00dd: invoke-virtual {v0, v1}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be62 │ │ -437968: 5480 fd5f |00e0: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ -43796c: 6e10 58be 0000 |00e2: invoke-virtual {v0}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be58 │ │ -437972: 0e00 |00e5: return-void │ │ +437794: |[437794] org.purple.smoke.TcpNeighbor$1.run:()V │ │ +4377a4: 1210 |0000: const/4 v0, #int 1 // #1 │ │ +4377a6: 5481 fd5f |0001: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +4377aa: 6e10 57be 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be57 │ │ +4377b0: 0a01 |0006: move-result v1 │ │ +4377b2: 3901 2100 |0007: if-nez v1, 0028 // +0021 │ │ +4377b6: 5481 fd5f |0009: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +4377ba: 5411 0260 |000b: iget-object v1, v1, Lorg/purple/smoke/TcpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6002 │ │ +4377be: 6e10 da60 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +4377c4: 0a01 |0010: move-result v1 │ │ +4377c6: 3901 1700 |0011: if-nez v1, 0028 // +0017 │ │ +4377ca: 5481 fd5f |0013: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +4377ce: 5411 0760 |0015: iget-object v1, v1, Lorg/purple/smoke/TcpNeighbor;.m_mutex:Ljava/lang/Object; // field@6007 │ │ +4377d2: 1d01 |0017: monitor-enter v1 │ │ +4377d4: 5482 fd5f |0018: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +4377d8: 5422 0760 |001a: iget-object v2, v2, Lorg/purple/smoke/TcpNeighbor;.m_mutex:Ljava/lang/Object; // field@6007 │ │ +4377dc: 1603 1027 |001c: const-wide/16 v3, #int 10000 // #2710 │ │ +4377e0: 6e30 985c 3204 |001e: invoke-virtual {v2, v3, v4}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ +4377e6: 2803 |0021: goto 0024 // +0003 │ │ +4377e8: 0d02 |0022: move-exception v2 │ │ +4377ea: 2803 |0023: goto 0026 // +0003 │ │ +4377ec: 1e01 |0024: monitor-exit v1 │ │ +4377ee: 2803 |0025: goto 0028 // +0003 │ │ +4377f0: 1e01 |0026: monitor-exit v1 │ │ +4377f2: 2702 |0027: throw v2 │ │ +4377f4: 5481 fd5f |0028: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +4377f8: 6e10 57be 0100 |002a: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be57 │ │ +4377fe: 0a01 |002d: move-result v1 │ │ +437800: 3801 a800 |002e: if-eqz v1, 00d6 // +00a8 │ │ +437804: 5481 fd5f |0030: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +437808: 5411 0260 |0032: iget-object v1, v1, Lorg/purple/smoke/TcpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6002 │ │ +43780c: 6e10 da60 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +437812: 0a01 |0037: move-result v1 │ │ +437814: 3801 0400 |0038: if-eqz v1, 003c // +0004 │ │ +437818: 2900 9c00 |003a: goto/16 00d6 // +009c │ │ +43781c: 5581 fc5f |003c: iget-boolean v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffc │ │ +437820: 1202 |003e: const/4 v2, #int 0 // #0 │ │ +437822: 3801 0e00 |003f: if-eqz v1, 004d // +000e │ │ +437826: 5481 fd5f |0041: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +43782a: 6e10 57be 0100 |0043: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be57 │ │ +437830: 0a01 |0046: move-result v1 │ │ +437832: 3801 0500 |0047: if-eqz v1, 004c // +0005 │ │ +437836: 5c82 fc5f |0049: iput-boolean v2, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffc │ │ +43783a: 2818 |004b: goto 0063 // +0018 │ │ +43783c: 0e00 |004c: return-void │ │ +43783e: 5481 fd5f |004d: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +437842: 7110 55be 0100 |004f: invoke-static {v1}, Lorg/purple/smoke/TcpNeighbor;.access$000:(Lorg/purple/smoke/TcpNeighbor;)Ljava/net/Socket; // method@be55 │ │ +437848: 0c01 |0052: move-result-object v1 │ │ +43784a: 3801 8300 |0053: if-eqz v1, 00d6 // +0083 │ │ +43784e: 5481 fd5f |0055: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +437852: 7110 55be 0100 |0057: invoke-static {v1}, Lorg/purple/smoke/TcpNeighbor;.access$000:(Lorg/purple/smoke/TcpNeighbor;)Ljava/net/Socket; // method@be55 │ │ +437858: 0c01 |005a: move-result-object v1 │ │ +43785a: 6e10 a45d 0100 |005b: invoke-virtual {v1}, Ljava/net/Socket;.getInputStream:()Ljava/io/InputStream; // method@5da4 │ │ +437860: 0c01 |005e: move-result-object v1 │ │ +437862: 3901 0400 |005f: if-nez v1, 0063 // +0004 │ │ +437866: 2900 7500 |0061: goto/16 00d6 // +0075 │ │ +43786a: 1501 1000 |0063: const/high16 v1, #int 1048576 // #10 │ │ +43786e: 2311 481b |0065: new-array v1, v1, [B // type@1b48 │ │ +437872: 5483 fd5f |0067: iget-object v3, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +437876: 7110 55be 0300 |0069: invoke-static {v3}, Lorg/purple/smoke/TcpNeighbor;.access$000:(Lorg/purple/smoke/TcpNeighbor;)Ljava/net/Socket; // method@be55 │ │ +43787c: 0c03 |006c: move-result-object v3 │ │ +43787e: 6e10 a45d 0300 |006d: invoke-virtual {v3}, Ljava/net/Socket;.getInputStream:()Ljava/io/InputStream; // method@5da4 │ │ +437884: 0c03 |0070: move-result-object v3 │ │ +437886: 6e20 c15b 1300 |0071: invoke-virtual {v3, v1}, Ljava/io/InputStream;.read:([B)I // method@5bc1 │ │ +43788c: 0a03 |0074: move-result v3 │ │ +43788e: 2806 |0075: goto 007b // +0006 │ │ +437890: 5c80 fc5f |0076: iput-boolean v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffc │ │ +437894: 2802 |0078: goto 007a // +0002 │ │ +437896: 0000 |0079: nop // spacer │ │ +437898: 1203 |007a: const/4 v3, #int 0 // #0 │ │ +43789a: 8133 |007b: int-to-long v3, v3 │ │ +43789c: 1605 0000 |007c: const-wide/16 v5, #int 0 // #0 │ │ +4378a0: 3107 0305 |007e: cmp-long v7, v3, v5 │ │ +4378a4: 3a07 4800 |0080: if-ltz v7, 00c8 // +0048 │ │ +4378a8: 5587 fc5f |0082: iget-boolean v7, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffc │ │ +4378ac: 3807 0300 |0084: if-eqz v7, 0087 // +0003 │ │ +4378b0: 2842 |0086: goto 00c8 // +0042 │ │ +4378b2: 3107 0305 |0087: cmp-long v7, v3, v5 │ │ +4378b6: 3907 0300 |0089: if-nez v7, 008c // +0003 │ │ +4378ba: 0e00 |008b: return-void │ │ +4378bc: 5485 fd5f |008c: iget-object v5, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +4378c0: 5455 ff5f |008e: iget-object v5, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@5fff │ │ +4378c4: 6e30 e460 3504 |0090: invoke-virtual {v5, v3, v4}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e4 │ │ +4378ca: 5485 fd5f |0093: iget-object v5, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +4378ce: 5455 0660 |0095: iget-object v5, v5, Lorg/purple/smoke/TcpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6006 │ │ +4378d2: 7100 0b5d 0000 |0097: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +4378d8: 0b06 |009a: move-result-wide v6 │ │ +4378da: 6e30 e560 6507 |009b: invoke-virtual {v5, v6, v7}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +4378e0: 5485 fd5f |009e: iget-object v5, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +4378e4: 5455 1160 |00a0: iget-object v5, v5, Lorg/purple/smoke/TcpNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6011 │ │ +4378e8: 6e10 e85c 0500 |00a2: invoke-virtual {v5}, Ljava/lang/StringBuffer;.length:()I // method@5ce8 │ │ +4378ee: 0a05 |00a5: move-result v5 │ │ +4378f0: 1506 8000 |00a6: const/high16 v6, #int 8388608 // #80 │ │ +4378f4: 3565 0f00 |00a8: if-ge v5, v6, 00b7 // +000f │ │ +4378f8: 5485 fd5f |00aa: iget-object v5, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +4378fc: 5455 1160 |00ac: iget-object v5, v5, Lorg/purple/smoke/TcpNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6011 │ │ +437900: 2206 ef0a |00ae: new-instance v6, Ljava/lang/String; // type@0aef │ │ +437904: 8434 |00b0: long-to-int v4, v3 │ │ +437906: 7040 ad5c 1642 |00b1: invoke-direct {v6, v1, v2, v4}, Ljava/lang/String;.:([BII)V // method@5cad │ │ +43790c: 6e20 e05c 6500 |00b4: invoke-virtual {v5, v6}, Ljava/lang/StringBuffer;.append:(Ljava/lang/String;)Ljava/lang/StringBuffer; // method@5ce0 │ │ +437912: 5481 fd5f |00b7: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +437916: 5411 0860 |00b9: iget-object v1, v1, Lorg/purple/smoke/TcpNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6008 │ │ +43791a: 1d01 |00bb: monitor-enter v1 │ │ +43791c: 5482 fd5f |00bc: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +437920: 5422 0860 |00be: iget-object v2, v2, Lorg/purple/smoke/TcpNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6008 │ │ +437924: 6e10 945c 0200 |00c0: invoke-virtual {v2}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ +43792a: 1e01 |00c3: monitor-exit v1 │ │ +43792c: 2821 |00c4: goto 00e5 // +0021 │ │ +43792e: 0d02 |00c5: move-exception v2 │ │ +437930: 1e01 |00c6: monitor-exit v1 │ │ +437932: 2702 |00c7: throw v2 │ │ +437934: 5c80 fc5f |00c8: iput-boolean v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffc │ │ +437938: 5481 fd5f |00ca: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +43793c: 1a02 1009 |00cc: const-string v2, "A socket read() error occurred." // string@0910 │ │ +437940: 6e20 62be 2100 |00ce: invoke-virtual {v1, v2}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be62 │ │ +437946: 5481 fd5f |00d1: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +43794a: 6e10 58be 0100 |00d3: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be58 │ │ +437950: 0e00 |00d6: return-void │ │ +437952: 5c80 fc5f |00d7: iput-boolean v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.m_error:Z // field@5ffc │ │ +437956: 5480 fd5f |00d9: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +43795a: 1a01 0f09 |00db: const-string v1, "A socket error occurred while reading data." // string@090f │ │ +43795e: 6e20 62be 1000 |00dd: invoke-virtual {v0, v1}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be62 │ │ +437964: 5480 fd5f |00e0: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor$1;.this$0:Lorg/purple/smoke/TcpNeighbor; // field@5ffd │ │ +437968: 6e10 58be 0000 |00e2: invoke-virtual {v0}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be58 │ │ +43796e: 0e00 |00e5: return-void │ │ catches : 8 │ │ 0x0001 - 0x0018 │ │ Ljava/net/SocketException; -> 0x00d7 │ │ Ljava/lang/Exception; -> 0x00e5 │ │ 0x0018 - 0x0021 │ │ Ljava/lang/Exception; -> 0x0024 │ │ -> 0x0022 │ │ @@ -751909,18 +751908,18 @@ │ │ type : '(Lorg/purple/smoke/TcpTlsNeighbor;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -438158: |[438158] org.purple.smoke.TcpTlsNeighbor$1.:(Lorg/purple/smoke/TcpTlsNeighbor;)V │ │ -438168: 5b01 1360 |0000: iput-object v1, v0, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6013 │ │ -43816c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -438172: 0e00 |0005: return-void │ │ +438154: |[438154] org.purple.smoke.TcpTlsNeighbor$1.:(Lorg/purple/smoke/TcpTlsNeighbor;)V │ │ +438164: 5b01 1360 |0000: iput-object v1, v0, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6013 │ │ +438168: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43816e: 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; │ │ │ │ @@ -751930,52 +751929,52 @@ │ │ type : '(Ljavax/net/ssl/HandshakeCompletedEvent;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 73 16-bit code units │ │ -438174: |[438174] org.purple.smoke.TcpTlsNeighbor$1.handshakeCompleted:(Ljavax/net/ssl/HandshakeCompletedEvent;)V │ │ -438184: 5412 1360 |0000: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6013 │ │ -438188: 5422 1d60 |0002: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601d │ │ -43818c: 1200 |0004: const/4 v0, #int 0 // #0 │ │ -43818e: 6e20 dc60 0200 |0005: invoke-virtual {v2, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -438194: 5412 1360 |0008: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6013 │ │ -438198: 7110 6ebe 0200 |000a: invoke-static {v2}, Lorg/purple/smoke/TcpTlsNeighbor;.access$000:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be6e │ │ -43819e: 0c02 |000d: move-result-object v2 │ │ -4381a0: 1210 |000e: const/4 v0, #int 1 // #1 │ │ -4381a2: 6e20 dc60 0200 |000f: invoke-virtual {v2, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -4381a8: 5412 1360 |0012: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6013 │ │ -4381ac: 6e10 74be 0200 |0014: invoke-virtual {v2}, Lorg/purple/smoke/TcpTlsNeighbor;.getCapabilities:()Ljava/lang/String; // method@be74 │ │ -4381b2: 0c00 |0017: move-result-object v0 │ │ -4381b4: 6e20 7dbe 0200 |0018: invoke-virtual {v2, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.scheduleSend:(Ljava/lang/String;)V // method@be7d │ │ -4381ba: 5412 1360 |001b: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6013 │ │ -4381be: 6e10 75be 0200 |001d: invoke-virtual {v2}, Lorg/purple/smoke/TcpTlsNeighbor;.getIdentities:()Ljava/lang/String; // method@be75 │ │ -4381c4: 0c00 |0020: move-result-object v0 │ │ -4381c6: 6e20 7dbe 0200 |0021: invoke-virtual {v2, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.scheduleSend:(Ljava/lang/String;)V // method@be7d │ │ -4381cc: 7100 10bb 0000 |0024: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -4381d2: 0c02 |0027: move-result-object v2 │ │ -4381d4: 5410 1360 |0028: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6013 │ │ -4381d8: 5400 1b60 |002a: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601b │ │ -4381dc: 6e10 c1b9 0000 |002c: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.sipHashId:()Ljava/lang/String; // method@b9c1 │ │ -4381e2: 0c00 |002f: move-result-object v0 │ │ -4381e4: 6e20 20bb 0200 |0030: invoke-virtual {v2, v0}, Lorg/purple/smoke/Kernel;.retrieveChatMessages:(Ljava/lang/String;)V // method@bb20 │ │ -4381ea: 1a02 fd91 |0033: const-string v2, "org.purple.smoke.neighbor_connected" // string@91fd │ │ -4381ee: 7110 f7bb 0200 |0035: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf7 │ │ -4381f4: 5412 1360 |0038: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6013 │ │ -4381f8: 5422 2660 |003a: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6026 │ │ -4381fc: 1d02 |003c: monitor-enter v2 │ │ -4381fe: 5410 1360 |003d: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6013 │ │ -438202: 5400 2660 |003f: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6026 │ │ -438206: 6e10 955c 0000 |0041: invoke-virtual {v0}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ -43820c: 1e02 |0044: monitor-exit v2 │ │ -43820e: 0e00 |0045: return-void │ │ -438210: 0d00 |0046: move-exception v0 │ │ -438212: 1e02 |0047: monitor-exit v2 │ │ -438214: 2700 |0048: throw v0 │ │ +438170: |[438170] org.purple.smoke.TcpTlsNeighbor$1.handshakeCompleted:(Ljavax/net/ssl/HandshakeCompletedEvent;)V │ │ +438180: 5412 1360 |0000: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6013 │ │ +438184: 5422 1d60 |0002: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601d │ │ +438188: 1200 |0004: const/4 v0, #int 0 // #0 │ │ +43818a: 6e20 dc60 0200 |0005: invoke-virtual {v2, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +438190: 5412 1360 |0008: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6013 │ │ +438194: 7110 6ebe 0200 |000a: invoke-static {v2}, Lorg/purple/smoke/TcpTlsNeighbor;.access$000:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be6e │ │ +43819a: 0c02 |000d: move-result-object v2 │ │ +43819c: 1210 |000e: const/4 v0, #int 1 // #1 │ │ +43819e: 6e20 dc60 0200 |000f: invoke-virtual {v2, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +4381a4: 5412 1360 |0012: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6013 │ │ +4381a8: 6e10 74be 0200 |0014: invoke-virtual {v2}, Lorg/purple/smoke/TcpTlsNeighbor;.getCapabilities:()Ljava/lang/String; // method@be74 │ │ +4381ae: 0c00 |0017: move-result-object v0 │ │ +4381b0: 6e20 7dbe 0200 |0018: invoke-virtual {v2, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.scheduleSend:(Ljava/lang/String;)V // method@be7d │ │ +4381b6: 5412 1360 |001b: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6013 │ │ +4381ba: 6e10 75be 0200 |001d: invoke-virtual {v2}, Lorg/purple/smoke/TcpTlsNeighbor;.getIdentities:()Ljava/lang/String; // method@be75 │ │ +4381c0: 0c00 |0020: move-result-object v0 │ │ +4381c2: 6e20 7dbe 0200 |0021: invoke-virtual {v2, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.scheduleSend:(Ljava/lang/String;)V // method@be7d │ │ +4381c8: 7100 10bb 0000 |0024: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +4381ce: 0c02 |0027: move-result-object v2 │ │ +4381d0: 5410 1360 |0028: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6013 │ │ +4381d4: 5400 1b60 |002a: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601b │ │ +4381d8: 6e10 c1b9 0000 |002c: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.sipHashId:()Ljava/lang/String; // method@b9c1 │ │ +4381de: 0c00 |002f: move-result-object v0 │ │ +4381e0: 6e20 20bb 0200 |0030: invoke-virtual {v2, v0}, Lorg/purple/smoke/Kernel;.retrieveChatMessages:(Ljava/lang/String;)V // method@bb20 │ │ +4381e6: 1a02 fd91 |0033: const-string v2, "org.purple.smoke.neighbor_connected" // string@91fd │ │ +4381ea: 7110 f7bb 0200 |0035: invoke-static {v2}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf7 │ │ +4381f0: 5412 1360 |0038: iget-object v2, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6013 │ │ +4381f4: 5422 2660 |003a: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6026 │ │ +4381f8: 1d02 |003c: monitor-enter v2 │ │ +4381fa: 5410 1360 |003d: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor$1;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6013 │ │ +4381fe: 5400 2660 |003f: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6026 │ │ +438202: 6e10 955c 0000 |0041: invoke-virtual {v0}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ +438208: 1e02 |0044: monitor-exit v2 │ │ +43820a: 0e00 |0045: return-void │ │ +43820c: 0d00 |0046: move-exception v0 │ │ +43820e: 1e02 |0047: monitor-exit v2 │ │ +438210: 2700 |0048: throw v0 │ │ catches : 1 │ │ 0x003d - 0x0048 │ │ -> 0x0046 │ │ positions : │ │ 0x0000 line=253 │ │ 0x0008 line=254 │ │ 0x0012 line=255 │ │ @@ -752029,20 +752028,20 @@ │ │ type : '(Lorg/purple/smoke/TcpTlsNeighbor;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 9 16-bit code units │ │ -438224: |[438224] org.purple.smoke.TcpTlsNeighbor$2.:(Lorg/purple/smoke/TcpTlsNeighbor;)V │ │ -438234: 5b01 1560 |0000: iput-object v1, v0, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -438238: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43823e: 1201 |0005: const/4 v1, #int 0 // #0 │ │ -438240: 5c01 1460 |0006: iput-boolean v1, v0, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6014 │ │ -438244: 0e00 |0008: return-void │ │ +438220: |[438220] org.purple.smoke.TcpTlsNeighbor$2.:(Lorg/purple/smoke/TcpTlsNeighbor;)V │ │ +438230: 5b01 1560 |0000: iput-object v1, v0, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438234: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43823a: 1201 |0005: const/4 v1, #int 0 // #0 │ │ +43823c: 5c01 1460 |0006: iput-boolean v1, v0, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6014 │ │ +438240: 0e00 |0008: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=383 │ │ 0x0006 line=384 │ │ locals : │ │ 0x0000 - 0x0009 reg=0 this Lorg/purple/smoke/TcpTlsNeighbor$2; │ │ 0x0000 - 0x0009 reg=1 (null) Lorg/purple/smoke/TcpTlsNeighbor; │ │ @@ -752053,150 +752052,150 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 253 16-bit code units │ │ -438248: |[438248] org.purple.smoke.TcpTlsNeighbor$2.run:()V │ │ -438258: 1210 |0000: const/4 v0, #int 1 // #1 │ │ -43825a: 5481 1560 |0001: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43825e: 6e10 72be 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be72 │ │ -438264: 0a01 |0006: move-result v1 │ │ -438266: 3901 2100 |0007: if-nez v1, 0028 // +0021 │ │ -43826a: 5481 1560 |0009: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43826e: 5411 1d60 |000b: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601d │ │ -438272: 6e10 da60 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -438278: 0a01 |0010: move-result v1 │ │ -43827a: 3901 1700 |0011: if-nez v1, 0028 // +0017 │ │ -43827e: 5481 1560 |0013: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -438282: 5411 2660 |0015: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6026 │ │ -438286: 1d01 |0017: monitor-enter v1 │ │ -438288: 5482 1560 |0018: iget-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43828c: 5422 2660 |001a: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6026 │ │ -438290: 1603 1027 |001c: const-wide/16 v3, #int 10000 // #2710 │ │ -438294: 6e30 985c 3204 |001e: invoke-virtual {v2, v3, v4}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ -43829a: 2803 |0021: goto 0024 // +0003 │ │ -43829c: 0d02 |0022: move-exception v2 │ │ -43829e: 2803 |0023: goto 0026 // +0003 │ │ -4382a0: 1e01 |0024: monitor-exit v1 │ │ -4382a2: 2803 |0025: goto 0028 // +0003 │ │ -4382a4: 1e01 |0026: monitor-exit v1 │ │ -4382a6: 2702 |0027: throw v2 │ │ -4382a8: 5481 1560 |0028: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4382ac: 6e10 72be 0100 |002a: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be72 │ │ -4382b2: 0a01 |002d: move-result v1 │ │ -4382b4: 3801 bf00 |002e: if-eqz v1, 00ed // +00bf │ │ -4382b8: 5481 1560 |0030: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4382bc: 5411 1d60 |0032: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601d │ │ -4382c0: 6e10 da60 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -4382c6: 0a01 |0037: move-result v1 │ │ -4382c8: 3801 0400 |0038: if-eqz v1, 003c // +0004 │ │ -4382cc: 2900 b300 |003a: goto/16 00ed // +00b3 │ │ -4382d0: 5581 1460 |003c: iget-boolean v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6014 │ │ -4382d4: 1202 |003e: const/4 v2, #int 0 // #0 │ │ -4382d6: 3801 0e00 |003f: if-eqz v1, 004d // +000e │ │ -4382da: 5481 1560 |0041: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4382de: 6e10 72be 0100 |0043: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be72 │ │ -4382e4: 0a01 |0046: move-result v1 │ │ -4382e6: 3801 0500 |0047: if-eqz v1, 004c // +0005 │ │ -4382ea: 5c82 1460 |0049: iput-boolean v2, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6014 │ │ -4382ee: 282f |004b: goto 007a // +002f │ │ -4382f0: 0e00 |004c: return-void │ │ -4382f2: 5481 1560 |004d: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4382f6: 7110 6fbe 0100 |004f: invoke-static {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6f │ │ -4382fc: 0c01 |0052: move-result-object v1 │ │ -4382fe: 3801 9a00 |0053: if-eqz v1, 00ed // +009a │ │ -438302: 5481 1560 |0055: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -438306: 7110 6fbe 0100 |0057: invoke-static {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6f │ │ -43830c: 0c01 |005a: move-result-object v1 │ │ -43830e: 6e10 8461 0100 |005b: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getInputStream:()Ljava/io/InputStream; // method@6184 │ │ -438314: 0c01 |005e: move-result-object v1 │ │ -438316: 3901 0400 |005f: if-nez v1, 0063 // +0004 │ │ -43831a: 2900 8c00 |0061: goto/16 00ed // +008c │ │ -43831e: 5481 1560 |0063: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -438322: 7110 6fbe 0100 |0065: invoke-static {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6f │ │ -438328: 0c01 |0068: move-result-object v1 │ │ -43832a: 6e10 8a61 0100 |0069: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getSoTimeout:()I // method@618a │ │ -438330: 0a01 |006c: move-result v1 │ │ -438332: 1303 204e |006d: const/16 v3, #int 20000 // #4e20 │ │ -438336: 3331 0b00 |006f: if-ne v1, v3, 007a // +000b │ │ -43833a: 5481 1560 |0071: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43833e: 7110 6fbe 0100 |0073: invoke-static {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6f │ │ -438344: 0c01 |0076: move-result-object v1 │ │ -438346: 6e20 9061 2100 |0077: invoke-virtual {v1, v2}, Ljavax/net/ssl/SSLSocket;.setSoTimeout:(I)V // method@6190 │ │ -43834c: 1501 1000 |007a: const/high16 v1, #int 1048576 // #10 │ │ -438350: 2311 481b |007c: new-array v1, v1, [B // type@1b48 │ │ -438354: 5483 1560 |007e: iget-object v3, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -438358: 7110 6fbe 0300 |0080: invoke-static {v3}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6f │ │ -43835e: 0c03 |0083: move-result-object v3 │ │ -438360: 6e10 8461 0300 |0084: invoke-virtual {v3}, Ljavax/net/ssl/SSLSocket;.getInputStream:()Ljava/io/InputStream; // method@6184 │ │ -438366: 0c03 |0087: move-result-object v3 │ │ -438368: 6e20 c15b 1300 |0088: invoke-virtual {v3, v1}, Ljava/io/InputStream;.read:([B)I // method@5bc1 │ │ -43836e: 0a03 |008b: move-result v3 │ │ -438370: 2806 |008c: goto 0092 // +0006 │ │ -438372: 5c80 1460 |008d: iput-boolean v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6014 │ │ -438376: 2802 |008f: goto 0091 // +0002 │ │ -438378: 0000 |0090: nop // spacer │ │ -43837a: 1203 |0091: const/4 v3, #int 0 // #0 │ │ -43837c: 8133 |0092: int-to-long v3, v3 │ │ -43837e: 1605 0000 |0093: const-wide/16 v5, #int 0 // #0 │ │ -438382: 3107 0305 |0095: cmp-long v7, v3, v5 │ │ -438386: 3a07 4800 |0097: if-ltz v7, 00df // +0048 │ │ -43838a: 5587 1460 |0099: iget-boolean v7, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6014 │ │ -43838e: 3807 0300 |009b: if-eqz v7, 009e // +0003 │ │ -438392: 2842 |009d: goto 00df // +0042 │ │ -438394: 3107 0305 |009e: cmp-long v7, v3, v5 │ │ -438398: 3907 0300 |00a0: if-nez v7, 00a3 // +0003 │ │ -43839c: 0e00 |00a2: return-void │ │ -43839e: 5485 1560 |00a3: iget-object v5, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4383a2: 5455 1960 |00a5: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6019 │ │ -4383a6: 6e30 e460 3504 |00a7: invoke-virtual {v5, v3, v4}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e4 │ │ -4383ac: 5485 1560 |00aa: iget-object v5, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4383b0: 5455 2560 |00ac: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6025 │ │ -4383b4: 7100 0b5d 0000 |00ae: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -4383ba: 0b06 |00b1: move-result-wide v6 │ │ -4383bc: 6e30 e560 6507 |00b2: invoke-virtual {v5, v6, v7}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -4383c2: 5485 1560 |00b5: iget-object v5, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4383c6: 5455 3160 |00b7: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6031 │ │ -4383ca: 6e10 e85c 0500 |00b9: invoke-virtual {v5}, Ljava/lang/StringBuffer;.length:()I // method@5ce8 │ │ -4383d0: 0a05 |00bc: move-result v5 │ │ -4383d2: 1506 8000 |00bd: const/high16 v6, #int 8388608 // #80 │ │ -4383d6: 3565 0f00 |00bf: if-ge v5, v6, 00ce // +000f │ │ -4383da: 5485 1560 |00c1: iget-object v5, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4383de: 5455 3160 |00c3: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6031 │ │ -4383e2: 2206 ef0a |00c5: new-instance v6, Ljava/lang/String; // type@0aef │ │ -4383e6: 8434 |00c7: long-to-int v4, v3 │ │ -4383e8: 7040 ad5c 1642 |00c8: invoke-direct {v6, v1, v2, v4}, Ljava/lang/String;.:([BII)V // method@5cad │ │ -4383ee: 6e20 e05c 6500 |00cb: invoke-virtual {v5, v6}, Ljava/lang/StringBuffer;.append:(Ljava/lang/String;)Ljava/lang/StringBuffer; // method@5ce0 │ │ -4383f4: 5481 1560 |00ce: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -4383f8: 5411 2860 |00d0: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6028 │ │ -4383fc: 1d01 |00d2: monitor-enter v1 │ │ -4383fe: 5482 1560 |00d3: iget-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -438402: 5422 2860 |00d5: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6028 │ │ -438406: 6e10 945c 0200 |00d7: invoke-virtual {v2}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ -43840c: 1e01 |00da: monitor-exit v1 │ │ -43840e: 2821 |00db: goto 00fc // +0021 │ │ -438410: 0d02 |00dc: move-exception v2 │ │ -438412: 1e01 |00dd: monitor-exit v1 │ │ -438414: 2702 |00de: throw v2 │ │ -438416: 5c80 1460 |00df: iput-boolean v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6014 │ │ -43841a: 5481 1560 |00e1: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43841e: 1a02 1009 |00e3: const-string v2, "A socket read() error occurred." // string@0910 │ │ -438422: 6e20 80be 2100 |00e5: invoke-virtual {v1, v2}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ -438428: 5481 1560 |00e8: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43842c: 6e10 73be 0100 |00ea: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be73 │ │ -438432: 0e00 |00ed: return-void │ │ -438434: 5c80 1460 |00ee: iput-boolean v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6014 │ │ -438438: 5480 1560 |00f0: iget-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43843c: 1a01 0f09 |00f2: const-string v1, "A socket error occurred while reading data." // string@090f │ │ -438440: 6e20 80be 1000 |00f4: invoke-virtual {v0, v1}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ -438446: 5480 1560 |00f7: iget-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ -43844a: 6e10 73be 0000 |00f9: invoke-virtual {v0}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be73 │ │ -438450: 0e00 |00fc: return-void │ │ +438244: |[438244] org.purple.smoke.TcpTlsNeighbor$2.run:()V │ │ +438254: 1210 |0000: const/4 v0, #int 1 // #1 │ │ +438256: 5481 1560 |0001: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +43825a: 6e10 72be 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be72 │ │ +438260: 0a01 |0006: move-result v1 │ │ +438262: 3901 2100 |0007: if-nez v1, 0028 // +0021 │ │ +438266: 5481 1560 |0009: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +43826a: 5411 1d60 |000b: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601d │ │ +43826e: 6e10 da60 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +438274: 0a01 |0010: move-result v1 │ │ +438276: 3901 1700 |0011: if-nez v1, 0028 // +0017 │ │ +43827a: 5481 1560 |0013: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +43827e: 5411 2660 |0015: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6026 │ │ +438282: 1d01 |0017: monitor-enter v1 │ │ +438284: 5482 1560 |0018: iget-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438288: 5422 2660 |001a: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6026 │ │ +43828c: 1603 1027 |001c: const-wide/16 v3, #int 10000 // #2710 │ │ +438290: 6e30 985c 3204 |001e: invoke-virtual {v2, v3, v4}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ +438296: 2803 |0021: goto 0024 // +0003 │ │ +438298: 0d02 |0022: move-exception v2 │ │ +43829a: 2803 |0023: goto 0026 // +0003 │ │ +43829c: 1e01 |0024: monitor-exit v1 │ │ +43829e: 2803 |0025: goto 0028 // +0003 │ │ +4382a0: 1e01 |0026: monitor-exit v1 │ │ +4382a2: 2702 |0027: throw v2 │ │ +4382a4: 5481 1560 |0028: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4382a8: 6e10 72be 0100 |002a: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be72 │ │ +4382ae: 0a01 |002d: move-result v1 │ │ +4382b0: 3801 bf00 |002e: if-eqz v1, 00ed // +00bf │ │ +4382b4: 5481 1560 |0030: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4382b8: 5411 1d60 |0032: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@601d │ │ +4382bc: 6e10 da60 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +4382c2: 0a01 |0037: move-result v1 │ │ +4382c4: 3801 0400 |0038: if-eqz v1, 003c // +0004 │ │ +4382c8: 2900 b300 |003a: goto/16 00ed // +00b3 │ │ +4382cc: 5581 1460 |003c: iget-boolean v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6014 │ │ +4382d0: 1202 |003e: const/4 v2, #int 0 // #0 │ │ +4382d2: 3801 0e00 |003f: if-eqz v1, 004d // +000e │ │ +4382d6: 5481 1560 |0041: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4382da: 6e10 72be 0100 |0043: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be72 │ │ +4382e0: 0a01 |0046: move-result v1 │ │ +4382e2: 3801 0500 |0047: if-eqz v1, 004c // +0005 │ │ +4382e6: 5c82 1460 |0049: iput-boolean v2, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6014 │ │ +4382ea: 282f |004b: goto 007a // +002f │ │ +4382ec: 0e00 |004c: return-void │ │ +4382ee: 5481 1560 |004d: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4382f2: 7110 6fbe 0100 |004f: invoke-static {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6f │ │ +4382f8: 0c01 |0052: move-result-object v1 │ │ +4382fa: 3801 9a00 |0053: if-eqz v1, 00ed // +009a │ │ +4382fe: 5481 1560 |0055: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438302: 7110 6fbe 0100 |0057: invoke-static {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6f │ │ +438308: 0c01 |005a: move-result-object v1 │ │ +43830a: 6e10 8461 0100 |005b: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getInputStream:()Ljava/io/InputStream; // method@6184 │ │ +438310: 0c01 |005e: move-result-object v1 │ │ +438312: 3901 0400 |005f: if-nez v1, 0063 // +0004 │ │ +438316: 2900 8c00 |0061: goto/16 00ed // +008c │ │ +43831a: 5481 1560 |0063: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +43831e: 7110 6fbe 0100 |0065: invoke-static {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6f │ │ +438324: 0c01 |0068: move-result-object v1 │ │ +438326: 6e10 8a61 0100 |0069: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getSoTimeout:()I // method@618a │ │ +43832c: 0a01 |006c: move-result v1 │ │ +43832e: 1303 204e |006d: const/16 v3, #int 20000 // #4e20 │ │ +438332: 3331 0b00 |006f: if-ne v1, v3, 007a // +000b │ │ +438336: 5481 1560 |0071: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +43833a: 7110 6fbe 0100 |0073: invoke-static {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6f │ │ +438340: 0c01 |0076: move-result-object v1 │ │ +438342: 6e20 9061 2100 |0077: invoke-virtual {v1, v2}, Ljavax/net/ssl/SSLSocket;.setSoTimeout:(I)V // method@6190 │ │ +438348: 1501 1000 |007a: const/high16 v1, #int 1048576 // #10 │ │ +43834c: 2311 481b |007c: new-array v1, v1, [B // type@1b48 │ │ +438350: 5483 1560 |007e: iget-object v3, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438354: 7110 6fbe 0300 |0080: invoke-static {v3}, Lorg/purple/smoke/TcpTlsNeighbor;.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; // method@be6f │ │ +43835a: 0c03 |0083: move-result-object v3 │ │ +43835c: 6e10 8461 0300 |0084: invoke-virtual {v3}, Ljavax/net/ssl/SSLSocket;.getInputStream:()Ljava/io/InputStream; // method@6184 │ │ +438362: 0c03 |0087: move-result-object v3 │ │ +438364: 6e20 c15b 1300 |0088: invoke-virtual {v3, v1}, Ljava/io/InputStream;.read:([B)I // method@5bc1 │ │ +43836a: 0a03 |008b: move-result v3 │ │ +43836c: 2806 |008c: goto 0092 // +0006 │ │ +43836e: 5c80 1460 |008d: iput-boolean v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6014 │ │ +438372: 2802 |008f: goto 0091 // +0002 │ │ +438374: 0000 |0090: nop // spacer │ │ +438376: 1203 |0091: const/4 v3, #int 0 // #0 │ │ +438378: 8133 |0092: int-to-long v3, v3 │ │ +43837a: 1605 0000 |0093: const-wide/16 v5, #int 0 // #0 │ │ +43837e: 3107 0305 |0095: cmp-long v7, v3, v5 │ │ +438382: 3a07 4800 |0097: if-ltz v7, 00df // +0048 │ │ +438386: 5587 1460 |0099: iget-boolean v7, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6014 │ │ +43838a: 3807 0300 |009b: if-eqz v7, 009e // +0003 │ │ +43838e: 2842 |009d: goto 00df // +0042 │ │ +438390: 3107 0305 |009e: cmp-long v7, v3, v5 │ │ +438394: 3907 0300 |00a0: if-nez v7, 00a3 // +0003 │ │ +438398: 0e00 |00a2: return-void │ │ +43839a: 5485 1560 |00a3: iget-object v5, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +43839e: 5455 1960 |00a5: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6019 │ │ +4383a2: 6e30 e460 3504 |00a7: invoke-virtual {v5, v3, v4}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e4 │ │ +4383a8: 5485 1560 |00aa: iget-object v5, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4383ac: 5455 2560 |00ac: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6025 │ │ +4383b0: 7100 0b5d 0000 |00ae: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +4383b6: 0b06 |00b1: move-result-wide v6 │ │ +4383b8: 6e30 e560 6507 |00b2: invoke-virtual {v5, v6, v7}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +4383be: 5485 1560 |00b5: iget-object v5, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4383c2: 5455 3160 |00b7: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6031 │ │ +4383c6: 6e10 e85c 0500 |00b9: invoke-virtual {v5}, Ljava/lang/StringBuffer;.length:()I // method@5ce8 │ │ +4383cc: 0a05 |00bc: move-result v5 │ │ +4383ce: 1506 8000 |00bd: const/high16 v6, #int 8388608 // #80 │ │ +4383d2: 3565 0f00 |00bf: if-ge v5, v6, 00ce // +000f │ │ +4383d6: 5485 1560 |00c1: iget-object v5, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4383da: 5455 3160 |00c3: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6031 │ │ +4383de: 2206 ef0a |00c5: new-instance v6, Ljava/lang/String; // type@0aef │ │ +4383e2: 8434 |00c7: long-to-int v4, v3 │ │ +4383e4: 7040 ad5c 1642 |00c8: invoke-direct {v6, v1, v2, v4}, Ljava/lang/String;.:([BII)V // method@5cad │ │ +4383ea: 6e20 e05c 6500 |00cb: invoke-virtual {v5, v6}, Ljava/lang/StringBuffer;.append:(Ljava/lang/String;)Ljava/lang/StringBuffer; // method@5ce0 │ │ +4383f0: 5481 1560 |00ce: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4383f4: 5411 2860 |00d0: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6028 │ │ +4383f8: 1d01 |00d2: monitor-enter v1 │ │ +4383fa: 5482 1560 |00d3: iget-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +4383fe: 5422 2860 |00d5: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6028 │ │ +438402: 6e10 945c 0200 |00d7: invoke-virtual {v2}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ +438408: 1e01 |00da: monitor-exit v1 │ │ +43840a: 2821 |00db: goto 00fc // +0021 │ │ +43840c: 0d02 |00dc: move-exception v2 │ │ +43840e: 1e01 |00dd: monitor-exit v1 │ │ +438410: 2702 |00de: throw v2 │ │ +438412: 5c80 1460 |00df: iput-boolean v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6014 │ │ +438416: 5481 1560 |00e1: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +43841a: 1a02 1009 |00e3: const-string v2, "A socket read() error occurred." // string@0910 │ │ +43841e: 6e20 80be 2100 |00e5: invoke-virtual {v1, v2}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ +438424: 5481 1560 |00e8: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438428: 6e10 73be 0100 |00ea: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be73 │ │ +43842e: 0e00 |00ed: return-void │ │ +438430: 5c80 1460 |00ee: iput-boolean v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.m_error:Z // field@6014 │ │ +438434: 5480 1560 |00f0: iget-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438438: 1a01 0f09 |00f2: const-string v1, "A socket error occurred while reading data." // string@090f │ │ +43843c: 6e20 80be 1000 |00f4: invoke-virtual {v0, v1}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ +438442: 5480 1560 |00f7: iget-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor$2;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6015 │ │ +438446: 6e10 73be 0000 |00f9: invoke-virtual {v0}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be73 │ │ +43844c: 0e00 |00fc: return-void │ │ catches : 8 │ │ 0x0001 - 0x0018 │ │ Ljava/net/SocketException; -> 0x00ee │ │ Ljava/lang/Exception; -> 0x00fc │ │ 0x0018 - 0x0021 │ │ Ljava/lang/Exception; -> 0x0024 │ │ -> 0x0022 │ │ @@ -752285,18 +752284,18 @@ │ │ type : '(Lorg/purple/smoke/TcpTlsNeighbor;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -4384d0: |[4384d0] org.purple.smoke.TcpTlsNeighbor$3.:(Lorg/purple/smoke/TcpTlsNeighbor;)V │ │ -4384e0: 5b01 1660 |0000: iput-object v1, v0, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -4384e4: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -4384ea: 0e00 |0005: return-void │ │ +4384cc: |[4384cc] org.purple.smoke.TcpTlsNeighbor$3.:(Lorg/purple/smoke/TcpTlsNeighbor;)V │ │ +4384dc: 5b01 1660 |0000: iput-object v1, v0, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +4384e0: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +4384e6: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=476 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lorg/purple/smoke/TcpTlsNeighbor$3; │ │ 0x0000 - 0x0006 reg=1 (null) Lorg/purple/smoke/TcpTlsNeighbor; │ │ │ │ @@ -752306,183 +752305,183 @@ │ │ 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 │ │ -4384ec: |[4384ec] org.purple.smoke.TcpTlsNeighbor$3.checkClientTrusted:([Ljava/security/cert/X509Certificate;Ljava/lang/String;)V │ │ -4384fc: 0e00 |0000: return-void │ │ +4384e8: |[4384e8] org.purple.smoke.TcpTlsNeighbor$3.checkClientTrusted:([Ljava/security/cert/X509Certificate;Ljava/lang/String;)V │ │ +4384f8: 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 : 312 16-bit code units │ │ -438500: |[438500] org.purple.smoke.TcpTlsNeighbor$3.checkServerTrusted:([Ljava/security/cert/X509Certificate;Ljava/lang/String;)V │ │ -438510: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -438512: 3806 f800 |0001: if-eqz v6, 00f9 // +00f8 │ │ -438516: 6e10 c55c 0600 |0003: invoke-virtual {v6}, Ljava/lang/String;.length:()I // method@5cc5 │ │ -43851c: 0a06 |0006: move-result v6 │ │ -43851e: 3906 0400 |0007: if-nez v6, 000b // +0004 │ │ -438522: 2900 f000 |0009: goto/16 00f9 // +00f0 │ │ -438526: 3805 dd00 |000b: if-eqz v5, 00e8 // +00dd │ │ -43852a: 2156 |000d: array-length v6, v5 │ │ -43852c: 3906 0400 |000e: if-nez v6, 0012 // +0004 │ │ -438530: 2900 d800 |0010: goto/16 00e8 // +00d8 │ │ -438534: 4606 0500 |0012: aget-object v6, v5, v0 │ │ -438538: 6e10 045f 0600 |0014: invoke-virtual {v6}, Ljava/security/cert/X509Certificate;.checkValidity:()V // method@5f04 │ │ -43853e: 5446 1660 |0017: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -438542: 5466 1c60 |0019: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_database:Lorg/purple/smoke/Database; // field@601c │ │ -438546: 5441 1660 |001b: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -43854a: 5411 1b60 |001d: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601b │ │ -43854e: 5442 1660 |001f: iget-object v2, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -438552: 5422 2760 |0021: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@6027 │ │ -438556: 6e10 de60 0200 |0023: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -43855c: 0a02 |0026: move-result v2 │ │ -43855e: 6e30 01ba 1602 |0027: invoke-virtual {v6, v1, v2}, Lorg/purple/smoke/Database;.neighborRemoteCertificate:(Lorg/purple/smoke/Cryptography;I)[B // method@ba01 │ │ -438564: 0c06 |002a: move-result-object v6 │ │ -438566: 1211 |002b: const/4 v1, #int 1 // #1 │ │ -438568: 3806 4d00 |002c: if-eqz v6, 0079 // +004d │ │ -43856c: 2162 |002e: array-length v2, v6 │ │ -43856e: 3902 0300 |002f: if-nez v2, 0032 // +0003 │ │ -438572: 2848 |0031: goto 0079 // +0048 │ │ -438574: 4605 0500 |0032: aget-object v5, v5, v0 │ │ -438578: 6e10 095f 0500 |0034: invoke-virtual {v5}, Ljava/security/cert/X509Certificate;.getEncoded:()[B // method@5f09 │ │ -43857e: 0c05 |0037: move-result-object v5 │ │ -438580: 7120 9cb9 5600 |0038: invoke-static {v6, v5}, Lorg/purple/smoke/Cryptography;.memcmp:([B[B)Z // method@b99c │ │ -438586: 0a05 |003b: move-result v5 │ │ -438588: 3905 3200 |003c: if-nez v5, 006e // +0032 │ │ -43858c: 5445 1660 |003e: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -438590: 6e10 6dbe 0500 |0040: invoke-virtual {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.abort:()V // method@be6d │ │ -438596: 5445 1660 |0043: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -43859a: 5455 1c60 |0045: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_database:Lorg/purple/smoke/Database; // field@601c │ │ -43859e: 5446 1660 |0047: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -4385a2: 5466 1b60 |0049: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601b │ │ -4385a6: 1a01 0a64 |004b: const-string v1, "disconnect" // string@640a │ │ -4385aa: 5442 1660 |004d: iget-object v2, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -4385ae: 5422 2760 |004f: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@6027 │ │ -4385b2: 6e10 de60 0200 |0051: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -4385b8: 0a02 |0054: move-result v2 │ │ -4385ba: 7110 d55c 0200 |0055: invoke-static {v2}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -4385c0: 0c02 |0058: move-result-object v2 │ │ -4385c2: 6e40 ffb9 6521 |0059: invoke-virtual {v5, v6, v1, v2}, Lorg/purple/smoke/Database;.neighborControlStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@b9ff │ │ -4385c8: 5445 1660 |005c: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -4385cc: 7110 70be 0500 |005e: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be70 │ │ -4385d2: 0c05 |0061: move-result-object v5 │ │ -4385d4: 6e20 dc60 0500 |0062: invoke-virtual {v5, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -4385da: 5445 1660 |0065: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -4385de: 1a06 1b4f |0067: const-string v6, "The stored server's certificate does not match the certificate that was provided by the server." // string@4f1b │ │ -4385e2: 6e20 80be 6500 |0069: invoke-virtual {v5, v6}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ -4385e8: 2900 9d00 |006c: goto/16 0109 // +009d │ │ -4385ec: 5445 1660 |006e: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -4385f0: 7110 70be 0500 |0070: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be70 │ │ -4385f6: 0c05 |0073: move-result-object v5 │ │ -4385f8: 6e20 dc60 1500 |0074: invoke-virtual {v5, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -4385fe: 2900 9200 |0077: goto/16 0109 // +0092 │ │ -438602: 5446 1660 |0079: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -438606: 5466 1c60 |007b: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_database:Lorg/purple/smoke/Database; // field@601c │ │ -43860a: 5442 1660 |007d: iget-object v2, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -43860e: 5422 1b60 |007f: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601b │ │ -438612: 5443 1660 |0081: iget-object v3, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -438616: 5433 2760 |0083: iget-object v3, v3, Lorg/purple/smoke/TcpTlsNeighbor;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@6027 │ │ -43861a: 6e10 de60 0300 |0085: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -438620: 0a03 |0088: move-result v3 │ │ -438622: 7110 d55c 0300 |0089: invoke-static {v3}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -438628: 0c03 |008c: move-result-object v3 │ │ -43862a: 4605 0500 |008d: aget-object v5, v5, v0 │ │ -43862e: 6e10 095f 0500 |008f: invoke-virtual {v5}, Ljava/security/cert/X509Certificate;.getEncoded:()[B // method@5f09 │ │ -438634: 0c05 |0092: move-result-object v5 │ │ -438636: 6e40 00ba 2653 |0093: invoke-virtual {v6, v2, v3, v5}, Lorg/purple/smoke/Database;.neighborRecordCertificate:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;[B)V // method@ba00 │ │ -43863c: 5445 1660 |0096: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -438640: 7110 70be 0500 |0098: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be70 │ │ -438646: 0c05 |009b: move-result-object v5 │ │ -438648: 6e20 dc60 1500 |009c: invoke-virtual {v5, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -43864e: 286a |009f: goto 0109 // +006a │ │ -438650: 0d05 |00a0: move-exception v5 │ │ -438652: 5446 1660 |00a1: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -438656: 6e10 6dbe 0600 |00a3: invoke-virtual {v6}, Lorg/purple/smoke/TcpTlsNeighbor;.abort:()V // method@be6d │ │ -43865c: 5446 1660 |00a6: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -438660: 5466 1c60 |00a8: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_database:Lorg/purple/smoke/Database; // field@601c │ │ -438664: 5441 1660 |00aa: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -438668: 5411 1b60 |00ac: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601b │ │ -43866c: 1a02 0a64 |00ae: const-string v2, "disconnect" // string@640a │ │ -438670: 5443 1660 |00b0: iget-object v3, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -438674: 5433 2760 |00b2: iget-object v3, v3, Lorg/purple/smoke/TcpTlsNeighbor;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@6027 │ │ -438678: 6e10 de60 0300 |00b4: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -43867e: 0a03 |00b7: move-result v3 │ │ -438680: 7110 d55c 0300 |00b8: invoke-static {v3}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -438686: 0c03 |00bb: move-result-object v3 │ │ -438688: 6e40 ffb9 1632 |00bc: invoke-virtual {v6, v1, v2, v3}, Lorg/purple/smoke/Database;.neighborControlStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@b9ff │ │ -43868e: 5446 1660 |00bf: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -438692: 7110 70be 0600 |00c1: invoke-static {v6}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be70 │ │ -438698: 0c06 |00c4: move-result-object v6 │ │ -43869a: 6e20 dc60 0600 |00c5: invoke-virtual {v6, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -4386a0: 5446 1660 |00c8: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -4386a4: 2200 f10a |00ca: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ -4386a8: 7010 ee5c 0000 |00cc: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -4386ae: 1a01 0209 |00cf: const-string v1, "A certificate error (" // string@0902 │ │ -4386b2: 6e20 f95c 1000 |00d1: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4386b8: 6e10 375c 0500 |00d4: invoke-virtual {v5}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ -4386be: 0c05 |00d7: move-result-object v5 │ │ -4386c0: 6e20 f95c 5000 |00d8: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4386c6: 1a05 0404 |00db: const-string v5, ") occurred." // string@0404 │ │ -4386ca: 6e20 f95c 5000 |00dd: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4386d0: 6e10 035d 0000 |00e0: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4386d6: 0c05 |00e3: move-result-object v5 │ │ -4386d8: 6e20 80be 5600 |00e4: invoke-virtual {v6, v5}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ -4386de: 2822 |00e7: goto 0109 // +0022 │ │ -4386e0: 5445 1660 |00e8: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -4386e4: 7110 70be 0500 |00ea: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be70 │ │ -4386ea: 0c05 |00ed: move-result-object v5 │ │ -4386ec: 6e20 dc60 0500 |00ee: invoke-virtual {v5, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -4386f2: 5445 1660 |00f1: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -4386f6: 1a06 3819 |00f3: const-string v6, "Empty chain." // string@1938 │ │ -4386fa: 6e20 80be 6500 |00f5: invoke-virtual {v5, v6}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ -438700: 2811 |00f8: goto 0109 // +0011 │ │ -438702: 5445 1660 |00f9: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -438706: 7110 70be 0500 |00fb: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be70 │ │ -43870c: 0c05 |00fe: move-result-object v5 │ │ -43870e: 6e20 dc60 0500 |00ff: invoke-virtual {v5, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -438714: 5445 1660 |0102: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -438718: 1a06 3719 |0104: const-string v6, "Empty authentication type." // string@1937 │ │ -43871c: 6e20 80be 6500 |0106: invoke-virtual {v5, v6}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ -438722: 5445 1660 |0109: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -438726: 7110 70be 0500 |010b: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be70 │ │ -43872c: 0c05 |010e: move-result-object v5 │ │ -43872e: 6e10 da60 0500 |010f: invoke-virtual {v5}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -438734: 0a05 |0112: move-result v5 │ │ -438736: 3905 2400 |0113: if-nez v5, 0137 // +0024 │ │ -43873a: 5445 1660 |0115: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -43873e: 6e10 6dbe 0500 |0117: invoke-virtual {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.abort:()V // method@be6d │ │ -438744: 5445 1660 |011a: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -438748: 5455 1f60 |011c: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_errorMutex:Ljava/lang/Object; // field@601f │ │ -43874c: 1d05 |011e: monitor-enter v5 │ │ -43874e: 5446 1660 |011f: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -438752: 5466 1e60 |0121: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_error:Ljava/lang/StringBuilder; // field@601e │ │ -438756: 6e10 ff5c 0600 |0123: invoke-virtual {v6}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ -43875c: 0a06 |0126: move-result v6 │ │ -43875e: 3906 0b00 |0127: if-nez v6, 0132 // +000b │ │ -438762: 5446 1660 |0129: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ -438766: 5466 1e60 |012b: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_error:Ljava/lang/StringBuilder; // field@601e │ │ -43876a: 1a00 0409 |012d: const-string v0, "A generic certificate error occurred." // string@0904 │ │ -43876e: 6e20 f95c 0600 |012f: invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -438774: 1e05 |0132: monitor-exit v5 │ │ -438776: 2804 |0133: goto 0137 // +0004 │ │ -438778: 0d06 |0134: move-exception v6 │ │ -43877a: 1e05 |0135: monitor-exit v5 │ │ -43877c: 2706 |0136: throw v6 │ │ -43877e: 0e00 |0137: return-void │ │ +4384fc: |[4384fc] org.purple.smoke.TcpTlsNeighbor$3.checkServerTrusted:([Ljava/security/cert/X509Certificate;Ljava/lang/String;)V │ │ +43850c: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +43850e: 3806 f800 |0001: if-eqz v6, 00f9 // +00f8 │ │ +438512: 6e10 c55c 0600 |0003: invoke-virtual {v6}, Ljava/lang/String;.length:()I // method@5cc5 │ │ +438518: 0a06 |0006: move-result v6 │ │ +43851a: 3906 0400 |0007: if-nez v6, 000b // +0004 │ │ +43851e: 2900 f000 |0009: goto/16 00f9 // +00f0 │ │ +438522: 3805 dd00 |000b: if-eqz v5, 00e8 // +00dd │ │ +438526: 2156 |000d: array-length v6, v5 │ │ +438528: 3906 0400 |000e: if-nez v6, 0012 // +0004 │ │ +43852c: 2900 d800 |0010: goto/16 00e8 // +00d8 │ │ +438530: 4606 0500 |0012: aget-object v6, v5, v0 │ │ +438534: 6e10 045f 0600 |0014: invoke-virtual {v6}, Ljava/security/cert/X509Certificate;.checkValidity:()V // method@5f04 │ │ +43853a: 5446 1660 |0017: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +43853e: 5466 1c60 |0019: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_database:Lorg/purple/smoke/Database; // field@601c │ │ +438542: 5441 1660 |001b: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +438546: 5411 1b60 |001d: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601b │ │ +43854a: 5442 1660 |001f: iget-object v2, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +43854e: 5422 2760 |0021: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@6027 │ │ +438552: 6e10 de60 0200 |0023: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +438558: 0a02 |0026: move-result v2 │ │ +43855a: 6e30 01ba 1602 |0027: invoke-virtual {v6, v1, v2}, Lorg/purple/smoke/Database;.neighborRemoteCertificate:(Lorg/purple/smoke/Cryptography;I)[B // method@ba01 │ │ +438560: 0c06 |002a: move-result-object v6 │ │ +438562: 1211 |002b: const/4 v1, #int 1 // #1 │ │ +438564: 3806 4d00 |002c: if-eqz v6, 0079 // +004d │ │ +438568: 2162 |002e: array-length v2, v6 │ │ +43856a: 3902 0300 |002f: if-nez v2, 0032 // +0003 │ │ +43856e: 2848 |0031: goto 0079 // +0048 │ │ +438570: 4605 0500 |0032: aget-object v5, v5, v0 │ │ +438574: 6e10 095f 0500 |0034: invoke-virtual {v5}, Ljava/security/cert/X509Certificate;.getEncoded:()[B // method@5f09 │ │ +43857a: 0c05 |0037: move-result-object v5 │ │ +43857c: 7120 9cb9 5600 |0038: invoke-static {v6, v5}, Lorg/purple/smoke/Cryptography;.memcmp:([B[B)Z // method@b99c │ │ +438582: 0a05 |003b: move-result v5 │ │ +438584: 3905 3200 |003c: if-nez v5, 006e // +0032 │ │ +438588: 5445 1660 |003e: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +43858c: 6e10 6dbe 0500 |0040: invoke-virtual {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.abort:()V // method@be6d │ │ +438592: 5445 1660 |0043: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +438596: 5455 1c60 |0045: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_database:Lorg/purple/smoke/Database; // field@601c │ │ +43859a: 5446 1660 |0047: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +43859e: 5466 1b60 |0049: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601b │ │ +4385a2: 1a01 0a64 |004b: const-string v1, "disconnect" // string@640a │ │ +4385a6: 5442 1660 |004d: iget-object v2, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +4385aa: 5422 2760 |004f: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@6027 │ │ +4385ae: 6e10 de60 0200 |0051: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +4385b4: 0a02 |0054: move-result v2 │ │ +4385b6: 7110 d55c 0200 |0055: invoke-static {v2}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +4385bc: 0c02 |0058: move-result-object v2 │ │ +4385be: 6e40 ffb9 6521 |0059: invoke-virtual {v5, v6, v1, v2}, Lorg/purple/smoke/Database;.neighborControlStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@b9ff │ │ +4385c4: 5445 1660 |005c: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +4385c8: 7110 70be 0500 |005e: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be70 │ │ +4385ce: 0c05 |0061: move-result-object v5 │ │ +4385d0: 6e20 dc60 0500 |0062: invoke-virtual {v5, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +4385d6: 5445 1660 |0065: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +4385da: 1a06 1b4f |0067: const-string v6, "The stored server's certificate does not match the certificate that was provided by the server." // string@4f1b │ │ +4385de: 6e20 80be 6500 |0069: invoke-virtual {v5, v6}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ +4385e4: 2900 9d00 |006c: goto/16 0109 // +009d │ │ +4385e8: 5445 1660 |006e: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +4385ec: 7110 70be 0500 |0070: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be70 │ │ +4385f2: 0c05 |0073: move-result-object v5 │ │ +4385f4: 6e20 dc60 1500 |0074: invoke-virtual {v5, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +4385fa: 2900 9200 |0077: goto/16 0109 // +0092 │ │ +4385fe: 5446 1660 |0079: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +438602: 5466 1c60 |007b: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_database:Lorg/purple/smoke/Database; // field@601c │ │ +438606: 5442 1660 |007d: iget-object v2, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +43860a: 5422 1b60 |007f: iget-object v2, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601b │ │ +43860e: 5443 1660 |0081: iget-object v3, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +438612: 5433 2760 |0083: iget-object v3, v3, Lorg/purple/smoke/TcpTlsNeighbor;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@6027 │ │ +438616: 6e10 de60 0300 |0085: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +43861c: 0a03 |0088: move-result v3 │ │ +43861e: 7110 d55c 0300 |0089: invoke-static {v3}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +438624: 0c03 |008c: move-result-object v3 │ │ +438626: 4605 0500 |008d: aget-object v5, v5, v0 │ │ +43862a: 6e10 095f 0500 |008f: invoke-virtual {v5}, Ljava/security/cert/X509Certificate;.getEncoded:()[B // method@5f09 │ │ +438630: 0c05 |0092: move-result-object v5 │ │ +438632: 6e40 00ba 2653 |0093: invoke-virtual {v6, v2, v3, v5}, Lorg/purple/smoke/Database;.neighborRecordCertificate:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;[B)V // method@ba00 │ │ +438638: 5445 1660 |0096: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +43863c: 7110 70be 0500 |0098: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be70 │ │ +438642: 0c05 |009b: move-result-object v5 │ │ +438644: 6e20 dc60 1500 |009c: invoke-virtual {v5, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +43864a: 286a |009f: goto 0109 // +006a │ │ +43864c: 0d05 |00a0: move-exception v5 │ │ +43864e: 5446 1660 |00a1: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +438652: 6e10 6dbe 0600 |00a3: invoke-virtual {v6}, Lorg/purple/smoke/TcpTlsNeighbor;.abort:()V // method@be6d │ │ +438658: 5446 1660 |00a6: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +43865c: 5466 1c60 |00a8: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_database:Lorg/purple/smoke/Database; // field@601c │ │ +438660: 5441 1660 |00aa: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +438664: 5411 1b60 |00ac: iget-object v1, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@601b │ │ +438668: 1a02 0a64 |00ae: const-string v2, "disconnect" // string@640a │ │ +43866c: 5443 1660 |00b0: iget-object v3, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +438670: 5433 2760 |00b2: iget-object v3, v3, Lorg/purple/smoke/TcpTlsNeighbor;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@6027 │ │ +438674: 6e10 de60 0300 |00b4: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +43867a: 0a03 |00b7: move-result v3 │ │ +43867c: 7110 d55c 0300 |00b8: invoke-static {v3}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +438682: 0c03 |00bb: move-result-object v3 │ │ +438684: 6e40 ffb9 1632 |00bc: invoke-virtual {v6, v1, v2, v3}, Lorg/purple/smoke/Database;.neighborControlStatus:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;Ljava/lang/String;)V // method@b9ff │ │ +43868a: 5446 1660 |00bf: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +43868e: 7110 70be 0600 |00c1: invoke-static {v6}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be70 │ │ +438694: 0c06 |00c4: move-result-object v6 │ │ +438696: 6e20 dc60 0600 |00c5: invoke-virtual {v6, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +43869c: 5446 1660 |00c8: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +4386a0: 2200 f10a |00ca: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ +4386a4: 7010 ee5c 0000 |00cc: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4386aa: 1a01 0209 |00cf: const-string v1, "A certificate error (" // string@0902 │ │ +4386ae: 6e20 f95c 1000 |00d1: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4386b4: 6e10 375c 0500 |00d4: invoke-virtual {v5}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ +4386ba: 0c05 |00d7: move-result-object v5 │ │ +4386bc: 6e20 f95c 5000 |00d8: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4386c2: 1a05 0404 |00db: const-string v5, ") occurred." // string@0404 │ │ +4386c6: 6e20 f95c 5000 |00dd: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4386cc: 6e10 035d 0000 |00e0: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4386d2: 0c05 |00e3: move-result-object v5 │ │ +4386d4: 6e20 80be 5600 |00e4: invoke-virtual {v6, v5}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ +4386da: 2822 |00e7: goto 0109 // +0022 │ │ +4386dc: 5445 1660 |00e8: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +4386e0: 7110 70be 0500 |00ea: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be70 │ │ +4386e6: 0c05 |00ed: move-result-object v5 │ │ +4386e8: 6e20 dc60 0500 |00ee: invoke-virtual {v5, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +4386ee: 5445 1660 |00f1: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +4386f2: 1a06 3819 |00f3: const-string v6, "Empty chain." // string@1938 │ │ +4386f6: 6e20 80be 6500 |00f5: invoke-virtual {v5, v6}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ +4386fc: 2811 |00f8: goto 0109 // +0011 │ │ +4386fe: 5445 1660 |00f9: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +438702: 7110 70be 0500 |00fb: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be70 │ │ +438708: 0c05 |00fe: move-result-object v5 │ │ +43870a: 6e20 dc60 0500 |00ff: invoke-virtual {v5, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +438710: 5445 1660 |0102: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +438714: 1a06 3719 |0104: const-string v6, "Empty authentication type." // string@1937 │ │ +438718: 6e20 80be 6500 |0106: invoke-virtual {v5, v6}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ +43871e: 5445 1660 |0109: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +438722: 7110 70be 0500 |010b: invoke-static {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; // method@be70 │ │ +438728: 0c05 |010e: move-result-object v5 │ │ +43872a: 6e10 da60 0500 |010f: invoke-virtual {v5}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +438730: 0a05 |0112: move-result v5 │ │ +438732: 3905 2400 |0113: if-nez v5, 0137 // +0024 │ │ +438736: 5445 1660 |0115: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +43873a: 6e10 6dbe 0500 |0117: invoke-virtual {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.abort:()V // method@be6d │ │ +438740: 5445 1660 |011a: iget-object v5, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +438744: 5455 1f60 |011c: iget-object v5, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_errorMutex:Ljava/lang/Object; // field@601f │ │ +438748: 1d05 |011e: monitor-enter v5 │ │ +43874a: 5446 1660 |011f: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +43874e: 5466 1e60 |0121: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_error:Ljava/lang/StringBuilder; // field@601e │ │ +438752: 6e10 ff5c 0600 |0123: invoke-virtual {v6}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ +438758: 0a06 |0126: move-result v6 │ │ +43875a: 3906 0b00 |0127: if-nez v6, 0132 // +000b │ │ +43875e: 5446 1660 |0129: iget-object v6, v4, Lorg/purple/smoke/TcpTlsNeighbor$3;.this$0:Lorg/purple/smoke/TcpTlsNeighbor; // field@6016 │ │ +438762: 5466 1e60 |012b: iget-object v6, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_error:Ljava/lang/StringBuilder; // field@601e │ │ +438766: 1a00 0409 |012d: const-string v0, "A generic certificate error occurred." // string@0904 │ │ +43876a: 6e20 f95c 0600 |012f: invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +438770: 1e05 |0132: monitor-exit v5 │ │ +438772: 2804 |0133: goto 0137 // +0004 │ │ +438774: 0d06 |0134: move-exception v6 │ │ +438776: 1e05 |0135: monitor-exit v5 │ │ +438778: 2706 |0136: throw v6 │ │ +43877a: 0e00 |0137: return-void │ │ catches : 2 │ │ 0x0012 - 0x009f │ │ Ljava/lang/Exception; -> 0x00a0 │ │ 0x011f - 0x0136 │ │ -> 0x0134 │ │ positions : │ │ 0x0003 line=490 │ │ @@ -752535,18 +752534,18 @@ │ │ type : '()[Ljava/security/cert/X509Certificate;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 4 16-bit code units │ │ -4384b8: |[4384b8] org.purple.smoke.TcpTlsNeighbor$3.getAcceptedIssuers:()[Ljava/security/cert/X509Certificate; │ │ -4384c8: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -4384ca: 2300 b21b |0001: new-array v0, v0, [Ljava/security/cert/X509Certificate; // type@1bb2 │ │ -4384ce: 1100 |0003: return-object v0 │ │ +4384b4: |[4384b4] org.purple.smoke.TcpTlsNeighbor$3.getAcceptedIssuers:()[Ljava/security/cert/X509Certificate; │ │ +4384c4: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +4384c6: 2300 b21b |0001: new-array v0, v0, [Ljava/security/cert/X509Certificate; // type@1bb2 │ │ +4384ca: 1100 |0003: return-object v0 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ source_file_idx : 20083 (TcpTlsNeighbor.java) │ │ │ │ Class #2759 header: │ │ @@ -752582,18 +752581,18 @@ │ │ type : '(Lorg/purple/smoke/Time;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -439154: |[439154] org.purple.smoke.Time$1.:(Lorg/purple/smoke/Time;)V │ │ -439164: 5b01 3460 |0000: iput-object v1, v0, Lorg/purple/smoke/Time$1;.this$0:Lorg/purple/smoke/Time; // field@6034 │ │ -439168: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43916e: 0e00 |0005: return-void │ │ +439150: |[439150] org.purple.smoke.Time$1.:(Lorg/purple/smoke/Time;)V │ │ +439160: 5b01 3460 |0000: iput-object v1, v0, Lorg/purple/smoke/Time$1;.this$0:Lorg/purple/smoke/Time; // field@6034 │ │ +439164: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43916a: 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; │ │ │ │ @@ -752603,116 +752602,116 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 12 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 197 16-bit code units │ │ -439170: |[439170] org.purple.smoke.Time$1.run:()V │ │ -439180: 1a00 0c92 |0000: const-string v0, "org.purple.smoke.time" // string@920c │ │ -439184: 7100 10bb 0000 |0002: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -43918a: 0c01 |0005: move-result-object v1 │ │ -43918c: 6e10 13bb 0100 |0006: invoke-virtual {v1}, Lorg/purple/smoke/Kernel;.isNetworkConnected:()Z // method@bb13 │ │ -439192: 0a01 |0009: move-result v1 │ │ -439194: 3801 ba00 |000a: if-eqz v1, 00c4 // +00ba │ │ -439198: 7100 74bd 0000 |000c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -43919e: 0c01 |000f: move-result-object v1 │ │ -4391a0: 6e10 77bd 0100 |0010: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ -4391a6: 0a01 |0013: move-result v1 │ │ -4391a8: 3801 b000 |0014: if-eqz v1, 00c4 // +00b0 │ │ -4391ac: 7100 74bd 0000 |0016: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -4391b2: 0c01 |0019: move-result-object v1 │ │ -4391b4: 6e10 7fbd 0100 |001a: invoke-virtual {v1}, Lorg/purple/smoke/State;.queryTimerServer:()Z // method@bd7f │ │ -4391ba: 0a01 |001d: move-result v1 │ │ -4391bc: 3901 0400 |001e: if-nez v1, 0022 // +0004 │ │ -4391c0: 2900 a400 |0020: goto/16 00c4 // +00a4 │ │ -4391c4: 1201 |0022: const/4 v1, #int 0 // #0 │ │ -4391c6: 2202 190b |0023: new-instance v2, Ljava/net/URL; // type@0b19 │ │ -4391ca: 1a03 7676 |0025: const-string v3, "https://worldtimeapi.org/api/timezone/Etc/UTC.txt" // string@7676 │ │ -4391ce: 7020 b75d 3200 |0027: invoke-direct {v2, v3}, Ljava/net/URL;.:(Ljava/lang/String;)V // method@5db7 │ │ -4391d4: 6e10 b95d 0200 |002a: invoke-virtual {v2}, Ljava/net/URL;.openConnection:()Ljava/net/URLConnection; // method@5db9 │ │ -4391da: 0c02 |002d: move-result-object v2 │ │ -4391dc: 1f02 0b0b |002e: check-cast v2, Ljava/net/HttpURLConnection; // type@0b0b │ │ -4391e0: 1a03 5b1b |0030: const-string v3, "GET" // string@1b5b │ │ -4391e4: 6e20 865d 3200 |0032: invoke-virtual {v2, v3}, Ljava/net/HttpURLConnection;.setRequestMethod:(Ljava/lang/String;)V // method@5d86 │ │ -4391ea: 2203 a30a |0035: new-instance v3, Ljava/io/BufferedReader; // type@0aa3 │ │ -4391ee: 2204 b30a |0037: new-instance v4, Ljava/io/InputStreamReader; // type@0ab3 │ │ -4391f2: 6e10 7e5d 0200 |0039: invoke-virtual {v2}, Ljava/net/HttpURLConnection;.getInputStream:()Ljava/io/InputStream; // method@5d7e │ │ -4391f8: 0c05 |003c: move-result-object v5 │ │ -4391fa: 7020 c55b 5400 |003d: invoke-direct {v4, v5}, Ljava/io/InputStreamReader;.:(Ljava/io/InputStream;)V // method@5bc5 │ │ -439200: 7020 675b 4300 |0040: invoke-direct {v3, v4}, Ljava/io/BufferedReader;.:(Ljava/io/Reader;)V // method@5b67 │ │ -439206: 6e10 695b 0300 |0043: invoke-virtual {v3}, Ljava/io/BufferedReader;.readLine:()Ljava/lang/String; // method@5b69 │ │ -43920c: 0c01 |0046: move-result-object v1 │ │ -43920e: 3801 4800 |0047: if-eqz v1, 008f // +0048 │ │ -439212: 1a04 3aa6 |0049: const-string v4, "unixtime: " // string@a63a │ │ -439216: 6e20 ca5c 4100 |004b: invoke-virtual {v1, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ -43921c: 0a04 |004e: move-result v4 │ │ -43921e: 3804 f4ff |004f: if-eqz v4, 0043 // -000c │ │ -439222: 7100 065d 0000 |0051: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -439228: 0b04 |0054: move-result-wide v4 │ │ -43922a: 1606 e803 |0055: const-wide/16 v6, #int 1000 // #3e8 │ │ -43922e: be64 |0057: div-long/2addr v4, v6 │ │ -439230: 1306 0a00 |0058: const/16 v6, #int 10 // #a │ │ -439234: 6e20 cc5c 6100 |005a: invoke-virtual {v1, v6}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ -43923a: 0c06 |005d: move-result-object v6 │ │ -43923c: 7110 675c 0600 |005e: invoke-static {v6}, Ljava/lang/Long;.parseLong:(Ljava/lang/String;)J // method@5c67 │ │ -439242: 0b06 |0061: move-result-wide v6 │ │ -439244: 9c06 0406 |0062: sub-long v6, v4, v6 │ │ -439248: 7120 735c 7600 |0064: invoke-static {v6, v7}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ -43924e: 0b06 |0067: move-result-wide v6 │ │ -439250: 1608 0500 |0068: const-wide/16 v8, #int 5 // #5 │ │ -439254: 310a 0608 |006a: cmp-long v10, v6, v8 │ │ -439258: 3d0a 2300 |006c: if-lez v10, 008f // +0023 │ │ -43925c: 2206 f10a |006e: new-instance v6, Ljava/lang/StringBuilder; // type@0af1 │ │ -439260: 7010 ee5c 0600 |0070: invoke-direct {v6}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -439266: 1a07 d644 |0073: const-string v7, "Please correct the device's time as it is incorrect by at least 5 seconds. Local Unix Time: " // string@44d6 │ │ -43926a: 6e20 f95c 7600 |0075: invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -439270: 6e30 f55c 4605 |0078: invoke-virtual {v6, v4, v5}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@5cf5 │ │ -439276: 1a04 9d04 |007b: const-string v4, ". Source Unix Time: " // string@049d │ │ -43927a: 6e20 f95c 4600 |007d: invoke-virtual {v6, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -439280: 6e20 f95c 1600 |0080: invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -439286: 1a01 9904 |0083: const-string v1, "." // string@0499 │ │ -43928a: 6e20 f95c 1600 |0085: invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -439290: 6e10 035d 0600 |0088: invoke-virtual {v6}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -439296: 0c01 |008b: move-result-object v1 │ │ -439298: 7120 f9bb 1000 |008c: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;Ljava/lang/String;)V // method@bbf9 │ │ -43929e: 6e10 7c5d 0200 |008f: invoke-virtual {v2}, Ljava/net/HttpURLConnection;.disconnect:()V // method@5d7c │ │ -4392a4: 6e10 685b 0300 |0092: invoke-virtual {v3}, Ljava/io/BufferedReader;.close:()V // method@5b68 │ │ -4392aa: 2802 |0095: goto 0097 // +0002 │ │ -4392ac: 0000 |0096: nop // spacer │ │ -4392ae: 3802 1e00 |0097: if-eqz v2, 00b5 // +001e │ │ -4392b2: 6e10 7c5d 0200 |0099: invoke-virtual {v2}, Ljava/net/HttpURLConnection;.disconnect:()V // method@5d7c │ │ -4392b8: 2819 |009c: goto 00b5 // +0019 │ │ -4392ba: 0d00 |009d: move-exception v0 │ │ -4392bc: 0731 |009e: move-object v1, v3 │ │ -4392be: 2818 |009f: goto 00b7 // +0018 │ │ -4392c0: 0731 |00a0: move-object v1, v3 │ │ -4392c2: 2805 |00a1: goto 00a6 // +0005 │ │ -4392c4: 0d00 |00a2: move-exception v0 │ │ -4392c6: 0712 |00a3: move-object v2, v1 │ │ -4392c8: 2813 |00a4: goto 00b7 // +0013 │ │ -4392ca: 0712 |00a5: move-object v2, v1 │ │ -4392cc: 1a03 5250 |00a6: const-string v3, "Unable to query https://worldtimeapi.org/api/timezone/Etc/UTC.txt." // string@5052 │ │ -4392d0: 7120 f9bb 3000 |00a8: invoke-static {v0, v3}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;Ljava/lang/String;)V // method@bbf9 │ │ -4392d6: 3801 0700 |00ab: if-eqz v1, 00b2 // +0007 │ │ -4392da: 6e10 685b 0100 |00ad: invoke-virtual {v1}, Ljava/io/BufferedReader;.close:()V // method@5b68 │ │ -4392e0: 2802 |00b0: goto 00b2 // +0002 │ │ -4392e2: 0000 |00b1: nop // spacer │ │ -4392e4: 3802 0300 |00b2: if-eqz v2, 00b5 // +0003 │ │ -4392e8: 28e5 |00b4: goto 0099 // -001b │ │ -4392ea: 0e00 |00b5: return-void │ │ -4392ec: 0d00 |00b6: move-exception v0 │ │ -4392ee: 3801 0700 |00b7: if-eqz v1, 00be // +0007 │ │ -4392f2: 6e10 685b 0100 |00b9: invoke-virtual {v1}, Ljava/io/BufferedReader;.close:()V // method@5b68 │ │ -4392f8: 2802 |00bc: goto 00be // +0002 │ │ -4392fa: 0000 |00bd: nop // spacer │ │ -4392fc: 3802 0500 |00be: if-eqz v2, 00c3 // +0005 │ │ -439300: 6e10 7c5d 0200 |00c0: invoke-virtual {v2}, Ljava/net/HttpURLConnection;.disconnect:()V // method@5d7c │ │ -439306: 2700 |00c3: throw v0 │ │ -439308: 0e00 |00c4: return-void │ │ +43916c: |[43916c] org.purple.smoke.Time$1.run:()V │ │ +43917c: 1a00 0c92 |0000: const-string v0, "org.purple.smoke.time" // string@920c │ │ +439180: 7100 10bb 0000 |0002: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +439186: 0c01 |0005: move-result-object v1 │ │ +439188: 6e10 13bb 0100 |0006: invoke-virtual {v1}, Lorg/purple/smoke/Kernel;.isNetworkConnected:()Z // method@bb13 │ │ +43918e: 0a01 |0009: move-result v1 │ │ +439190: 3801 ba00 |000a: if-eqz v1, 00c4 // +00ba │ │ +439194: 7100 74bd 0000 |000c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +43919a: 0c01 |000f: move-result-object v1 │ │ +43919c: 6e10 77bd 0100 |0010: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ +4391a2: 0a01 |0013: move-result v1 │ │ +4391a4: 3801 b000 |0014: if-eqz v1, 00c4 // +00b0 │ │ +4391a8: 7100 74bd 0000 |0016: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +4391ae: 0c01 |0019: move-result-object v1 │ │ +4391b0: 6e10 7fbd 0100 |001a: invoke-virtual {v1}, Lorg/purple/smoke/State;.queryTimerServer:()Z // method@bd7f │ │ +4391b6: 0a01 |001d: move-result v1 │ │ +4391b8: 3901 0400 |001e: if-nez v1, 0022 // +0004 │ │ +4391bc: 2900 a400 |0020: goto/16 00c4 // +00a4 │ │ +4391c0: 1201 |0022: const/4 v1, #int 0 // #0 │ │ +4391c2: 2202 190b |0023: new-instance v2, Ljava/net/URL; // type@0b19 │ │ +4391c6: 1a03 7676 |0025: const-string v3, "https://worldtimeapi.org/api/timezone/Etc/UTC.txt" // string@7676 │ │ +4391ca: 7020 b75d 3200 |0027: invoke-direct {v2, v3}, Ljava/net/URL;.:(Ljava/lang/String;)V // method@5db7 │ │ +4391d0: 6e10 b95d 0200 |002a: invoke-virtual {v2}, Ljava/net/URL;.openConnection:()Ljava/net/URLConnection; // method@5db9 │ │ +4391d6: 0c02 |002d: move-result-object v2 │ │ +4391d8: 1f02 0b0b |002e: check-cast v2, Ljava/net/HttpURLConnection; // type@0b0b │ │ +4391dc: 1a03 5b1b |0030: const-string v3, "GET" // string@1b5b │ │ +4391e0: 6e20 865d 3200 |0032: invoke-virtual {v2, v3}, Ljava/net/HttpURLConnection;.setRequestMethod:(Ljava/lang/String;)V // method@5d86 │ │ +4391e6: 2203 a30a |0035: new-instance v3, Ljava/io/BufferedReader; // type@0aa3 │ │ +4391ea: 2204 b30a |0037: new-instance v4, Ljava/io/InputStreamReader; // type@0ab3 │ │ +4391ee: 6e10 7e5d 0200 |0039: invoke-virtual {v2}, Ljava/net/HttpURLConnection;.getInputStream:()Ljava/io/InputStream; // method@5d7e │ │ +4391f4: 0c05 |003c: move-result-object v5 │ │ +4391f6: 7020 c55b 5400 |003d: invoke-direct {v4, v5}, Ljava/io/InputStreamReader;.:(Ljava/io/InputStream;)V // method@5bc5 │ │ +4391fc: 7020 675b 4300 |0040: invoke-direct {v3, v4}, Ljava/io/BufferedReader;.:(Ljava/io/Reader;)V // method@5b67 │ │ +439202: 6e10 695b 0300 |0043: invoke-virtual {v3}, Ljava/io/BufferedReader;.readLine:()Ljava/lang/String; // method@5b69 │ │ +439208: 0c01 |0046: move-result-object v1 │ │ +43920a: 3801 4800 |0047: if-eqz v1, 008f // +0048 │ │ +43920e: 1a04 3aa6 |0049: const-string v4, "unixtime: " // string@a63a │ │ +439212: 6e20 ca5c 4100 |004b: invoke-virtual {v1, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ +439218: 0a04 |004e: move-result v4 │ │ +43921a: 3804 f4ff |004f: if-eqz v4, 0043 // -000c │ │ +43921e: 7100 065d 0000 |0051: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +439224: 0b04 |0054: move-result-wide v4 │ │ +439226: 1606 e803 |0055: const-wide/16 v6, #int 1000 // #3e8 │ │ +43922a: be64 |0057: div-long/2addr v4, v6 │ │ +43922c: 1306 0a00 |0058: const/16 v6, #int 10 // #a │ │ +439230: 6e20 cc5c 6100 |005a: invoke-virtual {v1, v6}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ +439236: 0c06 |005d: move-result-object v6 │ │ +439238: 7110 675c 0600 |005e: invoke-static {v6}, Ljava/lang/Long;.parseLong:(Ljava/lang/String;)J // method@5c67 │ │ +43923e: 0b06 |0061: move-result-wide v6 │ │ +439240: 9c06 0406 |0062: sub-long v6, v4, v6 │ │ +439244: 7120 735c 7600 |0064: invoke-static {v6, v7}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ +43924a: 0b06 |0067: move-result-wide v6 │ │ +43924c: 1608 0500 |0068: const-wide/16 v8, #int 5 // #5 │ │ +439250: 310a 0608 |006a: cmp-long v10, v6, v8 │ │ +439254: 3d0a 2300 |006c: if-lez v10, 008f // +0023 │ │ +439258: 2206 f10a |006e: new-instance v6, Ljava/lang/StringBuilder; // type@0af1 │ │ +43925c: 7010 ee5c 0600 |0070: invoke-direct {v6}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +439262: 1a07 d644 |0073: const-string v7, "Please correct the device's time as it is incorrect by at least 5 seconds. Local Unix Time: " // string@44d6 │ │ +439266: 6e20 f95c 7600 |0075: invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43926c: 6e30 f55c 4605 |0078: invoke-virtual {v6, v4, v5}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@5cf5 │ │ +439272: 1a04 9d04 |007b: const-string v4, ". Source Unix Time: " // string@049d │ │ +439276: 6e20 f95c 4600 |007d: invoke-virtual {v6, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43927c: 6e20 f95c 1600 |0080: invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +439282: 1a01 9904 |0083: const-string v1, "." // string@0499 │ │ +439286: 6e20 f95c 1600 |0085: invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43928c: 6e10 035d 0600 |0088: invoke-virtual {v6}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +439292: 0c01 |008b: move-result-object v1 │ │ +439294: 7120 f9bb 1000 |008c: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;Ljava/lang/String;)V // method@bbf9 │ │ +43929a: 6e10 7c5d 0200 |008f: invoke-virtual {v2}, Ljava/net/HttpURLConnection;.disconnect:()V // method@5d7c │ │ +4392a0: 6e10 685b 0300 |0092: invoke-virtual {v3}, Ljava/io/BufferedReader;.close:()V // method@5b68 │ │ +4392a6: 2802 |0095: goto 0097 // +0002 │ │ +4392a8: 0000 |0096: nop // spacer │ │ +4392aa: 3802 1e00 |0097: if-eqz v2, 00b5 // +001e │ │ +4392ae: 6e10 7c5d 0200 |0099: invoke-virtual {v2}, Ljava/net/HttpURLConnection;.disconnect:()V // method@5d7c │ │ +4392b4: 2819 |009c: goto 00b5 // +0019 │ │ +4392b6: 0d00 |009d: move-exception v0 │ │ +4392b8: 0731 |009e: move-object v1, v3 │ │ +4392ba: 2818 |009f: goto 00b7 // +0018 │ │ +4392bc: 0731 |00a0: move-object v1, v3 │ │ +4392be: 2805 |00a1: goto 00a6 // +0005 │ │ +4392c0: 0d00 |00a2: move-exception v0 │ │ +4392c2: 0712 |00a3: move-object v2, v1 │ │ +4392c4: 2813 |00a4: goto 00b7 // +0013 │ │ +4392c6: 0712 |00a5: move-object v2, v1 │ │ +4392c8: 1a03 5250 |00a6: const-string v3, "Unable to query https://worldtimeapi.org/api/timezone/Etc/UTC.txt." // string@5052 │ │ +4392cc: 7120 f9bb 3000 |00a8: invoke-static {v0, v3}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;Ljava/lang/String;)V // method@bbf9 │ │ +4392d2: 3801 0700 |00ab: if-eqz v1, 00b2 // +0007 │ │ +4392d6: 6e10 685b 0100 |00ad: invoke-virtual {v1}, Ljava/io/BufferedReader;.close:()V // method@5b68 │ │ +4392dc: 2802 |00b0: goto 00b2 // +0002 │ │ +4392de: 0000 |00b1: nop // spacer │ │ +4392e0: 3802 0300 |00b2: if-eqz v2, 00b5 // +0003 │ │ +4392e4: 28e5 |00b4: goto 0099 // -001b │ │ +4392e6: 0e00 |00b5: return-void │ │ +4392e8: 0d00 |00b6: move-exception v0 │ │ +4392ea: 3801 0700 |00b7: if-eqz v1, 00be // +0007 │ │ +4392ee: 6e10 685b 0100 |00b9: invoke-virtual {v1}, Ljava/io/BufferedReader;.close:()V // method@5b68 │ │ +4392f4: 2802 |00bc: goto 00be // +0002 │ │ +4392f6: 0000 |00bd: nop // spacer │ │ +4392f8: 3802 0500 |00be: if-eqz v2, 00c3 // +0005 │ │ +4392fc: 6e10 7c5d 0200 |00c0: invoke-virtual {v2}, Ljava/net/HttpURLConnection;.disconnect:()V // method@5d7c │ │ +439302: 2700 |00c3: throw v0 │ │ +439304: 0e00 |00c4: return-void │ │ catches : 9 │ │ 0x0023 - 0x0030 │ │ Ljava/lang/Exception; -> 0x00a5 │ │ -> 0x00a2 │ │ 0x0030 - 0x0043 │ │ Ljava/lang/Exception; -> 0x00a6 │ │ -> 0x00b6 │ │ @@ -752801,28 +752800,28 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 27 16-bit code units │ │ -439388: |[439388] org.purple.smoke.Time.:()V │ │ -439398: 7010 8f5c 0800 |0000: invoke-direct {v8}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43939e: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -4393a0: 5b80 3860 |0004: iput-object v0, v8, Lorg/purple/smoke/Time;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6038 │ │ -4393a4: 7100 c860 0000 |0006: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c8 │ │ -4393aa: 0c01 |0009: move-result-object v1 │ │ -4393ac: 5b81 3860 |000a: iput-object v1, v8, Lorg/purple/smoke/Time;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6038 │ │ -4393b0: 2202 3b1b |000c: new-instance v2, Lorg/purple/smoke/Time$1; // type@1b3b │ │ -4393b4: 7020 82be 8200 |000e: invoke-direct {v2, v8}, Lorg/purple/smoke/Time$1;.:(Lorg/purple/smoke/Time;)V // method@be82 │ │ -4393ba: 6207 f22c |0011: sget-object v7, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ -4393be: 1603 0100 |0013: const-wide/16 v3, #int 1 // #1 │ │ -4393c2: 1605 1e00 |0015: const-wide/16 v5, #int 30 // #1e │ │ -4393c6: 7807 d060 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@60d0 │ │ -4393cc: 0e00 |001a: return-void │ │ +439384: |[439384] org.purple.smoke.Time.:()V │ │ +439394: 7010 8f5c 0800 |0000: invoke-direct {v8}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43939a: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +43939c: 5b80 3860 |0004: iput-object v0, v8, Lorg/purple/smoke/Time;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6038 │ │ +4393a0: 7100 c860 0000 |0006: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c8 │ │ +4393a6: 0c01 |0009: move-result-object v1 │ │ +4393a8: 5b81 3860 |000a: iput-object v1, v8, Lorg/purple/smoke/Time;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6038 │ │ +4393ac: 2202 3b1b |000c: new-instance v2, Lorg/purple/smoke/Time$1; // type@1b3b │ │ +4393b0: 7020 82be 8200 |000e: invoke-direct {v2, v8}, Lorg/purple/smoke/Time$1;.:(Lorg/purple/smoke/Time;)V // method@be82 │ │ +4393b6: 6207 f22c |0011: sget-object v7, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ +4393ba: 1603 0100 |0013: const-wide/16 v3, #int 1 // #1 │ │ +4393be: 1605 1e00 |0015: const-wide/16 v5, #int 30 // #1e │ │ +4393c2: 7807 d060 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@60d0 │ │ +4393c8: 0e00 |001a: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=47 │ │ 0x0004 line=40 │ │ 0x0006 line=48 │ │ 0x000c line=49 │ │ locals : │ │ @@ -752868,20 +752867,20 @@ │ │ type : '(Lorg/purple/smoke/UdpMulticastNeighbor;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 9 16-bit code units │ │ -4393d0: |[4393d0] org.purple.smoke.UdpMulticastNeighbor$1.:(Lorg/purple/smoke/UdpMulticastNeighbor;)V │ │ -4393e0: 5b01 3a60 |0000: iput-object v1, v0, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -4393e4: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -4393ea: 1201 |0005: const/4 v1, #int 0 // #0 │ │ -4393ec: 5c01 3960 |0006: iput-boolean v1, v0, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6039 │ │ -4393f0: 0e00 |0008: return-void │ │ +4393cc: |[4393cc] org.purple.smoke.UdpMulticastNeighbor$1.:(Lorg/purple/smoke/UdpMulticastNeighbor;)V │ │ +4393dc: 5b01 3a60 |0000: iput-object v1, v0, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +4393e0: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +4393e6: 1201 |0005: const/4 v1, #int 0 // #0 │ │ +4393e8: 5c01 3960 |0006: iput-boolean v1, v0, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6039 │ │ +4393ec: 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; │ │ @@ -752892,154 +752891,154 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 262 16-bit code units │ │ -4393f4: |[4393f4] org.purple.smoke.UdpMulticastNeighbor$1.run:()V │ │ -439404: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -439406: 5461 3a60 |0001: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -43940a: 6e10 8bbe 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be8b │ │ -439410: 0a01 |0006: move-result v1 │ │ -439412: 3901 2100 |0007: if-nez v1, 0028 // +0021 │ │ -439416: 5461 3a60 |0009: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -43941a: 5411 3e60 |000b: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@603e │ │ -43941e: 6e10 da60 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -439424: 0a01 |0010: move-result v1 │ │ -439426: 3901 1700 |0011: if-nez v1, 0028 // +0017 │ │ -43942a: 5461 3a60 |0013: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -43942e: 5411 4360 |0015: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_mutex:Ljava/lang/Object; // field@6043 │ │ -439432: 1d01 |0017: monitor-enter v1 │ │ -439434: 5462 3a60 |0018: iget-object v2, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -439438: 5422 4360 |001a: iget-object v2, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_mutex:Ljava/lang/Object; // field@6043 │ │ -43943c: 1603 1027 |001c: const-wide/16 v3, #int 10000 // #2710 │ │ -439440: 6e30 985c 3204 |001e: invoke-virtual {v2, v3, v4}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ -439446: 2803 |0021: goto 0024 // +0003 │ │ -439448: 0d02 |0022: move-exception v2 │ │ -43944a: 2803 |0023: goto 0026 // +0003 │ │ -43944c: 1e01 |0024: monitor-exit v1 │ │ -43944e: 2803 |0025: goto 0028 // +0003 │ │ -439450: 1e01 |0026: monitor-exit v1 │ │ -439452: 2702 |0027: throw v2 │ │ -439454: 5461 3a60 |0028: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -439458: 6e10 8bbe 0100 |002a: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be8b │ │ -43945e: 0a01 |002d: move-result v1 │ │ -439460: 3801 cc00 |002e: if-eqz v1, 00fa // +00cc │ │ -439464: 5461 3a60 |0030: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -439468: 5411 3e60 |0032: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@603e │ │ -43946c: 6e10 da60 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -439472: 0a01 |0037: move-result v1 │ │ -439474: 3801 0400 |0038: if-eqz v1, 003c // +0004 │ │ -439478: 2900 c000 |003a: goto/16 00fa // +00c0 │ │ -43947c: 5561 3960 |003c: iget-boolean v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6039 │ │ -439480: 1202 |003e: const/4 v2, #int 0 // #0 │ │ -439482: 3801 0e00 |003f: if-eqz v1, 004d // +000e │ │ -439486: 5461 3a60 |0041: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -43948a: 6e10 8bbe 0100 |0043: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be8b │ │ -439490: 0a01 |0046: move-result v1 │ │ -439492: 3801 0500 |0047: if-eqz v1, 004c // +0005 │ │ -439496: 5c62 3960 |0049: iput-boolean v2, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6039 │ │ -43949a: 280b |004b: goto 0056 // +000b │ │ -43949c: 0e00 |004c: return-void │ │ -43949e: 5461 3a60 |004d: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -4394a2: 7110 89be 0100 |004f: invoke-static {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.access$000:(Lorg/purple/smoke/UdpMulticastNeighbor;)Ljava/net/MulticastSocket; // method@be89 │ │ -4394a8: 0c01 |0052: move-result-object v1 │ │ -4394aa: 3901 0300 |0053: if-nez v1, 0056 // +0003 │ │ -4394ae: 0e00 |0055: return-void │ │ -4394b0: 1501 1000 |0056: const/high16 v1, #int 1048576 // #10 │ │ -4394b4: 2313 481b |0058: new-array v3, v1, [B // type@1b48 │ │ -4394b8: 2204 090b |005a: new-instance v4, Ljava/net/DatagramPacket; // type@0b09 │ │ -4394bc: 7030 6c5d 3401 |005c: invoke-direct {v4, v3, v1}, Ljava/net/DatagramPacket;.:([BI)V // method@5d6c │ │ -4394c2: 1211 |005f: const/4 v1, #int 1 // #1 │ │ -4394c4: 5463 3a60 |0060: iget-object v3, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -4394c8: 7110 89be 0300 |0062: invoke-static {v3}, Lorg/purple/smoke/UdpMulticastNeighbor;.access$000:(Lorg/purple/smoke/UdpMulticastNeighbor;)Ljava/net/MulticastSocket; // method@be89 │ │ -4394ce: 0c03 |0065: move-result-object v3 │ │ -4394d0: 6e20 985d 4300 |0066: invoke-virtual {v3, v4}, Ljava/net/MulticastSocket;.receive:(Ljava/net/DatagramPacket;)V // method@5d98 │ │ -4394d6: 6e10 6f5d 0400 |0069: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ -4394dc: 0a03 |006c: move-result v3 │ │ -4394de: 3d03 1b00 |006d: if-lez v3, 0088 // +001b │ │ -4394e2: 2203 a60a |006f: new-instance v3, Ljava/io/ByteArrayOutputStream; // type@0aa6 │ │ -4394e6: 7010 715b 0300 |0071: invoke-direct {v3}, Ljava/io/ByteArrayOutputStream;.:()V // method@5b71 │ │ -4394ec: 6e10 6e5d 0400 |0074: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getData:()[B // method@5d6e │ │ -4394f2: 0c00 |0077: move-result-object v0 │ │ -4394f4: 6e10 6f5d 0400 |0078: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ -4394fa: 0a05 |007b: move-result v5 │ │ -4394fc: 6e40 7a5b 0352 |007c: invoke-virtual {v3, v0, v2, v5}, Ljava/io/ByteArrayOutputStream;.write:([BII)V // method@5b7a │ │ -439502: 0730 |007f: move-object v0, v3 │ │ -439504: 2808 |0080: goto 0088 // +0008 │ │ -439506: 0d01 |0081: move-exception v1 │ │ -439508: 0730 |0082: move-object v0, v3 │ │ -43950a: 2900 7900 |0083: goto/16 00fc // +0079 │ │ -43950e: 0730 |0085: move-object v0, v3 │ │ -439510: 2900 7c00 |0086: goto/16 0102 // +007c │ │ -439514: 6e10 6f5d 0400 |0088: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ -43951a: 0a02 |008b: move-result v2 │ │ -43951c: 3b02 1600 |008c: if-gez v2, 00a2 // +0016 │ │ -439520: 5c61 3960 |008e: iput-boolean v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6039 │ │ -439524: 5461 3a60 |0090: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -439528: 1a02 1109 |0092: const-string v2, "A socket receive() error occurred." // string@0911 │ │ -43952c: 6e20 95be 2100 |0094: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be95 │ │ -439532: 5461 3a60 |0097: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -439536: 6e10 8cbe 0100 |0099: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be8c │ │ -43953c: 3800 0500 |009c: if-eqz v0, 00a1 // +0005 │ │ -439540: 6e10 735b 0000 |009e: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ -439546: 0e00 |00a1: return-void │ │ -439548: 3902 0800 |00a2: if-nez v2, 00aa // +0008 │ │ -43954c: 3800 0500 |00a4: if-eqz v0, 00a9 // +0005 │ │ -439550: 6e10 735b 0000 |00a6: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ -439556: 0e00 |00a9: return-void │ │ -439558: 5461 3a60 |00aa: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -43955c: 5411 3c60 |00ac: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@603c │ │ -439560: 8122 |00ae: int-to-long v2, v2 │ │ -439562: 6e30 e460 2103 |00af: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e4 │ │ -439568: 5461 3a60 |00b2: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -43956c: 5411 4260 |00b4: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6042 │ │ -439570: 7100 0b5d 0000 |00b6: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -439576: 0b02 |00b9: move-result-wide v2 │ │ -439578: 6e30 e560 2103 |00ba: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43957e: 3800 1900 |00bd: if-eqz v0, 00d6 // +0019 │ │ -439582: 5461 3a60 |00bf: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -439586: 5411 4860 |00c1: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6048 │ │ -43958a: 6e10 e85c 0100 |00c3: invoke-virtual {v1}, Ljava/lang/StringBuffer;.length:()I // method@5ce8 │ │ -439590: 0a01 |00c6: move-result v1 │ │ -439592: 1502 8000 |00c7: const/high16 v2, #int 8388608 // #80 │ │ -439596: 3521 0d00 |00c9: if-ge v1, v2, 00d6 // +000d │ │ -43959a: 5461 3a60 |00cb: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -43959e: 5411 4860 |00cd: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6048 │ │ -4395a2: 6e10 775b 0000 |00cf: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.toString:()Ljava/lang/String; // method@5b77 │ │ -4395a8: 0c02 |00d2: move-result-object v2 │ │ -4395aa: 6e20 e05c 2100 |00d3: invoke-virtual {v1, v2}, Ljava/lang/StringBuffer;.append:(Ljava/lang/String;)Ljava/lang/StringBuffer; // method@5ce0 │ │ -4395b0: 5461 3a60 |00d6: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -4395b4: 5411 4460 |00d8: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6044 │ │ -4395b8: 1d01 |00da: monitor-enter v1 │ │ -4395ba: 5462 3a60 |00db: iget-object v2, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -4395be: 5422 4460 |00dd: iget-object v2, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6044 │ │ -4395c2: 6e10 945c 0200 |00df: invoke-virtual {v2}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ -4395c8: 1e01 |00e2: monitor-exit v1 │ │ -4395ca: 3800 2200 |00e3: if-eqz v0, 0105 // +0022 │ │ -4395ce: 6e10 735b 0000 |00e5: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ -4395d4: 281d |00e8: goto 0105 // +001d │ │ -4395d6: 0d02 |00e9: move-exception v2 │ │ -4395d8: 1e01 |00ea: monitor-exit v1 │ │ -4395da: 2702 |00eb: throw v2 │ │ -4395dc: 5c61 3960 |00ec: iput-boolean v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6039 │ │ -4395e0: 5461 3a60 |00ee: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -4395e4: 1a02 1109 |00f0: const-string v2, "A socket receive() error occurred." // string@0911 │ │ -4395e8: 6e20 95be 2100 |00f2: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be95 │ │ -4395ee: 5461 3a60 |00f5: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ -4395f2: 6e10 8cbe 0100 |00f7: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be8c │ │ -4395f8: 0e00 |00fa: return-void │ │ -4395fa: 0d01 |00fb: move-exception v1 │ │ -4395fc: 3800 0500 |00fc: if-eqz v0, 0101 // +0005 │ │ -439600: 6e10 735b 0000 |00fe: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ -439606: 2701 |0101: throw v1 │ │ -439608: 3800 0300 |0102: if-eqz v0, 0105 // +0003 │ │ -43960c: 28e1 |0104: goto 00e5 // -001f │ │ -43960e: 0e00 |0105: return-void │ │ +4393f0: |[4393f0] org.purple.smoke.UdpMulticastNeighbor$1.run:()V │ │ +439400: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +439402: 5461 3a60 |0001: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +439406: 6e10 8bbe 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be8b │ │ +43940c: 0a01 |0006: move-result v1 │ │ +43940e: 3901 2100 |0007: if-nez v1, 0028 // +0021 │ │ +439412: 5461 3a60 |0009: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +439416: 5411 3e60 |000b: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@603e │ │ +43941a: 6e10 da60 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +439420: 0a01 |0010: move-result v1 │ │ +439422: 3901 1700 |0011: if-nez v1, 0028 // +0017 │ │ +439426: 5461 3a60 |0013: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +43942a: 5411 4360 |0015: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_mutex:Ljava/lang/Object; // field@6043 │ │ +43942e: 1d01 |0017: monitor-enter v1 │ │ +439430: 5462 3a60 |0018: iget-object v2, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +439434: 5422 4360 |001a: iget-object v2, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_mutex:Ljava/lang/Object; // field@6043 │ │ +439438: 1603 1027 |001c: const-wide/16 v3, #int 10000 // #2710 │ │ +43943c: 6e30 985c 3204 |001e: invoke-virtual {v2, v3, v4}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ +439442: 2803 |0021: goto 0024 // +0003 │ │ +439444: 0d02 |0022: move-exception v2 │ │ +439446: 2803 |0023: goto 0026 // +0003 │ │ +439448: 1e01 |0024: monitor-exit v1 │ │ +43944a: 2803 |0025: goto 0028 // +0003 │ │ +43944c: 1e01 |0026: monitor-exit v1 │ │ +43944e: 2702 |0027: throw v2 │ │ +439450: 5461 3a60 |0028: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +439454: 6e10 8bbe 0100 |002a: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be8b │ │ +43945a: 0a01 |002d: move-result v1 │ │ +43945c: 3801 cc00 |002e: if-eqz v1, 00fa // +00cc │ │ +439460: 5461 3a60 |0030: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +439464: 5411 3e60 |0032: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@603e │ │ +439468: 6e10 da60 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +43946e: 0a01 |0037: move-result v1 │ │ +439470: 3801 0400 |0038: if-eqz v1, 003c // +0004 │ │ +439474: 2900 c000 |003a: goto/16 00fa // +00c0 │ │ +439478: 5561 3960 |003c: iget-boolean v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6039 │ │ +43947c: 1202 |003e: const/4 v2, #int 0 // #0 │ │ +43947e: 3801 0e00 |003f: if-eqz v1, 004d // +000e │ │ +439482: 5461 3a60 |0041: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +439486: 6e10 8bbe 0100 |0043: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be8b │ │ +43948c: 0a01 |0046: move-result v1 │ │ +43948e: 3801 0500 |0047: if-eqz v1, 004c // +0005 │ │ +439492: 5c62 3960 |0049: iput-boolean v2, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6039 │ │ +439496: 280b |004b: goto 0056 // +000b │ │ +439498: 0e00 |004c: return-void │ │ +43949a: 5461 3a60 |004d: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +43949e: 7110 89be 0100 |004f: invoke-static {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.access$000:(Lorg/purple/smoke/UdpMulticastNeighbor;)Ljava/net/MulticastSocket; // method@be89 │ │ +4394a4: 0c01 |0052: move-result-object v1 │ │ +4394a6: 3901 0300 |0053: if-nez v1, 0056 // +0003 │ │ +4394aa: 0e00 |0055: return-void │ │ +4394ac: 1501 1000 |0056: const/high16 v1, #int 1048576 // #10 │ │ +4394b0: 2313 481b |0058: new-array v3, v1, [B // type@1b48 │ │ +4394b4: 2204 090b |005a: new-instance v4, Ljava/net/DatagramPacket; // type@0b09 │ │ +4394b8: 7030 6c5d 3401 |005c: invoke-direct {v4, v3, v1}, Ljava/net/DatagramPacket;.:([BI)V // method@5d6c │ │ +4394be: 1211 |005f: const/4 v1, #int 1 // #1 │ │ +4394c0: 5463 3a60 |0060: iget-object v3, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +4394c4: 7110 89be 0300 |0062: invoke-static {v3}, Lorg/purple/smoke/UdpMulticastNeighbor;.access$000:(Lorg/purple/smoke/UdpMulticastNeighbor;)Ljava/net/MulticastSocket; // method@be89 │ │ +4394ca: 0c03 |0065: move-result-object v3 │ │ +4394cc: 6e20 985d 4300 |0066: invoke-virtual {v3, v4}, Ljava/net/MulticastSocket;.receive:(Ljava/net/DatagramPacket;)V // method@5d98 │ │ +4394d2: 6e10 6f5d 0400 |0069: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ +4394d8: 0a03 |006c: move-result v3 │ │ +4394da: 3d03 1b00 |006d: if-lez v3, 0088 // +001b │ │ +4394de: 2203 a60a |006f: new-instance v3, Ljava/io/ByteArrayOutputStream; // type@0aa6 │ │ +4394e2: 7010 715b 0300 |0071: invoke-direct {v3}, Ljava/io/ByteArrayOutputStream;.:()V // method@5b71 │ │ +4394e8: 6e10 6e5d 0400 |0074: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getData:()[B // method@5d6e │ │ +4394ee: 0c00 |0077: move-result-object v0 │ │ +4394f0: 6e10 6f5d 0400 |0078: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ +4394f6: 0a05 |007b: move-result v5 │ │ +4394f8: 6e40 7a5b 0352 |007c: invoke-virtual {v3, v0, v2, v5}, Ljava/io/ByteArrayOutputStream;.write:([BII)V // method@5b7a │ │ +4394fe: 0730 |007f: move-object v0, v3 │ │ +439500: 2808 |0080: goto 0088 // +0008 │ │ +439502: 0d01 |0081: move-exception v1 │ │ +439504: 0730 |0082: move-object v0, v3 │ │ +439506: 2900 7900 |0083: goto/16 00fc // +0079 │ │ +43950a: 0730 |0085: move-object v0, v3 │ │ +43950c: 2900 7c00 |0086: goto/16 0102 // +007c │ │ +439510: 6e10 6f5d 0400 |0088: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ +439516: 0a02 |008b: move-result v2 │ │ +439518: 3b02 1600 |008c: if-gez v2, 00a2 // +0016 │ │ +43951c: 5c61 3960 |008e: iput-boolean v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6039 │ │ +439520: 5461 3a60 |0090: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +439524: 1a02 1109 |0092: const-string v2, "A socket receive() error occurred." // string@0911 │ │ +439528: 6e20 95be 2100 |0094: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be95 │ │ +43952e: 5461 3a60 |0097: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +439532: 6e10 8cbe 0100 |0099: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be8c │ │ +439538: 3800 0500 |009c: if-eqz v0, 00a1 // +0005 │ │ +43953c: 6e10 735b 0000 |009e: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ +439542: 0e00 |00a1: return-void │ │ +439544: 3902 0800 |00a2: if-nez v2, 00aa // +0008 │ │ +439548: 3800 0500 |00a4: if-eqz v0, 00a9 // +0005 │ │ +43954c: 6e10 735b 0000 |00a6: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ +439552: 0e00 |00a9: return-void │ │ +439554: 5461 3a60 |00aa: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +439558: 5411 3c60 |00ac: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@603c │ │ +43955c: 8122 |00ae: int-to-long v2, v2 │ │ +43955e: 6e30 e460 2103 |00af: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e4 │ │ +439564: 5461 3a60 |00b2: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +439568: 5411 4260 |00b4: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6042 │ │ +43956c: 7100 0b5d 0000 |00b6: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +439572: 0b02 |00b9: move-result-wide v2 │ │ +439574: 6e30 e560 2103 |00ba: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +43957a: 3800 1900 |00bd: if-eqz v0, 00d6 // +0019 │ │ +43957e: 5461 3a60 |00bf: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +439582: 5411 4860 |00c1: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6048 │ │ +439586: 6e10 e85c 0100 |00c3: invoke-virtual {v1}, Ljava/lang/StringBuffer;.length:()I // method@5ce8 │ │ +43958c: 0a01 |00c6: move-result v1 │ │ +43958e: 1502 8000 |00c7: const/high16 v2, #int 8388608 // #80 │ │ +439592: 3521 0d00 |00c9: if-ge v1, v2, 00d6 // +000d │ │ +439596: 5461 3a60 |00cb: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +43959a: 5411 4860 |00cd: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6048 │ │ +43959e: 6e10 775b 0000 |00cf: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.toString:()Ljava/lang/String; // method@5b77 │ │ +4395a4: 0c02 |00d2: move-result-object v2 │ │ +4395a6: 6e20 e05c 2100 |00d3: invoke-virtual {v1, v2}, Ljava/lang/StringBuffer;.append:(Ljava/lang/String;)Ljava/lang/StringBuffer; // method@5ce0 │ │ +4395ac: 5461 3a60 |00d6: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +4395b0: 5411 4460 |00d8: iget-object v1, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6044 │ │ +4395b4: 1d01 |00da: monitor-enter v1 │ │ +4395b6: 5462 3a60 |00db: iget-object v2, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +4395ba: 5422 4460 |00dd: iget-object v2, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6044 │ │ +4395be: 6e10 945c 0200 |00df: invoke-virtual {v2}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ +4395c4: 1e01 |00e2: monitor-exit v1 │ │ +4395c6: 3800 2200 |00e3: if-eqz v0, 0105 // +0022 │ │ +4395ca: 6e10 735b 0000 |00e5: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ +4395d0: 281d |00e8: goto 0105 // +001d │ │ +4395d2: 0d02 |00e9: move-exception v2 │ │ +4395d4: 1e01 |00ea: monitor-exit v1 │ │ +4395d6: 2702 |00eb: throw v2 │ │ +4395d8: 5c61 3960 |00ec: iput-boolean v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.m_error:Z // field@6039 │ │ +4395dc: 5461 3a60 |00ee: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +4395e0: 1a02 1109 |00f0: const-string v2, "A socket receive() error occurred." // string@0911 │ │ +4395e4: 6e20 95be 2100 |00f2: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be95 │ │ +4395ea: 5461 3a60 |00f5: iget-object v1, v6, Lorg/purple/smoke/UdpMulticastNeighbor$1;.this$0:Lorg/purple/smoke/UdpMulticastNeighbor; // field@603a │ │ +4395ee: 6e10 8cbe 0100 |00f7: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be8c │ │ +4395f4: 0e00 |00fa: return-void │ │ +4395f6: 0d01 |00fb: move-exception v1 │ │ +4395f8: 3800 0500 |00fc: if-eqz v0, 0101 // +0005 │ │ +4395fc: 6e10 735b 0000 |00fe: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ +439602: 2701 |0101: throw v1 │ │ +439604: 3800 0300 |0102: if-eqz v0, 0105 // +0003 │ │ +439608: 28e1 |0104: goto 00e5 // -001f │ │ +43960a: 0e00 |0105: return-void │ │ catches : 16 │ │ 0x0001 - 0x0018 │ │ Ljava/lang/Exception; -> 0x0102 │ │ -> 0x00fb │ │ 0x0018 - 0x0021 │ │ Ljava/lang/Exception; -> 0x0024 │ │ -> 0x0022 │ │ @@ -753157,20 +753156,20 @@ │ │ type : '(Lorg/purple/smoke/UdpNeighbor;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 9 16-bit code units │ │ -439c5c: |[439c5c] org.purple.smoke.UdpNeighbor$1.:(Lorg/purple/smoke/UdpNeighbor;)V │ │ -439c6c: 5b01 4b60 |0000: iput-object v1, v0, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439c70: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -439c76: 1201 |0005: const/4 v1, #int 0 // #0 │ │ -439c78: 5c01 4a60 |0006: iput-boolean v1, v0, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@604a │ │ -439c7c: 0e00 |0008: return-void │ │ +439c58: |[439c58] org.purple.smoke.UdpNeighbor$1.:(Lorg/purple/smoke/UdpNeighbor;)V │ │ +439c68: 5b01 4b60 |0000: iput-object v1, v0, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439c6c: 7010 8f5c 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +439c72: 1201 |0005: const/4 v1, #int 0 // #0 │ │ +439c74: 5c01 4a60 |0006: iput-boolean v1, v0, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@604a │ │ +439c78: 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; │ │ @@ -753181,154 +753180,154 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 262 16-bit code units │ │ -439c80: |[439c80] org.purple.smoke.UdpNeighbor$1.run:()V │ │ -439c90: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -439c92: 5461 4b60 |0001: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439c96: 6e10 9dbe 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be9d │ │ -439c9c: 0a01 |0006: move-result v1 │ │ -439c9e: 3901 2100 |0007: if-nez v1, 0028 // +0021 │ │ -439ca2: 5461 4b60 |0009: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439ca6: 5411 4e60 |000b: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@604e │ │ -439caa: 6e10 da60 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -439cb0: 0a01 |0010: move-result v1 │ │ -439cb2: 3901 1700 |0011: if-nez v1, 0028 // +0017 │ │ -439cb6: 5461 4b60 |0013: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439cba: 5411 5360 |0015: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_mutex:Ljava/lang/Object; // field@6053 │ │ -439cbe: 1d01 |0017: monitor-enter v1 │ │ -439cc0: 5462 4b60 |0018: iget-object v2, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439cc4: 5422 5360 |001a: iget-object v2, v2, Lorg/purple/smoke/UdpNeighbor;.m_mutex:Ljava/lang/Object; // field@6053 │ │ -439cc8: 1603 1027 |001c: const-wide/16 v3, #int 10000 // #2710 │ │ -439ccc: 6e30 985c 3204 |001e: invoke-virtual {v2, v3, v4}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ -439cd2: 2803 |0021: goto 0024 // +0003 │ │ -439cd4: 0d02 |0022: move-exception v2 │ │ -439cd6: 2803 |0023: goto 0026 // +0003 │ │ -439cd8: 1e01 |0024: monitor-exit v1 │ │ -439cda: 2803 |0025: goto 0028 // +0003 │ │ -439cdc: 1e01 |0026: monitor-exit v1 │ │ -439cde: 2702 |0027: throw v2 │ │ -439ce0: 5461 4b60 |0028: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439ce4: 6e10 9dbe 0100 |002a: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be9d │ │ -439cea: 0a01 |002d: move-result v1 │ │ -439cec: 3801 cc00 |002e: if-eqz v1, 00fa // +00cc │ │ -439cf0: 5461 4b60 |0030: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439cf4: 5411 4e60 |0032: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@604e │ │ -439cf8: 6e10 da60 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -439cfe: 0a01 |0037: move-result v1 │ │ -439d00: 3801 0400 |0038: if-eqz v1, 003c // +0004 │ │ -439d04: 2900 c000 |003a: goto/16 00fa // +00c0 │ │ -439d08: 5561 4a60 |003c: iget-boolean v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@604a │ │ -439d0c: 1202 |003e: const/4 v2, #int 0 // #0 │ │ -439d0e: 3801 0e00 |003f: if-eqz v1, 004d // +000e │ │ -439d12: 5461 4b60 |0041: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439d16: 6e10 9dbe 0100 |0043: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be9d │ │ -439d1c: 0a01 |0046: move-result v1 │ │ -439d1e: 3801 0500 |0047: if-eqz v1, 004c // +0005 │ │ -439d22: 5c62 4a60 |0049: iput-boolean v2, v6, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@604a │ │ -439d26: 280b |004b: goto 0056 // +000b │ │ -439d28: 0e00 |004c: return-void │ │ -439d2a: 5461 4b60 |004d: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439d2e: 7110 9bbe 0100 |004f: invoke-static {v1}, Lorg/purple/smoke/UdpNeighbor;.access$000:(Lorg/purple/smoke/UdpNeighbor;)Ljava/net/DatagramSocket; // method@be9b │ │ -439d34: 0c01 |0052: move-result-object v1 │ │ -439d36: 3901 0300 |0053: if-nez v1, 0056 // +0003 │ │ -439d3a: 0e00 |0055: return-void │ │ -439d3c: 1501 1000 |0056: const/high16 v1, #int 1048576 // #10 │ │ -439d40: 2313 481b |0058: new-array v3, v1, [B // type@1b48 │ │ -439d44: 2204 090b |005a: new-instance v4, Ljava/net/DatagramPacket; // type@0b09 │ │ -439d48: 7030 6c5d 3401 |005c: invoke-direct {v4, v3, v1}, Ljava/net/DatagramPacket;.:([BI)V // method@5d6c │ │ -439d4e: 1211 |005f: const/4 v1, #int 1 // #1 │ │ -439d50: 5463 4b60 |0060: iget-object v3, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439d54: 7110 9bbe 0300 |0062: invoke-static {v3}, Lorg/purple/smoke/UdpNeighbor;.access$000:(Lorg/purple/smoke/UdpNeighbor;)Ljava/net/DatagramSocket; // method@be9b │ │ -439d5a: 0c03 |0065: move-result-object v3 │ │ -439d5c: 6e20 785d 4300 |0066: invoke-virtual {v3, v4}, Ljava/net/DatagramSocket;.receive:(Ljava/net/DatagramPacket;)V // method@5d78 │ │ -439d62: 6e10 6f5d 0400 |0069: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ -439d68: 0a03 |006c: move-result v3 │ │ -439d6a: 3d03 1b00 |006d: if-lez v3, 0088 // +001b │ │ -439d6e: 2203 a60a |006f: new-instance v3, Ljava/io/ByteArrayOutputStream; // type@0aa6 │ │ -439d72: 7010 715b 0300 |0071: invoke-direct {v3}, Ljava/io/ByteArrayOutputStream;.:()V // method@5b71 │ │ -439d78: 6e10 6e5d 0400 |0074: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getData:()[B // method@5d6e │ │ -439d7e: 0c00 |0077: move-result-object v0 │ │ -439d80: 6e10 6f5d 0400 |0078: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ -439d86: 0a05 |007b: move-result v5 │ │ -439d88: 6e40 7a5b 0352 |007c: invoke-virtual {v3, v0, v2, v5}, Ljava/io/ByteArrayOutputStream;.write:([BII)V // method@5b7a │ │ -439d8e: 0730 |007f: move-object v0, v3 │ │ -439d90: 2808 |0080: goto 0088 // +0008 │ │ -439d92: 0d01 |0081: move-exception v1 │ │ -439d94: 0730 |0082: move-object v0, v3 │ │ -439d96: 2900 7900 |0083: goto/16 00fc // +0079 │ │ -439d9a: 0730 |0085: move-object v0, v3 │ │ -439d9c: 2900 7c00 |0086: goto/16 0102 // +007c │ │ -439da0: 6e10 6f5d 0400 |0088: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ -439da6: 0a02 |008b: move-result v2 │ │ -439da8: 3b02 1600 |008c: if-gez v2, 00a2 // +0016 │ │ -439dac: 5c61 4a60 |008e: iput-boolean v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@604a │ │ -439db0: 5461 4b60 |0090: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439db4: 1a02 1109 |0092: const-string v2, "A socket receive() error occurred." // string@0911 │ │ -439db8: 6e20 a7be 2100 |0094: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea7 │ │ -439dbe: 5461 4b60 |0097: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439dc2: 6e10 9ebe 0100 |0099: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be9e │ │ -439dc8: 3800 0500 |009c: if-eqz v0, 00a1 // +0005 │ │ -439dcc: 6e10 735b 0000 |009e: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ -439dd2: 0e00 |00a1: return-void │ │ -439dd4: 3902 0800 |00a2: if-nez v2, 00aa // +0008 │ │ -439dd8: 3800 0500 |00a4: if-eqz v0, 00a9 // +0005 │ │ -439ddc: 6e10 735b 0000 |00a6: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ -439de2: 0e00 |00a9: return-void │ │ -439de4: 5461 4b60 |00aa: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439de8: 5411 4c60 |00ac: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@604c │ │ -439dec: 8122 |00ae: int-to-long v2, v2 │ │ -439dee: 6e30 e460 2103 |00af: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e4 │ │ -439df4: 5461 4b60 |00b2: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439df8: 5411 5260 |00b4: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6052 │ │ -439dfc: 7100 0b5d 0000 |00b6: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -439e02: 0b02 |00b9: move-result-wide v2 │ │ -439e04: 6e30 e560 2103 |00ba: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -439e0a: 3800 1900 |00bd: if-eqz v0, 00d6 // +0019 │ │ -439e0e: 5461 4b60 |00bf: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439e12: 5411 5860 |00c1: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6058 │ │ -439e16: 6e10 e85c 0100 |00c3: invoke-virtual {v1}, Ljava/lang/StringBuffer;.length:()I // method@5ce8 │ │ -439e1c: 0a01 |00c6: move-result v1 │ │ -439e1e: 1502 8000 |00c7: const/high16 v2, #int 8388608 // #80 │ │ -439e22: 3521 0d00 |00c9: if-ge v1, v2, 00d6 // +000d │ │ -439e26: 5461 4b60 |00cb: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439e2a: 5411 5860 |00cd: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6058 │ │ -439e2e: 6e10 775b 0000 |00cf: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.toString:()Ljava/lang/String; // method@5b77 │ │ -439e34: 0c02 |00d2: move-result-object v2 │ │ -439e36: 6e20 e05c 2100 |00d3: invoke-virtual {v1, v2}, Ljava/lang/StringBuffer;.append:(Ljava/lang/String;)Ljava/lang/StringBuffer; // method@5ce0 │ │ -439e3c: 5461 4b60 |00d6: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439e40: 5411 5460 |00d8: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6054 │ │ -439e44: 1d01 |00da: monitor-enter v1 │ │ -439e46: 5462 4b60 |00db: iget-object v2, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439e4a: 5422 5460 |00dd: iget-object v2, v2, Lorg/purple/smoke/UdpNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6054 │ │ -439e4e: 6e10 945c 0200 |00df: invoke-virtual {v2}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ -439e54: 1e01 |00e2: monitor-exit v1 │ │ -439e56: 3800 2200 |00e3: if-eqz v0, 0105 // +0022 │ │ -439e5a: 6e10 735b 0000 |00e5: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ -439e60: 281d |00e8: goto 0105 // +001d │ │ -439e62: 0d02 |00e9: move-exception v2 │ │ -439e64: 1e01 |00ea: monitor-exit v1 │ │ -439e66: 2702 |00eb: throw v2 │ │ -439e68: 5c61 4a60 |00ec: iput-boolean v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@604a │ │ -439e6c: 5461 4b60 |00ee: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439e70: 1a02 1109 |00f0: const-string v2, "A socket receive() error occurred." // string@0911 │ │ -439e74: 6e20 a7be 2100 |00f2: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea7 │ │ -439e7a: 5461 4b60 |00f5: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ -439e7e: 6e10 9ebe 0100 |00f7: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be9e │ │ -439e84: 0e00 |00fa: return-void │ │ -439e86: 0d01 |00fb: move-exception v1 │ │ -439e88: 3800 0500 |00fc: if-eqz v0, 0101 // +0005 │ │ -439e8c: 6e10 735b 0000 |00fe: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ -439e92: 2701 |0101: throw v1 │ │ -439e94: 3800 0300 |0102: if-eqz v0, 0105 // +0003 │ │ -439e98: 28e1 |0104: goto 00e5 // -001f │ │ -439e9a: 0e00 |0105: return-void │ │ +439c7c: |[439c7c] org.purple.smoke.UdpNeighbor$1.run:()V │ │ +439c8c: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +439c8e: 5461 4b60 |0001: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439c92: 6e10 9dbe 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be9d │ │ +439c98: 0a01 |0006: move-result v1 │ │ +439c9a: 3901 2100 |0007: if-nez v1, 0028 // +0021 │ │ +439c9e: 5461 4b60 |0009: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439ca2: 5411 4e60 |000b: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@604e │ │ +439ca6: 6e10 da60 0100 |000d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +439cac: 0a01 |0010: move-result v1 │ │ +439cae: 3901 1700 |0011: if-nez v1, 0028 // +0017 │ │ +439cb2: 5461 4b60 |0013: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439cb6: 5411 5360 |0015: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_mutex:Ljava/lang/Object; // field@6053 │ │ +439cba: 1d01 |0017: monitor-enter v1 │ │ +439cbc: 5462 4b60 |0018: iget-object v2, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439cc0: 5422 5360 |001a: iget-object v2, v2, Lorg/purple/smoke/UdpNeighbor;.m_mutex:Ljava/lang/Object; // field@6053 │ │ +439cc4: 1603 1027 |001c: const-wide/16 v3, #int 10000 // #2710 │ │ +439cc8: 6e30 985c 3204 |001e: invoke-virtual {v2, v3, v4}, Ljava/lang/Object;.wait:(J)V // method@5c98 │ │ +439cce: 2803 |0021: goto 0024 // +0003 │ │ +439cd0: 0d02 |0022: move-exception v2 │ │ +439cd2: 2803 |0023: goto 0026 // +0003 │ │ +439cd4: 1e01 |0024: monitor-exit v1 │ │ +439cd6: 2803 |0025: goto 0028 // +0003 │ │ +439cd8: 1e01 |0026: monitor-exit v1 │ │ +439cda: 2702 |0027: throw v2 │ │ +439cdc: 5461 4b60 |0028: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439ce0: 6e10 9dbe 0100 |002a: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be9d │ │ +439ce6: 0a01 |002d: move-result v1 │ │ +439ce8: 3801 cc00 |002e: if-eqz v1, 00fa // +00cc │ │ +439cec: 5461 4b60 |0030: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439cf0: 5411 4e60 |0032: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@604e │ │ +439cf4: 6e10 da60 0100 |0034: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +439cfa: 0a01 |0037: move-result v1 │ │ +439cfc: 3801 0400 |0038: if-eqz v1, 003c // +0004 │ │ +439d00: 2900 c000 |003a: goto/16 00fa // +00c0 │ │ +439d04: 5561 4a60 |003c: iget-boolean v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@604a │ │ +439d08: 1202 |003e: const/4 v2, #int 0 // #0 │ │ +439d0a: 3801 0e00 |003f: if-eqz v1, 004d // +000e │ │ +439d0e: 5461 4b60 |0041: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439d12: 6e10 9dbe 0100 |0043: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be9d │ │ +439d18: 0a01 |0046: move-result v1 │ │ +439d1a: 3801 0500 |0047: if-eqz v1, 004c // +0005 │ │ +439d1e: 5c62 4a60 |0049: iput-boolean v2, v6, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@604a │ │ +439d22: 280b |004b: goto 0056 // +000b │ │ +439d24: 0e00 |004c: return-void │ │ +439d26: 5461 4b60 |004d: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439d2a: 7110 9bbe 0100 |004f: invoke-static {v1}, Lorg/purple/smoke/UdpNeighbor;.access$000:(Lorg/purple/smoke/UdpNeighbor;)Ljava/net/DatagramSocket; // method@be9b │ │ +439d30: 0c01 |0052: move-result-object v1 │ │ +439d32: 3901 0300 |0053: if-nez v1, 0056 // +0003 │ │ +439d36: 0e00 |0055: return-void │ │ +439d38: 1501 1000 |0056: const/high16 v1, #int 1048576 // #10 │ │ +439d3c: 2313 481b |0058: new-array v3, v1, [B // type@1b48 │ │ +439d40: 2204 090b |005a: new-instance v4, Ljava/net/DatagramPacket; // type@0b09 │ │ +439d44: 7030 6c5d 3401 |005c: invoke-direct {v4, v3, v1}, Ljava/net/DatagramPacket;.:([BI)V // method@5d6c │ │ +439d4a: 1211 |005f: const/4 v1, #int 1 // #1 │ │ +439d4c: 5463 4b60 |0060: iget-object v3, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439d50: 7110 9bbe 0300 |0062: invoke-static {v3}, Lorg/purple/smoke/UdpNeighbor;.access$000:(Lorg/purple/smoke/UdpNeighbor;)Ljava/net/DatagramSocket; // method@be9b │ │ +439d56: 0c03 |0065: move-result-object v3 │ │ +439d58: 6e20 785d 4300 |0066: invoke-virtual {v3, v4}, Ljava/net/DatagramSocket;.receive:(Ljava/net/DatagramPacket;)V // method@5d78 │ │ +439d5e: 6e10 6f5d 0400 |0069: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ +439d64: 0a03 |006c: move-result v3 │ │ +439d66: 3d03 1b00 |006d: if-lez v3, 0088 // +001b │ │ +439d6a: 2203 a60a |006f: new-instance v3, Ljava/io/ByteArrayOutputStream; // type@0aa6 │ │ +439d6e: 7010 715b 0300 |0071: invoke-direct {v3}, Ljava/io/ByteArrayOutputStream;.:()V // method@5b71 │ │ +439d74: 6e10 6e5d 0400 |0074: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getData:()[B // method@5d6e │ │ +439d7a: 0c00 |0077: move-result-object v0 │ │ +439d7c: 6e10 6f5d 0400 |0078: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ +439d82: 0a05 |007b: move-result v5 │ │ +439d84: 6e40 7a5b 0352 |007c: invoke-virtual {v3, v0, v2, v5}, Ljava/io/ByteArrayOutputStream;.write:([BII)V // method@5b7a │ │ +439d8a: 0730 |007f: move-object v0, v3 │ │ +439d8c: 2808 |0080: goto 0088 // +0008 │ │ +439d8e: 0d01 |0081: move-exception v1 │ │ +439d90: 0730 |0082: move-object v0, v3 │ │ +439d92: 2900 7900 |0083: goto/16 00fc // +0079 │ │ +439d96: 0730 |0085: move-object v0, v3 │ │ +439d98: 2900 7c00 |0086: goto/16 0102 // +007c │ │ +439d9c: 6e10 6f5d 0400 |0088: invoke-virtual {v4}, Ljava/net/DatagramPacket;.getLength:()I // method@5d6f │ │ +439da2: 0a02 |008b: move-result v2 │ │ +439da4: 3b02 1600 |008c: if-gez v2, 00a2 // +0016 │ │ +439da8: 5c61 4a60 |008e: iput-boolean v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@604a │ │ +439dac: 5461 4b60 |0090: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439db0: 1a02 1109 |0092: const-string v2, "A socket receive() error occurred." // string@0911 │ │ +439db4: 6e20 a7be 2100 |0094: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea7 │ │ +439dba: 5461 4b60 |0097: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439dbe: 6e10 9ebe 0100 |0099: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be9e │ │ +439dc4: 3800 0500 |009c: if-eqz v0, 00a1 // +0005 │ │ +439dc8: 6e10 735b 0000 |009e: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ +439dce: 0e00 |00a1: return-void │ │ +439dd0: 3902 0800 |00a2: if-nez v2, 00aa // +0008 │ │ +439dd4: 3800 0500 |00a4: if-eqz v0, 00a9 // +0005 │ │ +439dd8: 6e10 735b 0000 |00a6: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ +439dde: 0e00 |00a9: return-void │ │ +439de0: 5461 4b60 |00aa: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439de4: 5411 4c60 |00ac: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@604c │ │ +439de8: 8122 |00ae: int-to-long v2, v2 │ │ +439dea: 6e30 e460 2103 |00af: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e4 │ │ +439df0: 5461 4b60 |00b2: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439df4: 5411 5260 |00b4: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6052 │ │ +439df8: 7100 0b5d 0000 |00b6: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +439dfe: 0b02 |00b9: move-result-wide v2 │ │ +439e00: 6e30 e560 2103 |00ba: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +439e06: 3800 1900 |00bd: if-eqz v0, 00d6 // +0019 │ │ +439e0a: 5461 4b60 |00bf: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439e0e: 5411 5860 |00c1: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6058 │ │ +439e12: 6e10 e85c 0100 |00c3: invoke-virtual {v1}, Ljava/lang/StringBuffer;.length:()I // method@5ce8 │ │ +439e18: 0a01 |00c6: move-result v1 │ │ +439e1a: 1502 8000 |00c7: const/high16 v2, #int 8388608 // #80 │ │ +439e1e: 3521 0d00 |00c9: if-ge v1, v2, 00d6 // +000d │ │ +439e22: 5461 4b60 |00cb: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439e26: 5411 5860 |00cd: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_stringBuffer:Ljava/lang/StringBuffer; // field@6058 │ │ +439e2a: 6e10 775b 0000 |00cf: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.toString:()Ljava/lang/String; // method@5b77 │ │ +439e30: 0c02 |00d2: move-result-object v2 │ │ +439e32: 6e20 e05c 2100 |00d3: invoke-virtual {v1, v2}, Ljava/lang/StringBuffer;.append:(Ljava/lang/String;)Ljava/lang/StringBuffer; // method@5ce0 │ │ +439e38: 5461 4b60 |00d6: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439e3c: 5411 5460 |00d8: iget-object v1, v1, Lorg/purple/smoke/UdpNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6054 │ │ +439e40: 1d01 |00da: monitor-enter v1 │ │ +439e42: 5462 4b60 |00db: iget-object v2, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439e46: 5422 5460 |00dd: iget-object v2, v2, Lorg/purple/smoke/UdpNeighbor;.m_parsingSchedulerMutex:Ljava/lang/Object; // field@6054 │ │ +439e4a: 6e10 945c 0200 |00df: invoke-virtual {v2}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ +439e50: 1e01 |00e2: monitor-exit v1 │ │ +439e52: 3800 2200 |00e3: if-eqz v0, 0105 // +0022 │ │ +439e56: 6e10 735b 0000 |00e5: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ +439e5c: 281d |00e8: goto 0105 // +001d │ │ +439e5e: 0d02 |00e9: move-exception v2 │ │ +439e60: 1e01 |00ea: monitor-exit v1 │ │ +439e62: 2702 |00eb: throw v2 │ │ +439e64: 5c61 4a60 |00ec: iput-boolean v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.m_error:Z // field@604a │ │ +439e68: 5461 4b60 |00ee: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439e6c: 1a02 1109 |00f0: const-string v2, "A socket receive() error occurred." // string@0911 │ │ +439e70: 6e20 a7be 2100 |00f2: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea7 │ │ +439e76: 5461 4b60 |00f5: iget-object v1, v6, Lorg/purple/smoke/UdpNeighbor$1;.this$0:Lorg/purple/smoke/UdpNeighbor; // field@604b │ │ +439e7a: 6e10 9ebe 0100 |00f7: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be9e │ │ +439e80: 0e00 |00fa: return-void │ │ +439e82: 0d01 |00fb: move-exception v1 │ │ +439e84: 3800 0500 |00fc: if-eqz v0, 0101 // +0005 │ │ +439e88: 6e10 735b 0000 |00fe: invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;.close:()V // method@5b73 │ │ +439e8e: 2701 |0101: throw v1 │ │ +439e90: 3800 0300 |0102: if-eqz v0, 0105 // +0003 │ │ +439e94: 28e1 |0104: goto 00e5 // -001f │ │ +439e96: 0e00 |0105: return-void │ │ catches : 16 │ │ 0x0001 - 0x0018 │ │ Ljava/lang/Exception; -> 0x0102 │ │ -> 0x00fb │ │ 0x0018 - 0x0021 │ │ Ljava/lang/Exception; -> 0x0024 │ │ -> 0x0022 │ │ @@ -753432,17 +753431,17 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -43a50c: |[43a50c] org.purple.smoke.Windows.:()V │ │ -43a51c: 7010 8f5c 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ -43a522: 0e00 |0003: return-void │ │ +43a508: |[43a508] org.purple.smoke.Windows.:()V │ │ +43a518: 7010 8f5c 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@5c8f │ │ +43a51e: 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;) │ │ @@ -753450,52 +753449,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 │ │ -43a524: |[43a524] org.purple.smoke.Windows.showProgressDialog:(Landroid/content/Context;Landroid/app/Dialog;Ljava/lang/String;)V │ │ -43a534: 3802 4900 |0000: if-eqz v2, 0049 // +0049 │ │ -43a538: 2020 1700 |0002: instance-of v0, v2, Landroid/app/Activity; // type@0017 │ │ -43a53c: 3800 4500 |0004: if-eqz v0, 0049 // +0045 │ │ -43a540: 3803 4300 |0006: if-eqz v3, 0049 // +0043 │ │ -43a544: 3804 4100 |0008: if-eqz v4, 0049 // +0041 │ │ -43a548: 6e10 d35c 0400 |000a: invoke-virtual {v4}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -43a54e: 0c00 |000d: move-result-object v0 │ │ -43a550: 6e10 c35c 0000 |000e: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -43a556: 0a00 |0011: move-result v0 │ │ -43a558: 3800 0300 |0012: if-eqz v0, 0015 // +0003 │ │ -43a55c: 2835 |0014: goto 0049 // +0035 │ │ -43a55e: 0720 |0015: move-object v0, v2 │ │ -43a560: 1f00 1700 |0016: check-cast v0, Landroid/app/Activity; // type@0017 │ │ -43a564: 6e10 7900 0000 |0018: invoke-virtual {v0}, Landroid/app/Activity;.isFinishing:()Z // method@0079 │ │ -43a56a: 0a00 |001b: move-result v0 │ │ -43a56c: 3800 0300 |001c: if-eqz v0, 001f // +0003 │ │ -43a570: 0e00 |001e: return-void │ │ -43a572: 1a00 537d |001f: const-string v0, "layout_inflater" // string@7d53 │ │ -43a576: 6e20 7f01 0200 |0021: invoke-virtual {v2, v0}, Landroid/content/Context;.getSystemService:(Ljava/lang/String;)Ljava/lang/Object; // method@017f │ │ -43a57c: 0c02 |0024: move-result-object v2 │ │ -43a57e: 1f02 000a |0025: check-cast v2, Landroid/view/LayoutInflater; // type@0a00 │ │ -43a582: 1400 4500 0a7f |0027: const v0, #float 1.83435e+38 // #7f0a0045 │ │ -43a588: 1201 |002a: const/4 v1, #int 0 // #0 │ │ -43a58a: 6e30 5455 0201 |002b: invoke-virtual {v2, v0, v1}, Landroid/view/LayoutInflater;.inflate:(ILandroid/view/ViewGroup;)Landroid/view/View; // method@5554 │ │ -43a590: 0c02 |002e: move-result-object v2 │ │ -43a592: 1400 1f01 087f |002f: const v0, #float 1.80781e+38 // #7f08011f │ │ -43a598: 6e20 dd55 0200 |0032: invoke-virtual {v2, v0}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ -43a59e: 0c00 |0035: move-result-object v0 │ │ -43a5a0: 1f00 970a |0036: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -43a5a4: 6e20 495b 4000 |0038: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43a5aa: 1204 |003b: const/4 v4, #int 0 // #0 │ │ -43a5ac: 6e20 b400 4300 |003c: invoke-virtual {v3, v4}, Landroid/app/Dialog;.setCancelable:(Z)V // method@00b4 │ │ -43a5b2: 6e20 b500 2300 |003f: invoke-virtual {v3, v2}, Landroid/app/Dialog;.setContentView:(Landroid/view/View;)V // method@00b5 │ │ -43a5b8: 6e10 bb00 0300 |0042: invoke-virtual {v3}, Landroid/app/Dialog;.show:()V // method@00bb │ │ -43a5be: 2804 |0045: goto 0049 // +0004 │ │ -43a5c0: 6e10 ab00 0300 |0046: invoke-virtual {v3}, Landroid/app/Dialog;.dismiss:()V // method@00ab │ │ -43a5c6: 0e00 |0049: return-void │ │ +43a520: |[43a520] org.purple.smoke.Windows.showProgressDialog:(Landroid/content/Context;Landroid/app/Dialog;Ljava/lang/String;)V │ │ +43a530: 3802 4900 |0000: if-eqz v2, 0049 // +0049 │ │ +43a534: 2020 1700 |0002: instance-of v0, v2, Landroid/app/Activity; // type@0017 │ │ +43a538: 3800 4500 |0004: if-eqz v0, 0049 // +0045 │ │ +43a53c: 3803 4300 |0006: if-eqz v3, 0049 // +0043 │ │ +43a540: 3804 4100 |0008: if-eqz v4, 0049 // +0041 │ │ +43a544: 6e10 d35c 0400 |000a: invoke-virtual {v4}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +43a54a: 0c00 |000d: move-result-object v0 │ │ +43a54c: 6e10 c35c 0000 |000e: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +43a552: 0a00 |0011: move-result v0 │ │ +43a554: 3800 0300 |0012: if-eqz v0, 0015 // +0003 │ │ +43a558: 2835 |0014: goto 0049 // +0035 │ │ +43a55a: 0720 |0015: move-object v0, v2 │ │ +43a55c: 1f00 1700 |0016: check-cast v0, Landroid/app/Activity; // type@0017 │ │ +43a560: 6e10 7900 0000 |0018: invoke-virtual {v0}, Landroid/app/Activity;.isFinishing:()Z // method@0079 │ │ +43a566: 0a00 |001b: move-result v0 │ │ +43a568: 3800 0300 |001c: if-eqz v0, 001f // +0003 │ │ +43a56c: 0e00 |001e: return-void │ │ +43a56e: 1a00 537d |001f: const-string v0, "layout_inflater" // string@7d53 │ │ +43a572: 6e20 7f01 0200 |0021: invoke-virtual {v2, v0}, Landroid/content/Context;.getSystemService:(Ljava/lang/String;)Ljava/lang/Object; // method@017f │ │ +43a578: 0c02 |0024: move-result-object v2 │ │ +43a57a: 1f02 000a |0025: check-cast v2, Landroid/view/LayoutInflater; // type@0a00 │ │ +43a57e: 1400 4500 0a7f |0027: const v0, #float 1.83435e+38 // #7f0a0045 │ │ +43a584: 1201 |002a: const/4 v1, #int 0 // #0 │ │ +43a586: 6e30 5455 0201 |002b: invoke-virtual {v2, v0, v1}, Landroid/view/LayoutInflater;.inflate:(ILandroid/view/ViewGroup;)Landroid/view/View; // method@5554 │ │ +43a58c: 0c02 |002e: move-result-object v2 │ │ +43a58e: 1400 1f01 087f |002f: const v0, #float 1.80781e+38 // #7f08011f │ │ +43a594: 6e20 dd55 0200 |0032: invoke-virtual {v2, v0}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@55dd │ │ +43a59a: 0c00 |0035: move-result-object v0 │ │ +43a59c: 1f00 970a |0036: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +43a5a0: 6e20 495b 4000 |0038: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +43a5a6: 1204 |003b: const/4 v4, #int 0 // #0 │ │ +43a5a8: 6e20 b400 4300 |003c: invoke-virtual {v3, v4}, Landroid/app/Dialog;.setCancelable:(Z)V // method@00b4 │ │ +43a5ae: 6e20 b500 2300 |003f: invoke-virtual {v3, v2}, Landroid/app/Dialog;.setContentView:(Landroid/view/View;)V // method@00b5 │ │ +43a5b4: 6e10 bb00 0300 |0042: invoke-virtual {v3}, Landroid/app/Dialog;.show:()V // method@00bb │ │ +43a5ba: 2804 |0045: goto 0049 // +0004 │ │ +43a5bc: 6e10 ab00 0300 |0046: invoke-virtual {v3}, Landroid/app/Dialog;.dismiss:()V // method@00ab │ │ +43a5c2: 0e00 |0049: return-void │ │ catches : 2 │ │ 0x0015 - 0x0045 │ │ Ljava/lang/Exception; -> 0x0046 │ │ 0x0046 - 0x0049 │ │ Ljava/lang/Exception; -> 0x0049 │ │ positions : │ │ 0x0002 line=43 │ │ @@ -1189477,18 +1189476,18 @@ │ │ type : '(Lorg/purple/smoke/Steam;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -4322f8: |[4322f8] org.purple.smoke.Steam$5.:(Lorg/purple/smoke/Steam;)V │ │ -432308: 5b01 485f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ -43230c: 7010 564c 0000 |0002: invoke-direct {v0}, Landroid/support/v7/widget/RecyclerView$AdapterDataObserver;.:()V // method@4c56 │ │ -432312: 0e00 |0005: return-void │ │ +4322f4: |[4322f4] org.purple.smoke.Steam$5.:(Lorg/purple/smoke/Steam;)V │ │ +432304: 5b01 485f |0000: iput-object v1, v0, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ +432308: 7010 564c 0000 |0002: invoke-direct {v0}, Landroid/support/v7/widget/RecyclerView$AdapterDataObserver;.:()V // method@4c56 │ │ +43230e: 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; │ │ │ │ @@ -1189498,24 +1189497,24 @@ │ │ type : '(II)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 3 │ │ outs : 4 │ │ insns size : 17 16-bit code units │ │ -432314: |[432314] org.purple.smoke.Steam$5.onItemRangeInserted:(II)V │ │ -432324: 5424 485f |0000: iget-object v4, v2, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ -432328: 7110 b7bd 0400 |0002: invoke-static {v4}, Lorg/purple/smoke/Steam;.access$800:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // method@bdb7 │ │ -43232e: 0c04 |0005: move-result-object v4 │ │ -432330: 5420 485f |0006: iget-object v0, v2, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ -432334: 7110 b6bd 0000 |0008: invoke-static {v0}, Lorg/purple/smoke/Steam;.access$700:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView; // method@bdb6 │ │ -43233a: 0c00 |000b: move-result-object v0 │ │ -43233c: 1201 |000c: const/4 v1, #int 0 // #0 │ │ -43233e: 6e40 abbd 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@bdab │ │ -432344: 0e00 |0010: return-void │ │ +432310: |[432310] org.purple.smoke.Steam$5.onItemRangeInserted:(II)V │ │ +432320: 5424 485f |0000: iget-object v4, v2, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ +432324: 7110 b7bd 0400 |0002: invoke-static {v4}, Lorg/purple/smoke/Steam;.access$800:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // method@bdb7 │ │ +43232a: 0c04 |0005: move-result-object v4 │ │ +43232c: 5420 485f |0006: iget-object v0, v2, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ +432330: 7110 b6bd 0000 |0008: invoke-static {v0}, Lorg/purple/smoke/Steam;.access$700:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView; // method@bdb6 │ │ +432336: 0c00 |000b: move-result-object v0 │ │ +432338: 1201 |000c: const/4 v1, #int 0 // #0 │ │ +43233a: 6e40 abbd 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@bdab │ │ +432340: 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 │ │ @@ -1189526,25 +1189525,25 @@ │ │ type : '(II)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 3 │ │ outs : 4 │ │ insns size : 18 16-bit code units │ │ -432348: |[432348] org.purple.smoke.Steam$5.onItemRangeRemoved:(II)V │ │ -432358: 5420 485f |0000: iget-object v0, v2, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ -43235c: 7110 b7bd 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Steam;.access$800:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // method@bdb7 │ │ -432362: 0c00 |0005: move-result-object v0 │ │ -432364: 5421 485f |0006: iget-object v1, v2, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ -432368: 7110 b6bd 0100 |0008: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$700:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView; // method@bdb6 │ │ -43236e: 0c01 |000b: move-result-object v1 │ │ -432370: b143 |000c: sub-int/2addr v3, v4 │ │ -432372: 1204 |000d: const/4 v4, #int 0 // #0 │ │ -432374: 6e40 abbd 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@bdab │ │ -43237a: 0e00 |0011: return-void │ │ +432344: |[432344] org.purple.smoke.Steam$5.onItemRangeRemoved:(II)V │ │ +432354: 5420 485f |0000: iget-object v0, v2, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ +432358: 7110 b7bd 0000 |0002: invoke-static {v0}, Lorg/purple/smoke/Steam;.access$800:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // method@bdb7 │ │ +43235e: 0c00 |0005: move-result-object v0 │ │ +432360: 5421 485f |0006: iget-object v1, v2, Lorg/purple/smoke/Steam$5;.this$0:Lorg/purple/smoke/Steam; // field@5f48 │ │ +432364: 7110 b6bd 0100 |0008: invoke-static {v1}, Lorg/purple/smoke/Steam;.access$700:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView; // method@bdb6 │ │ +43236a: 0c01 |000b: move-result-object v1 │ │ +43236c: b143 |000c: sub-int/2addr v3, v4 │ │ +43236e: 1204 |000d: const/4 v4, #int 0 // #0 │ │ +432370: 6e40 abbd 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@bdab │ │ +432376: 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 │ │ @@ -1189589,26 +1189588,26 @@ │ │ type : '(Lorg/purple/smoke/SteamAdapter;Lorg/purple/smoke/SteamBubble;)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 2 │ │ insns size : 22 16-bit code units │ │ -432740: |[432740] org.purple.smoke.SteamAdapter$ViewHolder.:(Lorg/purple/smoke/SteamAdapter;Lorg/purple/smoke/SteamBubble;)V │ │ -432750: 5b01 6b5f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamAdapter$ViewHolder;.this$0:Lorg/purple/smoke/SteamAdapter; // field@5f6b │ │ -432754: 6e10 05be 0200 |0002: invoke-virtual {v2}, Lorg/purple/smoke/SteamBubble;.view:()Landroid/view/View; // method@be05 │ │ -43275a: 0c01 |0005: move-result-object v1 │ │ -43275c: 7020 f14d 1000 |0006: invoke-direct {v0, v1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;.:(Landroid/view/View;)V // method@4df1 │ │ -432762: 1201 |0009: const/4 v1, #int 0 // #0 │ │ -432764: 5b01 6a5f |000a: iput-object v1, v0, Lorg/purple/smoke/SteamAdapter$ViewHolder;.m_steamBubble:Lorg/purple/smoke/SteamBubble; // field@5f6a │ │ -432768: 6e10 05be 0200 |000c: invoke-virtual {v2}, Lorg/purple/smoke/SteamBubble;.view:()Landroid/view/View; // method@be05 │ │ -43276e: 0c01 |000f: move-result-object v1 │ │ -432770: 6e20 9056 0100 |0010: invoke-virtual {v1, v0}, Landroid/view/View;.setOnCreateContextMenuListener:(Landroid/view/View$OnCreateContextMenuListener;)V // method@5690 │ │ -432776: 5b02 6a5f |0013: iput-object v2, v0, Lorg/purple/smoke/SteamAdapter$ViewHolder;.m_steamBubble:Lorg/purple/smoke/SteamBubble; // field@5f6a │ │ -43277a: 0e00 |0015: return-void │ │ +43273c: |[43273c] org.purple.smoke.SteamAdapter$ViewHolder.:(Lorg/purple/smoke/SteamAdapter;Lorg/purple/smoke/SteamBubble;)V │ │ +43274c: 5b01 6b5f |0000: iput-object v1, v0, Lorg/purple/smoke/SteamAdapter$ViewHolder;.this$0:Lorg/purple/smoke/SteamAdapter; // field@5f6b │ │ +432750: 6e10 05be 0200 |0002: invoke-virtual {v2}, Lorg/purple/smoke/SteamBubble;.view:()Landroid/view/View; // method@be05 │ │ +432756: 0c01 |0005: move-result-object v1 │ │ +432758: 7020 f14d 1000 |0006: invoke-direct {v0, v1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;.:(Landroid/view/View;)V // method@4df1 │ │ +43275e: 1201 |0009: const/4 v1, #int 0 // #0 │ │ +432760: 5b01 6a5f |000a: iput-object v1, v0, Lorg/purple/smoke/SteamAdapter$ViewHolder;.m_steamBubble:Lorg/purple/smoke/SteamBubble; // field@5f6a │ │ +432764: 6e10 05be 0200 |000c: invoke-virtual {v2}, Lorg/purple/smoke/SteamBubble;.view:()Landroid/view/View; // method@be05 │ │ +43276a: 0c01 |000f: move-result-object v1 │ │ +43276c: 6e20 9056 0100 |0010: invoke-virtual {v1, v0}, Landroid/view/View;.setOnCreateContextMenuListener:(Landroid/view/View$OnCreateContextMenuListener;)V // method@5690 │ │ +432772: 5b02 6a5f |0013: iput-object v2, v0, Lorg/purple/smoke/SteamAdapter$ViewHolder;.m_steamBubble:Lorg/purple/smoke/SteamBubble; // field@5f6a │ │ +432776: 0e00 |0015: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=51 │ │ 0x0002 line=52 │ │ 0x000a line=48 │ │ 0x000c line=53 │ │ 0x0013 line=54 │ │ @@ -1189623,108 +1189622,108 @@ │ │ type : '(Landroid/view/ContextMenu;Landroid/view/View;Landroid/view/ContextMenu$ContextMenuInfo;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 10 │ │ ins : 4 │ │ outs : 5 │ │ insns size : 176 16-bit code units │ │ -43277c: |[43277c] org.purple.smoke.SteamAdapter$ViewHolder.onCreateContextMenu:(Landroid/view/ContextMenu;Landroid/view/View;Landroid/view/ContextMenu$ContextMenuInfo;)V │ │ -43278c: 3807 af00 |0000: if-eqz v7, 00af // +00af │ │ -432790: 3908 0400 |0002: if-nez v8, 0006 // +0004 │ │ -432794: 2900 ab00 |0004: goto/16 00af // +00ab │ │ -432798: 1209 |0006: const/4 v9, #int 0 // #0 │ │ -43279a: 12f0 |0007: const/4 v0, #int -1 // #ff │ │ -43279c: 1a01 2c17 |0008: const-string v1, "Delete All Steams" // string@172c │ │ -4327a0: 7251 0c55 9790 |000a: invoke-interface {v7, v9, v0, v9, v1}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -4327a6: 6e10 f455 0800 |000d: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ -4327ac: 0a01 |0010: move-result v1 │ │ -4327ae: 1212 |0011: const/4 v2, #int 1 // #1 │ │ -4327b0: 1a03 3117 |0012: const-string v3, "Delete Steam" // string@1731 │ │ -4327b4: 7253 0c55 2721 |0014: invoke-interface {v7, v2, v1, v2, v3}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -4327ba: 0c01 |0017: move-result-object v1 │ │ -4327bc: 6e10 f455 0800 |0018: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ -4327c2: 0a03 |001b: move-result v3 │ │ -4327c4: 3203 0400 |001c: if-eq v3, v0, 0020 // +0004 │ │ -4327c8: 1213 |001e: const/4 v3, #int 1 // #1 │ │ -4327ca: 2802 |001f: goto 0021 // +0002 │ │ -4327cc: 1203 |0020: const/4 v3, #int 0 // #0 │ │ -4327ce: 7220 7a55 3100 |0021: invoke-interface {v1, v3}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -4327d4: 1221 |0024: const/4 v1, #int 2 // #2 │ │ -4327d6: 1a03 ad44 |0025: const-string v3, "Pause All Steams" // string@44ad │ │ -4327da: 7253 0c55 1710 |0027: invoke-interface {v7, v1, v0, v1, v3}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -4327e0: 1231 |002a: const/4 v1, #int 3 // #3 │ │ -4327e2: 1a03 0747 |002b: const-string v3, "Resume All Steams" // string@4707 │ │ -4327e6: 7253 0c55 1710 |002d: invoke-interface {v7, v1, v0, v1, v3}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -4327ec: 1251 |0030: const/4 v1, #int 5 // #5 │ │ -4327ee: 1243 |0031: const/4 v3, #int 4 // #4 │ │ -4327f0: 1a04 0c47 |0032: const-string v4, "Rewind & Resume All Steams" // string@470c │ │ -4327f4: 7254 0c55 1730 |0034: invoke-interface {v7, v1, v0, v3, v4}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -4327fa: 1a04 0d47 |0037: const-string v4, "Rewind All Steams" // string@470d │ │ -4327fe: 7254 0c55 3710 |0039: invoke-interface {v7, v3, v0, v1, v4}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -432804: 5461 6b5f |003c: iget-object v1, v6, Lorg/purple/smoke/SteamAdapter$ViewHolder;.this$0:Lorg/purple/smoke/SteamAdapter; // field@5f6b │ │ -432808: 7110 e6bd 0100 |003e: invoke-static {v1}, Lorg/purple/smoke/SteamAdapter;.access$100:(Lorg/purple/smoke/SteamAdapter;)Lorg/purple/smoke/Database; // method@bde6 │ │ -43280e: 0c01 |0041: move-result-object v1 │ │ -432810: 7100 e5bd 0000 |0042: invoke-static {}, Lorg/purple/smoke/SteamAdapter;.access$000:()Lorg/purple/smoke/Cryptography; // method@bde5 │ │ -432816: 0c03 |0045: move-result-object v3 │ │ -432818: 6e10 f455 0800 |0046: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ -43281e: 0a04 |0049: move-result v4 │ │ -432820: b124 |004a: sub-int/2addr v4, v2 │ │ -432822: 6e40 20ba 3140 |004b: invoke-virtual {v1, v3, v0, v4}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba20 │ │ -432828: 0c01 |004e: move-result-object v1 │ │ -43282a: 6e10 f455 0800 |004f: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ -432830: 0a03 |0052: move-result v3 │ │ -432832: 1264 |0053: const/4 v4, #int 6 // #6 │ │ -432834: 1a05 0e47 |0054: const-string v5, "Rewind Steam" // string@470e │ │ -432838: 7255 0c55 4743 |0056: invoke-interface {v7, v4, v3, v4, v5}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -43283e: 0c03 |0059: move-result-object v3 │ │ -432840: 3901 0400 |005a: if-nez v1, 005e // +0004 │ │ -432844: 1204 |005c: const/4 v4, #int 0 // #0 │ │ -432846: 2806 |005d: goto 0063 // +0006 │ │ -432848: 5814 975f |005e: iget-short v4, v1, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f97 │ │ -43284c: 3324 fcff |0060: if-ne v4, v2, 005c // -0004 │ │ -432850: 1214 |0062: const/4 v4, #int 1 // #1 │ │ -432852: 7220 7a55 4300 |0063: invoke-interface {v3, v4}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -432858: 6e10 f455 0800 |0066: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ -43285e: 0a04 |0069: move-result v4 │ │ -432860: 3304 0500 |006a: if-ne v4, v0, 006f // +0005 │ │ -432864: 7220 7a55 9300 |006c: invoke-interface {v3, v9}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -43286a: 6e10 f455 0800 |006f: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ -432870: 0a03 |0072: move-result v3 │ │ -432872: 1274 |0073: const/4 v4, #int 7 // #7 │ │ -432874: 1a05 874c |0074: const-string v5, "Steamroll Steam" // string@4c87 │ │ -432878: 7255 0c55 4743 |0076: invoke-interface {v7, v4, v3, v4, v5}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -43287e: 0c03 |0079: move-result-object v3 │ │ -432880: 3901 0400 |007a: if-nez v1, 007e // +0004 │ │ -432884: 1204 |007c: const/4 v4, #int 0 // #0 │ │ -432886: 2806 |007d: goto 0083 // +0006 │ │ -432888: 5814 975f |007e: iget-short v4, v1, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f97 │ │ -43288c: 3904 fcff |0080: if-nez v4, 007c // -0004 │ │ -432890: 1214 |0082: const/4 v4, #int 1 // #1 │ │ -432892: 7220 7a55 4300 |0083: invoke-interface {v3, v4}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -432898: 6e10 f455 0800 |0086: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ -43289e: 0a04 |0089: move-result v4 │ │ -4328a0: 3304 0500 |008a: if-ne v4, v0, 008f // +0005 │ │ -4328a4: 7220 7a55 9300 |008c: invoke-interface {v3, v9}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -4328aa: 6e10 f455 0800 |008f: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ -4328b0: 0a03 |0092: move-result v3 │ │ -4328b2: 1304 0800 |0093: const/16 v4, #int 8 // #8 │ │ -4328b6: 1a05 7d4f |0095: const-string v5, "Toggle Lock Status" // string@4f7d │ │ -4328ba: 7255 0c55 4743 |0097: invoke-interface {v7, v4, v3, v4, v5}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -4328c0: 0c07 |009a: move-result-object v7 │ │ -4328c2: 3901 0400 |009b: if-nez v1, 009f // +0004 │ │ -4328c6: 1202 |009d: const/4 v2, #int 0 // #0 │ │ -4328c8: 2805 |009e: goto 00a3 // +0005 │ │ -4328ca: 5811 975f |009f: iget-short v1, v1, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f97 │ │ -4328ce: 3901 fcff |00a1: if-nez v1, 009d // -0004 │ │ -4328d2: 7220 7a55 2700 |00a3: invoke-interface {v7, v2}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -4328d8: 6e10 f455 0800 |00a6: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ -4328de: 0a08 |00a9: move-result v8 │ │ -4328e0: 3308 0500 |00aa: if-ne v8, v0, 00af // +0005 │ │ -4328e4: 7220 7a55 9700 |00ac: invoke-interface {v7, v9}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -4328ea: 0e00 |00af: return-void │ │ +432778: |[432778] org.purple.smoke.SteamAdapter$ViewHolder.onCreateContextMenu:(Landroid/view/ContextMenu;Landroid/view/View;Landroid/view/ContextMenu$ContextMenuInfo;)V │ │ +432788: 3807 af00 |0000: if-eqz v7, 00af // +00af │ │ +43278c: 3908 0400 |0002: if-nez v8, 0006 // +0004 │ │ +432790: 2900 ab00 |0004: goto/16 00af // +00ab │ │ +432794: 1209 |0006: const/4 v9, #int 0 // #0 │ │ +432796: 12f0 |0007: const/4 v0, #int -1 // #ff │ │ +432798: 1a01 2c17 |0008: const-string v1, "Delete All Steams" // string@172c │ │ +43279c: 7251 0c55 9790 |000a: invoke-interface {v7, v9, v0, v9, v1}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +4327a2: 6e10 f455 0800 |000d: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ +4327a8: 0a01 |0010: move-result v1 │ │ +4327aa: 1212 |0011: const/4 v2, #int 1 // #1 │ │ +4327ac: 1a03 3117 |0012: const-string v3, "Delete Steam" // string@1731 │ │ +4327b0: 7253 0c55 2721 |0014: invoke-interface {v7, v2, v1, v2, v3}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +4327b6: 0c01 |0017: move-result-object v1 │ │ +4327b8: 6e10 f455 0800 |0018: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ +4327be: 0a03 |001b: move-result v3 │ │ +4327c0: 3203 0400 |001c: if-eq v3, v0, 0020 // +0004 │ │ +4327c4: 1213 |001e: const/4 v3, #int 1 // #1 │ │ +4327c6: 2802 |001f: goto 0021 // +0002 │ │ +4327c8: 1203 |0020: const/4 v3, #int 0 // #0 │ │ +4327ca: 7220 7a55 3100 |0021: invoke-interface {v1, v3}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +4327d0: 1221 |0024: const/4 v1, #int 2 // #2 │ │ +4327d2: 1a03 ad44 |0025: const-string v3, "Pause All Steams" // string@44ad │ │ +4327d6: 7253 0c55 1710 |0027: invoke-interface {v7, v1, v0, v1, v3}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +4327dc: 1231 |002a: const/4 v1, #int 3 // #3 │ │ +4327de: 1a03 0747 |002b: const-string v3, "Resume All Steams" // string@4707 │ │ +4327e2: 7253 0c55 1710 |002d: invoke-interface {v7, v1, v0, v1, v3}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +4327e8: 1251 |0030: const/4 v1, #int 5 // #5 │ │ +4327ea: 1243 |0031: const/4 v3, #int 4 // #4 │ │ +4327ec: 1a04 0c47 |0032: const-string v4, "Rewind & Resume All Steams" // string@470c │ │ +4327f0: 7254 0c55 1730 |0034: invoke-interface {v7, v1, v0, v3, v4}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +4327f6: 1a04 0d47 |0037: const-string v4, "Rewind All Steams" // string@470d │ │ +4327fa: 7254 0c55 3710 |0039: invoke-interface {v7, v3, v0, v1, v4}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +432800: 5461 6b5f |003c: iget-object v1, v6, Lorg/purple/smoke/SteamAdapter$ViewHolder;.this$0:Lorg/purple/smoke/SteamAdapter; // field@5f6b │ │ +432804: 7110 e6bd 0100 |003e: invoke-static {v1}, Lorg/purple/smoke/SteamAdapter;.access$100:(Lorg/purple/smoke/SteamAdapter;)Lorg/purple/smoke/Database; // method@bde6 │ │ +43280a: 0c01 |0041: move-result-object v1 │ │ +43280c: 7100 e5bd 0000 |0042: invoke-static {}, Lorg/purple/smoke/SteamAdapter;.access$000:()Lorg/purple/smoke/Cryptography; // method@bde5 │ │ +432812: 0c03 |0045: move-result-object v3 │ │ +432814: 6e10 f455 0800 |0046: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ +43281a: 0a04 |0049: move-result v4 │ │ +43281c: b124 |004a: sub-int/2addr v4, v2 │ │ +43281e: 6e40 20ba 3140 |004b: invoke-virtual {v1, v3, v0, v4}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba20 │ │ +432824: 0c01 |004e: move-result-object v1 │ │ +432826: 6e10 f455 0800 |004f: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ +43282c: 0a03 |0052: move-result v3 │ │ +43282e: 1264 |0053: const/4 v4, #int 6 // #6 │ │ +432830: 1a05 0e47 |0054: const-string v5, "Rewind Steam" // string@470e │ │ +432834: 7255 0c55 4743 |0056: invoke-interface {v7, v4, v3, v4, v5}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +43283a: 0c03 |0059: move-result-object v3 │ │ +43283c: 3901 0400 |005a: if-nez v1, 005e // +0004 │ │ +432840: 1204 |005c: const/4 v4, #int 0 // #0 │ │ +432842: 2806 |005d: goto 0063 // +0006 │ │ +432844: 5814 975f |005e: iget-short v4, v1, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f97 │ │ +432848: 3324 fcff |0060: if-ne v4, v2, 005c // -0004 │ │ +43284c: 1214 |0062: const/4 v4, #int 1 // #1 │ │ +43284e: 7220 7a55 4300 |0063: invoke-interface {v3, v4}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +432854: 6e10 f455 0800 |0066: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ +43285a: 0a04 |0069: move-result v4 │ │ +43285c: 3304 0500 |006a: if-ne v4, v0, 006f // +0005 │ │ +432860: 7220 7a55 9300 |006c: invoke-interface {v3, v9}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +432866: 6e10 f455 0800 |006f: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ +43286c: 0a03 |0072: move-result v3 │ │ +43286e: 1274 |0073: const/4 v4, #int 7 // #7 │ │ +432870: 1a05 874c |0074: const-string v5, "Steamroll Steam" // string@4c87 │ │ +432874: 7255 0c55 4743 |0076: invoke-interface {v7, v4, v3, v4, v5}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +43287a: 0c03 |0079: move-result-object v3 │ │ +43287c: 3901 0400 |007a: if-nez v1, 007e // +0004 │ │ +432880: 1204 |007c: const/4 v4, #int 0 // #0 │ │ +432882: 2806 |007d: goto 0083 // +0006 │ │ +432884: 5814 975f |007e: iget-short v4, v1, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f97 │ │ +432888: 3904 fcff |0080: if-nez v4, 007c // -0004 │ │ +43288c: 1214 |0082: const/4 v4, #int 1 // #1 │ │ +43288e: 7220 7a55 4300 |0083: invoke-interface {v3, v4}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +432894: 6e10 f455 0800 |0086: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ +43289a: 0a04 |0089: move-result v4 │ │ +43289c: 3304 0500 |008a: if-ne v4, v0, 008f // +0005 │ │ +4328a0: 7220 7a55 9300 |008c: invoke-interface {v3, v9}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +4328a6: 6e10 f455 0800 |008f: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ +4328ac: 0a03 |0092: move-result v3 │ │ +4328ae: 1304 0800 |0093: const/16 v4, #int 8 // #8 │ │ +4328b2: 1a05 7d4f |0095: const-string v5, "Toggle Lock Status" // string@4f7d │ │ +4328b6: 7255 0c55 4743 |0097: invoke-interface {v7, v4, v3, v4, v5}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +4328bc: 0c07 |009a: move-result-object v7 │ │ +4328be: 3901 0400 |009b: if-nez v1, 009f // +0004 │ │ +4328c2: 1202 |009d: const/4 v2, #int 0 // #0 │ │ +4328c4: 2805 |009e: goto 00a3 // +0005 │ │ +4328c6: 5811 975f |009f: iget-short v1, v1, Lorg/purple/smoke/SteamElement;.m_direction:S // field@5f97 │ │ +4328ca: 3901 fcff |00a1: if-nez v1, 009d // -0004 │ │ +4328ce: 7220 7a55 2700 |00a3: invoke-interface {v7, v2}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +4328d4: 6e10 f455 0800 |00a6: invoke-virtual {v8}, Landroid/view/View;.getId:()I // method@55f4 │ │ +4328da: 0a08 |00a9: move-result v8 │ │ +4328dc: 3308 0500 |00aa: if-ne v8, v0, 00af // +0005 │ │ +4328e0: 7220 7a55 9700 |00ac: invoke-interface {v7, v9}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +4328e6: 0e00 |00af: return-void │ │ catches : (none) │ │ positions : │ │ 0x000a line=71 │ │ 0x000d line=76 │ │ 0x0014 line=75 │ │ 0x0018 line=78 │ │ 0x0027 line=79 │ │ @@ -1189762,22 +1189761,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 │ │ -4328ec: |[4328ec] org.purple.smoke.SteamAdapter$ViewHolder.setData:(Lorg/purple/smoke/SteamElement;II)V │ │ -4328fc: 5410 6a5f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamAdapter$ViewHolder;.m_steamBubble:Lorg/purple/smoke/SteamBubble; // field@5f6a │ │ -432900: 3900 0300 |0002: if-nez v0, 0005 // +0003 │ │ -432904: 0e00 |0004: return-void │ │ -432906: 3902 0300 |0005: if-nez v2, 0008 // +0003 │ │ -43290a: 0e00 |0007: return-void │ │ -43290c: 6e40 04be 2043 |0008: invoke-virtual {v0, v2, v3, v4}, Lorg/purple/smoke/SteamBubble;.setData:(Lorg/purple/smoke/SteamElement;II)V // method@be04 │ │ -432912: 0e00 |000b: return-void │ │ +4328e8: |[4328e8] org.purple.smoke.SteamAdapter$ViewHolder.setData:(Lorg/purple/smoke/SteamElement;II)V │ │ +4328f8: 5410 6a5f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamAdapter$ViewHolder;.m_steamBubble:Lorg/purple/smoke/SteamBubble; // field@5f6a │ │ +4328fc: 3900 0300 |0002: if-nez v0, 0005 // +0003 │ │ +432900: 0e00 |0004: return-void │ │ +432902: 3902 0300 |0005: if-nez v2, 0008 // +0003 │ │ +432906: 0e00 |0007: return-void │ │ +432908: 6e40 04be 2043 |0008: invoke-virtual {v0, v2, v3, v4}, Lorg/purple/smoke/SteamBubble;.setData:(Lorg/purple/smoke/SteamElement;II)V // method@be04 │ │ +43290e: 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; │ │ @@ -1189826,45 +1189825,45 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 7 16-bit code units │ │ -4329b4: |[4329b4] org.purple.smoke.SteamAdapter.:()V │ │ -4329c4: 7100 91b9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ -4329ca: 0c00 |0003: move-result-object v0 │ │ -4329cc: 6900 6e5f |0004: sput-object v0, Lorg/purple/smoke/SteamAdapter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f6e │ │ -4329d0: 0e00 |0006: return-void │ │ +4329b0: |[4329b0] org.purple.smoke.SteamAdapter.:()V │ │ +4329c0: 7100 91b9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ +4329c6: 0c00 |0003: move-result-object v0 │ │ +4329c8: 6900 6e5f |0004: sput-object v0, Lorg/purple/smoke/SteamAdapter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f6e │ │ +4329cc: 0e00 |0006: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=43 │ │ locals : │ │ │ │ #1 : (in Lorg/purple/smoke/SteamAdapter;) │ │ name : '' │ │ type : '(Lorg/purple/smoke/Steam;)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 21 16-bit code units │ │ -4329d4: |[4329d4] org.purple.smoke.SteamAdapter.:(Lorg/purple/smoke/Steam;)V │ │ -4329e4: 7010 2e4c 0100 |0000: invoke-direct {v1}, Landroid/support/v7/widget/RecyclerView$Adapter;.:()V // method@4c2e │ │ -4329ea: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -4329ec: 5b10 6c5f |0004: iput-object v0, v1, Lorg/purple/smoke/SteamAdapter;.m_database:Lorg/purple/smoke/Database; // field@5f6c │ │ -4329f0: 5b10 6d5f |0006: iput-object v0, v1, Lorg/purple/smoke/SteamAdapter;.m_steam:Lorg/purple/smoke/Steam; // field@5f6d │ │ -4329f4: 6e10 bbbd 0200 |0008: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.getApplicationContext:()Landroid/content/Context; // method@bdbb │ │ -4329fa: 0c00 |000b: move-result-object v0 │ │ -4329fc: 7110 f4b9 0000 |000c: invoke-static {v0}, Lorg/purple/smoke/Database;.getInstance:(Landroid/content/Context;)Lorg/purple/smoke/Database; // method@b9f4 │ │ -432a02: 0c00 |000f: move-result-object v0 │ │ -432a04: 5b10 6c5f |0010: iput-object v0, v1, Lorg/purple/smoke/SteamAdapter;.m_database:Lorg/purple/smoke/Database; // field@5f6c │ │ -432a08: 5b12 6d5f |0012: iput-object v2, v1, Lorg/purple/smoke/SteamAdapter;.m_steam:Lorg/purple/smoke/Steam; // field@5f6d │ │ -432a0c: 0e00 |0014: return-void │ │ +4329d0: |[4329d0] org.purple.smoke.SteamAdapter.:(Lorg/purple/smoke/Steam;)V │ │ +4329e0: 7010 2e4c 0100 |0000: invoke-direct {v1}, Landroid/support/v7/widget/RecyclerView$Adapter;.:()V // method@4c2e │ │ +4329e6: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +4329e8: 5b10 6c5f |0004: iput-object v0, v1, Lorg/purple/smoke/SteamAdapter;.m_database:Lorg/purple/smoke/Database; // field@5f6c │ │ +4329ec: 5b10 6d5f |0006: iput-object v0, v1, Lorg/purple/smoke/SteamAdapter;.m_steam:Lorg/purple/smoke/Steam; // field@5f6d │ │ +4329f0: 6e10 bbbd 0200 |0008: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.getApplicationContext:()Landroid/content/Context; // method@bdbb │ │ +4329f6: 0c00 |000b: move-result-object v0 │ │ +4329f8: 7110 f4b9 0000 |000c: invoke-static {v0}, Lorg/purple/smoke/Database;.getInstance:(Landroid/content/Context;)Lorg/purple/smoke/Database; // method@b9f4 │ │ +4329fe: 0c00 |000f: move-result-object v0 │ │ +432a00: 5b10 6c5f |0010: iput-object v0, v1, Lorg/purple/smoke/SteamAdapter;.m_database:Lorg/purple/smoke/Database; // field@5f6c │ │ +432a04: 5b12 6d5f |0012: iput-object v2, v1, Lorg/purple/smoke/SteamAdapter;.m_steam:Lorg/purple/smoke/Steam; // field@5f6d │ │ +432a08: 0e00 |0014: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=145 │ │ 0x0004 line=40 │ │ 0x0006 line=41 │ │ 0x0008 line=146 │ │ 0x0012 line=147 │ │ @@ -1189877,34 +1189876,34 @@ │ │ type : '()Lorg/purple/smoke/Cryptography;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -432950: |[432950] org.purple.smoke.SteamAdapter.access$000:()Lorg/purple/smoke/Cryptography; │ │ -432960: 6200 6e5f |0000: sget-object v0, Lorg/purple/smoke/SteamAdapter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f6e │ │ -432964: 1100 |0002: return-object v0 │ │ +43294c: |[43294c] org.purple.smoke.SteamAdapter.access$000:()Lorg/purple/smoke/Cryptography; │ │ +43295c: 6200 6e5f |0000: sget-object v0, Lorg/purple/smoke/SteamAdapter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f6e │ │ +432960: 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/SteamAdapter;)Lorg/purple/smoke/Database;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -432968: |[432968] org.purple.smoke.SteamAdapter.access$100:(Lorg/purple/smoke/SteamAdapter;)Lorg/purple/smoke/Database; │ │ -432978: 5400 6c5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamAdapter;.m_database:Lorg/purple/smoke/Database; // field@5f6c │ │ -43297c: 1100 |0002: return-object v0 │ │ +432964: |[432964] org.purple.smoke.SteamAdapter.access$100:(Lorg/purple/smoke/SteamAdapter;)Lorg/purple/smoke/Database; │ │ +432974: 5400 6c5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamAdapter;.m_database:Lorg/purple/smoke/Database; // field@5f6c │ │ +432978: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=38 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/SteamAdapter; │ │ │ │ Virtual methods - │ │ @@ -1189913,20 +1189912,20 @@ │ │ type : '()I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 8 16-bit code units │ │ -432930: |[432930] org.purple.smoke.SteamAdapter.getItemCount:()I │ │ -432940: 5420 6c5f |0000: iget-object v0, v2, Lorg/purple/smoke/SteamAdapter;.m_database:Lorg/purple/smoke/Database; // field@5f6c │ │ -432944: 6e10 e9b9 0000 |0002: invoke-virtual {v0}, Lorg/purple/smoke/Database;.countOfSteams:()J // method@b9e9 │ │ -43294a: 0b00 |0005: move-result-wide v0 │ │ -43294c: 8401 |0006: long-to-int v1, v0 │ │ -43294e: 0f01 |0007: return v1 │ │ +43292c: |[43292c] org.purple.smoke.SteamAdapter.getItemCount:()I │ │ +43293c: 5420 6c5f |0000: iget-object v0, v2, Lorg/purple/smoke/SteamAdapter;.m_database:Lorg/purple/smoke/Database; // field@5f6c │ │ +432940: 6e10 e9b9 0000 |0002: invoke-virtual {v0}, Lorg/purple/smoke/Database;.countOfSteams:()J // method@b9e9 │ │ +432946: 0b00 |0005: move-result-wide v0 │ │ +432948: 8401 |0006: long-to-int v1, v0 │ │ +43294a: 0f01 |0007: return v1 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=161 │ │ locals : │ │ 0x0000 - 0x0008 reg=2 this Lorg/purple/smoke/SteamAdapter; │ │ │ │ #1 : (in Lorg/purple/smoke/SteamAdapter;) │ │ @@ -1189934,18 +1189933,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 │ │ -432a10: |[432a10] org.purple.smoke.SteamAdapter.onBindViewHolder:(Landroid/support/v7/widget/RecyclerView$ViewHolder;I)V │ │ -432a20: 1f01 211b |0000: check-cast v1, Lorg/purple/smoke/SteamAdapter$ViewHolder; // type@1b21 │ │ -432a24: 6e30 e9bd 1002 |0002: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/SteamAdapter;.onBindViewHolder:(Lorg/purple/smoke/SteamAdapter$ViewHolder;I)V // method@bde9 │ │ -432a2a: 0e00 |0005: return-void │ │ +432a0c: |[432a0c] org.purple.smoke.SteamAdapter.onBindViewHolder:(Landroid/support/v7/widget/RecyclerView$ViewHolder;I)V │ │ +432a1c: 1f01 211b |0000: check-cast v1, Lorg/purple/smoke/SteamAdapter$ViewHolder; // type@1b21 │ │ +432a20: 6e30 e9bd 1002 |0002: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/SteamAdapter;.onBindViewHolder:(Lorg/purple/smoke/SteamAdapter$ViewHolder;I)V // method@bde9 │ │ +432a26: 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 │ │ @@ -1189955,28 +1189954,28 @@ │ │ type : '(Lorg/purple/smoke/SteamAdapter$ViewHolder;I)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 3 │ │ outs : 4 │ │ insns size : 24 16-bit code units │ │ -432a2c: |[432a2c] org.purple.smoke.SteamAdapter.onBindViewHolder:(Lorg/purple/smoke/SteamAdapter$ViewHolder;I)V │ │ -432a3c: 3805 1700 |0000: if-eqz v5, 0017 // +0017 │ │ -432a40: 5440 6c5f |0002: iget-object v0, v4, Lorg/purple/smoke/SteamAdapter;.m_database:Lorg/purple/smoke/Database; // field@5f6c │ │ -432a44: 6201 6e5f |0004: sget-object v1, Lorg/purple/smoke/SteamAdapter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f6e │ │ -432a48: 1202 |0006: const/4 v2, #int 0 // #0 │ │ -432a4a: 7120 7e5c 6200 |0007: invoke-static {v2, v6}, Ljava/lang/Math;.max:(II)I // method@5c7e │ │ -432a50: 0a02 |000a: move-result v2 │ │ -432a52: 12f3 |000b: const/4 v3, #int -1 // #ff │ │ -432a54: 6e40 20ba 1032 |000c: invoke-virtual {v0, v1, v2, v3}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba20 │ │ -432a5a: 0c00 |000f: move-result-object v0 │ │ -432a5c: 6e10 e7bd 0400 |0010: invoke-virtual {v4}, Lorg/purple/smoke/SteamAdapter;.getItemCount:()I // method@bde7 │ │ -432a62: 0a01 |0013: move-result v1 │ │ -432a64: 6e40 e2bd 0561 |0014: invoke-virtual {v5, v0, v1, v6}, Lorg/purple/smoke/SteamAdapter$ViewHolder;.setData:(Lorg/purple/smoke/SteamElement;II)V // method@bde2 │ │ -432a6a: 0e00 |0017: return-void │ │ +432a28: |[432a28] org.purple.smoke.SteamAdapter.onBindViewHolder:(Lorg/purple/smoke/SteamAdapter$ViewHolder;I)V │ │ +432a38: 3805 1700 |0000: if-eqz v5, 0017 // +0017 │ │ +432a3c: 5440 6c5f |0002: iget-object v0, v4, Lorg/purple/smoke/SteamAdapter;.m_database:Lorg/purple/smoke/Database; // field@5f6c │ │ +432a40: 6201 6e5f |0004: sget-object v1, Lorg/purple/smoke/SteamAdapter;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f6e │ │ +432a44: 1202 |0006: const/4 v2, #int 0 // #0 │ │ +432a46: 7120 7e5c 6200 |0007: invoke-static {v2, v6}, Ljava/lang/Math;.max:(II)I // method@5c7e │ │ +432a4c: 0a02 |000a: move-result v2 │ │ +432a4e: 12f3 |000b: const/4 v3, #int -1 // #ff │ │ +432a50: 6e40 20ba 1032 |000c: invoke-virtual {v0, v1, v2, v3}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba20 │ │ +432a56: 0c00 |000f: move-result-object v0 │ │ +432a58: 6e10 e7bd 0400 |0010: invoke-virtual {v4}, Lorg/purple/smoke/SteamAdapter;.getItemCount:()I // method@bde7 │ │ +432a5e: 0a01 |0013: move-result v1 │ │ +432a60: 6e40 e2bd 0561 |0014: invoke-virtual {v5, v0, v1, v6}, Lorg/purple/smoke/SteamAdapter$ViewHolder;.setData:(Lorg/purple/smoke/SteamElement;II)V // method@bde2 │ │ +432a66: 0e00 |0017: return-void │ │ catches : (none) │ │ positions : │ │ 0x0002 line=169 │ │ 0x0007 line=170 │ │ 0x0010 line=172 │ │ locals : │ │ 0x0000 - 0x0018 reg=4 this Lorg/purple/smoke/SteamAdapter; │ │ @@ -1189988,18 +1189987,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 │ │ -432914: |[432914] org.purple.smoke.SteamAdapter.onCreateViewHolder:(Landroid/view/ViewGroup;I)Landroid/support/v7/widget/RecyclerView$ViewHolder; │ │ -432924: 6e30 ebbd 1002 |0000: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/SteamAdapter;.onCreateViewHolder:(Landroid/view/ViewGroup;I)Lorg/purple/smoke/SteamAdapter$ViewHolder; // method@bdeb │ │ -43292a: 0c01 |0003: move-result-object v1 │ │ -43292c: 1101 |0004: return-object v1 │ │ +432910: |[432910] org.purple.smoke.SteamAdapter.onCreateViewHolder:(Landroid/view/ViewGroup;I)Landroid/support/v7/widget/RecyclerView$ViewHolder; │ │ +432920: 6e30 ebbd 1002 |0000: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/SteamAdapter;.onCreateViewHolder:(Landroid/view/ViewGroup;I)Lorg/purple/smoke/SteamAdapter$ViewHolder; // method@bdeb │ │ +432926: 0c01 |0003: move-result-object v1 │ │ +432928: 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 │ │ @@ -1190009,23 +1190008,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 │ │ -432980: |[432980] org.purple.smoke.SteamAdapter.onCreateViewHolder:(Landroid/view/ViewGroup;I)Lorg/purple/smoke/SteamAdapter$ViewHolder; │ │ -432990: 2205 211b |0000: new-instance v5, Lorg/purple/smoke/SteamAdapter$ViewHolder; // type@1b21 │ │ -432994: 2200 271b |0002: new-instance v0, Lorg/purple/smoke/SteamBubble; // type@1b27 │ │ -432998: 6e10 e556 0400 |0004: invoke-virtual {v4}, Landroid/view/ViewGroup;.getContext:()Landroid/content/Context; // method@56e5 │ │ -43299e: 0c01 |0007: move-result-object v1 │ │ -4329a0: 5432 6d5f |0008: iget-object v2, v3, Lorg/purple/smoke/SteamAdapter;.m_steam:Lorg/purple/smoke/Steam; // field@5f6d │ │ -4329a4: 7040 f7bd 1042 |000a: invoke-direct {v0, v1, v2, v4}, Lorg/purple/smoke/SteamBubble;.:(Landroid/content/Context;Lorg/purple/smoke/Steam;Landroid/view/ViewGroup;)V // method@bdf7 │ │ -4329aa: 7030 e0bd 3500 |000d: invoke-direct {v5, v3, v0}, Lorg/purple/smoke/SteamAdapter$ViewHolder;.:(Lorg/purple/smoke/SteamAdapter;Lorg/purple/smoke/SteamBubble;)V // method@bde0 │ │ -4329b0: 1105 |0010: return-object v5 │ │ +43297c: |[43297c] org.purple.smoke.SteamAdapter.onCreateViewHolder:(Landroid/view/ViewGroup;I)Lorg/purple/smoke/SteamAdapter$ViewHolder; │ │ +43298c: 2205 211b |0000: new-instance v5, Lorg/purple/smoke/SteamAdapter$ViewHolder; // type@1b21 │ │ +432990: 2200 271b |0002: new-instance v0, Lorg/purple/smoke/SteamBubble; // type@1b27 │ │ +432994: 6e10 e556 0400 |0004: invoke-virtual {v4}, Landroid/view/ViewGroup;.getContext:()Landroid/content/Context; // method@56e5 │ │ +43299a: 0c01 |0007: move-result-object v1 │ │ +43299c: 5432 6d5f |0008: iget-object v2, v3, Lorg/purple/smoke/SteamAdapter;.m_steam:Lorg/purple/smoke/Steam; // field@5f6d │ │ +4329a0: 7040 f7bd 1042 |000a: invoke-direct {v0, v1, v2, v4}, Lorg/purple/smoke/SteamBubble;.:(Landroid/content/Context;Lorg/purple/smoke/Steam;Landroid/view/ViewGroup;)V // method@bdf7 │ │ +4329a6: 7030 e0bd 3500 |000d: invoke-direct {v5, v3, v0}, Lorg/purple/smoke/SteamAdapter$ViewHolder;.:(Lorg/purple/smoke/SteamAdapter;Lorg/purple/smoke/SteamBubble;)V // method@bde0 │ │ +4329ac: 1105 |0010: return-object v5 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=154 │ │ 0x0004 line=155 │ │ locals : │ │ 0x0000 - 0x0011 reg=3 this Lorg/purple/smoke/SteamAdapter; │ │ 0x0000 - 0x0011 reg=4 (null) Landroid/view/ViewGroup; │ │ @@ -1190111,61 +1190110,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 │ │ -435210: |[435210] org.purple.smoke.SteamReaderFull.:(Ljava/lang/String;Ljava/lang/String;[BIJJ)V │ │ -435220: 705a 1abe 4296 |0000: invoke-direct {v2, v4, v6, v9, v10}, Lorg/purple/smoke/SteamReader;.:(Ljava/lang/String;IJ)V // method@be1a │ │ -435226: 1204 |0003: const/4 v4, #int 0 // #0 │ │ -435228: 5b24 d55f |0004: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd5 │ │ -43522c: 5b24 da5f |0006: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_stalled:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fda │ │ -435230: 5b24 cf5f |0008: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fcf │ │ -435234: 5b24 d15f |000a: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd1 │ │ -435238: 5b24 d35f |000c: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ -43523c: 5b24 d75f |000e: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd7 │ │ -435240: 1a06 0000 |0010: const-string v6, "" // string@0000 │ │ -435244: 5b26 d95f |0012: iput-object v6, v2, Lorg/purple/smoke/SteamReaderFull;.m_sipHashId:Ljava/lang/String; // field@5fd9 │ │ -435248: 5b24 cc5f |0014: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_fileIdentity:[B // field@5fcc │ │ -43524c: 2204 e60a |0016: new-instance v4, Ljava/lang/Object; // type@0ae6 │ │ -435250: 7010 8f5c 0400 |0018: invoke-direct {v4}, Ljava/lang/Object;.:()V // method@5c8f │ │ -435256: 5b24 dc5f |001b: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdc │ │ -43525a: 1600 ffff |001d: const-wide/16 v0, #int -1 // #ffff │ │ -43525e: 5a20 d05f |001f: iput-wide v0, v2, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fd0 │ │ -435262: 5b25 cc5f |0021: iput-object v5, v2, Lorg/purple/smoke/SteamReaderFull;.m_fileIdentity:[B // field@5fcc │ │ -435266: 2204 e60b |0023: new-instance v4, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ -43526a: 7030 e160 7408 |0025: invoke-direct {v4, v7, v8}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60e1 │ │ -435270: 5b24 cf5f |0028: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fcf │ │ -435274: 5a20 d05f |002a: iput-wide v0, v2, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fd0 │ │ -435278: 2204 e60b |002c: new-instance v4, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ -43527c: 7100 065d 0000 |002e: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -435282: 0b05 |0031: move-result-wide v5 │ │ -435284: 7030 e160 5406 |0032: invoke-direct {v4, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60e1 │ │ -43528a: 5b24 d15f |0035: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd1 │ │ -43528e: 2204 e60b |0037: new-instance v4, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ -435292: 7030 e160 940a |0039: invoke-direct {v4, v9, v10}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60e1 │ │ -435298: 5b24 d35f |003c: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ -43529c: 2204 e40b |003e: new-instance v4, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ -4352a0: 1215 |0040: const/4 v5, #int 1 // #1 │ │ -4352a2: 7020 d860 5400 |0041: invoke-direct {v4, v5}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d8 │ │ -4352a8: 5b24 d55f |0044: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd5 │ │ -4352ac: 2204 e60b |0046: new-instance v4, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ -4352b0: 1605 0000 |0048: const-wide/16 v5, #int 0 // #0 │ │ -4352b4: 7030 e160 5406 |004a: invoke-direct {v4, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60e1 │ │ -4352ba: 5b24 d75f |004d: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd7 │ │ -4352be: 7110 00bc 0300 |004f: invoke-static {v3}, Lorg/purple/smoke/Miscellaneous;.sipHashIdFromDestination:(Ljava/lang/String;)Ljava/lang/String; // method@bc00 │ │ -4352c4: 0c03 |0052: move-result-object v3 │ │ -4352c6: 5b23 d95f |0053: iput-object v3, v2, Lorg/purple/smoke/SteamReaderFull;.m_sipHashId:Ljava/lang/String; // field@5fd9 │ │ -4352ca: 2203 e50b |0055: new-instance v3, Ljava/util/concurrent/atomic/AtomicInteger; // type@0be5 │ │ -4352ce: 1204 |0057: const/4 v4, #int 0 // #0 │ │ -4352d0: 7020 dd60 4300 |0058: invoke-direct {v3, v4}, Ljava/util/concurrent/atomic/AtomicInteger;.:(I)V // method@60dd │ │ -4352d6: 5b23 da5f |005b: iput-object v3, v2, Lorg/purple/smoke/SteamReaderFull;.m_stalled:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fda │ │ -4352da: 7010 31be 0200 |005d: invoke-direct {v2}, Lorg/purple/smoke/SteamReaderFull;.prepareReader:()V // method@be31 │ │ -4352e0: 0e00 |0060: return-void │ │ +43520c: |[43520c] org.purple.smoke.SteamReaderFull.:(Ljava/lang/String;Ljava/lang/String;[BIJJ)V │ │ +43521c: 705a 1abe 4296 |0000: invoke-direct {v2, v4, v6, v9, v10}, Lorg/purple/smoke/SteamReader;.:(Ljava/lang/String;IJ)V // method@be1a │ │ +435222: 1204 |0003: const/4 v4, #int 0 // #0 │ │ +435224: 5b24 d55f |0004: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd5 │ │ +435228: 5b24 da5f |0006: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_stalled:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fda │ │ +43522c: 5b24 cf5f |0008: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fcf │ │ +435230: 5b24 d15f |000a: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd1 │ │ +435234: 5b24 d35f |000c: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ +435238: 5b24 d75f |000e: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd7 │ │ +43523c: 1a06 0000 |0010: const-string v6, "" // string@0000 │ │ +435240: 5b26 d95f |0012: iput-object v6, v2, Lorg/purple/smoke/SteamReaderFull;.m_sipHashId:Ljava/lang/String; // field@5fd9 │ │ +435244: 5b24 cc5f |0014: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_fileIdentity:[B // field@5fcc │ │ +435248: 2204 e60a |0016: new-instance v4, Ljava/lang/Object; // type@0ae6 │ │ +43524c: 7010 8f5c 0400 |0018: invoke-direct {v4}, Ljava/lang/Object;.:()V // method@5c8f │ │ +435252: 5b24 dc5f |001b: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdc │ │ +435256: 1600 ffff |001d: const-wide/16 v0, #int -1 // #ffff │ │ +43525a: 5a20 d05f |001f: iput-wide v0, v2, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fd0 │ │ +43525e: 5b25 cc5f |0021: iput-object v5, v2, Lorg/purple/smoke/SteamReaderFull;.m_fileIdentity:[B // field@5fcc │ │ +435262: 2204 e60b |0023: new-instance v4, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ +435266: 7030 e160 7408 |0025: invoke-direct {v4, v7, v8}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60e1 │ │ +43526c: 5b24 cf5f |0028: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fcf │ │ +435270: 5a20 d05f |002a: iput-wide v0, v2, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fd0 │ │ +435274: 2204 e60b |002c: new-instance v4, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ +435278: 7100 065d 0000 |002e: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +43527e: 0b05 |0031: move-result-wide v5 │ │ +435280: 7030 e160 5406 |0032: invoke-direct {v4, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60e1 │ │ +435286: 5b24 d15f |0035: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd1 │ │ +43528a: 2204 e60b |0037: new-instance v4, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ +43528e: 7030 e160 940a |0039: invoke-direct {v4, v9, v10}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60e1 │ │ +435294: 5b24 d35f |003c: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ +435298: 2204 e40b |003e: new-instance v4, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ +43529c: 1215 |0040: const/4 v5, #int 1 // #1 │ │ +43529e: 7020 d860 5400 |0041: invoke-direct {v4, v5}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d8 │ │ +4352a4: 5b24 d55f |0044: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd5 │ │ +4352a8: 2204 e60b |0046: new-instance v4, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ +4352ac: 1605 0000 |0048: const-wide/16 v5, #int 0 // #0 │ │ +4352b0: 7030 e160 5406 |004a: invoke-direct {v4, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60e1 │ │ +4352b6: 5b24 d75f |004d: iput-object v4, v2, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd7 │ │ +4352ba: 7110 00bc 0300 |004f: invoke-static {v3}, Lorg/purple/smoke/Miscellaneous;.sipHashIdFromDestination:(Ljava/lang/String;)Ljava/lang/String; // method@bc00 │ │ +4352c0: 0c03 |0052: move-result-object v3 │ │ +4352c2: 5b23 d95f |0053: iput-object v3, v2, Lorg/purple/smoke/SteamReaderFull;.m_sipHashId:Ljava/lang/String; // field@5fd9 │ │ +4352c6: 2203 e50b |0055: new-instance v3, Ljava/util/concurrent/atomic/AtomicInteger; // type@0be5 │ │ +4352ca: 1204 |0057: const/4 v4, #int 0 // #0 │ │ +4352cc: 7020 dd60 4300 |0058: invoke-direct {v3, v4}, Ljava/util/concurrent/atomic/AtomicInteger;.:(I)V // method@60dd │ │ +4352d2: 5b23 da5f |005b: iput-object v3, v2, Lorg/purple/smoke/SteamReaderFull;.m_stalled:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fda │ │ +4352d6: 7010 31be 0200 |005d: invoke-direct {v2}, Lorg/purple/smoke/SteamReaderFull;.prepareReader:()V // method@be31 │ │ +4352dc: 0e00 |0060: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=312 │ │ 0x0004 line=39 │ │ 0x0006 line=40 │ │ 0x0008 line=41 │ │ 0x000a line=42 │ │ @@ -1190199,17 +1190198,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 │ │ -4352e4: |[4352e4] org.purple.smoke.SteamReaderFull.access$000:(Lorg/purple/smoke/SteamReaderFull;)V │ │ -4352f4: 7010 33be 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderFull;.rewind:()V // method@be33 │ │ -4352fa: 0e00 |0003: return-void │ │ +4352e0: |[4352e0] org.purple.smoke.SteamReaderFull.access$000:(Lorg/purple/smoke/SteamReaderFull;)V │ │ +4352f0: 7010 33be 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderFull;.rewind:()V // method@be33 │ │ +4352f6: 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;) │ │ @@ -1190217,17 +1190216,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 │ │ -4351c8: |[4351c8] org.purple.smoke.SteamReaderFull.access$100:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; │ │ -4351d8: 5400 cf5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fcf │ │ -4351dc: 1100 |0002: return-object v0 │ │ +4351c4: |[4351c4] org.purple.smoke.SteamReaderFull.access$100:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; │ │ +4351d4: 5400 cf5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fcf │ │ +4351d8: 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;) │ │ @@ -1190235,17 +1190234,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 │ │ -4352fc: |[4352fc] org.purple.smoke.SteamReaderFull.access$200:(Lorg/purple/smoke/SteamReaderFull;)V │ │ -43530c: 7010 2ebe 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderFull;.computeRate:()V // method@be2e │ │ -435312: 0e00 |0003: return-void │ │ +4352f8: |[4352f8] org.purple.smoke.SteamReaderFull.access$200:(Lorg/purple/smoke/SteamReaderFull;)V │ │ +435308: 7010 2ebe 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderFull;.computeRate:()V // method@be2e │ │ +43530e: 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;) │ │ @@ -1190253,17 +1190252,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 │ │ -435314: |[435314] org.purple.smoke.SteamReaderFull.access$300:(Lorg/purple/smoke/SteamReaderFull;)V │ │ -435324: 7010 34be 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderFull;.saveReadOffset:()V // method@be34 │ │ -43532a: 0e00 |0003: return-void │ │ +435310: |[435310] org.purple.smoke.SteamReaderFull.access$300:(Lorg/purple/smoke/SteamReaderFull;)V │ │ +435320: 7010 34be 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderFull;.saveReadOffset:()V // method@be34 │ │ +435326: 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;) │ │ @@ -1190271,17 +1190270,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 │ │ -435180: |[435180] org.purple.smoke.SteamReaderFull.access$400:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/Object; │ │ -435190: 5400 dc5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdc │ │ -435194: 1100 |0002: return-object v0 │ │ +43517c: |[43517c] org.purple.smoke.SteamReaderFull.access$400:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/Object; │ │ +43518c: 5400 dc5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdc │ │ +435190: 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;) │ │ @@ -1190289,17 +1190288,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 │ │ -4351b0: |[4351b0] org.purple.smoke.SteamReaderFull.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; │ │ -4351c0: 5400 d55f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd5 │ │ -4351c4: 1100 |0002: return-object v0 │ │ +4351ac: |[4351ac] org.purple.smoke.SteamReaderFull.access$500:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicBoolean; │ │ +4351bc: 5400 d55f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd5 │ │ +4351c0: 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;) │ │ @@ -1190307,17 +1190306,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 │ │ -4351e0: |[4351e0] org.purple.smoke.SteamReaderFull.access$600:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; │ │ -4351f0: 5400 d15f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd1 │ │ -4351f4: 1100 |0002: return-object v0 │ │ +4351dc: |[4351dc] org.purple.smoke.SteamReaderFull.access$600:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; │ │ +4351ec: 5400 d15f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd1 │ │ +4351f0: 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;) │ │ @@ -1190325,17 +1190324,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 │ │ -4351f8: |[4351f8] org.purple.smoke.SteamReaderFull.access$700:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; │ │ -435208: 5400 d75f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd7 │ │ -43520c: 1100 |0002: return-object v0 │ │ +4351f4: |[4351f4] org.purple.smoke.SteamReaderFull.access$700:(Lorg/purple/smoke/SteamReaderFull;)Ljava/util/concurrent/atomic/AtomicLong; │ │ +435204: 5400 d75f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd7 │ │ +435208: 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;) │ │ @@ -1190343,17 +1190342,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 │ │ -435198: |[435198] org.purple.smoke.SteamReaderFull.access$800:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/String; │ │ -4351a8: 5400 d95f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_sipHashId:Ljava/lang/String; // field@5fd9 │ │ -4351ac: 1100 |0002: return-object v0 │ │ +435194: |[435194] org.purple.smoke.SteamReaderFull.access$800:(Lorg/purple/smoke/SteamReaderFull;)Ljava/lang/String; │ │ +4351a4: 5400 d95f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_sipHashId:Ljava/lang/String; // field@5fd9 │ │ +4351a8: 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;) │ │ @@ -1190361,17 +1190360,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 │ │ -435150: |[435150] org.purple.smoke.SteamReaderFull.access$900:(Lorg/purple/smoke/SteamReaderFull;)[B │ │ -435160: 5400 cc5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_fileIdentity:[B // field@5fcc │ │ -435164: 1100 |0002: return-object v0 │ │ +43514c: |[43514c] org.purple.smoke.SteamReaderFull.access$900:(Lorg/purple/smoke/SteamReaderFull;)[B │ │ +43515c: 5400 cc5f |0000: iget-object v0, v0, Lorg/purple/smoke/SteamReaderFull;.m_fileIdentity:[B // field@5fcc │ │ +435160: 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;) │ │ @@ -1190379,74 +1190378,74 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 12 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 113 16-bit code units │ │ -43532c: |[43532c] org.purple.smoke.SteamReaderFull.computeRate:()V │ │ -43533c: 7100 065d 0000 |0000: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -435342: 0b00 |0003: move-result-wide v0 │ │ -435344: 1602 e803 |0004: const-wide/16 v2, #int 1000 // #3e8 │ │ -435348: be20 |0006: div-long/2addr v0, v2 │ │ -43534a: 54b4 db5f |0007: iget-object v4, v11, Lorg/purple/smoke/SteamReaderFull;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fdb │ │ -43534e: 6e10 e360 0400 |0009: invoke-virtual {v4}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -435354: 0b04 |000c: move-result-wide v4 │ │ -435356: bc40 |000d: sub-long/2addr v0, v4 │ │ -435358: 7120 735c 1000 |000e: invoke-static {v0, v1}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ -43535e: 0b00 |0011: move-result-wide v0 │ │ -435360: 1604 0100 |0012: const-wide/16 v4, #int 1 // #1 │ │ -435364: 3106 0004 |0014: cmp-long v6, v0, v4 │ │ -435368: 3a06 5a00 |0016: if-ltz v6, 0070 // +005a │ │ -43536c: 54b4 d45f |0018: iget-object v4, v11, Lorg/purple/smoke/SteamReaderFull;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd4 │ │ -435370: 6e10 e360 0400 |001a: invoke-virtual {v4}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -435376: 0b04 |001d: move-result-wide v4 │ │ -435378: 54b6 d45f |001e: iget-object v6, v11, Lorg/purple/smoke/SteamReaderFull;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd4 │ │ -43537c: 54b7 d65f |0020: iget-object v7, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ -435380: 6e10 e360 0700 |0022: invoke-virtual {v7}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -435386: 0b07 |0025: move-result-wide v7 │ │ -435388: 54b9 d35f |0026: iget-object v9, v11, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ -43538c: 6e10 e360 0900 |0028: invoke-virtual {v9}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -435392: 0b09 |002b: move-result-wide v9 │ │ -435394: bc97 |002c: sub-long/2addr v7, v9 │ │ -435396: 8677 |002d: long-to-double v7, v7 │ │ -435398: 8600 |002e: long-to-double v0, v0 │ │ -43539a: 7120 2c5c 8700 |002f: invoke-static {v7, v8}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ -4353a0: 7120 2c5c 1000 |0032: invoke-static {v0, v1}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ -4353a6: ce07 |0035: div-double/2addr v7, v0 │ │ -4353a8: 8b70 |0036: double-to-long v0, v7 │ │ -4353aa: 6e30 e560 0601 |0037: invoke-virtual {v6, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -4353b0: 54b0 d45f |003a: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd4 │ │ -4353b4: 6e10 e360 0000 |003c: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -4353ba: 0b00 |003f: move-result-wide v0 │ │ -4353bc: 1606 0000 |0040: const-wide/16 v6, #int 0 // #0 │ │ -4353c0: 3108 0006 |0042: cmp-long v8, v0, v6 │ │ -4353c4: 3d08 0900 |0044: if-lez v8, 004d // +0009 │ │ -4353c8: 54b0 da5f |0046: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_stalled:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fda │ │ -4353cc: 1201 |0048: const/4 v1, #int 0 // #0 │ │ -4353ce: 6e20 e060 1000 |0049: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60e0 │ │ -4353d4: 280f |004c: goto 005b // +000f │ │ -4353d6: 54b0 da5f |004d: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_stalled:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fda │ │ -4353da: 6e10 df60 0000 |004f: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.getAndIncrement:()I // method@60df │ │ -4353e0: 0a00 |0052: move-result v0 │ │ -4353e2: 1231 |0053: const/4 v1, #int 3 // #3 │ │ -4353e4: 3610 0700 |0054: if-gt v0, v1, 005b // +0007 │ │ -4353e8: 54b0 d45f |0056: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd4 │ │ -4353ec: 6e30 e560 4005 |0058: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -4353f2: 54b0 d35f |005b: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ -4353f6: 54b1 d65f |005d: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ -4353fa: 6e10 e360 0100 |005f: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -435400: 0b04 |0062: move-result-wide v4 │ │ -435402: 6e30 e560 4005 |0063: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -435408: 54b0 db5f |0066: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fdb │ │ -43540c: 7100 065d 0000 |0068: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -435412: 0b04 |006b: move-result-wide v4 │ │ -435414: be24 |006c: div-long/2addr v4, v2 │ │ -435416: 6e30 e560 4005 |006d: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43541c: 0e00 |0070: return-void │ │ +435328: |[435328] org.purple.smoke.SteamReaderFull.computeRate:()V │ │ +435338: 7100 065d 0000 |0000: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +43533e: 0b00 |0003: move-result-wide v0 │ │ +435340: 1602 e803 |0004: const-wide/16 v2, #int 1000 // #3e8 │ │ +435344: be20 |0006: div-long/2addr v0, v2 │ │ +435346: 54b4 db5f |0007: iget-object v4, v11, Lorg/purple/smoke/SteamReaderFull;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fdb │ │ +43534a: 6e10 e360 0400 |0009: invoke-virtual {v4}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +435350: 0b04 |000c: move-result-wide v4 │ │ +435352: bc40 |000d: sub-long/2addr v0, v4 │ │ +435354: 7120 735c 1000 |000e: invoke-static {v0, v1}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ +43535a: 0b00 |0011: move-result-wide v0 │ │ +43535c: 1604 0100 |0012: const-wide/16 v4, #int 1 // #1 │ │ +435360: 3106 0004 |0014: cmp-long v6, v0, v4 │ │ +435364: 3a06 5a00 |0016: if-ltz v6, 0070 // +005a │ │ +435368: 54b4 d45f |0018: iget-object v4, v11, Lorg/purple/smoke/SteamReaderFull;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd4 │ │ +43536c: 6e10 e360 0400 |001a: invoke-virtual {v4}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +435372: 0b04 |001d: move-result-wide v4 │ │ +435374: 54b6 d45f |001e: iget-object v6, v11, Lorg/purple/smoke/SteamReaderFull;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd4 │ │ +435378: 54b7 d65f |0020: iget-object v7, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ +43537c: 6e10 e360 0700 |0022: invoke-virtual {v7}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +435382: 0b07 |0025: move-result-wide v7 │ │ +435384: 54b9 d35f |0026: iget-object v9, v11, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ +435388: 6e10 e360 0900 |0028: invoke-virtual {v9}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +43538e: 0b09 |002b: move-result-wide v9 │ │ +435390: bc97 |002c: sub-long/2addr v7, v9 │ │ +435392: 8677 |002d: long-to-double v7, v7 │ │ +435394: 8600 |002e: long-to-double v0, v0 │ │ +435396: 7120 2c5c 8700 |002f: invoke-static {v7, v8}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ +43539c: 7120 2c5c 1000 |0032: invoke-static {v0, v1}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ +4353a2: ce07 |0035: div-double/2addr v7, v0 │ │ +4353a4: 8b70 |0036: double-to-long v0, v7 │ │ +4353a6: 6e30 e560 0601 |0037: invoke-virtual {v6, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +4353ac: 54b0 d45f |003a: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd4 │ │ +4353b0: 6e10 e360 0000 |003c: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +4353b6: 0b00 |003f: move-result-wide v0 │ │ +4353b8: 1606 0000 |0040: const-wide/16 v6, #int 0 // #0 │ │ +4353bc: 3108 0006 |0042: cmp-long v8, v0, v6 │ │ +4353c0: 3d08 0900 |0044: if-lez v8, 004d // +0009 │ │ +4353c4: 54b0 da5f |0046: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_stalled:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fda │ │ +4353c8: 1201 |0048: const/4 v1, #int 0 // #0 │ │ +4353ca: 6e20 e060 1000 |0049: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@60e0 │ │ +4353d0: 280f |004c: goto 005b // +000f │ │ +4353d2: 54b0 da5f |004d: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_stalled:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fda │ │ +4353d6: 6e10 df60 0000 |004f: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.getAndIncrement:()I // method@60df │ │ +4353dc: 0a00 |0052: move-result v0 │ │ +4353de: 1231 |0053: const/4 v1, #int 3 // #3 │ │ +4353e0: 3610 0700 |0054: if-gt v0, v1, 005b // +0007 │ │ +4353e4: 54b0 d45f |0056: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd4 │ │ +4353e8: 6e30 e560 4005 |0058: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +4353ee: 54b0 d35f |005b: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ +4353f2: 54b1 d65f |005d: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ +4353f6: 6e10 e360 0100 |005f: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +4353fc: 0b04 |0062: move-result-wide v4 │ │ +4353fe: 6e30 e560 4005 |0063: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +435404: 54b0 db5f |0066: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5fdb │ │ +435408: 7100 065d 0000 |0068: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +43540e: 0b04 |006b: move-result-wide v4 │ │ +435410: be24 |006c: div-long/2addr v4, v2 │ │ +435412: 6e30 e560 4005 |006d: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +435418: 0e00 |0070: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=56 │ │ 0x0018 line=60 │ │ 0x001e line=62 │ │ 0x0022 line=63 │ │ 0x0028 line=64 │ │ @@ -1190465,28 +1190464,28 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 27 16-bit code units │ │ -4354a8: |[4354a8] org.purple.smoke.SteamReaderFull.prepareReader:()V │ │ -4354b8: 5480 d85f |0000: iget-object v0, v8, Lorg/purple/smoke/SteamReaderFull;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fd8 │ │ -4354bc: 3900 1800 |0002: if-nez v0, 001a // +0018 │ │ -4354c0: 7100 c860 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c8 │ │ -4354c6: 0c00 |0007: move-result-object v0 │ │ -4354c8: 5b80 d85f |0008: iput-object v0, v8, Lorg/purple/smoke/SteamReaderFull;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fd8 │ │ -4354cc: 5481 d85f |000a: iget-object v1, v8, Lorg/purple/smoke/SteamReaderFull;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fd8 │ │ -4354d0: 2202 2e1b |000c: new-instance v2, Lorg/purple/smoke/SteamReaderFull$1; // type@1b2e │ │ -4354d4: 7020 21be 8200 |000e: invoke-direct {v2, v8}, Lorg/purple/smoke/SteamReaderFull$1;.:(Lorg/purple/smoke/SteamReaderFull;)V // method@be21 │ │ -4354da: 1603 dc05 |0011: const-wide/16 v3, #int 1500 // #5dc │ │ -4354de: 1605 fa00 |0013: const-wide/16 v5, #int 250 // #fa │ │ -4354e2: 6207 ef2c |0015: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -4354e6: 7807 d060 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@60d0 │ │ -4354ec: 0e00 |001a: return-void │ │ +4354a4: |[4354a4] org.purple.smoke.SteamReaderFull.prepareReader:()V │ │ +4354b4: 5480 d85f |0000: iget-object v0, v8, Lorg/purple/smoke/SteamReaderFull;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fd8 │ │ +4354b8: 3900 1800 |0002: if-nez v0, 001a // +0018 │ │ +4354bc: 7100 c860 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c8 │ │ +4354c2: 0c00 |0007: move-result-object v0 │ │ +4354c4: 5b80 d85f |0008: iput-object v0, v8, Lorg/purple/smoke/SteamReaderFull;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fd8 │ │ +4354c8: 5481 d85f |000a: iget-object v1, v8, Lorg/purple/smoke/SteamReaderFull;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fd8 │ │ +4354cc: 2202 2e1b |000c: new-instance v2, Lorg/purple/smoke/SteamReaderFull$1; // type@1b2e │ │ +4354d0: 7020 21be 8200 |000e: invoke-direct {v2, v8}, Lorg/purple/smoke/SteamReaderFull$1;.:(Lorg/purple/smoke/SteamReaderFull;)V // method@be21 │ │ +4354d6: 1603 dc05 |0011: const-wide/16 v3, #int 1500 // #5dc │ │ +4354da: 1605 fa00 |0013: const-wide/16 v5, #int 250 // #fa │ │ +4354de: 6207 ef2c |0015: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +4354e2: 7807 d060 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@60d0 │ │ +4354e8: 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; │ │ @@ -1190496,55 +1190495,55 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 75 16-bit code units │ │ -4354f0: |[4354f0] org.purple.smoke.SteamReaderFull.rewind:()V │ │ -435500: 5440 cb5f |0000: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fcb │ │ -435504: 1201 |0002: const/4 v1, #int 0 // #0 │ │ -435506: 6e20 dc60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -43550c: 1600 0000 |0006: const-wide/16 v0, #int 0 // #0 │ │ -435510: 5442 ce5f |0008: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fce │ │ -435514: 1d02 |000a: monitor-enter v2 │ │ -435516: 5443 cd5f |000b: iget-object v3, v4, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcd │ │ -43551a: 3803 0b00 |000d: if-eqz v3, 0018 // +000b │ │ -43551e: 5443 cd5f |000f: iget-object v3, v4, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcd │ │ -435522: 6e10 a85b 0300 |0011: invoke-virtual {v3}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ -435528: 0c03 |0014: move-result-object v3 │ │ -43552a: 6e30 cd5d 0301 |0015: invoke-virtual {v3, v0, v1}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcd │ │ -435530: 1e02 |0018: monitor-exit v2 │ │ -435532: 2804 |0019: goto 001d // +0004 │ │ -435534: 0d03 |001a: move-exception v3 │ │ -435536: 1e02 |001b: monitor-exit v2 │ │ -435538: 2703 |001c: throw v3 │ │ -43553a: 1602 ffff |001d: const-wide/16 v2, #int -1 // #ffff │ │ -43553e: 5a42 d05f |001f: iput-wide v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fd0 │ │ -435542: 5442 d15f |0021: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd1 │ │ -435546: 6e30 e560 0201 |0023: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43554c: 5442 d35f |0026: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ -435550: 6e30 e560 0201 |0028: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -435556: 5442 d55f |002b: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd5 │ │ -43555a: 1213 |002d: const/4 v3, #int 1 // #1 │ │ -43555c: 6e20 dc60 3200 |002e: invoke-virtual {v2, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -435562: 5442 d65f |0031: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ -435566: 6e30 e560 0201 |0033: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43556c: 5442 d75f |0036: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd7 │ │ -435570: 6e30 e560 0201 |0038: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -435576: 7010 34be 0400 |003b: invoke-direct {v4}, Lorg/purple/smoke/SteamReaderFull;.saveReadOffset:()V // method@be34 │ │ -43557c: 5440 dc5f |003e: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdc │ │ -435580: 1d00 |0040: monitor-enter v0 │ │ -435582: 5441 dc5f |0041: iget-object v1, v4, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdc │ │ -435586: 6e10 945c 0100 |0043: invoke-virtual {v1}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ -43558c: 1e00 |0046: monitor-exit v0 │ │ -43558e: 0e00 |0047: return-void │ │ -435590: 0d01 |0048: move-exception v1 │ │ -435592: 1e00 |0049: monitor-exit v0 │ │ -435594: 2701 |004a: throw v1 │ │ +4354ec: |[4354ec] org.purple.smoke.SteamReaderFull.rewind:()V │ │ +4354fc: 5440 cb5f |0000: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fcb │ │ +435500: 1201 |0002: const/4 v1, #int 0 // #0 │ │ +435502: 6e20 dc60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +435508: 1600 0000 |0006: const-wide/16 v0, #int 0 // #0 │ │ +43550c: 5442 ce5f |0008: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fce │ │ +435510: 1d02 |000a: monitor-enter v2 │ │ +435512: 5443 cd5f |000b: iget-object v3, v4, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcd │ │ +435516: 3803 0b00 |000d: if-eqz v3, 0018 // +000b │ │ +43551a: 5443 cd5f |000f: iget-object v3, v4, Lorg/purple/smoke/SteamReaderFull;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fcd │ │ +43551e: 6e10 a85b 0300 |0011: invoke-virtual {v3}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ +435524: 0c03 |0014: move-result-object v3 │ │ +435526: 6e30 cd5d 0301 |0015: invoke-virtual {v3, v0, v1}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcd │ │ +43552c: 1e02 |0018: monitor-exit v2 │ │ +43552e: 2804 |0019: goto 001d // +0004 │ │ +435530: 0d03 |001a: move-exception v3 │ │ +435532: 1e02 |001b: monitor-exit v2 │ │ +435534: 2703 |001c: throw v3 │ │ +435536: 1602 ffff |001d: const-wide/16 v2, #int -1 // #ffff │ │ +43553a: 5a42 d05f |001f: iput-wide v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fd0 │ │ +43553e: 5442 d15f |0021: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd1 │ │ +435542: 6e30 e560 0201 |0023: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +435548: 5442 d35f |0026: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ +43554c: 6e30 e560 0201 |0028: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +435552: 5442 d55f |002b: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd5 │ │ +435556: 1213 |002d: const/4 v3, #int 1 // #1 │ │ +435558: 6e20 dc60 3200 |002e: invoke-virtual {v2, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +43555e: 5442 d65f |0031: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ +435562: 6e30 e560 0201 |0033: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +435568: 5442 d75f |0036: iget-object v2, v4, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd7 │ │ +43556c: 6e30 e560 0201 |0038: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +435572: 7010 34be 0400 |003b: invoke-direct {v4}, Lorg/purple/smoke/SteamReaderFull;.saveReadOffset:()V // method@be34 │ │ +435578: 5440 dc5f |003e: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdc │ │ +43557c: 1d00 |0040: monitor-enter v0 │ │ +43557e: 5441 dc5f |0041: iget-object v1, v4, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdc │ │ +435582: 6e10 945c 0100 |0043: invoke-virtual {v1}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ +435588: 1e00 |0046: monitor-exit v0 │ │ +43558a: 0e00 |0047: return-void │ │ +43558c: 0d01 |0048: move-exception v1 │ │ +43558e: 1e00 |0049: monitor-exit v0 │ │ +435590: 2701 |004a: throw v1 │ │ catches : 4 │ │ 0x0008 - 0x000b │ │ Ljava/lang/Exception; -> 0x001d │ │ 0x000b - 0x001c │ │ -> 0x001a │ │ 0x001c - 0x001d │ │ Ljava/lang/Exception; -> 0x001d │ │ @@ -1190574,28 +1190573,28 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 8 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 26 16-bit code units │ │ -4355c4: |[4355c4] org.purple.smoke.SteamReaderFull.saveReadOffset:()V │ │ -4355d4: 6200 de5f |0000: sget-object v0, Lorg/purple/smoke/SteamReaderFull;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fde │ │ -4355d8: 6201 dd5f |0002: sget-object v1, Lorg/purple/smoke/SteamReaderFull;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fdd │ │ -4355dc: 6e10 32be 0700 |0004: invoke-virtual {v7}, Lorg/purple/smoke/SteamReaderFull;.prettyRate:()Ljava/lang/String; // method@be32 │ │ -4355e2: 0c03 |0007: move-result-object v3 │ │ -4355e4: 5472 d25f |0008: iget-object v2, v7, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ -4355e8: 6e10 de60 0200 |000a: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -4355ee: 0a04 |000d: move-result v4 │ │ -4355f0: 5472 d65f |000e: iget-object v2, v7, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ -4355f4: 6e10 e360 0200 |0010: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -4355fa: 0b05 |0013: move-result-wide v5 │ │ -4355fc: 1a02 0000 |0014: const-string v2, "" // string@0000 │ │ -435600: 7407 47ba 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@ba47 │ │ -435606: 0e00 |0019: return-void │ │ +4355c0: |[4355c0] org.purple.smoke.SteamReaderFull.saveReadOffset:()V │ │ +4355d0: 6200 de5f |0000: sget-object v0, Lorg/purple/smoke/SteamReaderFull;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fde │ │ +4355d4: 6201 dd5f |0002: sget-object v1, Lorg/purple/smoke/SteamReaderFull;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fdd │ │ +4355d8: 6e10 32be 0700 |0004: invoke-virtual {v7}, Lorg/purple/smoke/SteamReaderFull;.prettyRate:()Ljava/lang/String; // method@be32 │ │ +4355de: 0c03 |0007: move-result-object v3 │ │ +4355e0: 5472 d25f |0008: iget-object v2, v7, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ +4355e4: 6e10 de60 0200 |000a: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +4355ea: 0a04 |000d: move-result v4 │ │ +4355ec: 5472 d65f |000e: iget-object v2, v7, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ +4355f0: 6e10 e360 0200 |0010: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +4355f6: 0b05 |0013: move-result-wide v5 │ │ +4355f8: 1a02 0000 |0014: const-string v2, "" // string@0000 │ │ +4355fc: 7407 47ba 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@ba47 │ │ +435602: 0e00 |0019: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=301 │ │ 0x0004 line=302 │ │ locals : │ │ 0x0000 - 0x001a reg=7 this Lorg/purple/smoke/SteamReaderFull; │ │ │ │ @@ -1190605,40 +1190604,40 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 49 16-bit code units │ │ -435420: |[435420] org.purple.smoke.SteamReaderFull.delete:()V │ │ -435430: 5440 ca5f |0000: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ -435434: 1211 |0002: const/4 v1, #int 1 // #1 │ │ -435436: 6e20 dc60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -43543c: 1600 ffff |0006: const-wide/16 v0, #int -1 // #ffff │ │ -435440: 5a40 d05f |0008: iput-wide v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fd0 │ │ -435444: 5440 d15f |000a: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd1 │ │ -435448: 1601 0000 |000c: const-wide/16 v1, #int 0 // #0 │ │ -43544c: 6e30 e560 1002 |000e: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -435452: 5440 d35f |0011: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ -435456: 6e30 e560 1002 |0013: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43545c: 5440 d55f |0016: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd5 │ │ -435460: 1203 |0018: const/4 v3, #int 0 // #0 │ │ -435462: 6e20 dc60 3000 |0019: invoke-virtual {v0, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -435468: 5440 d75f |001c: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd7 │ │ -43546c: 6e30 e560 1002 |001e: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -435472: 5440 dc5f |0021: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdc │ │ -435476: 1d00 |0023: monitor-enter v0 │ │ -435478: 5441 dc5f |0024: iget-object v1, v4, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdc │ │ -43547c: 6e10 945c 0100 |0026: invoke-virtual {v1}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ -435482: 1e00 |0029: monitor-exit v0 │ │ -435484: 6f10 1dbe 0400 |002a: invoke-super {v4}, Lorg/purple/smoke/SteamReader;.delete:()V // method@be1d │ │ -43548a: 0e00 |002d: return-void │ │ -43548c: 0d01 |002e: move-exception v1 │ │ -43548e: 1e00 |002f: monitor-exit v0 │ │ -435490: 2701 |0030: throw v1 │ │ +43541c: |[43541c] org.purple.smoke.SteamReaderFull.delete:()V │ │ +43542c: 5440 ca5f |0000: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fca │ │ +435430: 1211 |0002: const/4 v1, #int 1 // #1 │ │ +435432: 6e20 dc60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +435438: 1600 ffff |0006: const-wide/16 v0, #int -1 // #ffff │ │ +43543c: 5a40 d05f |0008: iput-wide v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fd0 │ │ +435440: 5440 d15f |000a: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd1 │ │ +435444: 1601 0000 |000c: const-wide/16 v1, #int 0 // #0 │ │ +435448: 6e30 e560 1002 |000e: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +43544e: 5440 d35f |0011: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_previousOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd3 │ │ +435452: 6e30 e560 1002 |0013: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +435458: 5440 d55f |0016: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd5 │ │ +43545c: 1203 |0018: const/4 v3, #int 0 // #0 │ │ +43545e: 6e20 dc60 3000 |0019: invoke-virtual {v0, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +435464: 5440 d75f |001c: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd7 │ │ +435468: 6e30 e560 1002 |001e: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +43546e: 5440 dc5f |0021: iget-object v0, v4, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdc │ │ +435472: 1d00 |0023: monitor-enter v0 │ │ +435474: 5441 dc5f |0024: iget-object v1, v4, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdc │ │ +435478: 6e10 945c 0100 |0026: invoke-virtual {v1}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ +43547e: 1e00 |0029: monitor-exit v0 │ │ +435480: 6f10 1dbe 0400 |002a: invoke-super {v4}, Lorg/purple/smoke/SteamReader;.delete:()V // method@be1d │ │ +435486: 0e00 |002d: return-void │ │ +435488: 0d01 |002e: move-exception v1 │ │ +43548a: 1e00 |002f: monitor-exit v0 │ │ +43548c: 2701 |0030: throw v1 │ │ catches : 2 │ │ 0x0024 - 0x002a │ │ -> 0x002e │ │ 0x002f - 0x0030 │ │ -> 0x002e │ │ positions : │ │ 0x0000 line=332 │ │ @@ -1190660,17 +1190659,17 @@ │ │ type : '()[B' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -435168: |[435168] org.purple.smoke.SteamReaderFull.fileIdentity:()[B │ │ -435178: 5410 cc5f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull;.m_fileIdentity:[B // field@5fcc │ │ -43517c: 1100 |0002: return-object v0 │ │ +435164: |[435164] org.purple.smoke.SteamReaderFull.fileIdentity:()[B │ │ +435174: 5410 cc5f |0000: iget-object v0, v1, Lorg/purple/smoke/SteamReaderFull;.m_fileIdentity:[B // field@5fcc │ │ +435178: 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;) │ │ @@ -1190678,83 +1190677,83 @@ │ │ type : '(J)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 14 │ │ ins : 3 │ │ outs : 7 │ │ insns size : 128 16-bit code units │ │ -435608: |[435608] org.purple.smoke.SteamReaderFull.setAcknowledgedOffset:(J)V │ │ -435618: 1600 0000 |0000: const-wide/16 v0, #int 0 // #0 │ │ -43561c: 3102 0c00 |0002: cmp-long v2, v12, v0 │ │ -435620: 3b02 0300 |0004: if-gez v2, 0007 // +0003 │ │ -435624: 0e00 |0006: return-void │ │ -435626: 53b0 d05f |0007: iget-wide v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fd0 │ │ -43562a: 1212 |0009: const/4 v2, #int 1 // #1 │ │ -43562c: 1203 |000a: const/4 v3, #int 0 // #0 │ │ -43562e: 3104 000c |000b: cmp-long v4, v0, v12 │ │ -435632: 3804 2700 |000d: if-eqz v4, 0034 // +0027 │ │ -435636: 54b0 d65f |000f: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ -43563a: 6e10 e360 0000 |0011: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -435640: 0b00 |0014: move-result-wide v0 │ │ -435642: 3104 000c |0015: cmp-long v4, v0, v12 │ │ -435646: 3904 1d00 |0017: if-nez v4, 0034 // +001d │ │ -43564a: 5abc d05f |0019: iput-wide v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fd0 │ │ -43564e: 54b0 d15f |001b: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd1 │ │ -435652: 7100 065d 0000 |001d: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -435658: 0b04 |0020: move-result-wide v4 │ │ -43565a: 6e30 e560 4005 |0021: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -435660: 54b0 d65f |0024: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ -435664: 54b1 d75f |0026: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd7 │ │ -435668: 6e10 e360 0100 |0028: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -43566e: 0b04 |002b: move-result-wide v4 │ │ -435670: 6e30 e260 4005 |002c: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.addAndGet:(J)J // method@60e2 │ │ -435676: 7010 34be 0b00 |002f: invoke-direct {v11}, Lorg/purple/smoke/SteamReaderFull;.saveReadOffset:()V // method@be34 │ │ -43567c: 1210 |0032: const/4 v0, #int 1 // #1 │ │ -43567e: 2802 |0033: goto 0035 // +0002 │ │ -435680: 1200 |0034: const/4 v0, #int 0 // #0 │ │ -435682: 54b1 cf5f |0035: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fcf │ │ -435686: 6e10 e360 0100 |0037: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -43568c: 0b04 |003a: move-result-wide v4 │ │ -43568e: 54b1 d65f |003b: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ -435692: 6e10 e360 0100 |003d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -435698: 0b06 |0040: move-result-wide v6 │ │ -43569a: 3101 0406 |0041: cmp-long v1, v4, v6 │ │ -43569e: 3801 0f00 |0043: if-eqz v1, 0052 // +000f │ │ -4356a2: 54b1 cf5f |0045: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fcf │ │ -4356a6: 6e10 e360 0100 |0047: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -4356ac: 0b04 |004a: move-result-wide v4 │ │ -4356ae: 3101 040c |004b: cmp-long v1, v4, v12 │ │ -4356b2: 3901 0300 |004d: if-nez v1, 0050 // +0003 │ │ -4356b6: 2803 |004f: goto 0052 // +0003 │ │ -4356b8: 0103 |0050: move v3, v0 │ │ -4356ba: 281d |0051: goto 006e // +001d │ │ -4356bc: 54bc cb5f |0052: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fcb │ │ -4356c0: 6e20 dc60 2c00 |0054: invoke-virtual {v12, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -4356c6: 6204 de5f |0057: sget-object v4, Lorg/purple/smoke/SteamReaderFull;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fde │ │ -4356ca: 6205 dd5f |0059: sget-object v5, Lorg/purple/smoke/SteamReaderFull;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fdd │ │ -4356ce: 1a06 fa5f |005b: const-string v6, "completed" // string@5ffa │ │ -4356d2: 1a07 0000 |005d: const-string v7, "" // string@0000 │ │ -4356d6: 54bc d25f |005f: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ -4356da: 6e10 de60 0c00 |0061: invoke-virtual {v12}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -4356e0: 0a08 |0064: move-result v8 │ │ -4356e2: 54bc d65f |0065: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ -4356e6: 6e10 e360 0c00 |0067: invoke-virtual {v12}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -4356ec: 0b09 |006a: move-result-wide v9 │ │ -4356ee: 7407 47ba 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@ba47 │ │ -4356f4: 54bc d55f |006e: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd5 │ │ -4356f8: 6e20 dc60 3c00 |0070: invoke-virtual {v12, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -4356fe: 54bc dc5f |0073: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdc │ │ -435702: 1d0c |0075: monitor-enter v12 │ │ -435704: 54bd dc5f |0076: iget-object v13, v11, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdc │ │ -435708: 6e10 945c 0d00 |0078: invoke-virtual {v13}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ -43570e: 1e0c |007b: monitor-exit v12 │ │ -435710: 0e00 |007c: return-void │ │ -435712: 0d0d |007d: move-exception v13 │ │ -435714: 1e0c |007e: monitor-exit v12 │ │ -435716: 270d |007f: throw v13 │ │ +435604: |[435604] org.purple.smoke.SteamReaderFull.setAcknowledgedOffset:(J)V │ │ +435614: 1600 0000 |0000: const-wide/16 v0, #int 0 // #0 │ │ +435618: 3102 0c00 |0002: cmp-long v2, v12, v0 │ │ +43561c: 3b02 0300 |0004: if-gez v2, 0007 // +0003 │ │ +435620: 0e00 |0006: return-void │ │ +435622: 53b0 d05f |0007: iget-wide v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fd0 │ │ +435626: 1212 |0009: const/4 v2, #int 1 // #1 │ │ +435628: 1203 |000a: const/4 v3, #int 0 // #0 │ │ +43562a: 3104 000c |000b: cmp-long v4, v0, v12 │ │ +43562e: 3804 2700 |000d: if-eqz v4, 0034 // +0027 │ │ +435632: 54b0 d65f |000f: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ +435636: 6e10 e360 0000 |0011: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +43563c: 0b00 |0014: move-result-wide v0 │ │ +43563e: 3104 000c |0015: cmp-long v4, v0, v12 │ │ +435642: 3904 1d00 |0017: if-nez v4, 0034 // +001d │ │ +435646: 5abc d05f |0019: iput-wide v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_lastReceivedOffset:J // field@5fd0 │ │ +43564a: 54b0 d15f |001b: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_lastResponse:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd1 │ │ +43564e: 7100 065d 0000 |001d: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +435654: 0b04 |0020: move-result-wide v4 │ │ +435656: 6e30 e560 4005 |0021: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +43565c: 54b0 d65f |0024: iget-object v0, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ +435660: 54b1 d75f |0026: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_readResult:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd7 │ │ +435664: 6e10 e360 0100 |0028: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +43566a: 0b04 |002b: move-result-wide v4 │ │ +43566c: 6e30 e260 4005 |002c: invoke-virtual {v0, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.addAndGet:(J)J // method@60e2 │ │ +435672: 7010 34be 0b00 |002f: invoke-direct {v11}, Lorg/purple/smoke/SteamReaderFull;.saveReadOffset:()V // method@be34 │ │ +435678: 1210 |0032: const/4 v0, #int 1 // #1 │ │ +43567a: 2802 |0033: goto 0035 // +0002 │ │ +43567c: 1200 |0034: const/4 v0, #int 0 // #0 │ │ +43567e: 54b1 cf5f |0035: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fcf │ │ +435682: 6e10 e360 0100 |0037: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +435688: 0b04 |003a: move-result-wide v4 │ │ +43568a: 54b1 d65f |003b: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ +43568e: 6e10 e360 0100 |003d: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +435694: 0b06 |0040: move-result-wide v6 │ │ +435696: 3101 0406 |0041: cmp-long v1, v4, v6 │ │ +43569a: 3801 0f00 |0043: if-eqz v1, 0052 // +000f │ │ +43569e: 54b1 cf5f |0045: iget-object v1, v11, Lorg/purple/smoke/SteamReaderFull;.m_fileSize:Ljava/util/concurrent/atomic/AtomicLong; // field@5fcf │ │ +4356a2: 6e10 e360 0100 |0047: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +4356a8: 0b04 |004a: move-result-wide v4 │ │ +4356aa: 3101 040c |004b: cmp-long v1, v4, v12 │ │ +4356ae: 3901 0300 |004d: if-nez v1, 0050 // +0003 │ │ +4356b2: 2803 |004f: goto 0052 // +0003 │ │ +4356b4: 0103 |0050: move v3, v0 │ │ +4356b6: 281d |0051: goto 006e // +001d │ │ +4356b8: 54bc cb5f |0052: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fcb │ │ +4356bc: 6e20 dc60 2c00 |0054: invoke-virtual {v12, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +4356c2: 6204 de5f |0057: sget-object v4, Lorg/purple/smoke/SteamReaderFull;.s_databaseHelper:Lorg/purple/smoke/Database; // field@5fde │ │ +4356c6: 6205 dd5f |0059: sget-object v5, Lorg/purple/smoke/SteamReaderFull;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5fdd │ │ +4356ca: 1a06 fa5f |005b: const-string v6, "completed" // string@5ffa │ │ +4356ce: 1a07 0000 |005d: const-string v7, "" // string@0000 │ │ +4356d2: 54bc d25f |005f: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_oid:Ljava/util/concurrent/atomic/AtomicInteger; // field@5fd2 │ │ +4356d6: 6e10 de60 0c00 |0061: invoke-virtual {v12}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +4356dc: 0a08 |0064: move-result v8 │ │ +4356de: 54bc d65f |0065: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fd6 │ │ +4356e2: 6e10 e360 0c00 |0067: invoke-virtual {v12}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +4356e8: 0b09 |006a: move-result-wide v9 │ │ +4356ea: 7407 47ba 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@ba47 │ │ +4356f0: 54bc d55f |006e: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_read:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fd5 │ │ +4356f4: 6e20 dc60 3c00 |0070: invoke-virtual {v12, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +4356fa: 54bc dc5f |0073: iget-object v12, v11, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdc │ │ +4356fe: 1d0c |0075: monitor-enter v12 │ │ +435700: 54bd dc5f |0076: iget-object v13, v11, Lorg/purple/smoke/SteamReaderFull;.m_waitMutex:Ljava/lang/Object; // field@5fdc │ │ +435704: 6e10 945c 0d00 |0078: invoke-virtual {v13}, Ljava/lang/Object;.notify:()V // method@5c94 │ │ +43570a: 1e0c |007b: monitor-exit v12 │ │ +43570c: 0e00 |007c: return-void │ │ +43570e: 0d0d |007d: move-exception v13 │ │ +435710: 1e0c |007e: monitor-exit v12 │ │ +435712: 270d |007f: throw v13 │ │ catches : 1 │ │ 0x0076 - 0x007f │ │ -> 0x007d │ │ positions : │ │ 0x0007 line=358 │ │ 0x0011 line=362 │ │ 0x0019 line=364 │ │ @@ -1190781,16 +1190780,16 @@ │ │ type : '(I)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -435724: |[435724] org.purple.smoke.SteamReaderFull.setReadInterval:(I)V │ │ -435734: 0e00 |0000: return-void │ │ +435720: |[435720] org.purple.smoke.SteamReaderFull.setReadInterval:(I)V │ │ +435730: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ source_file_idx : 19587 (SteamReaderFull.java) │ │ │ │ Class #4373 header: │ │ @@ -1190829,33 +1190828,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 │ │ -435b5c: |[435b5c] org.purple.smoke.SteamReaderSimple.:(Ljava/lang/String;IJJ)V │ │ -435b6c: 7056 1abe 1052 |0000: invoke-direct {v0, v1, v2, v5, v6}, Lorg/purple/smoke/SteamReader;.:(Ljava/lang/String;IJ)V // method@be1a │ │ -435b72: 1201 |0003: const/4 v1, #int 0 // #0 │ │ -435b74: 5b01 e55f |0004: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe5 │ │ -435b78: 5b01 e85f |0006: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ -435b7c: 2201 e60b |0008: new-instance v1, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ -435b80: 1605 0000 |000a: const-wide/16 v5, #int 0 // #0 │ │ -435b84: 7030 e160 5106 |000c: invoke-direct {v1, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60e1 │ │ -435b8a: 5b01 e55f |000f: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe5 │ │ -435b8e: 2201 e60b |0011: new-instance v1, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ -435b92: 1605 0400 |0013: const-wide/16 v5, #int 4 // #4 │ │ -435b96: 7140 7f5c 6543 |0015: invoke-static {v5, v6, v3, v4}, Ljava/lang/Math;.max:(JJ)J // method@5c7f │ │ -435b9c: 0b02 |0018: move-result-wide v2 │ │ -435b9e: 1604 e803 |0019: const-wide/16 v4, #int 1000 // #3e8 │ │ -435ba2: be24 |001b: div-long/2addr v4, v2 │ │ -435ba4: 7030 e160 4105 |001c: invoke-direct {v1, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60e1 │ │ -435baa: 5b01 e85f |001f: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ -435bae: 7010 3fbe 0000 |0021: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderSimple;.prepareReader:()V // method@be3f │ │ -435bb4: 0e00 |0024: return-void │ │ +435b58: |[435b58] org.purple.smoke.SteamReaderSimple.:(Ljava/lang/String;IJJ)V │ │ +435b68: 7056 1abe 1052 |0000: invoke-direct {v0, v1, v2, v5, v6}, Lorg/purple/smoke/SteamReader;.:(Ljava/lang/String;IJ)V // method@be1a │ │ +435b6e: 1201 |0003: const/4 v1, #int 0 // #0 │ │ +435b70: 5b01 e55f |0004: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe5 │ │ +435b74: 5b01 e85f |0006: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ +435b78: 2201 e60b |0008: new-instance v1, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ +435b7c: 1605 0000 |000a: const-wide/16 v5, #int 0 // #0 │ │ +435b80: 7030 e160 5106 |000c: invoke-direct {v1, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60e1 │ │ +435b86: 5b01 e55f |000f: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe5 │ │ +435b8a: 2201 e60b |0011: new-instance v1, Ljava/util/concurrent/atomic/AtomicLong; // type@0be6 │ │ +435b8e: 1605 0400 |0013: const-wide/16 v5, #int 4 // #4 │ │ +435b92: 7140 7f5c 6543 |0015: invoke-static {v5, v6, v3, v4}, Ljava/lang/Math;.max:(JJ)J // method@5c7f │ │ +435b98: 0b02 |0018: move-result-wide v2 │ │ +435b9a: 1604 e803 |0019: const-wide/16 v4, #int 1000 // #3e8 │ │ +435b9e: be24 |001b: div-long/2addr v4, v2 │ │ +435ba0: 7030 e160 4105 |001c: invoke-direct {v1, v4, v5}, Ljava/util/concurrent/atomic/AtomicLong;.:(J)V // method@60e1 │ │ +435ba6: 5b01 e85f |001f: iput-object v1, v0, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ +435baa: 7010 3fbe 0000 |0021: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderSimple;.prepareReader:()V // method@be3f │ │ +435bb0: 0e00 |0024: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=220 │ │ 0x0004 line=41 │ │ 0x0006 line=42 │ │ 0x0008 line=221 │ │ 0x0011 line=222 │ │ @@ -1190872,17 +1190871,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 │ │ -435bb8: |[435bb8] org.purple.smoke.SteamReaderSimple.access$000:(Lorg/purple/smoke/SteamReaderSimple;)V │ │ -435bc8: 7010 41be 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderSimple;.rewind:()V // method@be41 │ │ -435bce: 0e00 |0003: return-void │ │ +435bb4: |[435bb4] org.purple.smoke.SteamReaderSimple.access$000:(Lorg/purple/smoke/SteamReaderSimple;)V │ │ +435bc4: 7010 41be 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/SteamReaderSimple;.rewind:()V // method@be41 │ │ +435bca: 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;) │ │ @@ -1190890,17 +1190889,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 │ │ -435bd0: |[435bd0] org.purple.smoke.SteamReaderSimple.access$100:(Lorg/purple/smoke/SteamReaderSimple;J)V │ │ -435be0: 7030 3dbe 1002 |0000: invoke-direct {v0, v1, v2}, Lorg/purple/smoke/SteamReaderSimple;.computeRate:(J)V // method@be3d │ │ -435be6: 0e00 |0003: return-void │ │ +435bcc: |[435bcc] org.purple.smoke.SteamReaderSimple.access$100:(Lorg/purple/smoke/SteamReaderSimple;J)V │ │ +435bdc: 7030 3dbe 1002 |0000: invoke-direct {v0, v1, v2}, Lorg/purple/smoke/SteamReaderSimple;.computeRate:(J)V // method@be3d │ │ +435be2: 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 │ │ │ │ @@ -1190909,49 +1190908,49 @@ │ │ type : '(J)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 7 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 67 16-bit code units │ │ -435be8: |[435be8] org.purple.smoke.SteamReaderSimple.computeRate:(J)V │ │ -435bf8: 7100 065d 0000 |0000: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -435bfe: 0b00 |0003: move-result-wide v0 │ │ -435c00: 5442 eb5f |0004: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5feb │ │ -435c04: 6e10 e360 0200 |0006: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -435c0a: 0b02 |0009: move-result-wide v2 │ │ -435c0c: bc20 |000a: sub-long/2addr v0, v2 │ │ -435c0e: 7120 735c 1000 |000b: invoke-static {v0, v1}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ -435c14: 0b00 |000e: move-result-wide v0 │ │ -435c16: 1602 e803 |000f: const-wide/16 v2, #int 1000 // #3e8 │ │ -435c1a: be20 |0011: div-long/2addr v0, v2 │ │ -435c1c: 5442 e55f |0012: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe5 │ │ -435c20: 6e30 e460 5206 |0014: invoke-virtual {v2, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e4 │ │ -435c26: 1605 0100 |0017: const-wide/16 v5, #int 1 // #1 │ │ -435c2a: 3102 0005 |0019: cmp-long v2, v0, v5 │ │ -435c2e: 3a02 2700 |001b: if-ltz v2, 0042 // +0027 │ │ -435c32: 5445 e75f |001d: iget-object v5, v4, Lorg/purple/smoke/SteamReaderSimple;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe7 │ │ -435c36: 5446 e55f |001f: iget-object v6, v4, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe5 │ │ -435c3a: 6e10 e360 0600 |0021: invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -435c40: 0b02 |0024: move-result-wide v2 │ │ -435c42: 8622 |0025: long-to-double v2, v2 │ │ -435c44: 8600 |0026: long-to-double v0, v0 │ │ -435c46: 7120 2c5c 3200 |0027: invoke-static {v2, v3}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ -435c4c: 7120 2c5c 1000 |002a: invoke-static {v0, v1}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ -435c52: ce02 |002d: div-double/2addr v2, v0 │ │ -435c54: 8b20 |002e: double-to-long v0, v2 │ │ -435c56: 6e30 e560 0501 |002f: invoke-virtual {v5, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -435c5c: 5445 e55f |0032: iget-object v5, v4, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe5 │ │ -435c60: 1600 0000 |0034: const-wide/16 v0, #int 0 // #0 │ │ -435c64: 6e30 e560 0501 |0036: invoke-virtual {v5, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -435c6a: 5445 eb5f |0039: iget-object v5, v4, Lorg/purple/smoke/SteamReaderSimple;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5feb │ │ -435c6e: 7100 065d 0000 |003b: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -435c74: 0b00 |003e: move-result-wide v0 │ │ -435c76: 6e30 e560 0501 |003f: invoke-virtual {v5, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -435c7c: 0e00 |0042: return-void │ │ +435be4: |[435be4] org.purple.smoke.SteamReaderSimple.computeRate:(J)V │ │ +435bf4: 7100 065d 0000 |0000: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +435bfa: 0b00 |0003: move-result-wide v0 │ │ +435bfc: 5442 eb5f |0004: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5feb │ │ +435c00: 6e10 e360 0200 |0006: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +435c06: 0b02 |0009: move-result-wide v2 │ │ +435c08: bc20 |000a: sub-long/2addr v0, v2 │ │ +435c0a: 7120 735c 1000 |000b: invoke-static {v0, v1}, Ljava/lang/Math;.abs:(J)J // method@5c73 │ │ +435c10: 0b00 |000e: move-result-wide v0 │ │ +435c12: 1602 e803 |000f: const-wide/16 v2, #int 1000 // #3e8 │ │ +435c16: be20 |0011: div-long/2addr v0, v2 │ │ +435c18: 5442 e55f |0012: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe5 │ │ +435c1c: 6e30 e460 5206 |0014: invoke-virtual {v2, v5, v6}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e4 │ │ +435c22: 1605 0100 |0017: const-wide/16 v5, #int 1 // #1 │ │ +435c26: 3102 0005 |0019: cmp-long v2, v0, v5 │ │ +435c2a: 3a02 2700 |001b: if-ltz v2, 0042 // +0027 │ │ +435c2e: 5445 e75f |001d: iget-object v5, v4, Lorg/purple/smoke/SteamReaderSimple;.m_rate:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe7 │ │ +435c32: 5446 e55f |001f: iget-object v6, v4, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe5 │ │ +435c36: 6e10 e360 0600 |0021: invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +435c3c: 0b02 |0024: move-result-wide v2 │ │ +435c3e: 8622 |0025: long-to-double v2, v2 │ │ +435c40: 8600 |0026: long-to-double v0, v0 │ │ +435c42: 7120 2c5c 3200 |0027: invoke-static {v2, v3}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ +435c48: 7120 2c5c 1000 |002a: invoke-static {v0, v1}, Ljava/lang/Double;.isNaN:(D)Z // method@5c2c │ │ +435c4e: ce02 |002d: div-double/2addr v2, v0 │ │ +435c50: 8b20 |002e: double-to-long v0, v2 │ │ +435c52: 6e30 e560 0501 |002f: invoke-virtual {v5, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +435c58: 5445 e55f |0032: iget-object v5, v4, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe5 │ │ +435c5c: 1600 0000 |0034: const-wide/16 v0, #int 0 // #0 │ │ +435c60: 6e30 e560 0501 |0036: invoke-virtual {v5, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +435c66: 5445 eb5f |0039: iget-object v5, v4, Lorg/purple/smoke/SteamReaderSimple;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5feb │ │ +435c6a: 7100 065d 0000 |003b: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +435c70: 0b00 |003e: move-result-wide v0 │ │ +435c72: 6e30 e560 0501 |003f: invoke-virtual {v5, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +435c78: 0e00 |0042: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=48 │ │ 0x0012 line=50 │ │ 0x001d line=54 │ │ 0x0021 line=55 │ │ 0x0032 line=56 │ │ @@ -1190965,30 +1190964,30 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 31 16-bit code units │ │ -435cbc: |[435cbc] org.purple.smoke.SteamReaderSimple.prepareReader:()V │ │ -435ccc: 5480 ea5f |0000: iget-object v0, v8, Lorg/purple/smoke/SteamReaderSimple;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fea │ │ -435cd0: 3900 1c00 |0002: if-nez v0, 001e // +001c │ │ -435cd4: 7100 c860 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c8 │ │ -435cda: 0c00 |0007: move-result-object v0 │ │ -435cdc: 5b80 ea5f |0008: iput-object v0, v8, Lorg/purple/smoke/SteamReaderSimple;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fea │ │ -435ce0: 5481 ea5f |000a: iget-object v1, v8, Lorg/purple/smoke/SteamReaderSimple;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fea │ │ -435ce4: 2202 301b |000c: new-instance v2, Lorg/purple/smoke/SteamReaderSimple$1; // type@1b30 │ │ -435ce8: 7020 37be 8200 |000e: invoke-direct {v2, v8}, Lorg/purple/smoke/SteamReaderSimple$1;.:(Lorg/purple/smoke/SteamReaderSimple;)V // method@be37 │ │ -435cee: 1603 dc05 |0011: const-wide/16 v3, #int 1500 // #5dc │ │ -435cf2: 5480 e85f |0013: iget-object v0, v8, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ -435cf6: 6e10 e360 0000 |0015: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -435cfc: 0b05 |0018: move-result-wide v5 │ │ -435cfe: 6207 ef2c |0019: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -435d02: 7807 d060 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@60d0 │ │ -435d08: 0e00 |001e: return-void │ │ +435cb8: |[435cb8] org.purple.smoke.SteamReaderSimple.prepareReader:()V │ │ +435cc8: 5480 ea5f |0000: iget-object v0, v8, Lorg/purple/smoke/SteamReaderSimple;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fea │ │ +435ccc: 3900 1c00 |0002: if-nez v0, 001e // +001c │ │ +435cd0: 7100 c860 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c8 │ │ +435cd6: 0c00 |0007: move-result-object v0 │ │ +435cd8: 5b80 ea5f |0008: iput-object v0, v8, Lorg/purple/smoke/SteamReaderSimple;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fea │ │ +435cdc: 5481 ea5f |000a: iget-object v1, v8, Lorg/purple/smoke/SteamReaderSimple;.m_reader:Ljava/util/concurrent/ScheduledExecutorService; // field@5fea │ │ +435ce0: 2202 301b |000c: new-instance v2, Lorg/purple/smoke/SteamReaderSimple$1; // type@1b30 │ │ +435ce4: 7020 37be 8200 |000e: invoke-direct {v2, v8}, Lorg/purple/smoke/SteamReaderSimple$1;.:(Lorg/purple/smoke/SteamReaderSimple;)V // method@be37 │ │ +435cea: 1603 dc05 |0011: const-wide/16 v3, #int 1500 // #5dc │ │ +435cee: 5480 e85f |0013: iget-object v0, v8, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ +435cf2: 6e10 e360 0000 |0015: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +435cf8: 0b05 |0018: move-result-wide v5 │ │ +435cfa: 6207 ef2c |0019: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +435cfe: 7807 d060 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@60d0 │ │ +435d04: 0e00 |001e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=63 │ │ 0x0004 line=65 │ │ 0x000a line=66 │ │ 0x0015 line=191 │ │ 0x001b line=66 │ │ @@ -1191000,37 +1190999,37 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 40 16-bit code units │ │ -435d0c: |[435d0c] org.purple.smoke.SteamReaderSimple.rewind:()V │ │ -435d1c: 5440 e25f |0000: iget-object v0, v4, Lorg/purple/smoke/SteamReaderSimple;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe2 │ │ -435d20: 1201 |0002: const/4 v1, #int 0 // #0 │ │ -435d22: 6e20 dc60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -435d28: 1600 0000 |0006: const-wide/16 v0, #int 0 // #0 │ │ -435d2c: 5442 e45f |0008: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fe4 │ │ -435d30: 1d02 |000a: monitor-enter v2 │ │ -435d32: 5443 e35f |000b: iget-object v3, v4, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe3 │ │ -435d36: 3803 0b00 |000d: if-eqz v3, 0018 // +000b │ │ -435d3a: 5443 e35f |000f: iget-object v3, v4, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe3 │ │ -435d3e: 6e10 a85b 0300 |0011: invoke-virtual {v3}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ -435d44: 0c03 |0014: move-result-object v3 │ │ -435d46: 6e30 cd5d 0301 |0015: invoke-virtual {v3, v0, v1}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcd │ │ -435d4c: 1e02 |0018: monitor-exit v2 │ │ -435d4e: 2804 |0019: goto 001d // +0004 │ │ -435d50: 0d03 |001a: move-exception v3 │ │ -435d52: 1e02 |001b: monitor-exit v2 │ │ -435d54: 2703 |001c: throw v3 │ │ -435d56: 5442 e55f |001d: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe5 │ │ -435d5a: 6e30 e560 0201 |001f: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -435d60: 5442 e95f |0022: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe9 │ │ -435d64: 6e30 e560 0201 |0024: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -435d6a: 0e00 |0027: return-void │ │ +435d08: |[435d08] org.purple.smoke.SteamReaderSimple.rewind:()V │ │ +435d18: 5440 e25f |0000: iget-object v0, v4, Lorg/purple/smoke/SteamReaderSimple;.m_completed:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe2 │ │ +435d1c: 1201 |0002: const/4 v1, #int 0 // #0 │ │ +435d1e: 6e20 dc60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +435d24: 1600 0000 |0006: const-wide/16 v0, #int 0 // #0 │ │ +435d28: 5442 e45f |0008: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStreamMutex:Ljava/lang/Object; // field@5fe4 │ │ +435d2c: 1d02 |000a: monitor-enter v2 │ │ +435d2e: 5443 e35f |000b: iget-object v3, v4, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe3 │ │ +435d32: 3803 0b00 |000d: if-eqz v3, 0018 // +000b │ │ +435d36: 5443 e35f |000f: iget-object v3, v4, Lorg/purple/smoke/SteamReaderSimple;.m_fileInputStream:Ljava/io/FileInputStream; // field@5fe3 │ │ +435d3a: 6e10 a85b 0300 |0011: invoke-virtual {v3}, Ljava/io/FileInputStream;.getChannel:()Ljava/nio/channels/FileChannel; // method@5ba8 │ │ +435d40: 0c03 |0014: move-result-object v3 │ │ +435d42: 6e30 cd5d 0301 |0015: invoke-virtual {v3, v0, v1}, Ljava/nio/channels/FileChannel;.position:(J)Ljava/nio/channels/FileChannel; // method@5dcd │ │ +435d48: 1e02 |0018: monitor-exit v2 │ │ +435d4a: 2804 |0019: goto 001d // +0004 │ │ +435d4c: 0d03 |001a: move-exception v3 │ │ +435d4e: 1e02 |001b: monitor-exit v2 │ │ +435d50: 2703 |001c: throw v3 │ │ +435d52: 5442 e55f |001d: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe5 │ │ +435d56: 6e30 e560 0201 |001f: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +435d5c: 5442 e95f |0022: iget-object v2, v4, Lorg/purple/smoke/SteamReaderSimple;.m_readOffset:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe9 │ │ +435d60: 6e30 e560 0201 |0024: invoke-virtual {v2, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +435d66: 0e00 |0027: return-void │ │ catches : 3 │ │ 0x0008 - 0x000b │ │ Ljava/lang/Exception; -> 0x001d │ │ 0x000b - 0x001c │ │ -> 0x001a │ │ 0x001c - 0x001d │ │ Ljava/lang/Exception; -> 0x001d │ │ @@ -1191051,25 +1191050,25 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 22 16-bit code units │ │ -435c80: |[435c80] org.purple.smoke.SteamReaderSimple.delete:()V │ │ -435c90: 5430 e15f |0000: iget-object v0, v3, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe1 │ │ -435c94: 1211 |0002: const/4 v1, #int 1 // #1 │ │ -435c96: 6e20 dc60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -435c9c: 5430 e55f |0006: iget-object v0, v3, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe5 │ │ -435ca0: 1601 0000 |0008: const-wide/16 v1, #int 0 // #0 │ │ -435ca4: 6e30 e560 1002 |000a: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -435caa: 5430 eb5f |000d: iget-object v0, v3, Lorg/purple/smoke/SteamReaderSimple;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5feb │ │ -435cae: 6e30 e560 1002 |000f: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -435cb4: 6f10 1dbe 0300 |0012: invoke-super {v3}, Lorg/purple/smoke/SteamReader;.delete:()V // method@be1d │ │ -435cba: 0e00 |0015: return-void │ │ +435c7c: |[435c7c] org.purple.smoke.SteamReaderSimple.delete:()V │ │ +435c8c: 5430 e15f |0000: iget-object v0, v3, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe1 │ │ +435c90: 1211 |0002: const/4 v1, #int 1 // #1 │ │ +435c92: 6e20 dc60 1000 |0003: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +435c98: 5430 e55f |0006: iget-object v0, v3, Lorg/purple/smoke/SteamReaderSimple;.m_lastBytesSent:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe5 │ │ +435c9c: 1601 0000 |0008: const-wide/16 v1, #int 0 // #0 │ │ +435ca0: 6e30 e560 1002 |000a: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +435ca6: 5430 eb5f |000d: iget-object v0, v3, Lorg/purple/smoke/SteamReaderSimple;.m_time0:Ljava/util/concurrent/atomic/AtomicLong; // field@5feb │ │ +435caa: 6e30 e560 1002 |000f: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +435cb0: 6f10 1dbe 0300 |0012: invoke-super {v3}, Lorg/purple/smoke/SteamReader;.delete:()V // method@be1d │ │ +435cb6: 0e00 |0015: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=228 │ │ 0x0006 line=229 │ │ 0x000d line=230 │ │ 0x0012 line=231 │ │ locals : │ │ @@ -1191080,49 +1191079,49 @@ │ │ type : '(I)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 66 16-bit code units │ │ -435d8c: |[435d8c] org.purple.smoke.SteamReaderSimple.setReadInterval:(I)V │ │ -435d9c: 8160 |0000: int-to-long v0, v6 │ │ -435d9e: 1602 e803 |0001: const-wide/16 v2, #int 1000 // #3e8 │ │ -435da2: be02 |0003: div-long/2addr v2, v0 │ │ -435da4: 5450 e85f |0004: iget-object v0, v5, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ -435da8: 6e10 e360 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ -435dae: 0b00 |0009: move-result-wide v0 │ │ -435db0: 3104 0200 |000a: cmp-long v4, v2, v0 │ │ -435db4: 3904 0300 |000c: if-nez v4, 000f // +0003 │ │ -435db8: 0e00 |000e: return-void │ │ -435dba: 1240 |000f: const/4 v0, #int 4 // #4 │ │ -435dbc: 3206 1a00 |0010: if-eq v6, v0, 002a // +001a │ │ -435dc0: 1300 0a00 |0012: const/16 v0, #int 10 // #a │ │ -435dc4: 3206 1600 |0014: if-eq v6, v0, 002a // +0016 │ │ -435dc8: 1300 1400 |0016: const/16 v0, #int 20 // #14 │ │ -435dcc: 3206 1200 |0018: if-eq v6, v0, 002a // +0012 │ │ -435dd0: 1300 3200 |001a: const/16 v0, #int 50 // #32 │ │ -435dd4: 3206 0e00 |001c: if-eq v6, v0, 002a // +000e │ │ -435dd8: 1300 6400 |001e: const/16 v0, #int 100 // #64 │ │ -435ddc: 3206 0a00 |0020: if-eq v6, v0, 002a // +000a │ │ -435de0: 5456 e85f |0022: iget-object v6, v5, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ -435de4: 1600 fa00 |0024: const-wide/16 v0, #int 250 // #fa │ │ -435de8: 6e30 e560 0601 |0026: invoke-virtual {v6, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -435dee: 2806 |0029: goto 002f // +0006 │ │ -435df0: 5456 e85f |002a: iget-object v6, v5, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ -435df4: 6e30 e560 2603 |002c: invoke-virtual {v6, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -435dfa: 5456 e15f |002f: iget-object v6, v5, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe1 │ │ -435dfe: 1210 |0031: const/4 v0, #int 1 // #1 │ │ -435e00: 6e20 dc60 0600 |0032: invoke-virtual {v6, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -435e06: 6e10 3cbe 0500 |0035: invoke-virtual {v5}, Lorg/purple/smoke/SteamReaderSimple;.cancelReader:()V // method@be3c │ │ -435e0c: 5456 e15f |0038: iget-object v6, v5, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe1 │ │ -435e10: 1200 |003a: const/4 v0, #int 0 // #0 │ │ -435e12: 6e20 dc60 0600 |003b: invoke-virtual {v6, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -435e18: 7010 3fbe 0500 |003e: invoke-direct {v5}, Lorg/purple/smoke/SteamReaderSimple;.prepareReader:()V // method@be3f │ │ -435e1e: 0e00 |0041: return-void │ │ +435d88: |[435d88] org.purple.smoke.SteamReaderSimple.setReadInterval:(I)V │ │ +435d98: 8160 |0000: int-to-long v0, v6 │ │ +435d9a: 1602 e803 |0001: const-wide/16 v2, #int 1000 // #3e8 │ │ +435d9e: be02 |0003: div-long/2addr v2, v0 │ │ +435da0: 5450 e85f |0004: iget-object v0, v5, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ +435da4: 6e10 e360 0000 |0006: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicLong;.get:()J // method@60e3 │ │ +435daa: 0b00 |0009: move-result-wide v0 │ │ +435dac: 3104 0200 |000a: cmp-long v4, v2, v0 │ │ +435db0: 3904 0300 |000c: if-nez v4, 000f // +0003 │ │ +435db4: 0e00 |000e: return-void │ │ +435db6: 1240 |000f: const/4 v0, #int 4 // #4 │ │ +435db8: 3206 1a00 |0010: if-eq v6, v0, 002a // +001a │ │ +435dbc: 1300 0a00 |0012: const/16 v0, #int 10 // #a │ │ +435dc0: 3206 1600 |0014: if-eq v6, v0, 002a // +0016 │ │ +435dc4: 1300 1400 |0016: const/16 v0, #int 20 // #14 │ │ +435dc8: 3206 1200 |0018: if-eq v6, v0, 002a // +0012 │ │ +435dcc: 1300 3200 |001a: const/16 v0, #int 50 // #32 │ │ +435dd0: 3206 0e00 |001c: if-eq v6, v0, 002a // +000e │ │ +435dd4: 1300 6400 |001e: const/16 v0, #int 100 // #64 │ │ +435dd8: 3206 0a00 |0020: if-eq v6, v0, 002a // +000a │ │ +435ddc: 5456 e85f |0022: iget-object v6, v5, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ +435de0: 1600 fa00 |0024: const-wide/16 v0, #int 250 // #fa │ │ +435de4: 6e30 e560 0601 |0026: invoke-virtual {v6, v0, v1}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +435dea: 2806 |0029: goto 002f // +0006 │ │ +435dec: 5456 e85f |002a: iget-object v6, v5, Lorg/purple/smoke/SteamReaderSimple;.m_readInterval:Ljava/util/concurrent/atomic/AtomicLong; // field@5fe8 │ │ +435df0: 6e30 e560 2603 |002c: invoke-virtual {v6, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +435df6: 5456 e15f |002f: iget-object v6, v5, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe1 │ │ +435dfa: 1210 |0031: const/4 v0, #int 1 // #1 │ │ +435dfc: 6e20 dc60 0600 |0032: invoke-virtual {v6, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +435e02: 6e10 3cbe 0500 |0035: invoke-virtual {v5}, Lorg/purple/smoke/SteamReaderSimple;.cancelReader:()V // method@be3c │ │ +435e08: 5456 e15f |0038: iget-object v6, v5, Lorg/purple/smoke/SteamReaderSimple;.m_canceled:Ljava/util/concurrent/atomic/AtomicBoolean; // field@5fe1 │ │ +435e0c: 1200 |003a: const/4 v0, #int 0 // #0 │ │ +435e0e: 6e20 dc60 0600 |003b: invoke-virtual {v6, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +435e14: 7010 3fbe 0500 |003e: invoke-direct {v5}, Lorg/purple/smoke/SteamReaderSimple;.prepareReader:()V // method@be3f │ │ +435e1a: 0e00 |0041: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=236 │ │ 0x0022 line=249 │ │ 0x002a line=246 │ │ 0x002f line=253 │ │ 0x0035 line=254 │ │ @@ -1191182,71 +1191181,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 │ │ -437cb0: |[437cb0] 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 │ │ -437cc0: 0798 |0000: move-object v8, v9 │ │ -437cc2: 1a05 094d |0001: const-string v5, "TCP" // string@4d09 │ │ -437cc6: 0790 |0003: move-object v0, v9 │ │ -437cc8: 07a1 |0004: move-object v1, v10 │ │ -437cca: 07e2 |0005: move-object v2, v14 │ │ -437ccc: 07f3 |0006: move-object v3, v15 │ │ -437cce: 0804 1000 |0007: move-object/from16 v4, v16 │ │ -437cd2: 0806 1100 |0009: move-object/from16 v6, v17 │ │ -437cd6: 0207 1200 |000b: move/from16 v7, v18 │ │ -437cda: 7608 07bc 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@bc07 │ │ -437ce0: 1200 |0010: const/4 v0, #int 0 // #0 │ │ -437ce2: 5b80 0a60 |0011: iput-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@600a │ │ -437ce6: 5b80 0f60 |0013: iput-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437cea: 1a01 0000 |0015: const-string v1, "" // string@0000 │ │ -437cee: 5b81 0d60 |0017: iput-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyType:Ljava/lang/String; // field@600d │ │ -437cf2: 12f1 |0019: const/4 v1, #int -1 // #ff │ │ -437cf4: 5981 0c60 |001a: iput v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600c │ │ -437cf8: 07b2 |001c: move-object v2, v11 │ │ -437cfa: 5b82 0b60 |001d: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@600b │ │ -437cfe: 7110 555c 0c00 |001f: invoke-static {v12}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@5c55 │ │ -437d04: 0a02 |0022: move-result v2 │ │ -437d06: 5982 0c60 |0023: iput v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600c │ │ -437d0a: 2803 |0025: goto 0028 // +0003 │ │ -437d0c: 5981 0c60 |0026: iput v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600c │ │ -437d10: 07d2 |0028: move-object v2, v13 │ │ -437d12: 5b82 0d60 |0029: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyType:Ljava/lang/String; // field@600d │ │ -437d16: 5482 0b60 |002b: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@600b │ │ -437d1a: 6e10 c35c 0200 |002d: invoke-virtual {v2}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -437d20: 0a02 |0030: move-result v2 │ │ -437d22: 3902 1c00 |0031: if-nez v2, 004d // +001c │ │ -437d26: 5282 0c60 |0033: iget v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600c │ │ -437d2a: 3212 1800 |0035: if-eq v2, v1, 004d // +0018 │ │ -437d2e: 5481 0d60 |0037: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyType:Ljava/lang/String; // field@600d │ │ -437d32: 6e10 c35c 0100 |0039: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -437d38: 0a01 |003c: move-result v1 │ │ -437d3a: 3901 1000 |003d: if-nez v1, 004d // +0010 │ │ -437d3e: 2201 0d0b |003f: new-instance v1, Ljava/net/InetSocketAddress; // type@0b0d │ │ -437d42: 5482 0b60 |0041: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@600b │ │ -437d46: 5283 0c60 |0043: iget v3, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600c │ │ -437d4a: 7030 8e5d 2103 |0045: invoke-direct {v1, v2, v3}, Ljava/net/InetSocketAddress;.:(Ljava/lang/String;I)V // method@5d8e │ │ -437d50: 5b81 0a60 |0048: iput-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@600a │ │ -437d54: 2803 |004a: goto 004d // +0003 │ │ -437d56: 5b80 0a60 |004b: iput-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@600a │ │ -437d5a: 5480 0e60 |004d: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600e │ │ -437d5e: 2201 351b |004f: new-instance v1, Lorg/purple/smoke/TcpNeighbor$1; // type@1b35 │ │ -437d62: 7020 51be 9100 |0051: invoke-direct {v1, v9}, Lorg/purple/smoke/TcpNeighbor$1;.:(Lorg/purple/smoke/TcpNeighbor;)V // method@be51 │ │ -437d68: 1602 0000 |0054: const-wide/16 v2, #int 0 // #0 │ │ -437d6c: 1604 6400 |0056: const-wide/16 v4, #int 100 // #64 │ │ -437d70: 6206 ef2c |0058: sget-object v6, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -437d74: 070a |005a: move-object v10, v0 │ │ -437d76: 071b |005b: move-object v11, v1 │ │ -437d78: 042c |005c: move-wide v12, v2 │ │ -437d7a: 044e |005d: move-wide v14, v4 │ │ -437d7c: 0810 0600 |005e: move-object/from16 v16, v6 │ │ -437d80: 7807 d060 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@60d0 │ │ -437d86: 0e00 |0063: return-void │ │ +437cac: |[437cac] 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 │ │ +437cbc: 0798 |0000: move-object v8, v9 │ │ +437cbe: 1a05 094d |0001: const-string v5, "TCP" // string@4d09 │ │ +437cc2: 0790 |0003: move-object v0, v9 │ │ +437cc4: 07a1 |0004: move-object v1, v10 │ │ +437cc6: 07e2 |0005: move-object v2, v14 │ │ +437cc8: 07f3 |0006: move-object v3, v15 │ │ +437cca: 0804 1000 |0007: move-object/from16 v4, v16 │ │ +437cce: 0806 1100 |0009: move-object/from16 v6, v17 │ │ +437cd2: 0207 1200 |000b: move/from16 v7, v18 │ │ +437cd6: 7608 07bc 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@bc07 │ │ +437cdc: 1200 |0010: const/4 v0, #int 0 // #0 │ │ +437cde: 5b80 0a60 |0011: iput-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@600a │ │ +437ce2: 5b80 0f60 |0013: iput-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437ce6: 1a01 0000 |0015: const-string v1, "" // string@0000 │ │ +437cea: 5b81 0d60 |0017: iput-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyType:Ljava/lang/String; // field@600d │ │ +437cee: 12f1 |0019: const/4 v1, #int -1 // #ff │ │ +437cf0: 5981 0c60 |001a: iput v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600c │ │ +437cf4: 07b2 |001c: move-object v2, v11 │ │ +437cf6: 5b82 0b60 |001d: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@600b │ │ +437cfa: 7110 555c 0c00 |001f: invoke-static {v12}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@5c55 │ │ +437d00: 0a02 |0022: move-result v2 │ │ +437d02: 5982 0c60 |0023: iput v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600c │ │ +437d06: 2803 |0025: goto 0028 // +0003 │ │ +437d08: 5981 0c60 |0026: iput v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600c │ │ +437d0c: 07d2 |0028: move-object v2, v13 │ │ +437d0e: 5b82 0d60 |0029: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyType:Ljava/lang/String; // field@600d │ │ +437d12: 5482 0b60 |002b: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@600b │ │ +437d16: 6e10 c35c 0200 |002d: invoke-virtual {v2}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +437d1c: 0a02 |0030: move-result v2 │ │ +437d1e: 3902 1c00 |0031: if-nez v2, 004d // +001c │ │ +437d22: 5282 0c60 |0033: iget v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600c │ │ +437d26: 3212 1800 |0035: if-eq v2, v1, 004d // +0018 │ │ +437d2a: 5481 0d60 |0037: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyType:Ljava/lang/String; // field@600d │ │ +437d2e: 6e10 c35c 0100 |0039: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +437d34: 0a01 |003c: move-result v1 │ │ +437d36: 3901 1000 |003d: if-nez v1, 004d // +0010 │ │ +437d3a: 2201 0d0b |003f: new-instance v1, Ljava/net/InetSocketAddress; // type@0b0d │ │ +437d3e: 5482 0b60 |0041: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@600b │ │ +437d42: 5283 0c60 |0043: iget v3, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyPort:I // field@600c │ │ +437d46: 7030 8e5d 2103 |0045: invoke-direct {v1, v2, v3}, Ljava/net/InetSocketAddress;.:(Ljava/lang/String;I)V // method@5d8e │ │ +437d4c: 5b81 0a60 |0048: iput-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@600a │ │ +437d50: 2803 |004a: goto 004d // +0003 │ │ +437d52: 5b80 0a60 |004b: iput-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@600a │ │ +437d56: 5480 0e60 |004d: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600e │ │ +437d5a: 2201 351b |004f: new-instance v1, Lorg/purple/smoke/TcpNeighbor$1; // type@1b35 │ │ +437d5e: 7020 51be 9100 |0051: invoke-direct {v1, v9}, Lorg/purple/smoke/TcpNeighbor$1;.:(Lorg/purple/smoke/TcpNeighbor;)V // method@be51 │ │ +437d64: 1602 0000 |0054: const-wide/16 v2, #int 0 // #0 │ │ +437d68: 1604 6400 |0056: const-wide/16 v4, #int 100 // #64 │ │ +437d6c: 6206 ef2c |0058: sget-object v6, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +437d70: 070a |005a: move-object v10, v0 │ │ +437d72: 071b |005b: move-object v11, v1 │ │ +437d74: 042c |005c: move-wide v12, v2 │ │ +437d76: 044e |005d: move-wide v14, v4 │ │ +437d78: 0810 0600 |005e: move-object/from16 v16, v6 │ │ +437d7c: 7807 d060 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@60d0 │ │ +437d82: 0e00 |0063: return-void │ │ catches : 2 │ │ 0x001f - 0x0025 │ │ Ljava/lang/Exception; -> 0x0026 │ │ 0x003f - 0x004a │ │ Ljava/lang/Exception; -> 0x004b │ │ positions : │ │ 0x000d line=277 │ │ @@ -1191280,17 +1191279,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 │ │ -437c98: |[437c98] org.purple.smoke.TcpNeighbor.access$000:(Lorg/purple/smoke/TcpNeighbor;)Ljava/net/Socket; │ │ -437ca8: 5400 0f60 |0000: iget-object v0, v0, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437cac: 1100 |0002: return-object v0 │ │ +437c94: |[437c94] org.purple.smoke.TcpNeighbor.access$000:(Lorg/purple/smoke/TcpNeighbor;)Ljava/net/Socket; │ │ +437ca4: 5400 0f60 |0000: iget-object v0, v0, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437ca8: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=35 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/TcpNeighbor; │ │ │ │ Virtual methods - │ │ @@ -1191299,36 +1191298,36 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 38 16-bit code units │ │ -437da4: |[437da4] org.purple.smoke.TcpNeighbor.abort:()V │ │ -437db4: 6e10 58be 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be58 │ │ -437dba: 6f10 08bc 0500 |0003: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.abort:()V // method@bc08 │ │ -437dc0: 5450 0e60 |0006: iget-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600e │ │ -437dc4: 1d00 |0008: monitor-enter v0 │ │ -437dc6: 5451 0e60 |0009: iget-object v1, v5, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600e │ │ -437dca: 7210 d160 0100 |000b: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60d1 │ │ -437dd0: 2803 |000e: goto 0011 // +0003 │ │ -437dd2: 0d01 |000f: move-exception v1 │ │ -437dd4: 2814 |0010: goto 0024 // +0014 │ │ -437dd6: 5451 0e60 |0011: iget-object v1, v5, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600e │ │ -437dda: 1602 0500 |0013: const-wide/16 v2, #int 5 // #5 │ │ -437dde: 6204 f22c |0015: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ -437de2: 7240 ce60 2143 |0017: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60ce │ │ -437de8: 0a01 |001a: move-result v1 │ │ -437dea: 3901 0700 |001b: if-nez v1, 0022 // +0007 │ │ -437dee: 5451 0e60 |001d: iget-object v1, v5, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600e │ │ -437df2: 7210 d260 0100 |001f: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d2 │ │ -437df8: 1e00 |0022: monitor-exit v0 │ │ -437dfa: 0e00 |0023: return-void │ │ -437dfc: 1e00 |0024: monitor-exit v0 │ │ -437dfe: 2701 |0025: throw v1 │ │ +437da0: |[437da0] org.purple.smoke.TcpNeighbor.abort:()V │ │ +437db0: 6e10 58be 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be58 │ │ +437db6: 6f10 08bc 0500 |0003: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.abort:()V // method@bc08 │ │ +437dbc: 5450 0e60 |0006: iget-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600e │ │ +437dc0: 1d00 |0008: monitor-enter v0 │ │ +437dc2: 5451 0e60 |0009: iget-object v1, v5, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600e │ │ +437dc6: 7210 d160 0100 |000b: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60d1 │ │ +437dcc: 2803 |000e: goto 0011 // +0003 │ │ +437dce: 0d01 |000f: move-exception v1 │ │ +437dd0: 2814 |0010: goto 0024 // +0014 │ │ +437dd2: 5451 0e60 |0011: iget-object v1, v5, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600e │ │ +437dd6: 1602 0500 |0013: const-wide/16 v2, #int 5 // #5 │ │ +437dda: 6204 f22c |0015: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ +437dde: 7240 ce60 2143 |0017: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60ce │ │ +437de4: 0a01 |001a: move-result v1 │ │ +437de6: 3901 0700 |001b: if-nez v1, 0022 // +0007 │ │ +437dea: 5451 0e60 |001d: iget-object v1, v5, Lorg/purple/smoke/TcpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@600e │ │ +437dee: 7210 d260 0100 |001f: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d2 │ │ +437df4: 1e00 |0022: monitor-exit v0 │ │ +437df6: 0e00 |0023: return-void │ │ +437df8: 1e00 |0024: monitor-exit v0 │ │ +437dfa: 2701 |0025: throw v1 │ │ catches : 3 │ │ 0x0009 - 0x000e │ │ Ljava/lang/Exception; -> 0x0011 │ │ -> 0x000f │ │ 0x0011 - 0x0022 │ │ Ljava/lang/Exception; -> 0x0022 │ │ -> 0x000f │ │ @@ -1191351,140 +1191350,140 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 270 16-bit code units │ │ -437e28: |[437e28] org.purple.smoke.TcpNeighbor.connect:()V │ │ -437e38: 6e10 57be 0800 |0000: invoke-virtual {v8}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be57 │ │ -437e3e: 0a00 |0003: move-result v0 │ │ -437e40: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -437e44: 0e00 |0006: return-void │ │ -437e46: 6e10 5cbe 0800 |0007: invoke-virtual {v8}, Lorg/purple/smoke/TcpNeighbor;.isNetworkConnected:()Z // method@be5c │ │ -437e4c: 0a00 |000a: move-result v0 │ │ -437e4e: 3900 0800 |000b: if-nez v0, 0013 // +0008 │ │ -437e52: 1a00 0909 |000d: const-string v0, "A network is not available." // string@0909 │ │ -437e56: 6e20 62be 0800 |000f: invoke-virtual {v8, v0}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be62 │ │ -437e5c: 0e00 |0012: return-void │ │ -437e5e: 5480 ff5f |0013: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@5fff │ │ -437e62: 1601 0000 |0015: const-wide/16 v1, #int 0 // #0 │ │ -437e66: 6e30 e560 1002 |0017: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -437e6c: 5480 0060 |001a: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@6000 │ │ -437e70: 6e30 e560 1002 |001c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -437e76: 5480 0260 |001f: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6002 │ │ -437e7a: 1201 |0021: const/4 v1, #int 0 // #0 │ │ -437e7c: 6e20 dc60 1000 |0022: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -437e82: 5480 0560 |0025: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6005 │ │ -437e86: 7100 065d 0000 |0027: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -437e8c: 0b02 |002a: move-result-wide v2 │ │ -437e8e: 6e30 e560 2003 |002b: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -437e94: 5480 0660 |002e: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6006 │ │ -437e98: 7100 0b5d 0000 |0030: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -437e9e: 0b02 |0033: move-result-wide v2 │ │ -437ea0: 6e30 e560 2003 |0034: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -437ea6: 2200 0d0b |0037: new-instance v0, Ljava/net/InetSocketAddress; // type@0b0d │ │ -437eaa: 5482 0360 |0039: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_ipAddress:Ljava/lang/String; // field@6003 │ │ -437eae: 5483 0460 |003b: iget-object v3, v8, Lorg/purple/smoke/TcpNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@6004 │ │ -437eb2: 6e10 de60 0300 |003d: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -437eb8: 0a03 |0040: move-result v3 │ │ -437eba: 7030 8e5d 2003 |0041: invoke-direct {v0, v2, v3}, Ljava/net/InetSocketAddress;.:(Ljava/lang/String;I)V // method@5d8e │ │ -437ec0: 5482 0a60 |0044: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@600a │ │ -437ec4: 1303 1027 |0046: const/16 v3, #int 10000 // #2710 │ │ -437ec8: 1504 0100 |0048: const/high16 v4, #int 65536 // #1 │ │ -437ecc: 3902 1700 |004a: if-nez v2, 0061 // +0017 │ │ -437ed0: 2202 120b |004c: new-instance v2, Ljava/net/Socket; // type@0b12 │ │ -437ed4: 7010 9e5d 0200 |004e: invoke-direct {v2}, Ljava/net/Socket;.:()V // method@5d9e │ │ -437eda: 5b82 0f60 |0051: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437ede: 6e20 aa5d 4200 |0053: invoke-virtual {v2, v4}, Ljava/net/Socket;.setReceiveBufferSize:(I)V // method@5daa │ │ -437ee4: 5482 0f60 |0056: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437ee8: 6e20 ab5d 4200 |0058: invoke-virtual {v2, v4}, Ljava/net/Socket;.setSendBufferSize:(I)V // method@5dab │ │ -437eee: 5482 0f60 |005b: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437ef2: 6e30 a25d 0203 |005d: invoke-virtual {v2, v0, v3}, Ljava/net/Socket;.connect:(Ljava/net/SocketAddress;I)V // method@5da2 │ │ -437ef8: 283b |0060: goto 009b // +003b │ │ -437efa: 5482 0d60 |0061: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyType:Ljava/lang/String; // field@600d │ │ -437efe: 1a05 741c |0063: const-string v5, "HTTP" // string@1c74 │ │ -437f02: 6e20 b85c 5200 |0065: invoke-virtual {v2, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -437f08: 0a02 |0068: move-result v2 │ │ -437f0a: 3802 1300 |0069: if-eqz v2, 007c // +0013 │ │ -437f0e: 2202 120b |006b: new-instance v2, Ljava/net/Socket; // type@0b12 │ │ -437f12: 2205 110b |006d: new-instance v5, Ljava/net/Proxy; // type@0b11 │ │ -437f16: 6206 e12c |006f: sget-object v6, Ljava/net/Proxy$Type;.HTTP:Ljava/net/Proxy$Type; // field@2ce1 │ │ -437f1a: 5487 0a60 |0071: iget-object v7, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@600a │ │ -437f1e: 7030 9d5d 6507 |0073: invoke-direct {v5, v6, v7}, Ljava/net/Proxy;.:(Ljava/net/Proxy$Type;Ljava/net/SocketAddress;)V // method@5d9d │ │ -437f24: 7020 9f5d 5200 |0076: invoke-direct {v2, v5}, Ljava/net/Socket;.:(Ljava/net/Proxy;)V // method@5d9f │ │ -437f2a: 5b82 0f60 |0079: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437f2e: 2811 |007b: goto 008c // +0011 │ │ -437f30: 2202 120b |007c: new-instance v2, Ljava/net/Socket; // type@0b12 │ │ -437f34: 2205 110b |007e: new-instance v5, Ljava/net/Proxy; // type@0b11 │ │ -437f38: 6206 e22c |0080: sget-object v6, Ljava/net/Proxy$Type;.SOCKS:Ljava/net/Proxy$Type; // field@2ce2 │ │ -437f3c: 5487 0a60 |0082: iget-object v7, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@600a │ │ -437f40: 7030 9d5d 6507 |0084: invoke-direct {v5, v6, v7}, Ljava/net/Proxy;.:(Ljava/net/Proxy$Type;Ljava/net/SocketAddress;)V // method@5d9d │ │ -437f46: 7020 9f5d 5200 |0087: invoke-direct {v2, v5}, Ljava/net/Socket;.:(Ljava/net/Proxy;)V // method@5d9f │ │ -437f4c: 5b82 0f60 |008a: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437f50: 5482 0f60 |008c: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437f54: 6e20 aa5d 4200 |008e: invoke-virtual {v2, v4}, Ljava/net/Socket;.setReceiveBufferSize:(I)V // method@5daa │ │ -437f5a: 5482 0f60 |0091: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437f5e: 6e20 ab5d 4200 |0093: invoke-virtual {v2, v4}, Ljava/net/Socket;.setSendBufferSize:(I)V // method@5dab │ │ -437f64: 5482 0f60 |0096: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437f68: 6e30 a25d 0203 |0098: invoke-virtual {v2, v0, v3}, Ljava/net/Socket;.connect:(Ljava/net/SocketAddress;I)V // method@5da2 │ │ -437f6e: 5480 0f60 |009b: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437f72: 1212 |009d: const/4 v2, #int 1 // #1 │ │ -437f74: 6e30 ac5d 2001 |009e: invoke-virtual {v0, v2, v1}, Ljava/net/Socket;.setSoLinger:(ZI)V // method@5dac │ │ -437f7a: 5480 0f60 |00a1: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437f7e: 6e20 ad5d 3000 |00a3: invoke-virtual {v0, v3}, Ljava/net/Socket;.setSoTimeout:(I)V // method@5dad │ │ -437f84: 5480 0f60 |00a6: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437f88: 6e20 ae5d 2000 |00a8: invoke-virtual {v0, v2}, Ljava/net/Socket;.setTcpNoDelay:(Z)V // method@5dae │ │ -437f8e: 5480 1060 |00ab: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6010 │ │ -437f92: 7100 0b5d 0000 |00ad: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -437f98: 0b01 |00b0: move-result-wide v1 │ │ -437f9a: 6e30 e560 1002 |00b1: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -437fa0: 1a00 0000 |00b4: const-string v0, "" // string@0000 │ │ -437fa4: 6e20 62be 0800 |00b6: invoke-virtual {v8, v0}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be62 │ │ -437faa: 5480 0960 |00b9: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_passthrough:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6009 │ │ -437fae: 6e10 da60 0000 |00bb: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -437fb4: 0a00 |00be: move-result v0 │ │ -437fb6: 3900 0f00 |00bf: if-nez v0, 00ce // +000f │ │ -437fba: 7100 10bb 0000 |00c1: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -437fc0: 0c00 |00c4: move-result-object v0 │ │ -437fc2: 5481 0160 |00c5: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@6001 │ │ -437fc6: 6e10 c1b9 0100 |00c7: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.sipHashId:()Ljava/lang/String; // method@b9c1 │ │ -437fcc: 0c01 |00ca: move-result-object v1 │ │ -437fce: 6e20 20bb 1000 |00cb: invoke-virtual {v0, v1}, Lorg/purple/smoke/Kernel;.retrieveChatMessages:(Ljava/lang/String;)V // method@bb20 │ │ -437fd4: 1a00 fd91 |00ce: const-string v0, "org.purple.smoke.neighbor_connected" // string@91fd │ │ -437fd8: 7110 f7bb 0000 |00d0: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf7 │ │ -437fde: 5480 0760 |00d3: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_mutex:Ljava/lang/Object; // field@6007 │ │ -437fe2: 1d00 |00d5: monitor-enter v0 │ │ -437fe4: 5481 0760 |00d6: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_mutex:Ljava/lang/Object; // field@6007 │ │ -437fe8: 6e10 955c 0100 |00d8: invoke-virtual {v1}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ -437fee: 1e00 |00db: monitor-exit v0 │ │ -437ff0: 2831 |00dc: goto 010d // +0031 │ │ -437ff2: 0d01 |00dd: move-exception v1 │ │ -437ff4: 1e00 |00de: monitor-exit v0 │ │ -437ff6: 2701 |00df: throw v1 │ │ -437ff8: 0d00 |00e0: move-exception v0 │ │ -437ffa: 2201 f10a |00e1: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -437ffe: 7010 ee5c 0100 |00e3: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -438004: 1a02 6a0d |00e6: const-string v2, "An error (" // string@0d6a │ │ -438008: 6e20 f95c 2100 |00e8: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43800e: 6e10 375c 0000 |00eb: invoke-virtual {v0}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ -438014: 0c00 |00ee: move-result-object v0 │ │ -438016: 6e20 f95c 0100 |00ef: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43801c: 1a00 fe03 |00f2: const-string v0, ") occurred while attempting a connection (" // string@03fe │ │ -438020: 6e20 f95c 0100 |00f4: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -438026: 7100 0b5d 0000 |00f7: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -43802c: 0b02 |00fa: move-result-wide v2 │ │ -43802e: 6e30 f55c 2103 |00fb: invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@5cf5 │ │ -438034: 1a00 0c04 |00fe: const-string v0, ")." // string@040c │ │ -438038: 6e20 f95c 0100 |0100: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -43803e: 6e10 035d 0100 |0103: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -438044: 0c00 |0106: move-result-object v0 │ │ -438046: 6e20 62be 0800 |0107: invoke-virtual {v8, v0}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be62 │ │ -43804c: 6e10 58be 0800 |010a: invoke-virtual {v8}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be58 │ │ -438052: 0e00 |010d: return-void │ │ +437e24: |[437e24] org.purple.smoke.TcpNeighbor.connect:()V │ │ +437e34: 6e10 57be 0800 |0000: invoke-virtual {v8}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be57 │ │ +437e3a: 0a00 |0003: move-result v0 │ │ +437e3c: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +437e40: 0e00 |0006: return-void │ │ +437e42: 6e10 5cbe 0800 |0007: invoke-virtual {v8}, Lorg/purple/smoke/TcpNeighbor;.isNetworkConnected:()Z // method@be5c │ │ +437e48: 0a00 |000a: move-result v0 │ │ +437e4a: 3900 0800 |000b: if-nez v0, 0013 // +0008 │ │ +437e4e: 1a00 0909 |000d: const-string v0, "A network is not available." // string@0909 │ │ +437e52: 6e20 62be 0800 |000f: invoke-virtual {v8, v0}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be62 │ │ +437e58: 0e00 |0012: return-void │ │ +437e5a: 5480 ff5f |0013: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@5fff │ │ +437e5e: 1601 0000 |0015: const-wide/16 v1, #int 0 // #0 │ │ +437e62: 6e30 e560 1002 |0017: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +437e68: 5480 0060 |001a: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@6000 │ │ +437e6c: 6e30 e560 1002 |001c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +437e72: 5480 0260 |001f: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6002 │ │ +437e76: 1201 |0021: const/4 v1, #int 0 // #0 │ │ +437e78: 6e20 dc60 1000 |0022: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +437e7e: 5480 0560 |0025: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6005 │ │ +437e82: 7100 065d 0000 |0027: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +437e88: 0b02 |002a: move-result-wide v2 │ │ +437e8a: 6e30 e560 2003 |002b: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +437e90: 5480 0660 |002e: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6006 │ │ +437e94: 7100 0b5d 0000 |0030: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +437e9a: 0b02 |0033: move-result-wide v2 │ │ +437e9c: 6e30 e560 2003 |0034: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +437ea2: 2200 0d0b |0037: new-instance v0, Ljava/net/InetSocketAddress; // type@0b0d │ │ +437ea6: 5482 0360 |0039: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_ipAddress:Ljava/lang/String; // field@6003 │ │ +437eaa: 5483 0460 |003b: iget-object v3, v8, Lorg/purple/smoke/TcpNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@6004 │ │ +437eae: 6e10 de60 0300 |003d: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +437eb4: 0a03 |0040: move-result v3 │ │ +437eb6: 7030 8e5d 2003 |0041: invoke-direct {v0, v2, v3}, Ljava/net/InetSocketAddress;.:(Ljava/lang/String;I)V // method@5d8e │ │ +437ebc: 5482 0a60 |0044: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@600a │ │ +437ec0: 1303 1027 |0046: const/16 v3, #int 10000 // #2710 │ │ +437ec4: 1504 0100 |0048: const/high16 v4, #int 65536 // #1 │ │ +437ec8: 3902 1700 |004a: if-nez v2, 0061 // +0017 │ │ +437ecc: 2202 120b |004c: new-instance v2, Ljava/net/Socket; // type@0b12 │ │ +437ed0: 7010 9e5d 0200 |004e: invoke-direct {v2}, Ljava/net/Socket;.:()V // method@5d9e │ │ +437ed6: 5b82 0f60 |0051: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437eda: 6e20 aa5d 4200 |0053: invoke-virtual {v2, v4}, Ljava/net/Socket;.setReceiveBufferSize:(I)V // method@5daa │ │ +437ee0: 5482 0f60 |0056: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437ee4: 6e20 ab5d 4200 |0058: invoke-virtual {v2, v4}, Ljava/net/Socket;.setSendBufferSize:(I)V // method@5dab │ │ +437eea: 5482 0f60 |005b: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437eee: 6e30 a25d 0203 |005d: invoke-virtual {v2, v0, v3}, Ljava/net/Socket;.connect:(Ljava/net/SocketAddress;I)V // method@5da2 │ │ +437ef4: 283b |0060: goto 009b // +003b │ │ +437ef6: 5482 0d60 |0061: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyType:Ljava/lang/String; // field@600d │ │ +437efa: 1a05 741c |0063: const-string v5, "HTTP" // string@1c74 │ │ +437efe: 6e20 b85c 5200 |0065: invoke-virtual {v2, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +437f04: 0a02 |0068: move-result v2 │ │ +437f06: 3802 1300 |0069: if-eqz v2, 007c // +0013 │ │ +437f0a: 2202 120b |006b: new-instance v2, Ljava/net/Socket; // type@0b12 │ │ +437f0e: 2205 110b |006d: new-instance v5, Ljava/net/Proxy; // type@0b11 │ │ +437f12: 6206 e12c |006f: sget-object v6, Ljava/net/Proxy$Type;.HTTP:Ljava/net/Proxy$Type; // field@2ce1 │ │ +437f16: 5487 0a60 |0071: iget-object v7, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@600a │ │ +437f1a: 7030 9d5d 6507 |0073: invoke-direct {v5, v6, v7}, Ljava/net/Proxy;.:(Ljava/net/Proxy$Type;Ljava/net/SocketAddress;)V // method@5d9d │ │ +437f20: 7020 9f5d 5200 |0076: invoke-direct {v2, v5}, Ljava/net/Socket;.:(Ljava/net/Proxy;)V // method@5d9f │ │ +437f26: 5b82 0f60 |0079: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437f2a: 2811 |007b: goto 008c // +0011 │ │ +437f2c: 2202 120b |007c: new-instance v2, Ljava/net/Socket; // type@0b12 │ │ +437f30: 2205 110b |007e: new-instance v5, Ljava/net/Proxy; // type@0b11 │ │ +437f34: 6206 e22c |0080: sget-object v6, Ljava/net/Proxy$Type;.SOCKS:Ljava/net/Proxy$Type; // field@2ce2 │ │ +437f38: 5487 0a60 |0082: iget-object v7, v8, Lorg/purple/smoke/TcpNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@600a │ │ +437f3c: 7030 9d5d 6507 |0084: invoke-direct {v5, v6, v7}, Ljava/net/Proxy;.:(Ljava/net/Proxy$Type;Ljava/net/SocketAddress;)V // method@5d9d │ │ +437f42: 7020 9f5d 5200 |0087: invoke-direct {v2, v5}, Ljava/net/Socket;.:(Ljava/net/Proxy;)V // method@5d9f │ │ +437f48: 5b82 0f60 |008a: iput-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437f4c: 5482 0f60 |008c: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437f50: 6e20 aa5d 4200 |008e: invoke-virtual {v2, v4}, Ljava/net/Socket;.setReceiveBufferSize:(I)V // method@5daa │ │ +437f56: 5482 0f60 |0091: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437f5a: 6e20 ab5d 4200 |0093: invoke-virtual {v2, v4}, Ljava/net/Socket;.setSendBufferSize:(I)V // method@5dab │ │ +437f60: 5482 0f60 |0096: iget-object v2, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437f64: 6e30 a25d 0203 |0098: invoke-virtual {v2, v0, v3}, Ljava/net/Socket;.connect:(Ljava/net/SocketAddress;I)V // method@5da2 │ │ +437f6a: 5480 0f60 |009b: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437f6e: 1212 |009d: const/4 v2, #int 1 // #1 │ │ +437f70: 6e30 ac5d 2001 |009e: invoke-virtual {v0, v2, v1}, Ljava/net/Socket;.setSoLinger:(ZI)V // method@5dac │ │ +437f76: 5480 0f60 |00a1: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437f7a: 6e20 ad5d 3000 |00a3: invoke-virtual {v0, v3}, Ljava/net/Socket;.setSoTimeout:(I)V // method@5dad │ │ +437f80: 5480 0f60 |00a6: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437f84: 6e20 ae5d 2000 |00a8: invoke-virtual {v0, v2}, Ljava/net/Socket;.setTcpNoDelay:(Z)V // method@5dae │ │ +437f8a: 5480 1060 |00ab: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6010 │ │ +437f8e: 7100 0b5d 0000 |00ad: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +437f94: 0b01 |00b0: move-result-wide v1 │ │ +437f96: 6e30 e560 1002 |00b1: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +437f9c: 1a00 0000 |00b4: const-string v0, "" // string@0000 │ │ +437fa0: 6e20 62be 0800 |00b6: invoke-virtual {v8, v0}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be62 │ │ +437fa6: 5480 0960 |00b9: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_passthrough:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6009 │ │ +437faa: 6e10 da60 0000 |00bb: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +437fb0: 0a00 |00be: move-result v0 │ │ +437fb2: 3900 0f00 |00bf: if-nez v0, 00ce // +000f │ │ +437fb6: 7100 10bb 0000 |00c1: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +437fbc: 0c00 |00c4: move-result-object v0 │ │ +437fbe: 5481 0160 |00c5: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_cryptography:Lorg/purple/smoke/Cryptography; // field@6001 │ │ +437fc2: 6e10 c1b9 0100 |00c7: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.sipHashId:()Ljava/lang/String; // method@b9c1 │ │ +437fc8: 0c01 |00ca: move-result-object v1 │ │ +437fca: 6e20 20bb 1000 |00cb: invoke-virtual {v0, v1}, Lorg/purple/smoke/Kernel;.retrieveChatMessages:(Ljava/lang/String;)V // method@bb20 │ │ +437fd0: 1a00 fd91 |00ce: const-string v0, "org.purple.smoke.neighbor_connected" // string@91fd │ │ +437fd4: 7110 f7bb 0000 |00d0: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.sendBroadcast:(Ljava/lang/String;)V // method@bbf7 │ │ +437fda: 5480 0760 |00d3: iget-object v0, v8, Lorg/purple/smoke/TcpNeighbor;.m_mutex:Ljava/lang/Object; // field@6007 │ │ +437fde: 1d00 |00d5: monitor-enter v0 │ │ +437fe0: 5481 0760 |00d6: iget-object v1, v8, Lorg/purple/smoke/TcpNeighbor;.m_mutex:Ljava/lang/Object; // field@6007 │ │ +437fe4: 6e10 955c 0100 |00d8: invoke-virtual {v1}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ +437fea: 1e00 |00db: monitor-exit v0 │ │ +437fec: 2831 |00dc: goto 010d // +0031 │ │ +437fee: 0d01 |00dd: move-exception v1 │ │ +437ff0: 1e00 |00de: monitor-exit v0 │ │ +437ff2: 2701 |00df: throw v1 │ │ +437ff4: 0d00 |00e0: move-exception v0 │ │ +437ff6: 2201 f10a |00e1: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +437ffa: 7010 ee5c 0100 |00e3: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +438000: 1a02 6a0d |00e6: const-string v2, "An error (" // string@0d6a │ │ +438004: 6e20 f95c 2100 |00e8: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43800a: 6e10 375c 0000 |00eb: invoke-virtual {v0}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ +438010: 0c00 |00ee: move-result-object v0 │ │ +438012: 6e20 f95c 0100 |00ef: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +438018: 1a00 fe03 |00f2: const-string v0, ") occurred while attempting a connection (" // string@03fe │ │ +43801c: 6e20 f95c 0100 |00f4: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +438022: 7100 0b5d 0000 |00f7: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +438028: 0b02 |00fa: move-result-wide v2 │ │ +43802a: 6e30 f55c 2103 |00fb: invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@5cf5 │ │ +438030: 1a00 0c04 |00fe: const-string v0, ")." // string@040c │ │ +438034: 6e20 f95c 0100 |0100: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43803a: 6e10 035d 0100 |0103: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +438040: 0c00 |0106: move-result-object v0 │ │ +438042: 6e20 62be 0800 |0107: invoke-virtual {v8, v0}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be62 │ │ +438048: 6e10 58be 0800 |010a: invoke-virtual {v8}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be58 │ │ +43804e: 0e00 |010d: return-void │ │ catches : 3 │ │ 0x0013 - 0x00d6 │ │ Ljava/lang/Exception; -> 0x00e0 │ │ 0x00d6 - 0x00df │ │ -> 0x00dd │ │ 0x00df - 0x00e0 │ │ Ljava/lang/Exception; -> 0x00e0 │ │ @@ -1191535,26 +1191534,26 @@ │ │ type : '()Z' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 19 16-bit code units │ │ -4379d4: |[4379d4] org.purple.smoke.TcpNeighbor.connected:()Z │ │ -4379e4: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -4379e6: 6e10 5cbe 0200 |0001: invoke-virtual {v2}, Lorg/purple/smoke/TcpNeighbor;.isNetworkConnected:()Z // method@be5c │ │ -4379ec: 0a01 |0004: move-result v1 │ │ -4379ee: 3801 0d00 |0005: if-eqz v1, 0012 // +000d │ │ -4379f2: 5421 0f60 |0007: iget-object v1, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -4379f6: 3801 0900 |0009: if-eqz v1, 0012 // +0009 │ │ -4379fa: 6e10 a95d 0100 |000b: invoke-virtual {v1}, Ljava/net/Socket;.isClosed:()Z // method@5da9 │ │ -437a00: 0a01 |000e: move-result v1 │ │ -437a02: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ -437a06: 1210 |0011: const/4 v0, #int 1 // #1 │ │ -437a08: 0f00 |0012: return v0 │ │ +4379d0: |[4379d0] org.purple.smoke.TcpNeighbor.connected:()Z │ │ +4379e0: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +4379e2: 6e10 5cbe 0200 |0001: invoke-virtual {v2}, Lorg/purple/smoke/TcpNeighbor;.isNetworkConnected:()Z // method@be5c │ │ +4379e8: 0a01 |0004: move-result v1 │ │ +4379ea: 3801 0d00 |0005: if-eqz v1, 0012 // +000d │ │ +4379ee: 5421 0f60 |0007: iget-object v1, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +4379f2: 3801 0900 |0009: if-eqz v1, 0012 // +0009 │ │ +4379f6: 6e10 a95d 0100 |000b: invoke-virtual {v1}, Ljava/net/Socket;.isClosed:()Z // method@5da9 │ │ +4379fc: 0a01 |000e: move-result v1 │ │ +4379fe: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ +437a02: 1210 |0011: const/4 v0, #int 1 // #1 │ │ +437a04: 0f00 |0012: return v0 │ │ catches : 1 │ │ 0x0001 - 0x000f │ │ Ljava/lang/Exception; -> 0x0012 │ │ positions : │ │ 0x0001 line=70 │ │ 0x000b line=72 │ │ locals : │ │ @@ -1191565,53 +1191564,53 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 83 16-bit code units │ │ -438078: |[438078] org.purple.smoke.TcpNeighbor.disconnect:()V │ │ -438088: 6f10 15bc 0500 |0000: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.disconnect:()V // method@bc15 │ │ -43808e: 5450 0f60 |0003: iget-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -438092: 3800 0500 |0005: if-eqz v0, 000a // +0005 │ │ -438096: 6e10 af5d 0000 |0007: invoke-virtual {v0}, Ljava/net/Socket;.shutdownInput:()V // method@5daf │ │ -43809c: 5450 0f60 |000a: iget-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -4380a0: 3800 0500 |000c: if-eqz v0, 0011 // +0005 │ │ -4380a4: 6e10 b05d 0000 |000e: invoke-virtual {v0}, Ljava/net/Socket;.shutdownOutput:()V // method@5db0 │ │ -4380aa: 1200 |0011: const/4 v0, #int 0 // #0 │ │ -4380ac: 1601 0000 |0012: const-wide/16 v1, #int 0 // #0 │ │ -4380b0: 5453 0f60 |0014: iget-object v3, v5, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -4380b4: 3803 2200 |0016: if-eqz v3, 0038 // +0022 │ │ -4380b8: 6e10 a15d 0300 |0018: invoke-virtual {v3}, Ljava/net/Socket;.close:()V // method@5da1 │ │ -4380be: 281d |001b: goto 0038 // +001d │ │ -4380c0: 0d03 |001c: move-exception v3 │ │ -4380c2: 5454 ff5f |001d: iget-object v4, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@5fff │ │ -4380c6: 6e30 e560 1402 |001f: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -4380cc: 5454 0060 |0022: iget-object v4, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@6000 │ │ -4380d0: 6e30 e560 1402 |0024: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -4380d6: 5454 0560 |0027: iget-object v4, v5, Lorg/purple/smoke/TcpNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6005 │ │ -4380da: 6e30 e560 1402 |0029: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -4380e0: 5b50 0f60 |002c: iput-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -4380e4: 5450 1060 |002e: iget-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6010 │ │ -4380e8: 7100 0b5d 0000 |0030: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -4380ee: 0b01 |0033: move-result-wide v1 │ │ -4380f0: 6e30 e560 1002 |0034: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -4380f6: 2703 |0037: throw v3 │ │ -4380f8: 5453 ff5f |0038: iget-object v3, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@5fff │ │ -4380fc: 6e30 e560 1302 |003a: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -438102: 5453 0060 |003d: iget-object v3, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@6000 │ │ -438106: 6e30 e560 1302 |003f: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43810c: 5453 0560 |0042: iget-object v3, v5, Lorg/purple/smoke/TcpNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6005 │ │ -438110: 6e30 e560 1302 |0044: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -438116: 5b50 0f60 |0047: iput-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -43811a: 5450 1060 |0049: iget-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6010 │ │ -43811e: 7100 0b5d 0000 |004b: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -438124: 0b01 |004e: move-result-wide v1 │ │ -438126: 6e30 e560 1002 |004f: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43812c: 0e00 |0052: return-void │ │ +438074: |[438074] org.purple.smoke.TcpNeighbor.disconnect:()V │ │ +438084: 6f10 15bc 0500 |0000: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.disconnect:()V // method@bc15 │ │ +43808a: 5450 0f60 |0003: iget-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +43808e: 3800 0500 |0005: if-eqz v0, 000a // +0005 │ │ +438092: 6e10 af5d 0000 |0007: invoke-virtual {v0}, Ljava/net/Socket;.shutdownInput:()V // method@5daf │ │ +438098: 5450 0f60 |000a: iget-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +43809c: 3800 0500 |000c: if-eqz v0, 0011 // +0005 │ │ +4380a0: 6e10 b05d 0000 |000e: invoke-virtual {v0}, Ljava/net/Socket;.shutdownOutput:()V // method@5db0 │ │ +4380a6: 1200 |0011: const/4 v0, #int 0 // #0 │ │ +4380a8: 1601 0000 |0012: const-wide/16 v1, #int 0 // #0 │ │ +4380ac: 5453 0f60 |0014: iget-object v3, v5, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +4380b0: 3803 2200 |0016: if-eqz v3, 0038 // +0022 │ │ +4380b4: 6e10 a15d 0300 |0018: invoke-virtual {v3}, Ljava/net/Socket;.close:()V // method@5da1 │ │ +4380ba: 281d |001b: goto 0038 // +001d │ │ +4380bc: 0d03 |001c: move-exception v3 │ │ +4380be: 5454 ff5f |001d: iget-object v4, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@5fff │ │ +4380c2: 6e30 e560 1402 |001f: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +4380c8: 5454 0060 |0022: iget-object v4, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@6000 │ │ +4380cc: 6e30 e560 1402 |0024: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +4380d2: 5454 0560 |0027: iget-object v4, v5, Lorg/purple/smoke/TcpNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6005 │ │ +4380d6: 6e30 e560 1402 |0029: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +4380dc: 5b50 0f60 |002c: iput-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +4380e0: 5450 1060 |002e: iget-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6010 │ │ +4380e4: 7100 0b5d 0000 |0030: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +4380ea: 0b01 |0033: move-result-wide v1 │ │ +4380ec: 6e30 e560 1002 |0034: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +4380f2: 2703 |0037: throw v3 │ │ +4380f4: 5453 ff5f |0038: iget-object v3, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@5fff │ │ +4380f8: 6e30 e560 1302 |003a: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +4380fe: 5453 0060 |003d: iget-object v3, v5, Lorg/purple/smoke/TcpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@6000 │ │ +438102: 6e30 e560 1302 |003f: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +438108: 5453 0560 |0042: iget-object v3, v5, Lorg/purple/smoke/TcpNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6005 │ │ +43810c: 6e30 e560 1302 |0044: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +438112: 5b50 0f60 |0047: iput-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +438116: 5450 1060 |0049: iget-object v0, v5, Lorg/purple/smoke/TcpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6010 │ │ +43811a: 7100 0b5d 0000 |004b: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +438120: 0b01 |004e: move-result-wide v1 │ │ +438122: 6e30 e560 1002 |004f: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +438128: 0e00 |0052: return-void │ │ catches : 3 │ │ 0x0003 - 0x000a │ │ Ljava/lang/Exception; -> 0x000a │ │ 0x000a - 0x0011 │ │ Ljava/lang/Exception; -> 0x0011 │ │ 0x0014 - 0x001b │ │ Ljava/lang/Exception; -> 0x0038 │ │ @@ -1191643,36 +1191642,36 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 38 16-bit code units │ │ -437b38: |[437b38] org.purple.smoke.TcpNeighbor.getLocalIp:()Ljava/lang/String; │ │ -437b48: 5420 0f60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437b4c: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ -437b50: 6e10 a55d 0000 |0004: invoke-virtual {v0}, Ljava/net/Socket;.getLocalAddress:()Ljava/net/InetAddress; // method@5da5 │ │ -437b56: 0c00 |0007: move-result-object v0 │ │ -437b58: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ -437b5c: 5420 0f60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437b60: 6e10 a55d 0000 |000c: invoke-virtual {v0}, Ljava/net/Socket;.getLocalAddress:()Ljava/net/InetAddress; // method@5da5 │ │ -437b66: 0c00 |000f: move-result-object v0 │ │ -437b68: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ -437b6e: 0c00 |0013: move-result-object v0 │ │ -437b70: 1100 |0014: return-object v0 │ │ -437b72: 0000 |0015: nop // spacer │ │ -437b74: 5420 1260 |0016: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_version:Ljava/lang/String; // field@6012 │ │ -437b78: 1a01 a81d |0018: const-string v1, "IPv4" // string@1da8 │ │ -437b7c: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -437b82: 0a00 |001d: move-result v0 │ │ -437b84: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ -437b88: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ -437b8c: 1100 |0022: return-object v0 │ │ -437b8e: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ -437b92: 1100 |0025: return-object v0 │ │ +437b34: |[437b34] org.purple.smoke.TcpNeighbor.getLocalIp:()Ljava/lang/String; │ │ +437b44: 5420 0f60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437b48: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ +437b4c: 6e10 a55d 0000 |0004: invoke-virtual {v0}, Ljava/net/Socket;.getLocalAddress:()Ljava/net/InetAddress; // method@5da5 │ │ +437b52: 0c00 |0007: move-result-object v0 │ │ +437b54: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ +437b58: 5420 0f60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437b5c: 6e10 a55d 0000 |000c: invoke-virtual {v0}, Ljava/net/Socket;.getLocalAddress:()Ljava/net/InetAddress; // method@5da5 │ │ +437b62: 0c00 |000f: move-result-object v0 │ │ +437b64: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ +437b6a: 0c00 |0013: move-result-object v0 │ │ +437b6c: 1100 |0014: return-object v0 │ │ +437b6e: 0000 |0015: nop // spacer │ │ +437b70: 5420 1260 |0016: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_version:Ljava/lang/String; // field@6012 │ │ +437b74: 1a01 a81d |0018: const-string v1, "IPv4" // string@1da8 │ │ +437b78: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +437b7e: 0a00 |001d: move-result v0 │ │ +437b80: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ +437b84: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ +437b88: 1100 |0022: return-object v0 │ │ +437b8a: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ +437b8e: 1100 |0025: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x0014 │ │ Ljava/lang/Exception; -> 0x0015 │ │ positions : │ │ 0x0000 line=48 │ │ 0x000a line=49 │ │ 0x0016 line=55 │ │ @@ -1191684,26 +1191683,26 @@ │ │ type : '()I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 19 16-bit code units │ │ -437a1c: |[437a1c] org.purple.smoke.TcpNeighbor.getLocalPort:()I │ │ -437a2c: 5410 0f60 |0000: iget-object v0, v1, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437a30: 3800 0f00 |0002: if-eqz v0, 0011 // +000f │ │ -437a34: 6e10 a95d 0000 |0004: invoke-virtual {v0}, Ljava/net/Socket;.isClosed:()Z // method@5da9 │ │ -437a3a: 0a00 |0007: move-result v0 │ │ -437a3c: 3900 0900 |0008: if-nez v0, 0011 // +0009 │ │ -437a40: 5410 0f60 |000a: iget-object v0, v1, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437a44: 6e10 a65d 0000 |000c: invoke-virtual {v0}, Ljava/net/Socket;.getLocalPort:()I // method@5da6 │ │ -437a4a: 0a00 |000f: move-result v0 │ │ -437a4c: 0f00 |0010: return v0 │ │ -437a4e: 1200 |0011: const/4 v0, #int 0 // #0 │ │ -437a50: 0f00 |0012: return v0 │ │ +437a18: |[437a18] org.purple.smoke.TcpNeighbor.getLocalPort:()I │ │ +437a28: 5410 0f60 |0000: iget-object v0, v1, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437a2c: 3800 0f00 |0002: if-eqz v0, 0011 // +000f │ │ +437a30: 6e10 a95d 0000 |0004: invoke-virtual {v0}, Ljava/net/Socket;.isClosed:()Z // method@5da9 │ │ +437a36: 0a00 |0007: move-result v0 │ │ +437a38: 3900 0900 |0008: if-nez v0, 0011 // +0009 │ │ +437a3c: 5410 0f60 |000a: iget-object v0, v1, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437a40: 6e10 a65d 0000 |000c: invoke-virtual {v0}, Ljava/net/Socket;.getLocalPort:()I // method@5da6 │ │ +437a46: 0a00 |000f: move-result v0 │ │ +437a48: 0f00 |0010: return v0 │ │ +437a4a: 1200 |0011: const/4 v0, #int 0 // #0 │ │ +437a4c: 0f00 |0012: return v0 │ │ catches : 1 │ │ 0x0000 - 0x0010 │ │ Ljava/lang/Exception; -> 0x0011 │ │ positions : │ │ 0x0000 line=85 │ │ 0x000a line=86 │ │ locals : │ │ @@ -1191714,52 +1191713,52 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -437ba4: |[437ba4] org.purple.smoke.TcpNeighbor.getSessionCipher:()Ljava/lang/String; │ │ -437bb4: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ -437bb8: 1100 |0002: return-object v0 │ │ +437ba0: |[437ba0] org.purple.smoke.TcpNeighbor.getSessionCipher:()Ljava/lang/String; │ │ +437bb0: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ +437bb4: 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 │ │ -437bbc: |[437bbc] org.purple.smoke.TcpNeighbor.remoteIpAddress:()Ljava/lang/String; │ │ -437bcc: 5420 0f60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437bd0: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ -437bd4: 6e10 a35d 0000 |0004: invoke-virtual {v0}, Ljava/net/Socket;.getInetAddress:()Ljava/net/InetAddress; // method@5da3 │ │ -437bda: 0c00 |0007: move-result-object v0 │ │ -437bdc: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ -437be0: 5420 0f60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437be4: 6e10 a35d 0000 |000c: invoke-virtual {v0}, Ljava/net/Socket;.getInetAddress:()Ljava/net/InetAddress; // method@5da3 │ │ -437bea: 0c00 |000f: move-result-object v0 │ │ -437bec: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ -437bf2: 0c00 |0013: move-result-object v0 │ │ -437bf4: 1100 |0014: return-object v0 │ │ -437bf6: 0000 |0015: nop // spacer │ │ -437bf8: 5420 1260 |0016: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_version:Ljava/lang/String; // field@6012 │ │ -437bfc: 1a01 a81d |0018: const-string v1, "IPv4" // string@1da8 │ │ -437c00: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -437c06: 0a00 |001d: move-result v0 │ │ -437c08: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ -437c0c: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ -437c10: 1100 |0022: return-object v0 │ │ -437c12: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ -437c16: 1100 |0025: return-object v0 │ │ +437bb8: |[437bb8] org.purple.smoke.TcpNeighbor.remoteIpAddress:()Ljava/lang/String; │ │ +437bc8: 5420 0f60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437bcc: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ +437bd0: 6e10 a35d 0000 |0004: invoke-virtual {v0}, Ljava/net/Socket;.getInetAddress:()Ljava/net/InetAddress; // method@5da3 │ │ +437bd6: 0c00 |0007: move-result-object v0 │ │ +437bd8: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ +437bdc: 5420 0f60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437be0: 6e10 a35d 0000 |000c: invoke-virtual {v0}, Ljava/net/Socket;.getInetAddress:()Ljava/net/InetAddress; // method@5da3 │ │ +437be6: 0c00 |000f: move-result-object v0 │ │ +437be8: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ +437bee: 0c00 |0013: move-result-object v0 │ │ +437bf0: 1100 |0014: return-object v0 │ │ +437bf2: 0000 |0015: nop // spacer │ │ +437bf4: 5420 1260 |0016: iget-object v0, v2, Lorg/purple/smoke/TcpNeighbor;.m_version:Ljava/lang/String; // field@6012 │ │ +437bf8: 1a01 a81d |0018: const-string v1, "IPv4" // string@1da8 │ │ +437bfc: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +437c02: 0a00 |001d: move-result v0 │ │ +437c04: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ +437c08: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ +437c0c: 1100 |0022: return-object v0 │ │ +437c0e: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ +437c12: 1100 |0025: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x0014 │ │ Ljava/lang/Exception; -> 0x0015 │ │ positions : │ │ 0x0000 line=395 │ │ 0x000a line=396 │ │ 0x0016 line=402 │ │ @@ -1191771,24 +1191770,24 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 16 16-bit code units │ │ -437c28: |[437c28] org.purple.smoke.TcpNeighbor.remotePort:()Ljava/lang/String; │ │ -437c38: 5410 0f60 |0000: iget-object v0, v1, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437c3c: 3800 0b00 |0002: if-eqz v0, 000d // +000b │ │ -437c40: 6e10 a85d 0000 |0004: invoke-virtual {v0}, Ljava/net/Socket;.getPort:()I // method@5da8 │ │ -437c46: 0a00 |0007: move-result v0 │ │ -437c48: 7110 d55c 0000 |0008: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -437c4e: 0c00 |000b: move-result-object v0 │ │ -437c50: 1100 |000c: return-object v0 │ │ -437c52: 1a00 c704 |000d: const-string v0, "0" // string@04c7 │ │ -437c56: 1100 |000f: return-object v0 │ │ +437c24: |[437c24] org.purple.smoke.TcpNeighbor.remotePort:()Ljava/lang/String; │ │ +437c34: 5410 0f60 |0000: iget-object v0, v1, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437c38: 3800 0b00 |0002: if-eqz v0, 000d // +000b │ │ +437c3c: 6e10 a85d 0000 |0004: invoke-virtual {v0}, Ljava/net/Socket;.getPort:()I // method@5da8 │ │ +437c42: 0a00 |0007: move-result v0 │ │ +437c44: 7110 d55c 0000 |0008: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +437c4a: 0c00 |000b: move-result-object v0 │ │ +437c4c: 1100 |000c: return-object v0 │ │ +437c4e: 1a00 c704 |000d: const-string v0, "0" // string@04c7 │ │ +437c52: 1100 |000f: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x000c │ │ Ljava/lang/Exception; -> 0x000d │ │ positions : │ │ 0x0000 line=412 │ │ 0x0004 line=413 │ │ locals : │ │ @@ -1191799,46 +1191798,46 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -437c68: |[437c68] org.purple.smoke.TcpNeighbor.remoteScopeId:()Ljava/lang/String; │ │ -437c78: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ -437c7c: 1100 |0002: return-object v0 │ │ +437c64: |[437c64] org.purple.smoke.TcpNeighbor.remoteScopeId:()Ljava/lang/String; │ │ +437c74: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ +437c78: 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 │ │ -437af4: |[437af4] org.purple.smoke.TcpNeighbor.send:(Ljava/lang/String;)I │ │ -437b04: 6e10 57be 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be57 │ │ -437b0a: 0a00 |0003: move-result v0 │ │ -437b0c: 3800 1400 |0004: if-eqz v0, 0018 // +0014 │ │ -437b10: 3802 1200 |0006: if-eqz v2, 0018 // +0012 │ │ -437b14: 6e10 c55c 0200 |0008: invoke-virtual {v2}, Ljava/lang/String;.length:()I // method@5cc5 │ │ -437b1a: 0a00 |000b: move-result v0 │ │ -437b1c: 3900 0300 |000c: if-nez v0, 000f // +0003 │ │ -437b20: 280a |000e: goto 0018 // +000a │ │ -437b22: 6e10 bc5c 0200 |000f: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -437b28: 0c02 |0012: move-result-object v2 │ │ -437b2a: 6e20 61be 2100 |0013: invoke-virtual {v1, v2}, Lorg/purple/smoke/TcpNeighbor;.send:([B)I // method@be61 │ │ -437b30: 0a02 |0016: move-result v2 │ │ -437b32: 0f02 |0017: return v2 │ │ -437b34: 1202 |0018: const/4 v2, #int 0 // #0 │ │ -437b36: 0f02 |0019: return v2 │ │ +437af0: |[437af0] org.purple.smoke.TcpNeighbor.send:(Ljava/lang/String;)I │ │ +437b00: 6e10 57be 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be57 │ │ +437b06: 0a00 |0003: move-result v0 │ │ +437b08: 3800 1400 |0004: if-eqz v0, 0018 // +0014 │ │ +437b0c: 3802 1200 |0006: if-eqz v2, 0018 // +0012 │ │ +437b10: 6e10 c55c 0200 |0008: invoke-virtual {v2}, Ljava/lang/String;.length:()I // method@5cc5 │ │ +437b16: 0a00 |000b: move-result v0 │ │ +437b18: 3900 0300 |000c: if-nez v0, 000f // +0003 │ │ +437b1c: 280a |000e: goto 0018 // +000a │ │ +437b1e: 6e10 bc5c 0200 |000f: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +437b24: 0c02 |0012: move-result-object v2 │ │ +437b26: 6e20 61be 2100 |0013: invoke-virtual {v1, v2}, Lorg/purple/smoke/TcpNeighbor;.send:([B)I // method@be61 │ │ +437b2c: 0a02 |0016: move-result v2 │ │ +437b2e: 0f02 |0017: return v2 │ │ +437b30: 1202 |0018: const/4 v2, #int 0 // #0 │ │ +437b32: 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; │ │ @@ -1191848,46 +1191847,46 @@ │ │ type : '([B)I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 56 16-bit code units │ │ -437a64: |[437a64] org.purple.smoke.TcpNeighbor.send:([B)I │ │ -437a74: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -437a76: 3805 3600 |0001: if-eqz v5, 0037 // +0036 │ │ -437a7a: 2151 |0003: array-length v1, v5 │ │ -437a7c: 3801 3300 |0004: if-eqz v1, 0037 // +0033 │ │ -437a80: 6e10 57be 0400 |0006: invoke-virtual {v4}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be57 │ │ -437a86: 0a01 |0009: move-result v1 │ │ -437a88: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ -437a8c: 282b |000c: goto 0037 // +002b │ │ -437a8e: 5441 0f60 |000d: iget-object v1, v4, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437a92: 3801 1f00 |000f: if-eqz v1, 002e // +001f │ │ -437a96: 6e10 a75d 0100 |0011: invoke-virtual {v1}, Ljava/net/Socket;.getOutputStream:()Ljava/io/OutputStream; // method@5da7 │ │ -437a9c: 0c01 |0014: move-result-object v1 │ │ -437a9e: 3901 0300 |0015: if-nez v1, 0018 // +0003 │ │ -437aa2: 2817 |0017: goto 002e // +0017 │ │ -437aa4: 5441 0f60 |0018: iget-object v1, v4, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ -437aa8: 6e10 a75d 0100 |001a: invoke-virtual {v1}, Ljava/net/Socket;.getOutputStream:()Ljava/io/OutputStream; // method@5da7 │ │ -437aae: 0c01 |001d: move-result-object v1 │ │ -437ab0: 6e20 db5b 5100 |001e: invoke-virtual {v1, v5}, Ljava/io/OutputStream;.write:([B)V // method@5bdb │ │ -437ab6: 7110 28bb 0500 |0021: invoke-static {v5}, Lorg/purple/smoke/Kernel;.writeCongestionDigest:([B)V // method@bb28 │ │ -437abc: 5441 0060 |0024: iget-object v1, v4, Lorg/purple/smoke/TcpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@6000 │ │ -437ac0: 2152 |0026: array-length v2, v5 │ │ -437ac2: 8122 |0027: int-to-long v2, v2 │ │ -437ac4: 6e30 e460 2103 |0028: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e4 │ │ -437aca: 2155 |002b: array-length v5, v5 │ │ -437acc: b050 |002c: add-int/2addr v0, v5 │ │ -437ace: 280a |002d: goto 0037 // +000a │ │ -437ad0: 0f00 |002e: return v0 │ │ -437ad2: 1a05 0e09 |002f: const-string v5, "A socket error occurred on send()." // string@090e │ │ -437ad6: 6e20 62be 5400 |0031: invoke-virtual {v4, v5}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be62 │ │ -437adc: 6e10 58be 0400 |0034: invoke-virtual {v4}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be58 │ │ -437ae2: 0f00 |0037: return v0 │ │ +437a60: |[437a60] org.purple.smoke.TcpNeighbor.send:([B)I │ │ +437a70: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +437a72: 3805 3600 |0001: if-eqz v5, 0037 // +0036 │ │ +437a76: 2151 |0003: array-length v1, v5 │ │ +437a78: 3801 3300 |0004: if-eqz v1, 0037 // +0033 │ │ +437a7c: 6e10 57be 0400 |0006: invoke-virtual {v4}, Lorg/purple/smoke/TcpNeighbor;.connected:()Z // method@be57 │ │ +437a82: 0a01 |0009: move-result v1 │ │ +437a84: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ +437a88: 282b |000c: goto 0037 // +002b │ │ +437a8a: 5441 0f60 |000d: iget-object v1, v4, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437a8e: 3801 1f00 |000f: if-eqz v1, 002e // +001f │ │ +437a92: 6e10 a75d 0100 |0011: invoke-virtual {v1}, Ljava/net/Socket;.getOutputStream:()Ljava/io/OutputStream; // method@5da7 │ │ +437a98: 0c01 |0014: move-result-object v1 │ │ +437a9a: 3901 0300 |0015: if-nez v1, 0018 // +0003 │ │ +437a9e: 2817 |0017: goto 002e // +0017 │ │ +437aa0: 5441 0f60 |0018: iget-object v1, v4, Lorg/purple/smoke/TcpNeighbor;.m_socket:Ljava/net/Socket; // field@600f │ │ +437aa4: 6e10 a75d 0100 |001a: invoke-virtual {v1}, Ljava/net/Socket;.getOutputStream:()Ljava/io/OutputStream; // method@5da7 │ │ +437aaa: 0c01 |001d: move-result-object v1 │ │ +437aac: 6e20 db5b 5100 |001e: invoke-virtual {v1, v5}, Ljava/io/OutputStream;.write:([B)V // method@5bdb │ │ +437ab2: 7110 28bb 0500 |0021: invoke-static {v5}, Lorg/purple/smoke/Kernel;.writeCongestionDigest:([B)V // method@bb28 │ │ +437ab8: 5441 0060 |0024: iget-object v1, v4, Lorg/purple/smoke/TcpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@6000 │ │ +437abc: 2152 |0026: array-length v2, v5 │ │ +437abe: 8122 |0027: int-to-long v2, v2 │ │ +437ac0: 6e30 e460 2103 |0028: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e4 │ │ +437ac6: 2155 |002b: array-length v5, v5 │ │ +437ac8: b050 |002c: add-int/2addr v0, v5 │ │ +437aca: 280a |002d: goto 0037 // +000a │ │ +437acc: 0f00 |002e: return v0 │ │ +437ace: 1a05 0e09 |002f: const-string v5, "A socket error occurred on send()." // string@090e │ │ +437ad2: 6e20 62be 5400 |0031: invoke-virtual {v4, v5}, Lorg/purple/smoke/TcpNeighbor;.setError:(Ljava/lang/String;)V // method@be62 │ │ +437ad8: 6e10 58be 0400 |0034: invoke-virtual {v4}, Lorg/purple/smoke/TcpNeighbor;.disconnect:()V // method@be58 │ │ +437ade: 0f00 |0037: return v0 │ │ catches : 1 │ │ 0x000d - 0x002c │ │ Ljava/lang/Exception; -> 0x002f │ │ positions : │ │ 0x0003 line=107 │ │ 0x000d line=112 │ │ 0x0018 line=115 │ │ @@ -1191905,17 +1191904,17 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -437c80: |[437c80] org.purple.smoke.TcpNeighbor.transport:()Ljava/lang/String; │ │ -437c90: 1a00 094d |0000: const-string v0, "TCP" // string@4d09 │ │ -437c94: 1100 |0002: return-object v0 │ │ +437c7c: |[437c7c] org.purple.smoke.TcpNeighbor.transport:()Ljava/lang/String; │ │ +437c8c: 1a00 094d |0000: const-string v0, "TCP" // string@4d09 │ │ +437c90: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ source_file_idx : 20082 (TcpNeighbor.java) │ │ │ │ Class #4375 header: │ │ @@ -1191987,121 +1191986,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 │ │ -438b54: |[438b54] 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 │ │ -438b64: 0798 |0000: move-object v8, v9 │ │ -438b66: 1a05 094d |0001: const-string v5, "TCP" // string@4d09 │ │ -438b6a: 0790 |0003: move-object v0, v9 │ │ -438b6c: 07a1 |0004: move-object v1, v10 │ │ -438b6e: 07e2 |0005: move-object v2, v14 │ │ -438b70: 07f3 |0006: move-object v3, v15 │ │ -438b72: 0804 1000 |0007: move-object/from16 v4, v16 │ │ -438b76: 0806 1100 |0009: move-object/from16 v6, v17 │ │ -438b7a: 0207 1200 |000b: move/from16 v7, v18 │ │ -438b7e: 7608 07bc 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@bc07 │ │ -438b84: 1200 |0010: const/4 v0, #int 0 // #0 │ │ -438b86: 5b80 2060 |0011: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6020 │ │ -438b8a: 5b80 2360 |0013: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6023 │ │ -438b8e: 5b80 2a60 |0015: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@602a │ │ -438b92: 5b80 2f60 |0017: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438b96: 5b80 2960 |0019: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6029 │ │ -438b9a: 1a01 0000 |001b: const-string v1, "" // string@0000 │ │ -438b9e: 5b81 2b60 |001d: iput-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602b │ │ -438ba2: 5b81 2d60 |001f: iput-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyType:Ljava/lang/String; // field@602d │ │ -438ba6: 5b80 3260 |0021: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_trustManagers:[Ljavax/net/ssl/TrustManager; // field@6032 │ │ -438baa: 12f1 |0023: const/4 v1, #int -1 // #ff │ │ -438bac: 5981 2c60 |0024: iput v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602c │ │ -438bb0: 2202 e40b |0026: new-instance v2, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ -438bb4: 1203 |0028: const/4 v3, #int 0 // #0 │ │ -438bb6: 7020 d860 3200 |0029: invoke-direct {v2, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d8 │ │ -438bbc: 5b82 2060 |002c: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6020 │ │ -438bc0: 2202 e40b |002e: new-instance v2, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ -438bc4: 7020 d860 3200 |0030: invoke-direct {v2, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d8 │ │ -438bca: 5b82 2360 |0033: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6023 │ │ -438bce: 6202 6c00 |0035: sget-object v2, Landroid/os/Build$VERSION;.RELEASE:Ljava/lang/String; // field@006c │ │ -438bd2: 1a04 5c06 |0037: const-string v4, "10" // string@065c │ │ -438bd6: 6e20 ca5c 4200 |0039: invoke-virtual {v2, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ -438bdc: 0a02 |003c: move-result v2 │ │ -438bde: 3902 3100 |003d: if-nez v2, 006e // +0031 │ │ -438be2: 6202 6c00 |003f: sget-object v2, Landroid/os/Build$VERSION;.RELEASE:Ljava/lang/String; // field@006c │ │ -438be6: 1a04 9306 |0041: const-string v4, "11" // string@0693 │ │ -438bea: 6e20 ca5c 4200 |0043: invoke-virtual {v2, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ -438bf0: 0a02 |0046: move-result v2 │ │ -438bf2: 3902 2700 |0047: if-nez v2, 006e // +0027 │ │ -438bf6: 6202 6c00 |0049: sget-object v2, Landroid/os/Build$VERSION;.RELEASE:Ljava/lang/String; // field@006c │ │ -438bfa: 1a04 a406 |004b: const-string v4, "12" // string@06a4 │ │ -438bfe: 6e20 ca5c 4200 |004d: invoke-virtual {v2, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ -438c04: 0a02 |0050: move-result v2 │ │ -438c06: 3902 1d00 |0051: if-nez v2, 006e // +001d │ │ -438c0a: 6202 6c00 |0053: sget-object v2, Landroid/os/Build$VERSION;.RELEASE:Ljava/lang/String; // field@006c │ │ -438c0e: 1a04 ae06 |0055: const-string v4, "13" // string@06ae │ │ -438c12: 6e20 ca5c 4200 |0057: invoke-virtual {v2, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ -438c18: 0a02 |005a: move-result v2 │ │ -438c1a: 3802 0300 |005b: if-eqz v2, 005e // +0003 │ │ -438c1e: 2811 |005d: goto 006e // +0011 │ │ -438c20: 6002 6d00 |005e: sget v2, Landroid/os/Build$VERSION;.SDK_INT:I // field@006d │ │ -438c24: 1304 1500 |0060: const/16 v4, #int 21 // #15 │ │ -438c28: 3442 0700 |0062: if-lt v2, v4, 0069 // +0007 │ │ -438c2c: 6202 ce53 |0064: sget-object v2, Lorg/purple/smoke/Cryptography;.TLS_V1_V12:[Ljava/lang/String; // field@53ce │ │ -438c30: 5b82 2960 |0066: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6029 │ │ -438c34: 280a |0068: goto 0072 // +000a │ │ -438c36: 6202 cc53 |0069: sget-object v2, Lorg/purple/smoke/Cryptography;.TLS_LEGACY_V12:[Ljava/lang/String; // field@53cc │ │ -438c3a: 5b82 2960 |006b: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6029 │ │ -438c3e: 2805 |006d: goto 0072 // +0005 │ │ -438c40: 6202 cd53 |006e: sget-object v2, Lorg/purple/smoke/Cryptography;.TLS_NEW:[Ljava/lang/String; // field@53cd │ │ -438c44: 5b82 2960 |0070: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6029 │ │ -438c48: 07b2 |0072: move-object v2, v11 │ │ -438c4a: 5b82 2b60 |0073: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602b │ │ -438c4e: 7110 555c 0c00 |0075: invoke-static {v12}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@5c55 │ │ -438c54: 0a02 |0078: move-result v2 │ │ -438c56: 5982 2c60 |0079: iput v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602c │ │ -438c5a: 2803 |007b: goto 007e // +0003 │ │ -438c5c: 5981 2c60 |007c: iput v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602c │ │ -438c60: 07d2 |007e: move-object v2, v13 │ │ -438c62: 5b82 2d60 |007f: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyType:Ljava/lang/String; // field@602d │ │ -438c66: 5482 2b60 |0081: iget-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602b │ │ -438c6a: 6e10 c35c 0200 |0083: invoke-virtual {v2}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -438c70: 0a02 |0086: move-result v2 │ │ -438c72: 3902 1c00 |0087: if-nez v2, 00a3 // +001c │ │ -438c76: 5282 2c60 |0089: iget v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602c │ │ -438c7a: 3212 1800 |008b: if-eq v2, v1, 00a3 // +0018 │ │ -438c7e: 5481 2d60 |008d: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyType:Ljava/lang/String; // field@602d │ │ -438c82: 6e10 c35c 0100 |008f: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -438c88: 0a01 |0092: move-result v1 │ │ -438c8a: 3901 1000 |0093: if-nez v1, 00a3 // +0010 │ │ -438c8e: 2201 0d0b |0095: new-instance v1, Ljava/net/InetSocketAddress; // type@0b0d │ │ -438c92: 5482 2b60 |0097: iget-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602b │ │ -438c96: 5284 2c60 |0099: iget v4, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602c │ │ -438c9a: 7030 8e5d 2104 |009b: invoke-direct {v1, v2, v4}, Ljava/net/InetSocketAddress;.:(Ljava/lang/String;I)V // method@5d8e │ │ -438ca0: 5b81 2a60 |009e: iput-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@602a │ │ -438ca4: 2803 |00a0: goto 00a3 // +0003 │ │ -438ca6: 5b80 2a60 |00a1: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@602a │ │ -438caa: 5480 2e60 |00a3: iget-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602e │ │ -438cae: 2201 381b |00a5: new-instance v1, Lorg/purple/smoke/TcpTlsNeighbor$2; // type@1b38 │ │ -438cb2: 7020 66be 9100 |00a7: invoke-direct {v1, v9}, Lorg/purple/smoke/TcpTlsNeighbor$2;.:(Lorg/purple/smoke/TcpTlsNeighbor;)V // method@be66 │ │ -438cb8: 1604 0000 |00aa: const-wide/16 v4, #int 0 // #0 │ │ -438cbc: 1606 6400 |00ac: const-wide/16 v6, #int 100 // #64 │ │ -438cc0: 6202 ef2c |00ae: sget-object v2, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -438cc4: 070a |00b0: move-object v10, v0 │ │ -438cc6: 071b |00b1: move-object v11, v1 │ │ -438cc8: 044c |00b2: move-wide v12, v4 │ │ -438cca: 046e |00b3: move-wide v14, v6 │ │ -438ccc: 0810 0200 |00b4: move-object/from16 v16, v2 │ │ -438cd0: 7807 d060 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@60d0 │ │ -438cd6: 1210 |00b9: const/4 v0, #int 1 // #1 │ │ -438cd8: 2300 ba1b |00ba: new-array v0, v0, [Ljavax/net/ssl/TrustManager; // type@1bba │ │ -438cdc: 2201 391b |00bc: new-instance v1, Lorg/purple/smoke/TcpTlsNeighbor$3; // type@1b39 │ │ -438ce0: 7020 68be 9100 |00be: invoke-direct {v1, v9}, Lorg/purple/smoke/TcpTlsNeighbor$3;.:(Lorg/purple/smoke/TcpTlsNeighbor;)V // method@be68 │ │ -438ce6: 4d01 0003 |00c1: aput-object v1, v0, v3 │ │ -438cea: 5b80 3260 |00c3: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_trustManagers:[Ljavax/net/ssl/TrustManager; // field@6032 │ │ -438cee: 0e00 |00c5: return-void │ │ +438b50: |[438b50] 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 │ │ +438b60: 0798 |0000: move-object v8, v9 │ │ +438b62: 1a05 094d |0001: const-string v5, "TCP" // string@4d09 │ │ +438b66: 0790 |0003: move-object v0, v9 │ │ +438b68: 07a1 |0004: move-object v1, v10 │ │ +438b6a: 07e2 |0005: move-object v2, v14 │ │ +438b6c: 07f3 |0006: move-object v3, v15 │ │ +438b6e: 0804 1000 |0007: move-object/from16 v4, v16 │ │ +438b72: 0806 1100 |0009: move-object/from16 v6, v17 │ │ +438b76: 0207 1200 |000b: move/from16 v7, v18 │ │ +438b7a: 7608 07bc 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@bc07 │ │ +438b80: 1200 |0010: const/4 v0, #int 0 // #0 │ │ +438b82: 5b80 2060 |0011: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6020 │ │ +438b86: 5b80 2360 |0013: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6023 │ │ +438b8a: 5b80 2a60 |0015: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@602a │ │ +438b8e: 5b80 2f60 |0017: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438b92: 5b80 2960 |0019: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6029 │ │ +438b96: 1a01 0000 |001b: const-string v1, "" // string@0000 │ │ +438b9a: 5b81 2b60 |001d: iput-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602b │ │ +438b9e: 5b81 2d60 |001f: iput-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyType:Ljava/lang/String; // field@602d │ │ +438ba2: 5b80 3260 |0021: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_trustManagers:[Ljavax/net/ssl/TrustManager; // field@6032 │ │ +438ba6: 12f1 |0023: const/4 v1, #int -1 // #ff │ │ +438ba8: 5981 2c60 |0024: iput v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602c │ │ +438bac: 2202 e40b |0026: new-instance v2, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ +438bb0: 1203 |0028: const/4 v3, #int 0 // #0 │ │ +438bb2: 7020 d860 3200 |0029: invoke-direct {v2, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d8 │ │ +438bb8: 5b82 2060 |002c: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6020 │ │ +438bbc: 2202 e40b |002e: new-instance v2, Ljava/util/concurrent/atomic/AtomicBoolean; // type@0be4 │ │ +438bc0: 7020 d860 3200 |0030: invoke-direct {v2, v3}, Ljava/util/concurrent/atomic/AtomicBoolean;.:(Z)V // method@60d8 │ │ +438bc6: 5b82 2360 |0033: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6023 │ │ +438bca: 6202 6c00 |0035: sget-object v2, Landroid/os/Build$VERSION;.RELEASE:Ljava/lang/String; // field@006c │ │ +438bce: 1a04 5c06 |0037: const-string v4, "10" // string@065c │ │ +438bd2: 6e20 ca5c 4200 |0039: invoke-virtual {v2, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ +438bd8: 0a02 |003c: move-result v2 │ │ +438bda: 3902 3100 |003d: if-nez v2, 006e // +0031 │ │ +438bde: 6202 6c00 |003f: sget-object v2, Landroid/os/Build$VERSION;.RELEASE:Ljava/lang/String; // field@006c │ │ +438be2: 1a04 9306 |0041: const-string v4, "11" // string@0693 │ │ +438be6: 6e20 ca5c 4200 |0043: invoke-virtual {v2, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ +438bec: 0a02 |0046: move-result v2 │ │ +438bee: 3902 2700 |0047: if-nez v2, 006e // +0027 │ │ +438bf2: 6202 6c00 |0049: sget-object v2, Landroid/os/Build$VERSION;.RELEASE:Ljava/lang/String; // field@006c │ │ +438bf6: 1a04 a406 |004b: const-string v4, "12" // string@06a4 │ │ +438bfa: 6e20 ca5c 4200 |004d: invoke-virtual {v2, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ +438c00: 0a02 |0050: move-result v2 │ │ +438c02: 3902 1d00 |0051: if-nez v2, 006e // +001d │ │ +438c06: 6202 6c00 |0053: sget-object v2, Landroid/os/Build$VERSION;.RELEASE:Ljava/lang/String; // field@006c │ │ +438c0a: 1a04 ae06 |0055: const-string v4, "13" // string@06ae │ │ +438c0e: 6e20 ca5c 4200 |0057: invoke-virtual {v2, v4}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@5cca │ │ +438c14: 0a02 |005a: move-result v2 │ │ +438c16: 3802 0300 |005b: if-eqz v2, 005e // +0003 │ │ +438c1a: 2811 |005d: goto 006e // +0011 │ │ +438c1c: 6002 6d00 |005e: sget v2, Landroid/os/Build$VERSION;.SDK_INT:I // field@006d │ │ +438c20: 1304 1500 |0060: const/16 v4, #int 21 // #15 │ │ +438c24: 3442 0700 |0062: if-lt v2, v4, 0069 // +0007 │ │ +438c28: 6202 ce53 |0064: sget-object v2, Lorg/purple/smoke/Cryptography;.TLS_V1_V12:[Ljava/lang/String; // field@53ce │ │ +438c2c: 5b82 2960 |0066: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6029 │ │ +438c30: 280a |0068: goto 0072 // +000a │ │ +438c32: 6202 cc53 |0069: sget-object v2, Lorg/purple/smoke/Cryptography;.TLS_LEGACY_V12:[Ljava/lang/String; // field@53cc │ │ +438c36: 5b82 2960 |006b: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6029 │ │ +438c3a: 2805 |006d: goto 0072 // +0005 │ │ +438c3c: 6202 cd53 |006e: sget-object v2, Lorg/purple/smoke/Cryptography;.TLS_NEW:[Ljava/lang/String; // field@53cd │ │ +438c40: 5b82 2960 |0070: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6029 │ │ +438c44: 07b2 |0072: move-object v2, v11 │ │ +438c46: 5b82 2b60 |0073: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602b │ │ +438c4a: 7110 555c 0c00 |0075: invoke-static {v12}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@5c55 │ │ +438c50: 0a02 |0078: move-result v2 │ │ +438c52: 5982 2c60 |0079: iput v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602c │ │ +438c56: 2803 |007b: goto 007e // +0003 │ │ +438c58: 5981 2c60 |007c: iput v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602c │ │ +438c5c: 07d2 |007e: move-object v2, v13 │ │ +438c5e: 5b82 2d60 |007f: iput-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyType:Ljava/lang/String; // field@602d │ │ +438c62: 5482 2b60 |0081: iget-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602b │ │ +438c66: 6e10 c35c 0200 |0083: invoke-virtual {v2}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +438c6c: 0a02 |0086: move-result v2 │ │ +438c6e: 3902 1c00 |0087: if-nez v2, 00a3 // +001c │ │ +438c72: 5282 2c60 |0089: iget v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602c │ │ +438c76: 3212 1800 |008b: if-eq v2, v1, 00a3 // +0018 │ │ +438c7a: 5481 2d60 |008d: iget-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyType:Ljava/lang/String; // field@602d │ │ +438c7e: 6e10 c35c 0100 |008f: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +438c84: 0a01 |0092: move-result v1 │ │ +438c86: 3901 1000 |0093: if-nez v1, 00a3 // +0010 │ │ +438c8a: 2201 0d0b |0095: new-instance v1, Ljava/net/InetSocketAddress; // type@0b0d │ │ +438c8e: 5482 2b60 |0097: iget-object v2, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602b │ │ +438c92: 5284 2c60 |0099: iget v4, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602c │ │ +438c96: 7030 8e5d 2104 |009b: invoke-direct {v1, v2, v4}, Ljava/net/InetSocketAddress;.:(Ljava/lang/String;I)V // method@5d8e │ │ +438c9c: 5b81 2a60 |009e: iput-object v1, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@602a │ │ +438ca0: 2803 |00a0: goto 00a3 // +0003 │ │ +438ca2: 5b80 2a60 |00a1: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@602a │ │ +438ca6: 5480 2e60 |00a3: iget-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602e │ │ +438caa: 2201 381b |00a5: new-instance v1, Lorg/purple/smoke/TcpTlsNeighbor$2; // type@1b38 │ │ +438cae: 7020 66be 9100 |00a7: invoke-direct {v1, v9}, Lorg/purple/smoke/TcpTlsNeighbor$2;.:(Lorg/purple/smoke/TcpTlsNeighbor;)V // method@be66 │ │ +438cb4: 1604 0000 |00aa: const-wide/16 v4, #int 0 // #0 │ │ +438cb8: 1606 6400 |00ac: const-wide/16 v6, #int 100 // #64 │ │ +438cbc: 6202 ef2c |00ae: sget-object v2, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +438cc0: 070a |00b0: move-object v10, v0 │ │ +438cc2: 071b |00b1: move-object v11, v1 │ │ +438cc4: 044c |00b2: move-wide v12, v4 │ │ +438cc6: 046e |00b3: move-wide v14, v6 │ │ +438cc8: 0810 0200 |00b4: move-object/from16 v16, v2 │ │ +438ccc: 7807 d060 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@60d0 │ │ +438cd2: 1210 |00b9: const/4 v0, #int 1 // #1 │ │ +438cd4: 2300 ba1b |00ba: new-array v0, v0, [Ljavax/net/ssl/TrustManager; // type@1bba │ │ +438cd8: 2201 391b |00bc: new-instance v1, Lorg/purple/smoke/TcpTlsNeighbor$3; // type@1b39 │ │ +438cdc: 7020 68be 9100 |00be: invoke-direct {v1, v9}, Lorg/purple/smoke/TcpTlsNeighbor$3;.:(Lorg/purple/smoke/TcpTlsNeighbor;)V // method@be68 │ │ +438ce2: 4d01 0003 |00c1: aput-object v1, v0, v3 │ │ +438ce6: 5b80 3260 |00c3: iput-object v0, v8, Lorg/purple/smoke/TcpTlsNeighbor;.m_trustManagers:[Ljavax/net/ssl/TrustManager; // field@6032 │ │ +438cea: 0e00 |00c5: return-void │ │ catches : 2 │ │ 0x0075 - 0x007b │ │ Ljava/lang/Exception; -> 0x007c │ │ 0x0095 - 0x00a0 │ │ Ljava/lang/Exception; -> 0x00a1 │ │ positions : │ │ 0x000d line=342 │ │ @@ -1192151,17 +1192150,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 │ │ -438b0c: |[438b0c] org.purple.smoke.TcpTlsNeighbor.access$000:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; │ │ -438b1c: 5400 2060 |0000: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6020 │ │ -438b20: 1100 |0002: return-object v0 │ │ +438b08: |[438b08] org.purple.smoke.TcpTlsNeighbor.access$000:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; │ │ +438b18: 5400 2060 |0000: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6020 │ │ +438b1c: 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;) │ │ @@ -1192169,17 +1192168,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 │ │ -438b3c: |[438b3c] org.purple.smoke.TcpTlsNeighbor.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; │ │ -438b4c: 5400 2f60 |0000: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438b50: 1100 |0002: return-object v0 │ │ +438b38: |[438b38] org.purple.smoke.TcpTlsNeighbor.access$100:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljavax/net/ssl/SSLSocket; │ │ +438b48: 5400 2f60 |0000: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438b4c: 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;) │ │ @@ -1192187,17 +1192186,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 │ │ -438b24: |[438b24] org.purple.smoke.TcpTlsNeighbor.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; │ │ -438b34: 5400 2360 |0000: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6023 │ │ -438b38: 1100 |0002: return-object v0 │ │ +438b20: |[438b20] org.purple.smoke.TcpTlsNeighbor.access$200:(Lorg/purple/smoke/TcpTlsNeighbor;)Ljava/util/concurrent/atomic/AtomicBoolean; │ │ +438b30: 5400 2360 |0000: iget-object v0, v0, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6023 │ │ +438b34: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/TcpTlsNeighbor; │ │ │ │ Virtual methods - │ │ @@ -1192206,41 +1192205,41 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 49 16-bit code units │ │ -438d0c: |[438d0c] org.purple.smoke.TcpTlsNeighbor.abort:()V │ │ -438d1c: 6e10 73be 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be73 │ │ -438d22: 6f10 08bc 0500 |0003: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.abort:()V // method@bc08 │ │ -438d28: 5450 2060 |0006: iget-object v0, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6020 │ │ -438d2c: 1201 |0008: const/4 v1, #int 0 // #0 │ │ -438d2e: 6e20 dc60 1000 |0009: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -438d34: 5450 2360 |000c: iget-object v0, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6023 │ │ -438d38: 6e20 dc60 1000 |000e: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -438d3e: 5450 2e60 |0011: iget-object v0, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602e │ │ -438d42: 1d00 |0013: monitor-enter v0 │ │ -438d44: 5451 2e60 |0014: iget-object v1, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602e │ │ -438d48: 7210 d160 0100 |0016: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60d1 │ │ -438d4e: 2803 |0019: goto 001c // +0003 │ │ -438d50: 0d01 |001a: move-exception v1 │ │ -438d52: 2814 |001b: goto 002f // +0014 │ │ -438d54: 5451 2e60 |001c: iget-object v1, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602e │ │ -438d58: 1602 0500 |001e: const-wide/16 v2, #int 5 // #5 │ │ -438d5c: 6204 f22c |0020: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ -438d60: 7240 ce60 2143 |0022: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60ce │ │ -438d66: 0a01 |0025: move-result v1 │ │ -438d68: 3901 0700 |0026: if-nez v1, 002d // +0007 │ │ -438d6c: 5451 2e60 |0028: iget-object v1, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602e │ │ -438d70: 7210 d260 0100 |002a: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d2 │ │ -438d76: 1e00 |002d: monitor-exit v0 │ │ -438d78: 0e00 |002e: return-void │ │ -438d7a: 1e00 |002f: monitor-exit v0 │ │ -438d7c: 2701 |0030: throw v1 │ │ +438d08: |[438d08] org.purple.smoke.TcpTlsNeighbor.abort:()V │ │ +438d18: 6e10 73be 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be73 │ │ +438d1e: 6f10 08bc 0500 |0003: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.abort:()V // method@bc08 │ │ +438d24: 5450 2060 |0006: iget-object v0, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6020 │ │ +438d28: 1201 |0008: const/4 v1, #int 0 // #0 │ │ +438d2a: 6e20 dc60 1000 |0009: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +438d30: 5450 2360 |000c: iget-object v0, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6023 │ │ +438d34: 6e20 dc60 1000 |000e: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +438d3a: 5450 2e60 |0011: iget-object v0, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602e │ │ +438d3e: 1d00 |0013: monitor-enter v0 │ │ +438d40: 5451 2e60 |0014: iget-object v1, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602e │ │ +438d44: 7210 d160 0100 |0016: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60d1 │ │ +438d4a: 2803 |0019: goto 001c // +0003 │ │ +438d4c: 0d01 |001a: move-exception v1 │ │ +438d4e: 2814 |001b: goto 002f // +0014 │ │ +438d50: 5451 2e60 |001c: iget-object v1, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602e │ │ +438d54: 1602 0500 |001e: const-wide/16 v2, #int 5 // #5 │ │ +438d58: 6204 f22c |0020: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ +438d5c: 7240 ce60 2143 |0022: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60ce │ │ +438d62: 0a01 |0025: move-result v1 │ │ +438d64: 3901 0700 |0026: if-nez v1, 002d // +0007 │ │ +438d68: 5451 2e60 |0028: iget-object v1, v5, Lorg/purple/smoke/TcpTlsNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@602e │ │ +438d6c: 7210 d260 0100 |002a: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d2 │ │ +438d72: 1e00 |002d: monitor-exit v0 │ │ +438d74: 0e00 |002e: return-void │ │ +438d76: 1e00 |002f: monitor-exit v0 │ │ +438d78: 2701 |0030: throw v1 │ │ catches : 3 │ │ 0x0014 - 0x0019 │ │ Ljava/lang/Exception; -> 0x001c │ │ -> 0x001a │ │ 0x001c - 0x002d │ │ Ljava/lang/Exception; -> 0x002d │ │ -> 0x001a │ │ @@ -1192265,160 +1192264,160 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 11 │ │ ins : 1 │ │ outs : 5 │ │ insns size : 312 16-bit code units │ │ -438da8: |[438da8] org.purple.smoke.TcpTlsNeighbor.connect:()V │ │ -438db8: 6e10 72be 0a00 |0000: invoke-virtual {v10}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be72 │ │ -438dbe: 0a00 |0003: move-result v0 │ │ -438dc0: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -438dc4: 0e00 |0006: return-void │ │ -438dc6: 6e10 79be 0a00 |0007: invoke-virtual {v10}, Lorg/purple/smoke/TcpTlsNeighbor;.isNetworkConnected:()Z // method@be79 │ │ -438dcc: 0a00 |000a: move-result v0 │ │ -438dce: 3900 0800 |000b: if-nez v0, 0013 // +0008 │ │ -438dd2: 1a00 0909 |000d: const-string v0, "A network is not available." // string@0909 │ │ -438dd6: 6e20 80be 0a00 |000f: invoke-virtual {v10, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ -438ddc: 0e00 |0012: return-void │ │ -438dde: 54a0 1960 |0013: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6019 │ │ -438de2: 1601 0000 |0015: const-wide/16 v1, #int 0 // #0 │ │ -438de6: 6e30 e560 1002 |0017: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -438dec: 54a0 1a60 |001a: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@601a │ │ -438df0: 6e30 e560 1002 |001c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -438df6: 54a0 2060 |001f: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6020 │ │ -438dfa: 1201 |0021: const/4 v1, #int 0 // #0 │ │ -438dfc: 6e20 dc60 1000 |0022: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -438e02: 54a0 2460 |0025: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6024 │ │ -438e06: 7100 065d 0000 |0027: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -438e0c: 0b02 |002a: move-result-wide v2 │ │ -438e0e: 6e30 e560 2003 |002b: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -438e14: 54a0 2560 |002e: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6025 │ │ -438e18: 7100 0b5d 0000 |0030: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -438e1e: 0b02 |0033: move-result-wide v2 │ │ -438e20: 6e30 e560 2003 |0034: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -438e26: 2200 0d0b |0037: new-instance v0, Ljava/net/InetSocketAddress; // type@0b0d │ │ -438e2a: 54a2 2160 |0039: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_ipAddress:Ljava/lang/String; // field@6021 │ │ -438e2e: 54a3 2260 |003b: iget-object v3, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@6022 │ │ -438e32: 6e10 de60 0300 |003d: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -438e38: 0a03 |0040: move-result v3 │ │ -438e3a: 7030 8e5d 2003 |0041: invoke-direct {v0, v2, v3}, Ljava/net/InetSocketAddress;.:(Ljava/lang/String;I)V // method@5d8e │ │ -438e40: 6002 6d00 |0044: sget v2, Landroid/os/Build$VERSION;.SDK_INT:I // field@006d │ │ -438e44: 1303 1500 |0046: const/16 v3, #int 21 // #15 │ │ -438e48: 3432 0900 |0048: if-lt v2, v3, 0051 // +0009 │ │ -438e4c: 1a02 424d |004a: const-string v2, "TLS" // string@4d42 │ │ -438e50: 7110 7a61 0200 |004c: invoke-static {v2}, Ljavax/net/ssl/SSLContext;.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/SSLContext; // method@617a │ │ -438e56: 0c02 |004f: move-result-object v2 │ │ -438e58: 2807 |0050: goto 0057 // +0007 │ │ -438e5a: 1a02 a449 |0051: const-string v2, "SSL" // string@49a4 │ │ -438e5e: 7110 7a61 0200 |0053: invoke-static {v2}, Ljavax/net/ssl/SSLContext;.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/SSLContext; // method@617a │ │ -438e64: 0c02 |0056: move-result-object v2 │ │ -438e66: 1203 |0057: const/4 v3, #int 0 // #0 │ │ -438e68: 54a4 3260 |0058: iget-object v4, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_trustManagers:[Ljavax/net/ssl/TrustManager; // field@6032 │ │ -438e6c: 2205 4a0b |005a: new-instance v5, Ljava/security/SecureRandom; // type@0b4a │ │ -438e70: 7010 405e 0500 |005c: invoke-direct {v5}, Ljava/security/SecureRandom;.:()V // method@5e40 │ │ -438e76: 6e40 7c61 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@617c │ │ -438e7c: 54a3 2a60 |0062: iget-object v3, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@602a │ │ -438e80: 1304 1027 |0064: const/16 v4, #int 10000 // #2710 │ │ -438e84: 1505 0100 |0066: const/high16 v5, #int 65536 // #1 │ │ -438e88: 1216 |0068: const/4 v6, #int 1 // #1 │ │ -438e8a: 3903 2100 |0069: if-nez v3, 008a // +0021 │ │ -438e8e: 6e10 7b61 0200 |006b: invoke-virtual {v2}, Ljavax/net/ssl/SSLContext;.getSocketFactory:()Ljavax/net/ssl/SSLSocketFactory; // method@617b │ │ -438e94: 0c02 |006e: move-result-object v2 │ │ -438e96: 6e10 9561 0200 |006f: invoke-virtual {v2}, Ljavax/net/ssl/SSLSocketFactory;.createSocket:()Ljava/net/Socket; // method@6195 │ │ -438e9c: 0c02 |0072: move-result-object v2 │ │ -438e9e: 1f02 1e0c |0073: check-cast v2, Ljavax/net/ssl/SSLSocket; // type@0c1e │ │ -438ea2: 5ba2 2f60 |0075: iput-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438ea6: 6e20 8d61 5200 |0077: invoke-virtual {v2, v5}, Ljavax/net/ssl/SSLSocket;.setReceiveBufferSize:(I)V // method@618d │ │ -438eac: 54a2 2f60 |007a: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438eb0: 6e20 8e61 5200 |007c: invoke-virtual {v2, v5}, Ljavax/net/ssl/SSLSocket;.setSendBufferSize:(I)V // method@618e │ │ -438eb6: 54a2 2f60 |007f: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438eba: 6e20 9261 6200 |0081: invoke-virtual {v2, v6}, Ljavax/net/ssl/SSLSocket;.setUseClientMode:(Z)V // method@6192 │ │ -438ec0: 54a2 2f60 |0084: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438ec4: 6e30 8261 0204 |0086: invoke-virtual {v2, v0, v4}, Ljavax/net/ssl/SSLSocket;.connect:(Ljava/net/SocketAddress;I)V // method@6182 │ │ -438eca: 2844 |0089: goto 00cd // +0044 │ │ -438ecc: 54a3 2d60 |008a: iget-object v3, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyType:Ljava/lang/String; // field@602d │ │ -438ed0: 1a07 741c |008c: const-string v7, "HTTP" // string@1c74 │ │ -438ed4: 6e20 b85c 7300 |008e: invoke-virtual {v3, v7}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -438eda: 0a03 |0091: move-result v3 │ │ -438edc: 3803 1100 |0092: if-eqz v3, 00a3 // +0011 │ │ -438ee0: 2203 120b |0094: new-instance v3, Ljava/net/Socket; // type@0b12 │ │ -438ee4: 2207 110b |0096: new-instance v7, Ljava/net/Proxy; // type@0b11 │ │ -438ee8: 6208 e12c |0098: sget-object v8, Ljava/net/Proxy$Type;.HTTP:Ljava/net/Proxy$Type; // field@2ce1 │ │ -438eec: 54a9 2a60 |009a: iget-object v9, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@602a │ │ -438ef0: 7030 9d5d 8709 |009c: invoke-direct {v7, v8, v9}, Ljava/net/Proxy;.:(Ljava/net/Proxy$Type;Ljava/net/SocketAddress;)V // method@5d9d │ │ -438ef6: 7020 9f5d 7300 |009f: invoke-direct {v3, v7}, Ljava/net/Socket;.:(Ljava/net/Proxy;)V // method@5d9f │ │ -438efc: 280f |00a2: goto 00b1 // +000f │ │ -438efe: 2203 120b |00a3: new-instance v3, Ljava/net/Socket; // type@0b12 │ │ -438f02: 2207 110b |00a5: new-instance v7, Ljava/net/Proxy; // type@0b11 │ │ -438f06: 6208 e22c |00a7: sget-object v8, Ljava/net/Proxy$Type;.SOCKS:Ljava/net/Proxy$Type; // field@2ce2 │ │ -438f0a: 54a9 2a60 |00a9: iget-object v9, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@602a │ │ -438f0e: 7030 9d5d 8709 |00ab: invoke-direct {v7, v8, v9}, Ljava/net/Proxy;.:(Ljava/net/Proxy$Type;Ljava/net/SocketAddress;)V // method@5d9d │ │ -438f14: 7020 9f5d 7300 |00ae: invoke-direct {v3, v7}, Ljava/net/Socket;.:(Ljava/net/Proxy;)V // method@5d9f │ │ -438f1a: 6e20 aa5d 5300 |00b1: invoke-virtual {v3, v5}, Ljava/net/Socket;.setReceiveBufferSize:(I)V // method@5daa │ │ -438f20: 6e20 ab5d 5300 |00b4: invoke-virtual {v3, v5}, Ljava/net/Socket;.setSendBufferSize:(I)V // method@5dab │ │ -438f26: 6e30 a25d 0304 |00b7: invoke-virtual {v3, v0, v4}, Ljava/net/Socket;.connect:(Ljava/net/SocketAddress;I)V // method@5da2 │ │ -438f2c: 6e10 7b61 0200 |00ba: invoke-virtual {v2}, Ljavax/net/ssl/SSLContext;.getSocketFactory:()Ljavax/net/ssl/SSLSocketFactory; // method@617b │ │ -438f32: 0c00 |00bd: move-result-object v0 │ │ -438f34: 54a2 2b60 |00be: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602b │ │ -438f38: 52a4 2c60 |00c0: iget v4, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602c │ │ -438f3c: 6e56 9661 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@6196 │ │ -438f42: 0c00 |00c5: move-result-object v0 │ │ -438f44: 1f00 1e0c |00c6: check-cast v0, Ljavax/net/ssl/SSLSocket; // type@0c1e │ │ -438f48: 5ba0 2f60 |00c8: iput-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438f4c: 6e20 9261 6000 |00ca: invoke-virtual {v0, v6}, Ljavax/net/ssl/SSLSocket;.setUseClientMode:(Z)V // method@6192 │ │ -438f52: 54a0 2f60 |00cd: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438f56: 2202 371b |00cf: new-instance v2, Lorg/purple/smoke/TcpTlsNeighbor$1; // type@1b37 │ │ -438f5a: 7020 64be a200 |00d1: invoke-direct {v2, v10}, Lorg/purple/smoke/TcpTlsNeighbor$1;.:(Lorg/purple/smoke/TcpTlsNeighbor;)V // method@be64 │ │ -438f60: 6e20 8061 2000 |00d4: invoke-virtual {v0, v2}, Ljavax/net/ssl/SSLSocket;.addHandshakeCompletedListener:(Ljavax/net/ssl/HandshakeCompletedListener;)V // method@6180 │ │ -438f66: 54a0 2f60 |00d7: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438f6a: 54a2 2960 |00d9: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6029 │ │ -438f6e: 6e20 8c61 2000 |00db: invoke-virtual {v0, v2}, Ljavax/net/ssl/SSLSocket;.setEnabledProtocols:([Ljava/lang/String;)V // method@618c │ │ -438f74: 54a0 2f60 |00de: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438f78: 6e30 8f61 6001 |00e0: invoke-virtual {v0, v6, v1}, Ljavax/net/ssl/SSLSocket;.setSoLinger:(ZI)V // method@618f │ │ -438f7e: 54a0 2f60 |00e3: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438f82: 1301 204e |00e5: const/16 v1, #int 20000 // #4e20 │ │ -438f86: 6e20 9061 1000 |00e7: invoke-virtual {v0, v1}, Ljavax/net/ssl/SSLSocket;.setSoTimeout:(I)V // method@6190 │ │ -438f8c: 54a0 2f60 |00ea: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438f90: 6e20 9161 6000 |00ec: invoke-virtual {v0, v6}, Ljavax/net/ssl/SSLSocket;.setTcpNoDelay:(Z)V // method@6191 │ │ -438f96: 54a0 3060 |00ef: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6030 │ │ -438f9a: 7100 0b5d 0000 |00f1: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -438fa0: 0b01 |00f4: move-result-wide v1 │ │ -438fa2: 6e30 e560 1002 |00f5: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -438fa8: 1a00 0000 |00f8: const-string v0, "" // string@0000 │ │ -438fac: 6e20 80be 0a00 |00fa: invoke-virtual {v10, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ -438fb2: 54a0 2660 |00fd: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6026 │ │ -438fb6: 1d00 |00ff: monitor-enter v0 │ │ -438fb8: 54a1 2660 |0100: iget-object v1, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6026 │ │ -438fbc: 6e10 955c 0100 |0102: invoke-virtual {v1}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ -438fc2: 1e00 |0105: monitor-exit v0 │ │ -438fc4: 2831 |0106: goto 0137 // +0031 │ │ -438fc6: 0d01 |0107: move-exception v1 │ │ -438fc8: 1e00 |0108: monitor-exit v0 │ │ -438fca: 2701 |0109: throw v1 │ │ -438fcc: 0d00 |010a: move-exception v0 │ │ -438fce: 2201 f10a |010b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -438fd2: 7010 ee5c 0100 |010d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -438fd8: 1a02 6a0d |0110: const-string v2, "An error (" // string@0d6a │ │ -438fdc: 6e20 f95c 2100 |0112: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -438fe2: 6e10 375c 0000 |0115: invoke-virtual {v0}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ -438fe8: 0c00 |0118: move-result-object v0 │ │ -438fea: 6e20 f95c 0100 |0119: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -438ff0: 1a00 fe03 |011c: const-string v0, ") occurred while attempting a connection (" // string@03fe │ │ -438ff4: 6e20 f95c 0100 |011e: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -438ffa: 7100 0b5d 0000 |0121: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -439000: 0b02 |0124: move-result-wide v2 │ │ -439002: 6e30 f55c 2103 |0125: invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@5cf5 │ │ -439008: 1a00 0c04 |0128: const-string v0, ")." // string@040c │ │ -43900c: 6e20 f95c 0100 |012a: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -439012: 6e10 035d 0100 |012d: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -439018: 0c00 |0130: move-result-object v0 │ │ -43901a: 6e20 80be 0a00 |0131: invoke-virtual {v10, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ -439020: 6e10 73be 0a00 |0134: invoke-virtual {v10}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be73 │ │ -439026: 0e00 |0137: return-void │ │ +438da4: |[438da4] org.purple.smoke.TcpTlsNeighbor.connect:()V │ │ +438db4: 6e10 72be 0a00 |0000: invoke-virtual {v10}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be72 │ │ +438dba: 0a00 |0003: move-result v0 │ │ +438dbc: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +438dc0: 0e00 |0006: return-void │ │ +438dc2: 6e10 79be 0a00 |0007: invoke-virtual {v10}, Lorg/purple/smoke/TcpTlsNeighbor;.isNetworkConnected:()Z // method@be79 │ │ +438dc8: 0a00 |000a: move-result v0 │ │ +438dca: 3900 0800 |000b: if-nez v0, 0013 // +0008 │ │ +438dce: 1a00 0909 |000d: const-string v0, "A network is not available." // string@0909 │ │ +438dd2: 6e20 80be 0a00 |000f: invoke-virtual {v10, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ +438dd8: 0e00 |0012: return-void │ │ +438dda: 54a0 1960 |0013: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6019 │ │ +438dde: 1601 0000 |0015: const-wide/16 v1, #int 0 // #0 │ │ +438de2: 6e30 e560 1002 |0017: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +438de8: 54a0 1a60 |001a: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@601a │ │ +438dec: 6e30 e560 1002 |001c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +438df2: 54a0 2060 |001f: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6020 │ │ +438df6: 1201 |0021: const/4 v1, #int 0 // #0 │ │ +438df8: 6e20 dc60 1000 |0022: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +438dfe: 54a0 2460 |0025: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6024 │ │ +438e02: 7100 065d 0000 |0027: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +438e08: 0b02 |002a: move-result-wide v2 │ │ +438e0a: 6e30 e560 2003 |002b: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +438e10: 54a0 2560 |002e: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6025 │ │ +438e14: 7100 0b5d 0000 |0030: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +438e1a: 0b02 |0033: move-result-wide v2 │ │ +438e1c: 6e30 e560 2003 |0034: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +438e22: 2200 0d0b |0037: new-instance v0, Ljava/net/InetSocketAddress; // type@0b0d │ │ +438e26: 54a2 2160 |0039: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_ipAddress:Ljava/lang/String; // field@6021 │ │ +438e2a: 54a3 2260 |003b: iget-object v3, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@6022 │ │ +438e2e: 6e10 de60 0300 |003d: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +438e34: 0a03 |0040: move-result v3 │ │ +438e36: 7030 8e5d 2003 |0041: invoke-direct {v0, v2, v3}, Ljava/net/InetSocketAddress;.:(Ljava/lang/String;I)V // method@5d8e │ │ +438e3c: 6002 6d00 |0044: sget v2, Landroid/os/Build$VERSION;.SDK_INT:I // field@006d │ │ +438e40: 1303 1500 |0046: const/16 v3, #int 21 // #15 │ │ +438e44: 3432 0900 |0048: if-lt v2, v3, 0051 // +0009 │ │ +438e48: 1a02 424d |004a: const-string v2, "TLS" // string@4d42 │ │ +438e4c: 7110 7a61 0200 |004c: invoke-static {v2}, Ljavax/net/ssl/SSLContext;.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/SSLContext; // method@617a │ │ +438e52: 0c02 |004f: move-result-object v2 │ │ +438e54: 2807 |0050: goto 0057 // +0007 │ │ +438e56: 1a02 a449 |0051: const-string v2, "SSL" // string@49a4 │ │ +438e5a: 7110 7a61 0200 |0053: invoke-static {v2}, Ljavax/net/ssl/SSLContext;.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/SSLContext; // method@617a │ │ +438e60: 0c02 |0056: move-result-object v2 │ │ +438e62: 1203 |0057: const/4 v3, #int 0 // #0 │ │ +438e64: 54a4 3260 |0058: iget-object v4, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_trustManagers:[Ljavax/net/ssl/TrustManager; // field@6032 │ │ +438e68: 2205 4a0b |005a: new-instance v5, Ljava/security/SecureRandom; // type@0b4a │ │ +438e6c: 7010 405e 0500 |005c: invoke-direct {v5}, Ljava/security/SecureRandom;.:()V // method@5e40 │ │ +438e72: 6e40 7c61 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@617c │ │ +438e78: 54a3 2a60 |0062: iget-object v3, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@602a │ │ +438e7c: 1304 1027 |0064: const/16 v4, #int 10000 // #2710 │ │ +438e80: 1505 0100 |0066: const/high16 v5, #int 65536 // #1 │ │ +438e84: 1216 |0068: const/4 v6, #int 1 // #1 │ │ +438e86: 3903 2100 |0069: if-nez v3, 008a // +0021 │ │ +438e8a: 6e10 7b61 0200 |006b: invoke-virtual {v2}, Ljavax/net/ssl/SSLContext;.getSocketFactory:()Ljavax/net/ssl/SSLSocketFactory; // method@617b │ │ +438e90: 0c02 |006e: move-result-object v2 │ │ +438e92: 6e10 9561 0200 |006f: invoke-virtual {v2}, Ljavax/net/ssl/SSLSocketFactory;.createSocket:()Ljava/net/Socket; // method@6195 │ │ +438e98: 0c02 |0072: move-result-object v2 │ │ +438e9a: 1f02 1e0c |0073: check-cast v2, Ljavax/net/ssl/SSLSocket; // type@0c1e │ │ +438e9e: 5ba2 2f60 |0075: iput-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438ea2: 6e20 8d61 5200 |0077: invoke-virtual {v2, v5}, Ljavax/net/ssl/SSLSocket;.setReceiveBufferSize:(I)V // method@618d │ │ +438ea8: 54a2 2f60 |007a: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438eac: 6e20 8e61 5200 |007c: invoke-virtual {v2, v5}, Ljavax/net/ssl/SSLSocket;.setSendBufferSize:(I)V // method@618e │ │ +438eb2: 54a2 2f60 |007f: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438eb6: 6e20 9261 6200 |0081: invoke-virtual {v2, v6}, Ljavax/net/ssl/SSLSocket;.setUseClientMode:(Z)V // method@6192 │ │ +438ebc: 54a2 2f60 |0084: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438ec0: 6e30 8261 0204 |0086: invoke-virtual {v2, v0, v4}, Ljavax/net/ssl/SSLSocket;.connect:(Ljava/net/SocketAddress;I)V // method@6182 │ │ +438ec6: 2844 |0089: goto 00cd // +0044 │ │ +438ec8: 54a3 2d60 |008a: iget-object v3, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyType:Ljava/lang/String; // field@602d │ │ +438ecc: 1a07 741c |008c: const-string v7, "HTTP" // string@1c74 │ │ +438ed0: 6e20 b85c 7300 |008e: invoke-virtual {v3, v7}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +438ed6: 0a03 |0091: move-result v3 │ │ +438ed8: 3803 1100 |0092: if-eqz v3, 00a3 // +0011 │ │ +438edc: 2203 120b |0094: new-instance v3, Ljava/net/Socket; // type@0b12 │ │ +438ee0: 2207 110b |0096: new-instance v7, Ljava/net/Proxy; // type@0b11 │ │ +438ee4: 6208 e12c |0098: sget-object v8, Ljava/net/Proxy$Type;.HTTP:Ljava/net/Proxy$Type; // field@2ce1 │ │ +438ee8: 54a9 2a60 |009a: iget-object v9, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@602a │ │ +438eec: 7030 9d5d 8709 |009c: invoke-direct {v7, v8, v9}, Ljava/net/Proxy;.:(Ljava/net/Proxy$Type;Ljava/net/SocketAddress;)V // method@5d9d │ │ +438ef2: 7020 9f5d 7300 |009f: invoke-direct {v3, v7}, Ljava/net/Socket;.:(Ljava/net/Proxy;)V // method@5d9f │ │ +438ef8: 280f |00a2: goto 00b1 // +000f │ │ +438efa: 2203 120b |00a3: new-instance v3, Ljava/net/Socket; // type@0b12 │ │ +438efe: 2207 110b |00a5: new-instance v7, Ljava/net/Proxy; // type@0b11 │ │ +438f02: 6208 e22c |00a7: sget-object v8, Ljava/net/Proxy$Type;.SOCKS:Ljava/net/Proxy$Type; // field@2ce2 │ │ +438f06: 54a9 2a60 |00a9: iget-object v9, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyInetSocketAddress:Ljava/net/InetSocketAddress; // field@602a │ │ +438f0a: 7030 9d5d 8709 |00ab: invoke-direct {v7, v8, v9}, Ljava/net/Proxy;.:(Ljava/net/Proxy$Type;Ljava/net/SocketAddress;)V // method@5d9d │ │ +438f10: 7020 9f5d 7300 |00ae: invoke-direct {v3, v7}, Ljava/net/Socket;.:(Ljava/net/Proxy;)V // method@5d9f │ │ +438f16: 6e20 aa5d 5300 |00b1: invoke-virtual {v3, v5}, Ljava/net/Socket;.setReceiveBufferSize:(I)V // method@5daa │ │ +438f1c: 6e20 ab5d 5300 |00b4: invoke-virtual {v3, v5}, Ljava/net/Socket;.setSendBufferSize:(I)V // method@5dab │ │ +438f22: 6e30 a25d 0304 |00b7: invoke-virtual {v3, v0, v4}, Ljava/net/Socket;.connect:(Ljava/net/SocketAddress;I)V // method@5da2 │ │ +438f28: 6e10 7b61 0200 |00ba: invoke-virtual {v2}, Ljavax/net/ssl/SSLContext;.getSocketFactory:()Ljavax/net/ssl/SSLSocketFactory; // method@617b │ │ +438f2e: 0c00 |00bd: move-result-object v0 │ │ +438f30: 54a2 2b60 |00be: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyIpAddress:Ljava/lang/String; // field@602b │ │ +438f34: 52a4 2c60 |00c0: iget v4, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_proxyPort:I // field@602c │ │ +438f38: 6e56 9661 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@6196 │ │ +438f3e: 0c00 |00c5: move-result-object v0 │ │ +438f40: 1f00 1e0c |00c6: check-cast v0, Ljavax/net/ssl/SSLSocket; // type@0c1e │ │ +438f44: 5ba0 2f60 |00c8: iput-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438f48: 6e20 9261 6000 |00ca: invoke-virtual {v0, v6}, Ljavax/net/ssl/SSLSocket;.setUseClientMode:(Z)V // method@6192 │ │ +438f4e: 54a0 2f60 |00cd: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438f52: 2202 371b |00cf: new-instance v2, Lorg/purple/smoke/TcpTlsNeighbor$1; // type@1b37 │ │ +438f56: 7020 64be a200 |00d1: invoke-direct {v2, v10}, Lorg/purple/smoke/TcpTlsNeighbor$1;.:(Lorg/purple/smoke/TcpTlsNeighbor;)V // method@be64 │ │ +438f5c: 6e20 8061 2000 |00d4: invoke-virtual {v0, v2}, Ljavax/net/ssl/SSLSocket;.addHandshakeCompletedListener:(Ljavax/net/ssl/HandshakeCompletedListener;)V // method@6180 │ │ +438f62: 54a0 2f60 |00d7: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438f66: 54a2 2960 |00d9: iget-object v2, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_protocols:[Ljava/lang/String; // field@6029 │ │ +438f6a: 6e20 8c61 2000 |00db: invoke-virtual {v0, v2}, Ljavax/net/ssl/SSLSocket;.setEnabledProtocols:([Ljava/lang/String;)V // method@618c │ │ +438f70: 54a0 2f60 |00de: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438f74: 6e30 8f61 6001 |00e0: invoke-virtual {v0, v6, v1}, Ljavax/net/ssl/SSLSocket;.setSoLinger:(ZI)V // method@618f │ │ +438f7a: 54a0 2f60 |00e3: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438f7e: 1301 204e |00e5: const/16 v1, #int 20000 // #4e20 │ │ +438f82: 6e20 9061 1000 |00e7: invoke-virtual {v0, v1}, Ljavax/net/ssl/SSLSocket;.setSoTimeout:(I)V // method@6190 │ │ +438f88: 54a0 2f60 |00ea: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438f8c: 6e20 9161 6000 |00ec: invoke-virtual {v0, v6}, Ljavax/net/ssl/SSLSocket;.setTcpNoDelay:(Z)V // method@6191 │ │ +438f92: 54a0 3060 |00ef: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6030 │ │ +438f96: 7100 0b5d 0000 |00f1: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +438f9c: 0b01 |00f4: move-result-wide v1 │ │ +438f9e: 6e30 e560 1002 |00f5: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +438fa4: 1a00 0000 |00f8: const-string v0, "" // string@0000 │ │ +438fa8: 6e20 80be 0a00 |00fa: invoke-virtual {v10, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ +438fae: 54a0 2660 |00fd: iget-object v0, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6026 │ │ +438fb2: 1d00 |00ff: monitor-enter v0 │ │ +438fb4: 54a1 2660 |0100: iget-object v1, v10, Lorg/purple/smoke/TcpTlsNeighbor;.m_mutex:Ljava/lang/Object; // field@6026 │ │ +438fb8: 6e10 955c 0100 |0102: invoke-virtual {v1}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ +438fbe: 1e00 |0105: monitor-exit v0 │ │ +438fc0: 2831 |0106: goto 0137 // +0031 │ │ +438fc2: 0d01 |0107: move-exception v1 │ │ +438fc4: 1e00 |0108: monitor-exit v0 │ │ +438fc6: 2701 |0109: throw v1 │ │ +438fc8: 0d00 |010a: move-exception v0 │ │ +438fca: 2201 f10a |010b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +438fce: 7010 ee5c 0100 |010d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +438fd4: 1a02 6a0d |0110: const-string v2, "An error (" // string@0d6a │ │ +438fd8: 6e20 f95c 2100 |0112: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +438fde: 6e10 375c 0000 |0115: invoke-virtual {v0}, Ljava/lang/Exception;.getMessage:()Ljava/lang/String; // method@5c37 │ │ +438fe4: 0c00 |0118: move-result-object v0 │ │ +438fe6: 6e20 f95c 0100 |0119: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +438fec: 1a00 fe03 |011c: const-string v0, ") occurred while attempting a connection (" // string@03fe │ │ +438ff0: 6e20 f95c 0100 |011e: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +438ff6: 7100 0b5d 0000 |0121: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +438ffc: 0b02 |0124: move-result-wide v2 │ │ +438ffe: 6e30 f55c 2103 |0125: invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@5cf5 │ │ +439004: 1a00 0c04 |0128: const-string v0, ")." // string@040c │ │ +439008: 6e20 f95c 0100 |012a: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +43900e: 6e10 035d 0100 |012d: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +439014: 0c00 |0130: move-result-object v0 │ │ +439016: 6e20 80be 0a00 |0131: invoke-virtual {v10, v0}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ +43901c: 6e10 73be 0a00 |0134: invoke-virtual {v10}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be73 │ │ +439022: 0e00 |0137: return-void │ │ catches : 3 │ │ 0x0013 - 0x0100 │ │ Ljava/lang/Exception; -> 0x010a │ │ 0x0100 - 0x0109 │ │ -> 0x0107 │ │ 0x0109 - 0x010a │ │ Ljava/lang/Exception; -> 0x010a │ │ @@ -1192477,34 +1192476,34 @@ │ │ type : '()Z' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 35 16-bit code units │ │ -43879c: |[43879c] org.purple.smoke.TcpTlsNeighbor.connected:()Z │ │ -4387ac: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -4387ae: 6e10 79be 0200 |0001: invoke-virtual {v2}, Lorg/purple/smoke/TcpTlsNeighbor;.isNetworkConnected:()Z // method@be79 │ │ -4387b4: 0a01 |0004: move-result v1 │ │ -4387b6: 3801 1d00 |0005: if-eqz v1, 0022 // +001d │ │ -4387ba: 5421 2060 |0007: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6020 │ │ -4387be: 6e10 da60 0100 |0009: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -4387c4: 0a01 |000c: move-result v1 │ │ -4387c6: 3801 1500 |000d: if-eqz v1, 0022 // +0015 │ │ -4387ca: 5421 2360 |000f: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6023 │ │ -4387ce: 6e10 da60 0100 |0011: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -4387d4: 0a01 |0014: move-result v1 │ │ -4387d6: 3801 0d00 |0015: if-eqz v1, 0022 // +000d │ │ -4387da: 5421 2f60 |0017: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -4387de: 3801 0900 |0019: if-eqz v1, 0022 // +0009 │ │ -4387e2: 6e10 8b61 0100 |001b: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.isClosed:()Z // method@618b │ │ -4387e8: 0a01 |001e: move-result v1 │ │ -4387ea: 3901 0300 |001f: if-nez v1, 0022 // +0003 │ │ -4387ee: 1210 |0021: const/4 v0, #int 1 // #1 │ │ -4387f0: 0f00 |0022: return v0 │ │ +438798: |[438798] org.purple.smoke.TcpTlsNeighbor.connected:()Z │ │ +4387a8: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +4387aa: 6e10 79be 0200 |0001: invoke-virtual {v2}, Lorg/purple/smoke/TcpTlsNeighbor;.isNetworkConnected:()Z // method@be79 │ │ +4387b0: 0a01 |0004: move-result v1 │ │ +4387b2: 3801 1d00 |0005: if-eqz v1, 0022 // +001d │ │ +4387b6: 5421 2060 |0007: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6020 │ │ +4387ba: 6e10 da60 0100 |0009: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +4387c0: 0a01 |000c: move-result v1 │ │ +4387c2: 3801 1500 |000d: if-eqz v1, 0022 // +0015 │ │ +4387c6: 5421 2360 |000f: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6023 │ │ +4387ca: 6e10 da60 0100 |0011: invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +4387d0: 0a01 |0014: move-result v1 │ │ +4387d2: 3801 0d00 |0015: if-eqz v1, 0022 // +000d │ │ +4387d6: 5421 2f60 |0017: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +4387da: 3801 0900 |0019: if-eqz v1, 0022 // +0009 │ │ +4387de: 6e10 8b61 0100 |001b: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.isClosed:()Z // method@618b │ │ +4387e4: 0a01 |001e: move-result v1 │ │ +4387e6: 3901 0300 |001f: if-nez v1, 0022 // +0003 │ │ +4387ea: 1210 |0021: const/4 v0, #int 1 // #1 │ │ +4387ec: 0f00 |0022: return v0 │ │ catches : 1 │ │ 0x0001 - 0x001f │ │ Ljava/lang/Exception; -> 0x0022 │ │ positions : │ │ 0x0001 line=98 │ │ 0x0009 line=99 │ │ 0x0011 line=100 │ │ @@ -1192517,62 +1192516,62 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 7 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 104 16-bit code units │ │ -43904c: |[43904c] org.purple.smoke.TcpTlsNeighbor.disconnect:()V │ │ -43905c: 6f10 15bc 0600 |0000: invoke-super {v6}, Lorg/purple/smoke/Neighbor;.disconnect:()V // method@bc15 │ │ -439062: 5460 2f60 |0003: iget-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -439066: 3800 0500 |0005: if-eqz v0, 000a // +0005 │ │ -43906a: 6e10 9361 0000 |0007: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.shutdownInput:()V // method@6193 │ │ -439070: 5460 2f60 |000a: iget-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -439074: 3800 0500 |000c: if-eqz v0, 0011 // +0005 │ │ -439078: 6e10 9461 0000 |000e: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.shutdownOutput:()V // method@6194 │ │ -43907e: 1200 |0011: const/4 v0, #int 0 // #0 │ │ -439080: 1201 |0012: const/4 v1, #int 0 // #0 │ │ -439082: 1602 0000 |0013: const-wide/16 v2, #int 0 // #0 │ │ -439086: 5464 2f60 |0015: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -43908a: 3804 2c00 |0017: if-eqz v4, 0043 // +002c │ │ -43908e: 6e10 8161 0400 |0019: invoke-virtual {v4}, Ljavax/net/ssl/SSLSocket;.close:()V // method@6181 │ │ -439094: 2827 |001c: goto 0043 // +0027 │ │ -439096: 0d04 |001d: move-exception v4 │ │ -439098: 5465 1960 |001e: iget-object v5, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6019 │ │ -43909c: 6e30 e560 2503 |0020: invoke-virtual {v5, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -4390a2: 5465 1a60 |0023: iget-object v5, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@601a │ │ -4390a6: 6e30 e560 2503 |0025: invoke-virtual {v5, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -4390ac: 5465 2060 |0028: iget-object v5, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6020 │ │ -4390b0: 6e20 dc60 1500 |002a: invoke-virtual {v5, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -4390b6: 5465 2360 |002d: iget-object v5, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6023 │ │ -4390ba: 6e20 dc60 1500 |002f: invoke-virtual {v5, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -4390c0: 5461 2460 |0032: iget-object v1, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6024 │ │ -4390c4: 6e30 e560 2103 |0034: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -4390ca: 5b60 2f60 |0037: iput-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -4390ce: 5460 3060 |0039: iget-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6030 │ │ -4390d2: 7100 0b5d 0000 |003b: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -4390d8: 0b01 |003e: move-result-wide v1 │ │ -4390da: 6e30 e560 1002 |003f: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -4390e0: 2704 |0042: throw v4 │ │ -4390e2: 5464 1960 |0043: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6019 │ │ -4390e6: 6e30 e560 2403 |0045: invoke-virtual {v4, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -4390ec: 5464 1a60 |0048: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@601a │ │ -4390f0: 6e30 e560 2403 |004a: invoke-virtual {v4, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -4390f6: 5464 2060 |004d: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6020 │ │ -4390fa: 6e20 dc60 1400 |004f: invoke-virtual {v4, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -439100: 5464 2360 |0052: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6023 │ │ -439104: 6e20 dc60 1400 |0054: invoke-virtual {v4, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -43910a: 5461 2460 |0057: iget-object v1, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6024 │ │ -43910e: 6e30 e560 2103 |0059: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -439114: 5b60 2f60 |005c: iput-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -439118: 5460 3060 |005e: iget-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6030 │ │ -43911c: 7100 0b5d 0000 |0060: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -439122: 0b01 |0063: move-result-wide v1 │ │ -439124: 6e30 e560 1002 |0064: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43912a: 0e00 |0067: return-void │ │ +439048: |[439048] org.purple.smoke.TcpTlsNeighbor.disconnect:()V │ │ +439058: 6f10 15bc 0600 |0000: invoke-super {v6}, Lorg/purple/smoke/Neighbor;.disconnect:()V // method@bc15 │ │ +43905e: 5460 2f60 |0003: iget-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +439062: 3800 0500 |0005: if-eqz v0, 000a // +0005 │ │ +439066: 6e10 9361 0000 |0007: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.shutdownInput:()V // method@6193 │ │ +43906c: 5460 2f60 |000a: iget-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +439070: 3800 0500 |000c: if-eqz v0, 0011 // +0005 │ │ +439074: 6e10 9461 0000 |000e: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.shutdownOutput:()V // method@6194 │ │ +43907a: 1200 |0011: const/4 v0, #int 0 // #0 │ │ +43907c: 1201 |0012: const/4 v1, #int 0 // #0 │ │ +43907e: 1602 0000 |0013: const-wide/16 v2, #int 0 // #0 │ │ +439082: 5464 2f60 |0015: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +439086: 3804 2c00 |0017: if-eqz v4, 0043 // +002c │ │ +43908a: 6e10 8161 0400 |0019: invoke-virtual {v4}, Ljavax/net/ssl/SSLSocket;.close:()V // method@6181 │ │ +439090: 2827 |001c: goto 0043 // +0027 │ │ +439092: 0d04 |001d: move-exception v4 │ │ +439094: 5465 1960 |001e: iget-object v5, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6019 │ │ +439098: 6e30 e560 2503 |0020: invoke-virtual {v5, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +43909e: 5465 1a60 |0023: iget-object v5, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@601a │ │ +4390a2: 6e30 e560 2503 |0025: invoke-virtual {v5, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +4390a8: 5465 2060 |0028: iget-object v5, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6020 │ │ +4390ac: 6e20 dc60 1500 |002a: invoke-virtual {v5, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +4390b2: 5465 2360 |002d: iget-object v5, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6023 │ │ +4390b6: 6e20 dc60 1500 |002f: invoke-virtual {v5, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +4390bc: 5461 2460 |0032: iget-object v1, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6024 │ │ +4390c0: 6e30 e560 2103 |0034: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +4390c6: 5b60 2f60 |0037: iput-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +4390ca: 5460 3060 |0039: iget-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6030 │ │ +4390ce: 7100 0b5d 0000 |003b: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +4390d4: 0b01 |003e: move-result-wide v1 │ │ +4390d6: 6e30 e560 1002 |003f: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +4390dc: 2704 |0042: throw v4 │ │ +4390de: 5464 1960 |0043: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6019 │ │ +4390e2: 6e30 e560 2403 |0045: invoke-virtual {v4, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +4390e8: 5464 1a60 |0048: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@601a │ │ +4390ec: 6e30 e560 2403 |004a: invoke-virtual {v4, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +4390f2: 5464 2060 |004d: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_handshakeCompleted:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6020 │ │ +4390f6: 6e20 dc60 1400 |004f: invoke-virtual {v4, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +4390fc: 5464 2360 |0052: iget-object v4, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_isValidCertificate:Ljava/util/concurrent/atomic/AtomicBoolean; // field@6023 │ │ +439100: 6e20 dc60 1400 |0054: invoke-virtual {v4, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +439106: 5461 2460 |0057: iget-object v1, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6024 │ │ +43910a: 6e30 e560 2103 |0059: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +439110: 5b60 2f60 |005c: iput-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +439114: 5460 3060 |005e: iget-object v0, v6, Lorg/purple/smoke/TcpTlsNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6030 │ │ +439118: 7100 0b5d 0000 |0060: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +43911e: 0b01 |0063: move-result-wide v1 │ │ +439120: 6e30 e560 1002 |0064: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +439126: 0e00 |0067: return-void │ │ catches : 3 │ │ 0x0003 - 0x000a │ │ Ljava/lang/Exception; -> 0x000a │ │ 0x000a - 0x0011 │ │ Ljava/lang/Exception; -> 0x0011 │ │ 0x0015 - 0x001c │ │ Ljava/lang/Exception; -> 0x0043 │ │ @@ -1192608,36 +1192607,36 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 38 16-bit code units │ │ -438920: |[438920] org.purple.smoke.TcpTlsNeighbor.getLocalIp:()Ljava/lang/String; │ │ -438930: 5420 2f60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438934: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ -438938: 6e10 8561 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getLocalAddress:()Ljava/net/InetAddress; // method@6185 │ │ -43893e: 0c00 |0007: move-result-object v0 │ │ -438940: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ -438944: 5420 2f60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438948: 6e10 8561 0000 |000c: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getLocalAddress:()Ljava/net/InetAddress; // method@6185 │ │ -43894e: 0c00 |000f: move-result-object v0 │ │ -438950: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ -438956: 0c00 |0013: move-result-object v0 │ │ -438958: 1100 |0014: return-object v0 │ │ -43895a: 0000 |0015: nop // spacer │ │ -43895c: 5420 3360 |0016: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_version:Ljava/lang/String; // field@6033 │ │ -438960: 1a01 a81d |0018: const-string v1, "IPv4" // string@1da8 │ │ -438964: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -43896a: 0a00 |001d: move-result v0 │ │ -43896c: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ -438970: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ -438974: 1100 |0022: return-object v0 │ │ -438976: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ -43897a: 1100 |0025: return-object v0 │ │ +43891c: |[43891c] org.purple.smoke.TcpTlsNeighbor.getLocalIp:()Ljava/lang/String; │ │ +43892c: 5420 2f60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438930: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ +438934: 6e10 8561 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getLocalAddress:()Ljava/net/InetAddress; // method@6185 │ │ +43893a: 0c00 |0007: move-result-object v0 │ │ +43893c: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ +438940: 5420 2f60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438944: 6e10 8561 0000 |000c: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getLocalAddress:()Ljava/net/InetAddress; // method@6185 │ │ +43894a: 0c00 |000f: move-result-object v0 │ │ +43894c: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ +438952: 0c00 |0013: move-result-object v0 │ │ +438954: 1100 |0014: return-object v0 │ │ +438956: 0000 |0015: nop // spacer │ │ +438958: 5420 3360 |0016: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_version:Ljava/lang/String; // field@6033 │ │ +43895c: 1a01 a81d |0018: const-string v1, "IPv4" // string@1da8 │ │ +438960: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +438966: 0a00 |001d: move-result v0 │ │ +438968: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ +43896c: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ +438970: 1100 |0022: return-object v0 │ │ +438972: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ +438976: 1100 |0025: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x0014 │ │ Ljava/lang/Exception; -> 0x0015 │ │ positions : │ │ 0x0000 line=63 │ │ 0x000a line=64 │ │ 0x0016 line=70 │ │ @@ -1192649,26 +1192648,26 @@ │ │ type : '()I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 19 16-bit code units │ │ -438804: |[438804] org.purple.smoke.TcpTlsNeighbor.getLocalPort:()I │ │ -438814: 5410 2f60 |0000: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438818: 3800 0f00 |0002: if-eqz v0, 0011 // +000f │ │ -43881c: 6e10 8b61 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.isClosed:()Z // method@618b │ │ -438822: 0a00 |0007: move-result v0 │ │ -438824: 3900 0900 |0008: if-nez v0, 0011 // +0009 │ │ -438828: 5410 2f60 |000a: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -43882c: 6e10 8661 0000 |000c: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getLocalPort:()I // method@6186 │ │ -438832: 0a00 |000f: move-result v0 │ │ -438834: 0f00 |0010: return v0 │ │ -438836: 1200 |0011: const/4 v0, #int 0 // #0 │ │ -438838: 0f00 |0012: return v0 │ │ +438800: |[438800] org.purple.smoke.TcpTlsNeighbor.getLocalPort:()I │ │ +438810: 5410 2f60 |0000: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438814: 3800 0f00 |0002: if-eqz v0, 0011 // +000f │ │ +438818: 6e10 8b61 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.isClosed:()Z // method@618b │ │ +43881e: 0a00 |0007: move-result v0 │ │ +438820: 3900 0900 |0008: if-nez v0, 0011 // +0009 │ │ +438824: 5410 2f60 |000a: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438828: 6e10 8661 0000 |000c: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getLocalPort:()I // method@6186 │ │ +43882e: 0a00 |000f: move-result v0 │ │ +438830: 0f00 |0010: return v0 │ │ +438832: 1200 |0011: const/4 v0, #int 0 // #0 │ │ +438834: 0f00 |0012: return v0 │ │ catches : 1 │ │ 0x0000 - 0x0010 │ │ Ljava/lang/Exception; -> 0x0011 │ │ positions : │ │ 0x0000 line=115 │ │ 0x000a line=116 │ │ locals : │ │ @@ -1192679,47 +1192678,47 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 66 16-bit code units │ │ -43898c: |[43898c] org.purple.smoke.TcpTlsNeighbor.getSessionCipher:()Ljava/lang/String; │ │ -43899c: 5420 2f60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -4389a0: 3800 3d00 |0002: if-eqz v0, 003f // +003d │ │ -4389a4: 6e10 8961 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getSession:()Ljavax/net/ssl/SSLSession; // method@6189 │ │ -4389aa: 0c00 |0007: move-result-object v0 │ │ -4389ac: 3800 3700 |0008: if-eqz v0, 003f // +0037 │ │ -4389b0: 5420 2f60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -4389b4: 6e10 8961 0000 |000c: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getSession:()Ljavax/net/ssl/SSLSession; // method@6189 │ │ -4389ba: 0c00 |000f: move-result-object v0 │ │ -4389bc: 7210 7f61 0000 |0010: invoke-interface {v0}, Ljavax/net/ssl/SSLSession;.isValid:()Z // method@617f │ │ -4389c2: 0a00 |0013: move-result v0 │ │ -4389c4: 3800 2b00 |0014: if-eqz v0, 003f // +002b │ │ -4389c8: 2200 f10a |0016: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ -4389cc: 7010 ee5c 0000 |0018: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -4389d2: 5421 2f60 |001b: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -4389d6: 6e10 8961 0100 |001d: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getSession:()Ljavax/net/ssl/SSLSession; // method@6189 │ │ -4389dc: 0c01 |0020: move-result-object v1 │ │ -4389de: 7210 7d61 0100 |0021: invoke-interface {v1}, Ljavax/net/ssl/SSLSession;.getCipherSuite:()Ljava/lang/String; // method@617d │ │ -4389e4: 0c01 |0024: move-result-object v1 │ │ -4389e6: 6e20 f95c 1000 |0025: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4389ec: 1a01 c955 |0028: const-string v1, "_" // string@55c9 │ │ -4389f0: 6e20 f95c 1000 |002a: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4389f6: 5421 2f60 |002d: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -4389fa: 6e10 8961 0100 |002f: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getSession:()Ljavax/net/ssl/SSLSession; // method@6189 │ │ -438a00: 0c01 |0032: move-result-object v1 │ │ -438a02: 7210 7e61 0100 |0033: invoke-interface {v1}, Ljavax/net/ssl/SSLSession;.getProtocol:()Ljava/lang/String; // method@617e │ │ -438a08: 0c01 |0036: move-result-object v1 │ │ -438a0a: 6e20 f95c 1000 |0037: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -438a10: 6e10 035d 0000 |003a: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -438a16: 0c00 |003d: move-result-object v0 │ │ -438a18: 1100 |003e: return-object v0 │ │ -438a1a: 1a00 0000 |003f: const-string v0, "" // string@0000 │ │ -438a1e: 1100 |0041: return-object v0 │ │ +438988: |[438988] org.purple.smoke.TcpTlsNeighbor.getSessionCipher:()Ljava/lang/String; │ │ +438998: 5420 2f60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +43899c: 3800 3d00 |0002: if-eqz v0, 003f // +003d │ │ +4389a0: 6e10 8961 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getSession:()Ljavax/net/ssl/SSLSession; // method@6189 │ │ +4389a6: 0c00 |0007: move-result-object v0 │ │ +4389a8: 3800 3700 |0008: if-eqz v0, 003f // +0037 │ │ +4389ac: 5420 2f60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +4389b0: 6e10 8961 0000 |000c: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getSession:()Ljavax/net/ssl/SSLSession; // method@6189 │ │ +4389b6: 0c00 |000f: move-result-object v0 │ │ +4389b8: 7210 7f61 0000 |0010: invoke-interface {v0}, Ljavax/net/ssl/SSLSession;.isValid:()Z // method@617f │ │ +4389be: 0a00 |0013: move-result v0 │ │ +4389c0: 3800 2b00 |0014: if-eqz v0, 003f // +002b │ │ +4389c4: 2200 f10a |0016: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ +4389c8: 7010 ee5c 0000 |0018: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4389ce: 5421 2f60 |001b: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +4389d2: 6e10 8961 0100 |001d: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getSession:()Ljavax/net/ssl/SSLSession; // method@6189 │ │ +4389d8: 0c01 |0020: move-result-object v1 │ │ +4389da: 7210 7d61 0100 |0021: invoke-interface {v1}, Ljavax/net/ssl/SSLSession;.getCipherSuite:()Ljava/lang/String; // method@617d │ │ +4389e0: 0c01 |0024: move-result-object v1 │ │ +4389e2: 6e20 f95c 1000 |0025: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4389e8: 1a01 c955 |0028: const-string v1, "_" // string@55c9 │ │ +4389ec: 6e20 f95c 1000 |002a: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4389f2: 5421 2f60 |002d: iget-object v1, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +4389f6: 6e10 8961 0100 |002f: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getSession:()Ljavax/net/ssl/SSLSession; // method@6189 │ │ +4389fc: 0c01 |0032: move-result-object v1 │ │ +4389fe: 7210 7e61 0100 |0033: invoke-interface {v1}, Ljavax/net/ssl/SSLSession;.getProtocol:()Ljava/lang/String; // method@617e │ │ +438a04: 0c01 |0036: move-result-object v1 │ │ +438a06: 6e20 f95c 1000 |0037: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +438a0c: 6e10 035d 0000 |003a: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +438a12: 0c00 |003d: move-result-object v0 │ │ +438a14: 1100 |003e: return-object v0 │ │ +438a16: 1a00 0000 |003f: const-string v0, "" // string@0000 │ │ +438a1a: 1100 |0041: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x003e │ │ Ljava/lang/Exception; -> 0x003f │ │ positions : │ │ 0x0000 line=80 │ │ 0x0004 line=81 │ │ 0x000c line=82 │ │ @@ -1192733,36 +1192732,36 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 38 16-bit code units │ │ -438a30: |[438a30] org.purple.smoke.TcpTlsNeighbor.remoteIpAddress:()Ljava/lang/String; │ │ -438a40: 5420 2f60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438a44: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ -438a48: 6e10 8361 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getInetAddress:()Ljava/net/InetAddress; // method@6183 │ │ -438a4e: 0c00 |0007: move-result-object v0 │ │ -438a50: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ -438a54: 5420 2f60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438a58: 6e10 8361 0000 |000c: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getInetAddress:()Ljava/net/InetAddress; // method@6183 │ │ -438a5e: 0c00 |000f: move-result-object v0 │ │ -438a60: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ -438a66: 0c00 |0013: move-result-object v0 │ │ -438a68: 1100 |0014: return-object v0 │ │ -438a6a: 0000 |0015: nop // spacer │ │ -438a6c: 5420 3360 |0016: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_version:Ljava/lang/String; // field@6033 │ │ -438a70: 1a01 a81d |0018: const-string v1, "IPv4" // string@1da8 │ │ -438a74: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -438a7a: 0a00 |001d: move-result v0 │ │ -438a7c: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ -438a80: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ -438a84: 1100 |0022: return-object v0 │ │ -438a86: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ -438a8a: 1100 |0025: return-object v0 │ │ +438a2c: |[438a2c] org.purple.smoke.TcpTlsNeighbor.remoteIpAddress:()Ljava/lang/String; │ │ +438a3c: 5420 2f60 |0000: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438a40: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ +438a44: 6e10 8361 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getInetAddress:()Ljava/net/InetAddress; // method@6183 │ │ +438a4a: 0c00 |0007: move-result-object v0 │ │ +438a4c: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ +438a50: 5420 2f60 |000a: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438a54: 6e10 8361 0000 |000c: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getInetAddress:()Ljava/net/InetAddress; // method@6183 │ │ +438a5a: 0c00 |000f: move-result-object v0 │ │ +438a5c: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ +438a62: 0c00 |0013: move-result-object v0 │ │ +438a64: 1100 |0014: return-object v0 │ │ +438a66: 0000 |0015: nop // spacer │ │ +438a68: 5420 3360 |0016: iget-object v0, v2, Lorg/purple/smoke/TcpTlsNeighbor;.m_version:Ljava/lang/String; // field@6033 │ │ +438a6c: 1a01 a81d |0018: const-string v1, "IPv4" // string@1da8 │ │ +438a70: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +438a76: 0a00 |001d: move-result v0 │ │ +438a78: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ +438a7c: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ +438a80: 1100 |0022: return-object v0 │ │ +438a82: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ +438a86: 1100 |0025: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x0014 │ │ Ljava/lang/Exception; -> 0x0015 │ │ positions : │ │ 0x0000 line=569 │ │ 0x000a line=570 │ │ 0x0016 line=576 │ │ @@ -1192774,24 +1192773,24 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 16 16-bit code units │ │ -438a9c: |[438a9c] org.purple.smoke.TcpTlsNeighbor.remotePort:()Ljava/lang/String; │ │ -438aac: 5410 2f60 |0000: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438ab0: 3800 0b00 |0002: if-eqz v0, 000d // +000b │ │ -438ab4: 6e10 8861 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getPort:()I // method@6188 │ │ -438aba: 0a00 |0007: move-result v0 │ │ -438abc: 7110 d55c 0000 |0008: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -438ac2: 0c00 |000b: move-result-object v0 │ │ -438ac4: 1100 |000c: return-object v0 │ │ -438ac6: 1a00 c704 |000d: const-string v0, "0" // string@04c7 │ │ -438aca: 1100 |000f: return-object v0 │ │ +438a98: |[438a98] org.purple.smoke.TcpTlsNeighbor.remotePort:()Ljava/lang/String; │ │ +438aa8: 5410 2f60 |0000: iget-object v0, v1, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438aac: 3800 0b00 |0002: if-eqz v0, 000d // +000b │ │ +438ab0: 6e10 8861 0000 |0004: invoke-virtual {v0}, Ljavax/net/ssl/SSLSocket;.getPort:()I // method@6188 │ │ +438ab6: 0a00 |0007: move-result v0 │ │ +438ab8: 7110 d55c 0000 |0008: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +438abe: 0c00 |000b: move-result-object v0 │ │ +438ac0: 1100 |000c: return-object v0 │ │ +438ac2: 1a00 c704 |000d: const-string v0, "0" // string@04c7 │ │ +438ac6: 1100 |000f: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x000c │ │ Ljava/lang/Exception; -> 0x000d │ │ positions : │ │ 0x0000 line=586 │ │ 0x0004 line=587 │ │ locals : │ │ @@ -1192802,46 +1192801,46 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -438adc: |[438adc] org.purple.smoke.TcpTlsNeighbor.remoteScopeId:()Ljava/lang/String; │ │ -438aec: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ -438af0: 1100 |0002: return-object v0 │ │ +438ad8: |[438ad8] org.purple.smoke.TcpTlsNeighbor.remoteScopeId:()Ljava/lang/String; │ │ +438ae8: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ +438aec: 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 │ │ -4388dc: |[4388dc] org.purple.smoke.TcpTlsNeighbor.send:(Ljava/lang/String;)I │ │ -4388ec: 6e10 72be 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be72 │ │ -4388f2: 0a00 |0003: move-result v0 │ │ -4388f4: 3800 1400 |0004: if-eqz v0, 0018 // +0014 │ │ -4388f8: 3802 1200 |0006: if-eqz v2, 0018 // +0012 │ │ -4388fc: 6e10 c55c 0200 |0008: invoke-virtual {v2}, Ljava/lang/String;.length:()I // method@5cc5 │ │ -438902: 0a00 |000b: move-result v0 │ │ -438904: 3900 0300 |000c: if-nez v0, 000f // +0003 │ │ -438908: 280a |000e: goto 0018 // +000a │ │ -43890a: 6e10 bc5c 0200 |000f: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -438910: 0c02 |0012: move-result-object v2 │ │ -438912: 6e20 7fbe 2100 |0013: invoke-virtual {v1, v2}, Lorg/purple/smoke/TcpTlsNeighbor;.send:([B)I // method@be7f │ │ -438918: 0a02 |0016: move-result v2 │ │ -43891a: 0f02 |0017: return v2 │ │ -43891c: 1202 |0018: const/4 v2, #int 0 // #0 │ │ -43891e: 0f02 |0019: return v2 │ │ +4388d8: |[4388d8] org.purple.smoke.TcpTlsNeighbor.send:(Ljava/lang/String;)I │ │ +4388e8: 6e10 72be 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be72 │ │ +4388ee: 0a00 |0003: move-result v0 │ │ +4388f0: 3800 1400 |0004: if-eqz v0, 0018 // +0014 │ │ +4388f4: 3802 1200 |0006: if-eqz v2, 0018 // +0012 │ │ +4388f8: 6e10 c55c 0200 |0008: invoke-virtual {v2}, Ljava/lang/String;.length:()I // method@5cc5 │ │ +4388fe: 0a00 |000b: move-result v0 │ │ +438900: 3900 0300 |000c: if-nez v0, 000f // +0003 │ │ +438904: 280a |000e: goto 0018 // +000a │ │ +438906: 6e10 bc5c 0200 |000f: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +43890c: 0c02 |0012: move-result-object v2 │ │ +43890e: 6e20 7fbe 2100 |0013: invoke-virtual {v1, v2}, Lorg/purple/smoke/TcpTlsNeighbor;.send:([B)I // method@be7f │ │ +438914: 0a02 |0016: move-result v2 │ │ +438916: 0f02 |0017: return v2 │ │ +438918: 1202 |0018: const/4 v2, #int 0 // #0 │ │ +43891a: 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; │ │ @@ -1192851,46 +1192850,46 @@ │ │ type : '([B)I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 56 16-bit code units │ │ -43884c: |[43884c] org.purple.smoke.TcpTlsNeighbor.send:([B)I │ │ -43885c: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -43885e: 3805 3600 |0001: if-eqz v5, 0037 // +0036 │ │ -438862: 2151 |0003: array-length v1, v5 │ │ -438864: 3801 3300 |0004: if-eqz v1, 0037 // +0033 │ │ -438868: 6e10 72be 0400 |0006: invoke-virtual {v4}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be72 │ │ -43886e: 0a01 |0009: move-result v1 │ │ -438870: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ -438874: 282b |000c: goto 0037 // +002b │ │ -438876: 5441 2f60 |000d: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -43887a: 3801 1f00 |000f: if-eqz v1, 002e // +001f │ │ -43887e: 6e10 8761 0100 |0011: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getOutputStream:()Ljava/io/OutputStream; // method@6187 │ │ -438884: 0c01 |0014: move-result-object v1 │ │ -438886: 3901 0300 |0015: if-nez v1, 0018 // +0003 │ │ -43888a: 2817 |0017: goto 002e // +0017 │ │ -43888c: 5441 2f60 |0018: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ -438890: 6e10 8761 0100 |001a: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getOutputStream:()Ljava/io/OutputStream; // method@6187 │ │ -438896: 0c01 |001d: move-result-object v1 │ │ -438898: 6e20 db5b 5100 |001e: invoke-virtual {v1, v5}, Ljava/io/OutputStream;.write:([B)V // method@5bdb │ │ -43889e: 7110 28bb 0500 |0021: invoke-static {v5}, Lorg/purple/smoke/Kernel;.writeCongestionDigest:([B)V // method@bb28 │ │ -4388a4: 5441 1a60 |0024: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@601a │ │ -4388a8: 2152 |0026: array-length v2, v5 │ │ -4388aa: 8122 |0027: int-to-long v2, v2 │ │ -4388ac: 6e30 e460 2103 |0028: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e4 │ │ -4388b2: 2155 |002b: array-length v5, v5 │ │ -4388b4: b050 |002c: add-int/2addr v0, v5 │ │ -4388b6: 280a |002d: goto 0037 // +000a │ │ -4388b8: 0f00 |002e: return v0 │ │ -4388ba: 1a05 0e09 |002f: const-string v5, "A socket error occurred on send()." // string@090e │ │ -4388be: 6e20 80be 5400 |0031: invoke-virtual {v4, v5}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ -4388c4: 6e10 73be 0400 |0034: invoke-virtual {v4}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be73 │ │ -4388ca: 0f00 |0037: return v0 │ │ +438848: |[438848] org.purple.smoke.TcpTlsNeighbor.send:([B)I │ │ +438858: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +43885a: 3805 3600 |0001: if-eqz v5, 0037 // +0036 │ │ +43885e: 2151 |0003: array-length v1, v5 │ │ +438860: 3801 3300 |0004: if-eqz v1, 0037 // +0033 │ │ +438864: 6e10 72be 0400 |0006: invoke-virtual {v4}, Lorg/purple/smoke/TcpTlsNeighbor;.connected:()Z // method@be72 │ │ +43886a: 0a01 |0009: move-result v1 │ │ +43886c: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ +438870: 282b |000c: goto 0037 // +002b │ │ +438872: 5441 2f60 |000d: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +438876: 3801 1f00 |000f: if-eqz v1, 002e // +001f │ │ +43887a: 6e10 8761 0100 |0011: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getOutputStream:()Ljava/io/OutputStream; // method@6187 │ │ +438880: 0c01 |0014: move-result-object v1 │ │ +438882: 3901 0300 |0015: if-nez v1, 0018 // +0003 │ │ +438886: 2817 |0017: goto 002e // +0017 │ │ +438888: 5441 2f60 |0018: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor;.m_socket:Ljavax/net/ssl/SSLSocket; // field@602f │ │ +43888c: 6e10 8761 0100 |001a: invoke-virtual {v1}, Ljavax/net/ssl/SSLSocket;.getOutputStream:()Ljava/io/OutputStream; // method@6187 │ │ +438892: 0c01 |001d: move-result-object v1 │ │ +438894: 6e20 db5b 5100 |001e: invoke-virtual {v1, v5}, Ljava/io/OutputStream;.write:([B)V // method@5bdb │ │ +43889a: 7110 28bb 0500 |0021: invoke-static {v5}, Lorg/purple/smoke/Kernel;.writeCongestionDigest:([B)V // method@bb28 │ │ +4388a0: 5441 1a60 |0024: iget-object v1, v4, Lorg/purple/smoke/TcpTlsNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@601a │ │ +4388a4: 2152 |0026: array-length v2, v5 │ │ +4388a6: 8122 |0027: int-to-long v2, v2 │ │ +4388a8: 6e30 e460 2103 |0028: invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e4 │ │ +4388ae: 2155 |002b: array-length v5, v5 │ │ +4388b0: b050 |002c: add-int/2addr v0, v5 │ │ +4388b2: 280a |002d: goto 0037 // +000a │ │ +4388b4: 0f00 |002e: return v0 │ │ +4388b6: 1a05 0e09 |002f: const-string v5, "A socket error occurred on send()." // string@090e │ │ +4388ba: 6e20 80be 5400 |0031: invoke-virtual {v4, v5}, Lorg/purple/smoke/TcpTlsNeighbor;.setError:(Ljava/lang/String;)V // method@be80 │ │ +4388c0: 6e10 73be 0400 |0034: invoke-virtual {v4}, Lorg/purple/smoke/TcpTlsNeighbor;.disconnect:()V // method@be73 │ │ +4388c6: 0f00 |0037: return v0 │ │ catches : 1 │ │ 0x000d - 0x002c │ │ Ljava/lang/Exception; -> 0x002f │ │ positions : │ │ 0x0003 line=135 │ │ 0x000d line=142 │ │ 0x0018 line=145 │ │ @@ -1192908,17 +1192907,17 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -438af4: |[438af4] org.purple.smoke.TcpTlsNeighbor.transport:()Ljava/lang/String; │ │ -438b04: 1a00 094d |0000: const-string v0, "TCP" // string@4d09 │ │ -438b08: 1100 |0002: return-object v0 │ │ +438af0: |[438af0] org.purple.smoke.TcpTlsNeighbor.transport:()Ljava/lang/String; │ │ +438b00: 1a00 094d |0000: const-string v0, "TCP" // string@4d09 │ │ +438b04: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ source_file_idx : 20083 (TcpTlsNeighbor.java) │ │ │ │ Class #4376 header: │ │ @@ -1192953,34 +1192952,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 │ │ -439990: |[439990] org.purple.smoke.UdpMulticastNeighbor.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V │ │ -4399a0: 1a05 0050 |0000: const-string v5, "UDP" // string@5000 │ │ -4399a4: 0780 |0002: move-object v0, v8 │ │ -4399a6: 0791 |0003: move-object v1, v9 │ │ -4399a8: 07a2 |0004: move-object v2, v10 │ │ -4399aa: 07b3 |0005: move-object v3, v11 │ │ -4399ac: 07c4 |0006: move-object v4, v12 │ │ -4399ae: 07d6 |0007: move-object v6, v13 │ │ -4399b0: 01e7 |0008: move v7, v14 │ │ -4399b2: 7608 07bc 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@bc07 │ │ -4399b8: 1209 |000c: const/4 v9, #int 0 // #0 │ │ -4399ba: 5b89 4660 |000d: iput-object v9, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ -4399be: 5480 4560 |000f: iget-object v0, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6045 │ │ -4399c2: 2201 3d1b |0011: new-instance v1, Lorg/purple/smoke/UdpMulticastNeighbor$1; // type@1b3d │ │ -4399c6: 7020 85be 8100 |0013: invoke-direct {v1, v8}, Lorg/purple/smoke/UdpMulticastNeighbor$1;.:(Lorg/purple/smoke/UdpMulticastNeighbor;)V // method@be85 │ │ -4399cc: 6206 ef2c |0016: sget-object v6, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -4399d0: 1602 0000 |0018: const-wide/16 v2, #int 0 // #0 │ │ -4399d4: 1604 6400 |001a: const-wide/16 v4, #int 100 // #64 │ │ -4399d8: 7807 d060 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@60d0 │ │ -4399de: 0e00 |001f: return-void │ │ +43998c: |[43998c] org.purple.smoke.UdpMulticastNeighbor.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V │ │ +43999c: 1a05 0050 |0000: const-string v5, "UDP" // string@5000 │ │ +4399a0: 0780 |0002: move-object v0, v8 │ │ +4399a2: 0791 |0003: move-object v1, v9 │ │ +4399a4: 07a2 |0004: move-object v2, v10 │ │ +4399a6: 07b3 |0005: move-object v3, v11 │ │ +4399a8: 07c4 |0006: move-object v4, v12 │ │ +4399aa: 07d6 |0007: move-object v6, v13 │ │ +4399ac: 01e7 |0008: move v7, v14 │ │ +4399ae: 7608 07bc 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@bc07 │ │ +4399b4: 1209 |000c: const/4 v9, #int 0 // #0 │ │ +4399b6: 5b89 4660 |000d: iput-object v9, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ +4399ba: 5480 4560 |000f: iget-object v0, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6045 │ │ +4399be: 2201 3d1b |0011: new-instance v1, Lorg/purple/smoke/UdpMulticastNeighbor$1; // type@1b3d │ │ +4399c2: 7020 85be 8100 |0013: invoke-direct {v1, v8}, Lorg/purple/smoke/UdpMulticastNeighbor$1;.:(Lorg/purple/smoke/UdpMulticastNeighbor;)V // method@be85 │ │ +4399c8: 6206 ef2c |0016: sget-object v6, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +4399cc: 1602 0000 |0018: const-wide/16 v2, #int 0 // #0 │ │ +4399d0: 1604 6400 |001a: const-wide/16 v4, #int 100 // #64 │ │ +4399d4: 7807 d060 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@60d0 │ │ +4399da: 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; │ │ @@ -1192996,17 +1192995,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 │ │ -439978: |[439978] org.purple.smoke.UdpMulticastNeighbor.access$000:(Lorg/purple/smoke/UdpMulticastNeighbor;)Ljava/net/MulticastSocket; │ │ -439988: 5400 4660 |0000: iget-object v0, v0, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ -43998c: 1100 |0002: return-object v0 │ │ +439974: |[439974] org.purple.smoke.UdpMulticastNeighbor.access$000:(Lorg/purple/smoke/UdpMulticastNeighbor;)Ljava/net/MulticastSocket; │ │ +439984: 5400 4660 |0000: iget-object v0, v0, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ +439988: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=37 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/UdpMulticastNeighbor; │ │ │ │ Virtual methods - │ │ @@ -1193015,36 +1193014,36 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 38 16-bit code units │ │ -4399e0: |[4399e0] org.purple.smoke.UdpMulticastNeighbor.abort:()V │ │ -4399f0: 6e10 8cbe 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be8c │ │ -4399f6: 6f10 08bc 0500 |0003: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.abort:()V // method@bc08 │ │ -4399fc: 5450 4560 |0006: iget-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6045 │ │ -439a00: 1d00 |0008: monitor-enter v0 │ │ -439a02: 5451 4560 |0009: iget-object v1, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6045 │ │ -439a06: 7210 d160 0100 |000b: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60d1 │ │ -439a0c: 2803 |000e: goto 0011 // +0003 │ │ -439a0e: 0d01 |000f: move-exception v1 │ │ -439a10: 2814 |0010: goto 0024 // +0014 │ │ -439a12: 5451 4560 |0011: iget-object v1, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6045 │ │ -439a16: 1602 0500 |0013: const-wide/16 v2, #int 5 // #5 │ │ -439a1a: 6204 f22c |0015: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ -439a1e: 7240 ce60 2143 |0017: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60ce │ │ -439a24: 0a01 |001a: move-result v1 │ │ -439a26: 3901 0700 |001b: if-nez v1, 0022 // +0007 │ │ -439a2a: 5451 4560 |001d: iget-object v1, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6045 │ │ -439a2e: 7210 d260 0100 |001f: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d2 │ │ -439a34: 1e00 |0022: monitor-exit v0 │ │ -439a36: 0e00 |0023: return-void │ │ -439a38: 1e00 |0024: monitor-exit v0 │ │ -439a3a: 2701 |0025: throw v1 │ │ +4399dc: |[4399dc] org.purple.smoke.UdpMulticastNeighbor.abort:()V │ │ +4399ec: 6e10 8cbe 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be8c │ │ +4399f2: 6f10 08bc 0500 |0003: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.abort:()V // method@bc08 │ │ +4399f8: 5450 4560 |0006: iget-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6045 │ │ +4399fc: 1d00 |0008: monitor-enter v0 │ │ +4399fe: 5451 4560 |0009: iget-object v1, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6045 │ │ +439a02: 7210 d160 0100 |000b: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60d1 │ │ +439a08: 2803 |000e: goto 0011 // +0003 │ │ +439a0a: 0d01 |000f: move-exception v1 │ │ +439a0c: 2814 |0010: goto 0024 // +0014 │ │ +439a0e: 5451 4560 |0011: iget-object v1, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6045 │ │ +439a12: 1602 0500 |0013: const-wide/16 v2, #int 5 // #5 │ │ +439a16: 6204 f22c |0015: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ +439a1a: 7240 ce60 2143 |0017: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60ce │ │ +439a20: 0a01 |001a: move-result v1 │ │ +439a22: 3901 0700 |001b: if-nez v1, 0022 // +0007 │ │ +439a26: 5451 4560 |001d: iget-object v1, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6045 │ │ +439a2a: 7210 d260 0100 |001f: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d2 │ │ +439a30: 1e00 |0022: monitor-exit v0 │ │ +439a32: 0e00 |0023: return-void │ │ +439a34: 1e00 |0024: monitor-exit v0 │ │ +439a36: 2701 |0025: throw v1 │ │ catches : 3 │ │ 0x0009 - 0x000e │ │ Ljava/lang/Exception; -> 0x0011 │ │ -> 0x000f │ │ 0x0011 - 0x0022 │ │ Ljava/lang/Exception; -> 0x0022 │ │ -> 0x000f │ │ @@ -1193067,78 +1193066,78 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 131 16-bit code units │ │ -439a64: |[439a64] org.purple.smoke.UdpMulticastNeighbor.connect:()V │ │ -439a74: 6e10 8bbe 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be8b │ │ -439a7a: 0a00 |0003: move-result v0 │ │ -439a7c: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -439a80: 0e00 |0006: return-void │ │ -439a82: 6e10 8fbe 0400 |0007: invoke-virtual {v4}, Lorg/purple/smoke/UdpMulticastNeighbor;.isNetworkConnected:()Z // method@be8f │ │ -439a88: 0a00 |000a: move-result v0 │ │ -439a8a: 3900 0800 |000b: if-nez v0, 0013 // +0008 │ │ -439a8e: 1a00 0909 |000d: const-string v0, "A network is not available." // string@0909 │ │ -439a92: 6e20 95be 0400 |000f: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be95 │ │ -439a98: 0e00 |0012: return-void │ │ -439a9a: 5440 3c60 |0013: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@603c │ │ -439a9e: 1601 0000 |0015: const-wide/16 v1, #int 0 // #0 │ │ -439aa2: 6e30 e560 1002 |0017: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -439aa8: 5440 3d60 |001a: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@603d │ │ -439aac: 6e30 e560 1002 |001c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -439ab2: 5440 3e60 |001f: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@603e │ │ -439ab6: 1201 |0021: const/4 v1, #int 0 // #0 │ │ -439ab8: 6e20 dc60 1000 |0022: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -439abe: 5440 4160 |0025: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6041 │ │ -439ac2: 7100 065d 0000 |0027: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -439ac8: 0b02 |002a: move-result-wide v2 │ │ -439aca: 6e30 e560 2003 |002b: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -439ad0: 5440 4260 |002e: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6042 │ │ -439ad4: 7100 0b5d 0000 |0030: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -439ada: 0b02 |0033: move-result-wide v2 │ │ -439adc: 6e30 e560 2003 |0034: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -439ae2: 2200 0f0b |0037: new-instance v0, Ljava/net/MulticastSocket; // type@0b0f │ │ -439ae6: 5442 4060 |0039: iget-object v2, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@6040 │ │ -439aea: 6e10 de60 0200 |003b: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -439af0: 0a02 |003e: move-result v2 │ │ -439af2: 7020 905d 2000 |003f: invoke-direct {v0, v2}, Ljava/net/MulticastSocket;.:(I)V // method@5d90 │ │ -439af8: 5b40 4660 |0042: iput-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ -439afc: 5442 3f60 |0044: iget-object v2, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipAddress:Ljava/lang/String; // field@603f │ │ -439b00: 7110 8b5d 0200 |0046: invoke-static {v2}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ -439b06: 0c02 |0049: move-result-object v2 │ │ -439b08: 6e20 965d 2000 |004a: invoke-virtual {v0, v2}, Ljava/net/MulticastSocket;.joinGroup:(Ljava/net/InetAddress;)V // method@5d96 │ │ -439b0e: 5440 4660 |004d: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ -439b12: 1212 |004f: const/4 v2, #int 1 // #1 │ │ -439b14: 6e20 9a5d 2000 |0050: invoke-virtual {v0, v2}, Ljava/net/MulticastSocket;.setLoopbackMode:(Z)V // method@5d9a │ │ -439b1a: 5440 4660 |0053: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ -439b1e: 6e20 9b5d 1000 |0055: invoke-virtual {v0, v1}, Ljava/net/MulticastSocket;.setSoTimeout:(I)V // method@5d9b │ │ -439b24: 5440 4660 |0058: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ -439b28: 1301 ff00 |005a: const/16 v1, #int 255 // #ff │ │ -439b2c: 6e20 9c5d 1000 |005c: invoke-virtual {v0, v1}, Ljava/net/MulticastSocket;.setTimeToLive:(I)V // method@5d9c │ │ -439b32: 5440 4760 |005f: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6047 │ │ -439b36: 7100 0b5d 0000 |0061: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -439b3c: 0b01 |0064: move-result-wide v1 │ │ -439b3e: 6e30 e560 1002 |0065: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -439b44: 1a00 0000 |0068: const-string v0, "" // string@0000 │ │ -439b48: 6e20 95be 0400 |006a: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be95 │ │ -439b4e: 5440 4360 |006d: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_mutex:Ljava/lang/Object; // field@6043 │ │ -439b52: 1d00 |006f: monitor-enter v0 │ │ -439b54: 5441 4360 |0070: iget-object v1, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_mutex:Ljava/lang/Object; // field@6043 │ │ -439b58: 6e10 955c 0100 |0072: invoke-virtual {v1}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ -439b5e: 1e00 |0075: monitor-exit v0 │ │ -439b60: 280c |0076: goto 0082 // +000c │ │ -439b62: 0d01 |0077: move-exception v1 │ │ -439b64: 1e00 |0078: monitor-exit v0 │ │ -439b66: 2701 |0079: throw v1 │ │ -439b68: 1a00 6d0d |007a: const-string v0, "An error occurred while attempting a connection." // string@0d6d │ │ -439b6c: 6e20 95be 0400 |007c: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be95 │ │ -439b72: 6e10 8cbe 0400 |007f: invoke-virtual {v4}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be8c │ │ -439b78: 0e00 |0082: return-void │ │ +439a60: |[439a60] org.purple.smoke.UdpMulticastNeighbor.connect:()V │ │ +439a70: 6e10 8bbe 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be8b │ │ +439a76: 0a00 |0003: move-result v0 │ │ +439a78: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +439a7c: 0e00 |0006: return-void │ │ +439a7e: 6e10 8fbe 0400 |0007: invoke-virtual {v4}, Lorg/purple/smoke/UdpMulticastNeighbor;.isNetworkConnected:()Z // method@be8f │ │ +439a84: 0a00 |000a: move-result v0 │ │ +439a86: 3900 0800 |000b: if-nez v0, 0013 // +0008 │ │ +439a8a: 1a00 0909 |000d: const-string v0, "A network is not available." // string@0909 │ │ +439a8e: 6e20 95be 0400 |000f: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be95 │ │ +439a94: 0e00 |0012: return-void │ │ +439a96: 5440 3c60 |0013: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@603c │ │ +439a9a: 1601 0000 |0015: const-wide/16 v1, #int 0 // #0 │ │ +439a9e: 6e30 e560 1002 |0017: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +439aa4: 5440 3d60 |001a: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@603d │ │ +439aa8: 6e30 e560 1002 |001c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +439aae: 5440 3e60 |001f: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@603e │ │ +439ab2: 1201 |0021: const/4 v1, #int 0 // #0 │ │ +439ab4: 6e20 dc60 1000 |0022: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +439aba: 5440 4160 |0025: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6041 │ │ +439abe: 7100 065d 0000 |0027: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +439ac4: 0b02 |002a: move-result-wide v2 │ │ +439ac6: 6e30 e560 2003 |002b: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +439acc: 5440 4260 |002e: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6042 │ │ +439ad0: 7100 0b5d 0000 |0030: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +439ad6: 0b02 |0033: move-result-wide v2 │ │ +439ad8: 6e30 e560 2003 |0034: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +439ade: 2200 0f0b |0037: new-instance v0, Ljava/net/MulticastSocket; // type@0b0f │ │ +439ae2: 5442 4060 |0039: iget-object v2, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@6040 │ │ +439ae6: 6e10 de60 0200 |003b: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +439aec: 0a02 |003e: move-result v2 │ │ +439aee: 7020 905d 2000 |003f: invoke-direct {v0, v2}, Ljava/net/MulticastSocket;.:(I)V // method@5d90 │ │ +439af4: 5b40 4660 |0042: iput-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ +439af8: 5442 3f60 |0044: iget-object v2, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipAddress:Ljava/lang/String; // field@603f │ │ +439afc: 7110 8b5d 0200 |0046: invoke-static {v2}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ +439b02: 0c02 |0049: move-result-object v2 │ │ +439b04: 6e20 965d 2000 |004a: invoke-virtual {v0, v2}, Ljava/net/MulticastSocket;.joinGroup:(Ljava/net/InetAddress;)V // method@5d96 │ │ +439b0a: 5440 4660 |004d: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ +439b0e: 1212 |004f: const/4 v2, #int 1 // #1 │ │ +439b10: 6e20 9a5d 2000 |0050: invoke-virtual {v0, v2}, Ljava/net/MulticastSocket;.setLoopbackMode:(Z)V // method@5d9a │ │ +439b16: 5440 4660 |0053: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ +439b1a: 6e20 9b5d 1000 |0055: invoke-virtual {v0, v1}, Ljava/net/MulticastSocket;.setSoTimeout:(I)V // method@5d9b │ │ +439b20: 5440 4660 |0058: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ +439b24: 1301 ff00 |005a: const/16 v1, #int 255 // #ff │ │ +439b28: 6e20 9c5d 1000 |005c: invoke-virtual {v0, v1}, Ljava/net/MulticastSocket;.setTimeToLive:(I)V // method@5d9c │ │ +439b2e: 5440 4760 |005f: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6047 │ │ +439b32: 7100 0b5d 0000 |0061: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +439b38: 0b01 |0064: move-result-wide v1 │ │ +439b3a: 6e30 e560 1002 |0065: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +439b40: 1a00 0000 |0068: const-string v0, "" // string@0000 │ │ +439b44: 6e20 95be 0400 |006a: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be95 │ │ +439b4a: 5440 4360 |006d: iget-object v0, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_mutex:Ljava/lang/Object; // field@6043 │ │ +439b4e: 1d00 |006f: monitor-enter v0 │ │ +439b50: 5441 4360 |0070: iget-object v1, v4, Lorg/purple/smoke/UdpMulticastNeighbor;.m_mutex:Ljava/lang/Object; // field@6043 │ │ +439b54: 6e10 955c 0100 |0072: invoke-virtual {v1}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ +439b5a: 1e00 |0075: monitor-exit v0 │ │ +439b5c: 280c |0076: goto 0082 // +000c │ │ +439b5e: 0d01 |0077: move-exception v1 │ │ +439b60: 1e00 |0078: monitor-exit v0 │ │ +439b62: 2701 |0079: throw v1 │ │ +439b64: 1a00 6d0d |007a: const-string v0, "An error occurred while attempting a connection." // string@0d6d │ │ +439b68: 6e20 95be 0400 |007c: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be95 │ │ +439b6e: 6e10 8cbe 0400 |007f: invoke-virtual {v4}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be8c │ │ +439b74: 0e00 |0082: return-void │ │ catches : 3 │ │ 0x0013 - 0x0070 │ │ Ljava/lang/Exception; -> 0x007a │ │ 0x0070 - 0x0079 │ │ -> 0x0077 │ │ 0x0079 - 0x007a │ │ Ljava/lang/Exception; -> 0x007a │ │ @@ -1193171,26 +1193170,26 @@ │ │ type : '()Z' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 19 16-bit code units │ │ -4396c4: |[4396c4] org.purple.smoke.UdpMulticastNeighbor.connected:()Z │ │ -4396d4: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -4396d6: 6e10 8fbe 0200 |0001: invoke-virtual {v2}, Lorg/purple/smoke/UdpMulticastNeighbor;.isNetworkConnected:()Z // method@be8f │ │ -4396dc: 0a01 |0004: move-result v1 │ │ -4396de: 3801 0d00 |0005: if-eqz v1, 0012 // +000d │ │ -4396e2: 5421 4660 |0007: iget-object v1, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ -4396e6: 3801 0900 |0009: if-eqz v1, 0012 // +0009 │ │ -4396ea: 6e10 955d 0100 |000b: invoke-virtual {v1}, Ljava/net/MulticastSocket;.isClosed:()Z // method@5d95 │ │ -4396f0: 0a01 |000e: move-result v1 │ │ -4396f2: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ -4396f6: 1210 |0011: const/4 v0, #int 1 // #1 │ │ -4396f8: 0f00 |0012: return v0 │ │ +4396c0: |[4396c0] org.purple.smoke.UdpMulticastNeighbor.connected:()Z │ │ +4396d0: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +4396d2: 6e10 8fbe 0200 |0001: invoke-virtual {v2}, Lorg/purple/smoke/UdpMulticastNeighbor;.isNetworkConnected:()Z // method@be8f │ │ +4396d8: 0a01 |0004: move-result v1 │ │ +4396da: 3801 0d00 |0005: if-eqz v1, 0012 // +000d │ │ +4396de: 5421 4660 |0007: iget-object v1, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ +4396e2: 3801 0900 |0009: if-eqz v1, 0012 // +0009 │ │ +4396e6: 6e10 955d 0100 |000b: invoke-virtual {v1}, Ljava/net/MulticastSocket;.isClosed:()Z // method@5d95 │ │ +4396ec: 0a01 |000e: move-result v1 │ │ +4396ee: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ +4396f2: 1210 |0011: const/4 v0, #int 1 // #1 │ │ +4396f4: 0f00 |0012: return v0 │ │ catches : 1 │ │ 0x0001 - 0x000f │ │ Ljava/lang/Exception; -> 0x0012 │ │ positions : │ │ 0x0001 line=51 │ │ 0x000b line=53 │ │ locals : │ │ @@ -1193201,52 +1193200,52 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 80 16-bit code units │ │ -439b9c: |[439b9c] org.purple.smoke.UdpMulticastNeighbor.disconnect:()V │ │ -439bac: 6f10 15bc 0500 |0000: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.disconnect:()V // method@bc15 │ │ -439bb2: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -439bb4: 1601 0000 |0004: const-wide/16 v1, #int 0 // #0 │ │ -439bb8: 5453 4660 |0006: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ -439bbc: 3803 2d00 |0008: if-eqz v3, 0035 // +002d │ │ -439bc0: 5454 3f60 |000a: iget-object v4, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipAddress:Ljava/lang/String; // field@603f │ │ -439bc4: 7110 8b5d 0400 |000c: invoke-static {v4}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ -439bca: 0c04 |000f: move-result-object v4 │ │ -439bcc: 6e20 975d 4300 |0010: invoke-virtual {v3, v4}, Ljava/net/MulticastSocket;.leaveGroup:(Ljava/net/InetAddress;)V // method@5d97 │ │ -439bd2: 5453 4660 |0013: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ -439bd6: 6e10 915d 0300 |0015: invoke-virtual {v3}, Ljava/net/MulticastSocket;.close:()V // method@5d91 │ │ -439bdc: 281d |0018: goto 0035 // +001d │ │ -439bde: 0d03 |0019: move-exception v3 │ │ -439be0: 5454 3c60 |001a: iget-object v4, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@603c │ │ -439be4: 6e30 e560 1402 |001c: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -439bea: 5454 3d60 |001f: iget-object v4, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@603d │ │ -439bee: 6e30 e560 1402 |0021: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -439bf4: 5454 4160 |0024: iget-object v4, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6041 │ │ -439bf8: 6e30 e560 1402 |0026: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -439bfe: 5b50 4660 |0029: iput-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ -439c02: 5450 4760 |002b: iget-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6047 │ │ -439c06: 7100 0b5d 0000 |002d: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -439c0c: 0b01 |0030: move-result-wide v1 │ │ -439c0e: 6e30 e560 1002 |0031: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -439c14: 2703 |0034: throw v3 │ │ -439c16: 5453 3c60 |0035: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@603c │ │ -439c1a: 6e30 e560 1302 |0037: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -439c20: 5453 3d60 |003a: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@603d │ │ -439c24: 6e30 e560 1302 |003c: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -439c2a: 5453 4160 |003f: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6041 │ │ -439c2e: 6e30 e560 1302 |0041: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -439c34: 5b50 4660 |0044: iput-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ -439c38: 5450 4760 |0046: iget-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6047 │ │ -439c3c: 7100 0b5d 0000 |0048: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -439c42: 0b01 |004b: move-result-wide v1 │ │ -439c44: 6e30 e560 1002 |004c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -439c4a: 0e00 |004f: return-void │ │ +439b98: |[439b98] org.purple.smoke.UdpMulticastNeighbor.disconnect:()V │ │ +439ba8: 6f10 15bc 0500 |0000: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.disconnect:()V // method@bc15 │ │ +439bae: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +439bb0: 1601 0000 |0004: const-wide/16 v1, #int 0 // #0 │ │ +439bb4: 5453 4660 |0006: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ +439bb8: 3803 2d00 |0008: if-eqz v3, 0035 // +002d │ │ +439bbc: 5454 3f60 |000a: iget-object v4, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipAddress:Ljava/lang/String; // field@603f │ │ +439bc0: 7110 8b5d 0400 |000c: invoke-static {v4}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ +439bc6: 0c04 |000f: move-result-object v4 │ │ +439bc8: 6e20 975d 4300 |0010: invoke-virtual {v3, v4}, Ljava/net/MulticastSocket;.leaveGroup:(Ljava/net/InetAddress;)V // method@5d97 │ │ +439bce: 5453 4660 |0013: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ +439bd2: 6e10 915d 0300 |0015: invoke-virtual {v3}, Ljava/net/MulticastSocket;.close:()V // method@5d91 │ │ +439bd8: 281d |0018: goto 0035 // +001d │ │ +439bda: 0d03 |0019: move-exception v3 │ │ +439bdc: 5454 3c60 |001a: iget-object v4, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@603c │ │ +439be0: 6e30 e560 1402 |001c: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +439be6: 5454 3d60 |001f: iget-object v4, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@603d │ │ +439bea: 6e30 e560 1402 |0021: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +439bf0: 5454 4160 |0024: iget-object v4, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6041 │ │ +439bf4: 6e30 e560 1402 |0026: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +439bfa: 5b50 4660 |0029: iput-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ +439bfe: 5450 4760 |002b: iget-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6047 │ │ +439c02: 7100 0b5d 0000 |002d: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +439c08: 0b01 |0030: move-result-wide v1 │ │ +439c0a: 6e30 e560 1002 |0031: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +439c10: 2703 |0034: throw v3 │ │ +439c12: 5453 3c60 |0035: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@603c │ │ +439c16: 6e30 e560 1302 |0037: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +439c1c: 5453 3d60 |003a: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@603d │ │ +439c20: 6e30 e560 1302 |003c: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +439c26: 5453 4160 |003f: iget-object v3, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6041 │ │ +439c2a: 6e30 e560 1302 |0041: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +439c30: 5b50 4660 |0044: iput-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ +439c34: 5450 4760 |0046: iget-object v0, v5, Lorg/purple/smoke/UdpMulticastNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6047 │ │ +439c38: 7100 0b5d 0000 |0048: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +439c3e: 0b01 |004b: move-result-wide v1 │ │ +439c40: 6e30 e560 1002 |004c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +439c46: 0e00 |004f: return-void │ │ catches : 1 │ │ 0x0006 - 0x0018 │ │ Ljava/lang/Exception; -> 0x0035 │ │ -> 0x0019 │ │ positions : │ │ 0x0000 line=194 │ │ 0x0006 line=198 │ │ @@ -1193271,17 +1193270,17 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -439884: |[439884] org.purple.smoke.UdpMulticastNeighbor.getLocalIp:()Ljava/lang/String; │ │ -439894: 5410 3f60 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipAddress:Ljava/lang/String; // field@603f │ │ -439898: 1100 |0002: return-object v0 │ │ +439880: |[439880] org.purple.smoke.UdpMulticastNeighbor.getLocalIp:()Ljava/lang/String; │ │ +439890: 5410 3f60 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipAddress:Ljava/lang/String; // field@603f │ │ +439894: 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;) │ │ @@ -1193289,26 +1193288,26 @@ │ │ type : '()I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 19 16-bit code units │ │ -43970c: |[43970c] org.purple.smoke.UdpMulticastNeighbor.getLocalPort:()I │ │ -43971c: 5410 4660 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ -439720: 3800 0f00 |0002: if-eqz v0, 0011 // +000f │ │ -439724: 6e10 955d 0000 |0004: invoke-virtual {v0}, Ljava/net/MulticastSocket;.isClosed:()Z // method@5d95 │ │ -43972a: 0a00 |0007: move-result v0 │ │ -43972c: 3900 0900 |0008: if-nez v0, 0011 // +0009 │ │ -439730: 5410 4660 |000a: iget-object v0, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ -439734: 6e10 935d 0000 |000c: invoke-virtual {v0}, Ljava/net/MulticastSocket;.getLocalPort:()I // method@5d93 │ │ -43973a: 0a00 |000f: move-result v0 │ │ -43973c: 0f00 |0010: return v0 │ │ -43973e: 1200 |0011: const/4 v0, #int 0 // #0 │ │ -439740: 0f00 |0012: return v0 │ │ +439708: |[439708] org.purple.smoke.UdpMulticastNeighbor.getLocalPort:()I │ │ +439718: 5410 4660 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ +43971c: 3800 0f00 |0002: if-eqz v0, 0011 // +000f │ │ +439720: 6e10 955d 0000 |0004: invoke-virtual {v0}, Ljava/net/MulticastSocket;.isClosed:()Z // method@5d95 │ │ +439726: 0a00 |0007: move-result v0 │ │ +439728: 3900 0900 |0008: if-nez v0, 0011 // +0009 │ │ +43972c: 5410 4660 |000a: iget-object v0, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ +439730: 6e10 935d 0000 |000c: invoke-virtual {v0}, Ljava/net/MulticastSocket;.getLocalPort:()I // method@5d93 │ │ +439736: 0a00 |000f: move-result v0 │ │ +439738: 0f00 |0010: return v0 │ │ +43973a: 1200 |0011: const/4 v0, #int 0 // #0 │ │ +43973c: 0f00 |0012: return v0 │ │ catches : 1 │ │ 0x0000 - 0x0010 │ │ Ljava/lang/Exception; -> 0x0011 │ │ positions : │ │ 0x0000 line=65 │ │ 0x000a line=66 │ │ locals : │ │ @@ -1193319,36 +1193318,36 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 38 16-bit code units │ │ -43989c: |[43989c] org.purple.smoke.UdpMulticastNeighbor.remoteIpAddress:()Ljava/lang/String; │ │ -4398ac: 5420 4660 |0000: iget-object v0, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ -4398b0: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ -4398b4: 6e10 925d 0000 |0004: invoke-virtual {v0}, Ljava/net/MulticastSocket;.getInetAddress:()Ljava/net/InetAddress; // method@5d92 │ │ -4398ba: 0c00 |0007: move-result-object v0 │ │ -4398bc: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ -4398c0: 5420 4660 |000a: iget-object v0, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ -4398c4: 6e10 925d 0000 |000c: invoke-virtual {v0}, Ljava/net/MulticastSocket;.getInetAddress:()Ljava/net/InetAddress; // method@5d92 │ │ -4398ca: 0c00 |000f: move-result-object v0 │ │ -4398cc: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ -4398d2: 0c00 |0013: move-result-object v0 │ │ -4398d4: 1100 |0014: return-object v0 │ │ -4398d6: 0000 |0015: nop // spacer │ │ -4398d8: 5420 4960 |0016: iget-object v0, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_version:Ljava/lang/String; // field@6049 │ │ -4398dc: 1a01 a81d |0018: const-string v1, "IPv4" // string@1da8 │ │ -4398e0: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -4398e6: 0a00 |001d: move-result v0 │ │ -4398e8: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ -4398ec: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ -4398f0: 1100 |0022: return-object v0 │ │ -4398f2: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ -4398f6: 1100 |0025: return-object v0 │ │ +439898: |[439898] org.purple.smoke.UdpMulticastNeighbor.remoteIpAddress:()Ljava/lang/String; │ │ +4398a8: 5420 4660 |0000: iget-object v0, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ +4398ac: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ +4398b0: 6e10 925d 0000 |0004: invoke-virtual {v0}, Ljava/net/MulticastSocket;.getInetAddress:()Ljava/net/InetAddress; // method@5d92 │ │ +4398b6: 0c00 |0007: move-result-object v0 │ │ +4398b8: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ +4398bc: 5420 4660 |000a: iget-object v0, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ +4398c0: 6e10 925d 0000 |000c: invoke-virtual {v0}, Ljava/net/MulticastSocket;.getInetAddress:()Ljava/net/InetAddress; // method@5d92 │ │ +4398c6: 0c00 |000f: move-result-object v0 │ │ +4398c8: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ +4398ce: 0c00 |0013: move-result-object v0 │ │ +4398d0: 1100 |0014: return-object v0 │ │ +4398d2: 0000 |0015: nop // spacer │ │ +4398d4: 5420 4960 |0016: iget-object v0, v2, Lorg/purple/smoke/UdpMulticastNeighbor;.m_version:Ljava/lang/String; // field@6049 │ │ +4398d8: 1a01 a81d |0018: const-string v1, "IPv4" // string@1da8 │ │ +4398dc: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +4398e2: 0a00 |001d: move-result v0 │ │ +4398e4: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ +4398e8: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ +4398ec: 1100 |0022: return-object v0 │ │ +4398ee: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ +4398f2: 1100 |0025: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x0014 │ │ Ljava/lang/Exception; -> 0x0015 │ │ positions : │ │ 0x0000 line=332 │ │ 0x000a line=333 │ │ 0x0016 line=339 │ │ @@ -1193360,24 +1193359,24 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 16 16-bit code units │ │ -439908: |[439908] org.purple.smoke.UdpMulticastNeighbor.remotePort:()Ljava/lang/String; │ │ -439918: 5410 4660 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ -43991c: 3800 0b00 |0002: if-eqz v0, 000d // +000b │ │ -439920: 6e10 945d 0000 |0004: invoke-virtual {v0}, Ljava/net/MulticastSocket;.getPort:()I // method@5d94 │ │ -439926: 0a00 |0007: move-result v0 │ │ -439928: 7110 d55c 0000 |0008: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -43992e: 0c00 |000b: move-result-object v0 │ │ -439930: 1100 |000c: return-object v0 │ │ -439932: 1a00 c704 |000d: const-string v0, "0" // string@04c7 │ │ -439936: 1100 |000f: return-object v0 │ │ +439904: |[439904] org.purple.smoke.UdpMulticastNeighbor.remotePort:()Ljava/lang/String; │ │ +439914: 5410 4660 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ +439918: 3800 0b00 |0002: if-eqz v0, 000d // +000b │ │ +43991c: 6e10 945d 0000 |0004: invoke-virtual {v0}, Ljava/net/MulticastSocket;.getPort:()I // method@5d94 │ │ +439922: 0a00 |0007: move-result v0 │ │ +439924: 7110 d55c 0000 |0008: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +43992a: 0c00 |000b: move-result-object v0 │ │ +43992c: 1100 |000c: return-object v0 │ │ +43992e: 1a00 c704 |000d: const-string v0, "0" // string@04c7 │ │ +439932: 1100 |000f: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x000c │ │ Ljava/lang/Exception; -> 0x000d │ │ positions : │ │ 0x0000 line=349 │ │ 0x0004 line=350 │ │ locals : │ │ @@ -1193388,46 +1193387,46 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -439948: |[439948] org.purple.smoke.UdpMulticastNeighbor.remoteScopeId:()Ljava/lang/String; │ │ -439958: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ -43995c: 1100 |0002: return-object v0 │ │ +439944: |[439944] org.purple.smoke.UdpMulticastNeighbor.remoteScopeId:()Ljava/lang/String; │ │ +439954: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ +439958: 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 │ │ -439840: |[439840] org.purple.smoke.UdpMulticastNeighbor.send:(Ljava/lang/String;)I │ │ -439850: 6e10 8bbe 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be8b │ │ -439856: 0a00 |0003: move-result v0 │ │ -439858: 3800 1400 |0004: if-eqz v0, 0018 // +0014 │ │ -43985c: 3802 1200 |0006: if-eqz v2, 0018 // +0012 │ │ -439860: 6e10 c55c 0200 |0008: invoke-virtual {v2}, Ljava/lang/String;.length:()I // method@5cc5 │ │ -439866: 0a00 |000b: move-result v0 │ │ -439868: 3900 0300 |000c: if-nez v0, 000f // +0003 │ │ -43986c: 280a |000e: goto 0018 // +000a │ │ -43986e: 6e10 bc5c 0200 |000f: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -439874: 0c02 |0012: move-result-object v2 │ │ -439876: 6e20 94be 2100 |0013: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpMulticastNeighbor;.send:([B)I // method@be94 │ │ -43987c: 0a02 |0016: move-result v2 │ │ -43987e: 0f02 |0017: return v2 │ │ -439880: 1202 |0018: const/4 v2, #int 0 // #0 │ │ -439882: 0f02 |0019: return v2 │ │ +43983c: |[43983c] org.purple.smoke.UdpMulticastNeighbor.send:(Ljava/lang/String;)I │ │ +43984c: 6e10 8bbe 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be8b │ │ +439852: 0a00 |0003: move-result v0 │ │ +439854: 3800 1400 |0004: if-eqz v0, 0018 // +0014 │ │ +439858: 3802 1200 |0006: if-eqz v2, 0018 // +0012 │ │ +43985c: 6e10 c55c 0200 |0008: invoke-virtual {v2}, Ljava/lang/String;.length:()I // method@5cc5 │ │ +439862: 0a00 |000b: move-result v0 │ │ +439864: 3900 0300 |000c: if-nez v0, 000f // +0003 │ │ +439868: 280a |000e: goto 0018 // +000a │ │ +43986a: 6e10 bc5c 0200 |000f: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +439870: 0c02 |0012: move-result-object v2 │ │ +439872: 6e20 94be 2100 |0013: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpMulticastNeighbor;.send:([B)I // method@be94 │ │ +439878: 0a02 |0016: move-result v2 │ │ +43987a: 0f02 |0017: return v2 │ │ +43987c: 1202 |0018: const/4 v2, #int 0 // #0 │ │ +43987e: 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; │ │ @@ -1193437,66 +1193436,66 @@ │ │ type : '([B)I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 10 │ │ ins : 2 │ │ outs : 5 │ │ insns size : 101 16-bit code units │ │ -439754: |[439754] org.purple.smoke.UdpMulticastNeighbor.send:([B)I │ │ -439764: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -439766: 3809 6300 |0001: if-eqz v9, 0064 // +0063 │ │ -43976a: 2191 |0003: array-length v1, v9 │ │ -43976c: 3801 6000 |0004: if-eqz v1, 0064 // +0060 │ │ -439770: 6e10 8bbe 0800 |0006: invoke-virtual {v8}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be8b │ │ -439776: 0a01 |0009: move-result v1 │ │ -439778: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ -43977c: 2858 |000c: goto 0064 // +0058 │ │ -43977e: 5481 4660 |000d: iget-object v1, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ -439782: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ -439786: 0f00 |0011: return v0 │ │ -439788: 2201 a50a |0012: new-instance v1, Ljava/io/ByteArrayInputStream; // type@0aa5 │ │ -43978c: 7020 6b5b 9100 |0014: invoke-direct {v1, v9}, Ljava/io/ByteArrayInputStream;.:([B)V // method@5b6b │ │ -439792: 6e10 6d5b 0100 |0017: invoke-virtual {v1}, Ljava/io/ByteArrayInputStream;.available:()I // method@5b6d │ │ -439798: 0a02 |001a: move-result v2 │ │ -43979a: 3d02 3200 |001b: if-lez v2, 004d // +0032 │ │ -43979e: 5482 3e60 |001d: iget-object v2, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@603e │ │ -4397a2: 6e10 da60 0200 |001f: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -4397a8: 0a02 |0022: move-result v2 │ │ -4397aa: 3802 0300 |0023: if-eqz v2, 0026 // +0003 │ │ -4397ae: 2828 |0025: goto 004d // +0028 │ │ -4397b0: 1302 4002 |0026: const/16 v2, #int 576 // #240 │ │ -4397b4: 6e10 6d5b 0100 |0028: invoke-virtual {v1}, Ljava/io/ByteArrayInputStream;.available:()I // method@5b6d │ │ -4397ba: 0a03 |002b: move-result v3 │ │ -4397bc: 7120 825c 3200 |002c: invoke-static {v2, v3}, Ljava/lang/Math;.min:(II)I // method@5c82 │ │ -4397c2: 0a02 |002f: move-result v2 │ │ -4397c4: 2323 481b |0030: new-array v3, v2, [B // type@1b48 │ │ -4397c8: 6e20 705b 3100 |0032: invoke-virtual {v1, v3}, Ljava/io/ByteArrayInputStream;.read:([B)I // method@5b70 │ │ -4397ce: 5484 4660 |0035: iget-object v4, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ -4397d2: 2205 090b |0037: new-instance v5, Ljava/net/DatagramPacket; // type@0b09 │ │ -4397d6: 5486 3f60 |0039: iget-object v6, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipAddress:Ljava/lang/String; // field@603f │ │ -4397da: 7110 8b5d 0600 |003b: invoke-static {v6}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ -4397e0: 0c06 |003e: move-result-object v6 │ │ -4397e2: 5487 4060 |003f: iget-object v7, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@6040 │ │ -4397e6: 6e10 de60 0700 |0041: invoke-virtual {v7}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -4397ec: 0a07 |0044: move-result v7 │ │ -4397ee: 7057 6d5d 3562 |0045: invoke-direct {v5, v3, v2, v6, v7}, Ljava/net/DatagramPacket;.:([BILjava/net/InetAddress;I)V // method@5d6d │ │ -4397f4: 6e20 995d 5400 |0048: invoke-virtual {v4, v5}, Ljava/net/MulticastSocket;.send:(Ljava/net/DatagramPacket;)V // method@5d99 │ │ -4397fa: b020 |004b: add-int/2addr v0, v2 │ │ -4397fc: 28cb |004c: goto 0017 // -0035 │ │ -4397fe: 7110 28bb 0900 |004d: invoke-static {v9}, Lorg/purple/smoke/Kernel;.writeCongestionDigest:([B)V // method@bb28 │ │ -439804: 5489 3d60 |0050: iget-object v9, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@603d │ │ -439808: 8101 |0052: int-to-long v1, v0 │ │ -43980a: 6e30 e460 1902 |0053: invoke-virtual {v9, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e4 │ │ -439810: 1a09 0000 |0056: const-string v9, "" // string@0000 │ │ -439814: 6e20 95be 9800 |0058: invoke-virtual {v8, v9}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be95 │ │ -43981a: 2809 |005b: goto 0064 // +0009 │ │ -43981c: 1a09 0e09 |005c: const-string v9, "A socket error occurred on send()." // string@090e │ │ -439820: 6e20 95be 9800 |005e: invoke-virtual {v8, v9}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be95 │ │ -439826: 6e10 8cbe 0800 |0061: invoke-virtual {v8}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be8c │ │ -43982c: 0f00 |0064: return v0 │ │ +439750: |[439750] org.purple.smoke.UdpMulticastNeighbor.send:([B)I │ │ +439760: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +439762: 3809 6300 |0001: if-eqz v9, 0064 // +0063 │ │ +439766: 2191 |0003: array-length v1, v9 │ │ +439768: 3801 6000 |0004: if-eqz v1, 0064 // +0060 │ │ +43976c: 6e10 8bbe 0800 |0006: invoke-virtual {v8}, Lorg/purple/smoke/UdpMulticastNeighbor;.connected:()Z // method@be8b │ │ +439772: 0a01 |0009: move-result v1 │ │ +439774: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ +439778: 2858 |000c: goto 0064 // +0058 │ │ +43977a: 5481 4660 |000d: iget-object v1, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ +43977e: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ +439782: 0f00 |0011: return v0 │ │ +439784: 2201 a50a |0012: new-instance v1, Ljava/io/ByteArrayInputStream; // type@0aa5 │ │ +439788: 7020 6b5b 9100 |0014: invoke-direct {v1, v9}, Ljava/io/ByteArrayInputStream;.:([B)V // method@5b6b │ │ +43978e: 6e10 6d5b 0100 |0017: invoke-virtual {v1}, Ljava/io/ByteArrayInputStream;.available:()I // method@5b6d │ │ +439794: 0a02 |001a: move-result v2 │ │ +439796: 3d02 3200 |001b: if-lez v2, 004d // +0032 │ │ +43979a: 5482 3e60 |001d: iget-object v2, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@603e │ │ +43979e: 6e10 da60 0200 |001f: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +4397a4: 0a02 |0022: move-result v2 │ │ +4397a6: 3802 0300 |0023: if-eqz v2, 0026 // +0003 │ │ +4397aa: 2828 |0025: goto 004d // +0028 │ │ +4397ac: 1302 4002 |0026: const/16 v2, #int 576 // #240 │ │ +4397b0: 6e10 6d5b 0100 |0028: invoke-virtual {v1}, Ljava/io/ByteArrayInputStream;.available:()I // method@5b6d │ │ +4397b6: 0a03 |002b: move-result v3 │ │ +4397b8: 7120 825c 3200 |002c: invoke-static {v2, v3}, Ljava/lang/Math;.min:(II)I // method@5c82 │ │ +4397be: 0a02 |002f: move-result v2 │ │ +4397c0: 2323 481b |0030: new-array v3, v2, [B // type@1b48 │ │ +4397c4: 6e20 705b 3100 |0032: invoke-virtual {v1, v3}, Ljava/io/ByteArrayInputStream;.read:([B)I // method@5b70 │ │ +4397ca: 5484 4660 |0035: iget-object v4, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_socket:Ljava/net/MulticastSocket; // field@6046 │ │ +4397ce: 2205 090b |0037: new-instance v5, Ljava/net/DatagramPacket; // type@0b09 │ │ +4397d2: 5486 3f60 |0039: iget-object v6, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipAddress:Ljava/lang/String; // field@603f │ │ +4397d6: 7110 8b5d 0600 |003b: invoke-static {v6}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ +4397dc: 0c06 |003e: move-result-object v6 │ │ +4397de: 5487 4060 |003f: iget-object v7, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@6040 │ │ +4397e2: 6e10 de60 0700 |0041: invoke-virtual {v7}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +4397e8: 0a07 |0044: move-result v7 │ │ +4397ea: 7057 6d5d 3562 |0045: invoke-direct {v5, v3, v2, v6, v7}, Ljava/net/DatagramPacket;.:([BILjava/net/InetAddress;I)V // method@5d6d │ │ +4397f0: 6e20 995d 5400 |0048: invoke-virtual {v4, v5}, Ljava/net/MulticastSocket;.send:(Ljava/net/DatagramPacket;)V // method@5d99 │ │ +4397f6: b020 |004b: add-int/2addr v0, v2 │ │ +4397f8: 28cb |004c: goto 0017 // -0035 │ │ +4397fa: 7110 28bb 0900 |004d: invoke-static {v9}, Lorg/purple/smoke/Kernel;.writeCongestionDigest:([B)V // method@bb28 │ │ +439800: 5489 3d60 |0050: iget-object v9, v8, Lorg/purple/smoke/UdpMulticastNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@603d │ │ +439804: 8101 |0052: int-to-long v1, v0 │ │ +439806: 6e30 e460 1902 |0053: invoke-virtual {v9, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e4 │ │ +43980c: 1a09 0000 |0056: const-string v9, "" // string@0000 │ │ +439810: 6e20 95be 9800 |0058: invoke-virtual {v8, v9}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be95 │ │ +439816: 2809 |005b: goto 0064 // +0009 │ │ +439818: 1a09 0e09 |005c: const-string v9, "A socket error occurred on send()." // string@090e │ │ +43981c: 6e20 95be 9800 |005e: invoke-virtual {v8, v9}, Lorg/purple/smoke/UdpMulticastNeighbor;.setError:(Ljava/lang/String;)V // method@be95 │ │ +439822: 6e10 8cbe 0800 |0061: invoke-virtual {v8}, Lorg/purple/smoke/UdpMulticastNeighbor;.disconnect:()V // method@be8c │ │ +439828: 0f00 |0064: return v0 │ │ catches : 1 │ │ 0x000d - 0x005b │ │ Ljava/lang/Exception; -> 0x005c │ │ positions : │ │ 0x0003 line=87 │ │ 0x000d line=92 │ │ 0x0012 line=95 │ │ @@ -1193522,17 +1193521,17 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -439960: |[439960] org.purple.smoke.UdpMulticastNeighbor.transport:()Ljava/lang/String; │ │ -439970: 1a00 0050 |0000: const-string v0, "UDP" // string@5000 │ │ -439974: 1100 |0002: return-object v0 │ │ +43995c: |[43995c] org.purple.smoke.UdpMulticastNeighbor.transport:()Ljava/lang/String; │ │ +43996c: 1a00 0050 |0000: const-string v0, "UDP" // string@5000 │ │ +439970: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ source_file_idx : 20542 (UdpMulticastNeighbor.java) │ │ │ │ Class #4377 header: │ │ @@ -1193562,34 +1193561,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 │ │ -43a270: |[43a270] org.purple.smoke.UdpNeighbor.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V │ │ -43a280: 1a05 0050 |0000: const-string v5, "UDP" // string@5000 │ │ -43a284: 0780 |0002: move-object v0, v8 │ │ -43a286: 0791 |0003: move-object v1, v9 │ │ -43a288: 07a2 |0004: move-object v2, v10 │ │ -43a28a: 07b3 |0005: move-object v3, v11 │ │ -43a28c: 07c4 |0006: move-object v4, v12 │ │ -43a28e: 07d6 |0007: move-object v6, v13 │ │ -43a290: 01e7 |0008: move v7, v14 │ │ -43a292: 7608 07bc 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@bc07 │ │ -43a298: 1209 |000c: const/4 v9, #int 0 // #0 │ │ -43a29a: 5b89 5660 |000d: iput-object v9, v8, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ -43a29e: 5480 5560 |000f: iget-object v0, v8, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6055 │ │ -43a2a2: 2201 3f1b |0011: new-instance v1, Lorg/purple/smoke/UdpNeighbor$1; // type@1b3f │ │ -43a2a6: 7020 97be 8100 |0013: invoke-direct {v1, v8}, Lorg/purple/smoke/UdpNeighbor$1;.:(Lorg/purple/smoke/UdpNeighbor;)V // method@be97 │ │ -43a2ac: 6206 ef2c |0016: sget-object v6, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -43a2b0: 1602 0000 |0018: const-wide/16 v2, #int 0 // #0 │ │ -43a2b4: 1604 6400 |001a: const-wide/16 v4, #int 100 // #64 │ │ -43a2b8: 7807 d060 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@60d0 │ │ -43a2be: 0e00 |001f: return-void │ │ +43a26c: |[43a26c] org.purple.smoke.UdpNeighbor.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V │ │ +43a27c: 1a05 0050 |0000: const-string v5, "UDP" // string@5000 │ │ +43a280: 0780 |0002: move-object v0, v8 │ │ +43a282: 0791 |0003: move-object v1, v9 │ │ +43a284: 07a2 |0004: move-object v2, v10 │ │ +43a286: 07b3 |0005: move-object v3, v11 │ │ +43a288: 07c4 |0006: move-object v4, v12 │ │ +43a28a: 07d6 |0007: move-object v6, v13 │ │ +43a28c: 01e7 |0008: move v7, v14 │ │ +43a28e: 7608 07bc 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@bc07 │ │ +43a294: 1209 |000c: const/4 v9, #int 0 // #0 │ │ +43a296: 5b89 5660 |000d: iput-object v9, v8, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ +43a29a: 5480 5560 |000f: iget-object v0, v8, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6055 │ │ +43a29e: 2201 3f1b |0011: new-instance v1, Lorg/purple/smoke/UdpNeighbor$1; // type@1b3f │ │ +43a2a2: 7020 97be 8100 |0013: invoke-direct {v1, v8}, Lorg/purple/smoke/UdpNeighbor$1;.:(Lorg/purple/smoke/UdpNeighbor;)V // method@be97 │ │ +43a2a8: 6206 ef2c |0016: sget-object v6, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +43a2ac: 1602 0000 |0018: const-wide/16 v2, #int 0 // #0 │ │ +43a2b0: 1604 6400 |001a: const-wide/16 v4, #int 100 // #64 │ │ +43a2b4: 7807 d060 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@60d0 │ │ +43a2ba: 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; │ │ @@ -1193605,17 +1193604,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 │ │ -43a258: |[43a258] org.purple.smoke.UdpNeighbor.access$000:(Lorg/purple/smoke/UdpNeighbor;)Ljava/net/DatagramSocket; │ │ -43a268: 5400 5660 |0000: iget-object v0, v0, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ -43a26c: 1100 |0002: return-object v0 │ │ +43a254: |[43a254] org.purple.smoke.UdpNeighbor.access$000:(Lorg/purple/smoke/UdpNeighbor;)Ljava/net/DatagramSocket; │ │ +43a264: 5400 5660 |0000: iget-object v0, v0, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ +43a268: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=37 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 (null) Lorg/purple/smoke/UdpNeighbor; │ │ │ │ Virtual methods - │ │ @@ -1193624,36 +1193623,36 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 38 16-bit code units │ │ -43a2c0: |[43a2c0] org.purple.smoke.UdpNeighbor.abort:()V │ │ -43a2d0: 6e10 9ebe 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be9e │ │ -43a2d6: 6f10 08bc 0500 |0003: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.abort:()V // method@bc08 │ │ -43a2dc: 5450 5560 |0006: iget-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6055 │ │ -43a2e0: 1d00 |0008: monitor-enter v0 │ │ -43a2e2: 5451 5560 |0009: iget-object v1, v5, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6055 │ │ -43a2e6: 7210 d160 0100 |000b: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60d1 │ │ -43a2ec: 2803 |000e: goto 0011 // +0003 │ │ -43a2ee: 0d01 |000f: move-exception v1 │ │ -43a2f0: 2814 |0010: goto 0024 // +0014 │ │ -43a2f2: 5451 5560 |0011: iget-object v1, v5, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6055 │ │ -43a2f6: 1602 0500 |0013: const-wide/16 v2, #int 5 // #5 │ │ -43a2fa: 6204 f22c |0015: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ -43a2fe: 7240 ce60 2143 |0017: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60ce │ │ -43a304: 0a01 |001a: move-result v1 │ │ -43a306: 3901 0700 |001b: if-nez v1, 0022 // +0007 │ │ -43a30a: 5451 5560 |001d: iget-object v1, v5, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6055 │ │ -43a30e: 7210 d260 0100 |001f: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d2 │ │ -43a314: 1e00 |0022: monitor-exit v0 │ │ -43a316: 0e00 |0023: return-void │ │ -43a318: 1e00 |0024: monitor-exit v0 │ │ -43a31a: 2701 |0025: throw v1 │ │ +43a2bc: |[43a2bc] org.purple.smoke.UdpNeighbor.abort:()V │ │ +43a2cc: 6e10 9ebe 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be9e │ │ +43a2d2: 6f10 08bc 0500 |0003: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.abort:()V // method@bc08 │ │ +43a2d8: 5450 5560 |0006: iget-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6055 │ │ +43a2dc: 1d00 |0008: monitor-enter v0 │ │ +43a2de: 5451 5560 |0009: iget-object v1, v5, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6055 │ │ +43a2e2: 7210 d160 0100 |000b: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60d1 │ │ +43a2e8: 2803 |000e: goto 0011 // +0003 │ │ +43a2ea: 0d01 |000f: move-exception v1 │ │ +43a2ec: 2814 |0010: goto 0024 // +0014 │ │ +43a2ee: 5451 5560 |0011: iget-object v1, v5, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6055 │ │ +43a2f2: 1602 0500 |0013: const-wide/16 v2, #int 5 // #5 │ │ +43a2f6: 6204 f22c |0015: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ +43a2fa: 7240 ce60 2143 |0017: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60ce │ │ +43a300: 0a01 |001a: move-result v1 │ │ +43a302: 3901 0700 |001b: if-nez v1, 0022 // +0007 │ │ +43a306: 5451 5560 |001d: iget-object v1, v5, Lorg/purple/smoke/UdpNeighbor;.m_readSocketScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@6055 │ │ +43a30a: 7210 d260 0100 |001f: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d2 │ │ +43a310: 1e00 |0022: monitor-exit v0 │ │ +43a312: 0e00 |0023: return-void │ │ +43a314: 1e00 |0024: monitor-exit v0 │ │ +43a316: 2701 |0025: throw v1 │ │ catches : 3 │ │ 0x0009 - 0x000e │ │ Ljava/lang/Exception; -> 0x0011 │ │ -> 0x000f │ │ 0x0011 - 0x0022 │ │ Ljava/lang/Exception; -> 0x0022 │ │ -> 0x000f │ │ @@ -1193676,72 +1193675,72 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 118 16-bit code units │ │ -43a344: |[43a344] org.purple.smoke.UdpNeighbor.connect:()V │ │ -43a354: 6e10 9dbe 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be9d │ │ -43a35a: 0a00 |0003: move-result v0 │ │ -43a35c: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -43a360: 0e00 |0006: return-void │ │ -43a362: 6e10 a1be 0400 |0007: invoke-virtual {v4}, Lorg/purple/smoke/UdpNeighbor;.isNetworkConnected:()Z // method@bea1 │ │ -43a368: 0a00 |000a: move-result v0 │ │ -43a36a: 3900 0800 |000b: if-nez v0, 0013 // +0008 │ │ -43a36e: 1a00 0909 |000d: const-string v0, "A network is not available." // string@0909 │ │ -43a372: 6e20 a7be 0400 |000f: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea7 │ │ -43a378: 0e00 |0012: return-void │ │ -43a37a: 5440 4c60 |0013: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@604c │ │ -43a37e: 1601 0000 |0015: const-wide/16 v1, #int 0 // #0 │ │ -43a382: 6e30 e560 1002 |0017: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43a388: 5440 4d60 |001a: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@604d │ │ -43a38c: 6e30 e560 1002 |001c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43a392: 5440 4e60 |001f: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@604e │ │ -43a396: 1201 |0021: const/4 v1, #int 0 // #0 │ │ -43a398: 6e20 dc60 1000 |0022: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ -43a39e: 5440 5160 |0025: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6051 │ │ -43a3a2: 7100 065d 0000 |0027: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ -43a3a8: 0b02 |002a: move-result-wide v2 │ │ -43a3aa: 6e30 e560 2003 |002b: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43a3b0: 5440 5260 |002e: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6052 │ │ -43a3b4: 7100 0b5d 0000 |0030: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -43a3ba: 0b02 |0033: move-result-wide v2 │ │ -43a3bc: 6e30 e560 2003 |0034: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43a3c2: 2200 0a0b |0037: new-instance v0, Ljava/net/DatagramSocket; // type@0b0a │ │ -43a3c6: 7010 705d 0000 |0039: invoke-direct {v0}, Ljava/net/DatagramSocket;.:()V // method@5d70 │ │ -43a3cc: 5b40 5660 |003c: iput-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ -43a3d0: 5442 4f60 |003e: iget-object v2, v4, Lorg/purple/smoke/UdpNeighbor;.m_ipAddress:Ljava/lang/String; // field@604f │ │ -43a3d4: 7110 8b5d 0200 |0040: invoke-static {v2}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ -43a3da: 0c02 |0043: move-result-object v2 │ │ -43a3dc: 5443 5060 |0044: iget-object v3, v4, Lorg/purple/smoke/UdpNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@6050 │ │ -43a3e0: 6e10 de60 0300 |0046: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -43a3e6: 0a03 |0049: move-result v3 │ │ -43a3e8: 6e30 725d 2003 |004a: invoke-virtual {v0, v2, v3}, Ljava/net/DatagramSocket;.connect:(Ljava/net/InetAddress;I)V // method@5d72 │ │ -43a3ee: 5440 5660 |004d: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ -43a3f2: 6e20 7a5d 1000 |004f: invoke-virtual {v0, v1}, Ljava/net/DatagramSocket;.setSoTimeout:(I)V // method@5d7a │ │ -43a3f8: 5440 5760 |0052: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6057 │ │ -43a3fc: 7100 0b5d 0000 |0054: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -43a402: 0b01 |0057: move-result-wide v1 │ │ -43a404: 6e30 e560 1002 |0058: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43a40a: 1a00 0000 |005b: const-string v0, "" // string@0000 │ │ -43a40e: 6e20 a7be 0400 |005d: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea7 │ │ -43a414: 5440 5360 |0060: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_mutex:Ljava/lang/Object; // field@6053 │ │ -43a418: 1d00 |0062: monitor-enter v0 │ │ -43a41a: 5441 5360 |0063: iget-object v1, v4, Lorg/purple/smoke/UdpNeighbor;.m_mutex:Ljava/lang/Object; // field@6053 │ │ -43a41e: 6e10 955c 0100 |0065: invoke-virtual {v1}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ -43a424: 1e00 |0068: monitor-exit v0 │ │ -43a426: 280c |0069: goto 0075 // +000c │ │ -43a428: 0d01 |006a: move-exception v1 │ │ -43a42a: 1e00 |006b: monitor-exit v0 │ │ -43a42c: 2701 |006c: throw v1 │ │ -43a42e: 1a00 6d0d |006d: const-string v0, "An error occurred while attempting a connection." // string@0d6d │ │ -43a432: 6e20 a7be 0400 |006f: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea7 │ │ -43a438: 6e10 9ebe 0400 |0072: invoke-virtual {v4}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be9e │ │ -43a43e: 0e00 |0075: return-void │ │ +43a340: |[43a340] org.purple.smoke.UdpNeighbor.connect:()V │ │ +43a350: 6e10 9dbe 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be9d │ │ +43a356: 0a00 |0003: move-result v0 │ │ +43a358: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +43a35c: 0e00 |0006: return-void │ │ +43a35e: 6e10 a1be 0400 |0007: invoke-virtual {v4}, Lorg/purple/smoke/UdpNeighbor;.isNetworkConnected:()Z // method@bea1 │ │ +43a364: 0a00 |000a: move-result v0 │ │ +43a366: 3900 0800 |000b: if-nez v0, 0013 // +0008 │ │ +43a36a: 1a00 0909 |000d: const-string v0, "A network is not available." // string@0909 │ │ +43a36e: 6e20 a7be 0400 |000f: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea7 │ │ +43a374: 0e00 |0012: return-void │ │ +43a376: 5440 4c60 |0013: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@604c │ │ +43a37a: 1601 0000 |0015: const-wide/16 v1, #int 0 // #0 │ │ +43a37e: 6e30 e560 1002 |0017: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +43a384: 5440 4d60 |001a: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@604d │ │ +43a388: 6e30 e560 1002 |001c: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +43a38e: 5440 4e60 |001f: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@604e │ │ +43a392: 1201 |0021: const/4 v1, #int 0 // #0 │ │ +43a394: 6e20 dc60 1000 |0022: invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;.set:(Z)V // method@60dc │ │ +43a39a: 5440 5160 |0025: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_lastParsed:Ljava/util/concurrent/atomic/AtomicLong; // field@6051 │ │ +43a39e: 7100 065d 0000 |0027: invoke-static {}, Ljava/lang/System;.currentTimeMillis:()J // method@5d06 │ │ +43a3a4: 0b02 |002a: move-result-wide v2 │ │ +43a3a6: 6e30 e560 2003 |002b: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +43a3ac: 5440 5260 |002e: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6052 │ │ +43a3b0: 7100 0b5d 0000 |0030: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +43a3b6: 0b02 |0033: move-result-wide v2 │ │ +43a3b8: 6e30 e560 2003 |0034: invoke-virtual {v0, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +43a3be: 2200 0a0b |0037: new-instance v0, Ljava/net/DatagramSocket; // type@0b0a │ │ +43a3c2: 7010 705d 0000 |0039: invoke-direct {v0}, Ljava/net/DatagramSocket;.:()V // method@5d70 │ │ +43a3c8: 5b40 5660 |003c: iput-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ +43a3cc: 5442 4f60 |003e: iget-object v2, v4, Lorg/purple/smoke/UdpNeighbor;.m_ipAddress:Ljava/lang/String; // field@604f │ │ +43a3d0: 7110 8b5d 0200 |0040: invoke-static {v2}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ +43a3d6: 0c02 |0043: move-result-object v2 │ │ +43a3d8: 5443 5060 |0044: iget-object v3, v4, Lorg/purple/smoke/UdpNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@6050 │ │ +43a3dc: 6e10 de60 0300 |0046: invoke-virtual {v3}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +43a3e2: 0a03 |0049: move-result v3 │ │ +43a3e4: 6e30 725d 2003 |004a: invoke-virtual {v0, v2, v3}, Ljava/net/DatagramSocket;.connect:(Ljava/net/InetAddress;I)V // method@5d72 │ │ +43a3ea: 5440 5660 |004d: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ +43a3ee: 6e20 7a5d 1000 |004f: invoke-virtual {v0, v1}, Ljava/net/DatagramSocket;.setSoTimeout:(I)V // method@5d7a │ │ +43a3f4: 5440 5760 |0052: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6057 │ │ +43a3f8: 7100 0b5d 0000 |0054: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +43a3fe: 0b01 |0057: move-result-wide v1 │ │ +43a400: 6e30 e560 1002 |0058: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +43a406: 1a00 0000 |005b: const-string v0, "" // string@0000 │ │ +43a40a: 6e20 a7be 0400 |005d: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea7 │ │ +43a410: 5440 5360 |0060: iget-object v0, v4, Lorg/purple/smoke/UdpNeighbor;.m_mutex:Ljava/lang/Object; // field@6053 │ │ +43a414: 1d00 |0062: monitor-enter v0 │ │ +43a416: 5441 5360 |0063: iget-object v1, v4, Lorg/purple/smoke/UdpNeighbor;.m_mutex:Ljava/lang/Object; // field@6053 │ │ +43a41a: 6e10 955c 0100 |0065: invoke-virtual {v1}, Ljava/lang/Object;.notifyAll:()V // method@5c95 │ │ +43a420: 1e00 |0068: monitor-exit v0 │ │ +43a422: 280c |0069: goto 0075 // +000c │ │ +43a424: 0d01 |006a: move-exception v1 │ │ +43a426: 1e00 |006b: monitor-exit v0 │ │ +43a428: 2701 |006c: throw v1 │ │ +43a42a: 1a00 6d0d |006d: const-string v0, "An error occurred while attempting a connection." // string@0d6d │ │ +43a42e: 6e20 a7be 0400 |006f: invoke-virtual {v4, v0}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea7 │ │ +43a434: 6e10 9ebe 0400 |0072: invoke-virtual {v4}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be9e │ │ +43a43a: 0e00 |0075: return-void │ │ catches : 3 │ │ 0x0013 - 0x0063 │ │ Ljava/lang/Exception; -> 0x006d │ │ 0x0063 - 0x006c │ │ -> 0x006a │ │ 0x006c - 0x006d │ │ Ljava/lang/Exception; -> 0x006d │ │ @@ -1193773,26 +1193772,26 @@ │ │ type : '()Z' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 19 16-bit code units │ │ -439f50: |[439f50] org.purple.smoke.UdpNeighbor.connected:()Z │ │ -439f60: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -439f62: 6e10 a1be 0200 |0001: invoke-virtual {v2}, Lorg/purple/smoke/UdpNeighbor;.isNetworkConnected:()Z // method@bea1 │ │ -439f68: 0a01 |0004: move-result v1 │ │ -439f6a: 3801 0d00 |0005: if-eqz v1, 0012 // +000d │ │ -439f6e: 5421 5660 |0007: iget-object v1, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ -439f72: 3801 0900 |0009: if-eqz v1, 0012 // +0009 │ │ -439f76: 6e10 775d 0100 |000b: invoke-virtual {v1}, Ljava/net/DatagramSocket;.isClosed:()Z // method@5d77 │ │ -439f7c: 0a01 |000e: move-result v1 │ │ -439f7e: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ -439f82: 1210 |0011: const/4 v0, #int 1 // #1 │ │ -439f84: 0f00 |0012: return v0 │ │ +439f4c: |[439f4c] org.purple.smoke.UdpNeighbor.connected:()Z │ │ +439f5c: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +439f5e: 6e10 a1be 0200 |0001: invoke-virtual {v2}, Lorg/purple/smoke/UdpNeighbor;.isNetworkConnected:()Z // method@bea1 │ │ +439f64: 0a01 |0004: move-result v1 │ │ +439f66: 3801 0d00 |0005: if-eqz v1, 0012 // +000d │ │ +439f6a: 5421 5660 |0007: iget-object v1, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ +439f6e: 3801 0900 |0009: if-eqz v1, 0012 // +0009 │ │ +439f72: 6e10 775d 0100 |000b: invoke-virtual {v1}, Ljava/net/DatagramSocket;.isClosed:()Z // method@5d77 │ │ +439f78: 0a01 |000e: move-result v1 │ │ +439f7a: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ +439f7e: 1210 |0011: const/4 v0, #int 1 // #1 │ │ +439f80: 0f00 |0012: return v0 │ │ catches : 1 │ │ 0x0001 - 0x000f │ │ Ljava/lang/Exception; -> 0x0012 │ │ positions : │ │ 0x0001 line=62 │ │ 0x000b line=64 │ │ locals : │ │ @@ -1193803,47 +1193802,47 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 69 16-bit code units │ │ -43a460: |[43a460] org.purple.smoke.UdpNeighbor.disconnect:()V │ │ -43a470: 6f10 15bc 0500 |0000: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.disconnect:()V // method@bc15 │ │ -43a476: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -43a478: 1601 0000 |0004: const-wide/16 v1, #int 0 // #0 │ │ -43a47c: 5453 5660 |0006: iget-object v3, v5, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ -43a480: 3803 2200 |0008: if-eqz v3, 002a // +0022 │ │ -43a484: 6e10 715d 0300 |000a: invoke-virtual {v3}, Ljava/net/DatagramSocket;.close:()V // method@5d71 │ │ -43a48a: 281d |000d: goto 002a // +001d │ │ -43a48c: 0d03 |000e: move-exception v3 │ │ -43a48e: 5454 4c60 |000f: iget-object v4, v5, Lorg/purple/smoke/UdpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@604c │ │ -43a492: 6e30 e560 1402 |0011: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43a498: 5454 4d60 |0014: iget-object v4, v5, Lorg/purple/smoke/UdpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@604d │ │ -43a49c: 6e30 e560 1402 |0016: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43a4a2: 5454 5260 |0019: iget-object v4, v5, Lorg/purple/smoke/UdpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6052 │ │ -43a4a6: 6e30 e560 1402 |001b: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43a4ac: 5b50 5660 |001e: iput-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ -43a4b0: 5450 5760 |0020: iget-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6057 │ │ -43a4b4: 7100 0b5d 0000 |0022: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -43a4ba: 0b01 |0025: move-result-wide v1 │ │ -43a4bc: 6e30 e560 1002 |0026: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43a4c2: 2703 |0029: throw v3 │ │ -43a4c4: 5453 4c60 |002a: iget-object v3, v5, Lorg/purple/smoke/UdpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@604c │ │ -43a4c8: 6e30 e560 1302 |002c: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43a4ce: 5453 4d60 |002f: iget-object v3, v5, Lorg/purple/smoke/UdpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@604d │ │ -43a4d2: 6e30 e560 1302 |0031: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43a4d8: 5453 5260 |0034: iget-object v3, v5, Lorg/purple/smoke/UdpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6052 │ │ -43a4dc: 6e30 e560 1302 |0036: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43a4e2: 5b50 5660 |0039: iput-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ -43a4e6: 5450 5760 |003b: iget-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6057 │ │ -43a4ea: 7100 0b5d 0000 |003d: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ -43a4f0: 0b01 |0040: move-result-wide v1 │ │ -43a4f2: 6e30 e560 1002 |0041: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ -43a4f8: 0e00 |0044: return-void │ │ +43a45c: |[43a45c] org.purple.smoke.UdpNeighbor.disconnect:()V │ │ +43a46c: 6f10 15bc 0500 |0000: invoke-super {v5}, Lorg/purple/smoke/Neighbor;.disconnect:()V // method@bc15 │ │ +43a472: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +43a474: 1601 0000 |0004: const-wide/16 v1, #int 0 // #0 │ │ +43a478: 5453 5660 |0006: iget-object v3, v5, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ +43a47c: 3803 2200 |0008: if-eqz v3, 002a // +0022 │ │ +43a480: 6e10 715d 0300 |000a: invoke-virtual {v3}, Ljava/net/DatagramSocket;.close:()V // method@5d71 │ │ +43a486: 281d |000d: goto 002a // +001d │ │ +43a488: 0d03 |000e: move-exception v3 │ │ +43a48a: 5454 4c60 |000f: iget-object v4, v5, Lorg/purple/smoke/UdpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@604c │ │ +43a48e: 6e30 e560 1402 |0011: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +43a494: 5454 4d60 |0014: iget-object v4, v5, Lorg/purple/smoke/UdpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@604d │ │ +43a498: 6e30 e560 1402 |0016: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +43a49e: 5454 5260 |0019: iget-object v4, v5, Lorg/purple/smoke/UdpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6052 │ │ +43a4a2: 6e30 e560 1402 |001b: invoke-virtual {v4, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +43a4a8: 5b50 5660 |001e: iput-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ +43a4ac: 5450 5760 |0020: iget-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6057 │ │ +43a4b0: 7100 0b5d 0000 |0022: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +43a4b6: 0b01 |0025: move-result-wide v1 │ │ +43a4b8: 6e30 e560 1002 |0026: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +43a4be: 2703 |0029: throw v3 │ │ +43a4c0: 5453 4c60 |002a: iget-object v3, v5, Lorg/purple/smoke/UdpNeighbor;.m_bytesRead:Ljava/util/concurrent/atomic/AtomicLong; // field@604c │ │ +43a4c4: 6e30 e560 1302 |002c: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +43a4ca: 5453 4d60 |002f: iget-object v3, v5, Lorg/purple/smoke/UdpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@604d │ │ +43a4ce: 6e30 e560 1302 |0031: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +43a4d4: 5453 5260 |0034: iget-object v3, v5, Lorg/purple/smoke/UdpNeighbor;.m_lastTimeRead:Ljava/util/concurrent/atomic/AtomicLong; // field@6052 │ │ +43a4d8: 6e30 e560 1302 |0036: invoke-virtual {v3, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +43a4de: 5b50 5660 |0039: iput-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ +43a4e2: 5450 5760 |003b: iget-object v0, v5, Lorg/purple/smoke/UdpNeighbor;.m_startTime:Ljava/util/concurrent/atomic/AtomicLong; // field@6057 │ │ +43a4e6: 7100 0b5d 0000 |003d: invoke-static {}, Ljava/lang/System;.nanoTime:()J // method@5d0b │ │ +43a4ec: 0b01 |0040: move-result-wide v1 │ │ +43a4ee: 6e30 e560 1002 |0041: invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.set:(J)V // method@60e5 │ │ +43a4f4: 0e00 |0044: return-void │ │ catches : 1 │ │ 0x0006 - 0x000d │ │ Ljava/lang/Exception; -> 0x002a │ │ -> 0x000e │ │ positions : │ │ 0x0000 line=204 │ │ 0x0006 line=208 │ │ @@ -1193867,36 +1193866,36 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 38 16-bit code units │ │ -43a110: |[43a110] org.purple.smoke.UdpNeighbor.getLocalIp:()Ljava/lang/String; │ │ -43a120: 5420 5660 |0000: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ -43a124: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ -43a128: 6e10 745d 0000 |0004: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getLocalAddress:()Ljava/net/InetAddress; // method@5d74 │ │ -43a12e: 0c00 |0007: move-result-object v0 │ │ -43a130: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ -43a134: 5420 5660 |000a: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ -43a138: 6e10 745d 0000 |000c: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getLocalAddress:()Ljava/net/InetAddress; // method@5d74 │ │ -43a13e: 0c00 |000f: move-result-object v0 │ │ -43a140: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ -43a146: 0c00 |0013: move-result-object v0 │ │ -43a148: 1100 |0014: return-object v0 │ │ -43a14a: 0000 |0015: nop // spacer │ │ -43a14c: 5420 5960 |0016: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_version:Ljava/lang/String; // field@6059 │ │ -43a150: 1a01 a81d |0018: const-string v1, "IPv4" // string@1da8 │ │ -43a154: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -43a15a: 0a00 |001d: move-result v0 │ │ -43a15c: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ -43a160: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ -43a164: 1100 |0022: return-object v0 │ │ -43a166: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ -43a16a: 1100 |0025: return-object v0 │ │ +43a10c: |[43a10c] org.purple.smoke.UdpNeighbor.getLocalIp:()Ljava/lang/String; │ │ +43a11c: 5420 5660 |0000: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ +43a120: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ +43a124: 6e10 745d 0000 |0004: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getLocalAddress:()Ljava/net/InetAddress; // method@5d74 │ │ +43a12a: 0c00 |0007: move-result-object v0 │ │ +43a12c: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ +43a130: 5420 5660 |000a: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ +43a134: 6e10 745d 0000 |000c: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getLocalAddress:()Ljava/net/InetAddress; // method@5d74 │ │ +43a13a: 0c00 |000f: move-result-object v0 │ │ +43a13c: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ +43a142: 0c00 |0013: move-result-object v0 │ │ +43a144: 1100 |0014: return-object v0 │ │ +43a146: 0000 |0015: nop // spacer │ │ +43a148: 5420 5960 |0016: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_version:Ljava/lang/String; // field@6059 │ │ +43a14c: 1a01 a81d |0018: const-string v1, "IPv4" // string@1da8 │ │ +43a150: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +43a156: 0a00 |001d: move-result v0 │ │ +43a158: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ +43a15c: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ +43a160: 1100 |0022: return-object v0 │ │ +43a162: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ +43a166: 1100 |0025: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x0014 │ │ Ljava/lang/Exception; -> 0x0015 │ │ positions : │ │ 0x0000 line=45 │ │ 0x000a line=46 │ │ 0x0016 line=52 │ │ @@ -1193908,26 +1193907,26 @@ │ │ type : '()I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 19 16-bit code units │ │ -439f98: |[439f98] org.purple.smoke.UdpNeighbor.getLocalPort:()I │ │ -439fa8: 5410 5660 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ -439fac: 3800 0f00 |0002: if-eqz v0, 0011 // +000f │ │ -439fb0: 6e10 775d 0000 |0004: invoke-virtual {v0}, Ljava/net/DatagramSocket;.isClosed:()Z // method@5d77 │ │ -439fb6: 0a00 |0007: move-result v0 │ │ -439fb8: 3900 0900 |0008: if-nez v0, 0011 // +0009 │ │ -439fbc: 5410 5660 |000a: iget-object v0, v1, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ -439fc0: 6e10 755d 0000 |000c: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getLocalPort:()I // method@5d75 │ │ -439fc6: 0a00 |000f: move-result v0 │ │ -439fc8: 0f00 |0010: return v0 │ │ -439fca: 1200 |0011: const/4 v0, #int 0 // #0 │ │ -439fcc: 0f00 |0012: return v0 │ │ +439f94: |[439f94] org.purple.smoke.UdpNeighbor.getLocalPort:()I │ │ +439fa4: 5410 5660 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ +439fa8: 3800 0f00 |0002: if-eqz v0, 0011 // +000f │ │ +439fac: 6e10 775d 0000 |0004: invoke-virtual {v0}, Ljava/net/DatagramSocket;.isClosed:()Z // method@5d77 │ │ +439fb2: 0a00 |0007: move-result v0 │ │ +439fb4: 3900 0900 |0008: if-nez v0, 0011 // +0009 │ │ +439fb8: 5410 5660 |000a: iget-object v0, v1, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ +439fbc: 6e10 755d 0000 |000c: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getLocalPort:()I // method@5d75 │ │ +439fc2: 0a00 |000f: move-result v0 │ │ +439fc4: 0f00 |0010: return v0 │ │ +439fc6: 1200 |0011: const/4 v0, #int 0 // #0 │ │ +439fc8: 0f00 |0012: return v0 │ │ catches : 1 │ │ 0x0000 - 0x0010 │ │ Ljava/lang/Exception; -> 0x0011 │ │ positions : │ │ 0x0000 line=76 │ │ 0x000a line=77 │ │ locals : │ │ @@ -1193938,36 +1193937,36 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 38 16-bit code units │ │ -43a17c: |[43a17c] org.purple.smoke.UdpNeighbor.remoteIpAddress:()Ljava/lang/String; │ │ -43a18c: 5420 5660 |0000: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ -43a190: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ -43a194: 6e10 735d 0000 |0004: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getInetAddress:()Ljava/net/InetAddress; // method@5d73 │ │ -43a19a: 0c00 |0007: move-result-object v0 │ │ -43a19c: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ -43a1a0: 5420 5660 |000a: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ -43a1a4: 6e10 735d 0000 |000c: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getInetAddress:()Ljava/net/InetAddress; // method@5d73 │ │ -43a1aa: 0c00 |000f: move-result-object v0 │ │ -43a1ac: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ -43a1b2: 0c00 |0013: move-result-object v0 │ │ -43a1b4: 1100 |0014: return-object v0 │ │ -43a1b6: 0000 |0015: nop // spacer │ │ -43a1b8: 5420 5960 |0016: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_version:Ljava/lang/String; // field@6059 │ │ -43a1bc: 1a01 a81d |0018: const-string v1, "IPv4" // string@1da8 │ │ -43a1c0: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -43a1c6: 0a00 |001d: move-result v0 │ │ -43a1c8: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ -43a1cc: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ -43a1d0: 1100 |0022: return-object v0 │ │ -43a1d2: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ -43a1d6: 1100 |0025: return-object v0 │ │ +43a178: |[43a178] org.purple.smoke.UdpNeighbor.remoteIpAddress:()Ljava/lang/String; │ │ +43a188: 5420 5660 |0000: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ +43a18c: 3800 1400 |0002: if-eqz v0, 0016 // +0014 │ │ +43a190: 6e10 735d 0000 |0004: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getInetAddress:()Ljava/net/InetAddress; // method@5d73 │ │ +43a196: 0c00 |0007: move-result-object v0 │ │ +43a198: 3800 0e00 |0008: if-eqz v0, 0016 // +000e │ │ +43a19c: 5420 5660 |000a: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ +43a1a0: 6e10 735d 0000 |000c: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getInetAddress:()Ljava/net/InetAddress; // method@5d73 │ │ +43a1a6: 0c00 |000f: move-result-object v0 │ │ +43a1a8: 6e10 8c5d 0000 |0010: invoke-virtual {v0}, Ljava/net/InetAddress;.getHostAddress:()Ljava/lang/String; // method@5d8c │ │ +43a1ae: 0c00 |0013: move-result-object v0 │ │ +43a1b0: 1100 |0014: return-object v0 │ │ +43a1b2: 0000 |0015: nop // spacer │ │ +43a1b4: 5420 5960 |0016: iget-object v0, v2, Lorg/purple/smoke/UdpNeighbor;.m_version:Ljava/lang/String; // field@6059 │ │ +43a1b8: 1a01 a81d |0018: const-string v1, "IPv4" // string@1da8 │ │ +43a1bc: 6e20 b85c 1000 |001a: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +43a1c2: 0a00 |001d: move-result v0 │ │ +43a1c4: 3800 0500 |001e: if-eqz v0, 0023 // +0005 │ │ +43a1c8: 1a00 ca04 |0020: const-string v0, "0.0.0.0" // string@04ca │ │ +43a1cc: 1100 |0022: return-object v0 │ │ +43a1ce: 1a00 9008 |0023: const-string v0, "::" // string@0890 │ │ +43a1d2: 1100 |0025: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x0014 │ │ Ljava/lang/Exception; -> 0x0015 │ │ positions : │ │ 0x0000 line=339 │ │ 0x000a line=340 │ │ 0x0016 line=346 │ │ @@ -1193979,24 +1193978,24 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 16 16-bit code units │ │ -43a1e8: |[43a1e8] org.purple.smoke.UdpNeighbor.remotePort:()Ljava/lang/String; │ │ -43a1f8: 5410 5660 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ -43a1fc: 3800 0b00 |0002: if-eqz v0, 000d // +000b │ │ -43a200: 6e10 765d 0000 |0004: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getPort:()I // method@5d76 │ │ -43a206: 0a00 |0007: move-result v0 │ │ -43a208: 7110 d55c 0000 |0008: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -43a20e: 0c00 |000b: move-result-object v0 │ │ -43a210: 1100 |000c: return-object v0 │ │ -43a212: 1a00 c704 |000d: const-string v0, "0" // string@04c7 │ │ -43a216: 1100 |000f: return-object v0 │ │ +43a1e4: |[43a1e4] org.purple.smoke.UdpNeighbor.remotePort:()Ljava/lang/String; │ │ +43a1f4: 5410 5660 |0000: iget-object v0, v1, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ +43a1f8: 3800 0b00 |0002: if-eqz v0, 000d // +000b │ │ +43a1fc: 6e10 765d 0000 |0004: invoke-virtual {v0}, Ljava/net/DatagramSocket;.getPort:()I // method@5d76 │ │ +43a202: 0a00 |0007: move-result v0 │ │ +43a204: 7110 d55c 0000 |0008: invoke-static {v0}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +43a20a: 0c00 |000b: move-result-object v0 │ │ +43a20c: 1100 |000c: return-object v0 │ │ +43a20e: 1a00 c704 |000d: const-string v0, "0" // string@04c7 │ │ +43a212: 1100 |000f: return-object v0 │ │ catches : 1 │ │ 0x0000 - 0x000c │ │ Ljava/lang/Exception; -> 0x000d │ │ positions : │ │ 0x0000 line=356 │ │ 0x0004 line=357 │ │ locals : │ │ @@ -1194007,46 +1194006,46 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -43a228: |[43a228] org.purple.smoke.UdpNeighbor.remoteScopeId:()Ljava/lang/String; │ │ -43a238: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ -43a23c: 1100 |0002: return-object v0 │ │ +43a224: |[43a224] org.purple.smoke.UdpNeighbor.remoteScopeId:()Ljava/lang/String; │ │ +43a234: 1a00 0000 |0000: const-string v0, "" // string@0000 │ │ +43a238: 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 │ │ -43a0cc: |[43a0cc] org.purple.smoke.UdpNeighbor.send:(Ljava/lang/String;)I │ │ -43a0dc: 6e10 9dbe 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be9d │ │ -43a0e2: 0a00 |0003: move-result v0 │ │ -43a0e4: 3800 1400 |0004: if-eqz v0, 0018 // +0014 │ │ -43a0e8: 3802 1200 |0006: if-eqz v2, 0018 // +0012 │ │ -43a0ec: 6e10 c55c 0200 |0008: invoke-virtual {v2}, Ljava/lang/String;.length:()I // method@5cc5 │ │ -43a0f2: 0a00 |000b: move-result v0 │ │ -43a0f4: 3900 0300 |000c: if-nez v0, 000f // +0003 │ │ -43a0f8: 280a |000e: goto 0018 // +000a │ │ -43a0fa: 6e10 bc5c 0200 |000f: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -43a100: 0c02 |0012: move-result-object v2 │ │ -43a102: 6e20 a6be 2100 |0013: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpNeighbor;.send:([B)I // method@bea6 │ │ -43a108: 0a02 |0016: move-result v2 │ │ -43a10a: 0f02 |0017: return v2 │ │ -43a10c: 1202 |0018: const/4 v2, #int 0 // #0 │ │ -43a10e: 0f02 |0019: return v2 │ │ +43a0c8: |[43a0c8] org.purple.smoke.UdpNeighbor.send:(Ljava/lang/String;)I │ │ +43a0d8: 6e10 9dbe 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be9d │ │ +43a0de: 0a00 |0003: move-result v0 │ │ +43a0e0: 3800 1400 |0004: if-eqz v0, 0018 // +0014 │ │ +43a0e4: 3802 1200 |0006: if-eqz v2, 0018 // +0012 │ │ +43a0e8: 6e10 c55c 0200 |0008: invoke-virtual {v2}, Ljava/lang/String;.length:()I // method@5cc5 │ │ +43a0ee: 0a00 |000b: move-result v0 │ │ +43a0f0: 3900 0300 |000c: if-nez v0, 000f // +0003 │ │ +43a0f4: 280a |000e: goto 0018 // +000a │ │ +43a0f6: 6e10 bc5c 0200 |000f: invoke-virtual {v2}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +43a0fc: 0c02 |0012: move-result-object v2 │ │ +43a0fe: 6e20 a6be 2100 |0013: invoke-virtual {v1, v2}, Lorg/purple/smoke/UdpNeighbor;.send:([B)I // method@bea6 │ │ +43a104: 0a02 |0016: move-result v2 │ │ +43a106: 0f02 |0017: return v2 │ │ +43a108: 1202 |0018: const/4 v2, #int 0 // #0 │ │ +43a10a: 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; │ │ @@ -1194056,66 +1194055,66 @@ │ │ type : '([B)I' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 10 │ │ ins : 2 │ │ outs : 5 │ │ insns size : 101 16-bit code units │ │ -439fe0: |[439fe0] org.purple.smoke.UdpNeighbor.send:([B)I │ │ -439ff0: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -439ff2: 3809 6300 |0001: if-eqz v9, 0064 // +0063 │ │ -439ff6: 2191 |0003: array-length v1, v9 │ │ -439ff8: 3801 6000 |0004: if-eqz v1, 0064 // +0060 │ │ -439ffc: 6e10 9dbe 0800 |0006: invoke-virtual {v8}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be9d │ │ -43a002: 0a01 |0009: move-result v1 │ │ -43a004: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ -43a008: 2858 |000c: goto 0064 // +0058 │ │ -43a00a: 5481 5660 |000d: iget-object v1, v8, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ -43a00e: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ -43a012: 0f00 |0011: return v0 │ │ -43a014: 2201 a50a |0012: new-instance v1, Ljava/io/ByteArrayInputStream; // type@0aa5 │ │ -43a018: 7020 6b5b 9100 |0014: invoke-direct {v1, v9}, Ljava/io/ByteArrayInputStream;.:([B)V // method@5b6b │ │ -43a01e: 6e10 6d5b 0100 |0017: invoke-virtual {v1}, Ljava/io/ByteArrayInputStream;.available:()I // method@5b6d │ │ -43a024: 0a02 |001a: move-result v2 │ │ -43a026: 3d02 3200 |001b: if-lez v2, 004d // +0032 │ │ -43a02a: 5482 4e60 |001d: iget-object v2, v8, Lorg/purple/smoke/UdpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@604e │ │ -43a02e: 6e10 da60 0200 |001f: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ -43a034: 0a02 |0022: move-result v2 │ │ -43a036: 3802 0300 |0023: if-eqz v2, 0026 // +0003 │ │ -43a03a: 2828 |0025: goto 004d // +0028 │ │ -43a03c: 1302 4002 |0026: const/16 v2, #int 576 // #240 │ │ -43a040: 6e10 6d5b 0100 |0028: invoke-virtual {v1}, Ljava/io/ByteArrayInputStream;.available:()I // method@5b6d │ │ -43a046: 0a03 |002b: move-result v3 │ │ -43a048: 7120 825c 3200 |002c: invoke-static {v2, v3}, Ljava/lang/Math;.min:(II)I // method@5c82 │ │ -43a04e: 0a02 |002f: move-result v2 │ │ -43a050: 2323 481b |0030: new-array v3, v2, [B // type@1b48 │ │ -43a054: 6e20 705b 3100 |0032: invoke-virtual {v1, v3}, Ljava/io/ByteArrayInputStream;.read:([B)I // method@5b70 │ │ -43a05a: 5484 5660 |0035: iget-object v4, v8, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ -43a05e: 2205 090b |0037: new-instance v5, Ljava/net/DatagramPacket; // type@0b09 │ │ -43a062: 5486 4f60 |0039: iget-object v6, v8, Lorg/purple/smoke/UdpNeighbor;.m_ipAddress:Ljava/lang/String; // field@604f │ │ -43a066: 7110 8b5d 0600 |003b: invoke-static {v6}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ -43a06c: 0c06 |003e: move-result-object v6 │ │ -43a06e: 5487 5060 |003f: iget-object v7, v8, Lorg/purple/smoke/UdpNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@6050 │ │ -43a072: 6e10 de60 0700 |0041: invoke-virtual {v7}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ -43a078: 0a07 |0044: move-result v7 │ │ -43a07a: 7057 6d5d 3562 |0045: invoke-direct {v5, v3, v2, v6, v7}, Ljava/net/DatagramPacket;.:([BILjava/net/InetAddress;I)V // method@5d6d │ │ -43a080: 6e20 795d 5400 |0048: invoke-virtual {v4, v5}, Ljava/net/DatagramSocket;.send:(Ljava/net/DatagramPacket;)V // method@5d79 │ │ -43a086: b020 |004b: add-int/2addr v0, v2 │ │ -43a088: 28cb |004c: goto 0017 // -0035 │ │ -43a08a: 7110 28bb 0900 |004d: invoke-static {v9}, Lorg/purple/smoke/Kernel;.writeCongestionDigest:([B)V // method@bb28 │ │ -43a090: 5489 4d60 |0050: iget-object v9, v8, Lorg/purple/smoke/UdpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@604d │ │ -43a094: 8101 |0052: int-to-long v1, v0 │ │ -43a096: 6e30 e460 1902 |0053: invoke-virtual {v9, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e4 │ │ -43a09c: 1a09 0000 |0056: const-string v9, "" // string@0000 │ │ -43a0a0: 6e20 a7be 9800 |0058: invoke-virtual {v8, v9}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea7 │ │ -43a0a6: 2809 |005b: goto 0064 // +0009 │ │ -43a0a8: 1a09 0e09 |005c: const-string v9, "A socket error occurred on send()." // string@090e │ │ -43a0ac: 6e20 a7be 9800 |005e: invoke-virtual {v8, v9}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea7 │ │ -43a0b2: 6e10 9ebe 0800 |0061: invoke-virtual {v8}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be9e │ │ -43a0b8: 0f00 |0064: return v0 │ │ +439fdc: |[439fdc] org.purple.smoke.UdpNeighbor.send:([B)I │ │ +439fec: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +439fee: 3809 6300 |0001: if-eqz v9, 0064 // +0063 │ │ +439ff2: 2191 |0003: array-length v1, v9 │ │ +439ff4: 3801 6000 |0004: if-eqz v1, 0064 // +0060 │ │ +439ff8: 6e10 9dbe 0800 |0006: invoke-virtual {v8}, Lorg/purple/smoke/UdpNeighbor;.connected:()Z // method@be9d │ │ +439ffe: 0a01 |0009: move-result v1 │ │ +43a000: 3901 0300 |000a: if-nez v1, 000d // +0003 │ │ +43a004: 2858 |000c: goto 0064 // +0058 │ │ +43a006: 5481 5660 |000d: iget-object v1, v8, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ +43a00a: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ +43a00e: 0f00 |0011: return v0 │ │ +43a010: 2201 a50a |0012: new-instance v1, Ljava/io/ByteArrayInputStream; // type@0aa5 │ │ +43a014: 7020 6b5b 9100 |0014: invoke-direct {v1, v9}, Ljava/io/ByteArrayInputStream;.:([B)V // method@5b6b │ │ +43a01a: 6e10 6d5b 0100 |0017: invoke-virtual {v1}, Ljava/io/ByteArrayInputStream;.available:()I // method@5b6d │ │ +43a020: 0a02 |001a: move-result v2 │ │ +43a022: 3d02 3200 |001b: if-lez v2, 004d // +0032 │ │ +43a026: 5482 4e60 |001d: iget-object v2, v8, Lorg/purple/smoke/UdpNeighbor;.m_disconnected:Ljava/util/concurrent/atomic/AtomicBoolean; // field@604e │ │ +43a02a: 6e10 da60 0200 |001f: invoke-virtual {v2}, Ljava/util/concurrent/atomic/AtomicBoolean;.get:()Z // method@60da │ │ +43a030: 0a02 |0022: move-result v2 │ │ +43a032: 3802 0300 |0023: if-eqz v2, 0026 // +0003 │ │ +43a036: 2828 |0025: goto 004d // +0028 │ │ +43a038: 1302 4002 |0026: const/16 v2, #int 576 // #240 │ │ +43a03c: 6e10 6d5b 0100 |0028: invoke-virtual {v1}, Ljava/io/ByteArrayInputStream;.available:()I // method@5b6d │ │ +43a042: 0a03 |002b: move-result v3 │ │ +43a044: 7120 825c 3200 |002c: invoke-static {v2, v3}, Ljava/lang/Math;.min:(II)I // method@5c82 │ │ +43a04a: 0a02 |002f: move-result v2 │ │ +43a04c: 2323 481b |0030: new-array v3, v2, [B // type@1b48 │ │ +43a050: 6e20 705b 3100 |0032: invoke-virtual {v1, v3}, Ljava/io/ByteArrayInputStream;.read:([B)I // method@5b70 │ │ +43a056: 5484 5660 |0035: iget-object v4, v8, Lorg/purple/smoke/UdpNeighbor;.m_socket:Ljava/net/DatagramSocket; // field@6056 │ │ +43a05a: 2205 090b |0037: new-instance v5, Ljava/net/DatagramPacket; // type@0b09 │ │ +43a05e: 5486 4f60 |0039: iget-object v6, v8, Lorg/purple/smoke/UdpNeighbor;.m_ipAddress:Ljava/lang/String; // field@604f │ │ +43a062: 7110 8b5d 0600 |003b: invoke-static {v6}, Ljava/net/InetAddress;.getByName:(Ljava/lang/String;)Ljava/net/InetAddress; // method@5d8b │ │ +43a068: 0c06 |003e: move-result-object v6 │ │ +43a06a: 5487 5060 |003f: iget-object v7, v8, Lorg/purple/smoke/UdpNeighbor;.m_ipPort:Ljava/util/concurrent/atomic/AtomicInteger; // field@6050 │ │ +43a06e: 6e10 de60 0700 |0041: invoke-virtual {v7}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@60de │ │ +43a074: 0a07 |0044: move-result v7 │ │ +43a076: 7057 6d5d 3562 |0045: invoke-direct {v5, v3, v2, v6, v7}, Ljava/net/DatagramPacket;.:([BILjava/net/InetAddress;I)V // method@5d6d │ │ +43a07c: 6e20 795d 5400 |0048: invoke-virtual {v4, v5}, Ljava/net/DatagramSocket;.send:(Ljava/net/DatagramPacket;)V // method@5d79 │ │ +43a082: b020 |004b: add-int/2addr v0, v2 │ │ +43a084: 28cb |004c: goto 0017 // -0035 │ │ +43a086: 7110 28bb 0900 |004d: invoke-static {v9}, Lorg/purple/smoke/Kernel;.writeCongestionDigest:([B)V // method@bb28 │ │ +43a08c: 5489 4d60 |0050: iget-object v9, v8, Lorg/purple/smoke/UdpNeighbor;.m_bytesWritten:Ljava/util/concurrent/atomic/AtomicLong; // field@604d │ │ +43a090: 8101 |0052: int-to-long v1, v0 │ │ +43a092: 6e30 e460 1902 |0053: invoke-virtual {v9, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;.getAndAdd:(J)J // method@60e4 │ │ +43a098: 1a09 0000 |0056: const-string v9, "" // string@0000 │ │ +43a09c: 6e20 a7be 9800 |0058: invoke-virtual {v8, v9}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea7 │ │ +43a0a2: 2809 |005b: goto 0064 // +0009 │ │ +43a0a4: 1a09 0e09 |005c: const-string v9, "A socket error occurred on send()." // string@090e │ │ +43a0a8: 6e20 a7be 9800 |005e: invoke-virtual {v8, v9}, Lorg/purple/smoke/UdpNeighbor;.setError:(Ljava/lang/String;)V // method@bea7 │ │ +43a0ae: 6e10 9ebe 0800 |0061: invoke-virtual {v8}, Lorg/purple/smoke/UdpNeighbor;.disconnect:()V // method@be9e │ │ +43a0b4: 0f00 |0064: return v0 │ │ catches : 1 │ │ 0x000d - 0x005b │ │ Ljava/lang/Exception; -> 0x005c │ │ positions : │ │ 0x0003 line=98 │ │ 0x000d line=103 │ │ 0x0012 line=106 │ │ @@ -1194141,17 +1194140,17 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -43a240: |[43a240] org.purple.smoke.UdpNeighbor.transport:()Ljava/lang/String; │ │ -43a250: 1a00 0050 |0000: const-string v0, "UDP" // string@5000 │ │ -43a254: 1100 |0002: return-object v0 │ │ +43a23c: |[43a23c] org.purple.smoke.UdpNeighbor.transport:()Ljava/lang/String; │ │ +43a24c: 1a00 0050 |0000: const-string v0, "UDP" // string@5000 │ │ +43a250: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ locals : │ │ │ │ source_file_idx : 20543 (UdpNeighbor.java) │ │ │ │ Class #4378 header: │ │ @@ -1455249,17 +1455248,17 @@ │ │ type : '(Landroid/content/Context;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 4 16-bit code units │ │ -432700: |[432700] org.purple.smoke.Steam$SteamLinearLayoutManager.:(Landroid/content/Context;)V │ │ -432710: 7020 3a4a 1000 |0000: invoke-direct {v0, v1}, Landroid/support/v7/widget/LinearLayoutManager;.:(Landroid/content/Context;)V // method@4a3a │ │ -432716: 0e00 |0003: return-void │ │ +4326fc: |[4326fc] org.purple.smoke.Steam$SteamLinearLayoutManager.:(Landroid/content/Context;)V │ │ +43270c: 7020 3a4a 1000 |0000: invoke-direct {v0, v1}, Landroid/support/v7/widget/LinearLayoutManager;.:(Landroid/content/Context;)V // method@4a3a │ │ +432712: 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; │ │ │ │ @@ -1455269,17 +1455268,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 │ │ -432718: |[432718] org.purple.smoke.Steam$SteamLinearLayoutManager.onLayoutChildren:(Landroid/support/v7/widget/RecyclerView$Recycler;Landroid/support/v7/widget/RecyclerView$State;)V │ │ -432728: 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 │ │ -43272e: 0e00 |0003: return-void │ │ +432714: |[432714] org.purple.smoke.Steam$SteamLinearLayoutManager.onLayoutChildren:(Landroid/support/v7/widget/RecyclerView$Recycler;Landroid/support/v7/widget/RecyclerView$State;)V │ │ +432724: 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 │ │ +43272a: 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; │ │ @@ -1568995,25 +1568994,25 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 1 │ │ insns size : 21 16-bit code units │ │ -42c478: |[42c478] org.purple.smoke.Settings.:()V │ │ -42c488: 7100 91b9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ -42c48e: 0c00 |0003: move-result-object v0 │ │ -42c490: 6900 0a5f |0004: sput-object v0, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42c494: 2200 da1a |0006: new-instance v0, Lorg/purple/smoke/Settings$1; // type@1ada │ │ -42c498: 7010 5ebc 0000 |0008: invoke-direct {v0}, Lorg/purple/smoke/Settings$1;.:()V // method@bc5e │ │ -42c49e: 6900 0b5f |000b: sput-object v0, Lorg/purple/smoke/Settings;.s_portFilter:Landroid/text/InputFilter; // field@5f0b │ │ -42c4a2: 2200 e71a |000d: new-instance v0, Lorg/purple/smoke/Settings$2; // type@1ae7 │ │ -42c4a6: 7010 79bc 0000 |000f: invoke-direct {v0}, Lorg/purple/smoke/Settings$2;.:()V // method@bc79 │ │ -42c4ac: 6900 0c5f |0012: sput-object v0, Lorg/purple/smoke/Settings;.s_sipHashInputFilter:Landroid/text/InputFilter; // field@5f0c │ │ -42c4b0: 0e00 |0014: return-void │ │ +42c474: |[42c474] org.purple.smoke.Settings.:()V │ │ +42c484: 7100 91b9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ +42c48a: 0c00 |0003: move-result-object v0 │ │ +42c48c: 6900 0a5f |0004: sput-object v0, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42c490: 2200 da1a |0006: new-instance v0, Lorg/purple/smoke/Settings$1; // type@1ada │ │ +42c494: 7010 5ebc 0000 |0008: invoke-direct {v0}, Lorg/purple/smoke/Settings$1;.:()V // method@bc5e │ │ +42c49a: 6900 0b5f |000b: sput-object v0, Lorg/purple/smoke/Settings;.s_portFilter:Landroid/text/InputFilter; // field@5f0b │ │ +42c49e: 2200 e71a |000d: new-instance v0, Lorg/purple/smoke/Settings$2; // type@1ae7 │ │ +42c4a2: 7010 79bc 0000 |000f: invoke-direct {v0}, Lorg/purple/smoke/Settings$2;.:()V // method@bc79 │ │ +42c4a8: 6900 0c5f |0012: sput-object v0, Lorg/purple/smoke/Settings;.s_sipHashInputFilter:Landroid/text/InputFilter; // field@5f0c │ │ +42c4ac: 0e00 |0014: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=172 │ │ 0x0006 line=173 │ │ 0x000d line=197 │ │ locals : │ │ │ │ @@ -1569022,23 +1569021,23 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 14 16-bit code units │ │ -42c4b4: |[42c4b4] org.purple.smoke.Settings.:()V │ │ -42c4c4: 7010 df3c 0100 |0000: invoke-direct {v1}, Landroid/support/v7/app/AppCompatActivity;.:()V // method@3cdf │ │ -42c4ca: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -42c4cc: 5b10 065f |0004: iput-object v0, v1, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c4d0: 5b10 095f |0006: iput-object v0, v1, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ -42c4d4: 5b10 075f |0008: iput-object v0, v1, Lorg/purple/smoke/Settings;.m_receiver:Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // field@5f07 │ │ -42c4d8: 1200 |000a: const/4 v0, #int 0 // #0 │ │ -42c4da: 5c10 085f |000b: iput-boolean v0, v1, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ -42c4de: 0e00 |000d: return-void │ │ +42c4b0: |[42c4b0] org.purple.smoke.Settings.:()V │ │ +42c4c0: 7010 df3c 0100 |0000: invoke-direct {v1}, Landroid/support/v7/app/AppCompatActivity;.:()V // method@3cdf │ │ +42c4c6: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +42c4c8: 5b10 065f |0004: iput-object v0, v1, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c4cc: 5b10 095f |0006: iput-object v0, v1, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ +42c4d0: 5b10 075f |0008: iput-object v0, v1, Lorg/purple/smoke/Settings;.m_receiver:Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // field@5f07 │ │ +42c4d4: 1200 |000a: const/4 v0, #int 0 // #0 │ │ +42c4d6: 5c10 085f |000b: iput-boolean v0, v1, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ +42c4da: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ 0x0004 line=167 │ │ 0x0006 line=168 │ │ 0x0008 line=169 │ │ 0x000b line=170 │ │ @@ -1569050,17 +1569049,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 │ │ -42c4e0: |[42c4e0] org.purple.smoke.Settings.access$000:(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V │ │ -42c4f0: 7020 01bd 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.populateNeighbors:(Ljava/util/ArrayList;)V // method@bd01 │ │ -42c4f6: 0e00 |0003: return-void │ │ +42c4dc: |[42c4dc] org.purple.smoke.Settings.access$000:(Lorg/purple/smoke/Settings;Ljava/util/ArrayList;)V │ │ +42c4ec: 7020 01bd 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.populateNeighbors:(Ljava/util/ArrayList;)V // method@bd01 │ │ +42c4f2: 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; │ │ │ │ @@ -1569069,17 +1569068,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 │ │ -42c4f8: |[42c4f8] org.purple.smoke.Settings.access$100:(Lorg/purple/smoke/Settings;)V │ │ -42c508: 7010 f5bc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.networkStatusChanged:()V // method@bcf5 │ │ -42c50e: 0e00 |0003: return-void │ │ +42c4f4: |[42c4f4] org.purple.smoke.Settings.access$100:(Lorg/purple/smoke/Settings;)V │ │ +42c504: 7010 f5bc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.networkStatusChanged:()V // method@bcf5 │ │ +42c50a: 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;) │ │ @@ -1569087,17 +1569086,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 │ │ -42c510: |[42c510] org.purple.smoke.Settings.access$1000:(Lorg/purple/smoke/Settings;Z)V │ │ -42c520: 7020 e8bc 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.enableWidgets:(Z)V // method@bce8 │ │ -42c526: 0e00 |0003: return-void │ │ +42c50c: |[42c50c] org.purple.smoke.Settings.access$1000:(Lorg/purple/smoke/Settings;Z)V │ │ +42c51c: 7020 e8bc 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.enableWidgets:(Z)V // method@bce8 │ │ +42c522: 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 │ │ │ │ @@ -1569106,17 +1569105,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 │ │ -42c528: |[42c528] org.purple.smoke.Settings.access$1100:(Lorg/purple/smoke/Settings;)V │ │ -42c538: 7010 16bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.showWidgets:()V // method@bd16 │ │ -42c53e: 0e00 |0003: return-void │ │ +42c524: |[42c524] org.purple.smoke.Settings.access$1100:(Lorg/purple/smoke/Settings;)V │ │ +42c534: 7010 16bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.showWidgets:()V // method@bd16 │ │ +42c53a: 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;) │ │ @@ -1569124,17 +1569123,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 │ │ -42c540: |[42c540] org.purple.smoke.Settings.access$1200:(Lorg/purple/smoke/Settings;)V │ │ -42c550: 7010 00bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.populateFancyKeyData:()V // method@bd00 │ │ -42c556: 0e00 |0003: return-void │ │ +42c53c: |[42c53c] org.purple.smoke.Settings.access$1200:(Lorg/purple/smoke/Settings;)V │ │ +42c54c: 7010 00bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.populateFancyKeyData:()V // method@bd00 │ │ +42c552: 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;) │ │ @@ -1569142,17 +1569141,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 │ │ -42c558: |[42c558] org.purple.smoke.Settings.access$1300:(Lorg/purple/smoke/Settings;)V │ │ -42c568: 7010 02bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.populateOzone:()V // method@bd02 │ │ -42c56e: 0e00 |0003: return-void │ │ +42c554: |[42c554] org.purple.smoke.Settings.access$1300:(Lorg/purple/smoke/Settings;)V │ │ +42c564: 7010 02bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.populateOzone:()V // method@bd02 │ │ +42c56a: 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;) │ │ @@ -1569160,17 +1569159,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 │ │ -42c570: |[42c570] org.purple.smoke.Settings.access$1400:(Lorg/purple/smoke/Settings;)V │ │ -42c580: 7010 18bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.startKernel:()V // method@bd18 │ │ -42c586: 0e00 |0003: return-void │ │ +42c56c: |[42c56c] org.purple.smoke.Settings.access$1400:(Lorg/purple/smoke/Settings;)V │ │ +42c57c: 7010 18bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.startKernel:()V // method@bd18 │ │ +42c582: 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;) │ │ @@ -1569178,17 +1569177,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 │ │ -42c588: |[42c588] org.purple.smoke.Settings.access$1500:(Lorg/purple/smoke/Settings;)V │ │ -42c598: 7010 19bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.startTimers:()V // method@bd19 │ │ -42c59e: 0e00 |0003: return-void │ │ +42c584: |[42c584] org.purple.smoke.Settings.access$1500:(Lorg/purple/smoke/Settings;)V │ │ +42c594: 7010 19bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.startTimers:()V // method@bd19 │ │ +42c59a: 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;) │ │ @@ -1569196,17 +1569195,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 │ │ -42c5a0: |[42c5a0] org.purple.smoke.Settings.access$1600:(Lorg/purple/smoke/Settings;)V │ │ -42c5b0: 7010 e4bc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.addNeighbor:()V // method@bce4 │ │ -42c5b6: 0e00 |0003: return-void │ │ +42c59c: |[42c59c] org.purple.smoke.Settings.access$1600:(Lorg/purple/smoke/Settings;)V │ │ +42c5ac: 7010 e4bc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.addNeighbor:()V // method@bce4 │ │ +42c5b2: 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;) │ │ @@ -1569214,17 +1569213,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 │ │ -42c5b8: |[42c5b8] org.purple.smoke.Settings.access$1700:(Lorg/purple/smoke/Settings;)V │ │ -42c5c8: 7010 e5bc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.addParticipant:()V // method@bce5 │ │ -42c5ce: 0e00 |0003: return-void │ │ +42c5b4: |[42c5b4] org.purple.smoke.Settings.access$1700:(Lorg/purple/smoke/Settings;)V │ │ +42c5c4: 7010 e5bc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.addParticipant:()V // method@bce5 │ │ +42c5ca: 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;) │ │ @@ -1569232,17 +1569231,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 │ │ -42c5d0: |[42c5d0] org.purple.smoke.Settings.access$1800:(Lorg/purple/smoke/Settings;Ljava/lang/String;)V │ │ -42c5e0: 7020 e9bc 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.epks:(Ljava/lang/String;)V // method@bce9 │ │ -42c5e6: 0e00 |0003: return-void │ │ +42c5cc: |[42c5cc] org.purple.smoke.Settings.access$1800:(Lorg/purple/smoke/Settings;Ljava/lang/String;)V │ │ +42c5dc: 7020 e9bc 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.epks:(Ljava/lang/String;)V // method@bce9 │ │ +42c5e2: 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; │ │ │ │ @@ -1569251,17 +1569250,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 │ │ -42c5e8: |[42c5e8] org.purple.smoke.Settings.access$1900:(Lorg/purple/smoke/Settings;)V │ │ -42c5f8: 7010 07bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.preparePKI:()V // method@bd07 │ │ -42c5fe: 0e00 |0003: return-void │ │ +42c5e4: |[42c5e4] org.purple.smoke.Settings.access$1900:(Lorg/purple/smoke/Settings;)V │ │ +42c5f4: 7010 07bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.preparePKI:()V // method@bd07 │ │ +42c5fa: 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;) │ │ @@ -1569269,17 +1569268,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 │ │ -42c600: |[42c600] org.purple.smoke.Settings.access$200:(Lorg/purple/smoke/Settings;)V │ │ -42c610: 7010 03bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.populateParticipants:()V // method@bd03 │ │ -42c616: 0e00 |0003: return-void │ │ +42c5fc: |[42c5fc] org.purple.smoke.Settings.access$200:(Lorg/purple/smoke/Settings;)V │ │ +42c60c: 7010 03bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.populateParticipants:()V // method@bd03 │ │ +42c612: 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;) │ │ @@ -1569287,17 +1569286,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 │ │ -42c618: |[42c618] org.purple.smoke.Settings.access$2000:(Lorg/purple/smoke/Settings;)V │ │ -42c628: 7010 04bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.prepareCredentials:()V // method@bd04 │ │ -42c62e: 0e00 |0003: return-void │ │ +42c614: |[42c614] org.purple.smoke.Settings.access$2000:(Lorg/purple/smoke/Settings;)V │ │ +42c624: 7010 04bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.prepareCredentials:()V // method@bd04 │ │ +42c62a: 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;) │ │ @@ -1569305,18 +1569304,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 │ │ -42be30: |[42be30] org.purple.smoke.Settings.access$2100:(Lorg/purple/smoke/Settings;Ljava/lang/String;)Z │ │ -42be40: 7020 ecbc 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.generateOzone:(Ljava/lang/String;)Z // method@bcec │ │ -42be46: 0a00 |0003: move-result v0 │ │ -42be48: 0f00 |0004: return v0 │ │ +42be2c: |[42be2c] org.purple.smoke.Settings.access$2100:(Lorg/purple/smoke/Settings;Ljava/lang/String;)Z │ │ +42be3c: 7020 ecbc 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.generateOzone:(Ljava/lang/String;)Z // method@bcec │ │ +42be42: 0a00 |0003: move-result v0 │ │ +42be44: 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; │ │ │ │ @@ -1569325,17 +1569324,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 │ │ -42c630: |[42c630] org.purple.smoke.Settings.access$2200:(Lorg/purple/smoke/Settings;I)V │ │ -42c640: 7020 0ebd 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.shareSipHashId:(I)V // method@bd0e │ │ -42c646: 0e00 |0003: return-void │ │ +42c62c: |[42c62c] org.purple.smoke.Settings.access$2200:(Lorg/purple/smoke/Settings;I)V │ │ +42c63c: 7020 0ebd 1000 |0000: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.shareSipHashId:(I)V // method@bd0e │ │ +42c642: 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 │ │ │ │ @@ -1569344,34 +1569343,34 @@ │ │ type : '()Landroid/text/InputFilter;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -42be18: |[42be18] org.purple.smoke.Settings.access$2300:()Landroid/text/InputFilter; │ │ -42be28: 6200 0c5f |0000: sget-object v0, Lorg/purple/smoke/Settings;.s_sipHashInputFilter:Landroid/text/InputFilter; // field@5f0c │ │ -42be2c: 1100 |0002: return-object v0 │ │ +42be14: |[42be14] org.purple.smoke.Settings.access$2300:()Landroid/text/InputFilter; │ │ +42be24: 6200 0c5f |0000: sget-object v0, Lorg/purple/smoke/Settings;.s_sipHashInputFilter:Landroid/text/InputFilter; // field@5f0c │ │ +42be28: 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 │ │ -42c648: |[42c648] org.purple.smoke.Settings.access$2400:(Lorg/purple/smoke/Settings;)V │ │ -42c658: 7010 1abd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.stopTimers:()V // method@bd1a │ │ -42c65e: 0e00 |0003: return-void │ │ +42c644: |[42c644] org.purple.smoke.Settings.access$2400:(Lorg/purple/smoke/Settings;)V │ │ +42c654: 7010 1abd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.stopTimers:()V // method@bd1a │ │ +42c65a: 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;) │ │ @@ -1569379,34 +1569378,34 @@ │ │ type : '()Lorg/purple/smoke/Cryptography;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -42c448: |[42c448] org.purple.smoke.Settings.access$300:()Lorg/purple/smoke/Cryptography; │ │ -42c458: 6200 0a5f |0000: sget-object v0, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42c45c: 1100 |0002: return-object v0 │ │ +42c444: |[42c444] org.purple.smoke.Settings.access$300:()Lorg/purple/smoke/Cryptography; │ │ +42c454: 6200 0a5f |0000: sget-object v0, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42c458: 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 │ │ -42c460: |[42c460] org.purple.smoke.Settings.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; │ │ -42c470: 5400 065f |0000: iget-object v0, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c474: 1100 |0002: return-object v0 │ │ +42c45c: |[42c45c] org.purple.smoke.Settings.access$400:(Lorg/purple/smoke/Settings;)Lorg/purple/smoke/Database; │ │ +42c46c: 5400 065f |0000: iget-object v0, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c470: 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;) │ │ @@ -1569414,17 +1569413,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 │ │ -42c660: |[42c660] org.purple.smoke.Settings.access$500:(Lorg/purple/smoke/Settings;)V │ │ -42c670: 7010 e7bc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.disablePKIButtons:()V // method@bce7 │ │ -42c676: 0e00 |0003: return-void │ │ +42c65c: |[42c65c] org.purple.smoke.Settings.access$500:(Lorg/purple/smoke/Settings;)V │ │ +42c66c: 7010 e7bc 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.disablePKIButtons:()V // method@bce7 │ │ +42c672: 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;) │ │ @@ -1569432,17 +1569431,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 │ │ -42c678: |[42c678] org.purple.smoke.Settings.access$800:(Lorg/purple/smoke/Settings;Ljava/lang/String;I)V │ │ -42c688: 7030 e6bc 1002 |0000: invoke-direct {v0, v1, v2}, Lorg/purple/smoke/Settings;.deleteNeighbor:(Ljava/lang/String;I)V // method@bce6 │ │ -42c68e: 0e00 |0003: return-void │ │ +42c674: |[42c674] org.purple.smoke.Settings.access$800:(Lorg/purple/smoke/Settings;Ljava/lang/String;I)V │ │ +42c684: 7030 e6bc 1002 |0000: invoke-direct {v0, v1, v2}, Lorg/purple/smoke/Settings;.deleteNeighbor:(Ljava/lang/String;I)V // method@bce6 │ │ +42c68a: 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 │ │ @@ -1569452,172 +1569451,172 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 26 │ │ ins : 1 │ │ outs : 12 │ │ insns size : 329 16-bit code units │ │ -42c690: |[42c690] org.purple.smoke.Settings.addNeighbor:()V │ │ -42c6a0: 0800 1900 |0000: move-object/from16 v0, v25 │ │ -42c6a4: 1401 ab00 087f |0002: const v1, #float 1.80778e+38 // #7f0800ab │ │ -42c6aa: 6e20 eabc 1000 |0005: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42c6b0: 0c01 |0008: move-result-object v1 │ │ -42c6b2: 1f01 7f0a |0009: check-cast v1, Landroid/widget/RadioGroup; // type@0a7f │ │ -42c6b6: 1402 ae00 087f |000b: const v2, #float 1.80779e+38 // #7f0800ae │ │ -42c6bc: 6e20 eabc 2000 |000e: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42c6c2: 0c02 |0011: move-result-object v2 │ │ -42c6c4: 1f02 8b0a |0012: check-cast v2, Landroid/widget/Spinner; // type@0a8b │ │ -42c6c8: 1403 d400 087f |0014: const v3, #float 1.80779e+38 // #7f0800d4 │ │ -42c6ce: 6e20 eabc 3000 |0017: invoke-virtual {v0, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42c6d4: 0c03 |001a: move-result-object v3 │ │ -42c6d6: 1f03 8b0a |001b: check-cast v3, Landroid/widget/Spinner; // type@0a8b │ │ -42c6da: 1404 2c00 087f |001d: const v4, #float 1.80776e+38 // #7f08002c │ │ -42c6e0: 6e20 eabc 4000 |0020: invoke-virtual {v0, v4}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42c6e6: 0c04 |0023: move-result-object v4 │ │ -42c6e8: 1f04 8d0a |0024: check-cast v4, Landroid/widget/Switch; // type@0a8d │ │ -42c6ec: 1405 8100 087f |0026: const v5, #float 1.80778e+38 // #7f080081 │ │ -42c6f2: 6e20 eabc 5000 |0029: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42c6f8: 0c05 |002c: move-result-object v5 │ │ -42c6fa: 1f05 8d0a |002d: check-cast v5, Landroid/widget/Switch; // type@0a8d │ │ -42c6fe: 1406 b000 087f |002f: const v6, #float 1.80779e+38 // #7f0800b0 │ │ -42c704: 6e20 eabc 6000 |0032: invoke-virtual {v0, v6}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42c70a: 0c06 |0035: move-result-object v6 │ │ -42c70c: 1f06 8d0a |0036: check-cast v6, Landroid/widget/Switch; // type@0a8d │ │ -42c710: 1407 c100 087f |0038: const v7, #float 1.80779e+38 // #7f0800c1 │ │ -42c716: 6e20 eabc 7000 |003b: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42c71c: 0c07 |003e: move-result-object v7 │ │ -42c71e: 1f07 8d0a |003f: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ -42c722: 1408 d200 087f |0041: const v8, #float 1.80779e+38 // #7f0800d2 │ │ -42c728: 6e20 eabc 8000 |0044: invoke-virtual {v0, v8}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42c72e: 0c08 |0047: move-result-object v8 │ │ -42c730: 1f08 970a |0048: check-cast v8, Landroid/widget/TextView; // type@0a97 │ │ -42c734: 1409 d300 087f |004a: const v9, #float 1.80779e+38 // #7f0800d3 │ │ -42c73a: 6e20 eabc 9000 |004d: invoke-virtual {v0, v9}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42c740: 0c09 |0050: move-result-object v9 │ │ -42c742: 1f09 970a |0051: check-cast v9, Landroid/widget/TextView; // type@0a97 │ │ -42c746: 140a a800 087f |0053: const v10, #float 1.80778e+38 // #7f0800a8 │ │ -42c74c: 6e20 eabc a000 |0056: invoke-virtual {v0, v10}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42c752: 0c0a |0059: move-result-object v10 │ │ -42c754: 1f0a 970a |005a: check-cast v10, Landroid/widget/TextView; // type@0a97 │ │ -42c758: 140b ac00 087f |005c: const v11, #float 1.80778e+38 // #7f0800ac │ │ -42c75e: 6e20 eabc b000 |005f: invoke-virtual {v0, v11}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42c764: 0c0b |0062: move-result-object v11 │ │ -42c766: 1f0b 970a |0063: check-cast v11, Landroid/widget/TextView; // type@0a97 │ │ -42c76a: 140c ad00 087f |0065: const v12, #float 1.80779e+38 // #7f0800ad │ │ -42c770: 6e20 eabc c000 |0068: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42c776: 0c0c |006b: move-result-object v12 │ │ -42c778: 1f0c 970a |006c: check-cast v12, Landroid/widget/TextView; // type@0a97 │ │ -42c77c: 6e10 665a 0100 |006e: invoke-virtual {v1}, Landroid/widget/RadioGroup;.getCheckedRadioButtonId:()I // method@5a66 │ │ -42c782: 0a01 |0071: move-result v1 │ │ -42c784: 140d a900 087f |0072: const v13, #float 1.80778e+38 // #7f0800a9 │ │ -42c78a: 33d1 0500 |0075: if-ne v1, v13, 007a // +0005 │ │ -42c78e: 1a01 a81d |0077: const-string v1, "IPv4" // string@1da8 │ │ -42c792: 2803 |0079: goto 007c // +0003 │ │ -42c794: 1a01 a91d |007a: const-string v1, "IPv6" // string@1da9 │ │ -42c798: 0818 0100 |007c: move-object/from16 v24, v1 │ │ -42c79c: 6e10 1c5b 0a00 |007e: invoke-virtual {v10}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c7a2: 0c01 |0081: move-result-object v1 │ │ -42c7a4: 7210 045c 0100 |0082: invoke-interface {v1}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c7aa: 0c01 |0085: move-result-object v1 │ │ -42c7ac: 6e10 d35c 0100 |0086: invoke-virtual {v1}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42c7b2: 0c01 |0089: move-result-object v1 │ │ -42c7b4: 6e10 c35c 0100 |008a: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42c7ba: 0a01 |008d: move-result v1 │ │ -42c7bc: 3801 0900 |008e: if-eqz v1, 0097 // +0009 │ │ -42c7c0: 1a01 d444 |0090: const-string v1, "Please complete the IP Address field." // string@44d4 │ │ -42c7c4: 7120 fabb 1000 |0092: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ -42c7ca: 2900 b300 |0095: goto/16 0148 // +00b3 │ │ -42c7ce: 540d 065f |0097: iget-object v13, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c7d2: 620e 0a5f |0099: sget-object v14, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42c7d6: 6e10 da5a 0600 |009b: invoke-virtual {v6}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42c7dc: 0a01 |009e: move-result v1 │ │ -42c7de: 1a06 97a5 |009f: const-string v6, "true" // string@a597 │ │ -42c7e2: 1a0f 1f68 |00a1: const-string v15, "false" // string@681f │ │ -42c7e6: 3801 0400 |00a3: if-eqz v1, 00a7 // +0004 │ │ -42c7ea: 0761 |00a5: move-object v1, v6 │ │ -42c7ec: 2802 |00a6: goto 00a8 // +0002 │ │ -42c7ee: 07f1 |00a7: move-object v1, v15 │ │ -42c7f0: 6e10 da5a 0700 |00a8: invoke-virtual {v7}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42c7f6: 0a07 |00ab: move-result v7 │ │ -42c7f8: 3807 0500 |00ac: if-eqz v7, 00b1 // +0005 │ │ -42c7fc: 0810 0600 |00ae: move-object/from16 v16, v6 │ │ -42c800: 2803 |00b0: goto 00b3 // +0003 │ │ -42c802: 0810 0f00 |00b1: move-object/from16 v16, v15 │ │ -42c806: 6e10 1c5b 0800 |00b3: invoke-virtual {v8}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c80c: 0c06 |00b6: move-result-object v6 │ │ -42c80e: 7210 045c 0600 |00b7: invoke-interface {v6}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c814: 0c11 |00ba: move-result-object v17 │ │ -42c816: 6e10 1c5b 0900 |00bb: invoke-virtual {v9}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c81c: 0c06 |00be: move-result-object v6 │ │ -42c81e: 7210 045c 0600 |00bf: invoke-interface {v6}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c824: 0c12 |00c2: move-result-object v18 │ │ -42c826: 6e10 ba5a 0300 |00c3: invoke-virtual {v3}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -42c82c: 0c03 |00c6: move-result-object v3 │ │ -42c82e: 6e10 965c 0300 |00c7: invoke-virtual {v3}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -42c834: 0c13 |00ca: move-result-object v19 │ │ -42c836: 6e10 1c5b 0a00 |00cb: invoke-virtual {v10}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c83c: 0c03 |00ce: move-result-object v3 │ │ -42c83e: 7210 045c 0300 |00cf: invoke-interface {v3}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c844: 0c14 |00d2: move-result-object v20 │ │ -42c846: 6e10 1c5b 0b00 |00d3: invoke-virtual {v11}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c84c: 0c03 |00d6: move-result-object v3 │ │ -42c84e: 7210 045c 0300 |00d7: invoke-interface {v3}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c854: 0c15 |00da: move-result-object v21 │ │ -42c856: 6e10 1c5b 0c00 |00db: invoke-virtual {v12}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c85c: 0c03 |00de: move-result-object v3 │ │ -42c85e: 7210 045c 0300 |00df: invoke-interface {v3}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c864: 0c16 |00e2: move-result-object v22 │ │ -42c866: 6e10 ba5a 0200 |00e3: invoke-virtual {v2}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -42c86c: 0c03 |00e6: move-result-object v3 │ │ -42c86e: 6e10 965c 0300 |00e7: invoke-virtual {v3}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -42c874: 0c17 |00ea: move-result-object v23 │ │ -42c876: 071f |00eb: move-object v15, v1 │ │ -42c878: 740c 39ba 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@ba39 │ │ -42c87e: 0a01 |00ef: move-result v1 │ │ -42c880: 3901 0800 |00f0: if-nez v1, 00f8 // +0008 │ │ -42c884: 1a01 710d |00f2: const-string v1, "An error occurred while saving the neighbor information." // string@0d71 │ │ -42c888: 7120 fabb 1000 |00f4: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ -42c88e: 2851 |00f7: goto 0148 // +0051 │ │ -42c890: 6e10 da5a 0400 |00f8: invoke-virtual {v4}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42c896: 0a01 |00fb: move-result v1 │ │ -42c898: 3901 0600 |00fc: if-nez v1, 0102 // +0006 │ │ -42c89c: 1201 |00fe: const/4 v1, #int 0 // #0 │ │ -42c89e: 7020 01bd 1000 |00ff: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.populateNeighbors:(Ljava/util/ArrayList;)V // method@bd01 │ │ -42c8a4: 6e10 da5a 0500 |0102: invoke-virtual {v5}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42c8aa: 0a01 |0105: move-result v1 │ │ -42c8ac: 3801 4200 |0106: if-eqz v1, 0148 // +0042 │ │ -42c8b0: 2201 f10a |0108: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -42c8b4: 7010 ee5c 0100 |010a: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42c8ba: 6e10 1c5b 0a00 |010d: invoke-virtual {v10}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c8c0: 0c03 |0110: move-result-object v3 │ │ -42c8c2: 7210 045c 0300 |0111: invoke-interface {v3}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c8c8: 0c03 |0114: move-result-object v3 │ │ -42c8ca: 6e20 f95c 3100 |0115: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c8d0: 1a03 7c08 |0118: const-string v3, ":" // string@087c │ │ -42c8d4: 6e20 f95c 3100 |011a: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c8da: 6e10 1c5b 0b00 |011d: invoke-virtual {v11}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c8e0: 0c04 |0120: move-result-object v4 │ │ -42c8e2: 7210 045c 0400 |0121: invoke-interface {v4}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c8e8: 0c04 |0124: move-result-object v4 │ │ -42c8ea: 6e20 f95c 4100 |0125: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c8f0: 6e20 f95c 3100 |0128: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c8f6: 6e10 ba5a 0200 |012b: invoke-virtual {v2}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -42c8fc: 0c02 |012e: move-result-object v2 │ │ -42c8fe: 6e20 f85c 2100 |012f: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ -42c904: 6e10 035d 0100 |0132: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42c90a: 0c01 |0135: move-result-object v1 │ │ -42c90c: 7020 ecbc 1000 |0136: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.generateOzone:(Ljava/lang/String;)Z // method@bcec │ │ -42c912: 0a02 |0139: move-result v2 │ │ -42c914: 3802 0e00 |013a: if-eqz v2, 0148 // +000e │ │ -42c918: 1402 b700 087f |013c: const v2, #float 1.80779e+38 // #7f0800b7 │ │ -42c91e: 6e20 eabc 2000 |013f: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42c924: 0c02 |0142: move-result-object v2 │ │ -42c926: 1f02 970a |0143: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ -42c92a: 6e20 495b 1200 |0145: invoke-virtual {v2, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42c930: 0e00 |0148: return-void │ │ +42c68c: |[42c68c] org.purple.smoke.Settings.addNeighbor:()V │ │ +42c69c: 0800 1900 |0000: move-object/from16 v0, v25 │ │ +42c6a0: 1401 ab00 087f |0002: const v1, #float 1.80778e+38 // #7f0800ab │ │ +42c6a6: 6e20 eabc 1000 |0005: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42c6ac: 0c01 |0008: move-result-object v1 │ │ +42c6ae: 1f01 7f0a |0009: check-cast v1, Landroid/widget/RadioGroup; // type@0a7f │ │ +42c6b2: 1402 ae00 087f |000b: const v2, #float 1.80779e+38 // #7f0800ae │ │ +42c6b8: 6e20 eabc 2000 |000e: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42c6be: 0c02 |0011: move-result-object v2 │ │ +42c6c0: 1f02 8b0a |0012: check-cast v2, Landroid/widget/Spinner; // type@0a8b │ │ +42c6c4: 1403 d400 087f |0014: const v3, #float 1.80779e+38 // #7f0800d4 │ │ +42c6ca: 6e20 eabc 3000 |0017: invoke-virtual {v0, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42c6d0: 0c03 |001a: move-result-object v3 │ │ +42c6d2: 1f03 8b0a |001b: check-cast v3, Landroid/widget/Spinner; // type@0a8b │ │ +42c6d6: 1404 2c00 087f |001d: const v4, #float 1.80776e+38 // #7f08002c │ │ +42c6dc: 6e20 eabc 4000 |0020: invoke-virtual {v0, v4}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42c6e2: 0c04 |0023: move-result-object v4 │ │ +42c6e4: 1f04 8d0a |0024: check-cast v4, Landroid/widget/Switch; // type@0a8d │ │ +42c6e8: 1405 8100 087f |0026: const v5, #float 1.80778e+38 // #7f080081 │ │ +42c6ee: 6e20 eabc 5000 |0029: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42c6f4: 0c05 |002c: move-result-object v5 │ │ +42c6f6: 1f05 8d0a |002d: check-cast v5, Landroid/widget/Switch; // type@0a8d │ │ +42c6fa: 1406 b000 087f |002f: const v6, #float 1.80779e+38 // #7f0800b0 │ │ +42c700: 6e20 eabc 6000 |0032: invoke-virtual {v0, v6}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42c706: 0c06 |0035: move-result-object v6 │ │ +42c708: 1f06 8d0a |0036: check-cast v6, Landroid/widget/Switch; // type@0a8d │ │ +42c70c: 1407 c100 087f |0038: const v7, #float 1.80779e+38 // #7f0800c1 │ │ +42c712: 6e20 eabc 7000 |003b: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42c718: 0c07 |003e: move-result-object v7 │ │ +42c71a: 1f07 8d0a |003f: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ +42c71e: 1408 d200 087f |0041: const v8, #float 1.80779e+38 // #7f0800d2 │ │ +42c724: 6e20 eabc 8000 |0044: invoke-virtual {v0, v8}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42c72a: 0c08 |0047: move-result-object v8 │ │ +42c72c: 1f08 970a |0048: check-cast v8, Landroid/widget/TextView; // type@0a97 │ │ +42c730: 1409 d300 087f |004a: const v9, #float 1.80779e+38 // #7f0800d3 │ │ +42c736: 6e20 eabc 9000 |004d: invoke-virtual {v0, v9}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42c73c: 0c09 |0050: move-result-object v9 │ │ +42c73e: 1f09 970a |0051: check-cast v9, Landroid/widget/TextView; // type@0a97 │ │ +42c742: 140a a800 087f |0053: const v10, #float 1.80778e+38 // #7f0800a8 │ │ +42c748: 6e20 eabc a000 |0056: invoke-virtual {v0, v10}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42c74e: 0c0a |0059: move-result-object v10 │ │ +42c750: 1f0a 970a |005a: check-cast v10, Landroid/widget/TextView; // type@0a97 │ │ +42c754: 140b ac00 087f |005c: const v11, #float 1.80778e+38 // #7f0800ac │ │ +42c75a: 6e20 eabc b000 |005f: invoke-virtual {v0, v11}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42c760: 0c0b |0062: move-result-object v11 │ │ +42c762: 1f0b 970a |0063: check-cast v11, Landroid/widget/TextView; // type@0a97 │ │ +42c766: 140c ad00 087f |0065: const v12, #float 1.80779e+38 // #7f0800ad │ │ +42c76c: 6e20 eabc c000 |0068: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42c772: 0c0c |006b: move-result-object v12 │ │ +42c774: 1f0c 970a |006c: check-cast v12, Landroid/widget/TextView; // type@0a97 │ │ +42c778: 6e10 665a 0100 |006e: invoke-virtual {v1}, Landroid/widget/RadioGroup;.getCheckedRadioButtonId:()I // method@5a66 │ │ +42c77e: 0a01 |0071: move-result v1 │ │ +42c780: 140d a900 087f |0072: const v13, #float 1.80778e+38 // #7f0800a9 │ │ +42c786: 33d1 0500 |0075: if-ne v1, v13, 007a // +0005 │ │ +42c78a: 1a01 a81d |0077: const-string v1, "IPv4" // string@1da8 │ │ +42c78e: 2803 |0079: goto 007c // +0003 │ │ +42c790: 1a01 a91d |007a: const-string v1, "IPv6" // string@1da9 │ │ +42c794: 0818 0100 |007c: move-object/from16 v24, v1 │ │ +42c798: 6e10 1c5b 0a00 |007e: invoke-virtual {v10}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c79e: 0c01 |0081: move-result-object v1 │ │ +42c7a0: 7210 045c 0100 |0082: invoke-interface {v1}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c7a6: 0c01 |0085: move-result-object v1 │ │ +42c7a8: 6e10 d35c 0100 |0086: invoke-virtual {v1}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42c7ae: 0c01 |0089: move-result-object v1 │ │ +42c7b0: 6e10 c35c 0100 |008a: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42c7b6: 0a01 |008d: move-result v1 │ │ +42c7b8: 3801 0900 |008e: if-eqz v1, 0097 // +0009 │ │ +42c7bc: 1a01 d444 |0090: const-string v1, "Please complete the IP Address field." // string@44d4 │ │ +42c7c0: 7120 fabb 1000 |0092: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ +42c7c6: 2900 b300 |0095: goto/16 0148 // +00b3 │ │ +42c7ca: 540d 065f |0097: iget-object v13, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c7ce: 620e 0a5f |0099: sget-object v14, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42c7d2: 6e10 da5a 0600 |009b: invoke-virtual {v6}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42c7d8: 0a01 |009e: move-result v1 │ │ +42c7da: 1a06 97a5 |009f: const-string v6, "true" // string@a597 │ │ +42c7de: 1a0f 1f68 |00a1: const-string v15, "false" // string@681f │ │ +42c7e2: 3801 0400 |00a3: if-eqz v1, 00a7 // +0004 │ │ +42c7e6: 0761 |00a5: move-object v1, v6 │ │ +42c7e8: 2802 |00a6: goto 00a8 // +0002 │ │ +42c7ea: 07f1 |00a7: move-object v1, v15 │ │ +42c7ec: 6e10 da5a 0700 |00a8: invoke-virtual {v7}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42c7f2: 0a07 |00ab: move-result v7 │ │ +42c7f4: 3807 0500 |00ac: if-eqz v7, 00b1 // +0005 │ │ +42c7f8: 0810 0600 |00ae: move-object/from16 v16, v6 │ │ +42c7fc: 2803 |00b0: goto 00b3 // +0003 │ │ +42c7fe: 0810 0f00 |00b1: move-object/from16 v16, v15 │ │ +42c802: 6e10 1c5b 0800 |00b3: invoke-virtual {v8}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c808: 0c06 |00b6: move-result-object v6 │ │ +42c80a: 7210 045c 0600 |00b7: invoke-interface {v6}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c810: 0c11 |00ba: move-result-object v17 │ │ +42c812: 6e10 1c5b 0900 |00bb: invoke-virtual {v9}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c818: 0c06 |00be: move-result-object v6 │ │ +42c81a: 7210 045c 0600 |00bf: invoke-interface {v6}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c820: 0c12 |00c2: move-result-object v18 │ │ +42c822: 6e10 ba5a 0300 |00c3: invoke-virtual {v3}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +42c828: 0c03 |00c6: move-result-object v3 │ │ +42c82a: 6e10 965c 0300 |00c7: invoke-virtual {v3}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +42c830: 0c13 |00ca: move-result-object v19 │ │ +42c832: 6e10 1c5b 0a00 |00cb: invoke-virtual {v10}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c838: 0c03 |00ce: move-result-object v3 │ │ +42c83a: 7210 045c 0300 |00cf: invoke-interface {v3}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c840: 0c14 |00d2: move-result-object v20 │ │ +42c842: 6e10 1c5b 0b00 |00d3: invoke-virtual {v11}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c848: 0c03 |00d6: move-result-object v3 │ │ +42c84a: 7210 045c 0300 |00d7: invoke-interface {v3}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c850: 0c15 |00da: move-result-object v21 │ │ +42c852: 6e10 1c5b 0c00 |00db: invoke-virtual {v12}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c858: 0c03 |00de: move-result-object v3 │ │ +42c85a: 7210 045c 0300 |00df: invoke-interface {v3}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c860: 0c16 |00e2: move-result-object v22 │ │ +42c862: 6e10 ba5a 0200 |00e3: invoke-virtual {v2}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +42c868: 0c03 |00e6: move-result-object v3 │ │ +42c86a: 6e10 965c 0300 |00e7: invoke-virtual {v3}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +42c870: 0c17 |00ea: move-result-object v23 │ │ +42c872: 071f |00eb: move-object v15, v1 │ │ +42c874: 740c 39ba 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@ba39 │ │ +42c87a: 0a01 |00ef: move-result v1 │ │ +42c87c: 3901 0800 |00f0: if-nez v1, 00f8 // +0008 │ │ +42c880: 1a01 710d |00f2: const-string v1, "An error occurred while saving the neighbor information." // string@0d71 │ │ +42c884: 7120 fabb 1000 |00f4: invoke-static {v0, v1}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ +42c88a: 2851 |00f7: goto 0148 // +0051 │ │ +42c88c: 6e10 da5a 0400 |00f8: invoke-virtual {v4}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42c892: 0a01 |00fb: move-result v1 │ │ +42c894: 3901 0600 |00fc: if-nez v1, 0102 // +0006 │ │ +42c898: 1201 |00fe: const/4 v1, #int 0 // #0 │ │ +42c89a: 7020 01bd 1000 |00ff: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.populateNeighbors:(Ljava/util/ArrayList;)V // method@bd01 │ │ +42c8a0: 6e10 da5a 0500 |0102: invoke-virtual {v5}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42c8a6: 0a01 |0105: move-result v1 │ │ +42c8a8: 3801 4200 |0106: if-eqz v1, 0148 // +0042 │ │ +42c8ac: 2201 f10a |0108: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +42c8b0: 7010 ee5c 0100 |010a: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42c8b6: 6e10 1c5b 0a00 |010d: invoke-virtual {v10}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c8bc: 0c03 |0110: move-result-object v3 │ │ +42c8be: 7210 045c 0300 |0111: invoke-interface {v3}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c8c4: 0c03 |0114: move-result-object v3 │ │ +42c8c6: 6e20 f95c 3100 |0115: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c8cc: 1a03 7c08 |0118: const-string v3, ":" // string@087c │ │ +42c8d0: 6e20 f95c 3100 |011a: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c8d6: 6e10 1c5b 0b00 |011d: invoke-virtual {v11}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c8dc: 0c04 |0120: move-result-object v4 │ │ +42c8de: 7210 045c 0400 |0121: invoke-interface {v4}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c8e4: 0c04 |0124: move-result-object v4 │ │ +42c8e6: 6e20 f95c 4100 |0125: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c8ec: 6e20 f95c 3100 |0128: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c8f2: 6e10 ba5a 0200 |012b: invoke-virtual {v2}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +42c8f8: 0c02 |012e: move-result-object v2 │ │ +42c8fa: 6e20 f85c 2100 |012f: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ +42c900: 6e10 035d 0100 |0132: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42c906: 0c01 |0135: move-result-object v1 │ │ +42c908: 7020 ecbc 1000 |0136: invoke-direct {v0, v1}, Lorg/purple/smoke/Settings;.generateOzone:(Ljava/lang/String;)Z // method@bcec │ │ +42c90e: 0a02 |0139: move-result v2 │ │ +42c910: 3802 0e00 |013a: if-eqz v2, 0148 // +000e │ │ +42c914: 1402 b700 087f |013c: const v2, #float 1.80779e+38 // #7f0800b7 │ │ +42c91a: 6e20 eabc 2000 |013f: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42c920: 0c02 |0142: move-result-object v2 │ │ +42c922: 1f02 970a |0143: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ +42c926: 6e20 495b 1200 |0145: invoke-virtual {v2, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42c92c: 0e00 |0148: return-void │ │ catches : (none) │ │ positions : │ │ 0x0005 line=303 │ │ 0x000e line=304 │ │ 0x0017 line=305 │ │ 0x0020 line=307 │ │ 0x0029 line=308 │ │ @@ -1569660,141 +1569659,141 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 5 │ │ insns size : 263 16-bit code units │ │ -42c934: |[42c934] org.purple.smoke.Settings.addParticipant:()V │ │ -42c944: 6e10 f4bc 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ -42c94a: 0a00 |0003: move-result v0 │ │ -42c94c: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -42c950: 0e00 |0006: return-void │ │ -42c952: 1400 2500 087f |0007: const v0, #float 1.80776e+38 // #7f080025 │ │ -42c958: 6e20 eabc 0500 |000a: invoke-virtual {v5, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42c95e: 0c00 |000d: move-result-object v0 │ │ -42c960: 1f00 8d0a |000e: check-cast v0, Landroid/widget/Switch; // type@0a8d │ │ -42c964: 1401 be00 087f |0010: const v1, #float 1.80779e+38 // #7f0800be │ │ -42c96a: 6e20 eabc 1500 |0013: invoke-virtual {v5, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42c970: 0c01 |0016: move-result-object v1 │ │ -42c972: 1f01 970a |0017: check-cast v1, Landroid/widget/TextView; // type@0a97 │ │ -42c976: 1402 0b01 087f |0019: const v2, #float 1.8078e+38 // #7f08010b │ │ -42c97c: 6e20 eabc 2500 |001c: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42c982: 0c02 |001f: move-result-object v2 │ │ -42c984: 1f02 970a |0020: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ -42c988: 6e10 da5a 0000 |0022: invoke-virtual {v0}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42c98e: 0a00 |0025: move-result v0 │ │ -42c990: 3800 4200 |0026: if-eqz v0, 0068 // +0042 │ │ -42c994: 6e10 1c5b 0100 |0028: invoke-virtual {v1}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42c99a: 0c00 |002b: move-result-object v0 │ │ -42c99c: 7210 045c 0000 |002c: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c9a2: 0c00 |002f: move-result-object v0 │ │ -42c9a4: 6e10 d35c 0000 |0030: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42c9aa: 0c00 |0033: move-result-object v0 │ │ -42c9ac: 6e10 c55c 0000 |0034: invoke-virtual {v0}, Ljava/lang/String;.length:()I // method@5cc5 │ │ -42c9b2: 0a01 |0037: move-result v1 │ │ -42c9b4: 1302 0800 |0038: const/16 v2, #int 8 // #8 │ │ -42c9b8: 3521 0800 |003a: if-ge v1, v2, 0042 // +0008 │ │ -42c9bc: 1a00 fc08 |003c: const-string v0, "A Smoke Alias must include at least eight characters." // string@08fc │ │ -42c9c0: 7120 fabb 0500 |003e: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ -42c9c6: 0e00 |0041: return-void │ │ -42c9c8: 5451 065f |0042: iget-object v1, v5, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c9cc: 6202 0a5f |0044: sget-object v2, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42c9d0: 1a03 4259 |0046: const-string v3, "alias" // string@5942 │ │ -42c9d4: 6e30 1bba 2103 |0048: invoke-virtual {v1, v2, v3}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42c9da: 0c01 |004b: move-result-object v1 │ │ -42c9dc: 6e20 b85c 0100 |004c: invoke-virtual {v1, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42c9e2: 0a01 |004f: move-result v1 │ │ -42c9e4: 3801 0800 |0050: if-eqz v1, 0058 // +0008 │ │ -42c9e8: 1a00 d744 |0052: const-string v0, "Please do not assign your Smoke Alias." // string@44d7 │ │ -42c9ec: 7120 fabb 0500 |0054: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ -42c9f2: 0e00 |0057: return-void │ │ -42c9f4: 7110 c2b9 0000 |0058: invoke-static {v0}, Lorg/purple/smoke/Cryptography;.sipHashIdFromString:(Ljava/lang/String;)Ljava/lang/String; // method@b9c2 │ │ -42c9fa: 0c00 |005b: move-result-object v0 │ │ -42c9fc: 6e10 c35c 0000 |005c: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42ca02: 0a01 |005f: move-result v1 │ │ -42ca04: 3801 6400 |0060: if-eqz v1, 00c4 // +0064 │ │ -42ca08: 1a00 1209 |0062: const-string v0, "A transformation failure occurred!" // string@0912 │ │ -42ca0c: 7120 fabb 0500 |0064: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ -42ca12: 0e00 |0067: return-void │ │ -42ca14: 2200 f10a |0068: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ -42ca18: 7010 ee5c 0000 |006a: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42ca1e: 6e10 1c5b 0100 |006d: invoke-virtual {v1}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42ca24: 0c01 |0070: move-result-object v1 │ │ -42ca26: 7210 045c 0100 |0071: invoke-interface {v1}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42ca2c: 0c01 |0074: move-result-object v1 │ │ -42ca2e: 1a03 3800 |0075: const-string v3, " " // string@0038 │ │ -42ca32: 1a04 0000 |0077: const-string v4, "" // string@0000 │ │ -42ca36: 6e30 c85c 3104 |0079: invoke-virtual {v1, v3, v4}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42ca3c: 0c01 |007c: move-result-object v1 │ │ -42ca3e: 1a03 8604 |007d: const-string v3, "-" // string@0486 │ │ -42ca42: 6e30 c85c 3104 |007f: invoke-virtual {v1, v3, v4}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42ca48: 0c01 |0082: move-result-object v1 │ │ -42ca4a: 1a03 7c08 |0083: const-string v3, ":" // string@087c │ │ -42ca4e: 6e30 c85c 3104 |0085: invoke-virtual {v1, v3, v4}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42ca54: 0c01 |0088: move-result-object v1 │ │ -42ca56: 1a03 f808 |0089: const-string v3, "@" // string@08f8 │ │ -42ca5a: 6e30 c85c 3104 |008b: invoke-virtual {v1, v3, v4}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42ca60: 0c01 |008e: move-result-object v1 │ │ -42ca62: 6e10 d35c 0100 |008f: invoke-virtual {v1}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42ca68: 0c01 |0092: move-result-object v1 │ │ -42ca6a: 7110 f5bb 0100 |0093: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf5 │ │ -42ca70: 0c01 |0096: move-result-object v1 │ │ -42ca72: 6e20 f95c 1000 |0097: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42ca78: 6e10 035d 0000 |009a: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42ca7e: 0c00 |009d: move-result-object v0 │ │ -42ca80: 6e10 d35c 0000 |009e: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42ca86: 0c00 |00a1: move-result-object v0 │ │ -42ca88: 6e10 c55c 0000 |00a2: invoke-virtual {v0}, Ljava/lang/String;.length:()I // method@5cc5 │ │ -42ca8e: 0a01 |00a5: move-result v1 │ │ -42ca90: 6003 c453 |00a6: sget v3, Lorg/purple/smoke/Cryptography;.SIPHASH_IDENTITY_LENGTH:I // field@53c4 │ │ -42ca94: 3231 0800 |00a8: if-eq v1, v3, 00b0 // +0008 │ │ -42ca98: 1a00 ff08 |00aa: const-string v0, "A Smoke ID must be of the form HHHH-HHHH-HHHH-HHHH-HHHH-HHHH-HHHH-HHHH." // string@08ff │ │ -42ca9c: 7120 fabb 0500 |00ac: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ -42caa2: 0e00 |00af: return-void │ │ -42caa4: 6e10 1c5b 0200 |00b0: invoke-virtual {v2}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42caaa: 0c01 |00b3: move-result-object v1 │ │ -42caac: 7210 045c 0100 |00b4: invoke-interface {v1}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42cab2: 0c01 |00b7: move-result-object v1 │ │ -42cab4: 6e20 b85c 0100 |00b8: invoke-virtual {v1, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42caba: 0a01 |00bb: move-result v1 │ │ -42cabc: 3801 0800 |00bc: if-eqz v1, 00c4 // +0008 │ │ -42cac0: 1a00 d844 |00be: const-string v0, "Please do not assign your Smoke ID." // string@44d8 │ │ -42cac4: 7120 fabb 0500 |00c0: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ -42caca: 0e00 |00c3: return-void │ │ -42cacc: 1401 2000 087f |00c4: const v1, #float 1.80776e+38 // #7f080020 │ │ -42cad2: 6e20 eabc 1500 |00c7: invoke-virtual {v5, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cad8: 0c01 |00ca: move-result-object v1 │ │ -42cada: 1f01 7c0a |00cb: check-cast v1, Landroid/widget/ProgressBar; // type@0a7c │ │ -42cade: 1212 |00cd: const/4 v2, #int 1 // #1 │ │ -42cae0: 6e20 5a5a 2100 |00ce: invoke-virtual {v1, v2}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ -42cae6: 1202 |00d1: const/4 v2, #int 0 // #0 │ │ -42cae8: 6e20 5f5a 2100 |00d2: invoke-virtual {v1, v2}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42caee: 6e10 f2bc 0500 |00d5: invoke-virtual {v5}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ -42caf4: 0c03 |00d8: move-result-object v3 │ │ -42caf6: 1304 1000 |00d9: const/16 v4, #int 16 // #10 │ │ -42cafa: 6e30 9057 4304 |00db: invoke-virtual {v3, v4, v4}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ -42cb00: 1403 9200 087f |00de: const v3, #float 1.80778e+38 // #7f080092 │ │ -42cb06: 6e20 eabc 3500 |00e1: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cb0c: 0c03 |00e4: move-result-object v3 │ │ -42cb0e: 7120 ebbb 2300 |00e5: invoke-static {v3, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ -42cb14: 2202 f40a |00e8: new-instance v2, Ljava/lang/Thread; // type@0af4 │ │ -42cb18: 2203 dc1a |00ea: new-instance v3, Lorg/purple/smoke/Settings$1SingleShot; // type@1adc │ │ -42cb1c: 1404 bd00 087f |00ec: const v4, #float 1.80779e+38 // #7f0800bd │ │ -42cb22: 6e20 eabc 4500 |00ef: invoke-virtual {v5, v4}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cb28: 0c04 |00f2: move-result-object v4 │ │ -42cb2a: 1f04 970a |00f3: check-cast v4, Landroid/widget/TextView; // type@0a97 │ │ -42cb2e: 6e10 1c5b 0400 |00f5: invoke-virtual {v4}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42cb34: 0c04 |00f8: move-result-object v4 │ │ -42cb36: 7210 045c 0400 |00f9: invoke-interface {v4}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42cb3c: 0c04 |00fc: move-result-object v4 │ │ -42cb3e: 7051 62bc 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@bc62 │ │ -42cb44: 7020 0e5d 3200 |0100: invoke-direct {v2, v3}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ -42cb4a: 6e10 195d 0200 |0103: invoke-virtual {v2}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ -42cb50: 0e00 |0106: return-void │ │ +42c930: |[42c930] org.purple.smoke.Settings.addParticipant:()V │ │ +42c940: 6e10 f4bc 0500 |0000: invoke-virtual {v5}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ +42c946: 0a00 |0003: move-result v0 │ │ +42c948: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +42c94c: 0e00 |0006: return-void │ │ +42c94e: 1400 2500 087f |0007: const v0, #float 1.80776e+38 // #7f080025 │ │ +42c954: 6e20 eabc 0500 |000a: invoke-virtual {v5, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42c95a: 0c00 |000d: move-result-object v0 │ │ +42c95c: 1f00 8d0a |000e: check-cast v0, Landroid/widget/Switch; // type@0a8d │ │ +42c960: 1401 be00 087f |0010: const v1, #float 1.80779e+38 // #7f0800be │ │ +42c966: 6e20 eabc 1500 |0013: invoke-virtual {v5, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42c96c: 0c01 |0016: move-result-object v1 │ │ +42c96e: 1f01 970a |0017: check-cast v1, Landroid/widget/TextView; // type@0a97 │ │ +42c972: 1402 0b01 087f |0019: const v2, #float 1.8078e+38 // #7f08010b │ │ +42c978: 6e20 eabc 2500 |001c: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42c97e: 0c02 |001f: move-result-object v2 │ │ +42c980: 1f02 970a |0020: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ +42c984: 6e10 da5a 0000 |0022: invoke-virtual {v0}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42c98a: 0a00 |0025: move-result v0 │ │ +42c98c: 3800 4200 |0026: if-eqz v0, 0068 // +0042 │ │ +42c990: 6e10 1c5b 0100 |0028: invoke-virtual {v1}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42c996: 0c00 |002b: move-result-object v0 │ │ +42c998: 7210 045c 0000 |002c: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c99e: 0c00 |002f: move-result-object v0 │ │ +42c9a0: 6e10 d35c 0000 |0030: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42c9a6: 0c00 |0033: move-result-object v0 │ │ +42c9a8: 6e10 c55c 0000 |0034: invoke-virtual {v0}, Ljava/lang/String;.length:()I // method@5cc5 │ │ +42c9ae: 0a01 |0037: move-result v1 │ │ +42c9b0: 1302 0800 |0038: const/16 v2, #int 8 // #8 │ │ +42c9b4: 3521 0800 |003a: if-ge v1, v2, 0042 // +0008 │ │ +42c9b8: 1a00 fc08 |003c: const-string v0, "A Smoke Alias must include at least eight characters." // string@08fc │ │ +42c9bc: 7120 fabb 0500 |003e: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ +42c9c2: 0e00 |0041: return-void │ │ +42c9c4: 5451 065f |0042: iget-object v1, v5, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c9c8: 6202 0a5f |0044: sget-object v2, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42c9cc: 1a03 4259 |0046: const-string v3, "alias" // string@5942 │ │ +42c9d0: 6e30 1bba 2103 |0048: invoke-virtual {v1, v2, v3}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42c9d6: 0c01 |004b: move-result-object v1 │ │ +42c9d8: 6e20 b85c 0100 |004c: invoke-virtual {v1, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42c9de: 0a01 |004f: move-result v1 │ │ +42c9e0: 3801 0800 |0050: if-eqz v1, 0058 // +0008 │ │ +42c9e4: 1a00 d744 |0052: const-string v0, "Please do not assign your Smoke Alias." // string@44d7 │ │ +42c9e8: 7120 fabb 0500 |0054: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ +42c9ee: 0e00 |0057: return-void │ │ +42c9f0: 7110 c2b9 0000 |0058: invoke-static {v0}, Lorg/purple/smoke/Cryptography;.sipHashIdFromString:(Ljava/lang/String;)Ljava/lang/String; // method@b9c2 │ │ +42c9f6: 0c00 |005b: move-result-object v0 │ │ +42c9f8: 6e10 c35c 0000 |005c: invoke-virtual {v0}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42c9fe: 0a01 |005f: move-result v1 │ │ +42ca00: 3801 6400 |0060: if-eqz v1, 00c4 // +0064 │ │ +42ca04: 1a00 1209 |0062: const-string v0, "A transformation failure occurred!" // string@0912 │ │ +42ca08: 7120 fabb 0500 |0064: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ +42ca0e: 0e00 |0067: return-void │ │ +42ca10: 2200 f10a |0068: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ +42ca14: 7010 ee5c 0000 |006a: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42ca1a: 6e10 1c5b 0100 |006d: invoke-virtual {v1}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42ca20: 0c01 |0070: move-result-object v1 │ │ +42ca22: 7210 045c 0100 |0071: invoke-interface {v1}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42ca28: 0c01 |0074: move-result-object v1 │ │ +42ca2a: 1a03 3800 |0075: const-string v3, " " // string@0038 │ │ +42ca2e: 1a04 0000 |0077: const-string v4, "" // string@0000 │ │ +42ca32: 6e30 c85c 3104 |0079: invoke-virtual {v1, v3, v4}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42ca38: 0c01 |007c: move-result-object v1 │ │ +42ca3a: 1a03 8604 |007d: const-string v3, "-" // string@0486 │ │ +42ca3e: 6e30 c85c 3104 |007f: invoke-virtual {v1, v3, v4}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42ca44: 0c01 |0082: move-result-object v1 │ │ +42ca46: 1a03 7c08 |0083: const-string v3, ":" // string@087c │ │ +42ca4a: 6e30 c85c 3104 |0085: invoke-virtual {v1, v3, v4}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42ca50: 0c01 |0088: move-result-object v1 │ │ +42ca52: 1a03 f808 |0089: const-string v3, "@" // string@08f8 │ │ +42ca56: 6e30 c85c 3104 |008b: invoke-virtual {v1, v3, v4}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42ca5c: 0c01 |008e: move-result-object v1 │ │ +42ca5e: 6e10 d35c 0100 |008f: invoke-virtual {v1}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42ca64: 0c01 |0092: move-result-object v1 │ │ +42ca66: 7110 f5bb 0100 |0093: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf5 │ │ +42ca6c: 0c01 |0096: move-result-object v1 │ │ +42ca6e: 6e20 f95c 1000 |0097: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42ca74: 6e10 035d 0000 |009a: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42ca7a: 0c00 |009d: move-result-object v0 │ │ +42ca7c: 6e10 d35c 0000 |009e: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42ca82: 0c00 |00a1: move-result-object v0 │ │ +42ca84: 6e10 c55c 0000 |00a2: invoke-virtual {v0}, Ljava/lang/String;.length:()I // method@5cc5 │ │ +42ca8a: 0a01 |00a5: move-result v1 │ │ +42ca8c: 6003 c453 |00a6: sget v3, Lorg/purple/smoke/Cryptography;.SIPHASH_IDENTITY_LENGTH:I // field@53c4 │ │ +42ca90: 3231 0800 |00a8: if-eq v1, v3, 00b0 // +0008 │ │ +42ca94: 1a00 ff08 |00aa: const-string v0, "A Smoke ID must be of the form HHHH-HHHH-HHHH-HHHH-HHHH-HHHH-HHHH-HHHH." // string@08ff │ │ +42ca98: 7120 fabb 0500 |00ac: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ +42ca9e: 0e00 |00af: return-void │ │ +42caa0: 6e10 1c5b 0200 |00b0: invoke-virtual {v2}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42caa6: 0c01 |00b3: move-result-object v1 │ │ +42caa8: 7210 045c 0100 |00b4: invoke-interface {v1}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42caae: 0c01 |00b7: move-result-object v1 │ │ +42cab0: 6e20 b85c 0100 |00b8: invoke-virtual {v1, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42cab6: 0a01 |00bb: move-result v1 │ │ +42cab8: 3801 0800 |00bc: if-eqz v1, 00c4 // +0008 │ │ +42cabc: 1a00 d844 |00be: const-string v0, "Please do not assign your Smoke ID." // string@44d8 │ │ +42cac0: 7120 fabb 0500 |00c0: invoke-static {v5, v0}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ +42cac6: 0e00 |00c3: return-void │ │ +42cac8: 1401 2000 087f |00c4: const v1, #float 1.80776e+38 // #7f080020 │ │ +42cace: 6e20 eabc 1500 |00c7: invoke-virtual {v5, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cad4: 0c01 |00ca: move-result-object v1 │ │ +42cad6: 1f01 7c0a |00cb: check-cast v1, Landroid/widget/ProgressBar; // type@0a7c │ │ +42cada: 1212 |00cd: const/4 v2, #int 1 // #1 │ │ +42cadc: 6e20 5a5a 2100 |00ce: invoke-virtual {v1, v2}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ +42cae2: 1202 |00d1: const/4 v2, #int 0 // #0 │ │ +42cae4: 6e20 5f5a 2100 |00d2: invoke-virtual {v1, v2}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42caea: 6e10 f2bc 0500 |00d5: invoke-virtual {v5}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ +42caf0: 0c03 |00d8: move-result-object v3 │ │ +42caf2: 1304 1000 |00d9: const/16 v4, #int 16 // #10 │ │ +42caf6: 6e30 9057 4304 |00db: invoke-virtual {v3, v4, v4}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ +42cafc: 1403 9200 087f |00de: const v3, #float 1.80778e+38 // #7f080092 │ │ +42cb02: 6e20 eabc 3500 |00e1: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cb08: 0c03 |00e4: move-result-object v3 │ │ +42cb0a: 7120 ebbb 2300 |00e5: invoke-static {v3, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ +42cb10: 2202 f40a |00e8: new-instance v2, Ljava/lang/Thread; // type@0af4 │ │ +42cb14: 2203 dc1a |00ea: new-instance v3, Lorg/purple/smoke/Settings$1SingleShot; // type@1adc │ │ +42cb18: 1404 bd00 087f |00ec: const v4, #float 1.80779e+38 // #7f0800bd │ │ +42cb1e: 6e20 eabc 4500 |00ef: invoke-virtual {v5, v4}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cb24: 0c04 |00f2: move-result-object v4 │ │ +42cb26: 1f04 970a |00f3: check-cast v4, Landroid/widget/TextView; // type@0a97 │ │ +42cb2a: 6e10 1c5b 0400 |00f5: invoke-virtual {v4}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42cb30: 0c04 |00f8: move-result-object v4 │ │ +42cb32: 7210 045c 0400 |00f9: invoke-interface {v4}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42cb38: 0c04 |00fc: move-result-object v4 │ │ +42cb3a: 7051 62bc 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@bc62 │ │ +42cb40: 7020 0e5d 3200 |0100: invoke-direct {v2, v3}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ +42cb46: 6e10 195d 0200 |0103: invoke-virtual {v2}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ +42cb4c: 0e00 |0106: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=363 │ │ 0x000a line=367 │ │ 0x0013 line=369 │ │ 0x001c line=370 │ │ 0x0022 line=372 │ │ @@ -1569837,28 +1569836,28 @@ │ │ type : '(Ljava/lang/String;I)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 5 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 31 16-bit code units │ │ -42cb54: |[42cb54] org.purple.smoke.Settings.deleteNeighbor:(Ljava/lang/String;I)V │ │ -42cb64: 2200 f51a |0000: new-instance v0, Lorg/purple/smoke/Settings$3; // type@1af5 │ │ -42cb68: 7030 99bc 2004 |0002: invoke-direct {v0, v2, v4}, Lorg/purple/smoke/Settings$3;.:(Lorg/purple/smoke/Settings;I)V // method@bc99 │ │ -42cb6e: 2204 f10a |0005: new-instance v4, Ljava/lang/StringBuilder; // type@0af1 │ │ -42cb72: 7010 ee5c 0400 |0007: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42cb78: 1a01 790e |000a: const-string v1, "Are you sure that you wish to delete the neighbor " // string@0e79 │ │ -42cb7c: 6e20 f95c 1400 |000c: invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42cb82: 6e20 f95c 3400 |000f: invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42cb88: 1a03 f608 |0012: const-string v3, "?" // string@08f6 │ │ -42cb8c: 6e20 f95c 3400 |0014: invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42cb92: 6e10 035d 0400 |0017: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42cb98: 0c03 |001a: move-result-object v3 │ │ -42cb9a: 7130 fcbb 0203 |001b: invoke-static {v2, v0, v3}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbfc │ │ -42cba0: 0e00 |001e: return-void │ │ +42cb50: |[42cb50] org.purple.smoke.Settings.deleteNeighbor:(Ljava/lang/String;I)V │ │ +42cb60: 2200 f51a |0000: new-instance v0, Lorg/purple/smoke/Settings$3; // type@1af5 │ │ +42cb64: 7030 99bc 2004 |0002: invoke-direct {v0, v2, v4}, Lorg/purple/smoke/Settings$3;.:(Lorg/purple/smoke/Settings;I)V // method@bc99 │ │ +42cb6a: 2204 f10a |0005: new-instance v4, Ljava/lang/StringBuilder; // type@0af1 │ │ +42cb6e: 7010 ee5c 0400 |0007: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42cb74: 1a01 790e |000a: const-string v1, "Are you sure that you wish to delete the neighbor " // string@0e79 │ │ +42cb78: 6e20 f95c 1400 |000c: invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42cb7e: 6e20 f95c 3400 |000f: invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42cb84: 1a03 f608 |0012: const-string v3, "?" // string@08f6 │ │ +42cb88: 6e20 f95c 3400 |0014: invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42cb8e: 6e10 035d 0400 |0017: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42cb94: 0c03 |001a: move-result-object v3 │ │ +42cb96: 7130 fcbb 0203 |001b: invoke-static {v2, v0, v3}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbfc │ │ +42cb9c: 0e00 |001e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=497 │ │ 0x0005 line=539 │ │ 0x001b line=540 │ │ locals : │ │ 0x0000 - 0x001f reg=2 this Lorg/purple/smoke/Settings; │ │ @@ -1569870,34 +1569869,34 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 42 16-bit code units │ │ -42cba4: |[42cba4] org.purple.smoke.Settings.disablePKIButtons:()V │ │ -42cbb4: 1400 7400 087f |0000: const v0, #float 1.80777e+38 // #7f080074 │ │ -42cbba: 6e20 eabc 0300 |0003: invoke-virtual {v3, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cbc0: 0c00 |0006: move-result-object v0 │ │ -42cbc2: 1f00 5e0a |0007: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cbc6: 1401 b600 087f |0009: const v1, #float 1.80779e+38 // #7f0800b6 │ │ -42cbcc: 6e20 eabc 1300 |000c: invoke-virtual {v3, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cbd2: 0c01 |000f: move-result-object v1 │ │ -42cbd4: 1f01 8d0a |0010: check-cast v1, Landroid/widget/Switch; // type@0a8d │ │ -42cbd8: 6e10 da5a 0100 |0012: invoke-virtual {v1}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42cbde: 0a02 |0015: move-result v2 │ │ -42cbe0: 6e20 e058 2000 |0016: invoke-virtual {v0, v2}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cbe6: 1400 ff00 087f |0019: const v0, #float 1.8078e+38 // #7f0800ff │ │ -42cbec: 6e20 eabc 0300 |001c: invoke-virtual {v3, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cbf2: 0c00 |001f: move-result-object v0 │ │ -42cbf4: 1f00 5e0a |0020: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cbf8: 6e10 da5a 0100 |0022: invoke-virtual {v1}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42cbfe: 0a01 |0025: move-result v1 │ │ -42cc00: 6e20 e058 1000 |0026: invoke-virtual {v0, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cc06: 0e00 |0029: return-void │ │ +42cba0: |[42cba0] org.purple.smoke.Settings.disablePKIButtons:()V │ │ +42cbb0: 1400 7400 087f |0000: const v0, #float 1.80777e+38 // #7f080074 │ │ +42cbb6: 6e20 eabc 0300 |0003: invoke-virtual {v3, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cbbc: 0c00 |0006: move-result-object v0 │ │ +42cbbe: 1f00 5e0a |0007: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cbc2: 1401 b600 087f |0009: const v1, #float 1.80779e+38 // #7f0800b6 │ │ +42cbc8: 6e20 eabc 1300 |000c: invoke-virtual {v3, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cbce: 0c01 |000f: move-result-object v1 │ │ +42cbd0: 1f01 8d0a |0010: check-cast v1, Landroid/widget/Switch; // type@0a8d │ │ +42cbd4: 6e10 da5a 0100 |0012: invoke-virtual {v1}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42cbda: 0a02 |0015: move-result v2 │ │ +42cbdc: 6e20 e058 2000 |0016: invoke-virtual {v0, v2}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cbe2: 1400 ff00 087f |0019: const v0, #float 1.8078e+38 // #7f0800ff │ │ +42cbe8: 6e20 eabc 0300 |001c: invoke-virtual {v3, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cbee: 0c00 |001f: move-result-object v0 │ │ +42cbf0: 1f00 5e0a |0020: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cbf4: 6e10 da5a 0100 |0022: invoke-virtual {v1}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42cbfa: 0a01 |0025: move-result v1 │ │ +42cbfc: 6e20 e058 1000 |0026: invoke-virtual {v0, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cc02: 0e00 |0029: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=548 │ │ 0x000c line=549 │ │ 0x0012 line=551 │ │ 0x001c line=552 │ │ 0x0022 line=553 │ │ @@ -1569909,140 +1569908,140 @@ │ │ type : '(Z)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 298 16-bit code units │ │ -42cc08: |[42cc08] org.purple.smoke.Settings.enableWidgets:(Z)V │ │ -42cc18: 1400 1e00 087f |0000: const v0, #float 1.80776e+38 // #7f08001e │ │ -42cc1e: 6e20 eabc 0200 |0003: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cc24: 0c00 |0006: move-result-object v0 │ │ -42cc26: 1f00 5e0a |0007: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cc2a: 6e20 e058 3000 |0009: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cc30: 1400 1f00 087f |000c: const v0, #float 1.80776e+38 // #7f08001f │ │ -42cc36: 6e20 eabc 0200 |000f: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cc3c: 0c00 |0012: move-result-object v0 │ │ -42cc3e: 1f00 5e0a |0013: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cc42: 6e20 e058 3000 |0015: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cc48: 1400 6400 087f |0018: const v0, #float 1.80777e+38 // #7f080064 │ │ -42cc4e: 6e20 eabc 0200 |001b: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cc54: 0c00 |001e: move-result-object v0 │ │ -42cc56: 1f00 5e0a |001f: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cc5a: 6e20 e058 3000 |0021: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cc60: 1400 da00 087f |0024: const v0, #float 1.80779e+38 // #7f0800da │ │ -42cc66: 6e20 eabc 0200 |0027: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cc6c: 0c00 |002a: move-result-object v0 │ │ -42cc6e: 1f00 5e0a |002b: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cc72: 6e20 e058 3000 |002d: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cc78: 1400 db00 087f |0030: const v0, #float 1.80779e+38 // #7f0800db │ │ -42cc7e: 6e20 eabc 0200 |0033: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cc84: 0c00 |0036: move-result-object v0 │ │ -42cc86: 1f00 5e0a |0037: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cc8a: 6e20 e058 3000 |0039: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cc90: 1400 e000 087f |003c: const v0, #float 1.8078e+38 // #7f0800e0 │ │ -42cc96: 6e20 eabc 0200 |003f: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cc9c: 0c00 |0042: move-result-object v0 │ │ -42cc9e: 1f00 5e0a |0043: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cca2: 6e20 e058 3000 |0045: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cca8: 1400 e100 087f |0048: const v0, #float 1.8078e+38 // #7f0800e1 │ │ -42ccae: 6e20 eabc 0200 |004b: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ccb4: 0c00 |004e: move-result-object v0 │ │ -42ccb6: 1f00 5e0a |004f: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42ccba: 6e20 e058 3000 |0051: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42ccc0: 1400 e800 087f |0054: const v0, #float 1.8078e+38 // #7f0800e8 │ │ -42ccc6: 6e20 eabc 0200 |0057: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cccc: 0c00 |005a: move-result-object v0 │ │ -42ccce: 1f00 5e0a |005b: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42ccd2: 6e20 e058 3000 |005d: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42ccd8: 1400 0201 087f |0060: const v0, #float 1.8078e+38 // #7f080102 │ │ -42ccde: 6e20 eabc 0200 |0063: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cce4: 0c00 |0066: move-result-object v0 │ │ -42cce6: 1f00 5e0a |0067: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42ccea: 6e20 e058 3000 |0069: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42ccf0: 1400 b600 087f |006c: const v0, #float 1.80779e+38 // #7f0800b6 │ │ -42ccf6: 6e20 eabc 0200 |006f: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ccfc: 0c00 |0072: move-result-object v0 │ │ -42ccfe: 1f00 8d0a |0073: check-cast v0, Landroid/widget/Switch; // type@0a8d │ │ -42cd02: df01 0301 |0075: xor-int/lit8 v1, v3, #int 1 // #01 │ │ -42cd06: 6e20 db5a 1000 |0077: invoke-virtual {v0, v1}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42cd0c: 6e20 de5a 3000 |007a: invoke-virtual {v0, v3}, Landroid/widget/Switch;.setEnabled:(Z)V // method@5ade │ │ -42cd12: 1400 7400 087f |007d: const v0, #float 1.80777e+38 // #7f080074 │ │ -42cd18: 6e20 eabc 0200 |0080: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cd1e: 0c00 |0083: move-result-object v0 │ │ -42cd20: 1f00 5e0a |0084: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cd24: df01 0301 |0086: xor-int/lit8 v1, v3, #int 1 // #01 │ │ -42cd28: 6e20 e058 1000 |0088: invoke-virtual {v0, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cd2e: 1400 ff00 087f |008b: const v0, #float 1.8078e+38 // #7f0800ff │ │ -42cd34: 6e20 eabc 0200 |008e: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cd3a: 0c00 |0091: move-result-object v0 │ │ -42cd3c: 1f00 5e0a |0092: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ -42cd40: df01 0301 |0094: xor-int/lit8 v1, v3, #int 1 // #01 │ │ -42cd44: 6e20 e058 1000 |0096: invoke-virtual {v0, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42cd4a: 1400 a900 087f |0099: const v0, #float 1.80778e+38 // #7f0800a9 │ │ -42cd50: 6e20 eabc 0200 |009c: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cd56: 0c00 |009f: move-result-object v0 │ │ -42cd58: 1f00 7d0a |00a0: check-cast v0, Landroid/widget/RadioButton; // type@0a7d │ │ -42cd5c: 6e20 645a 3000 |00a2: invoke-virtual {v0, v3}, Landroid/widget/RadioButton;.setEnabled:(Z)V // method@5a64 │ │ -42cd62: 1400 aa00 087f |00a5: const v0, #float 1.80778e+38 // #7f0800aa │ │ -42cd68: 6e20 eabc 0200 |00a8: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cd6e: 0c00 |00ab: move-result-object v0 │ │ -42cd70: 1f00 7d0a |00ac: check-cast v0, Landroid/widget/RadioButton; // type@0a7d │ │ -42cd74: 6e20 645a 3000 |00ae: invoke-virtual {v0, v3}, Landroid/widget/RadioButton;.setEnabled:(Z)V // method@5a64 │ │ -42cd7a: 1400 ae00 087f |00b1: const v0, #float 1.80779e+38 // #7f0800ae │ │ -42cd80: 6e20 eabc 0200 |00b4: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cd86: 0c00 |00b7: move-result-object v0 │ │ -42cd88: 1f00 8b0a |00b8: check-cast v0, Landroid/widget/Spinner; // type@0a8b │ │ -42cd8c: 6e20 c65a 3000 |00ba: invoke-virtual {v0, v3}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ -42cd92: 1400 d400 087f |00bd: const v0, #float 1.80779e+38 // #7f0800d4 │ │ -42cd98: 6e20 eabc 0200 |00c0: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cd9e: 0c00 |00c3: move-result-object v0 │ │ -42cda0: 1f00 8b0a |00c4: check-cast v0, Landroid/widget/Spinner; // type@0a8b │ │ -42cda4: 6e20 c65a 3000 |00c6: invoke-virtual {v0, v3}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ -42cdaa: 1400 a800 087f |00c9: const v0, #float 1.80778e+38 // #7f0800a8 │ │ -42cdb0: 6e20 eabc 0200 |00cc: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cdb6: 0c00 |00cf: move-result-object v0 │ │ -42cdb8: 1f00 970a |00d0: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42cdbc: 6e20 335b 3000 |00d2: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42cdc2: 1400 ac00 087f |00d5: const v0, #float 1.80778e+38 // #7f0800ac │ │ -42cdc8: 6e20 eabc 0200 |00d8: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cdce: 0c00 |00db: move-result-object v0 │ │ -42cdd0: 1f00 970a |00dc: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42cdd4: 6e20 335b 3000 |00de: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42cdda: 1400 ad00 087f |00e1: const v0, #float 1.80779e+38 // #7f0800ad │ │ -42cde0: 6e20 eabc 0200 |00e4: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cde6: 0c00 |00e7: move-result-object v0 │ │ -42cde8: 1f00 970a |00e8: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42cdec: 6e20 335b 3000 |00ea: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42cdf2: 1400 b700 087f |00ed: const v0, #float 1.80779e+38 // #7f0800b7 │ │ -42cdf8: 6e20 eabc 0200 |00f0: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42cdfe: 0c00 |00f3: move-result-object v0 │ │ -42ce00: 1f00 970a |00f4: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42ce04: 6e20 335b 3000 |00f6: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42ce0a: 1400 bd00 087f |00f9: const v0, #float 1.80779e+38 // #7f0800bd │ │ -42ce10: 6e20 eabc 0200 |00fc: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ce16: 0c00 |00ff: move-result-object v0 │ │ -42ce18: 1f00 970a |0100: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42ce1c: 6e20 335b 3000 |0102: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42ce22: 1400 be00 087f |0105: const v0, #float 1.80779e+38 // #7f0800be │ │ -42ce28: 6e20 eabc 0200 |0108: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ce2e: 0c00 |010b: move-result-object v0 │ │ -42ce30: 1f00 970a |010c: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42ce34: 6e20 335b 3000 |010e: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42ce3a: 1400 d200 087f |0111: const v0, #float 1.80779e+38 // #7f0800d2 │ │ -42ce40: 6e20 eabc 0200 |0114: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ce46: 0c00 |0117: move-result-object v0 │ │ -42ce48: 1f00 970a |0118: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42ce4c: 6e20 335b 3000 |011a: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42ce52: 1400 d300 087f |011d: const v0, #float 1.80779e+38 // #7f0800d3 │ │ -42ce58: 6e20 eabc 0200 |0120: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ce5e: 0c00 |0123: move-result-object v0 │ │ -42ce60: 1f00 970a |0124: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42ce64: 6e20 335b 3000 |0126: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42ce6a: 0e00 |0129: return-void │ │ +42cc04: |[42cc04] org.purple.smoke.Settings.enableWidgets:(Z)V │ │ +42cc14: 1400 1e00 087f |0000: const v0, #float 1.80776e+38 // #7f08001e │ │ +42cc1a: 6e20 eabc 0200 |0003: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cc20: 0c00 |0006: move-result-object v0 │ │ +42cc22: 1f00 5e0a |0007: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cc26: 6e20 e058 3000 |0009: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cc2c: 1400 1f00 087f |000c: const v0, #float 1.80776e+38 // #7f08001f │ │ +42cc32: 6e20 eabc 0200 |000f: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cc38: 0c00 |0012: move-result-object v0 │ │ +42cc3a: 1f00 5e0a |0013: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cc3e: 6e20 e058 3000 |0015: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cc44: 1400 6400 087f |0018: const v0, #float 1.80777e+38 // #7f080064 │ │ +42cc4a: 6e20 eabc 0200 |001b: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cc50: 0c00 |001e: move-result-object v0 │ │ +42cc52: 1f00 5e0a |001f: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cc56: 6e20 e058 3000 |0021: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cc5c: 1400 da00 087f |0024: const v0, #float 1.80779e+38 // #7f0800da │ │ +42cc62: 6e20 eabc 0200 |0027: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cc68: 0c00 |002a: move-result-object v0 │ │ +42cc6a: 1f00 5e0a |002b: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cc6e: 6e20 e058 3000 |002d: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cc74: 1400 db00 087f |0030: const v0, #float 1.80779e+38 // #7f0800db │ │ +42cc7a: 6e20 eabc 0200 |0033: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cc80: 0c00 |0036: move-result-object v0 │ │ +42cc82: 1f00 5e0a |0037: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cc86: 6e20 e058 3000 |0039: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cc8c: 1400 e000 087f |003c: const v0, #float 1.8078e+38 // #7f0800e0 │ │ +42cc92: 6e20 eabc 0200 |003f: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cc98: 0c00 |0042: move-result-object v0 │ │ +42cc9a: 1f00 5e0a |0043: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cc9e: 6e20 e058 3000 |0045: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cca4: 1400 e100 087f |0048: const v0, #float 1.8078e+38 // #7f0800e1 │ │ +42ccaa: 6e20 eabc 0200 |004b: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ccb0: 0c00 |004e: move-result-object v0 │ │ +42ccb2: 1f00 5e0a |004f: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42ccb6: 6e20 e058 3000 |0051: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42ccbc: 1400 e800 087f |0054: const v0, #float 1.8078e+38 // #7f0800e8 │ │ +42ccc2: 6e20 eabc 0200 |0057: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ccc8: 0c00 |005a: move-result-object v0 │ │ +42ccca: 1f00 5e0a |005b: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42ccce: 6e20 e058 3000 |005d: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42ccd4: 1400 0201 087f |0060: const v0, #float 1.8078e+38 // #7f080102 │ │ +42ccda: 6e20 eabc 0200 |0063: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cce0: 0c00 |0066: move-result-object v0 │ │ +42cce2: 1f00 5e0a |0067: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cce6: 6e20 e058 3000 |0069: invoke-virtual {v0, v3}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42ccec: 1400 b600 087f |006c: const v0, #float 1.80779e+38 // #7f0800b6 │ │ +42ccf2: 6e20 eabc 0200 |006f: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ccf8: 0c00 |0072: move-result-object v0 │ │ +42ccfa: 1f00 8d0a |0073: check-cast v0, Landroid/widget/Switch; // type@0a8d │ │ +42ccfe: df01 0301 |0075: xor-int/lit8 v1, v3, #int 1 // #01 │ │ +42cd02: 6e20 db5a 1000 |0077: invoke-virtual {v0, v1}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42cd08: 6e20 de5a 3000 |007a: invoke-virtual {v0, v3}, Landroid/widget/Switch;.setEnabled:(Z)V // method@5ade │ │ +42cd0e: 1400 7400 087f |007d: const v0, #float 1.80777e+38 // #7f080074 │ │ +42cd14: 6e20 eabc 0200 |0080: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cd1a: 0c00 |0083: move-result-object v0 │ │ +42cd1c: 1f00 5e0a |0084: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cd20: df01 0301 |0086: xor-int/lit8 v1, v3, #int 1 // #01 │ │ +42cd24: 6e20 e058 1000 |0088: invoke-virtual {v0, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cd2a: 1400 ff00 087f |008b: const v0, #float 1.8078e+38 // #7f0800ff │ │ +42cd30: 6e20 eabc 0200 |008e: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cd36: 0c00 |0091: move-result-object v0 │ │ +42cd38: 1f00 5e0a |0092: check-cast v0, Landroid/widget/Button; // type@0a5e │ │ +42cd3c: df01 0301 |0094: xor-int/lit8 v1, v3, #int 1 // #01 │ │ +42cd40: 6e20 e058 1000 |0096: invoke-virtual {v0, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42cd46: 1400 a900 087f |0099: const v0, #float 1.80778e+38 // #7f0800a9 │ │ +42cd4c: 6e20 eabc 0200 |009c: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cd52: 0c00 |009f: move-result-object v0 │ │ +42cd54: 1f00 7d0a |00a0: check-cast v0, Landroid/widget/RadioButton; // type@0a7d │ │ +42cd58: 6e20 645a 3000 |00a2: invoke-virtual {v0, v3}, Landroid/widget/RadioButton;.setEnabled:(Z)V // method@5a64 │ │ +42cd5e: 1400 aa00 087f |00a5: const v0, #float 1.80778e+38 // #7f0800aa │ │ +42cd64: 6e20 eabc 0200 |00a8: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cd6a: 0c00 |00ab: move-result-object v0 │ │ +42cd6c: 1f00 7d0a |00ac: check-cast v0, Landroid/widget/RadioButton; // type@0a7d │ │ +42cd70: 6e20 645a 3000 |00ae: invoke-virtual {v0, v3}, Landroid/widget/RadioButton;.setEnabled:(Z)V // method@5a64 │ │ +42cd76: 1400 ae00 087f |00b1: const v0, #float 1.80779e+38 // #7f0800ae │ │ +42cd7c: 6e20 eabc 0200 |00b4: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cd82: 0c00 |00b7: move-result-object v0 │ │ +42cd84: 1f00 8b0a |00b8: check-cast v0, Landroid/widget/Spinner; // type@0a8b │ │ +42cd88: 6e20 c65a 3000 |00ba: invoke-virtual {v0, v3}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ +42cd8e: 1400 d400 087f |00bd: const v0, #float 1.80779e+38 // #7f0800d4 │ │ +42cd94: 6e20 eabc 0200 |00c0: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cd9a: 0c00 |00c3: move-result-object v0 │ │ +42cd9c: 1f00 8b0a |00c4: check-cast v0, Landroid/widget/Spinner; // type@0a8b │ │ +42cda0: 6e20 c65a 3000 |00c6: invoke-virtual {v0, v3}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ +42cda6: 1400 a800 087f |00c9: const v0, #float 1.80778e+38 // #7f0800a8 │ │ +42cdac: 6e20 eabc 0200 |00cc: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cdb2: 0c00 |00cf: move-result-object v0 │ │ +42cdb4: 1f00 970a |00d0: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42cdb8: 6e20 335b 3000 |00d2: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42cdbe: 1400 ac00 087f |00d5: const v0, #float 1.80778e+38 // #7f0800ac │ │ +42cdc4: 6e20 eabc 0200 |00d8: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cdca: 0c00 |00db: move-result-object v0 │ │ +42cdcc: 1f00 970a |00dc: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42cdd0: 6e20 335b 3000 |00de: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42cdd6: 1400 ad00 087f |00e1: const v0, #float 1.80779e+38 // #7f0800ad │ │ +42cddc: 6e20 eabc 0200 |00e4: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cde2: 0c00 |00e7: move-result-object v0 │ │ +42cde4: 1f00 970a |00e8: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42cde8: 6e20 335b 3000 |00ea: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42cdee: 1400 b700 087f |00ed: const v0, #float 1.80779e+38 // #7f0800b7 │ │ +42cdf4: 6e20 eabc 0200 |00f0: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cdfa: 0c00 |00f3: move-result-object v0 │ │ +42cdfc: 1f00 970a |00f4: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42ce00: 6e20 335b 3000 |00f6: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42ce06: 1400 bd00 087f |00f9: const v0, #float 1.80779e+38 // #7f0800bd │ │ +42ce0c: 6e20 eabc 0200 |00fc: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ce12: 0c00 |00ff: move-result-object v0 │ │ +42ce14: 1f00 970a |0100: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42ce18: 6e20 335b 3000 |0102: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42ce1e: 1400 be00 087f |0105: const v0, #float 1.80779e+38 // #7f0800be │ │ +42ce24: 6e20 eabc 0200 |0108: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ce2a: 0c00 |010b: move-result-object v0 │ │ +42ce2c: 1f00 970a |010c: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42ce30: 6e20 335b 3000 |010e: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42ce36: 1400 d200 087f |0111: const v0, #float 1.80779e+38 // #7f0800d2 │ │ +42ce3c: 6e20 eabc 0200 |0114: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ce42: 0c00 |0117: move-result-object v0 │ │ +42ce44: 1f00 970a |0118: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42ce48: 6e20 335b 3000 |011a: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42ce4e: 1400 d300 087f |011d: const v0, #float 1.80779e+38 // #7f0800d3 │ │ +42ce54: 6e20 eabc 0200 |0120: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ce5a: 0c00 |0123: move-result-object v0 │ │ +42ce5c: 1f00 970a |0124: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42ce60: 6e20 335b 3000 |0126: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42ce66: 0e00 |0129: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=560 │ │ 0x0009 line=561 │ │ 0x000f line=562 │ │ 0x0015 line=563 │ │ 0x001b line=564 │ │ @@ -1570099,41 +1570098,41 @@ │ │ type : '(Ljava/lang/String;)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 57 16-bit code units │ │ -42ce6c: |[42ce6c] org.purple.smoke.Settings.epks:(Ljava/lang/String;)V │ │ -42ce7c: 6e10 f4bc 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ -42ce82: 0a00 |0003: move-result v0 │ │ -42ce84: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -42ce88: 0e00 |0006: return-void │ │ -42ce8a: 1400 0101 087f |0007: const v0, #float 1.8078e+38 // #7f080101 │ │ -42ce90: 6e20 eabc 0400 |000a: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ce96: 0c00 |000d: move-result-object v0 │ │ -42ce98: 1f00 7c0a |000e: check-cast v0, Landroid/widget/ProgressBar; // type@0a7c │ │ -42ce9c: 1211 |0010: const/4 v1, #int 1 // #1 │ │ -42ce9e: 6e20 5a5a 1000 |0011: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ -42cea4: 1201 |0014: const/4 v1, #int 0 // #0 │ │ -42cea6: 6e20 5f5a 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42ceac: 6e10 f2bc 0400 |0018: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ -42ceb2: 0c02 |001b: move-result-object v2 │ │ -42ceb4: 1303 1000 |001c: const/16 v3, #int 16 // #10 │ │ -42ceb8: 6e30 9057 3203 |001e: invoke-virtual {v2, v3, v3}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ -42cebe: 1402 9200 087f |0021: const v2, #float 1.80778e+38 // #7f080092 │ │ -42cec4: 6e20 eabc 2400 |0024: invoke-virtual {v4, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ceca: 0c02 |0027: move-result-object v2 │ │ -42cecc: 7120 ebbb 1200 |0028: invoke-static {v2, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ -42ced2: 2201 f40a |002b: new-instance v1, Ljava/lang/Thread; // type@0af4 │ │ -42ced6: 2202 e91a |002d: new-instance v2, Lorg/purple/smoke/Settings$2SingleShot; // type@1ae9 │ │ -42ceda: 7040 7dbc 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@bc7d │ │ -42cee0: 7020 0e5d 2100 |0032: invoke-direct {v1, v2}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ -42cee6: 6e10 195d 0100 |0035: invoke-virtual {v1}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ -42ceec: 0e00 |0038: return-void │ │ +42ce68: |[42ce68] org.purple.smoke.Settings.epks:(Ljava/lang/String;)V │ │ +42ce78: 6e10 f4bc 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ +42ce7e: 0a00 |0003: move-result v0 │ │ +42ce80: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +42ce84: 0e00 |0006: return-void │ │ +42ce86: 1400 0101 087f |0007: const v0, #float 1.8078e+38 // #7f080101 │ │ +42ce8c: 6e20 eabc 0400 |000a: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ce92: 0c00 |000d: move-result-object v0 │ │ +42ce94: 1f00 7c0a |000e: check-cast v0, Landroid/widget/ProgressBar; // type@0a7c │ │ +42ce98: 1211 |0010: const/4 v1, #int 1 // #1 │ │ +42ce9a: 6e20 5a5a 1000 |0011: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ +42cea0: 1201 |0014: const/4 v1, #int 0 // #0 │ │ +42cea2: 6e20 5f5a 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42cea8: 6e10 f2bc 0400 |0018: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ +42ceae: 0c02 |001b: move-result-object v2 │ │ +42ceb0: 1303 1000 |001c: const/16 v3, #int 16 // #10 │ │ +42ceb4: 6e30 9057 3203 |001e: invoke-virtual {v2, v3, v3}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ +42ceba: 1402 9200 087f |0021: const v2, #float 1.80778e+38 // #7f080092 │ │ +42cec0: 6e20 eabc 2400 |0024: invoke-virtual {v4, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42cec6: 0c02 |0027: move-result-object v2 │ │ +42cec8: 7120 ebbb 1200 |0028: invoke-static {v2, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ +42cece: 2201 f40a |002b: new-instance v1, Ljava/lang/Thread; // type@0af4 │ │ +42ced2: 2202 e91a |002d: new-instance v2, Lorg/purple/smoke/Settings$2SingleShot; // type@1ae9 │ │ +42ced6: 7040 7dbc 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@bc7d │ │ +42cedc: 7020 0e5d 2100 |0032: invoke-direct {v1, v2}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ +42cee2: 6e10 195d 0100 |0035: invoke-virtual {v1}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ +42cee8: 0e00 |0038: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=625 │ │ 0x000a line=629 │ │ 0x0011 line=631 │ │ 0x0015 line=632 │ │ 0x0018 line=633 │ │ @@ -1570149,102 +1570148,102 @@ │ │ type : '(Ljava/lang/String;)Z' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 11 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 162 16-bit code units │ │ -42be4c: |[42be4c] org.purple.smoke.Settings.generateOzone:(Ljava/lang/String;)Z │ │ -42be5c: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -42be5e: 6e10 d35c 0a00 |0001: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42be64: 0c01 |0004: move-result-object v1 │ │ -42be66: 6e10 c35c 0100 |0005: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42be6c: 0a01 |0008: move-result v1 │ │ -42be6e: 1202 |0009: const/4 v2, #int 0 // #0 │ │ -42be70: 1213 |000a: const/4 v3, #int 1 // #1 │ │ -42be72: 3901 3e00 |000b: if-nez v1, 0049 // +003e │ │ -42be76: 2331 0f1c |000d: new-array v1, v3, [[B // type@1c0f │ │ -42be7a: 6e10 d35c 0a00 |000f: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42be80: 0c04 |0012: move-result-object v4 │ │ -42be82: 6205 e42c |0013: sget-object v5, Ljava/nio/charset/StandardCharsets;.UTF_8:Ljava/nio/charset/Charset; // field@2ce4 │ │ -42be86: 6e20 be5c 5400 |0015: invoke-virtual {v4, v5}, Ljava/lang/String;.getBytes:(Ljava/nio/charset/Charset;)[B // method@5cbe │ │ -42be8c: 0c04 |0018: move-result-object v4 │ │ -42be8e: 4d04 0100 |0019: aput-object v4, v1, v0 │ │ -42be92: 7110 bcb9 0100 |001b: invoke-static {v1}, Lorg/purple/smoke/Cryptography;.sha512:([[B)[B // method@b9bc │ │ -42be98: 0c01 |001e: move-result-object v1 │ │ -42be9a: 3801 1400 |001f: if-eqz v1, 0033 // +0014 │ │ -42be9e: 6e10 d35c 0a00 |0021: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42bea4: 0c04 |0024: move-result-object v4 │ │ -42bea6: 6e10 ce5c 0400 |0025: invoke-virtual {v4}, Ljava/lang/String;.toCharArray:()[C // method@5cce │ │ -42beac: 0c04 |0028: move-result-object v4 │ │ -42beae: 1305 0010 |0029: const/16 v5, #int 4096 // #1000 │ │ -42beb2: 1306 a000 |002b: const/16 v6, #int 160 // #a0 │ │ -42beb6: 7140 a0b9 4165 |002d: invoke-static {v1, v4, v5, v6}, Lorg/purple/smoke/Cryptography;.pbkdf2:([B[CII)[B // method@b9a0 │ │ -42bebc: 0c04 |0030: move-result-object v4 │ │ -42bebe: 1215 |0031: const/4 v5, #int 1 // #1 │ │ -42bec0: 2803 |0032: goto 0035 // +0003 │ │ -42bec2: 0724 |0033: move-object v4, v2 │ │ -42bec4: 1205 |0034: const/4 v5, #int 0 // #0 │ │ -42bec6: 3804 1200 |0035: if-eqz v4, 0047 // +0012 │ │ -42beca: 1226 |0037: const/4 v6, #int 2 // #2 │ │ -42becc: 7120 c454 6400 |0038: invoke-static {v4, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42bed2: 0c04 |003b: move-result-object v4 │ │ -42bed4: 6e10 ce5c 0400 |003c: invoke-virtual {v4}, Ljava/lang/String;.toCharArray:()[C // method@5cce │ │ -42beda: 0c04 |003f: move-result-object v4 │ │ -42bedc: 1306 0003 |0040: const/16 v6, #int 768 // #300 │ │ -42bee0: 7140 a0b9 4163 |0042: invoke-static {v1, v4, v3, v6}, Lorg/purple/smoke/Cryptography;.pbkdf2:([B[CII)[B // method@b9a0 │ │ -42bee6: 0c04 |0045: move-result-object v4 │ │ -42bee8: 2805 |0046: goto 004b // +0005 │ │ -42beea: 1205 |0047: const/4 v5, #int 0 // #0 │ │ -42beec: 2803 |0048: goto 004b // +0003 │ │ -42beee: 0724 |0049: move-object v4, v2 │ │ -42bef0: 1215 |004a: const/4 v5, #int 1 // #1 │ │ -42bef2: 3904 0c00 |004b: if-nez v4, 0057 // +000c │ │ -42bef6: 6e10 d35c 0a00 |004d: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42befc: 0c01 |0050: move-result-object v1 │ │ -42befe: 6e10 c35c 0100 |0051: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42bf04: 0a01 |0054: move-result v1 │ │ -42bf06: 3801 4b00 |0055: if-eqz v1, 00a0 // +004b │ │ -42bf0a: 5491 065f |0057: iget-object v1, v9, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42bf0e: 6206 0a5f |0059: sget-object v6, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42bf12: 1a07 5892 |005b: const-string v7, "ozone_address" // string@9258 │ │ -42bf16: 6e10 d35c 0a00 |005d: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42bf1c: 0c08 |0060: move-result-object v8 │ │ -42bf1e: 6e40 3eba 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@ba3e │ │ -42bf24: 6e10 d35c 0a00 |0064: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -42bf2a: 0c0a |0067: move-result-object v10 │ │ -42bf2c: 6e10 c35c 0a00 |0068: invoke-virtual {v10}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42bf32: 0a0a |006b: move-result v10 │ │ -42bf34: 1a01 5992 |006c: const-string v1, "ozone_address_stream" // string@9259 │ │ -42bf38: 380a 1100 |006e: if-eqz v10, 007f // +0011 │ │ -42bf3c: 549a 065f |0070: iget-object v10, v9, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42bf40: 1a04 0000 |0072: const-string v4, "" // string@0000 │ │ -42bf44: 6e40 3eba 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@ba3e │ │ -42bf4a: 6e20 b7b9 2600 |0077: invoke-virtual {v6, v2}, Lorg/purple/smoke/Cryptography;.setOzoneEncryptionKey:([B)V // method@b9b7 │ │ -42bf50: 6e20 b8b9 2600 |007a: invoke-virtual {v6, v2}, Lorg/purple/smoke/Cryptography;.setOzoneMacKey:([B)V // method@b9b8 │ │ -42bf56: 1210 |007d: const/4 v0, #int 1 // #1 │ │ -42bf58: 2823 |007e: goto 00a1 // +0023 │ │ -42bf5a: 3804 2100 |007f: if-eqz v4, 00a0 // +0021 │ │ -42bf5e: 214a |0081: array-length v10, v4 │ │ -42bf60: 1302 6000 |0082: const/16 v2, #int 96 // #60 │ │ -42bf64: 332a 1c00 |0084: if-ne v10, v2, 00a0 // +001c │ │ -42bf68: 549a 065f |0086: iget-object v10, v9, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42bf6c: 7120 c454 0400 |0088: invoke-static {v4, v0}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ -42bf72: 0c02 |008b: move-result-object v2 │ │ -42bf74: 6e40 3eba 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@ba3e │ │ -42bf7a: 130a 2000 |008f: const/16 v10, #int 32 // #20 │ │ -42bf7e: 7130 b85f 040a |0091: invoke-static {v4, v0, v10}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb8 │ │ -42bf84: 0c01 |0094: move-result-object v1 │ │ -42bf86: 6e20 b7b9 1600 |0095: invoke-virtual {v6, v1}, Lorg/purple/smoke/Cryptography;.setOzoneEncryptionKey:([B)V // method@b9b7 │ │ -42bf8c: 2141 |0098: array-length v1, v4 │ │ -42bf8e: 7130 b85f a401 |0099: invoke-static {v4, v10, v1}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb8 │ │ -42bf94: 0c0a |009c: move-result-object v10 │ │ -42bf96: 6e20 b8b9 a600 |009d: invoke-virtual {v6, v10}, Lorg/purple/smoke/Cryptography;.setOzoneMacKey:([B)V // method@b9b8 │ │ -42bf9c: 0150 |00a0: move v0, v5 │ │ -42bf9e: 0f00 |00a1: return v0 │ │ +42be48: |[42be48] org.purple.smoke.Settings.generateOzone:(Ljava/lang/String;)Z │ │ +42be58: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +42be5a: 6e10 d35c 0a00 |0001: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42be60: 0c01 |0004: move-result-object v1 │ │ +42be62: 6e10 c35c 0100 |0005: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42be68: 0a01 |0008: move-result v1 │ │ +42be6a: 1202 |0009: const/4 v2, #int 0 // #0 │ │ +42be6c: 1213 |000a: const/4 v3, #int 1 // #1 │ │ +42be6e: 3901 3e00 |000b: if-nez v1, 0049 // +003e │ │ +42be72: 2331 0f1c |000d: new-array v1, v3, [[B // type@1c0f │ │ +42be76: 6e10 d35c 0a00 |000f: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42be7c: 0c04 |0012: move-result-object v4 │ │ +42be7e: 6205 e42c |0013: sget-object v5, Ljava/nio/charset/StandardCharsets;.UTF_8:Ljava/nio/charset/Charset; // field@2ce4 │ │ +42be82: 6e20 be5c 5400 |0015: invoke-virtual {v4, v5}, Ljava/lang/String;.getBytes:(Ljava/nio/charset/Charset;)[B // method@5cbe │ │ +42be88: 0c04 |0018: move-result-object v4 │ │ +42be8a: 4d04 0100 |0019: aput-object v4, v1, v0 │ │ +42be8e: 7110 bcb9 0100 |001b: invoke-static {v1}, Lorg/purple/smoke/Cryptography;.sha512:([[B)[B // method@b9bc │ │ +42be94: 0c01 |001e: move-result-object v1 │ │ +42be96: 3801 1400 |001f: if-eqz v1, 0033 // +0014 │ │ +42be9a: 6e10 d35c 0a00 |0021: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42bea0: 0c04 |0024: move-result-object v4 │ │ +42bea2: 6e10 ce5c 0400 |0025: invoke-virtual {v4}, Ljava/lang/String;.toCharArray:()[C // method@5cce │ │ +42bea8: 0c04 |0028: move-result-object v4 │ │ +42beaa: 1305 0010 |0029: const/16 v5, #int 4096 // #1000 │ │ +42beae: 1306 a000 |002b: const/16 v6, #int 160 // #a0 │ │ +42beb2: 7140 a0b9 4165 |002d: invoke-static {v1, v4, v5, v6}, Lorg/purple/smoke/Cryptography;.pbkdf2:([B[CII)[B // method@b9a0 │ │ +42beb8: 0c04 |0030: move-result-object v4 │ │ +42beba: 1215 |0031: const/4 v5, #int 1 // #1 │ │ +42bebc: 2803 |0032: goto 0035 // +0003 │ │ +42bebe: 0724 |0033: move-object v4, v2 │ │ +42bec0: 1205 |0034: const/4 v5, #int 0 // #0 │ │ +42bec2: 3804 1200 |0035: if-eqz v4, 0047 // +0012 │ │ +42bec6: 1226 |0037: const/4 v6, #int 2 // #2 │ │ +42bec8: 7120 c454 6400 |0038: invoke-static {v4, v6}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42bece: 0c04 |003b: move-result-object v4 │ │ +42bed0: 6e10 ce5c 0400 |003c: invoke-virtual {v4}, Ljava/lang/String;.toCharArray:()[C // method@5cce │ │ +42bed6: 0c04 |003f: move-result-object v4 │ │ +42bed8: 1306 0003 |0040: const/16 v6, #int 768 // #300 │ │ +42bedc: 7140 a0b9 4163 |0042: invoke-static {v1, v4, v3, v6}, Lorg/purple/smoke/Cryptography;.pbkdf2:([B[CII)[B // method@b9a0 │ │ +42bee2: 0c04 |0045: move-result-object v4 │ │ +42bee4: 2805 |0046: goto 004b // +0005 │ │ +42bee6: 1205 |0047: const/4 v5, #int 0 // #0 │ │ +42bee8: 2803 |0048: goto 004b // +0003 │ │ +42beea: 0724 |0049: move-object v4, v2 │ │ +42beec: 1215 |004a: const/4 v5, #int 1 // #1 │ │ +42beee: 3904 0c00 |004b: if-nez v4, 0057 // +000c │ │ +42bef2: 6e10 d35c 0a00 |004d: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42bef8: 0c01 |0050: move-result-object v1 │ │ +42befa: 6e10 c35c 0100 |0051: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42bf00: 0a01 |0054: move-result v1 │ │ +42bf02: 3801 4b00 |0055: if-eqz v1, 00a0 // +004b │ │ +42bf06: 5491 065f |0057: iget-object v1, v9, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42bf0a: 6206 0a5f |0059: sget-object v6, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42bf0e: 1a07 5892 |005b: const-string v7, "ozone_address" // string@9258 │ │ +42bf12: 6e10 d35c 0a00 |005d: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42bf18: 0c08 |0060: move-result-object v8 │ │ +42bf1a: 6e40 3eba 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@ba3e │ │ +42bf20: 6e10 d35c 0a00 |0064: invoke-virtual {v10}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +42bf26: 0c0a |0067: move-result-object v10 │ │ +42bf28: 6e10 c35c 0a00 |0068: invoke-virtual {v10}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42bf2e: 0a0a |006b: move-result v10 │ │ +42bf30: 1a01 5992 |006c: const-string v1, "ozone_address_stream" // string@9259 │ │ +42bf34: 380a 1100 |006e: if-eqz v10, 007f // +0011 │ │ +42bf38: 549a 065f |0070: iget-object v10, v9, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42bf3c: 1a04 0000 |0072: const-string v4, "" // string@0000 │ │ +42bf40: 6e40 3eba 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@ba3e │ │ +42bf46: 6e20 b7b9 2600 |0077: invoke-virtual {v6, v2}, Lorg/purple/smoke/Cryptography;.setOzoneEncryptionKey:([B)V // method@b9b7 │ │ +42bf4c: 6e20 b8b9 2600 |007a: invoke-virtual {v6, v2}, Lorg/purple/smoke/Cryptography;.setOzoneMacKey:([B)V // method@b9b8 │ │ +42bf52: 1210 |007d: const/4 v0, #int 1 // #1 │ │ +42bf54: 2823 |007e: goto 00a1 // +0023 │ │ +42bf56: 3804 2100 |007f: if-eqz v4, 00a0 // +0021 │ │ +42bf5a: 214a |0081: array-length v10, v4 │ │ +42bf5c: 1302 6000 |0082: const/16 v2, #int 96 // #60 │ │ +42bf60: 332a 1c00 |0084: if-ne v10, v2, 00a0 // +001c │ │ +42bf64: 549a 065f |0086: iget-object v10, v9, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42bf68: 7120 c454 0400 |0088: invoke-static {v4, v0}, Landroid/util/Base64;.encodeToString:([BI)Ljava/lang/String; // method@54c4 │ │ +42bf6e: 0c02 |008b: move-result-object v2 │ │ +42bf70: 6e40 3eba 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@ba3e │ │ +42bf76: 130a 2000 |008f: const/16 v10, #int 32 // #20 │ │ +42bf7a: 7130 b85f 040a |0091: invoke-static {v4, v0, v10}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb8 │ │ +42bf80: 0c01 |0094: move-result-object v1 │ │ +42bf82: 6e20 b7b9 1600 |0095: invoke-virtual {v6, v1}, Lorg/purple/smoke/Cryptography;.setOzoneEncryptionKey:([B)V // method@b9b7 │ │ +42bf88: 2141 |0098: array-length v1, v4 │ │ +42bf8a: 7130 b85f a401 |0099: invoke-static {v4, v10, v1}, Ljava/util/Arrays;.copyOfRange:([BII)[B // method@5fb8 │ │ +42bf90: 0c0a |009c: move-result-object v10 │ │ +42bf92: 6e20 b8b9 a600 |009d: invoke-virtual {v6, v10}, Lorg/purple/smoke/Cryptography;.setOzoneMacKey:([B)V // method@b9b8 │ │ +42bf98: 0150 |00a0: move v0, v5 │ │ +42bf9a: 0f00 |00a1: return v0 │ │ catches : 2 │ │ 0x0001 - 0x006c │ │ Ljava/lang/Exception; -> 0x00a1 │ │ 0x0070 - 0x00a0 │ │ Ljava/lang/Exception; -> 0x00a1 │ │ positions : │ │ 0x0001 line=233 │ │ @@ -1570277,21 +1570276,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 12 16-bit code units │ │ -42cef0: |[42cef0] org.purple.smoke.Settings.networkStatusChanged:()V │ │ -42cf00: 6e10 f1bc 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bcf1 │ │ -42cf06: 0c00 |0003: move-result-object v0 │ │ -42cf08: 7100 2ebd 0000 |0004: invoke-static {}, Lorg/purple/smoke/Smoke;.networkStatusString:()Ljava/lang/String; // method@bd2e │ │ -42cf0e: 0c01 |0007: move-result-object v1 │ │ -42cf10: 6e20 0a3c 1000 |0008: invoke-virtual {v0, v1}, Landroid/support/v7/app/ActionBar;.setSubtitle:(Ljava/lang/CharSequence;)V // method@3c0a │ │ -42cf16: 0e00 |000b: return-void │ │ +42ceec: |[42ceec] org.purple.smoke.Settings.networkStatusChanged:()V │ │ +42cefc: 6e10 f1bc 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bcf1 │ │ +42cf02: 0c00 |0003: move-result-object v0 │ │ +42cf04: 7100 2ebd 0000 |0004: invoke-static {}, Lorg/purple/smoke/Smoke;.networkStatusString:()Ljava/lang/String; // method@bd2e │ │ +42cf0a: 0c01 |0007: move-result-object v1 │ │ +42cf0c: 6e20 0a3c 1000 |0008: invoke-virtual {v0, v1}, Landroid/support/v7/app/ActionBar;.setSubtitle:(Ljava/lang/CharSequence;)V // method@3c0a │ │ +42cf12: 0e00 |000b: return-void │ │ catches : 1 │ │ 0x0000 - 0x000b │ │ Ljava/lang/Exception; -> 0x000b │ │ positions : │ │ 0x0000 line=737 │ │ locals : │ │ 0x0000 - 0x000c reg=2 this Lorg/purple/smoke/Settings; │ │ @@ -1570301,101 +1570300,101 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 8 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 180 16-bit code units │ │ -42df48: |[42df48] org.purple.smoke.Settings.populateFancyKeyData:()V │ │ -42df58: 1400 3800 087f |0000: const v0, #float 1.80776e+38 // #7f080038 │ │ -42df5e: 6e20 eabc 0700 |0003: invoke-virtual {v7, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42df64: 0c00 |0006: move-result-object v0 │ │ -42df66: 1f00 970a |0007: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42df6a: 6201 0a5f |0009: sget-object v1, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42df6e: 6e10 70b9 0100 |000b: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatEncryptionKeyPair:()Ljava/security/KeyPair; // method@b970 │ │ -42df74: 0c02 |000e: move-result-object v2 │ │ -42df76: 1303 0800 |000f: const/16 v3, #int 8 // #8 │ │ -42df7a: 1204 |0011: const/4 v4, #int 0 // #0 │ │ -42df7c: 3802 2d00 |0012: if-eqz v2, 003f // +002d │ │ -42df80: 6e10 70b9 0100 |0014: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatEncryptionKeyPair:()Ljava/security/KeyPair; // method@b970 │ │ -42df86: 0c02 |0017: move-result-object v2 │ │ -42df88: 6e10 fe5d 0200 |0018: invoke-virtual {v2}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfe │ │ -42df8e: 0c02 |001b: move-result-object v2 │ │ -42df90: 3902 0300 |001c: if-nez v2, 001f // +0003 │ │ -42df94: 2821 |001e: goto 003f // +0021 │ │ -42df96: 2202 f10a |001f: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -42df9a: 7010 ee5c 0200 |0021: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42dfa0: 1a05 4019 |0024: const-string v5, "Encryption Key │ │ +42df44: |[42df44] org.purple.smoke.Settings.populateFancyKeyData:()V │ │ +42df54: 1400 3800 087f |0000: const v0, #float 1.80776e+38 // #7f080038 │ │ +42df5a: 6e20 eabc 0700 |0003: invoke-virtual {v7, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42df60: 0c00 |0006: move-result-object v0 │ │ +42df62: 1f00 970a |0007: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42df66: 6201 0a5f |0009: sget-object v1, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42df6a: 6e10 70b9 0100 |000b: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatEncryptionKeyPair:()Ljava/security/KeyPair; // method@b970 │ │ +42df70: 0c02 |000e: move-result-object v2 │ │ +42df72: 1303 0800 |000f: const/16 v3, #int 8 // #8 │ │ +42df76: 1204 |0011: const/4 v4, #int 0 // #0 │ │ +42df78: 3802 2d00 |0012: if-eqz v2, 003f // +002d │ │ +42df7c: 6e10 70b9 0100 |0014: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatEncryptionKeyPair:()Ljava/security/KeyPair; // method@b970 │ │ +42df82: 0c02 |0017: move-result-object v2 │ │ +42df84: 6e10 fe5d 0200 |0018: invoke-virtual {v2}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfe │ │ +42df8a: 0c02 |001b: move-result-object v2 │ │ +42df8c: 3902 0300 |001c: if-nez v2, 001f // +0003 │ │ +42df90: 2821 |001e: goto 003f // +0021 │ │ +42df92: 2202 f10a |001f: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +42df96: 7010 ee5c 0200 |0021: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42df9c: 1a05 4019 |0024: const-string v5, "Encryption Key │ │ " // string@1940 │ │ -42dfa4: 6e20 f95c 5200 |0026: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dfaa: 6e10 70b9 0100 |0029: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatEncryptionKeyPair:()Ljava/security/KeyPair; // method@b970 │ │ -42dfb0: 0c05 |002c: move-result-object v5 │ │ -42dfb2: 6e10 72b9 0100 |002d: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatEncryptionPublicKeyAlgorithm:()Ljava/lang/String; // method@b972 │ │ -42dfb8: 0c06 |0030: move-result-object v6 │ │ -42dfba: 7120 88b9 6500 |0031: invoke-static {v5, v6}, Lorg/purple/smoke/Cryptography;.fancyKeyInformationOutput:(Ljava/security/KeyPair;Ljava/lang/String;)Ljava/lang/String; // method@b988 │ │ -42dfc0: 0c05 |0034: move-result-object v5 │ │ -42dfc2: 6e20 f95c 5200 |0035: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dfc8: 6e20 495b 2000 |0038: invoke-virtual {v0, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42dfce: 6e20 535b 4000 |003b: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -42dfd4: 2805 |003e: goto 0043 // +0005 │ │ -42dfd6: 6e20 535b 3000 |003f: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -42dfdc: 1202 |0042: const/4 v2, #int 0 // #0 │ │ -42dfde: 1400 3c00 087f |0043: const v0, #float 1.80776e+38 // #7f08003c │ │ -42dfe4: 6e20 eabc 0700 |0046: invoke-virtual {v7, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42dfea: 0c00 |0049: move-result-object v0 │ │ -42dfec: 1f00 970a |004a: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42dff0: 6e10 75b9 0100 |004c: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatSignatureKeyPair:()Ljava/security/KeyPair; // method@b975 │ │ -42dff6: 0c05 |004f: move-result-object v5 │ │ -42dff8: 3805 3500 |0050: if-eqz v5, 0085 // +0035 │ │ -42dffc: 6e10 75b9 0100 |0052: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatSignatureKeyPair:()Ljava/security/KeyPair; // method@b975 │ │ -42e002: 0c05 |0055: move-result-object v5 │ │ -42e004: 6e10 fe5d 0500 |0056: invoke-virtual {v5}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfe │ │ -42e00a: 0c05 |0059: move-result-object v5 │ │ -42e00c: 3905 0300 |005a: if-nez v5, 005d // +0003 │ │ -42e010: 2829 |005c: goto 0085 // +0029 │ │ -42e012: 3902 0800 |005d: if-nez v2, 0065 // +0008 │ │ -42e016: 2202 f10a |005f: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -42e01a: 7010 ee5c 0200 |0061: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42e020: 2808 |0064: goto 006c // +0008 │ │ -42e022: 6e10 ff5c 0200 |0065: invoke-virtual {v2}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ -42e028: 0a05 |0068: move-result v5 │ │ -42e02a: 6e30 fd5c 4205 |0069: invoke-virtual {v2, v4, v5}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ -42e030: 1a05 824b |006c: const-string v5, "Signature Key │ │ +42dfa0: 6e20 f95c 5200 |0026: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42dfa6: 6e10 70b9 0100 |0029: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatEncryptionKeyPair:()Ljava/security/KeyPair; // method@b970 │ │ +42dfac: 0c05 |002c: move-result-object v5 │ │ +42dfae: 6e10 72b9 0100 |002d: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatEncryptionPublicKeyAlgorithm:()Ljava/lang/String; // method@b972 │ │ +42dfb4: 0c06 |0030: move-result-object v6 │ │ +42dfb6: 7120 88b9 6500 |0031: invoke-static {v5, v6}, Lorg/purple/smoke/Cryptography;.fancyKeyInformationOutput:(Ljava/security/KeyPair;Ljava/lang/String;)Ljava/lang/String; // method@b988 │ │ +42dfbc: 0c05 |0034: move-result-object v5 │ │ +42dfbe: 6e20 f95c 5200 |0035: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42dfc4: 6e20 495b 2000 |0038: invoke-virtual {v0, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42dfca: 6e20 535b 4000 |003b: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +42dfd0: 2805 |003e: goto 0043 // +0005 │ │ +42dfd2: 6e20 535b 3000 |003f: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +42dfd8: 1202 |0042: const/4 v2, #int 0 // #0 │ │ +42dfda: 1400 3c00 087f |0043: const v0, #float 1.80776e+38 // #7f08003c │ │ +42dfe0: 6e20 eabc 0700 |0046: invoke-virtual {v7, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42dfe6: 0c00 |0049: move-result-object v0 │ │ +42dfe8: 1f00 970a |004a: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42dfec: 6e10 75b9 0100 |004c: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatSignatureKeyPair:()Ljava/security/KeyPair; // method@b975 │ │ +42dff2: 0c05 |004f: move-result-object v5 │ │ +42dff4: 3805 3500 |0050: if-eqz v5, 0085 // +0035 │ │ +42dff8: 6e10 75b9 0100 |0052: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatSignatureKeyPair:()Ljava/security/KeyPair; // method@b975 │ │ +42dffe: 0c05 |0055: move-result-object v5 │ │ +42e000: 6e10 fe5d 0500 |0056: invoke-virtual {v5}, Ljava/security/KeyPair;.getPublic:()Ljava/security/PublicKey; // method@5dfe │ │ +42e006: 0c05 |0059: move-result-object v5 │ │ +42e008: 3905 0300 |005a: if-nez v5, 005d // +0003 │ │ +42e00c: 2829 |005c: goto 0085 // +0029 │ │ +42e00e: 3902 0800 |005d: if-nez v2, 0065 // +0008 │ │ +42e012: 2202 f10a |005f: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +42e016: 7010 ee5c 0200 |0061: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42e01c: 2808 |0064: goto 006c // +0008 │ │ +42e01e: 6e10 ff5c 0200 |0065: invoke-virtual {v2}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ +42e024: 0a05 |0068: move-result v5 │ │ +42e026: 6e30 fd5c 4205 |0069: invoke-virtual {v2, v4, v5}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ +42e02c: 1a05 824b |006c: const-string v5, "Signature Key │ │ " // string@4b82 │ │ -42e034: 6e20 f95c 5200 |006e: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e03a: 6e10 75b9 0100 |0071: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatSignatureKeyPair:()Ljava/security/KeyPair; // method@b975 │ │ -42e040: 0c05 |0074: move-result-object v5 │ │ -42e042: 1a06 0000 |0075: const-string v6, "" // string@0000 │ │ -42e046: 7120 88b9 6500 |0077: invoke-static {v5, v6}, Lorg/purple/smoke/Cryptography;.fancyKeyInformationOutput:(Ljava/security/KeyPair;Ljava/lang/String;)Ljava/lang/String; // method@b988 │ │ -42e04c: 0c05 |007a: move-result-object v5 │ │ -42e04e: 6e20 f95c 5200 |007b: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e054: 6e20 495b 2000 |007e: invoke-virtual {v0, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42e05a: 6e20 535b 4000 |0081: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -42e060: 2804 |0084: goto 0088 // +0004 │ │ -42e062: 6e20 535b 3000 |0085: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -42e068: 1400 0b01 087f |0088: const v0, #float 1.8078e+38 // #7f08010b │ │ -42e06e: 6e20 eabc 0700 |008b: invoke-virtual {v7, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42e074: 0c00 |008e: move-result-object v0 │ │ -42e076: 1f00 970a |008f: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42e07a: 3902 0600 |0091: if-nez v2, 0097 // +0006 │ │ -42e07e: 6e20 535b 3000 |0093: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -42e084: 281d |0096: goto 00b3 // +001d │ │ -42e086: 6e10 ff5c 0200 |0097: invoke-virtual {v2}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ -42e08c: 0a03 |009a: move-result v3 │ │ -42e08e: 6e30 fd5c 4203 |009b: invoke-virtual {v2, v4, v3}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ -42e094: 6e10 c1b9 0100 |009e: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.sipHashId:()Ljava/lang/String; // method@b9c1 │ │ -42e09a: 0c01 |00a1: move-result-object v1 │ │ -42e09c: 7110 f5bb 0100 |00a2: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf5 │ │ -42e0a2: 0c01 |00a5: move-result-object v1 │ │ -42e0a4: 6e20 f95c 1200 |00a6: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e0aa: 6e20 495b 2000 |00a9: invoke-virtual {v0, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42e0b0: 1211 |00ac: const/4 v1, #int 1 // #1 │ │ -42e0b2: 6e20 4e5b 1000 |00ad: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setTextIsSelectable:(Z)V // method@5b4e │ │ -42e0b8: 6e20 535b 4000 |00b0: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -42e0be: 0e00 |00b3: return-void │ │ +42e030: 6e20 f95c 5200 |006e: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e036: 6e10 75b9 0100 |0071: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.chatSignatureKeyPair:()Ljava/security/KeyPair; // method@b975 │ │ +42e03c: 0c05 |0074: move-result-object v5 │ │ +42e03e: 1a06 0000 |0075: const-string v6, "" // string@0000 │ │ +42e042: 7120 88b9 6500 |0077: invoke-static {v5, v6}, Lorg/purple/smoke/Cryptography;.fancyKeyInformationOutput:(Ljava/security/KeyPair;Ljava/lang/String;)Ljava/lang/String; // method@b988 │ │ +42e048: 0c05 |007a: move-result-object v5 │ │ +42e04a: 6e20 f95c 5200 |007b: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e050: 6e20 495b 2000 |007e: invoke-virtual {v0, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42e056: 6e20 535b 4000 |0081: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +42e05c: 2804 |0084: goto 0088 // +0004 │ │ +42e05e: 6e20 535b 3000 |0085: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +42e064: 1400 0b01 087f |0088: const v0, #float 1.8078e+38 // #7f08010b │ │ +42e06a: 6e20 eabc 0700 |008b: invoke-virtual {v7, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42e070: 0c00 |008e: move-result-object v0 │ │ +42e072: 1f00 970a |008f: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42e076: 3902 0600 |0091: if-nez v2, 0097 // +0006 │ │ +42e07a: 6e20 535b 3000 |0093: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +42e080: 281d |0096: goto 00b3 // +001d │ │ +42e082: 6e10 ff5c 0200 |0097: invoke-virtual {v2}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ +42e088: 0a03 |009a: move-result v3 │ │ +42e08a: 6e30 fd5c 4203 |009b: invoke-virtual {v2, v4, v3}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ +42e090: 6e10 c1b9 0100 |009e: invoke-virtual {v1}, Lorg/purple/smoke/Cryptography;.sipHashId:()Ljava/lang/String; // method@b9c1 │ │ +42e096: 0c01 |00a1: move-result-object v1 │ │ +42e098: 7110 f5bb 0100 |00a2: invoke-static {v1}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf5 │ │ +42e09e: 0c01 |00a5: move-result-object v1 │ │ +42e0a0: 6e20 f95c 1200 |00a6: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e0a6: 6e20 495b 2000 |00a9: invoke-virtual {v0, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42e0ac: 1211 |00ac: const/4 v1, #int 1 // #1 │ │ +42e0ae: 6e20 4e5b 1000 |00ad: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setTextIsSelectable:(Z)V // method@5b4e │ │ +42e0b4: 6e20 535b 4000 |00b0: invoke-virtual {v0, v4}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +42e0ba: 0e00 |00b3: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=749 │ │ 0x0009 line=751 │ │ 0x0014 line=752 │ │ 0x001f line=756 │ │ 0x0026 line=757 │ │ @@ -1570433,493 +1570432,493 @@ │ │ type : '(Ljava/util/ArrayList;)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 27 │ │ ins : 2 │ │ outs : 6 │ │ insns size : 1015 16-bit code units │ │ -42e0c0: |[42e0c0] org.purple.smoke.Settings.populateNeighbors:(Ljava/util/ArrayList;)V │ │ -42e0d0: 0800 1900 |0000: move-object/from16 v0, v25 │ │ -42e0d4: 391a 0b00 |0002: if-nez v26, 000d // +000b │ │ -42e0d8: 5401 065f |0004: iget-object v1, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42e0dc: 6202 0a5f |0006: sget-object v2, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42e0e0: 6e20 16ba 2100 |0008: invoke-virtual {v1, v2}, Lorg/purple/smoke/Database;.readNeighbors:(Lorg/purple/smoke/Cryptography;)Ljava/util/ArrayList; // method@ba16 │ │ -42e0e6: 0c01 |000b: move-result-object v1 │ │ -42e0e8: 2803 |000c: goto 000f // +0003 │ │ -42e0ea: 0801 1a00 |000d: move-object/from16 v1, v26 │ │ -42e0ee: 1402 a700 087f |000f: const v2, #float 1.80778e+38 // #7f0800a7 │ │ -42e0f4: 6e20 eabc 2000 |0012: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42e0fa: 0c02 |0015: move-result-object v2 │ │ -42e0fc: 1f02 930a |0016: check-cast v2, Landroid/widget/TableLayout; // type@0a93 │ │ -42e100: 3801 db03 |0018: if-eqz v1, 03f3 // +03db │ │ -42e104: 6e10 a85f 0100 |001a: invoke-virtual {v1}, Ljava/util/ArrayList;.isEmpty:()Z // method@5fa8 │ │ -42e10a: 0a03 |001d: move-result v3 │ │ -42e10c: 3803 0400 |001e: if-eqz v3, 0022 // +0004 │ │ -42e110: 2900 d303 |0020: goto/16 03f3 // +03d3 │ │ -42e114: 2203 f10a |0022: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ -42e118: 7010 ee5c 0300 |0024: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42e11e: 6e10 f55a 0200 |0027: invoke-virtual {v2}, Landroid/widget/TableLayout;.getChildCount:()I // method@5af5 │ │ -42e124: 0a04 |002a: move-result v4 │ │ -42e126: 1215 |002b: const/4 v5, #int 1 // #1 │ │ -42e128: b154 |002c: sub-int/2addr v4, v5 │ │ -42e12a: 1a06 8604 |002d: const-string v6, "-" // string@0486 │ │ -42e12e: 1a07 a91d |002f: const-string v7, "IPv6" // string@1da9 │ │ -42e132: 1a08 7c08 |0031: const-string v8, ":" // string@087c │ │ -42e136: 1209 |0033: const/4 v9, #int 0 // #0 │ │ -42e138: 3a04 7600 |0034: if-ltz v4, 00aa // +0076 │ │ -42e13c: 6e20 f45a 4200 |0036: invoke-virtual {v2, v4}, Landroid/widget/TableLayout;.getChildAt:(I)Landroid/view/View; // method@5af4 │ │ -42e142: 0c0a |0039: move-result-object v10 │ │ -42e144: 1f0a 950a |003a: check-cast v10, Landroid/widget/TableRow; // type@0a95 │ │ -42e148: 390a 0300 |003c: if-nez v10, 003f // +0003 │ │ -42e14c: 2869 |003e: goto 00a7 // +0069 │ │ -42e14e: 6e20 fc5a 5a00 |003f: invoke-virtual {v10, v5}, Landroid/widget/TableRow;.getChildAt:(I)Landroid/view/View; // method@5afc │ │ -42e154: 0c0b |0042: move-result-object v11 │ │ -42e156: 1f0b 970a |0043: check-cast v11, Landroid/widget/TextView; // type@0a97 │ │ -42e15a: 390b 0600 |0045: if-nez v11, 004b // +0006 │ │ -42e15e: 6e20 f75a a200 |0047: invoke-virtual {v2, v10}, Landroid/widget/TableLayout;.removeView:(Landroid/view/View;)V // method@5af7 │ │ -42e164: 285d |004a: goto 00a7 // +005d │ │ -42e166: 6e10 a95f 0100 |004b: invoke-virtual {v1}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa9 │ │ -42e16c: 0c0c |004e: move-result-object v12 │ │ -42e16e: 7210 1d60 0c00 |004f: invoke-interface {v12}, Ljava/util/Iterator;.hasNext:()Z // method@601d │ │ -42e174: 0a0d |0052: move-result v13 │ │ -42e176: 380d 4f00 |0053: if-eqz v13, 00a2 // +004f │ │ -42e17a: 7210 1e60 0c00 |0055: invoke-interface {v12}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601e │ │ -42e180: 0c0d |0058: move-result-object v13 │ │ -42e182: 1f0d bc1a |0059: check-cast v13, Lorg/purple/smoke/NeighborElement; // type@1abc │ │ -42e186: 6e10 ff5c 0300 |005b: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ -42e18c: 0a0e |005e: move-result v14 │ │ -42e18e: 6e30 fd5c 930e |005f: invoke-virtual {v3, v9, v14}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ -42e194: 54de 6c55 |0062: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_remoteIpAddress:Ljava/lang/String; // field@556c │ │ -42e198: 6e20 f95c e300 |0064: invoke-virtual {v3, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e19e: 54de 6155 |0067: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_ipVersion:Ljava/lang/String; // field@5561 │ │ -42e1a2: 6e20 b85c 7e00 |0069: invoke-virtual {v14, v7}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42e1a8: 0a0e |006c: move-result v14 │ │ -42e1aa: 380e 1200 |006d: if-eqz v14, 007f // +0012 │ │ -42e1ae: 54de 6e55 |006f: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ -42e1b2: 6e10 c35c 0e00 |0071: invoke-virtual {v14}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42e1b8: 0a0e |0074: move-result v14 │ │ -42e1ba: 390e 0a00 |0075: if-nez v14, 007f // +000a │ │ -42e1be: 6e20 f95c 6300 |0077: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e1c4: 54de 6e55 |007a: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ -42e1c8: 6e20 f95c e300 |007c: invoke-virtual {v3, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e1ce: 6e20 f95c 8300 |007f: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e1d4: 54de 6d55 |0082: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_remotePort:Ljava/lang/String; // field@556d │ │ -42e1d8: 6e20 f95c e300 |0084: invoke-virtual {v3, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e1de: 6e20 f95c 8300 |0087: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e1e4: 54dd 7255 |008a: iget-object v13, v13, Lorg/purple/smoke/NeighborElement;.m_transport:Ljava/lang/String; // field@5572 │ │ -42e1e8: 6e20 f95c d300 |008c: invoke-virtual {v3, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e1ee: 6e10 1c5b 0b00 |008f: invoke-virtual {v11}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42e1f4: 0c0d |0092: move-result-object v13 │ │ -42e1f6: 7210 045c 0d00 |0093: invoke-interface {v13}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42e1fc: 0c0d |0096: move-result-object v13 │ │ -42e1fe: 6e10 035d 0300 |0097: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42e204: 0c0e |009a: move-result-object v14 │ │ -42e206: 6e20 b65c ed00 |009b: invoke-virtual {v13, v14}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -42e20c: 0a0d |009e: move-result v13 │ │ -42e20e: 380d b0ff |009f: if-eqz v13, 004f // -0050 │ │ -42e212: 1219 |00a1: const/4 v9, #int 1 // #1 │ │ -42e214: 3909 0500 |00a2: if-nez v9, 00a7 // +0005 │ │ -42e218: 6e20 f75a a200 |00a4: invoke-virtual {v2, v10}, Landroid/widget/TableLayout;.removeView:(Landroid/view/View;)V // method@5af7 │ │ -42e21e: d804 04ff |00a7: add-int/lit8 v4, v4, #int -1 // #ff │ │ -42e222: 2884 |00a9: goto 002d // -007c │ │ -42e224: 1404 a600 087f |00aa: const v4, #float 1.80778e+38 // #7f0800a6 │ │ -42e22a: 6e20 eabc 4000 |00ad: invoke-virtual {v0, v4}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42e230: 0c04 |00b0: move-result-object v4 │ │ -42e232: 1f04 8d0a |00b1: check-cast v4, Landroid/widget/Switch; // type@0a8d │ │ -42e236: 6e10 a95f 0100 |00b3: invoke-virtual {v1}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa9 │ │ -42e23c: 0c0a |00b6: move-result-object v10 │ │ -42e23e: 120b |00b7: const/4 v11, #int 0 // #0 │ │ -42e240: 7210 1d60 0a00 |00b8: invoke-interface {v10}, Ljava/util/Iterator;.hasNext:()Z // method@601d │ │ -42e246: 0a0c |00bb: move-result v12 │ │ -42e248: 380c 3103 |00bc: if-eqz v12, 03ed // +0331 │ │ -42e24c: 7210 1e60 0a00 |00be: invoke-interface {v10}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601e │ │ -42e252: 0c0c |00c1: move-result-object v12 │ │ -42e254: 1f0c bc1a |00c2: check-cast v12, Lorg/purple/smoke/NeighborElement; // type@1abc │ │ -42e258: 390c 0300 |00c4: if-nez v12, 00c7 // +0003 │ │ -42e25c: 28f2 |00c6: goto 00b8 // -000e │ │ -42e25e: 6e10 f55a 0200 |00c7: invoke-virtual {v2}, Landroid/widget/TableLayout;.getChildCount:()I // method@5af5 │ │ -42e264: 0a0d |00ca: move-result v13 │ │ -42e266: 120e |00cb: const/4 v14, #int 0 // #0 │ │ -42e268: 35de 6200 |00cc: if-ge v14, v13, 012e // +0062 │ │ -42e26c: 6e20 f45a e200 |00ce: invoke-virtual {v2, v14}, Landroid/widget/TableLayout;.getChildAt:(I)Landroid/view/View; // method@5af4 │ │ -42e272: 0c10 |00d1: move-result-object v16 │ │ -42e274: 080f 1000 |00d2: move-object/from16 v15, v16 │ │ -42e278: 1f0f 950a |00d4: check-cast v15, Landroid/widget/TableRow; // type@0a95 │ │ -42e27c: 390f 0300 |00d6: if-nez v15, 00d9 // +0003 │ │ -42e280: 2851 |00d8: goto 0129 // +0051 │ │ -42e282: 6e20 fc5a 5f00 |00d9: invoke-virtual {v15, v5}, Landroid/widget/TableRow;.getChildAt:(I)Landroid/view/View; // method@5afc │ │ -42e288: 0c0f |00dc: move-result-object v15 │ │ -42e28a: 1f0f 970a |00dd: check-cast v15, Landroid/widget/TextView; // type@0a97 │ │ -42e28e: 390f 0300 |00df: if-nez v15, 00e2 // +0003 │ │ -42e292: 2848 |00e1: goto 0129 // +0048 │ │ -42e294: 6e10 ff5c 0300 |00e2: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ -42e29a: 0a05 |00e5: move-result v5 │ │ -42e29c: 6e30 fd5c 9305 |00e6: invoke-virtual {v3, v9, v5}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ -42e2a2: 54c5 6c55 |00e9: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_remoteIpAddress:Ljava/lang/String; // field@556c │ │ -42e2a6: 6e20 f95c 5300 |00eb: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e2ac: 54c5 6155 |00ee: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_ipVersion:Ljava/lang/String; // field@5561 │ │ -42e2b0: 6e20 b85c 7500 |00f0: invoke-virtual {v5, v7}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42e2b6: 0a05 |00f3: move-result v5 │ │ -42e2b8: 3805 1200 |00f4: if-eqz v5, 0106 // +0012 │ │ -42e2bc: 54c5 6e55 |00f6: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ -42e2c0: 6e10 c35c 0500 |00f8: invoke-virtual {v5}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42e2c6: 0a05 |00fb: move-result v5 │ │ -42e2c8: 3905 0a00 |00fc: if-nez v5, 0106 // +000a │ │ -42e2cc: 6e20 f95c 6300 |00fe: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e2d2: 54c5 6e55 |0101: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ -42e2d6: 6e20 f95c 5300 |0103: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e2dc: 6e20 f95c 8300 |0106: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e2e2: 54c5 6d55 |0109: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_remotePort:Ljava/lang/String; // field@556d │ │ -42e2e6: 6e20 f95c 5300 |010b: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e2ec: 6e20 f95c 8300 |010e: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e2f2: 54c5 7255 |0111: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_transport:Ljava/lang/String; // field@5572 │ │ -42e2f6: 6e20 f95c 5300 |0113: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e2fc: 6e10 1c5b 0f00 |0116: invoke-virtual {v15}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42e302: 0c05 |0119: move-result-object v5 │ │ -42e304: 7210 045c 0500 |011a: invoke-interface {v5}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42e30a: 0c05 |011d: move-result-object v5 │ │ -42e30c: 6e10 035d 0300 |011e: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42e312: 0c09 |0121: move-result-object v9 │ │ -42e314: 6e20 b65c 9500 |0122: invoke-virtual {v5, v9}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ -42e31a: 0a05 |0125: move-result v5 │ │ -42e31c: 3805 0300 |0126: if-eqz v5, 0129 // +0003 │ │ -42e320: 2807 |0128: goto 012f // +0007 │ │ -42e322: d80e 0e01 |0129: add-int/lit8 v14, v14, #int 1 // #01 │ │ -42e326: 1215 |012b: const/4 v5, #int 1 // #1 │ │ -42e328: 1209 |012c: const/4 v9, #int 0 // #0 │ │ -42e32a: 289f |012d: goto 00cc // -0061 │ │ -42e32c: 120f |012e: const/4 v15, #int 0 // #0 │ │ -42e32e: 1a05 8517 |012f: const-string v5, "Disconnect" // string@1785 │ │ -42e332: 12e9 |0131: const/4 v9, #int -2 // #fe │ │ -42e334: 390f 8000 |0132: if-nez v15, 01b2 // +0080 │ │ -42e338: 220d 940a |0134: new-instance v13, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ -42e33c: 7020 f85a 9d00 |0136: invoke-direct {v13, v9}, Landroid/widget/TableRow$LayoutParams;.:(I)V // method@5af8 │ │ -42e342: 220f 950a |0139: new-instance v15, Landroid/widget/TableRow; // type@0a95 │ │ -42e346: 7020 fa5a 0f00 |013b: invoke-direct {v15, v0}, Landroid/widget/TableRow;.:(Landroid/content/Context;)V // method@5afa │ │ -42e34c: 52ce 6555 |013e: iget v14, v12, Lorg/purple/smoke/NeighborElement;.m_oid:I // field@5565 │ │ -42e350: 6e20 fd5a ef00 |0140: invoke-virtual {v15, v14}, Landroid/widget/TableRow;.setId:(I)V // method@5afd │ │ -42e356: 6e20 fe5a df00 |0143: invoke-virtual {v15, v13}, Landroid/widget/TableRow;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5afe │ │ -42e35c: 220d 8b0a |0146: new-instance v13, Landroid/widget/Spinner; // type@0a8b │ │ -42e360: 7020 ae5a 0d00 |0148: invoke-direct {v13, v0}, Landroid/widget/Spinner;.:(Landroid/content/Context;)V // method@5aae │ │ -42e366: 220e f10a |014b: new-instance v14, Ljava/lang/StringBuilder; // type@0af1 │ │ -42e36a: 7010 ee5c 0e00 |014d: invoke-direct {v14}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42e370: 54c9 6c55 |0150: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteIpAddress:Ljava/lang/String; // field@556c │ │ -42e374: 6e20 f95c 9e00 |0152: invoke-virtual {v14, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e37a: 6e20 f95c 8e00 |0155: invoke-virtual {v14, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e380: 54c9 6d55 |0158: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remotePort:Ljava/lang/String; // field@556d │ │ -42e384: 6e20 f95c 9e00 |015a: invoke-virtual {v14, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e38a: 6e10 035d 0e00 |015d: invoke-virtual {v14}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42e390: 0c09 |0160: move-result-object v9 │ │ -42e392: 54ce 7255 |0161: iget-object v14, v12, Lorg/purple/smoke/NeighborElement;.m_transport:Ljava/lang/String; // field@5572 │ │ -42e396: 0812 0a00 |0163: move-object/from16 v18, v10 │ │ -42e39a: 1a0a 094d |0165: const-string v10, "TCP" // string@4d09 │ │ -42e39e: 6e20 b85c ae00 |0167: invoke-virtual {v14, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42e3a4: 0a0a |016a: move-result v10 │ │ -42e3a6: 380a 1700 |016b: if-eqz v10, 0182 // +0017 │ │ -42e3aa: 1a13 dd0a |016d: const-string v19, "Action" // string@0add │ │ -42e3ae: 1a14 0e14 |016f: const-string v20, "Connect" // string@140e │ │ -42e3b2: 1a15 2917 |0171: const-string v21, "Delete" // string@1729 │ │ -42e3b6: 1a16 8517 |0173: const-string v22, "Disconnect" // string@1785 │ │ -42e3ba: 1a17 6645 |0175: const-string v23, "Purge Queue" // string@4566 │ │ -42e3be: 1a18 ec46 |0177: const-string v24, "Reset SSL/TLS Credentials" // string@46ec │ │ -42e3c2: 2506 a81b 1300 |0179: filled-new-array/range {v19, v20, v21, v22, v23, v24}, [Ljava/lang/String; // type@1ba8 │ │ -42e3c8: 0c0a |017c: move-result-object v10 │ │ -42e3ca: 0813 0100 |017d: move-object/from16 v19, v1 │ │ -42e3ce: 081a 0f00 |017f: move-object/from16 v26, v15 │ │ -42e3d2: 2811 |0181: goto 0192 // +0011 │ │ -42e3d4: 1a0a dd0a |0182: const-string v10, "Action" // string@0add │ │ -42e3d8: 1a0e 0e14 |0184: const-string v14, "Connect" // string@140e │ │ -42e3dc: 081a 0f00 |0186: move-object/from16 v26, v15 │ │ -42e3e0: 1a0f 2917 |0188: const-string v15, "Delete" // string@1729 │ │ -42e3e4: 0813 0100 |018a: move-object/from16 v19, v1 │ │ -42e3e8: 1a01 6645 |018c: const-string v1, "Purge Queue" // string@4566 │ │ -42e3ec: 2451 a81b ea5f |018e: filled-new-array {v10, v14, v15, v5, v1}, [Ljava/lang/String; // type@1ba8 │ │ -42e3f2: 0c0a |0191: move-result-object v10 │ │ -42e3f4: 2201 5b0a |0192: new-instance v1, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -42e3f8: 140e 0800 0901 |0194: const v14, #float 2.51629e-38 // #01090008 │ │ -42e3fe: 7040 cb58 01ae |0197: invoke-direct {v1, v0, v14, v10}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ -42e404: 6e20 c05a 1d00 |019a: invoke-virtual {v13, v1}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -42e40a: 52c1 6555 |019d: iget v1, v12, Lorg/purple/smoke/NeighborElement;.m_oid:I // field@5565 │ │ -42e40e: 6e20 c75a 1d00 |019f: invoke-virtual {v13, v1}, Landroid/widget/Spinner;.setId:(I)V // method@5ac7 │ │ -42e414: 2201 f91a |01a2: new-instance v1, Lorg/purple/smoke/Settings$4; // type@1af9 │ │ -42e418: 7030 a2bc 0109 |01a4: invoke-direct {v1, v0, v9}, Lorg/purple/smoke/Settings$4;.:(Lorg/purple/smoke/Settings;Ljava/lang/String;)V // method@bca2 │ │ -42e41e: 6e20 c95a 1d00 |01a7: invoke-virtual {v13, v1}, Landroid/widget/Spinner;.setOnItemSelectedListener:(Landroid/widget/AdapterView$OnItemSelectedListener;)V // method@5ac9 │ │ -42e424: 220f 970a |01aa: new-instance v15, Landroid/widget/TextView; // type@0a97 │ │ -42e428: 7020 ff5a 0f00 |01ac: invoke-direct {v15, v0}, Landroid/widget/TextView;.:(Landroid/content/Context;)V // method@5aff │ │ -42e42e: 0801 1a00 |01af: move-object/from16 v1, v26 │ │ -42e432: 2807 |01b1: goto 01b8 // +0007 │ │ -42e434: 0813 0100 |01b2: move-object/from16 v19, v1 │ │ -42e438: 0812 0a00 |01b4: move-object/from16 v18, v10 │ │ -42e43c: 1201 |01b6: const/4 v1, #int 0 // #0 │ │ -42e43e: 120d |01b7: const/4 v13, #int 0 // #0 │ │ -42e440: 54c9 7055 |01b8: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_status:Ljava/lang/String; // field@5570 │ │ -42e444: 6e10 bf5c 0900 |01ba: invoke-virtual {v9}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -42e44a: 1a0a 5b60 |01bd: const-string v10, "connecting" // string@605b │ │ -42e44e: 6e20 b85c a900 |01bf: invoke-virtual {v9, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42e454: 0a0a |01c2: move-result v10 │ │ -42e456: 390a 2500 |01c3: if-nez v10, 01e8 // +0025 │ │ -42e45a: 1a0a 5860 |01c5: const-string v10, "connected" // string@6058 │ │ -42e45e: 6e20 b85c a900 |01c7: invoke-virtual {v9, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42e464: 0a09 |01ca: move-result v9 │ │ -42e466: 3909 0e00 |01cb: if-nez v9, 01d9 // +000e │ │ -42e46a: 1309 b700 |01cd: const/16 v9, #int 183 // #b7 │ │ -42e46e: 130a 1c00 |01cf: const/16 v10, #int 28 // #1c │ │ -42e472: 7130 c902 a90a |01d1: invoke-static {v9, v10, v10}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ -42e478: 0a09 |01d4: move-result v9 │ │ -42e47a: 6e20 4c5b 9f00 |01d5: invoke-virtual {v15, v9}, Landroid/widget/TextView;.setTextColor:(I)V // method@5b4c │ │ -42e480: 280e |01d8: goto 01e6 // +000e │ │ -42e482: 1309 1b00 |01d9: const/16 v9, #int 27 // #1b │ │ -42e486: 130a 5e00 |01db: const/16 v10, #int 94 // #5e │ │ -42e48a: 130e 2000 |01dd: const/16 v14, #int 32 // #20 │ │ -42e48e: 7130 c902 a90e |01df: invoke-static {v9, v10, v14}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ -42e494: 0a09 |01e2: move-result v9 │ │ -42e496: 6e20 4c5b 9f00 |01e3: invoke-virtual {v15, v9}, Landroid/widget/TextView;.setTextColor:(I)V // method@5b4c │ │ -42e49c: 120e |01e6: const/4 v14, #int 0 // #0 │ │ -42e49e: 280d |01e7: goto 01f4 // +000d │ │ -42e4a0: 1309 ff00 |01e8: const/16 v9, #int 255 // #ff │ │ -42e4a4: 130a 6f00 |01ea: const/16 v10, #int 111 // #6f │ │ -42e4a8: 120e |01ec: const/4 v14, #int 0 // #0 │ │ -42e4aa: 7130 c902 a90e |01ed: invoke-static {v9, v10, v14}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ -42e4b0: 0a09 |01f0: move-result v9 │ │ -42e4b2: 6e20 4c5b 9f00 |01f1: invoke-virtual {v15, v9}, Landroid/widget/TextView;.setTextColor:(I)V // method@5b4c │ │ -42e4b8: 6e10 ff5c 0300 |01f4: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ -42e4be: 0a09 |01f7: move-result v9 │ │ -42e4c0: 6e30 fd5c e309 |01f8: invoke-virtual {v3, v14, v9}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ -42e4c6: 1a09 df14 |01fb: const-string v9, "Control: " // string@14df │ │ -42e4ca: 6e20 f95c 9300 |01fd: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e4d0: 54c9 7155 |0200: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_statusControl:Ljava/lang/String; // field@5571 │ │ -42e4d4: 121a |0202: const/4 v10, #int 1 // #1 │ │ -42e4d6: 6e30 cd5c e90a |0203: invoke-virtual {v9, v14, v10}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ -42e4dc: 0c09 |0206: move-result-object v9 │ │ -42e4de: 6e10 d15c 0900 |0207: invoke-virtual {v9}, Ljava/lang/String;.toUpperCase:()Ljava/lang/String; // method@5cd1 │ │ -42e4e4: 0c09 |020a: move-result-object v9 │ │ -42e4e6: 6e20 f95c 9300 |020b: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e4ec: 54c9 7155 |020e: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_statusControl:Ljava/lang/String; // field@5571 │ │ -42e4f0: 6e20 cc5c a900 |0210: invoke-virtual {v9, v10}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ -42e4f6: 0c09 |0213: move-result-object v9 │ │ -42e4f8: 6e20 f95c 9300 |0214: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e4fe: 2804 |0217: goto 021b // +0004 │ │ -42e500: 6e20 f95c 5300 |0218: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e506: 1a05 0100 |021b: const-string v5, " │ │ +42e0bc: |[42e0bc] org.purple.smoke.Settings.populateNeighbors:(Ljava/util/ArrayList;)V │ │ +42e0cc: 0800 1900 |0000: move-object/from16 v0, v25 │ │ +42e0d0: 391a 0b00 |0002: if-nez v26, 000d // +000b │ │ +42e0d4: 5401 065f |0004: iget-object v1, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42e0d8: 6202 0a5f |0006: sget-object v2, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42e0dc: 6e20 16ba 2100 |0008: invoke-virtual {v1, v2}, Lorg/purple/smoke/Database;.readNeighbors:(Lorg/purple/smoke/Cryptography;)Ljava/util/ArrayList; // method@ba16 │ │ +42e0e2: 0c01 |000b: move-result-object v1 │ │ +42e0e4: 2803 |000c: goto 000f // +0003 │ │ +42e0e6: 0801 1a00 |000d: move-object/from16 v1, v26 │ │ +42e0ea: 1402 a700 087f |000f: const v2, #float 1.80778e+38 // #7f0800a7 │ │ +42e0f0: 6e20 eabc 2000 |0012: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42e0f6: 0c02 |0015: move-result-object v2 │ │ +42e0f8: 1f02 930a |0016: check-cast v2, Landroid/widget/TableLayout; // type@0a93 │ │ +42e0fc: 3801 db03 |0018: if-eqz v1, 03f3 // +03db │ │ +42e100: 6e10 a85f 0100 |001a: invoke-virtual {v1}, Ljava/util/ArrayList;.isEmpty:()Z // method@5fa8 │ │ +42e106: 0a03 |001d: move-result v3 │ │ +42e108: 3803 0400 |001e: if-eqz v3, 0022 // +0004 │ │ +42e10c: 2900 d303 |0020: goto/16 03f3 // +03d3 │ │ +42e110: 2203 f10a |0022: new-instance v3, Ljava/lang/StringBuilder; // type@0af1 │ │ +42e114: 7010 ee5c 0300 |0024: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42e11a: 6e10 f55a 0200 |0027: invoke-virtual {v2}, Landroid/widget/TableLayout;.getChildCount:()I // method@5af5 │ │ +42e120: 0a04 |002a: move-result v4 │ │ +42e122: 1215 |002b: const/4 v5, #int 1 // #1 │ │ +42e124: b154 |002c: sub-int/2addr v4, v5 │ │ +42e126: 1a06 8604 |002d: const-string v6, "-" // string@0486 │ │ +42e12a: 1a07 a91d |002f: const-string v7, "IPv6" // string@1da9 │ │ +42e12e: 1a08 7c08 |0031: const-string v8, ":" // string@087c │ │ +42e132: 1209 |0033: const/4 v9, #int 0 // #0 │ │ +42e134: 3a04 7600 |0034: if-ltz v4, 00aa // +0076 │ │ +42e138: 6e20 f45a 4200 |0036: invoke-virtual {v2, v4}, Landroid/widget/TableLayout;.getChildAt:(I)Landroid/view/View; // method@5af4 │ │ +42e13e: 0c0a |0039: move-result-object v10 │ │ +42e140: 1f0a 950a |003a: check-cast v10, Landroid/widget/TableRow; // type@0a95 │ │ +42e144: 390a 0300 |003c: if-nez v10, 003f // +0003 │ │ +42e148: 2869 |003e: goto 00a7 // +0069 │ │ +42e14a: 6e20 fc5a 5a00 |003f: invoke-virtual {v10, v5}, Landroid/widget/TableRow;.getChildAt:(I)Landroid/view/View; // method@5afc │ │ +42e150: 0c0b |0042: move-result-object v11 │ │ +42e152: 1f0b 970a |0043: check-cast v11, Landroid/widget/TextView; // type@0a97 │ │ +42e156: 390b 0600 |0045: if-nez v11, 004b // +0006 │ │ +42e15a: 6e20 f75a a200 |0047: invoke-virtual {v2, v10}, Landroid/widget/TableLayout;.removeView:(Landroid/view/View;)V // method@5af7 │ │ +42e160: 285d |004a: goto 00a7 // +005d │ │ +42e162: 6e10 a95f 0100 |004b: invoke-virtual {v1}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa9 │ │ +42e168: 0c0c |004e: move-result-object v12 │ │ +42e16a: 7210 1d60 0c00 |004f: invoke-interface {v12}, Ljava/util/Iterator;.hasNext:()Z // method@601d │ │ +42e170: 0a0d |0052: move-result v13 │ │ +42e172: 380d 4f00 |0053: if-eqz v13, 00a2 // +004f │ │ +42e176: 7210 1e60 0c00 |0055: invoke-interface {v12}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601e │ │ +42e17c: 0c0d |0058: move-result-object v13 │ │ +42e17e: 1f0d bc1a |0059: check-cast v13, Lorg/purple/smoke/NeighborElement; // type@1abc │ │ +42e182: 6e10 ff5c 0300 |005b: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ +42e188: 0a0e |005e: move-result v14 │ │ +42e18a: 6e30 fd5c 930e |005f: invoke-virtual {v3, v9, v14}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ +42e190: 54de 6c55 |0062: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_remoteIpAddress:Ljava/lang/String; // field@556c │ │ +42e194: 6e20 f95c e300 |0064: invoke-virtual {v3, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e19a: 54de 6155 |0067: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_ipVersion:Ljava/lang/String; // field@5561 │ │ +42e19e: 6e20 b85c 7e00 |0069: invoke-virtual {v14, v7}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42e1a4: 0a0e |006c: move-result v14 │ │ +42e1a6: 380e 1200 |006d: if-eqz v14, 007f // +0012 │ │ +42e1aa: 54de 6e55 |006f: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ +42e1ae: 6e10 c35c 0e00 |0071: invoke-virtual {v14}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42e1b4: 0a0e |0074: move-result v14 │ │ +42e1b6: 390e 0a00 |0075: if-nez v14, 007f // +000a │ │ +42e1ba: 6e20 f95c 6300 |0077: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e1c0: 54de 6e55 |007a: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ +42e1c4: 6e20 f95c e300 |007c: invoke-virtual {v3, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e1ca: 6e20 f95c 8300 |007f: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e1d0: 54de 6d55 |0082: iget-object v14, v13, Lorg/purple/smoke/NeighborElement;.m_remotePort:Ljava/lang/String; // field@556d │ │ +42e1d4: 6e20 f95c e300 |0084: invoke-virtual {v3, v14}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e1da: 6e20 f95c 8300 |0087: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e1e0: 54dd 7255 |008a: iget-object v13, v13, Lorg/purple/smoke/NeighborElement;.m_transport:Ljava/lang/String; // field@5572 │ │ +42e1e4: 6e20 f95c d300 |008c: invoke-virtual {v3, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e1ea: 6e10 1c5b 0b00 |008f: invoke-virtual {v11}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42e1f0: 0c0d |0092: move-result-object v13 │ │ +42e1f2: 7210 045c 0d00 |0093: invoke-interface {v13}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42e1f8: 0c0d |0096: move-result-object v13 │ │ +42e1fa: 6e10 035d 0300 |0097: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42e200: 0c0e |009a: move-result-object v14 │ │ +42e202: 6e20 b65c ed00 |009b: invoke-virtual {v13, v14}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +42e208: 0a0d |009e: move-result v13 │ │ +42e20a: 380d b0ff |009f: if-eqz v13, 004f // -0050 │ │ +42e20e: 1219 |00a1: const/4 v9, #int 1 // #1 │ │ +42e210: 3909 0500 |00a2: if-nez v9, 00a7 // +0005 │ │ +42e214: 6e20 f75a a200 |00a4: invoke-virtual {v2, v10}, Landroid/widget/TableLayout;.removeView:(Landroid/view/View;)V // method@5af7 │ │ +42e21a: d804 04ff |00a7: add-int/lit8 v4, v4, #int -1 // #ff │ │ +42e21e: 2884 |00a9: goto 002d // -007c │ │ +42e220: 1404 a600 087f |00aa: const v4, #float 1.80778e+38 // #7f0800a6 │ │ +42e226: 6e20 eabc 4000 |00ad: invoke-virtual {v0, v4}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42e22c: 0c04 |00b0: move-result-object v4 │ │ +42e22e: 1f04 8d0a |00b1: check-cast v4, Landroid/widget/Switch; // type@0a8d │ │ +42e232: 6e10 a95f 0100 |00b3: invoke-virtual {v1}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa9 │ │ +42e238: 0c0a |00b6: move-result-object v10 │ │ +42e23a: 120b |00b7: const/4 v11, #int 0 // #0 │ │ +42e23c: 7210 1d60 0a00 |00b8: invoke-interface {v10}, Ljava/util/Iterator;.hasNext:()Z // method@601d │ │ +42e242: 0a0c |00bb: move-result v12 │ │ +42e244: 380c 3103 |00bc: if-eqz v12, 03ed // +0331 │ │ +42e248: 7210 1e60 0a00 |00be: invoke-interface {v10}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601e │ │ +42e24e: 0c0c |00c1: move-result-object v12 │ │ +42e250: 1f0c bc1a |00c2: check-cast v12, Lorg/purple/smoke/NeighborElement; // type@1abc │ │ +42e254: 390c 0300 |00c4: if-nez v12, 00c7 // +0003 │ │ +42e258: 28f2 |00c6: goto 00b8 // -000e │ │ +42e25a: 6e10 f55a 0200 |00c7: invoke-virtual {v2}, Landroid/widget/TableLayout;.getChildCount:()I // method@5af5 │ │ +42e260: 0a0d |00ca: move-result v13 │ │ +42e262: 120e |00cb: const/4 v14, #int 0 // #0 │ │ +42e264: 35de 6200 |00cc: if-ge v14, v13, 012e // +0062 │ │ +42e268: 6e20 f45a e200 |00ce: invoke-virtual {v2, v14}, Landroid/widget/TableLayout;.getChildAt:(I)Landroid/view/View; // method@5af4 │ │ +42e26e: 0c10 |00d1: move-result-object v16 │ │ +42e270: 080f 1000 |00d2: move-object/from16 v15, v16 │ │ +42e274: 1f0f 950a |00d4: check-cast v15, Landroid/widget/TableRow; // type@0a95 │ │ +42e278: 390f 0300 |00d6: if-nez v15, 00d9 // +0003 │ │ +42e27c: 2851 |00d8: goto 0129 // +0051 │ │ +42e27e: 6e20 fc5a 5f00 |00d9: invoke-virtual {v15, v5}, Landroid/widget/TableRow;.getChildAt:(I)Landroid/view/View; // method@5afc │ │ +42e284: 0c0f |00dc: move-result-object v15 │ │ +42e286: 1f0f 970a |00dd: check-cast v15, Landroid/widget/TextView; // type@0a97 │ │ +42e28a: 390f 0300 |00df: if-nez v15, 00e2 // +0003 │ │ +42e28e: 2848 |00e1: goto 0129 // +0048 │ │ +42e290: 6e10 ff5c 0300 |00e2: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ +42e296: 0a05 |00e5: move-result v5 │ │ +42e298: 6e30 fd5c 9305 |00e6: invoke-virtual {v3, v9, v5}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ +42e29e: 54c5 6c55 |00e9: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_remoteIpAddress:Ljava/lang/String; // field@556c │ │ +42e2a2: 6e20 f95c 5300 |00eb: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e2a8: 54c5 6155 |00ee: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_ipVersion:Ljava/lang/String; // field@5561 │ │ +42e2ac: 6e20 b85c 7500 |00f0: invoke-virtual {v5, v7}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42e2b2: 0a05 |00f3: move-result v5 │ │ +42e2b4: 3805 1200 |00f4: if-eqz v5, 0106 // +0012 │ │ +42e2b8: 54c5 6e55 |00f6: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ +42e2bc: 6e10 c35c 0500 |00f8: invoke-virtual {v5}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42e2c2: 0a05 |00fb: move-result v5 │ │ +42e2c4: 3905 0a00 |00fc: if-nez v5, 0106 // +000a │ │ +42e2c8: 6e20 f95c 6300 |00fe: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e2ce: 54c5 6e55 |0101: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ +42e2d2: 6e20 f95c 5300 |0103: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e2d8: 6e20 f95c 8300 |0106: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e2de: 54c5 6d55 |0109: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_remotePort:Ljava/lang/String; // field@556d │ │ +42e2e2: 6e20 f95c 5300 |010b: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e2e8: 6e20 f95c 8300 |010e: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e2ee: 54c5 7255 |0111: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_transport:Ljava/lang/String; // field@5572 │ │ +42e2f2: 6e20 f95c 5300 |0113: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e2f8: 6e10 1c5b 0f00 |0116: invoke-virtual {v15}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42e2fe: 0c05 |0119: move-result-object v5 │ │ +42e300: 7210 045c 0500 |011a: invoke-interface {v5}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42e306: 0c05 |011d: move-result-object v5 │ │ +42e308: 6e10 035d 0300 |011e: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42e30e: 0c09 |0121: move-result-object v9 │ │ +42e310: 6e20 b65c 9500 |0122: invoke-virtual {v5, v9}, Ljava/lang/String;.contains:(Ljava/lang/CharSequence;)Z // method@5cb6 │ │ +42e316: 0a05 |0125: move-result v5 │ │ +42e318: 3805 0300 |0126: if-eqz v5, 0129 // +0003 │ │ +42e31c: 2807 |0128: goto 012f // +0007 │ │ +42e31e: d80e 0e01 |0129: add-int/lit8 v14, v14, #int 1 // #01 │ │ +42e322: 1215 |012b: const/4 v5, #int 1 // #1 │ │ +42e324: 1209 |012c: const/4 v9, #int 0 // #0 │ │ +42e326: 289f |012d: goto 00cc // -0061 │ │ +42e328: 120f |012e: const/4 v15, #int 0 // #0 │ │ +42e32a: 1a05 8517 |012f: const-string v5, "Disconnect" // string@1785 │ │ +42e32e: 12e9 |0131: const/4 v9, #int -2 // #fe │ │ +42e330: 390f 8000 |0132: if-nez v15, 01b2 // +0080 │ │ +42e334: 220d 940a |0134: new-instance v13, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ +42e338: 7020 f85a 9d00 |0136: invoke-direct {v13, v9}, Landroid/widget/TableRow$LayoutParams;.:(I)V // method@5af8 │ │ +42e33e: 220f 950a |0139: new-instance v15, Landroid/widget/TableRow; // type@0a95 │ │ +42e342: 7020 fa5a 0f00 |013b: invoke-direct {v15, v0}, Landroid/widget/TableRow;.:(Landroid/content/Context;)V // method@5afa │ │ +42e348: 52ce 6555 |013e: iget v14, v12, Lorg/purple/smoke/NeighborElement;.m_oid:I // field@5565 │ │ +42e34c: 6e20 fd5a ef00 |0140: invoke-virtual {v15, v14}, Landroid/widget/TableRow;.setId:(I)V // method@5afd │ │ +42e352: 6e20 fe5a df00 |0143: invoke-virtual {v15, v13}, Landroid/widget/TableRow;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5afe │ │ +42e358: 220d 8b0a |0146: new-instance v13, Landroid/widget/Spinner; // type@0a8b │ │ +42e35c: 7020 ae5a 0d00 |0148: invoke-direct {v13, v0}, Landroid/widget/Spinner;.:(Landroid/content/Context;)V // method@5aae │ │ +42e362: 220e f10a |014b: new-instance v14, Ljava/lang/StringBuilder; // type@0af1 │ │ +42e366: 7010 ee5c 0e00 |014d: invoke-direct {v14}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42e36c: 54c9 6c55 |0150: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteIpAddress:Ljava/lang/String; // field@556c │ │ +42e370: 6e20 f95c 9e00 |0152: invoke-virtual {v14, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e376: 6e20 f95c 8e00 |0155: invoke-virtual {v14, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e37c: 54c9 6d55 |0158: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remotePort:Ljava/lang/String; // field@556d │ │ +42e380: 6e20 f95c 9e00 |015a: invoke-virtual {v14, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e386: 6e10 035d 0e00 |015d: invoke-virtual {v14}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42e38c: 0c09 |0160: move-result-object v9 │ │ +42e38e: 54ce 7255 |0161: iget-object v14, v12, Lorg/purple/smoke/NeighborElement;.m_transport:Ljava/lang/String; // field@5572 │ │ +42e392: 0812 0a00 |0163: move-object/from16 v18, v10 │ │ +42e396: 1a0a 094d |0165: const-string v10, "TCP" // string@4d09 │ │ +42e39a: 6e20 b85c ae00 |0167: invoke-virtual {v14, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42e3a0: 0a0a |016a: move-result v10 │ │ +42e3a2: 380a 1700 |016b: if-eqz v10, 0182 // +0017 │ │ +42e3a6: 1a13 dd0a |016d: const-string v19, "Action" // string@0add │ │ +42e3aa: 1a14 0e14 |016f: const-string v20, "Connect" // string@140e │ │ +42e3ae: 1a15 2917 |0171: const-string v21, "Delete" // string@1729 │ │ +42e3b2: 1a16 8517 |0173: const-string v22, "Disconnect" // string@1785 │ │ +42e3b6: 1a17 6645 |0175: const-string v23, "Purge Queue" // string@4566 │ │ +42e3ba: 1a18 ec46 |0177: const-string v24, "Reset SSL/TLS Credentials" // string@46ec │ │ +42e3be: 2506 a81b 1300 |0179: filled-new-array/range {v19, v20, v21, v22, v23, v24}, [Ljava/lang/String; // type@1ba8 │ │ +42e3c4: 0c0a |017c: move-result-object v10 │ │ +42e3c6: 0813 0100 |017d: move-object/from16 v19, v1 │ │ +42e3ca: 081a 0f00 |017f: move-object/from16 v26, v15 │ │ +42e3ce: 2811 |0181: goto 0192 // +0011 │ │ +42e3d0: 1a0a dd0a |0182: const-string v10, "Action" // string@0add │ │ +42e3d4: 1a0e 0e14 |0184: const-string v14, "Connect" // string@140e │ │ +42e3d8: 081a 0f00 |0186: move-object/from16 v26, v15 │ │ +42e3dc: 1a0f 2917 |0188: const-string v15, "Delete" // string@1729 │ │ +42e3e0: 0813 0100 |018a: move-object/from16 v19, v1 │ │ +42e3e4: 1a01 6645 |018c: const-string v1, "Purge Queue" // string@4566 │ │ +42e3e8: 2451 a81b ea5f |018e: filled-new-array {v10, v14, v15, v5, v1}, [Ljava/lang/String; // type@1ba8 │ │ +42e3ee: 0c0a |0191: move-result-object v10 │ │ +42e3f0: 2201 5b0a |0192: new-instance v1, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +42e3f4: 140e 0800 0901 |0194: const v14, #float 2.51629e-38 // #01090008 │ │ +42e3fa: 7040 cb58 01ae |0197: invoke-direct {v1, v0, v14, v10}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ +42e400: 6e20 c05a 1d00 |019a: invoke-virtual {v13, v1}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +42e406: 52c1 6555 |019d: iget v1, v12, Lorg/purple/smoke/NeighborElement;.m_oid:I // field@5565 │ │ +42e40a: 6e20 c75a 1d00 |019f: invoke-virtual {v13, v1}, Landroid/widget/Spinner;.setId:(I)V // method@5ac7 │ │ +42e410: 2201 f91a |01a2: new-instance v1, Lorg/purple/smoke/Settings$4; // type@1af9 │ │ +42e414: 7030 a2bc 0109 |01a4: invoke-direct {v1, v0, v9}, Lorg/purple/smoke/Settings$4;.:(Lorg/purple/smoke/Settings;Ljava/lang/String;)V // method@bca2 │ │ +42e41a: 6e20 c95a 1d00 |01a7: invoke-virtual {v13, v1}, Landroid/widget/Spinner;.setOnItemSelectedListener:(Landroid/widget/AdapterView$OnItemSelectedListener;)V // method@5ac9 │ │ +42e420: 220f 970a |01aa: new-instance v15, Landroid/widget/TextView; // type@0a97 │ │ +42e424: 7020 ff5a 0f00 |01ac: invoke-direct {v15, v0}, Landroid/widget/TextView;.:(Landroid/content/Context;)V // method@5aff │ │ +42e42a: 0801 1a00 |01af: move-object/from16 v1, v26 │ │ +42e42e: 2807 |01b1: goto 01b8 // +0007 │ │ +42e430: 0813 0100 |01b2: move-object/from16 v19, v1 │ │ +42e434: 0812 0a00 |01b4: move-object/from16 v18, v10 │ │ +42e438: 1201 |01b6: const/4 v1, #int 0 // #0 │ │ +42e43a: 120d |01b7: const/4 v13, #int 0 // #0 │ │ +42e43c: 54c9 7055 |01b8: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_status:Ljava/lang/String; // field@5570 │ │ +42e440: 6e10 bf5c 0900 |01ba: invoke-virtual {v9}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +42e446: 1a0a 5b60 |01bd: const-string v10, "connecting" // string@605b │ │ +42e44a: 6e20 b85c a900 |01bf: invoke-virtual {v9, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42e450: 0a0a |01c2: move-result v10 │ │ +42e452: 390a 2500 |01c3: if-nez v10, 01e8 // +0025 │ │ +42e456: 1a0a 5860 |01c5: const-string v10, "connected" // string@6058 │ │ +42e45a: 6e20 b85c a900 |01c7: invoke-virtual {v9, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42e460: 0a09 |01ca: move-result v9 │ │ +42e462: 3909 0e00 |01cb: if-nez v9, 01d9 // +000e │ │ +42e466: 1309 b700 |01cd: const/16 v9, #int 183 // #b7 │ │ +42e46a: 130a 1c00 |01cf: const/16 v10, #int 28 // #1c │ │ +42e46e: 7130 c902 a90a |01d1: invoke-static {v9, v10, v10}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ +42e474: 0a09 |01d4: move-result v9 │ │ +42e476: 6e20 4c5b 9f00 |01d5: invoke-virtual {v15, v9}, Landroid/widget/TextView;.setTextColor:(I)V // method@5b4c │ │ +42e47c: 280e |01d8: goto 01e6 // +000e │ │ +42e47e: 1309 1b00 |01d9: const/16 v9, #int 27 // #1b │ │ +42e482: 130a 5e00 |01db: const/16 v10, #int 94 // #5e │ │ +42e486: 130e 2000 |01dd: const/16 v14, #int 32 // #20 │ │ +42e48a: 7130 c902 a90e |01df: invoke-static {v9, v10, v14}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ +42e490: 0a09 |01e2: move-result v9 │ │ +42e492: 6e20 4c5b 9f00 |01e3: invoke-virtual {v15, v9}, Landroid/widget/TextView;.setTextColor:(I)V // method@5b4c │ │ +42e498: 120e |01e6: const/4 v14, #int 0 // #0 │ │ +42e49a: 280d |01e7: goto 01f4 // +000d │ │ +42e49c: 1309 ff00 |01e8: const/16 v9, #int 255 // #ff │ │ +42e4a0: 130a 6f00 |01ea: const/16 v10, #int 111 // #6f │ │ +42e4a4: 120e |01ec: const/4 v14, #int 0 // #0 │ │ +42e4a6: 7130 c902 a90e |01ed: invoke-static {v9, v10, v14}, Landroid/graphics/Color;.rgb:(III)I // method@02c9 │ │ +42e4ac: 0a09 |01f0: move-result v9 │ │ +42e4ae: 6e20 4c5b 9f00 |01f1: invoke-virtual {v15, v9}, Landroid/widget/TextView;.setTextColor:(I)V // method@5b4c │ │ +42e4b4: 6e10 ff5c 0300 |01f4: invoke-virtual {v3}, Ljava/lang/StringBuilder;.length:()I // method@5cff │ │ +42e4ba: 0a09 |01f7: move-result v9 │ │ +42e4bc: 6e30 fd5c e309 |01f8: invoke-virtual {v3, v14, v9}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@5cfd │ │ +42e4c2: 1a09 df14 |01fb: const-string v9, "Control: " // string@14df │ │ +42e4c6: 6e20 f95c 9300 |01fd: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e4cc: 54c9 7155 |0200: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_statusControl:Ljava/lang/String; // field@5571 │ │ +42e4d0: 121a |0202: const/4 v10, #int 1 // #1 │ │ +42e4d2: 6e30 cd5c e90a |0203: invoke-virtual {v9, v14, v10}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ +42e4d8: 0c09 |0206: move-result-object v9 │ │ +42e4da: 6e10 d15c 0900 |0207: invoke-virtual {v9}, Ljava/lang/String;.toUpperCase:()Ljava/lang/String; // method@5cd1 │ │ +42e4e0: 0c09 |020a: move-result-object v9 │ │ +42e4e2: 6e20 f95c 9300 |020b: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e4e8: 54c9 7155 |020e: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_statusControl:Ljava/lang/String; // field@5571 │ │ +42e4ec: 6e20 cc5c a900 |0210: invoke-virtual {v9, v10}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ +42e4f2: 0c09 |0213: move-result-object v9 │ │ +42e4f4: 6e20 f95c 9300 |0214: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e4fa: 2804 |0217: goto 021b // +0004 │ │ +42e4fc: 6e20 f95c 5300 |0218: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e502: 1a05 0100 |021b: const-string v5, " │ │ " // string@0001 │ │ -42e50a: 6e20 f95c 5300 |021d: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e510: 1a09 754c |0220: const-string v9, "Status: " // string@4c75 │ │ -42e514: 6e20 f95c 9300 |0222: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e51a: 54c9 7055 |0225: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_status:Ljava/lang/String; // field@5570 │ │ -42e51e: 120a |0227: const/4 v10, #int 0 // #0 │ │ -42e520: 121e |0228: const/4 v14, #int 1 // #1 │ │ -42e522: 6e30 cd5c a90e |0229: invoke-virtual {v9, v10, v14}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ -42e528: 0c09 |022c: move-result-object v9 │ │ -42e52a: 6e10 d15c 0900 |022d: invoke-virtual {v9}, Ljava/lang/String;.toUpperCase:()Ljava/lang/String; // method@5cd1 │ │ -42e530: 0c09 |0230: move-result-object v9 │ │ -42e532: 6e20 f95c 9300 |0231: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e538: 54c9 7055 |0234: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_status:Ljava/lang/String; // field@5570 │ │ -42e53c: 6e20 cc5c e900 |0236: invoke-virtual {v9, v14}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ -42e542: 0c09 |0239: move-result-object v9 │ │ -42e544: 6e20 f95c 9300 |023a: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e54a: 2806 |023d: goto 0243 // +0006 │ │ -42e54c: 1a09 8617 |023e: const-string v9, "Disconnected" // string@1786 │ │ -42e550: 6e20 f95c 9300 |0240: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e556: 6e20 f95c 5300 |0243: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e55c: 54c9 6055 |0246: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_error:Ljava/lang/String; // field@5560 │ │ -42e560: 6e10 c35c 0900 |0248: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42e566: 0a09 |024b: move-result v9 │ │ -42e568: 3909 0f00 |024c: if-nez v9, 025b // +000f │ │ -42e56c: 1a09 6c19 |024e: const-string v9, "Error: " // string@196c │ │ -42e570: 6e20 f95c 9300 |0250: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e576: 54c9 6055 |0253: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_error:Ljava/lang/String; // field@5560 │ │ -42e57a: 6e20 f95c 9300 |0255: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e580: 6e20 f95c 5300 |0258: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e586: 54c9 6c55 |025b: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteIpAddress:Ljava/lang/String; // field@556c │ │ -42e58a: 6e20 f95c 9300 |025d: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e590: 54c9 6155 |0260: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_ipVersion:Ljava/lang/String; // field@5561 │ │ -42e594: 6e20 b85c 7900 |0262: invoke-virtual {v9, v7}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42e59a: 0a09 |0265: move-result v9 │ │ -42e59c: 3809 1200 |0266: if-eqz v9, 0278 // +0012 │ │ -42e5a0: 54c9 6e55 |0268: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ -42e5a4: 6e10 c35c 0900 |026a: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42e5aa: 0a09 |026d: move-result v9 │ │ -42e5ac: 3909 0a00 |026e: if-nez v9, 0278 // +000a │ │ -42e5b0: 6e20 f95c 6300 |0270: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e5b6: 54c9 6e55 |0273: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ -42e5ba: 6e20 f95c 9300 |0275: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e5c0: 6e20 f95c 8300 |0278: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e5c6: 54c9 6d55 |027b: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remotePort:Ljava/lang/String; // field@556d │ │ -42e5ca: 6e20 f95c 9300 |027d: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e5d0: 6e20 f95c 8300 |0280: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e5d6: 54c9 7255 |0283: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_transport:Ljava/lang/String; // field@5572 │ │ -42e5da: 6e20 f95c 9300 |0285: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e5e0: 54c9 6255 |0288: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_localIpAddress:Ljava/lang/String; // field@5562 │ │ -42e5e4: 6e10 c35c 0900 |028a: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42e5ea: 0a09 |028d: move-result v9 │ │ -42e5ec: 3909 1a00 |028e: if-nez v9, 02a8 // +001a │ │ -42e5f0: 54c9 6355 |0290: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_localPort:Ljava/lang/String; // field@5563 │ │ -42e5f4: 6e10 c35c 0900 |0292: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42e5fa: 0a09 |0295: move-result v9 │ │ -42e5fc: 3909 1200 |0296: if-nez v9, 02a8 // +0012 │ │ -42e600: 6e20 f95c 5300 |0298: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e606: 54c9 6255 |029b: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_localIpAddress:Ljava/lang/String; // field@5562 │ │ -42e60a: 6e20 f95c 9300 |029d: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e610: 6e20 f95c 8300 |02a0: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e616: 54c9 6355 |02a3: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_localPort:Ljava/lang/String; // field@5563 │ │ -42e61a: 6e20 f95c 9300 |02a5: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e620: 1a09 1200 |02a8: const-string v9, " │ │ +42e506: 6e20 f95c 5300 |021d: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e50c: 1a09 754c |0220: const-string v9, "Status: " // string@4c75 │ │ +42e510: 6e20 f95c 9300 |0222: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e516: 54c9 7055 |0225: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_status:Ljava/lang/String; // field@5570 │ │ +42e51a: 120a |0227: const/4 v10, #int 0 // #0 │ │ +42e51c: 121e |0228: const/4 v14, #int 1 // #1 │ │ +42e51e: 6e30 cd5c a90e |0229: invoke-virtual {v9, v10, v14}, Ljava/lang/String;.substring:(II)Ljava/lang/String; // method@5ccd │ │ +42e524: 0c09 |022c: move-result-object v9 │ │ +42e526: 6e10 d15c 0900 |022d: invoke-virtual {v9}, Ljava/lang/String;.toUpperCase:()Ljava/lang/String; // method@5cd1 │ │ +42e52c: 0c09 |0230: move-result-object v9 │ │ +42e52e: 6e20 f95c 9300 |0231: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e534: 54c9 7055 |0234: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_status:Ljava/lang/String; // field@5570 │ │ +42e538: 6e20 cc5c e900 |0236: invoke-virtual {v9, v14}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ +42e53e: 0c09 |0239: move-result-object v9 │ │ +42e540: 6e20 f95c 9300 |023a: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e546: 2806 |023d: goto 0243 // +0006 │ │ +42e548: 1a09 8617 |023e: const-string v9, "Disconnected" // string@1786 │ │ +42e54c: 6e20 f95c 9300 |0240: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e552: 6e20 f95c 5300 |0243: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e558: 54c9 6055 |0246: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_error:Ljava/lang/String; // field@5560 │ │ +42e55c: 6e10 c35c 0900 |0248: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42e562: 0a09 |024b: move-result v9 │ │ +42e564: 3909 0f00 |024c: if-nez v9, 025b // +000f │ │ +42e568: 1a09 6c19 |024e: const-string v9, "Error: " // string@196c │ │ +42e56c: 6e20 f95c 9300 |0250: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e572: 54c9 6055 |0253: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_error:Ljava/lang/String; // field@5560 │ │ +42e576: 6e20 f95c 9300 |0255: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e57c: 6e20 f95c 5300 |0258: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e582: 54c9 6c55 |025b: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteIpAddress:Ljava/lang/String; // field@556c │ │ +42e586: 6e20 f95c 9300 |025d: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e58c: 54c9 6155 |0260: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_ipVersion:Ljava/lang/String; // field@5561 │ │ +42e590: 6e20 b85c 7900 |0262: invoke-virtual {v9, v7}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42e596: 0a09 |0265: move-result v9 │ │ +42e598: 3809 1200 |0266: if-eqz v9, 0278 // +0012 │ │ +42e59c: 54c9 6e55 |0268: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ +42e5a0: 6e10 c35c 0900 |026a: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42e5a6: 0a09 |026d: move-result v9 │ │ +42e5a8: 3909 0a00 |026e: if-nez v9, 0278 // +000a │ │ +42e5ac: 6e20 f95c 6300 |0270: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e5b2: 54c9 6e55 |0273: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteScopeId:Ljava/lang/String; // field@556e │ │ +42e5b6: 6e20 f95c 9300 |0275: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e5bc: 6e20 f95c 8300 |0278: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e5c2: 54c9 6d55 |027b: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remotePort:Ljava/lang/String; // field@556d │ │ +42e5c6: 6e20 f95c 9300 |027d: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e5cc: 6e20 f95c 8300 |0280: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e5d2: 54c9 7255 |0283: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_transport:Ljava/lang/String; // field@5572 │ │ +42e5d6: 6e20 f95c 9300 |0285: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e5dc: 54c9 6255 |0288: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_localIpAddress:Ljava/lang/String; // field@5562 │ │ +42e5e0: 6e10 c35c 0900 |028a: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42e5e6: 0a09 |028d: move-result v9 │ │ +42e5e8: 3909 1a00 |028e: if-nez v9, 02a8 // +001a │ │ +42e5ec: 54c9 6355 |0290: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_localPort:Ljava/lang/String; // field@5563 │ │ +42e5f0: 6e10 c35c 0900 |0292: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42e5f6: 0a09 |0295: move-result v9 │ │ +42e5f8: 3909 1200 |0296: if-nez v9, 02a8 // +0012 │ │ +42e5fc: 6e20 f95c 5300 |0298: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e602: 54c9 6255 |029b: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_localIpAddress:Ljava/lang/String; // field@5562 │ │ +42e606: 6e20 f95c 9300 |029d: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e60c: 6e20 f95c 8300 |02a0: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e612: 54c9 6355 |02a3: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_localPort:Ljava/lang/String; // field@5563 │ │ +42e616: 6e20 f95c 9300 |02a5: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e61c: 1a09 1200 |02a8: const-string v9, " │ │ Passthrough: " // string@0012 │ │ -42e624: 6e20 f95c 9300 |02aa: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e62a: 54c9 6755 |02ad: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_passthrough:Ljava/lang/String; // field@5567 │ │ -42e62e: 6e20 f95c 9300 |02af: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e634: 1a09 1300 |02b2: const-string v9, " │ │ +42e620: 6e20 f95c 9300 |02aa: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e626: 54c9 6755 |02ad: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_passthrough:Ljava/lang/String; // field@5567 │ │ +42e62a: 6e20 f95c 9300 |02af: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e630: 1a09 1300 |02b2: const-string v9, " │ │ Proxy: " // string@0013 │ │ -42e638: 6e20 f95c 9300 |02b4: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e63e: 54c9 6855 |02b7: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyIpAddress:Ljava/lang/String; // field@5568 │ │ -42e642: 6e10 c35c 0900 |02b9: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42e648: 0a09 |02bc: move-result v9 │ │ -42e64a: 3909 1f00 |02bd: if-nez v9, 02dc // +001f │ │ -42e64e: 54c9 6955 |02bf: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyPort:Ljava/lang/String; // field@5569 │ │ -42e652: 6e10 c35c 0900 |02c1: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42e658: 0a09 |02c4: move-result v9 │ │ -42e65a: 3909 1700 |02c5: if-nez v9, 02dc // +0017 │ │ -42e65e: 54c9 6855 |02c7: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyIpAddress:Ljava/lang/String; // field@5568 │ │ -42e662: 6e20 f95c 9300 |02c9: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e668: 6e20 f95c 8300 |02cc: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e66e: 54c9 6955 |02cf: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyPort:Ljava/lang/String; // field@5569 │ │ -42e672: 6e20 f95c 9300 |02d1: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e678: 6e20 f95c 8300 |02d4: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e67e: 54c9 6a55 |02d7: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyType:Ljava/lang/String; // field@556a │ │ -42e682: 6e20 f95c 9300 |02d9: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e688: 6e10 da5a 0400 |02dc: invoke-virtual {v4}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42e68e: 0a09 |02df: move-result v9 │ │ -42e690: 3809 3900 |02e0: if-eqz v9, 0319 // +0039 │ │ -42e694: 54c9 6b55 |02e2: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteCertificate:[B // field@556b │ │ -42e698: 3809 2000 |02e4: if-eqz v9, 0304 // +0020 │ │ -42e69c: 54c9 6b55 |02e6: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteCertificate:[B // field@556b │ │ -42e6a0: 2199 |02e8: array-length v9, v9 │ │ -42e6a2: 3d09 1b00 |02e9: if-lez v9, 0304 // +001b │ │ -42e6a6: 6e20 f95c 5300 |02eb: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e6ac: 1a09 cd46 |02ee: const-string v9, "Remote Certificate's Fingerprint: " // string@46cd │ │ -42e6b0: 6e20 f95c 9300 |02f0: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e6b6: 54c9 6b55 |02f3: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteCertificate:[B // field@556b │ │ -42e6ba: 7110 f4bb 0900 |02f5: invoke-static {v9}, Lorg/purple/smoke/Miscellaneous;.pemFormat:([B)Ljava/lang/String; // method@bbf4 │ │ -42e6c0: 0c09 |02f8: move-result-object v9 │ │ -42e6c2: 6e10 bc5c 0900 |02f9: invoke-virtual {v9}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -42e6c8: 0c09 |02fc: move-result-object v9 │ │ -42e6ca: 7110 8ab9 0900 |02fd: invoke-static {v9}, Lorg/purple/smoke/Cryptography;.fingerPrint:([B)Ljava/lang/String; // method@b98a │ │ -42e6d0: 0c09 |0300: move-result-object v9 │ │ -42e6d2: 6e20 f95c 9300 |0301: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e6d8: 54c9 6f55 |0304: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_sessionCipher:Ljava/lang/String; // field@556f │ │ -42e6dc: 6e10 c35c 0900 |0306: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42e6e2: 0a09 |0309: move-result v9 │ │ -42e6e4: 3909 0f00 |030a: if-nez v9, 0319 // +000f │ │ -42e6e8: 6e20 f95c 5300 |030c: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e6ee: 1a09 424b |030f: const-string v9, "Session Cipher: " // string@4b42 │ │ -42e6f2: 6e20 f95c 9300 |0311: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e6f8: 54c9 6f55 |0314: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_sessionCipher:Ljava/lang/String; // field@556f │ │ -42e6fc: 6e20 f95c 9300 |0316: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e702: 6e20 f95c 5300 |0319: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e708: 1a09 754e |031c: const-string v9, "Temp. Queued: " // string@4e75 │ │ -42e70c: 6e20 f95c 9300 |031e: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e712: 54c9 5f55 |0321: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_echoQueueSize:Ljava/lang/String; // field@555f │ │ -42e716: 6e20 f95c 9300 |0323: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e71c: 1a09 a700 |0326: const-string v9, " / " // string@00a7 │ │ -42e720: 6e20 f95c 9300 |0328: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e726: 1309 0001 |032b: const/16 v9, #int 256 // #100 │ │ -42e72a: 6e20 f45c 9300 |032d: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ -42e730: 6e20 f95c 5300 |0330: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e736: 1a09 fd1d |0333: const-string v9, "In: " // string@1dfd │ │ -42e73a: 6e20 f95c 9300 |0335: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e740: 54c9 5d55 |0338: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_bytesRead:Ljava/lang/String; // field@555d │ │ -42e744: 7110 edbb 0900 |033a: invoke-static {v9}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbed │ │ -42e74a: 0c09 |033d: move-result-object v9 │ │ -42e74c: 6e20 f95c 9300 |033e: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e752: 6e20 f95c 5300 |0341: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e758: 1a09 b942 |0344: const-string v9, "Out: " // string@42b9 │ │ -42e75c: 6e20 f95c 9300 |0346: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e762: 54c9 5e55 |0349: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_bytesWritten:Ljava/lang/String; // field@555e │ │ -42e766: 7110 edbb 0900 |034b: invoke-static {v9}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbed │ │ -42e76c: 0c09 |034e: move-result-object v9 │ │ -42e76e: 6e20 f95c 9300 |034f: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e774: 6e20 f95c 5300 |0352: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e77a: 1a09 ba42 |0355: const-string v9, "Outbound Queued: " // string@42ba │ │ -42e77e: 6e20 f95c 9300 |0357: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e784: 53c9 6655 |035a: iget-wide v9, v12, Lorg/purple/smoke/NeighborElement;.m_outboundQueued:J // field@5566 │ │ -42e788: 6e30 f55c 930a |035c: invoke-virtual {v3, v9, v10}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@5cf5 │ │ -42e78e: 6e20 f95c 5300 |035f: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e794: 1a05 9250 |0362: const-string v5, "Uptime: " // string@5092 │ │ -42e798: 6e20 f95c 5300 |0364: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e79e: 54c5 7355 |0367: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_uptime:Ljava/lang/String; // field@5573 │ │ -42e7a2: 7110 675c 0500 |0369: invoke-static {v5}, Ljava/lang/Long;.parseLong:(Ljava/lang/String;)J // method@5c67 │ │ -42e7a8: 0b09 |036c: move-result-wide v9 │ │ -42e7aa: 7100 5060 0000 |036d: invoke-static {}, Ljava/util/Locale;.getDefault:()Ljava/util/Locale; // method@6050 │ │ -42e7b0: 0c05 |0370: move-result-object v5 │ │ -42e7b2: 1a0c 1403 |0371: const-string v12, "%d:%02d" // string@0314 │ │ -42e7b6: 122e |0373: const/4 v14, #int 2 // #2 │ │ -42e7b8: 23ee a61b |0374: new-array v14, v14, [Ljava/lang/Object; // type@1ba6 │ │ -42e7bc: 6200 f12c |0376: sget-object v0, Ljava/util/concurrent/TimeUnit;.NANOSECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf1 │ │ -42e7c0: 6e30 d460 900a |0378: invoke-virtual {v0, v9, v10}, Ljava/util/concurrent/TimeUnit;.toMinutes:(J)J // method@60d4 │ │ -42e7c6: 0b14 |037b: move-result-wide v20 │ │ -42e7c8: 7702 6f5c 1400 |037c: invoke-static/range {v20, v21}, Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long; // method@5c6f │ │ -42e7ce: 0c00 |037f: move-result-object v0 │ │ -42e7d0: 1311 0000 |0380: const/16 v17, #int 0 // #0 │ │ -42e7d4: 4d00 0e11 |0382: aput-object v0, v14, v17 │ │ -42e7d8: 6200 f12c |0384: sget-object v0, Ljava/util/concurrent/TimeUnit;.NANOSECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf1 │ │ -42e7dc: 6e30 d660 900a |0386: invoke-virtual {v0, v9, v10}, Ljava/util/concurrent/TimeUnit;.toSeconds:(J)J // method@60d6 │ │ -42e7e2: 0b14 |0389: move-result-wide v20 │ │ -42e7e4: 6200 f02c |038a: sget-object v0, Ljava/util/concurrent/TimeUnit;.MINUTES:Ljava/util/concurrent/TimeUnit; // field@2cf0 │ │ -42e7e8: 081a 0400 |038c: move-object/from16 v26, v4 │ │ -42e7ec: 6204 f12c |038e: sget-object v4, Ljava/util/concurrent/TimeUnit;.NANOSECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf1 │ │ -42e7f0: 6e30 d460 940a |0390: invoke-virtual {v4, v9, v10}, Ljava/util/concurrent/TimeUnit;.toMinutes:(J)J // method@60d4 │ │ -42e7f6: 0b09 |0393: move-result-wide v9 │ │ -42e7f8: 6e30 d660 900a |0394: invoke-virtual {v0, v9, v10}, Ljava/util/concurrent/TimeUnit;.toSeconds:(J)J // method@60d6 │ │ -42e7fe: 0b09 |0397: move-result-wide v9 │ │ -42e800: 9c14 1409 |0398: sub-long v20, v20, v9 │ │ -42e804: 7702 6f5c 1400 |039a: invoke-static/range {v20, v21}, Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long; // method@5c6f │ │ -42e80a: 0c00 |039d: move-result-object v0 │ │ -42e80c: 1214 |039e: const/4 v4, #int 1 // #1 │ │ -42e80e: 4d00 0e04 |039f: aput-object v0, v14, v4 │ │ -42e812: 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 │ │ -42e818: 0c00 |03a4: move-result-object v0 │ │ -42e81a: 6e20 f95c 0300 |03a5: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e820: 2809 |03a8: goto 03b1 // +0009 │ │ -42e822: 081a 0400 |03a9: move-object/from16 v26, v4 │ │ -42e826: 1214 |03ab: const/4 v4, #int 1 // #1 │ │ -42e828: 1a00 8305 |03ac: const-string v0, "0:00" // string@0583 │ │ -42e82c: 6e20 f95c 0300 |03ae: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e832: 1a00 c900 |03b1: const-string v0, " Min. │ │ +42e634: 6e20 f95c 9300 |02b4: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e63a: 54c9 6855 |02b7: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyIpAddress:Ljava/lang/String; // field@5568 │ │ +42e63e: 6e10 c35c 0900 |02b9: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42e644: 0a09 |02bc: move-result v9 │ │ +42e646: 3909 1f00 |02bd: if-nez v9, 02dc // +001f │ │ +42e64a: 54c9 6955 |02bf: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyPort:Ljava/lang/String; // field@5569 │ │ +42e64e: 6e10 c35c 0900 |02c1: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42e654: 0a09 |02c4: move-result v9 │ │ +42e656: 3909 1700 |02c5: if-nez v9, 02dc // +0017 │ │ +42e65a: 54c9 6855 |02c7: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyIpAddress:Ljava/lang/String; // field@5568 │ │ +42e65e: 6e20 f95c 9300 |02c9: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e664: 6e20 f95c 8300 |02cc: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e66a: 54c9 6955 |02cf: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyPort:Ljava/lang/String; // field@5569 │ │ +42e66e: 6e20 f95c 9300 |02d1: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e674: 6e20 f95c 8300 |02d4: invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e67a: 54c9 6a55 |02d7: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_proxyType:Ljava/lang/String; // field@556a │ │ +42e67e: 6e20 f95c 9300 |02d9: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e684: 6e10 da5a 0400 |02dc: invoke-virtual {v4}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42e68a: 0a09 |02df: move-result v9 │ │ +42e68c: 3809 3900 |02e0: if-eqz v9, 0319 // +0039 │ │ +42e690: 54c9 6b55 |02e2: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteCertificate:[B // field@556b │ │ +42e694: 3809 2000 |02e4: if-eqz v9, 0304 // +0020 │ │ +42e698: 54c9 6b55 |02e6: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteCertificate:[B // field@556b │ │ +42e69c: 2199 |02e8: array-length v9, v9 │ │ +42e69e: 3d09 1b00 |02e9: if-lez v9, 0304 // +001b │ │ +42e6a2: 6e20 f95c 5300 |02eb: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e6a8: 1a09 cd46 |02ee: const-string v9, "Remote Certificate's Fingerprint: " // string@46cd │ │ +42e6ac: 6e20 f95c 9300 |02f0: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e6b2: 54c9 6b55 |02f3: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_remoteCertificate:[B // field@556b │ │ +42e6b6: 7110 f4bb 0900 |02f5: invoke-static {v9}, Lorg/purple/smoke/Miscellaneous;.pemFormat:([B)Ljava/lang/String; // method@bbf4 │ │ +42e6bc: 0c09 |02f8: move-result-object v9 │ │ +42e6be: 6e10 bc5c 0900 |02f9: invoke-virtual {v9}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +42e6c4: 0c09 |02fc: move-result-object v9 │ │ +42e6c6: 7110 8ab9 0900 |02fd: invoke-static {v9}, Lorg/purple/smoke/Cryptography;.fingerPrint:([B)Ljava/lang/String; // method@b98a │ │ +42e6cc: 0c09 |0300: move-result-object v9 │ │ +42e6ce: 6e20 f95c 9300 |0301: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e6d4: 54c9 6f55 |0304: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_sessionCipher:Ljava/lang/String; // field@556f │ │ +42e6d8: 6e10 c35c 0900 |0306: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42e6de: 0a09 |0309: move-result v9 │ │ +42e6e0: 3909 0f00 |030a: if-nez v9, 0319 // +000f │ │ +42e6e4: 6e20 f95c 5300 |030c: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e6ea: 1a09 424b |030f: const-string v9, "Session Cipher: " // string@4b42 │ │ +42e6ee: 6e20 f95c 9300 |0311: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e6f4: 54c9 6f55 |0314: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_sessionCipher:Ljava/lang/String; // field@556f │ │ +42e6f8: 6e20 f95c 9300 |0316: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e6fe: 6e20 f95c 5300 |0319: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e704: 1a09 754e |031c: const-string v9, "Temp. Queued: " // string@4e75 │ │ +42e708: 6e20 f95c 9300 |031e: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e70e: 54c9 5f55 |0321: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_echoQueueSize:Ljava/lang/String; // field@555f │ │ +42e712: 6e20 f95c 9300 |0323: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e718: 1a09 a700 |0326: const-string v9, " / " // string@00a7 │ │ +42e71c: 6e20 f95c 9300 |0328: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e722: 1309 0001 |032b: const/16 v9, #int 256 // #100 │ │ +42e726: 6e20 f45c 9300 |032d: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@5cf4 │ │ +42e72c: 6e20 f95c 5300 |0330: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e732: 1a09 fd1d |0333: const-string v9, "In: " // string@1dfd │ │ +42e736: 6e20 f95c 9300 |0335: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e73c: 54c9 5d55 |0338: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_bytesRead:Ljava/lang/String; // field@555d │ │ +42e740: 7110 edbb 0900 |033a: invoke-static {v9}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbed │ │ +42e746: 0c09 |033d: move-result-object v9 │ │ +42e748: 6e20 f95c 9300 |033e: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e74e: 6e20 f95c 5300 |0341: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e754: 1a09 b942 |0344: const-string v9, "Out: " // string@42b9 │ │ +42e758: 6e20 f95c 9300 |0346: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e75e: 54c9 5e55 |0349: iget-object v9, v12, Lorg/purple/smoke/NeighborElement;.m_bytesWritten:Ljava/lang/String; // field@555e │ │ +42e762: 7110 edbb 0900 |034b: invoke-static {v9}, Lorg/purple/smoke/Miscellaneous;.formattedDigitalInformation:(Ljava/lang/String;)Ljava/lang/String; // method@bbed │ │ +42e768: 0c09 |034e: move-result-object v9 │ │ +42e76a: 6e20 f95c 9300 |034f: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e770: 6e20 f95c 5300 |0352: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e776: 1a09 ba42 |0355: const-string v9, "Outbound Queued: " // string@42ba │ │ +42e77a: 6e20 f95c 9300 |0357: invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e780: 53c9 6655 |035a: iget-wide v9, v12, Lorg/purple/smoke/NeighborElement;.m_outboundQueued:J // field@5566 │ │ +42e784: 6e30 f55c 930a |035c: invoke-virtual {v3, v9, v10}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@5cf5 │ │ +42e78a: 6e20 f95c 5300 |035f: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e790: 1a05 9250 |0362: const-string v5, "Uptime: " // string@5092 │ │ +42e794: 6e20 f95c 5300 |0364: invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e79a: 54c5 7355 |0367: iget-object v5, v12, Lorg/purple/smoke/NeighborElement;.m_uptime:Ljava/lang/String; // field@5573 │ │ +42e79e: 7110 675c 0500 |0369: invoke-static {v5}, Ljava/lang/Long;.parseLong:(Ljava/lang/String;)J // method@5c67 │ │ +42e7a4: 0b09 |036c: move-result-wide v9 │ │ +42e7a6: 7100 5060 0000 |036d: invoke-static {}, Ljava/util/Locale;.getDefault:()Ljava/util/Locale; // method@6050 │ │ +42e7ac: 0c05 |0370: move-result-object v5 │ │ +42e7ae: 1a0c 1403 |0371: const-string v12, "%d:%02d" // string@0314 │ │ +42e7b2: 122e |0373: const/4 v14, #int 2 // #2 │ │ +42e7b4: 23ee a61b |0374: new-array v14, v14, [Ljava/lang/Object; // type@1ba6 │ │ +42e7b8: 6200 f12c |0376: sget-object v0, Ljava/util/concurrent/TimeUnit;.NANOSECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf1 │ │ +42e7bc: 6e30 d460 900a |0378: invoke-virtual {v0, v9, v10}, Ljava/util/concurrent/TimeUnit;.toMinutes:(J)J // method@60d4 │ │ +42e7c2: 0b14 |037b: move-result-wide v20 │ │ +42e7c4: 7702 6f5c 1400 |037c: invoke-static/range {v20, v21}, Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long; // method@5c6f │ │ +42e7ca: 0c00 |037f: move-result-object v0 │ │ +42e7cc: 1311 0000 |0380: const/16 v17, #int 0 // #0 │ │ +42e7d0: 4d00 0e11 |0382: aput-object v0, v14, v17 │ │ +42e7d4: 6200 f12c |0384: sget-object v0, Ljava/util/concurrent/TimeUnit;.NANOSECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf1 │ │ +42e7d8: 6e30 d660 900a |0386: invoke-virtual {v0, v9, v10}, Ljava/util/concurrent/TimeUnit;.toSeconds:(J)J // method@60d6 │ │ +42e7de: 0b14 |0389: move-result-wide v20 │ │ +42e7e0: 6200 f02c |038a: sget-object v0, Ljava/util/concurrent/TimeUnit;.MINUTES:Ljava/util/concurrent/TimeUnit; // field@2cf0 │ │ +42e7e4: 081a 0400 |038c: move-object/from16 v26, v4 │ │ +42e7e8: 6204 f12c |038e: sget-object v4, Ljava/util/concurrent/TimeUnit;.NANOSECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf1 │ │ +42e7ec: 6e30 d460 940a |0390: invoke-virtual {v4, v9, v10}, Ljava/util/concurrent/TimeUnit;.toMinutes:(J)J // method@60d4 │ │ +42e7f2: 0b09 |0393: move-result-wide v9 │ │ +42e7f4: 6e30 d660 900a |0394: invoke-virtual {v0, v9, v10}, Ljava/util/concurrent/TimeUnit;.toSeconds:(J)J // method@60d6 │ │ +42e7fa: 0b09 |0397: move-result-wide v9 │ │ +42e7fc: 9c14 1409 |0398: sub-long v20, v20, v9 │ │ +42e800: 7702 6f5c 1400 |039a: invoke-static/range {v20, v21}, Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long; // method@5c6f │ │ +42e806: 0c00 |039d: move-result-object v0 │ │ +42e808: 1214 |039e: const/4 v4, #int 1 // #1 │ │ +42e80a: 4d00 0e04 |039f: aput-object v0, v14, v4 │ │ +42e80e: 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 │ │ +42e814: 0c00 |03a4: move-result-object v0 │ │ +42e816: 6e20 f95c 0300 |03a5: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e81c: 2809 |03a8: goto 03b1 // +0009 │ │ +42e81e: 081a 0400 |03a9: move-object/from16 v26, v4 │ │ +42e822: 1214 |03ab: const/4 v4, #int 1 // #1 │ │ +42e824: 1a00 8305 |03ac: const-string v0, "0:00" // string@0583 │ │ +42e828: 6e20 f95c 0300 |03ae: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e82e: 1a00 c900 |03b1: const-string v0, " Min. │ │ " // string@00c9 │ │ -42e836: 6e20 f95c 0300 |03b3: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42e83c: 1300 1000 |03b6: const/16 v0, #int 16 // #10 │ │ -42e840: 6e20 365b 0f00 |03b8: invoke-virtual {v15, v0}, Landroid/widget/TextView;.setGravity:(I)V // method@5b36 │ │ -42e846: 2200 940a |03bb: new-instance v0, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ -42e84a: 1505 803f |03bd: const/high16 v5, #int 1065353216 // #3f80 │ │ -42e84e: 12e9 |03bf: const/4 v9, #int -2 // #fe │ │ -42e850: 120a |03c0: const/4 v10, #int 0 // #0 │ │ -42e852: 7040 f95a a059 |03c1: invoke-direct {v0, v10, v9, v5}, Landroid/widget/TableRow$LayoutParams;.:(IIF)V // method@5af9 │ │ -42e858: 6e20 3b5b 0f00 |03c4: invoke-virtual {v15, v0}, Landroid/widget/TextView;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5b3b │ │ -42e85e: 6e20 495b 3f00 |03c7: invoke-virtual {v15, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42e864: 6200 6200 |03ca: sget-object v0, Landroid/graphics/Typeface;.MONOSPACE:Landroid/graphics/Typeface; // field@0062 │ │ -42e868: 6e20 525b 0f00 |03cc: invoke-virtual {v15, v0}, Landroid/widget/TextView;.setTypeface:(Landroid/graphics/Typeface;)V // method@5b52 │ │ -42e86e: 1300 f401 |03cf: const/16 v0, #int 500 // #1f4 │ │ -42e872: 6e20 545b 0f00 |03d1: invoke-virtual {v15, v0}, Landroid/widget/TextView;.setWidth:(I)V // method@5b54 │ │ -42e878: 3801 0b00 |03d4: if-eqz v1, 03df // +000b │ │ -42e87c: 6e20 fb5a d100 |03d6: invoke-virtual {v1, v13}, Landroid/widget/TableRow;.addView:(Landroid/view/View;)V // method@5afb │ │ -42e882: 6e20 fb5a f100 |03d9: invoke-virtual {v1, v15}, Landroid/widget/TableRow;.addView:(Landroid/view/View;)V // method@5afb │ │ -42e888: 6e30 f35a 120b |03dc: invoke-virtual {v2, v1, v11}, Landroid/widget/TableLayout;.addView:(Landroid/view/View;I)V // method@5af3 │ │ -42e88e: d80b 0b01 |03df: add-int/lit8 v11, v11, #int 1 // #01 │ │ -42e892: 0800 1900 |03e1: move-object/from16 v0, v25 │ │ -42e896: 0804 1a00 |03e3: move-object/from16 v4, v26 │ │ -42e89a: 080a 1200 |03e5: move-object/from16 v10, v18 │ │ -42e89e: 0801 1300 |03e7: move-object/from16 v1, v19 │ │ -42e8a2: 1215 |03e9: const/4 v5, #int 1 // #1 │ │ -42e8a4: 1209 |03ea: const/4 v9, #int 0 // #0 │ │ -42e8a6: 2900 cdfc |03eb: goto/16 00b8 // -0333 │ │ -42e8aa: 0813 0100 |03ed: move-object/from16 v19, v1 │ │ -42e8ae: 7401 a15f 1300 |03ef: invoke-virtual/range {v19}, Ljava/util/ArrayList;.clear:()V // method@5fa1 │ │ -42e8b4: 0e00 |03f2: return-void │ │ -42e8b6: 6e10 f65a 0200 |03f3: invoke-virtual {v2}, Landroid/widget/TableLayout;.removeAllViews:()V // method@5af6 │ │ -42e8bc: 0e00 |03f6: return-void │ │ +42e832: 6e20 f95c 0300 |03b3: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42e838: 1300 1000 |03b6: const/16 v0, #int 16 // #10 │ │ +42e83c: 6e20 365b 0f00 |03b8: invoke-virtual {v15, v0}, Landroid/widget/TextView;.setGravity:(I)V // method@5b36 │ │ +42e842: 2200 940a |03bb: new-instance v0, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ +42e846: 1505 803f |03bd: const/high16 v5, #int 1065353216 // #3f80 │ │ +42e84a: 12e9 |03bf: const/4 v9, #int -2 // #fe │ │ +42e84c: 120a |03c0: const/4 v10, #int 0 // #0 │ │ +42e84e: 7040 f95a a059 |03c1: invoke-direct {v0, v10, v9, v5}, Landroid/widget/TableRow$LayoutParams;.:(IIF)V // method@5af9 │ │ +42e854: 6e20 3b5b 0f00 |03c4: invoke-virtual {v15, v0}, Landroid/widget/TextView;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5b3b │ │ +42e85a: 6e20 495b 3f00 |03c7: invoke-virtual {v15, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42e860: 6200 6200 |03ca: sget-object v0, Landroid/graphics/Typeface;.MONOSPACE:Landroid/graphics/Typeface; // field@0062 │ │ +42e864: 6e20 525b 0f00 |03cc: invoke-virtual {v15, v0}, Landroid/widget/TextView;.setTypeface:(Landroid/graphics/Typeface;)V // method@5b52 │ │ +42e86a: 1300 f401 |03cf: const/16 v0, #int 500 // #1f4 │ │ +42e86e: 6e20 545b 0f00 |03d1: invoke-virtual {v15, v0}, Landroid/widget/TextView;.setWidth:(I)V // method@5b54 │ │ +42e874: 3801 0b00 |03d4: if-eqz v1, 03df // +000b │ │ +42e878: 6e20 fb5a d100 |03d6: invoke-virtual {v1, v13}, Landroid/widget/TableRow;.addView:(Landroid/view/View;)V // method@5afb │ │ +42e87e: 6e20 fb5a f100 |03d9: invoke-virtual {v1, v15}, Landroid/widget/TableRow;.addView:(Landroid/view/View;)V // method@5afb │ │ +42e884: 6e30 f35a 120b |03dc: invoke-virtual {v2, v1, v11}, Landroid/widget/TableLayout;.addView:(Landroid/view/View;I)V // method@5af3 │ │ +42e88a: d80b 0b01 |03df: add-int/lit8 v11, v11, #int 1 // #01 │ │ +42e88e: 0800 1900 |03e1: move-object/from16 v0, v25 │ │ +42e892: 0804 1a00 |03e3: move-object/from16 v4, v26 │ │ +42e896: 080a 1200 |03e5: move-object/from16 v10, v18 │ │ +42e89a: 0801 1300 |03e7: move-object/from16 v1, v19 │ │ +42e89e: 1215 |03e9: const/4 v5, #int 1 // #1 │ │ +42e8a0: 1209 |03ea: const/4 v9, #int 0 // #0 │ │ +42e8a2: 2900 cdfc |03eb: goto/16 00b8 // -0333 │ │ +42e8a6: 0813 0100 |03ed: move-object/from16 v19, v1 │ │ +42e8aa: 7401 a15f 1300 |03ef: invoke-virtual/range {v19}, Ljava/util/ArrayList;.clear:()V // method@5fa1 │ │ +42e8b0: 0e00 |03f2: return-void │ │ +42e8b2: 6e10 f65a 0200 |03f3: invoke-virtual {v2}, Landroid/widget/TableLayout;.removeAllViews:()V // method@5af6 │ │ +42e8b8: 0e00 |03f6: return-void │ │ catches : 5 │ │ 0x0200 - 0x0217 │ │ Ljava/lang/Exception; -> 0x0218 │ │ 0x0225 - 0x023d │ │ Ljava/lang/Exception; -> 0x023e │ │ 0x0367 - 0x038c │ │ Ljava/lang/Exception; -> 0x03a9 │ │ @@ -1571094,26 +1571093,26 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 23 16-bit code units │ │ -42e904: |[42e904] org.purple.smoke.Settings.populateOzone:()V │ │ -42e914: 1400 b700 087f |0000: const v0, #float 1.80779e+38 // #7f0800b7 │ │ -42e91a: 6e20 eabc 0400 |0003: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42e920: 0c00 |0006: move-result-object v0 │ │ -42e922: 1f00 970a |0007: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ -42e926: 5441 065f |0009: iget-object v1, v4, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42e92a: 6202 0a5f |000b: sget-object v2, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42e92e: 1a03 5892 |000d: const-string v3, "ozone_address" // string@9258 │ │ -42e932: 6e30 1bba 2103 |000f: invoke-virtual {v1, v2, v3}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42e938: 0c01 |0012: move-result-object v1 │ │ -42e93a: 6e20 495b 1000 |0013: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42e940: 0e00 |0016: return-void │ │ +42e900: |[42e900] org.purple.smoke.Settings.populateOzone:()V │ │ +42e910: 1400 b700 087f |0000: const v0, #float 1.80779e+38 // #7f0800b7 │ │ +42e916: 6e20 eabc 0400 |0003: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42e91c: 0c00 |0006: move-result-object v0 │ │ +42e91e: 1f00 970a |0007: check-cast v0, Landroid/widget/TextView; // type@0a97 │ │ +42e922: 5441 065f |0009: iget-object v1, v4, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42e926: 6202 0a5f |000b: sget-object v2, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42e92a: 1a03 5892 |000d: const-string v3, "ozone_address" // string@9258 │ │ +42e92e: 6e30 1bba 2103 |000f: invoke-virtual {v1, v2, v3}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42e934: 0c01 |0012: move-result-object v1 │ │ +42e936: 6e20 495b 1000 |0013: invoke-virtual {v0, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42e93c: 0e00 |0016: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=1192 │ │ 0x0009 line=1194 │ │ 0x000f line=1195 │ │ locals : │ │ 0x0000 - 0x0017 reg=4 this Lorg/purple/smoke/Settings; │ │ @@ -1571123,126 +1571122,126 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 17 │ │ ins : 1 │ │ outs : 5 │ │ insns size : 239 16-bit code units │ │ -42e944: |[42e944] org.purple.smoke.Settings.populateParticipants:()V │ │ -42e954: 0800 1000 |0000: move-object/from16 v0, v16 │ │ -42e958: 5401 065f |0002: iget-object v1, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42e95c: 6202 0a5f |0004: sget-object v2, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42e960: 1a03 0000 |0006: const-string v3, "" // string@0000 │ │ -42e964: 6e30 1fba 2103 |0008: invoke-virtual {v1, v2, v3}, Lorg/purple/smoke/Database;.readSipHashIds:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/util/ArrayList; // method@ba1f │ │ -42e96a: 0c01 |000b: move-result-object v1 │ │ -42e96c: 1402 bf00 087f |000c: const v2, #float 1.80779e+38 // #7f0800bf │ │ -42e972: 6e20 eabc 2000 |000f: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42e978: 0c03 |0012: move-result-object v3 │ │ -42e97a: 1f03 930a |0013: check-cast v3, Landroid/widget/TableLayout; // type@0a93 │ │ -42e97e: 6e10 f65a 0300 |0015: invoke-virtual {v3}, Landroid/widget/TableLayout;.removeAllViews:()V // method@5af6 │ │ -42e984: 3801 d600 |0018: if-eqz v1, 00ee // +00d6 │ │ -42e988: 6e10 a85f 0100 |001a: invoke-virtual {v1}, Ljava/util/ArrayList;.isEmpty:()Z // method@5fa8 │ │ -42e98e: 0a04 |001d: move-result v4 │ │ -42e990: 3804 0400 |001e: if-eqz v4, 0022 // +0004 │ │ -42e994: 2900 ce00 |0020: goto/16 00ee // +00ce │ │ -42e998: 6e10 a95f 0100 |0022: invoke-virtual {v1}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa9 │ │ -42e99e: 0c04 |0025: move-result-object v4 │ │ -42e9a0: 1205 |0026: const/4 v5, #int 0 // #0 │ │ -42e9a2: 1206 |0027: const/4 v6, #int 0 // #0 │ │ -42e9a4: 7210 1d60 0400 |0028: invoke-interface {v4}, Ljava/util/Iterator;.hasNext:()Z // method@601d │ │ -42e9aa: 0a07 |002b: move-result v7 │ │ -42e9ac: 3807 bf00 |002c: if-eqz v7, 00eb // +00bf │ │ -42e9b0: 7210 1e60 0400 |002e: invoke-interface {v4}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601e │ │ -42e9b6: 0c07 |0031: move-result-object v7 │ │ -42e9b8: 1f07 0c1b |0032: check-cast v7, Lorg/purple/smoke/SipHashIdElement; // type@1b0c │ │ -42e9bc: 3907 0300 |0034: if-nez v7, 0037 // +0003 │ │ -42e9c0: 28f2 |0036: goto 0028 // -000e │ │ -42e9c2: 5478 235f |0037: iget-object v8, v7, Lorg/purple/smoke/SipHashIdElement;.m_sipHashId:Ljava/lang/String; // field@5f23 │ │ -42e9c6: 7110 f5bb 0800 |0039: invoke-static {v8}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf5 │ │ -42e9cc: 0c08 |003c: move-result-object v8 │ │ -42e9ce: 2209 940a |003d: new-instance v9, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ -42e9d2: 12ea |003f: const/4 v10, #int -2 // #fe │ │ -42e9d4: 7020 f85a a900 |0040: invoke-direct {v9, v10}, Landroid/widget/TableRow$LayoutParams;.:(I)V // method@5af8 │ │ -42e9da: 220b 950a |0043: new-instance v11, Landroid/widget/TableRow; // type@0a95 │ │ -42e9de: 7020 fa5a 0b00 |0045: invoke-direct {v11, v0}, Landroid/widget/TableRow;.:(Landroid/content/Context;)V // method@5afa │ │ -42e9e4: 6e20 fe5a 9b00 |0048: invoke-virtual {v11, v9}, Landroid/widget/TableRow;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5afe │ │ -42e9ea: 1209 |004b: const/4 v9, #int 0 // #0 │ │ -42e9ec: 123c |004c: const/4 v12, #int 3 // #3 │ │ -42e9ee: 35c9 9700 |004d: if-ge v9, v12, 00e4 // +0097 │ │ -42e9f2: 220c 970a |004f: new-instance v12, Landroid/widget/TextView; // type@0a97 │ │ -42e9f6: 7020 ff5a 0c00 |0051: invoke-direct {v12, v0}, Landroid/widget/TextView;.:(Landroid/content/Context;)V // method@5aff │ │ -42e9fc: 527d 215f |0054: iget v13, v7, Lorg/purple/smoke/SipHashIdElement;.m_oid:I // field@5f21 │ │ -42ea00: 6e20 395b dc00 |0056: invoke-virtual {v12, v13}, Landroid/widget/TextView;.setId:(I)V // method@5b39 │ │ -42ea06: 12fd |0059: const/4 v13, #int -1 // #ff │ │ -42ea08: 130e 1000 |005a: const/16 v14, #int 16 // #10 │ │ -42ea0c: 150f 803f |005c: const/high16 v15, #int 1065353216 // #3f80 │ │ -42ea10: 3809 5b00 |005e: if-eqz v9, 00b9 // +005b │ │ -42ea14: 121a |0060: const/4 v10, #int 1 // #1 │ │ -42ea16: 32a9 2100 |0061: if-eq v9, v10, 0082 // +0021 │ │ -42ea1a: 122a |0063: const/4 v10, #int 2 // #2 │ │ -42ea1c: 32a9 0400 |0064: if-eq v9, v10, 0068 // +0004 │ │ -42ea20: 12ea |0066: const/4 v10, #int -2 // #fe │ │ -42ea22: 2867 |0067: goto 00ce // +0067 │ │ -42ea24: 130a 1100 |0068: const/16 v10, #int 17 // #11 │ │ -42ea28: 6e20 365b ac00 |006a: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setGravity:(I)V // method@5b36 │ │ -42ea2e: 220a 940a |006d: new-instance v10, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ -42ea32: 7040 f95a 5afd |006f: invoke-direct {v10, v5, v13, v15}, Landroid/widget/TableRow$LayoutParams;.:(IIF)V // method@5af9 │ │ -42ea38: 6e20 3b5b ac00 |0072: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5b3b │ │ -42ea3e: 6e30 485b 2c08 |0075: invoke-virtual {v12, v2, v8}, Landroid/widget/TextView;.setTag:(ILjava/lang/Object;)V // method@5b48 │ │ -42ea44: 527a 1e5f |0078: iget v10, v7, Lorg/purple/smoke/SipHashIdElement;.m_fiascoKeys:I // field@5f1e │ │ -42ea48: 7110 d55c 0a00 |007a: invoke-static {v10}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42ea4e: 0c0a |007d: move-result-object v10 │ │ -42ea50: 6e20 495b ac00 |007e: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42ea56: 28e5 |0081: goto 0066 // -001b │ │ -42ea58: 557a 1d5f |0082: iget-boolean v10, v7, Lorg/purple/smoke/SipHashIdElement;.m_epksCompleted:Z // field@5f1d │ │ -42ea5c: 380a 0d00 |0084: if-eqz v10, 0091 // +000d │ │ -42ea60: 557a 1f5f |0086: iget-boolean v10, v7, Lorg/purple/smoke/SipHashIdElement;.m_keysSigned:Z // field@5f1f │ │ -42ea64: 380a 0900 |0088: if-eqz v10, 0091 // +0009 │ │ -42ea68: 140a 7000 077f |008a: const v10, #float 1.79448e+38 // #7f070070 │ │ -42ea6e: 6e55 2f5b ac55 |008d: invoke-virtual {v12, v10, v5, v5, v5}, Landroid/widget/TextView;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@5b2f │ │ -42ea74: 2812 |0090: goto 00a2 // +0012 │ │ -42ea76: 557a 1d5f |0091: iget-boolean v10, v7, Lorg/purple/smoke/SipHashIdElement;.m_epksCompleted:Z // field@5f1d │ │ -42ea7a: 380a 0900 |0093: if-eqz v10, 009c // +0009 │ │ -42ea7e: 140a 6f00 077f |0095: const v10, #float 1.79448e+38 // #7f07006f │ │ -42ea84: 6e55 2f5b ac55 |0098: invoke-virtual {v12, v10, v5, v5, v5}, Landroid/widget/TextView;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@5b2f │ │ -42ea8a: 2807 |009b: goto 00a2 // +0007 │ │ -42ea8c: 140a 8c00 077f |009c: const v10, #float 1.79449e+38 // #7f07008c │ │ -42ea92: 6e55 2f5b ac55 |009f: invoke-virtual {v12, v10, v5, v5, v5}, Landroid/widget/TextView;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@5b2f │ │ -42ea98: 125a |00a2: const/4 v10, #int 5 // #5 │ │ -42ea9a: 6e20 2a5b ac00 |00a3: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setCompoundDrawablePadding:(I)V // method@5b2a │ │ -42eaa0: 6e20 365b ec00 |00a6: invoke-virtual {v12, v14}, Landroid/widget/TextView;.setGravity:(I)V // method@5b36 │ │ -42eaa6: 220a 940a |00a9: new-instance v10, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ -42eaaa: 12ed |00ab: const/4 v13, #int -2 // #fe │ │ -42eaac: 7040 f95a 5afd |00ac: invoke-direct {v10, v5, v13, v15}, Landroid/widget/TableRow$LayoutParams;.:(IIF)V // method@5af9 │ │ -42eab2: 6e20 3b5b ac00 |00af: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5b3b │ │ -42eab8: 6e30 485b 2c08 |00b2: invoke-virtual {v12, v2, v8}, Landroid/widget/TextView;.setTag:(ILjava/lang/Object;)V // method@5b48 │ │ -42eabe: 6e20 495b 8c00 |00b5: invoke-virtual {v12, v8}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42eac4: 28ae |00b8: goto 0066 // -0052 │ │ -42eac6: 6e20 365b ec00 |00b9: invoke-virtual {v12, v14}, Landroid/widget/TextView;.setGravity:(I)V // method@5b36 │ │ -42eacc: 220e 940a |00bc: new-instance v14, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ -42ead0: 7040 f95a 5efd |00be: invoke-direct {v14, v5, v13, v15}, Landroid/widget/TableRow$LayoutParams;.:(IIF)V // method@5af9 │ │ -42ead6: 6e20 3b5b ec00 |00c1: invoke-virtual {v12, v14}, Landroid/widget/TextView;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5b3b │ │ -42eadc: 547d 205f |00c4: iget-object v13, v7, Lorg/purple/smoke/SipHashIdElement;.m_name:Ljava/lang/String; // field@5f20 │ │ -42eae0: 6e30 485b 2c0d |00c6: invoke-virtual {v12, v2, v13}, Landroid/widget/TextView;.setTag:(ILjava/lang/Object;)V // method@5b48 │ │ -42eae6: 547d 205f |00c9: iget-object v13, v7, Lorg/purple/smoke/SipHashIdElement;.m_name:Ljava/lang/String; // field@5f20 │ │ -42eaea: 6e20 495b dc00 |00cb: invoke-virtual {v12, v13}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42eaf0: 140d db00 087f |00ce: const v13, #float 1.80779e+38 // #7f0800db │ │ -42eaf6: 557e 1d5f |00d1: iget-boolean v14, v7, Lorg/purple/smoke/SipHashIdElement;.m_epksCompleted:Z // field@5f1d │ │ -42eafa: 7110 ff5b 0e00 |00d3: invoke-static {v14}, Ljava/lang/Boolean;.valueOf:(Z)Ljava/lang/Boolean; // method@5bff │ │ -42eb00: 0c0e |00d6: move-result-object v14 │ │ -42eb02: 6e30 485b dc0e |00d7: invoke-virtual {v12, v13, v14}, Landroid/widget/TextView;.setTag:(ILjava/lang/Object;)V // method@5b48 │ │ -42eb08: 6e20 08bd c000 |00da: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.registerForContextMenu:(Landroid/view/View;)V // method@bd08 │ │ -42eb0e: 6e20 fb5a cb00 |00dd: invoke-virtual {v11, v12}, Landroid/widget/TableRow;.addView:(Landroid/view/View;)V // method@5afb │ │ -42eb14: d809 0901 |00e0: add-int/lit8 v9, v9, #int 1 // #01 │ │ -42eb18: 2900 6aff |00e2: goto/16 004c // -0096 │ │ -42eb1c: 6e30 f35a b306 |00e4: invoke-virtual {v3, v11, v6}, Landroid/widget/TableLayout;.addView:(Landroid/view/View;I)V // method@5af3 │ │ -42eb22: d806 0601 |00e7: add-int/lit8 v6, v6, #int 1 // #01 │ │ -42eb26: 2900 3fff |00e9: goto/16 0028 // -00c1 │ │ -42eb2a: 6e10 a15f 0100 |00eb: invoke-virtual {v1}, Ljava/util/ArrayList;.clear:()V // method@5fa1 │ │ -42eb30: 0e00 |00ee: return-void │ │ +42e940: |[42e940] org.purple.smoke.Settings.populateParticipants:()V │ │ +42e950: 0800 1000 |0000: move-object/from16 v0, v16 │ │ +42e954: 5401 065f |0002: iget-object v1, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42e958: 6202 0a5f |0004: sget-object v2, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42e95c: 1a03 0000 |0006: const-string v3, "" // string@0000 │ │ +42e960: 6e30 1fba 2103 |0008: invoke-virtual {v1, v2, v3}, Lorg/purple/smoke/Database;.readSipHashIds:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/util/ArrayList; // method@ba1f │ │ +42e966: 0c01 |000b: move-result-object v1 │ │ +42e968: 1402 bf00 087f |000c: const v2, #float 1.80779e+38 // #7f0800bf │ │ +42e96e: 6e20 eabc 2000 |000f: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42e974: 0c03 |0012: move-result-object v3 │ │ +42e976: 1f03 930a |0013: check-cast v3, Landroid/widget/TableLayout; // type@0a93 │ │ +42e97a: 6e10 f65a 0300 |0015: invoke-virtual {v3}, Landroid/widget/TableLayout;.removeAllViews:()V // method@5af6 │ │ +42e980: 3801 d600 |0018: if-eqz v1, 00ee // +00d6 │ │ +42e984: 6e10 a85f 0100 |001a: invoke-virtual {v1}, Ljava/util/ArrayList;.isEmpty:()Z // method@5fa8 │ │ +42e98a: 0a04 |001d: move-result v4 │ │ +42e98c: 3804 0400 |001e: if-eqz v4, 0022 // +0004 │ │ +42e990: 2900 ce00 |0020: goto/16 00ee // +00ce │ │ +42e994: 6e10 a95f 0100 |0022: invoke-virtual {v1}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa9 │ │ +42e99a: 0c04 |0025: move-result-object v4 │ │ +42e99c: 1205 |0026: const/4 v5, #int 0 // #0 │ │ +42e99e: 1206 |0027: const/4 v6, #int 0 // #0 │ │ +42e9a0: 7210 1d60 0400 |0028: invoke-interface {v4}, Ljava/util/Iterator;.hasNext:()Z // method@601d │ │ +42e9a6: 0a07 |002b: move-result v7 │ │ +42e9a8: 3807 bf00 |002c: if-eqz v7, 00eb // +00bf │ │ +42e9ac: 7210 1e60 0400 |002e: invoke-interface {v4}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601e │ │ +42e9b2: 0c07 |0031: move-result-object v7 │ │ +42e9b4: 1f07 0c1b |0032: check-cast v7, Lorg/purple/smoke/SipHashIdElement; // type@1b0c │ │ +42e9b8: 3907 0300 |0034: if-nez v7, 0037 // +0003 │ │ +42e9bc: 28f2 |0036: goto 0028 // -000e │ │ +42e9be: 5478 235f |0037: iget-object v8, v7, Lorg/purple/smoke/SipHashIdElement;.m_sipHashId:Ljava/lang/String; // field@5f23 │ │ +42e9c2: 7110 f5bb 0800 |0039: invoke-static {v8}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf5 │ │ +42e9c8: 0c08 |003c: move-result-object v8 │ │ +42e9ca: 2209 940a |003d: new-instance v9, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ +42e9ce: 12ea |003f: const/4 v10, #int -2 // #fe │ │ +42e9d0: 7020 f85a a900 |0040: invoke-direct {v9, v10}, Landroid/widget/TableRow$LayoutParams;.:(I)V // method@5af8 │ │ +42e9d6: 220b 950a |0043: new-instance v11, Landroid/widget/TableRow; // type@0a95 │ │ +42e9da: 7020 fa5a 0b00 |0045: invoke-direct {v11, v0}, Landroid/widget/TableRow;.:(Landroid/content/Context;)V // method@5afa │ │ +42e9e0: 6e20 fe5a 9b00 |0048: invoke-virtual {v11, v9}, Landroid/widget/TableRow;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5afe │ │ +42e9e6: 1209 |004b: const/4 v9, #int 0 // #0 │ │ +42e9e8: 123c |004c: const/4 v12, #int 3 // #3 │ │ +42e9ea: 35c9 9700 |004d: if-ge v9, v12, 00e4 // +0097 │ │ +42e9ee: 220c 970a |004f: new-instance v12, Landroid/widget/TextView; // type@0a97 │ │ +42e9f2: 7020 ff5a 0c00 |0051: invoke-direct {v12, v0}, Landroid/widget/TextView;.:(Landroid/content/Context;)V // method@5aff │ │ +42e9f8: 527d 215f |0054: iget v13, v7, Lorg/purple/smoke/SipHashIdElement;.m_oid:I // field@5f21 │ │ +42e9fc: 6e20 395b dc00 |0056: invoke-virtual {v12, v13}, Landroid/widget/TextView;.setId:(I)V // method@5b39 │ │ +42ea02: 12fd |0059: const/4 v13, #int -1 // #ff │ │ +42ea04: 130e 1000 |005a: const/16 v14, #int 16 // #10 │ │ +42ea08: 150f 803f |005c: const/high16 v15, #int 1065353216 // #3f80 │ │ +42ea0c: 3809 5b00 |005e: if-eqz v9, 00b9 // +005b │ │ +42ea10: 121a |0060: const/4 v10, #int 1 // #1 │ │ +42ea12: 32a9 2100 |0061: if-eq v9, v10, 0082 // +0021 │ │ +42ea16: 122a |0063: const/4 v10, #int 2 // #2 │ │ +42ea18: 32a9 0400 |0064: if-eq v9, v10, 0068 // +0004 │ │ +42ea1c: 12ea |0066: const/4 v10, #int -2 // #fe │ │ +42ea1e: 2867 |0067: goto 00ce // +0067 │ │ +42ea20: 130a 1100 |0068: const/16 v10, #int 17 // #11 │ │ +42ea24: 6e20 365b ac00 |006a: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setGravity:(I)V // method@5b36 │ │ +42ea2a: 220a 940a |006d: new-instance v10, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ +42ea2e: 7040 f95a 5afd |006f: invoke-direct {v10, v5, v13, v15}, Landroid/widget/TableRow$LayoutParams;.:(IIF)V // method@5af9 │ │ +42ea34: 6e20 3b5b ac00 |0072: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5b3b │ │ +42ea3a: 6e30 485b 2c08 |0075: invoke-virtual {v12, v2, v8}, Landroid/widget/TextView;.setTag:(ILjava/lang/Object;)V // method@5b48 │ │ +42ea40: 527a 1e5f |0078: iget v10, v7, Lorg/purple/smoke/SipHashIdElement;.m_fiascoKeys:I // field@5f1e │ │ +42ea44: 7110 d55c 0a00 |007a: invoke-static {v10}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42ea4a: 0c0a |007d: move-result-object v10 │ │ +42ea4c: 6e20 495b ac00 |007e: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42ea52: 28e5 |0081: goto 0066 // -001b │ │ +42ea54: 557a 1d5f |0082: iget-boolean v10, v7, Lorg/purple/smoke/SipHashIdElement;.m_epksCompleted:Z // field@5f1d │ │ +42ea58: 380a 0d00 |0084: if-eqz v10, 0091 // +000d │ │ +42ea5c: 557a 1f5f |0086: iget-boolean v10, v7, Lorg/purple/smoke/SipHashIdElement;.m_keysSigned:Z // field@5f1f │ │ +42ea60: 380a 0900 |0088: if-eqz v10, 0091 // +0009 │ │ +42ea64: 140a 7000 077f |008a: const v10, #float 1.79448e+38 // #7f070070 │ │ +42ea6a: 6e55 2f5b ac55 |008d: invoke-virtual {v12, v10, v5, v5, v5}, Landroid/widget/TextView;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@5b2f │ │ +42ea70: 2812 |0090: goto 00a2 // +0012 │ │ +42ea72: 557a 1d5f |0091: iget-boolean v10, v7, Lorg/purple/smoke/SipHashIdElement;.m_epksCompleted:Z // field@5f1d │ │ +42ea76: 380a 0900 |0093: if-eqz v10, 009c // +0009 │ │ +42ea7a: 140a 6f00 077f |0095: const v10, #float 1.79448e+38 // #7f07006f │ │ +42ea80: 6e55 2f5b ac55 |0098: invoke-virtual {v12, v10, v5, v5, v5}, Landroid/widget/TextView;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@5b2f │ │ +42ea86: 2807 |009b: goto 00a2 // +0007 │ │ +42ea88: 140a 8c00 077f |009c: const v10, #float 1.79449e+38 // #7f07008c │ │ +42ea8e: 6e55 2f5b ac55 |009f: invoke-virtual {v12, v10, v5, v5, v5}, Landroid/widget/TextView;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@5b2f │ │ +42ea94: 125a |00a2: const/4 v10, #int 5 // #5 │ │ +42ea96: 6e20 2a5b ac00 |00a3: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setCompoundDrawablePadding:(I)V // method@5b2a │ │ +42ea9c: 6e20 365b ec00 |00a6: invoke-virtual {v12, v14}, Landroid/widget/TextView;.setGravity:(I)V // method@5b36 │ │ +42eaa2: 220a 940a |00a9: new-instance v10, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ +42eaa6: 12ed |00ab: const/4 v13, #int -2 // #fe │ │ +42eaa8: 7040 f95a 5afd |00ac: invoke-direct {v10, v5, v13, v15}, Landroid/widget/TableRow$LayoutParams;.:(IIF)V // method@5af9 │ │ +42eaae: 6e20 3b5b ac00 |00af: invoke-virtual {v12, v10}, Landroid/widget/TextView;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5b3b │ │ +42eab4: 6e30 485b 2c08 |00b2: invoke-virtual {v12, v2, v8}, Landroid/widget/TextView;.setTag:(ILjava/lang/Object;)V // method@5b48 │ │ +42eaba: 6e20 495b 8c00 |00b5: invoke-virtual {v12, v8}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42eac0: 28ae |00b8: goto 0066 // -0052 │ │ +42eac2: 6e20 365b ec00 |00b9: invoke-virtual {v12, v14}, Landroid/widget/TextView;.setGravity:(I)V // method@5b36 │ │ +42eac8: 220e 940a |00bc: new-instance v14, Landroid/widget/TableRow$LayoutParams; // type@0a94 │ │ +42eacc: 7040 f95a 5efd |00be: invoke-direct {v14, v5, v13, v15}, Landroid/widget/TableRow$LayoutParams;.:(IIF)V // method@5af9 │ │ +42ead2: 6e20 3b5b ec00 |00c1: invoke-virtual {v12, v14}, Landroid/widget/TextView;.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V // method@5b3b │ │ +42ead8: 547d 205f |00c4: iget-object v13, v7, Lorg/purple/smoke/SipHashIdElement;.m_name:Ljava/lang/String; // field@5f20 │ │ +42eadc: 6e30 485b 2c0d |00c6: invoke-virtual {v12, v2, v13}, Landroid/widget/TextView;.setTag:(ILjava/lang/Object;)V // method@5b48 │ │ +42eae2: 547d 205f |00c9: iget-object v13, v7, Lorg/purple/smoke/SipHashIdElement;.m_name:Ljava/lang/String; // field@5f20 │ │ +42eae6: 6e20 495b dc00 |00cb: invoke-virtual {v12, v13}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42eaec: 140d db00 087f |00ce: const v13, #float 1.80779e+38 // #7f0800db │ │ +42eaf2: 557e 1d5f |00d1: iget-boolean v14, v7, Lorg/purple/smoke/SipHashIdElement;.m_epksCompleted:Z // field@5f1d │ │ +42eaf6: 7110 ff5b 0e00 |00d3: invoke-static {v14}, Ljava/lang/Boolean;.valueOf:(Z)Ljava/lang/Boolean; // method@5bff │ │ +42eafc: 0c0e |00d6: move-result-object v14 │ │ +42eafe: 6e30 485b dc0e |00d7: invoke-virtual {v12, v13, v14}, Landroid/widget/TextView;.setTag:(ILjava/lang/Object;)V // method@5b48 │ │ +42eb04: 6e20 08bd c000 |00da: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.registerForContextMenu:(Landroid/view/View;)V // method@bd08 │ │ +42eb0a: 6e20 fb5a cb00 |00dd: invoke-virtual {v11, v12}, Landroid/widget/TableRow;.addView:(Landroid/view/View;)V // method@5afb │ │ +42eb10: d809 0901 |00e0: add-int/lit8 v9, v9, #int 1 // #01 │ │ +42eb14: 2900 6aff |00e2: goto/16 004c // -0096 │ │ +42eb18: 6e30 f35a b306 |00e4: invoke-virtual {v3, v11, v6}, Landroid/widget/TableLayout;.addView:(Landroid/view/View;I)V // method@5af3 │ │ +42eb1e: d806 0601 |00e7: add-int/lit8 v6, v6, #int 1 // #01 │ │ +42eb22: 2900 3fff |00e9: goto/16 0028 // -00c1 │ │ +42eb26: 6e10 a15f 0100 |00eb: invoke-virtual {v1}, Ljava/util/ArrayList;.clear:()V // method@5fa1 │ │ +42eb2c: 0e00 |00ee: return-void │ │ catches : (none) │ │ positions : │ │ 0x0002 line=1200 │ │ 0x0008 line=1201 │ │ 0x000f line=1203 │ │ 0x0015 line=1205 │ │ 0x001a line=1207 │ │ @@ -1571292,116 +1571291,116 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 16 │ │ ins : 1 │ │ outs : 12 │ │ insns size : 196 16-bit code units │ │ -42eb34: |[42eb34] org.purple.smoke.Settings.prepareCredentials:()V │ │ -42eb44: 6e10 f4bc 0f00 |0000: invoke-virtual {v15}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ -42eb4a: 0a00 |0003: move-result v0 │ │ -42eb4c: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -42eb50: 0e00 |0006: return-void │ │ -42eb52: 1400 8500 087f |0007: const v0, #float 1.80778e+38 // #7f080085 │ │ -42eb58: 6e20 eabc 0f00 |000a: invoke-virtual {v15, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42eb5e: 0c00 |000d: move-result-object v0 │ │ -42eb60: 1f00 8b0a |000e: check-cast v0, Landroid/widget/Spinner; // type@0a8b │ │ -42eb64: 1401 8700 087f |0010: const v1, #float 1.80778e+38 // #7f080087 │ │ -42eb6a: 6e20 eabc 1f00 |0013: invoke-virtual {v15, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42eb70: 0c01 |0016: move-result-object v1 │ │ -42eb72: 1f01 8b0a |0017: check-cast v1, Landroid/widget/Spinner; // type@0a8b │ │ -42eb76: 1402 ca00 087f |0019: const v2, #float 1.80779e+38 // #7f0800ca │ │ -42eb7c: 6e20 eabc 2f00 |001c: invoke-virtual {v15, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42eb82: 0c02 |001f: move-result-object v2 │ │ -42eb84: 072b |0020: move-object v11, v2 │ │ -42eb86: 1f0b 8b0a |0021: check-cast v11, Landroid/widget/Spinner; // type@0a8b │ │ -42eb8a: 1402 cc00 087f |0023: const v2, #float 1.80779e+38 // #7f0800cc │ │ -42eb90: 6e20 eabc 2f00 |0026: invoke-virtual {v15, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42eb96: 0c02 |0029: move-result-object v2 │ │ -42eb98: 072c |002a: move-object v12, v2 │ │ -42eb9a: 1f0c 8b0a |002b: check-cast v12, Landroid/widget/Spinner; // type@0a8b │ │ -42eb9e: 1402 c400 087f |002d: const v2, #float 1.80779e+38 // #7f0800c4 │ │ -42eba4: 6e20 eabc 2f00 |0030: invoke-virtual {v15, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ebaa: 0c02 |0033: move-result-object v2 │ │ -42ebac: 072d |0034: move-object v13, v2 │ │ -42ebae: 1f0d 970a |0035: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ -42ebb2: 1402 c500 087f |0037: const v2, #float 1.80779e+38 // #7f0800c5 │ │ -42ebb8: 6e20 eabc 2f00 |003a: invoke-virtual {v15, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ebbe: 0c02 |003d: move-result-object v2 │ │ -42ebc0: 072e |003e: move-object v14, v2 │ │ -42ebc2: 1f0e 970a |003f: check-cast v14, Landroid/widget/TextView; // type@0a97 │ │ -42ebc6: 6e10 ba5a 0000 |0041: invoke-virtual {v0}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -42ebcc: 0c00 |0044: move-result-object v0 │ │ -42ebce: 6e10 965c 0000 |0045: invoke-virtual {v0}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -42ebd4: 0c00 |0048: move-result-object v0 │ │ -42ebd6: 7110 555c 0000 |0049: invoke-static {v0}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@5c55 │ │ -42ebdc: 0a00 |004c: move-result v0 │ │ -42ebde: 0108 |004d: move v8, v0 │ │ -42ebe0: 2805 |004e: goto 0053 // +0005 │ │ -42ebe2: 1300 e803 |004f: const/16 v0, #int 1000 // #3e8 │ │ -42ebe6: 1308 e803 |0051: const/16 v8, #int 1000 // #3e8 │ │ -42ebea: 1210 |0053: const/4 v0, #int 1 // #1 │ │ -42ebec: 1202 |0054: const/4 v2, #int 0 // #0 │ │ -42ebee: 6e10 ba5a 0100 |0055: invoke-virtual {v1}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -42ebf4: 0c01 |0058: move-result-object v1 │ │ -42ebf6: 6e10 965c 0100 |0059: invoke-virtual {v1}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -42ebfc: 0c01 |005c: move-result-object v1 │ │ -42ebfe: 12f3 |005d: const/4 v3, #int -1 // #ff │ │ -42ec00: 6e10 bf5c 0100 |005e: invoke-virtual {v1}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -42ec06: 0a04 |0061: move-result v4 │ │ -42ec08: 1405 18ea c4a4 |0062: const v5, #float -8.5398e-17 // #a4c4ea18 │ │ -42ec0e: 3254 0300 |0065: if-eq v4, v5, 0068 // +0003 │ │ -42ec12: 280a |0067: goto 0071 // +000a │ │ -42ec14: 1a04 820e |0068: const-string v4, "Argon2id" // string@0e82 │ │ -42ec18: 6e20 b85c 4100 |006a: invoke-virtual {v1, v4}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42ec1e: 0a01 |006d: move-result v1 │ │ -42ec20: 3801 0300 |006e: if-eqz v1, 0071 // +0003 │ │ -42ec24: 1203 |0070: const/4 v3, #int 0 // #0 │ │ -42ec26: 3803 0400 |0071: if-eqz v3, 0075 // +0004 │ │ -42ec2a: 1211 |0073: const/4 v1, #int 1 // #1 │ │ -42ec2c: 2802 |0074: goto 0076 // +0002 │ │ -42ec2e: 1201 |0075: const/4 v1, #int 0 // #0 │ │ -42ec30: 0119 |0076: move v9, v1 │ │ -42ec32: 2802 |0077: goto 0079 // +0002 │ │ -42ec34: 1219 |0078: const/4 v9, #int 1 // #1 │ │ -42ec36: 1401 7500 087f |0079: const v1, #float 1.80777e+38 // #7f080075 │ │ -42ec3c: 6e20 eabc 1f00 |007c: invoke-virtual {v15, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ec42: 0c01 |007f: move-result-object v1 │ │ -42ec44: 071a |0080: move-object v10, v1 │ │ -42ec46: 1f0a 7c0a |0081: check-cast v10, Landroid/widget/ProgressBar; // type@0a7c │ │ -42ec4a: 6e20 5a5a 0a00 |0083: invoke-virtual {v10, v0}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ -42ec50: 6e20 5f5a 2a00 |0086: invoke-virtual {v10, v2}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42ec56: 6e10 f2bc 0f00 |0089: invoke-virtual {v15}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ -42ec5c: 0c00 |008c: move-result-object v0 │ │ -42ec5e: 1301 1000 |008d: const/16 v1, #int 16 // #10 │ │ -42ec62: 6e30 9057 1001 |008f: invoke-virtual {v0, v1, v1}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ -42ec68: 1400 9200 087f |0092: const v0, #float 1.80778e+38 // #7f080092 │ │ -42ec6e: 6e20 eabc 0f00 |0095: invoke-virtual {v15, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ec74: 0c00 |0098: move-result-object v0 │ │ -42ec76: 7120 ebbb 2000 |0099: invoke-static {v0, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ -42ec7c: 2200 f40a |009c: new-instance v0, Ljava/lang/Thread; // type@0af4 │ │ -42ec80: 2201 f71a |009e: new-instance v1, Lorg/purple/smoke/Settings$3SingleShot; // type@1af7 │ │ -42ec84: 6e10 ba5a 0b00 |00a0: invoke-virtual {v11}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -42ec8a: 0c02 |00a3: move-result-object v2 │ │ -42ec8c: 6e10 965c 0200 |00a4: invoke-virtual {v2}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -42ec92: 0c05 |00a7: move-result-object v5 │ │ -42ec94: 6e10 1c5b 0d00 |00a8: invoke-virtual {v13}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -42ec9a: 0c02 |00ab: move-result-object v2 │ │ -42ec9c: 7210 045c 0200 |00ac: invoke-interface {v2}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42eca2: 0c06 |00af: move-result-object v6 │ │ -42eca4: 6e10 ba5a 0c00 |00b0: invoke-virtual {v12}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -42ecaa: 0c02 |00b3: move-result-object v2 │ │ -42ecac: 6e10 965c 0200 |00b4: invoke-virtual {v2}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -42ecb2: 0c07 |00b7: move-result-object v7 │ │ -42ecb4: 0713 |00b8: move-object v3, v1 │ │ -42ecb6: 07f4 |00b9: move-object v4, v15 │ │ -42ecb8: 760c 9dbc 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@bc9d │ │ -42ecbe: 7020 0e5d 1000 |00bd: invoke-direct {v0, v1}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ -42ecc4: 6e10 195d 0000 |00c0: invoke-virtual {v0}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ -42ecca: 0e00 |00c3: return-void │ │ +42eb30: |[42eb30] org.purple.smoke.Settings.prepareCredentials:()V │ │ +42eb40: 6e10 f4bc 0f00 |0000: invoke-virtual {v15}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ +42eb46: 0a00 |0003: move-result v0 │ │ +42eb48: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +42eb4c: 0e00 |0006: return-void │ │ +42eb4e: 1400 8500 087f |0007: const v0, #float 1.80778e+38 // #7f080085 │ │ +42eb54: 6e20 eabc 0f00 |000a: invoke-virtual {v15, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42eb5a: 0c00 |000d: move-result-object v0 │ │ +42eb5c: 1f00 8b0a |000e: check-cast v0, Landroid/widget/Spinner; // type@0a8b │ │ +42eb60: 1401 8700 087f |0010: const v1, #float 1.80778e+38 // #7f080087 │ │ +42eb66: 6e20 eabc 1f00 |0013: invoke-virtual {v15, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42eb6c: 0c01 |0016: move-result-object v1 │ │ +42eb6e: 1f01 8b0a |0017: check-cast v1, Landroid/widget/Spinner; // type@0a8b │ │ +42eb72: 1402 ca00 087f |0019: const v2, #float 1.80779e+38 // #7f0800ca │ │ +42eb78: 6e20 eabc 2f00 |001c: invoke-virtual {v15, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42eb7e: 0c02 |001f: move-result-object v2 │ │ +42eb80: 072b |0020: move-object v11, v2 │ │ +42eb82: 1f0b 8b0a |0021: check-cast v11, Landroid/widget/Spinner; // type@0a8b │ │ +42eb86: 1402 cc00 087f |0023: const v2, #float 1.80779e+38 // #7f0800cc │ │ +42eb8c: 6e20 eabc 2f00 |0026: invoke-virtual {v15, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42eb92: 0c02 |0029: move-result-object v2 │ │ +42eb94: 072c |002a: move-object v12, v2 │ │ +42eb96: 1f0c 8b0a |002b: check-cast v12, Landroid/widget/Spinner; // type@0a8b │ │ +42eb9a: 1402 c400 087f |002d: const v2, #float 1.80779e+38 // #7f0800c4 │ │ +42eba0: 6e20 eabc 2f00 |0030: invoke-virtual {v15, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42eba6: 0c02 |0033: move-result-object v2 │ │ +42eba8: 072d |0034: move-object v13, v2 │ │ +42ebaa: 1f0d 970a |0035: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ +42ebae: 1402 c500 087f |0037: const v2, #float 1.80779e+38 // #7f0800c5 │ │ +42ebb4: 6e20 eabc 2f00 |003a: invoke-virtual {v15, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ebba: 0c02 |003d: move-result-object v2 │ │ +42ebbc: 072e |003e: move-object v14, v2 │ │ +42ebbe: 1f0e 970a |003f: check-cast v14, Landroid/widget/TextView; // type@0a97 │ │ +42ebc2: 6e10 ba5a 0000 |0041: invoke-virtual {v0}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +42ebc8: 0c00 |0044: move-result-object v0 │ │ +42ebca: 6e10 965c 0000 |0045: invoke-virtual {v0}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +42ebd0: 0c00 |0048: move-result-object v0 │ │ +42ebd2: 7110 555c 0000 |0049: invoke-static {v0}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@5c55 │ │ +42ebd8: 0a00 |004c: move-result v0 │ │ +42ebda: 0108 |004d: move v8, v0 │ │ +42ebdc: 2805 |004e: goto 0053 // +0005 │ │ +42ebde: 1300 e803 |004f: const/16 v0, #int 1000 // #3e8 │ │ +42ebe2: 1308 e803 |0051: const/16 v8, #int 1000 // #3e8 │ │ +42ebe6: 1210 |0053: const/4 v0, #int 1 // #1 │ │ +42ebe8: 1202 |0054: const/4 v2, #int 0 // #0 │ │ +42ebea: 6e10 ba5a 0100 |0055: invoke-virtual {v1}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +42ebf0: 0c01 |0058: move-result-object v1 │ │ +42ebf2: 6e10 965c 0100 |0059: invoke-virtual {v1}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +42ebf8: 0c01 |005c: move-result-object v1 │ │ +42ebfa: 12f3 |005d: const/4 v3, #int -1 // #ff │ │ +42ebfc: 6e10 bf5c 0100 |005e: invoke-virtual {v1}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +42ec02: 0a04 |0061: move-result v4 │ │ +42ec04: 1405 18ea c4a4 |0062: const v5, #float -8.5398e-17 // #a4c4ea18 │ │ +42ec0a: 3254 0300 |0065: if-eq v4, v5, 0068 // +0003 │ │ +42ec0e: 280a |0067: goto 0071 // +000a │ │ +42ec10: 1a04 820e |0068: const-string v4, "Argon2id" // string@0e82 │ │ +42ec14: 6e20 b85c 4100 |006a: invoke-virtual {v1, v4}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42ec1a: 0a01 |006d: move-result v1 │ │ +42ec1c: 3801 0300 |006e: if-eqz v1, 0071 // +0003 │ │ +42ec20: 1203 |0070: const/4 v3, #int 0 // #0 │ │ +42ec22: 3803 0400 |0071: if-eqz v3, 0075 // +0004 │ │ +42ec26: 1211 |0073: const/4 v1, #int 1 // #1 │ │ +42ec28: 2802 |0074: goto 0076 // +0002 │ │ +42ec2a: 1201 |0075: const/4 v1, #int 0 // #0 │ │ +42ec2c: 0119 |0076: move v9, v1 │ │ +42ec2e: 2802 |0077: goto 0079 // +0002 │ │ +42ec30: 1219 |0078: const/4 v9, #int 1 // #1 │ │ +42ec32: 1401 7500 087f |0079: const v1, #float 1.80777e+38 // #7f080075 │ │ +42ec38: 6e20 eabc 1f00 |007c: invoke-virtual {v15, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ec3e: 0c01 |007f: move-result-object v1 │ │ +42ec40: 071a |0080: move-object v10, v1 │ │ +42ec42: 1f0a 7c0a |0081: check-cast v10, Landroid/widget/ProgressBar; // type@0a7c │ │ +42ec46: 6e20 5a5a 0a00 |0083: invoke-virtual {v10, v0}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ +42ec4c: 6e20 5f5a 2a00 |0086: invoke-virtual {v10, v2}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42ec52: 6e10 f2bc 0f00 |0089: invoke-virtual {v15}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ +42ec58: 0c00 |008c: move-result-object v0 │ │ +42ec5a: 1301 1000 |008d: const/16 v1, #int 16 // #10 │ │ +42ec5e: 6e30 9057 1001 |008f: invoke-virtual {v0, v1, v1}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ +42ec64: 1400 9200 087f |0092: const v0, #float 1.80778e+38 // #7f080092 │ │ +42ec6a: 6e20 eabc 0f00 |0095: invoke-virtual {v15, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ec70: 0c00 |0098: move-result-object v0 │ │ +42ec72: 7120 ebbb 2000 |0099: invoke-static {v0, v2}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ +42ec78: 2200 f40a |009c: new-instance v0, Ljava/lang/Thread; // type@0af4 │ │ +42ec7c: 2201 f71a |009e: new-instance v1, Lorg/purple/smoke/Settings$3SingleShot; // type@1af7 │ │ +42ec80: 6e10 ba5a 0b00 |00a0: invoke-virtual {v11}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +42ec86: 0c02 |00a3: move-result-object v2 │ │ +42ec88: 6e10 965c 0200 |00a4: invoke-virtual {v2}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +42ec8e: 0c05 |00a7: move-result-object v5 │ │ +42ec90: 6e10 1c5b 0d00 |00a8: invoke-virtual {v13}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +42ec96: 0c02 |00ab: move-result-object v2 │ │ +42ec98: 7210 045c 0200 |00ac: invoke-interface {v2}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42ec9e: 0c06 |00af: move-result-object v6 │ │ +42eca0: 6e10 ba5a 0c00 |00b0: invoke-virtual {v12}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +42eca6: 0c02 |00b3: move-result-object v2 │ │ +42eca8: 6e10 965c 0200 |00b4: invoke-virtual {v2}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +42ecae: 0c07 |00b7: move-result-object v7 │ │ +42ecb0: 0713 |00b8: move-object v3, v1 │ │ +42ecb2: 07f4 |00b9: move-object v4, v15 │ │ +42ecb4: 760c 9dbc 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@bc9d │ │ +42ecba: 7020 0e5d 1000 |00bd: invoke-direct {v0, v1}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ +42ecc0: 6e10 195d 0000 |00c0: invoke-virtual {v0}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ +42ecc6: 0e00 |00c3: return-void │ │ catches : 2 │ │ 0x0041 - 0x004d │ │ Ljava/lang/Exception; -> 0x004f │ │ 0x0055 - 0x006e │ │ Ljava/lang/Exception; -> 0x0078 │ │ positions : │ │ 0x0000 line=1294 │ │ @@ -1571431,28 +1571430,28 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 25 16-bit code units │ │ -42ece8: |[42ece8] org.purple.smoke.Settings.prepareForegroundService:()V │ │ -42ecf8: 5430 065f |0000: iget-object v0, v3, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42ecfc: 1201 |0002: const/4 v1, #int 0 // #0 │ │ -42ecfe: 1a02 5469 |0003: const-string v2, "foreground_service" // string@6954 │ │ -42ed02: 6e30 1bba 1002 |0005: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42ed08: 0c00 |0008: move-result-object v0 │ │ -42ed0a: 1a01 1f68 |0009: const-string v1, "false" // string@681f │ │ -42ed0e: 6e20 b85c 1000 |000b: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42ed14: 0a00 |000e: move-result v0 │ │ -42ed16: 3800 0600 |000f: if-eqz v0, 0015 // +0006 │ │ -42ed1a: 7110 3bbd 0300 |0011: invoke-static {v3}, Lorg/purple/smoke/SmokeService;.stopForegroundTask:(Landroid/content/Context;)V // method@bd3b │ │ -42ed20: 2804 |0014: goto 0018 // +0004 │ │ -42ed22: 7110 38bd 0300 |0015: invoke-static {v3}, Lorg/purple/smoke/SmokeService;.startForegroundTask:(Landroid/content/Context;)V // method@bd38 │ │ -42ed28: 0e00 |0018: return-void │ │ +42ece4: |[42ece4] org.purple.smoke.Settings.prepareForegroundService:()V │ │ +42ecf4: 5430 065f |0000: iget-object v0, v3, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42ecf8: 1201 |0002: const/4 v1, #int 0 // #0 │ │ +42ecfa: 1a02 5469 |0003: const-string v2, "foreground_service" // string@6954 │ │ +42ecfe: 6e30 1bba 1002 |0005: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42ed04: 0c00 |0008: move-result-object v0 │ │ +42ed06: 1a01 1f68 |0009: const-string v1, "false" // string@681f │ │ +42ed0a: 6e20 b85c 1000 |000b: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42ed10: 0a00 |000e: move-result v0 │ │ +42ed12: 3800 0600 |000f: if-eqz v0, 0015 // +0006 │ │ +42ed16: 7110 3bbd 0300 |0011: invoke-static {v3}, Lorg/purple/smoke/SmokeService;.stopForegroundTask:(Landroid/content/Context;)V // method@bd3b │ │ +42ed1c: 2804 |0014: goto 0018 // +0004 │ │ +42ed1e: 7110 38bd 0300 |0015: invoke-static {v3}, Lorg/purple/smoke/SmokeService;.startForegroundTask:(Landroid/content/Context;)V // method@bd38 │ │ +42ed24: 0e00 |0018: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=1641 │ │ 0x0011 line=1642 │ │ 0x0015 line=1644 │ │ locals : │ │ 0x0000 - 0x0019 reg=3 this Lorg/purple/smoke/Settings; │ │ @@ -1571462,237 +1571461,237 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 538 16-bit code units │ │ -42ed2c: |[42ed2c] org.purple.smoke.Settings.prepareListeners:()V │ │ -42ed3c: 1400 ae00 087f |0000: const v0, #float 1.80779e+38 // #7f0800ae │ │ -42ed42: 6e20 eabc 0500 |0003: invoke-virtual {v5, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ed48: 0c00 |0006: move-result-object v0 │ │ -42ed4a: 1f00 8b0a |0007: check-cast v0, Landroid/widget/Spinner; // type@0a8b │ │ -42ed4e: 1401 bd00 087f |0009: const v1, #float 1.80779e+38 // #7f0800bd │ │ -42ed54: 6e20 eabc 1500 |000c: invoke-virtual {v5, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ed5a: 0c01 |000f: move-result-object v1 │ │ -42ed5c: 1f01 970a |0010: check-cast v1, Landroid/widget/TextView; // type@0a97 │ │ -42ed60: 1402 1e00 087f |0012: const v2, #float 1.80776e+38 // #7f08001e │ │ -42ed66: 6e20 eabc 2500 |0015: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ed6c: 0c02 |0018: move-result-object v2 │ │ -42ed6e: 1f02 5e0a |0019: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ed72: 2203 fc1a |001b: new-instance v3, Lorg/purple/smoke/Settings$5; // type@1afc │ │ -42ed76: 7020 aabc 5300 |001d: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$5;.:(Lorg/purple/smoke/Settings;)V // method@bcaa │ │ -42ed7c: 6e20 e258 3200 |0020: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ed82: 1402 1f00 087f |0023: const v2, #float 1.80776e+38 // #7f08001f │ │ -42ed88: 6e20 eabc 2500 |0026: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ed8e: 0c02 |0029: move-result-object v2 │ │ -42ed90: 1f02 5e0a |002a: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ed94: 2203 ff1a |002c: new-instance v3, Lorg/purple/smoke/Settings$6; // type@1aff │ │ -42ed98: 7020 b1bc 5300 |002e: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$6;.:(Lorg/purple/smoke/Settings;)V // method@bcb1 │ │ -42ed9e: 6e20 e258 3200 |0031: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42eda4: 1402 4000 087f |0034: const v2, #float 1.80776e+38 // #7f080040 │ │ -42edaa: 6e20 eabc 2500 |0037: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42edb0: 0c02 |003a: move-result-object v2 │ │ -42edb2: 1f02 5e0a |003b: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42edb6: 2203 021b |003d: new-instance v3, Lorg/purple/smoke/Settings$7; // type@1b02 │ │ -42edba: 7020 b8bc 5300 |003f: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$7;.:(Lorg/purple/smoke/Settings;)V // method@bcb8 │ │ -42edc0: 6e20 e258 3200 |0042: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42edc6: 1402 5d00 087f |0045: const v2, #float 1.80777e+38 // #7f08005d │ │ -42edcc: 6e20 eabc 2500 |0048: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42edd2: 0c02 |004b: move-result-object v2 │ │ -42edd4: 1f02 5e0a |004c: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42edd8: 2203 051b |004e: new-instance v3, Lorg/purple/smoke/Settings$8; // type@1b05 │ │ -42eddc: 7020 c3bc 5300 |0050: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$8;.:(Lorg/purple/smoke/Settings;)V // method@bcc3 │ │ -42ede2: 6e20 e258 3200 |0053: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ede8: 1402 6400 087f |0056: const v2, #float 1.80777e+38 // #7f080064 │ │ -42edee: 6e20 eabc 2500 |0059: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42edf4: 0c02 |005c: move-result-object v2 │ │ -42edf6: 1f02 5e0a |005d: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42edfa: 2203 061b |005f: new-instance v3, Lorg/purple/smoke/Settings$9; // type@1b06 │ │ -42edfe: 7020 c5bc 5300 |0061: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$9;.:(Lorg/purple/smoke/Settings;)V // method@bcc5 │ │ -42ee04: 6e20 e258 3200 |0064: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ee0a: 1402 7400 087f |0067: const v2, #float 1.80777e+38 // #7f080074 │ │ -42ee10: 6e20 eabc 2500 |006a: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ee16: 0c02 |006d: move-result-object v2 │ │ -42ee18: 1f02 5e0a |006e: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ee1c: 2203 d01a |0070: new-instance v3, Lorg/purple/smoke/Settings$10; // type@1ad0 │ │ -42ee20: 7020 4abc 5300 |0072: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$10;.:(Lorg/purple/smoke/Settings;)V // method@bc4a │ │ -42ee26: 6e20 e258 3200 |0075: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ee2c: 1402 8200 087f |0078: const v2, #float 1.80778e+38 // #7f080082 │ │ -42ee32: 6e20 eabc 2500 |007b: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ee38: 0c02 |007e: move-result-object v2 │ │ -42ee3a: 1f02 5e0a |007f: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ee3e: 2203 d11a |0081: new-instance v3, Lorg/purple/smoke/Settings$11; // type@1ad1 │ │ -42ee42: 7020 4cbc 5300 |0083: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$11;.:(Lorg/purple/smoke/Settings;)V // method@bc4c │ │ -42ee48: 6e20 e258 3200 |0086: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ee4e: 1402 b800 087f |0089: const v2, #float 1.80779e+38 // #7f0800b8 │ │ -42ee54: 6e20 eabc 2500 |008c: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ee5a: 0c02 |008f: move-result-object v2 │ │ -42ee5c: 1f02 5e0a |0090: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ee60: 2203 d21a |0092: new-instance v3, Lorg/purple/smoke/Settings$12; // type@1ad2 │ │ -42ee64: 7020 4ebc 5300 |0094: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$12;.:(Lorg/purple/smoke/Settings;)V // method@bc4e │ │ -42ee6a: 6e20 e258 3200 |0097: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ee70: 1402 c200 087f |009a: const v2, #float 1.80779e+38 // #7f0800c2 │ │ -42ee76: 6e20 eabc 2500 |009d: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ee7c: 0c02 |00a0: move-result-object v2 │ │ -42ee7e: 1f02 5e0a |00a1: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ee82: 2203 d31a |00a3: new-instance v3, Lorg/purple/smoke/Settings$13; // type@1ad3 │ │ -42ee86: 7020 50bc 5300 |00a5: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$13;.:(Lorg/purple/smoke/Settings;)V // method@bc50 │ │ -42ee8c: 6e20 e258 3200 |00a8: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ee92: 1402 da00 087f |00ab: const v2, #float 1.80779e+38 // #7f0800da │ │ -42ee98: 6e20 eabc 2500 |00ae: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ee9e: 0c02 |00b1: move-result-object v2 │ │ -42eea0: 1f02 5e0a |00b2: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42eea4: 2203 d41a |00b4: new-instance v3, Lorg/purple/smoke/Settings$14; // type@1ad4 │ │ -42eea8: 7020 52bc 5300 |00b6: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$14;.:(Lorg/purple/smoke/Settings;)V // method@bc52 │ │ -42eeae: 6e20 e258 3200 |00b9: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42eeb4: 1402 db00 087f |00bc: const v2, #float 1.80779e+38 // #7f0800db │ │ -42eeba: 6e20 eabc 2500 |00bf: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42eec0: 0c02 |00c2: move-result-object v2 │ │ -42eec2: 1f02 5e0a |00c3: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42eec6: 2203 d51a |00c5: new-instance v3, Lorg/purple/smoke/Settings$15; // type@1ad5 │ │ -42eeca: 7020 54bc 5300 |00c7: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$15;.:(Lorg/purple/smoke/Settings;)V // method@bc54 │ │ -42eed0: 6e20 e258 3200 |00ca: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42eed6: 2202 d61a |00cd: new-instance v2, Lorg/purple/smoke/Settings$16; // type@1ad6 │ │ -42eeda: 7020 56bc 5200 |00cf: invoke-direct {v2, v5}, Lorg/purple/smoke/Settings$16;.:(Lorg/purple/smoke/Settings;)V // method@bc56 │ │ -42eee0: 1403 de00 087f |00d2: const v3, #float 1.8078e+38 // #7f0800de │ │ -42eee6: 6e20 eabc 3500 |00d5: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42eeec: 0c03 |00d8: move-result-object v3 │ │ -42eeee: 1f03 5e0a |00d9: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ -42eef2: 2204 d71a |00db: new-instance v4, Lorg/purple/smoke/Settings$17; // type@1ad7 │ │ -42eef6: 7030 58bc 5402 |00dd: invoke-direct {v4, v5, v2}, Lorg/purple/smoke/Settings$17;.:(Lorg/purple/smoke/Settings;Landroid/content/DialogInterface$OnCancelListener;)V // method@bc58 │ │ -42eefc: 6e20 e258 4300 |00e0: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ef02: 1402 e000 087f |00e3: const v2, #float 1.8078e+38 // #7f0800e0 │ │ -42ef08: 6e20 eabc 2500 |00e6: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ef0e: 0c02 |00e9: move-result-object v2 │ │ -42ef10: 1f02 5e0a |00ea: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ef14: 2203 d81a |00ec: new-instance v3, Lorg/purple/smoke/Settings$18; // type@1ad8 │ │ -42ef18: 7020 5abc 5300 |00ee: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$18;.:(Lorg/purple/smoke/Settings;)V // method@bc5a │ │ -42ef1e: 6e20 e258 3200 |00f1: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ef24: 1402 e100 087f |00f4: const v2, #float 1.8078e+38 // #7f0800e1 │ │ -42ef2a: 6e20 eabc 2500 |00f7: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ef30: 0c02 |00fa: move-result-object v2 │ │ -42ef32: 1f02 5e0a |00fb: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42ef36: 2203 d91a |00fd: new-instance v3, Lorg/purple/smoke/Settings$19; // type@1ad9 │ │ -42ef3a: 7020 5cbc 5300 |00ff: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$19;.:(Lorg/purple/smoke/Settings;)V // method@bc5c │ │ -42ef40: 6e20 e258 3200 |0102: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ef46: 2202 dd1a |0105: new-instance v2, Lorg/purple/smoke/Settings$20; // type@1add │ │ -42ef4a: 7020 65bc 5200 |0107: invoke-direct {v2, v5}, Lorg/purple/smoke/Settings$20;.:(Lorg/purple/smoke/Settings;)V // method@bc65 │ │ -42ef50: 1403 e600 087f |010a: const v3, #float 1.8078e+38 // #7f0800e6 │ │ -42ef56: 6e20 eabc 3500 |010d: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ef5c: 0c03 |0110: move-result-object v3 │ │ -42ef5e: 1f03 5e0a |0111: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ -42ef62: 2204 de1a |0113: new-instance v4, Lorg/purple/smoke/Settings$21; // type@1ade │ │ -42ef66: 7020 67bc 5400 |0115: invoke-direct {v4, v5}, Lorg/purple/smoke/Settings$21;.:(Lorg/purple/smoke/Settings;)V // method@bc67 │ │ -42ef6c: 6e20 e258 4300 |0118: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ef72: 1403 e800 087f |011b: const v3, #float 1.8078e+38 // #7f0800e8 │ │ -42ef78: 6e20 eabc 3500 |011e: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42ef7e: 0c03 |0121: move-result-object v3 │ │ -42ef80: 1f03 5e0a |0122: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ -42ef84: 2204 df1a |0124: new-instance v4, Lorg/purple/smoke/Settings$22; // type@1adf │ │ -42ef88: 7020 69bc 5400 |0126: invoke-direct {v4, v5}, Lorg/purple/smoke/Settings$22;.:(Lorg/purple/smoke/Settings;)V // method@bc69 │ │ -42ef8e: 6e20 e258 4300 |0129: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42ef94: 1403 ff00 087f |012c: const v3, #float 1.8078e+38 // #7f0800ff │ │ -42ef9a: 6e20 eabc 3500 |012f: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42efa0: 0c03 |0132: move-result-object v3 │ │ -42efa2: 1f03 5e0a |0133: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ -42efa6: 2204 e01a |0135: new-instance v4, Lorg/purple/smoke/Settings$23; // type@1ae0 │ │ -42efaa: 7030 6bbc 5402 |0137: invoke-direct {v4, v5, v2}, Lorg/purple/smoke/Settings$23;.:(Lorg/purple/smoke/Settings;Landroid/content/DialogInterface$OnCancelListener;)V // method@bc6b │ │ -42efb0: 6e20 e258 4300 |013a: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42efb6: 1402 0201 087f |013d: const v2, #float 1.8078e+38 // #7f080102 │ │ -42efbc: 6e20 eabc 2500 |0140: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42efc2: 0c02 |0143: move-result-object v2 │ │ -42efc4: 1f02 5e0a |0144: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42efc8: 2203 e11a |0146: new-instance v3, Lorg/purple/smoke/Settings$24; // type@1ae1 │ │ -42efcc: 7020 6dbc 5300 |0148: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$24;.:(Lorg/purple/smoke/Settings;)V // method@bc6d │ │ -42efd2: 6e20 e258 3200 |014b: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42efd8: 1402 0901 087f |014e: const v2, #float 1.8078e+38 // #7f080109 │ │ -42efde: 6e20 eabc 2500 |0151: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42efe4: 0c02 |0154: move-result-object v2 │ │ -42efe6: 1f02 5e0a |0155: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42efea: 2203 e21a |0157: new-instance v3, Lorg/purple/smoke/Settings$25; // type@1ae2 │ │ -42efee: 7020 6fbc 5300 |0159: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$25;.:(Lorg/purple/smoke/Settings;)V // method@bc6f │ │ -42eff4: 6e20 e258 3200 |015c: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42effa: 1402 0a01 087f |015f: const v2, #float 1.8078e+38 // #7f08010a │ │ -42f000: 6e20 eabc 2500 |0162: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f006: 0c02 |0165: move-result-object v2 │ │ -42f008: 1f02 5e0a |0166: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42f00c: 2203 e31a |0168: new-instance v3, Lorg/purple/smoke/Settings$26; // type@1ae3 │ │ -42f010: 7020 71bc 5300 |016a: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$26;.:(Lorg/purple/smoke/Settings;)V // method@bc71 │ │ -42f016: 6e20 e258 3200 |016d: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -42f01c: 1402 2500 087f |0170: const v2, #float 1.80776e+38 // #7f080025 │ │ -42f022: 6e20 eabc 2500 |0173: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f028: 0c02 |0176: move-result-object v2 │ │ -42f02a: 1f02 8d0a |0177: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42f02e: 2203 e41a |0179: new-instance v3, Lorg/purple/smoke/Settings$27; // type@1ae4 │ │ -42f032: 7020 73bc 5300 |017b: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$27;.:(Lorg/purple/smoke/Settings;)V // method@bc73 │ │ -42f038: 6e20 e25a 3200 |017e: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -42f03e: 1402 2c00 087f |0181: const v2, #float 1.80776e+38 // #7f08002c │ │ -42f044: 6e20 eabc 2500 |0184: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f04a: 0c02 |0187: move-result-object v2 │ │ -42f04c: 1f02 8d0a |0188: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42f050: 2203 e51a |018a: new-instance v3, Lorg/purple/smoke/Settings$28; // type@1ae5 │ │ -42f054: 7020 75bc 5300 |018c: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$28;.:(Lorg/purple/smoke/Settings;)V // method@bc75 │ │ -42f05a: 6e20 e25a 3200 |018f: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -42f060: 1402 5c00 087f |0192: const v2, #float 1.80777e+38 // #7f08005c │ │ -42f066: 6e20 eabc 2500 |0195: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f06c: 0c02 |0198: move-result-object v2 │ │ -42f06e: 1f02 8d0a |0199: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42f072: 2203 e61a |019b: new-instance v3, Lorg/purple/smoke/Settings$29; // type@1ae6 │ │ -42f076: 7020 77bc 5300 |019d: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$29;.:(Lorg/purple/smoke/Settings;)V // method@bc77 │ │ -42f07c: 6e20 e25a 3200 |01a0: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -42f082: 1402 7300 087f |01a3: const v2, #float 1.80777e+38 // #7f080073 │ │ -42f088: 6e20 eabc 2500 |01a6: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f08e: 0c02 |01a9: move-result-object v2 │ │ -42f090: 1f02 8d0a |01aa: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42f094: 2203 eb1a |01ac: new-instance v3, Lorg/purple/smoke/Settings$30; // type@1aeb │ │ -42f098: 7020 82bc 5300 |01ae: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$30;.:(Lorg/purple/smoke/Settings;)V // method@bc82 │ │ -42f09e: 6e20 e25a 3200 |01b1: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -42f0a4: 1402 a600 087f |01b4: const v2, #float 1.80778e+38 // #7f0800a6 │ │ -42f0aa: 6e20 eabc 2500 |01b7: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f0b0: 0c02 |01ba: move-result-object v2 │ │ -42f0b2: 1f02 8d0a |01bb: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42f0b6: 2203 ec1a |01bd: new-instance v3, Lorg/purple/smoke/Settings$31; // type@1aec │ │ -42f0ba: 7020 84bc 5300 |01bf: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$31;.:(Lorg/purple/smoke/Settings;)V // method@bc84 │ │ -42f0c0: 6e20 e25a 3200 |01c2: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -42f0c6: 1402 b600 087f |01c5: const v2, #float 1.80779e+38 // #7f0800b6 │ │ -42f0cc: 6e20 eabc 2500 |01c8: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f0d2: 0c02 |01cb: move-result-object v2 │ │ -42f0d4: 1f02 8d0a |01cc: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42f0d8: 2203 ed1a |01ce: new-instance v3, Lorg/purple/smoke/Settings$32; // type@1aed │ │ -42f0dc: 7020 86bc 5300 |01d0: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$32;.:(Lorg/purple/smoke/Settings;)V // method@bc86 │ │ -42f0e2: 6e20 e25a 3200 |01d3: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -42f0e8: 1402 d500 087f |01d6: const v2, #float 1.80779e+38 // #7f0800d5 │ │ -42f0ee: 6e20 eabc 2500 |01d9: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f0f4: 0c02 |01dc: move-result-object v2 │ │ -42f0f6: 1f02 8d0a |01dd: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42f0fa: 2203 ee1a |01df: new-instance v3, Lorg/purple/smoke/Settings$33; // type@1aee │ │ -42f0fe: 7020 88bc 5300 |01e1: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$33;.:(Lorg/purple/smoke/Settings;)V // method@bc88 │ │ -42f104: 6e20 e25a 3200 |01e4: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -42f10a: 1402 0801 087f |01e7: const v2, #float 1.8078e+38 // #7f080108 │ │ -42f110: 6e20 eabc 2500 |01ea: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f116: 0c02 |01ed: move-result-object v2 │ │ -42f118: 1f02 8d0a |01ee: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42f11c: 2203 ef1a |01f0: new-instance v3, Lorg/purple/smoke/Settings$34; // type@1aef │ │ -42f120: 7020 8abc 5300 |01f2: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$34;.:(Lorg/purple/smoke/Settings;)V // method@bc8a │ │ -42f126: 6e20 e25a 3200 |01f5: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -42f12c: 1402 0c01 087f |01f8: const v2, #float 1.8078e+38 // #7f08010c │ │ -42f132: 6e20 eabc 2500 |01fb: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f138: 0c02 |01fe: move-result-object v2 │ │ -42f13a: 1f02 8d0a |01ff: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42f13e: 2203 f01a |0201: new-instance v3, Lorg/purple/smoke/Settings$35; // type@1af0 │ │ -42f142: 7020 8cbc 5300 |0203: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$35;.:(Lorg/purple/smoke/Settings;)V // method@bc8c │ │ -42f148: 6e20 e25a 3200 |0206: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ -42f14e: 2202 f11a |0209: new-instance v2, Lorg/purple/smoke/Settings$36; // type@1af1 │ │ -42f152: 7020 8ebc 5200 |020b: invoke-direct {v2, v5}, Lorg/purple/smoke/Settings$36;.:(Lorg/purple/smoke/Settings;)V // method@bc8e │ │ -42f158: 6e20 c95a 2000 |020e: invoke-virtual {v0, v2}, Landroid/widget/Spinner;.setOnItemSelectedListener:(Landroid/widget/AdapterView$OnItemSelectedListener;)V // method@5ac9 │ │ -42f15e: 2200 f21a |0211: new-instance v0, Lorg/purple/smoke/Settings$37; // type@1af2 │ │ -42f162: 7020 91bc 5000 |0213: invoke-direct {v0, v5}, Lorg/purple/smoke/Settings$37;.:(Lorg/purple/smoke/Settings;)V // method@bc91 │ │ -42f168: 6e20 025b 0100 |0216: invoke-virtual {v1, v0}, Landroid/widget/TextView;.addTextChangedListener:(Landroid/text/TextWatcher;)V // method@5b02 │ │ -42f16e: 0e00 |0219: return-void │ │ +42ed28: |[42ed28] org.purple.smoke.Settings.prepareListeners:()V │ │ +42ed38: 1400 ae00 087f |0000: const v0, #float 1.80779e+38 // #7f0800ae │ │ +42ed3e: 6e20 eabc 0500 |0003: invoke-virtual {v5, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ed44: 0c00 |0006: move-result-object v0 │ │ +42ed46: 1f00 8b0a |0007: check-cast v0, Landroid/widget/Spinner; // type@0a8b │ │ +42ed4a: 1401 bd00 087f |0009: const v1, #float 1.80779e+38 // #7f0800bd │ │ +42ed50: 6e20 eabc 1500 |000c: invoke-virtual {v5, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ed56: 0c01 |000f: move-result-object v1 │ │ +42ed58: 1f01 970a |0010: check-cast v1, Landroid/widget/TextView; // type@0a97 │ │ +42ed5c: 1402 1e00 087f |0012: const v2, #float 1.80776e+38 // #7f08001e │ │ +42ed62: 6e20 eabc 2500 |0015: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ed68: 0c02 |0018: move-result-object v2 │ │ +42ed6a: 1f02 5e0a |0019: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ed6e: 2203 fc1a |001b: new-instance v3, Lorg/purple/smoke/Settings$5; // type@1afc │ │ +42ed72: 7020 aabc 5300 |001d: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$5;.:(Lorg/purple/smoke/Settings;)V // method@bcaa │ │ +42ed78: 6e20 e258 3200 |0020: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ed7e: 1402 1f00 087f |0023: const v2, #float 1.80776e+38 // #7f08001f │ │ +42ed84: 6e20 eabc 2500 |0026: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ed8a: 0c02 |0029: move-result-object v2 │ │ +42ed8c: 1f02 5e0a |002a: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ed90: 2203 ff1a |002c: new-instance v3, Lorg/purple/smoke/Settings$6; // type@1aff │ │ +42ed94: 7020 b1bc 5300 |002e: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$6;.:(Lorg/purple/smoke/Settings;)V // method@bcb1 │ │ +42ed9a: 6e20 e258 3200 |0031: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42eda0: 1402 4000 087f |0034: const v2, #float 1.80776e+38 // #7f080040 │ │ +42eda6: 6e20 eabc 2500 |0037: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42edac: 0c02 |003a: move-result-object v2 │ │ +42edae: 1f02 5e0a |003b: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42edb2: 2203 021b |003d: new-instance v3, Lorg/purple/smoke/Settings$7; // type@1b02 │ │ +42edb6: 7020 b8bc 5300 |003f: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$7;.:(Lorg/purple/smoke/Settings;)V // method@bcb8 │ │ +42edbc: 6e20 e258 3200 |0042: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42edc2: 1402 5d00 087f |0045: const v2, #float 1.80777e+38 // #7f08005d │ │ +42edc8: 6e20 eabc 2500 |0048: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42edce: 0c02 |004b: move-result-object v2 │ │ +42edd0: 1f02 5e0a |004c: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42edd4: 2203 051b |004e: new-instance v3, Lorg/purple/smoke/Settings$8; // type@1b05 │ │ +42edd8: 7020 c3bc 5300 |0050: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$8;.:(Lorg/purple/smoke/Settings;)V // method@bcc3 │ │ +42edde: 6e20 e258 3200 |0053: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ede4: 1402 6400 087f |0056: const v2, #float 1.80777e+38 // #7f080064 │ │ +42edea: 6e20 eabc 2500 |0059: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42edf0: 0c02 |005c: move-result-object v2 │ │ +42edf2: 1f02 5e0a |005d: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42edf6: 2203 061b |005f: new-instance v3, Lorg/purple/smoke/Settings$9; // type@1b06 │ │ +42edfa: 7020 c5bc 5300 |0061: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$9;.:(Lorg/purple/smoke/Settings;)V // method@bcc5 │ │ +42ee00: 6e20 e258 3200 |0064: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ee06: 1402 7400 087f |0067: const v2, #float 1.80777e+38 // #7f080074 │ │ +42ee0c: 6e20 eabc 2500 |006a: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ee12: 0c02 |006d: move-result-object v2 │ │ +42ee14: 1f02 5e0a |006e: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ee18: 2203 d01a |0070: new-instance v3, Lorg/purple/smoke/Settings$10; // type@1ad0 │ │ +42ee1c: 7020 4abc 5300 |0072: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$10;.:(Lorg/purple/smoke/Settings;)V // method@bc4a │ │ +42ee22: 6e20 e258 3200 |0075: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ee28: 1402 8200 087f |0078: const v2, #float 1.80778e+38 // #7f080082 │ │ +42ee2e: 6e20 eabc 2500 |007b: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ee34: 0c02 |007e: move-result-object v2 │ │ +42ee36: 1f02 5e0a |007f: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ee3a: 2203 d11a |0081: new-instance v3, Lorg/purple/smoke/Settings$11; // type@1ad1 │ │ +42ee3e: 7020 4cbc 5300 |0083: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$11;.:(Lorg/purple/smoke/Settings;)V // method@bc4c │ │ +42ee44: 6e20 e258 3200 |0086: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ee4a: 1402 b800 087f |0089: const v2, #float 1.80779e+38 // #7f0800b8 │ │ +42ee50: 6e20 eabc 2500 |008c: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ee56: 0c02 |008f: move-result-object v2 │ │ +42ee58: 1f02 5e0a |0090: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ee5c: 2203 d21a |0092: new-instance v3, Lorg/purple/smoke/Settings$12; // type@1ad2 │ │ +42ee60: 7020 4ebc 5300 |0094: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$12;.:(Lorg/purple/smoke/Settings;)V // method@bc4e │ │ +42ee66: 6e20 e258 3200 |0097: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ee6c: 1402 c200 087f |009a: const v2, #float 1.80779e+38 // #7f0800c2 │ │ +42ee72: 6e20 eabc 2500 |009d: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ee78: 0c02 |00a0: move-result-object v2 │ │ +42ee7a: 1f02 5e0a |00a1: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ee7e: 2203 d31a |00a3: new-instance v3, Lorg/purple/smoke/Settings$13; // type@1ad3 │ │ +42ee82: 7020 50bc 5300 |00a5: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$13;.:(Lorg/purple/smoke/Settings;)V // method@bc50 │ │ +42ee88: 6e20 e258 3200 |00a8: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ee8e: 1402 da00 087f |00ab: const v2, #float 1.80779e+38 // #7f0800da │ │ +42ee94: 6e20 eabc 2500 |00ae: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ee9a: 0c02 |00b1: move-result-object v2 │ │ +42ee9c: 1f02 5e0a |00b2: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42eea0: 2203 d41a |00b4: new-instance v3, Lorg/purple/smoke/Settings$14; // type@1ad4 │ │ +42eea4: 7020 52bc 5300 |00b6: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$14;.:(Lorg/purple/smoke/Settings;)V // method@bc52 │ │ +42eeaa: 6e20 e258 3200 |00b9: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42eeb0: 1402 db00 087f |00bc: const v2, #float 1.80779e+38 // #7f0800db │ │ +42eeb6: 6e20 eabc 2500 |00bf: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42eebc: 0c02 |00c2: move-result-object v2 │ │ +42eebe: 1f02 5e0a |00c3: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42eec2: 2203 d51a |00c5: new-instance v3, Lorg/purple/smoke/Settings$15; // type@1ad5 │ │ +42eec6: 7020 54bc 5300 |00c7: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$15;.:(Lorg/purple/smoke/Settings;)V // method@bc54 │ │ +42eecc: 6e20 e258 3200 |00ca: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42eed2: 2202 d61a |00cd: new-instance v2, Lorg/purple/smoke/Settings$16; // type@1ad6 │ │ +42eed6: 7020 56bc 5200 |00cf: invoke-direct {v2, v5}, Lorg/purple/smoke/Settings$16;.:(Lorg/purple/smoke/Settings;)V // method@bc56 │ │ +42eedc: 1403 de00 087f |00d2: const v3, #float 1.8078e+38 // #7f0800de │ │ +42eee2: 6e20 eabc 3500 |00d5: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42eee8: 0c03 |00d8: move-result-object v3 │ │ +42eeea: 1f03 5e0a |00d9: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ +42eeee: 2204 d71a |00db: new-instance v4, Lorg/purple/smoke/Settings$17; // type@1ad7 │ │ +42eef2: 7030 58bc 5402 |00dd: invoke-direct {v4, v5, v2}, Lorg/purple/smoke/Settings$17;.:(Lorg/purple/smoke/Settings;Landroid/content/DialogInterface$OnCancelListener;)V // method@bc58 │ │ +42eef8: 6e20 e258 4300 |00e0: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42eefe: 1402 e000 087f |00e3: const v2, #float 1.8078e+38 // #7f0800e0 │ │ +42ef04: 6e20 eabc 2500 |00e6: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ef0a: 0c02 |00e9: move-result-object v2 │ │ +42ef0c: 1f02 5e0a |00ea: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ef10: 2203 d81a |00ec: new-instance v3, Lorg/purple/smoke/Settings$18; // type@1ad8 │ │ +42ef14: 7020 5abc 5300 |00ee: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$18;.:(Lorg/purple/smoke/Settings;)V // method@bc5a │ │ +42ef1a: 6e20 e258 3200 |00f1: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ef20: 1402 e100 087f |00f4: const v2, #float 1.8078e+38 // #7f0800e1 │ │ +42ef26: 6e20 eabc 2500 |00f7: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ef2c: 0c02 |00fa: move-result-object v2 │ │ +42ef2e: 1f02 5e0a |00fb: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42ef32: 2203 d91a |00fd: new-instance v3, Lorg/purple/smoke/Settings$19; // type@1ad9 │ │ +42ef36: 7020 5cbc 5300 |00ff: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$19;.:(Lorg/purple/smoke/Settings;)V // method@bc5c │ │ +42ef3c: 6e20 e258 3200 |0102: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ef42: 2202 dd1a |0105: new-instance v2, Lorg/purple/smoke/Settings$20; // type@1add │ │ +42ef46: 7020 65bc 5200 |0107: invoke-direct {v2, v5}, Lorg/purple/smoke/Settings$20;.:(Lorg/purple/smoke/Settings;)V // method@bc65 │ │ +42ef4c: 1403 e600 087f |010a: const v3, #float 1.8078e+38 // #7f0800e6 │ │ +42ef52: 6e20 eabc 3500 |010d: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ef58: 0c03 |0110: move-result-object v3 │ │ +42ef5a: 1f03 5e0a |0111: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ +42ef5e: 2204 de1a |0113: new-instance v4, Lorg/purple/smoke/Settings$21; // type@1ade │ │ +42ef62: 7020 67bc 5400 |0115: invoke-direct {v4, v5}, Lorg/purple/smoke/Settings$21;.:(Lorg/purple/smoke/Settings;)V // method@bc67 │ │ +42ef68: 6e20 e258 4300 |0118: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ef6e: 1403 e800 087f |011b: const v3, #float 1.8078e+38 // #7f0800e8 │ │ +42ef74: 6e20 eabc 3500 |011e: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ef7a: 0c03 |0121: move-result-object v3 │ │ +42ef7c: 1f03 5e0a |0122: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ +42ef80: 2204 df1a |0124: new-instance v4, Lorg/purple/smoke/Settings$22; // type@1adf │ │ +42ef84: 7020 69bc 5400 |0126: invoke-direct {v4, v5}, Lorg/purple/smoke/Settings$22;.:(Lorg/purple/smoke/Settings;)V // method@bc69 │ │ +42ef8a: 6e20 e258 4300 |0129: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42ef90: 1403 ff00 087f |012c: const v3, #float 1.8078e+38 // #7f0800ff │ │ +42ef96: 6e20 eabc 3500 |012f: invoke-virtual {v5, v3}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42ef9c: 0c03 |0132: move-result-object v3 │ │ +42ef9e: 1f03 5e0a |0133: check-cast v3, Landroid/widget/Button; // type@0a5e │ │ +42efa2: 2204 e01a |0135: new-instance v4, Lorg/purple/smoke/Settings$23; // type@1ae0 │ │ +42efa6: 7030 6bbc 5402 |0137: invoke-direct {v4, v5, v2}, Lorg/purple/smoke/Settings$23;.:(Lorg/purple/smoke/Settings;Landroid/content/DialogInterface$OnCancelListener;)V // method@bc6b │ │ +42efac: 6e20 e258 4300 |013a: invoke-virtual {v3, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42efb2: 1402 0201 087f |013d: const v2, #float 1.8078e+38 // #7f080102 │ │ +42efb8: 6e20 eabc 2500 |0140: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42efbe: 0c02 |0143: move-result-object v2 │ │ +42efc0: 1f02 5e0a |0144: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42efc4: 2203 e11a |0146: new-instance v3, Lorg/purple/smoke/Settings$24; // type@1ae1 │ │ +42efc8: 7020 6dbc 5300 |0148: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$24;.:(Lorg/purple/smoke/Settings;)V // method@bc6d │ │ +42efce: 6e20 e258 3200 |014b: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42efd4: 1402 0901 087f |014e: const v2, #float 1.8078e+38 // #7f080109 │ │ +42efda: 6e20 eabc 2500 |0151: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42efe0: 0c02 |0154: move-result-object v2 │ │ +42efe2: 1f02 5e0a |0155: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42efe6: 2203 e21a |0157: new-instance v3, Lorg/purple/smoke/Settings$25; // type@1ae2 │ │ +42efea: 7020 6fbc 5300 |0159: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$25;.:(Lorg/purple/smoke/Settings;)V // method@bc6f │ │ +42eff0: 6e20 e258 3200 |015c: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42eff6: 1402 0a01 087f |015f: const v2, #float 1.8078e+38 // #7f08010a │ │ +42effc: 6e20 eabc 2500 |0162: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f002: 0c02 |0165: move-result-object v2 │ │ +42f004: 1f02 5e0a |0166: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42f008: 2203 e31a |0168: new-instance v3, Lorg/purple/smoke/Settings$26; // type@1ae3 │ │ +42f00c: 7020 71bc 5300 |016a: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$26;.:(Lorg/purple/smoke/Settings;)V // method@bc71 │ │ +42f012: 6e20 e258 3200 |016d: invoke-virtual {v2, v3}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +42f018: 1402 2500 087f |0170: const v2, #float 1.80776e+38 // #7f080025 │ │ +42f01e: 6e20 eabc 2500 |0173: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f024: 0c02 |0176: move-result-object v2 │ │ +42f026: 1f02 8d0a |0177: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42f02a: 2203 e41a |0179: new-instance v3, Lorg/purple/smoke/Settings$27; // type@1ae4 │ │ +42f02e: 7020 73bc 5300 |017b: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$27;.:(Lorg/purple/smoke/Settings;)V // method@bc73 │ │ +42f034: 6e20 e25a 3200 |017e: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +42f03a: 1402 2c00 087f |0181: const v2, #float 1.80776e+38 // #7f08002c │ │ +42f040: 6e20 eabc 2500 |0184: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f046: 0c02 |0187: move-result-object v2 │ │ +42f048: 1f02 8d0a |0188: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42f04c: 2203 e51a |018a: new-instance v3, Lorg/purple/smoke/Settings$28; // type@1ae5 │ │ +42f050: 7020 75bc 5300 |018c: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$28;.:(Lorg/purple/smoke/Settings;)V // method@bc75 │ │ +42f056: 6e20 e25a 3200 |018f: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +42f05c: 1402 5c00 087f |0192: const v2, #float 1.80777e+38 // #7f08005c │ │ +42f062: 6e20 eabc 2500 |0195: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f068: 0c02 |0198: move-result-object v2 │ │ +42f06a: 1f02 8d0a |0199: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42f06e: 2203 e61a |019b: new-instance v3, Lorg/purple/smoke/Settings$29; // type@1ae6 │ │ +42f072: 7020 77bc 5300 |019d: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$29;.:(Lorg/purple/smoke/Settings;)V // method@bc77 │ │ +42f078: 6e20 e25a 3200 |01a0: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +42f07e: 1402 7300 087f |01a3: const v2, #float 1.80777e+38 // #7f080073 │ │ +42f084: 6e20 eabc 2500 |01a6: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f08a: 0c02 |01a9: move-result-object v2 │ │ +42f08c: 1f02 8d0a |01aa: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42f090: 2203 eb1a |01ac: new-instance v3, Lorg/purple/smoke/Settings$30; // type@1aeb │ │ +42f094: 7020 82bc 5300 |01ae: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$30;.:(Lorg/purple/smoke/Settings;)V // method@bc82 │ │ +42f09a: 6e20 e25a 3200 |01b1: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +42f0a0: 1402 a600 087f |01b4: const v2, #float 1.80778e+38 // #7f0800a6 │ │ +42f0a6: 6e20 eabc 2500 |01b7: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f0ac: 0c02 |01ba: move-result-object v2 │ │ +42f0ae: 1f02 8d0a |01bb: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42f0b2: 2203 ec1a |01bd: new-instance v3, Lorg/purple/smoke/Settings$31; // type@1aec │ │ +42f0b6: 7020 84bc 5300 |01bf: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$31;.:(Lorg/purple/smoke/Settings;)V // method@bc84 │ │ +42f0bc: 6e20 e25a 3200 |01c2: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +42f0c2: 1402 b600 087f |01c5: const v2, #float 1.80779e+38 // #7f0800b6 │ │ +42f0c8: 6e20 eabc 2500 |01c8: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f0ce: 0c02 |01cb: move-result-object v2 │ │ +42f0d0: 1f02 8d0a |01cc: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42f0d4: 2203 ed1a |01ce: new-instance v3, Lorg/purple/smoke/Settings$32; // type@1aed │ │ +42f0d8: 7020 86bc 5300 |01d0: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$32;.:(Lorg/purple/smoke/Settings;)V // method@bc86 │ │ +42f0de: 6e20 e25a 3200 |01d3: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +42f0e4: 1402 d500 087f |01d6: const v2, #float 1.80779e+38 // #7f0800d5 │ │ +42f0ea: 6e20 eabc 2500 |01d9: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f0f0: 0c02 |01dc: move-result-object v2 │ │ +42f0f2: 1f02 8d0a |01dd: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42f0f6: 2203 ee1a |01df: new-instance v3, Lorg/purple/smoke/Settings$33; // type@1aee │ │ +42f0fa: 7020 88bc 5300 |01e1: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$33;.:(Lorg/purple/smoke/Settings;)V // method@bc88 │ │ +42f100: 6e20 e25a 3200 |01e4: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +42f106: 1402 0801 087f |01e7: const v2, #float 1.8078e+38 // #7f080108 │ │ +42f10c: 6e20 eabc 2500 |01ea: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f112: 0c02 |01ed: move-result-object v2 │ │ +42f114: 1f02 8d0a |01ee: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42f118: 2203 ef1a |01f0: new-instance v3, Lorg/purple/smoke/Settings$34; // type@1aef │ │ +42f11c: 7020 8abc 5300 |01f2: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$34;.:(Lorg/purple/smoke/Settings;)V // method@bc8a │ │ +42f122: 6e20 e25a 3200 |01f5: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +42f128: 1402 0c01 087f |01f8: const v2, #float 1.8078e+38 // #7f08010c │ │ +42f12e: 6e20 eabc 2500 |01fb: invoke-virtual {v5, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f134: 0c02 |01fe: move-result-object v2 │ │ +42f136: 1f02 8d0a |01ff: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42f13a: 2203 f01a |0201: new-instance v3, Lorg/purple/smoke/Settings$35; // type@1af0 │ │ +42f13e: 7020 8cbc 5300 |0203: invoke-direct {v3, v5}, Lorg/purple/smoke/Settings$35;.:(Lorg/purple/smoke/Settings;)V // method@bc8c │ │ +42f144: 6e20 e25a 3200 |0206: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setOnCheckedChangeListener:(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V // method@5ae2 │ │ +42f14a: 2202 f11a |0209: new-instance v2, Lorg/purple/smoke/Settings$36; // type@1af1 │ │ +42f14e: 7020 8ebc 5200 |020b: invoke-direct {v2, v5}, Lorg/purple/smoke/Settings$36;.:(Lorg/purple/smoke/Settings;)V // method@bc8e │ │ +42f154: 6e20 c95a 2000 |020e: invoke-virtual {v0, v2}, Landroid/widget/Spinner;.setOnItemSelectedListener:(Landroid/widget/AdapterView$OnItemSelectedListener;)V // method@5ac9 │ │ +42f15a: 2200 f21a |0211: new-instance v0, Lorg/purple/smoke/Settings$37; // type@1af2 │ │ +42f15e: 7020 91bc 5000 |0213: invoke-direct {v0, v5}, Lorg/purple/smoke/Settings$37;.:(Lorg/purple/smoke/Settings;)V // method@bc91 │ │ +42f164: 6e20 025b 0100 |0216: invoke-virtual {v1, v0}, Landroid/widget/TextView;.addTextChangedListener:(Landroid/text/TextWatcher;)V // method@5b02 │ │ +42f16a: 0e00 |0219: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=1650 │ │ 0x000c line=1652 │ │ 0x0015 line=1654 │ │ 0x001b line=1655 │ │ 0x0026 line=1666 │ │ @@ -1571774,62 +1571773,62 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 10 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 96 16-bit code units │ │ -42f170: |[42f170] org.purple.smoke.Settings.preparePKI:()V │ │ -42f180: 6e10 f4bc 0900 |0000: invoke-virtual {v9}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ -42f186: 0a00 |0003: move-result v0 │ │ -42f188: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -42f18c: 0e00 |0006: return-void │ │ -42f18e: 1400 7500 087f |0007: const v0, #float 1.80777e+38 // #7f080075 │ │ -42f194: 6e20 eabc 0900 |000a: invoke-virtual {v9, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f19a: 0c00 |000d: move-result-object v0 │ │ -42f19c: 0705 |000e: move-object v5, v0 │ │ -42f19e: 1f05 7c0a |000f: check-cast v5, Landroid/widget/ProgressBar; // type@0a7c │ │ -42f1a2: 1400 ca00 087f |0011: const v0, #float 1.80779e+38 // #7f0800ca │ │ -42f1a8: 6e20 eabc 0900 |0014: invoke-virtual {v9, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f1ae: 0c00 |0017: move-result-object v0 │ │ -42f1b0: 0706 |0018: move-object v6, v0 │ │ -42f1b2: 1f06 8b0a |0019: check-cast v6, Landroid/widget/Spinner; // type@0a8b │ │ -42f1b6: 1400 cc00 087f |001b: const v0, #float 1.80779e+38 // #7f0800cc │ │ -42f1bc: 6e20 eabc 0900 |001e: invoke-virtual {v9, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f1c2: 0c00 |0021: move-result-object v0 │ │ -42f1c4: 0707 |0022: move-object v7, v0 │ │ -42f1c6: 1f07 8b0a |0023: check-cast v7, Landroid/widget/Spinner; // type@0a8b │ │ -42f1ca: 1210 |0025: const/4 v0, #int 1 // #1 │ │ -42f1cc: 6e20 5a5a 0500 |0026: invoke-virtual {v5, v0}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ -42f1d2: 1200 |0029: const/4 v0, #int 0 // #0 │ │ -42f1d4: 6e20 5f5a 0500 |002a: invoke-virtual {v5, v0}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42f1da: 6e10 f2bc 0900 |002d: invoke-virtual {v9}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ -42f1e0: 0c01 |0030: move-result-object v1 │ │ -42f1e2: 1302 1000 |0031: const/16 v2, #int 16 // #10 │ │ -42f1e6: 6e30 9057 2102 |0033: invoke-virtual {v1, v2, v2}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ -42f1ec: 1401 9200 087f |0036: const v1, #float 1.80778e+38 // #7f080092 │ │ -42f1f2: 6e20 eabc 1900 |0039: invoke-virtual {v9, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f1f8: 0c01 |003c: move-result-object v1 │ │ -42f1fa: 7120 ebbb 0100 |003d: invoke-static {v1, v0}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ -42f200: 2200 f40a |0040: new-instance v0, Ljava/lang/Thread; // type@0af4 │ │ -42f204: 2208 fb1a |0042: new-instance v8, Lorg/purple/smoke/Settings$4SingleShot; // type@1afb │ │ -42f208: 6e10 ba5a 0600 |0044: invoke-virtual {v6}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -42f20e: 0c01 |0047: move-result-object v1 │ │ -42f210: 6e10 965c 0100 |0048: invoke-virtual {v1}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -42f216: 0c03 |004b: move-result-object v3 │ │ -42f218: 6e10 ba5a 0700 |004c: invoke-virtual {v7}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -42f21e: 0c01 |004f: move-result-object v1 │ │ -42f220: 6e10 965c 0100 |0050: invoke-virtual {v1}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -42f226: 0c04 |0053: move-result-object v4 │ │ -42f228: 0781 |0054: move-object v1, v8 │ │ -42f22a: 0792 |0055: move-object v2, v9 │ │ -42f22c: 7607 a7bc 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@bca7 │ │ -42f232: 7020 0e5d 8000 |0059: invoke-direct {v0, v8}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ -42f238: 6e10 195d 0000 |005c: invoke-virtual {v0}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ -42f23e: 0e00 |005f: return-void │ │ +42f16c: |[42f16c] org.purple.smoke.Settings.preparePKI:()V │ │ +42f17c: 6e10 f4bc 0900 |0000: invoke-virtual {v9}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ +42f182: 0a00 |0003: move-result v0 │ │ +42f184: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +42f188: 0e00 |0006: return-void │ │ +42f18a: 1400 7500 087f |0007: const v0, #float 1.80777e+38 // #7f080075 │ │ +42f190: 6e20 eabc 0900 |000a: invoke-virtual {v9, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f196: 0c00 |000d: move-result-object v0 │ │ +42f198: 0705 |000e: move-object v5, v0 │ │ +42f19a: 1f05 7c0a |000f: check-cast v5, Landroid/widget/ProgressBar; // type@0a7c │ │ +42f19e: 1400 ca00 087f |0011: const v0, #float 1.80779e+38 // #7f0800ca │ │ +42f1a4: 6e20 eabc 0900 |0014: invoke-virtual {v9, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f1aa: 0c00 |0017: move-result-object v0 │ │ +42f1ac: 0706 |0018: move-object v6, v0 │ │ +42f1ae: 1f06 8b0a |0019: check-cast v6, Landroid/widget/Spinner; // type@0a8b │ │ +42f1b2: 1400 cc00 087f |001b: const v0, #float 1.80779e+38 // #7f0800cc │ │ +42f1b8: 6e20 eabc 0900 |001e: invoke-virtual {v9, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f1be: 0c00 |0021: move-result-object v0 │ │ +42f1c0: 0707 |0022: move-object v7, v0 │ │ +42f1c2: 1f07 8b0a |0023: check-cast v7, Landroid/widget/Spinner; // type@0a8b │ │ +42f1c6: 1210 |0025: const/4 v0, #int 1 // #1 │ │ +42f1c8: 6e20 5a5a 0500 |0026: invoke-virtual {v5, v0}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ +42f1ce: 1200 |0029: const/4 v0, #int 0 // #0 │ │ +42f1d0: 6e20 5f5a 0500 |002a: invoke-virtual {v5, v0}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42f1d6: 6e10 f2bc 0900 |002d: invoke-virtual {v9}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ +42f1dc: 0c01 |0030: move-result-object v1 │ │ +42f1de: 1302 1000 |0031: const/16 v2, #int 16 // #10 │ │ +42f1e2: 6e30 9057 2102 |0033: invoke-virtual {v1, v2, v2}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ +42f1e8: 1401 9200 087f |0036: const v1, #float 1.80778e+38 // #7f080092 │ │ +42f1ee: 6e20 eabc 1900 |0039: invoke-virtual {v9, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f1f4: 0c01 |003c: move-result-object v1 │ │ +42f1f6: 7120 ebbb 0100 |003d: invoke-static {v1, v0}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ +42f1fc: 2200 f40a |0040: new-instance v0, Ljava/lang/Thread; // type@0af4 │ │ +42f200: 2208 fb1a |0042: new-instance v8, Lorg/purple/smoke/Settings$4SingleShot; // type@1afb │ │ +42f204: 6e10 ba5a 0600 |0044: invoke-virtual {v6}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +42f20a: 0c01 |0047: move-result-object v1 │ │ +42f20c: 6e10 965c 0100 |0048: invoke-virtual {v1}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +42f212: 0c03 |004b: move-result-object v3 │ │ +42f214: 6e10 ba5a 0700 |004c: invoke-virtual {v7}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +42f21a: 0c01 |004f: move-result-object v1 │ │ +42f21c: 6e10 965c 0100 |0050: invoke-virtual {v1}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +42f222: 0c04 |0053: move-result-object v4 │ │ +42f224: 0781 |0054: move-object v1, v8 │ │ +42f226: 0792 |0055: move-object v2, v9 │ │ +42f228: 7607 a7bc 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@bca7 │ │ +42f22e: 7020 0e5d 8000 |0059: invoke-direct {v0, v8}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ +42f234: 6e10 195d 0000 |005c: invoke-virtual {v0}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ +42f23a: 0e00 |005f: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2536 │ │ 0x000a line=2540 │ │ 0x0014 line=2542 │ │ 0x001e line=2544 │ │ 0x0026 line=2546 │ │ @@ -1571848,17 +1571847,17 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -42f240: |[42f240] org.purple.smoke.Settings.releaseResources:()V │ │ -42f250: 7010 1abd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.stopTimers:()V // method@bd1a │ │ -42f256: 0e00 |0003: return-void │ │ +42f23c: |[42f23c] org.purple.smoke.Settings.releaseResources:()V │ │ +42f24c: 7010 1abd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Settings;.stopTimers:()V // method@bd1a │ │ +42f252: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2741 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lorg/purple/smoke/Settings; │ │ │ │ #41 : (in Lorg/purple/smoke/Settings;) │ │ @@ -1571866,41 +1571865,41 @@ │ │ type : '(Ljava/lang/String;)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 57 16-bit code units │ │ -42f258: |[42f258] org.purple.smoke.Settings.requestKeysOf:(Ljava/lang/String;)V │ │ -42f268: 6e10 f4bc 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ -42f26e: 0a00 |0003: move-result v0 │ │ -42f270: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -42f274: 0e00 |0006: return-void │ │ -42f276: 1400 0101 087f |0007: const v0, #float 1.8078e+38 // #7f080101 │ │ -42f27c: 6e20 eabc 0400 |000a: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f282: 0c00 |000d: move-result-object v0 │ │ -42f284: 1f00 7c0a |000e: check-cast v0, Landroid/widget/ProgressBar; // type@0a7c │ │ -42f288: 1211 |0010: const/4 v1, #int 1 // #1 │ │ -42f28a: 6e20 5a5a 1000 |0011: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ -42f290: 1201 |0014: const/4 v1, #int 0 // #0 │ │ -42f292: 6e20 5f5a 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42f298: 6e10 f2bc 0400 |0018: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ -42f29e: 0c02 |001b: move-result-object v2 │ │ -42f2a0: 1303 1000 |001c: const/16 v3, #int 16 // #10 │ │ -42f2a4: 6e30 9057 3203 |001e: invoke-virtual {v2, v3, v3}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ -42f2aa: 1402 9200 087f |0021: const v2, #float 1.80778e+38 // #7f080092 │ │ -42f2b0: 6e20 eabc 2400 |0024: invoke-virtual {v4, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f2b6: 0c02 |0027: move-result-object v2 │ │ -42f2b8: 7120 ebbb 1200 |0028: invoke-static {v2, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ -42f2be: 2201 f40a |002b: new-instance v1, Ljava/lang/Thread; // type@0af4 │ │ -42f2c2: 2202 fe1a |002d: new-instance v2, Lorg/purple/smoke/Settings$5SingleShot; // type@1afe │ │ -42f2c6: 7040 aebc 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@bcae │ │ -42f2cc: 7020 0e5d 2100 |0032: invoke-direct {v1, v2}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ -42f2d2: 6e10 195d 0100 |0035: invoke-virtual {v1}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ -42f2d8: 0e00 |0038: return-void │ │ +42f254: |[42f254] org.purple.smoke.Settings.requestKeysOf:(Ljava/lang/String;)V │ │ +42f264: 6e10 f4bc 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ +42f26a: 0a00 |0003: move-result v0 │ │ +42f26c: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +42f270: 0e00 |0006: return-void │ │ +42f272: 1400 0101 087f |0007: const v0, #float 1.8078e+38 // #7f080101 │ │ +42f278: 6e20 eabc 0400 |000a: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f27e: 0c00 |000d: move-result-object v0 │ │ +42f280: 1f00 7c0a |000e: check-cast v0, Landroid/widget/ProgressBar; // type@0a7c │ │ +42f284: 1211 |0010: const/4 v1, #int 1 // #1 │ │ +42f286: 6e20 5a5a 1000 |0011: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ +42f28c: 1201 |0014: const/4 v1, #int 0 // #0 │ │ +42f28e: 6e20 5f5a 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42f294: 6e10 f2bc 0400 |0018: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ +42f29a: 0c02 |001b: move-result-object v2 │ │ +42f29c: 1303 1000 |001c: const/16 v3, #int 16 // #10 │ │ +42f2a0: 6e30 9057 3203 |001e: invoke-virtual {v2, v3, v3}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ +42f2a6: 1402 9200 087f |0021: const v2, #float 1.80778e+38 // #7f080092 │ │ +42f2ac: 6e20 eabc 2400 |0024: invoke-virtual {v4, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f2b2: 0c02 |0027: move-result-object v2 │ │ +42f2b4: 7120 ebbb 1200 |0028: invoke-static {v2, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ +42f2ba: 2201 f40a |002b: new-instance v1, Ljava/lang/Thread; // type@0af4 │ │ +42f2be: 2202 fe1a |002d: new-instance v2, Lorg/purple/smoke/Settings$5SingleShot; // type@1afe │ │ +42f2c2: 7040 aebc 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@bcae │ │ +42f2c8: 7020 0e5d 2100 |0032: invoke-direct {v1, v2}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ +42f2ce: 6e10 195d 0100 |0035: invoke-virtual {v1}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ +42f2d4: 0e00 |0038: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2746 │ │ 0x000a line=2750 │ │ 0x0011 line=2752 │ │ 0x0015 line=2753 │ │ 0x0018 line=2754 │ │ @@ -1571916,41 +1571915,41 @@ │ │ type : '(Ljava/lang/String;)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 57 16-bit code units │ │ -42f2dc: |[42f2dc] org.purple.smoke.Settings.shareKeysOf:(Ljava/lang/String;)V │ │ -42f2ec: 6e10 f4bc 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ -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 eabc 0400 |000a: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -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 f2bc 0400 |0018: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ -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 eabc 2400 |0024: invoke-virtual {v4, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f33a: 0c02 |0027: move-result-object v2 │ │ -42f33c: 7120 ebbb 1200 |0028: invoke-static {v2, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ -42f342: 2201 f40a |002b: new-instance v1, Ljava/lang/Thread; // type@0af4 │ │ -42f346: 2202 011b |002d: new-instance v2, Lorg/purple/smoke/Settings$6SingleShot; // type@1b01 │ │ -42f34a: 7040 b5bc 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@bcb5 │ │ -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 │ │ +42f2d8: |[42f2d8] org.purple.smoke.Settings.shareKeysOf:(Ljava/lang/String;)V │ │ +42f2e8: 6e10 f4bc 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ +42f2ee: 0a00 |0003: move-result v0 │ │ +42f2f0: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +42f2f4: 0e00 |0006: return-void │ │ +42f2f6: 1400 0101 087f |0007: const v0, #float 1.8078e+38 // #7f080101 │ │ +42f2fc: 6e20 eabc 0400 |000a: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f302: 0c00 |000d: move-result-object v0 │ │ +42f304: 1f00 7c0a |000e: check-cast v0, Landroid/widget/ProgressBar; // type@0a7c │ │ +42f308: 1211 |0010: const/4 v1, #int 1 // #1 │ │ +42f30a: 6e20 5a5a 1000 |0011: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ +42f310: 1201 |0014: const/4 v1, #int 0 // #0 │ │ +42f312: 6e20 5f5a 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42f318: 6e10 f2bc 0400 |0018: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ +42f31e: 0c02 |001b: move-result-object v2 │ │ +42f320: 1303 1000 |001c: const/16 v3, #int 16 // #10 │ │ +42f324: 6e30 9057 3203 |001e: invoke-virtual {v2, v3, v3}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ +42f32a: 1402 9200 087f |0021: const v2, #float 1.80778e+38 // #7f080092 │ │ +42f330: 6e20 eabc 2400 |0024: invoke-virtual {v4, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f336: 0c02 |0027: move-result-object v2 │ │ +42f338: 7120 ebbb 1200 |0028: invoke-static {v2, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ +42f33e: 2201 f40a |002b: new-instance v1, Ljava/lang/Thread; // type@0af4 │ │ +42f342: 2202 011b |002d: new-instance v2, Lorg/purple/smoke/Settings$6SingleShot; // type@1b01 │ │ +42f346: 7040 b5bc 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@bcb5 │ │ +42f34c: 7020 0e5d 2100 |0032: invoke-direct {v1, v2}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ +42f352: 6e10 195d 0100 |0035: invoke-virtual {v1}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ +42f358: 0e00 |0038: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2820 │ │ 0x000a line=2824 │ │ 0x0011 line=2826 │ │ 0x0015 line=2827 │ │ 0x0018 line=2828 │ │ @@ -1571966,30 +1571965,30 @@ │ │ type : '(I)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 29 16-bit code units │ │ -42f360: |[42f360] org.purple.smoke.Settings.shareSipHashId:(I)V │ │ -42f370: 6e10 f4bc 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ -42f376: 0a00 |0003: move-result v0 │ │ -42f378: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -42f37c: 0e00 |0006: return-void │ │ -42f37e: 6200 0a5f |0007: sget-object v0, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42f382: 6e10 92b9 0000 |0009: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.hasValidOzoneKeys:()Z // method@b992 │ │ -42f388: 0a00 |000c: move-result v0 │ │ -42f38a: 3900 0800 |000d: if-nez v0, 0015 // +0008 │ │ -42f38e: 1a02 d944 |000f: const-string v2, "Please prepare Ozone credentials." // string@44d9 │ │ -42f392: 7120 fabb 2100 |0011: invoke-static {v1, v2}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ -42f398: 0e00 |0014: return-void │ │ -42f39a: 7100 10bb 0000 |0015: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -42f3a0: 0c00 |0018: move-result-object v0 │ │ -42f3a2: 6e20 0cbb 2000 |0019: invoke-virtual {v0, v2}, Lorg/purple/smoke/Kernel;.enqueueShareSipHashIdMessage:(I)V // method@bb0c │ │ -42f3a8: 0e00 |001c: return-void │ │ +42f35c: |[42f35c] org.purple.smoke.Settings.shareSipHashId:(I)V │ │ +42f36c: 6e10 f4bc 0100 |0000: invoke-virtual {v1}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ +42f372: 0a00 |0003: move-result v0 │ │ +42f374: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +42f378: 0e00 |0006: return-void │ │ +42f37a: 6200 0a5f |0007: sget-object v0, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42f37e: 6e10 92b9 0000 |0009: invoke-virtual {v0}, Lorg/purple/smoke/Cryptography;.hasValidOzoneKeys:()Z // method@b992 │ │ +42f384: 0a00 |000c: move-result v0 │ │ +42f386: 3900 0800 |000d: if-nez v0, 0015 // +0008 │ │ +42f38a: 1a02 d944 |000f: const-string v2, "Please prepare Ozone credentials." // string@44d9 │ │ +42f38e: 7120 fabb 2100 |0011: invoke-static {v1, v2}, Lorg/purple/smoke/Miscellaneous;.showErrorDialog:(Landroid/content/Context;Ljava/lang/String;)V // method@bbfa │ │ +42f394: 0e00 |0014: return-void │ │ +42f396: 7100 10bb 0000 |0015: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +42f39c: 0c00 |0018: move-result-object v0 │ │ +42f39e: 6e20 0cbb 2000 |0019: invoke-virtual {v0, v2}, Lorg/purple/smoke/Kernel;.enqueueShareSipHashIdMessage:(I)V // method@bb0c │ │ +42f3a4: 0e00 |001c: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2899 │ │ 0x0007 line=2901 │ │ 0x0011 line=2904 │ │ 0x0015 line=2908 │ │ locals : │ │ @@ -1572001,21 +1572000,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -42f3ac: |[42f3ac] org.purple.smoke.Settings.showAuthenticateActivity:()V │ │ -42f3bc: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -42f3c0: 1c01 481a |0002: const-class v1, Lorg/purple/smoke/Authenticate; // type@1a48 │ │ -42f3c4: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -42f3ca: 6e20 17bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd17 │ │ -42f3d0: 6e10 ebbc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bceb │ │ -42f3d6: 0e00 |000d: return-void │ │ +42f3a8: |[42f3a8] org.purple.smoke.Settings.showAuthenticateActivity:()V │ │ +42f3b8: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +42f3bc: 1c01 481a |0002: const-class v1, Lorg/purple/smoke/Authenticate; // type@1a48 │ │ +42f3c0: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +42f3c6: 6e20 17bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd17 │ │ +42f3cc: 6e10 ebbc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bceb │ │ +42f3d2: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2913 │ │ 0x0007 line=2915 │ │ 0x000a line=2916 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Settings; │ │ @@ -1572025,21 +1572024,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -42f3d8: |[42f3d8] org.purple.smoke.Settings.showChatActivity:()V │ │ -42f3e8: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -42f3ec: 1c01 5a1a |0002: const-class v1, Lorg/purple/smoke/Chat; // type@1a5a │ │ -42f3f0: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -42f3f6: 6e20 17bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd17 │ │ -42f3fc: 6e10 ebbc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bceb │ │ -42f402: 0e00 |000d: return-void │ │ +42f3d4: |[42f3d4] org.purple.smoke.Settings.showChatActivity:()V │ │ +42f3e4: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +42f3e8: 1c01 5a1a |0002: const-class v1, Lorg/purple/smoke/Chat; // type@1a5a │ │ +42f3ec: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +42f3f2: 6e20 17bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd17 │ │ +42f3f8: 6e10 ebbc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bceb │ │ +42f3fe: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2921 │ │ 0x0007 line=2923 │ │ 0x000a line=2924 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Settings; │ │ @@ -1572049,41 +1572048,41 @@ │ │ type : '(Ljava/lang/String;)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 57 16-bit code units │ │ -42f404: |[42f404] org.purple.smoke.Settings.showDetailsOfParticipant:(Ljava/lang/String;)V │ │ -42f414: 6e10 f4bc 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ -42f41a: 0a00 |0003: move-result v0 │ │ -42f41c: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -42f420: 0e00 |0006: return-void │ │ -42f422: 1400 0101 087f |0007: const v0, #float 1.8078e+38 // #7f080101 │ │ -42f428: 6e20 eabc 0400 |000a: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f42e: 0c00 |000d: move-result-object v0 │ │ -42f430: 1f00 7c0a |000e: check-cast v0, Landroid/widget/ProgressBar; // type@0a7c │ │ -42f434: 1211 |0010: const/4 v1, #int 1 // #1 │ │ -42f436: 6e20 5a5a 1000 |0011: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ -42f43c: 1201 |0014: const/4 v1, #int 0 // #0 │ │ -42f43e: 6e20 5f5a 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ -42f444: 6e10 f2bc 0400 |0018: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ -42f44a: 0c02 |001b: move-result-object v2 │ │ -42f44c: 1303 1000 |001c: const/16 v3, #int 16 // #10 │ │ -42f450: 6e30 9057 3203 |001e: invoke-virtual {v2, v3, v3}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ -42f456: 1402 9200 087f |0021: const v2, #float 1.80778e+38 // #7f080092 │ │ -42f45c: 6e20 eabc 2400 |0024: invoke-virtual {v4, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f462: 0c02 |0027: move-result-object v2 │ │ -42f464: 7120 ebbb 1200 |0028: invoke-static {v2, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ -42f46a: 2201 f40a |002b: new-instance v1, Ljava/lang/Thread; // type@0af4 │ │ -42f46e: 2202 041b |002d: new-instance v2, Lorg/purple/smoke/Settings$7SingleShot; // type@1b04 │ │ -42f472: 7040 bcbc 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@bcbc │ │ -42f478: 7020 0e5d 2100 |0032: invoke-direct {v1, v2}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ -42f47e: 6e10 195d 0100 |0035: invoke-virtual {v1}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ -42f484: 0e00 |0038: return-void │ │ +42f400: |[42f400] org.purple.smoke.Settings.showDetailsOfParticipant:(Ljava/lang/String;)V │ │ +42f410: 6e10 f4bc 0400 |0000: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.isFinishing:()Z // method@bcf4 │ │ +42f416: 0a00 |0003: move-result v0 │ │ +42f418: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +42f41c: 0e00 |0006: return-void │ │ +42f41e: 1400 0101 087f |0007: const v0, #float 1.8078e+38 // #7f080101 │ │ +42f424: 6e20 eabc 0400 |000a: invoke-virtual {v4, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f42a: 0c00 |000d: move-result-object v0 │ │ +42f42c: 1f00 7c0a |000e: check-cast v0, Landroid/widget/ProgressBar; // type@0a7c │ │ +42f430: 1211 |0010: const/4 v1, #int 1 // #1 │ │ +42f432: 6e20 5a5a 1000 |0011: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setIndeterminate:(Z)V // method@5a5a │ │ +42f438: 1201 |0014: const/4 v1, #int 0 // #0 │ │ +42f43a: 6e20 5f5a 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/ProgressBar;.setVisibility:(I)V // method@5a5f │ │ +42f440: 6e10 f2bc 0400 |0018: invoke-virtual {v4}, Lorg/purple/smoke/Settings;.getWindow:()Landroid/view/Window; // method@bcf2 │ │ +42f446: 0c02 |001b: move-result-object v2 │ │ +42f448: 1303 1000 |001c: const/16 v3, #int 16 // #10 │ │ +42f44c: 6e30 9057 3203 |001e: invoke-virtual {v2, v3, v3}, Landroid/view/Window;.setFlags:(II)V // method@5790 │ │ +42f452: 1402 9200 087f |0021: const v2, #float 1.80778e+38 // #7f080092 │ │ +42f458: 6e20 eabc 2400 |0024: invoke-virtual {v4, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f45e: 0c02 |0027: move-result-object v2 │ │ +42f460: 7120 ebbb 1200 |0028: invoke-static {v2, v1}, Lorg/purple/smoke/Miscellaneous;.enableChildren:(Landroid/view/View;Z)V // method@bbeb │ │ +42f466: 2201 f40a |002b: new-instance v1, Ljava/lang/Thread; // type@0af4 │ │ +42f46a: 2202 041b |002d: new-instance v2, Lorg/purple/smoke/Settings$7SingleShot; // type@1b04 │ │ +42f46e: 7040 bcbc 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@bcbc │ │ +42f474: 7020 0e5d 2100 |0032: invoke-direct {v1, v2}, Ljava/lang/Thread;.:(Ljava/lang/Runnable;)V // method@5d0e │ │ +42f47a: 6e10 195d 0100 |0035: invoke-virtual {v1}, Ljava/lang/Thread;.start:()V // method@5d19 │ │ +42f480: 0e00 |0038: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=2929 │ │ 0x000a line=2933 │ │ 0x0011 line=2935 │ │ 0x0015 line=2936 │ │ 0x0018 line=2937 │ │ @@ -1572099,21 +1572098,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -42f488: |[42f488] org.purple.smoke.Settings.showFireActivity:()V │ │ -42f498: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -42f49c: 1c01 751a |0002: const-class v1, Lorg/purple/smoke/Fire; // type@1a75 │ │ -42f4a0: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -42f4a6: 6e20 17bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd17 │ │ -42f4ac: 6e10 ebbc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bceb │ │ -42f4b2: 0e00 |000d: return-void │ │ +42f484: |[42f484] org.purple.smoke.Settings.showFireActivity:()V │ │ +42f494: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +42f498: 1c01 751a |0002: const-class v1, Lorg/purple/smoke/Fire; // type@1a75 │ │ +42f49c: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +42f4a2: 6e20 17bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd17 │ │ +42f4a8: 6e10 ebbc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bceb │ │ +42f4ae: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3124 │ │ 0x0007 line=3126 │ │ 0x000a line=3127 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Settings; │ │ @@ -1572123,21 +1572122,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -42f4b4: |[42f4b4] org.purple.smoke.Settings.showMemberChatActivity:()V │ │ -42f4c4: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -42f4c8: 1c01 a61a |0002: const-class v1, Lorg/purple/smoke/MemberChat; // type@1aa6 │ │ -42f4cc: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -42f4d2: 6e20 17bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd17 │ │ -42f4d8: 6e10 ebbc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bceb │ │ -42f4de: 0e00 |000d: return-void │ │ +42f4b0: |[42f4b0] org.purple.smoke.Settings.showMemberChatActivity:()V │ │ +42f4c0: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +42f4c4: 1c01 a61a |0002: const-class v1, Lorg/purple/smoke/MemberChat; // type@1aa6 │ │ +42f4c8: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +42f4ce: 6e20 17bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd17 │ │ +42f4d4: 6e10 ebbc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bceb │ │ +42f4da: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3132 │ │ 0x0007 line=3134 │ │ 0x000a line=3135 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Settings; │ │ @@ -1572147,21 +1572146,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -42f4e0: |[42f4e0] org.purple.smoke.Settings.showSmokescreenActivity:()V │ │ -42f4f0: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -42f4f4: 1c01 131b |0002: const-class v1, Lorg/purple/smoke/Smokescreen; // type@1b13 │ │ -42f4f8: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -42f4fe: 6e20 17bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd17 │ │ -42f504: 6e10 ebbc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bceb │ │ -42f50a: 0e00 |000d: return-void │ │ +42f4dc: |[42f4dc] org.purple.smoke.Settings.showSmokescreenActivity:()V │ │ +42f4ec: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +42f4f0: 1c01 131b |0002: const-class v1, Lorg/purple/smoke/Smokescreen; // type@1b13 │ │ +42f4f4: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +42f4fa: 6e20 17bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd17 │ │ +42f500: 6e10 ebbc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bceb │ │ +42f506: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3140 │ │ 0x0007 line=3142 │ │ 0x000a line=3143 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Settings; │ │ @@ -1572171,21 +1572170,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -42f50c: |[42f50c] org.purple.smoke.Settings.showSteamActivity:()V │ │ -42f51c: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -42f520: 1c01 201b |0002: const-class v1, Lorg/purple/smoke/Steam; // type@1b20 │ │ -42f524: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -42f52a: 6e20 17bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd17 │ │ -42f530: 6e10 ebbc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bceb │ │ -42f536: 0e00 |000d: return-void │ │ +42f508: |[42f508] org.purple.smoke.Settings.showSteamActivity:()V │ │ +42f518: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +42f51c: 1c01 201b |0002: const-class v1, Lorg/purple/smoke/Steam; // type@1b20 │ │ +42f520: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +42f526: 6e20 17bd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Settings;.startActivity:(Landroid/content/Intent;)V // method@bd17 │ │ +42f52c: 6e10 ebbc 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.finish:()V // method@bceb │ │ +42f532: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3148 │ │ 0x0007 line=3150 │ │ 0x000a line=3151 │ │ locals : │ │ 0x0000 - 0x000e reg=2 this Lorg/purple/smoke/Settings; │ │ @@ -1572195,42 +1572194,42 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 7 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 57 16-bit code units │ │ -42f538: |[42f538] org.purple.smoke.Settings.showWidgets:()V │ │ -42f548: 1400 9200 087f |0000: const v0, #float 1.80778e+38 // #7f080092 │ │ -42f54e: 6e20 eabc 0600 |0003: invoke-virtual {v6, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f554: 0c00 |0006: move-result-object v0 │ │ -42f556: 1f00 210a |0007: check-cast v0, Landroid/view/ViewGroup; // type@0a21 │ │ -42f55a: 6e10 e356 0000 |0009: invoke-virtual {v0}, Landroid/view/ViewGroup;.getChildCount:()I // method@56e3 │ │ -42f560: 0a01 |000c: move-result v1 │ │ -42f562: 1202 |000d: const/4 v2, #int 0 // #0 │ │ -42f564: 1203 |000e: const/4 v3, #int 0 // #0 │ │ -42f566: 3513 1500 |000f: if-ge v3, v1, 0024 // +0015 │ │ -42f56a: 6e20 e256 3000 |0011: invoke-virtual {v0, v3}, Landroid/view/ViewGroup;.getChildAt:(I)Landroid/view/View; // method@56e2 │ │ -42f570: 0c04 |0014: move-result-object v4 │ │ -42f572: 1405 ad00 087f |0015: const v5, #float 1.80779e+38 // #7f0800ad │ │ -42f578: 6e20 eabc 5600 |0018: invoke-virtual {v6, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f57e: 0c05 |001b: move-result-object v5 │ │ -42f580: 3254 0500 |001c: if-eq v4, v5, 0021 // +0005 │ │ -42f584: 6e20 ac56 2400 |001e: invoke-virtual {v4, v2}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -42f58a: d803 0301 |0021: add-int/lit8 v3, v3, #int 1 // #01 │ │ -42f58e: 28ec |0023: goto 000f // -0014 │ │ -42f590: 1400 7400 087f |0024: const v0, #float 1.80777e+38 // #7f080074 │ │ -42f596: 6e20 eabc 0600 |0027: invoke-virtual {v6, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f59c: 0c00 |002a: move-result-object v0 │ │ -42f59e: 6e20 ac56 2000 |002b: invoke-virtual {v0, v2}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -42f5a4: 1400 b600 087f |002e: const v0, #float 1.80779e+38 // #7f0800b6 │ │ -42f5aa: 6e20 eabc 0600 |0031: invoke-virtual {v6, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42f5b0: 0c00 |0034: move-result-object v0 │ │ -42f5b2: 6e20 ac56 2000 |0035: invoke-virtual {v0, v2}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -42f5b8: 0e00 |0038: return-void │ │ +42f534: |[42f534] org.purple.smoke.Settings.showWidgets:()V │ │ +42f544: 1400 9200 087f |0000: const v0, #float 1.80778e+38 // #7f080092 │ │ +42f54a: 6e20 eabc 0600 |0003: invoke-virtual {v6, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f550: 0c00 |0006: move-result-object v0 │ │ +42f552: 1f00 210a |0007: check-cast v0, Landroid/view/ViewGroup; // type@0a21 │ │ +42f556: 6e10 e356 0000 |0009: invoke-virtual {v0}, Landroid/view/ViewGroup;.getChildCount:()I // method@56e3 │ │ +42f55c: 0a01 |000c: move-result v1 │ │ +42f55e: 1202 |000d: const/4 v2, #int 0 // #0 │ │ +42f560: 1203 |000e: const/4 v3, #int 0 // #0 │ │ +42f562: 3513 1500 |000f: if-ge v3, v1, 0024 // +0015 │ │ +42f566: 6e20 e256 3000 |0011: invoke-virtual {v0, v3}, Landroid/view/ViewGroup;.getChildAt:(I)Landroid/view/View; // method@56e2 │ │ +42f56c: 0c04 |0014: move-result-object v4 │ │ +42f56e: 1405 ad00 087f |0015: const v5, #float 1.80779e+38 // #7f0800ad │ │ +42f574: 6e20 eabc 5600 |0018: invoke-virtual {v6, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f57a: 0c05 |001b: move-result-object v5 │ │ +42f57c: 3254 0500 |001c: if-eq v4, v5, 0021 // +0005 │ │ +42f580: 6e20 ac56 2400 |001e: invoke-virtual {v4, v2}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +42f586: d803 0301 |0021: add-int/lit8 v3, v3, #int 1 // #01 │ │ +42f58a: 28ec |0023: goto 000f // -0014 │ │ +42f58c: 1400 7400 087f |0024: const v0, #float 1.80777e+38 // #7f080074 │ │ +42f592: 6e20 eabc 0600 |0027: invoke-virtual {v6, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f598: 0c00 |002a: move-result-object v0 │ │ +42f59a: 6e20 ac56 2000 |002b: invoke-virtual {v0, v2}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +42f5a0: 1400 b600 087f |002e: const v0, #float 1.80779e+38 // #7f0800b6 │ │ +42f5a6: 6e20 eabc 0600 |0031: invoke-virtual {v6, v0}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42f5ac: 0c00 |0034: move-result-object v0 │ │ +42f5ae: 6e20 ac56 2000 |0035: invoke-virtual {v0, v2}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +42f5b4: 0e00 |0038: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=3156 │ │ 0x0009 line=3157 │ │ 0x0011 line=3161 │ │ 0x0018 line=3163 │ │ 0x001e line=3164 │ │ @@ -1572244,17 +1572243,17 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 4 16-bit code units │ │ -42f5bc: |[42f5bc] org.purple.smoke.Settings.startKernel:()V │ │ -42f5cc: 7100 10bb 0000 |0000: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -42f5d2: 0e00 |0003: return-void │ │ +42f5b8: |[42f5b8] org.purple.smoke.Settings.startKernel:()V │ │ +42f5c8: 7100 10bb 0000 |0000: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +42f5ce: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3173 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lorg/purple/smoke/Settings; │ │ │ │ #53 : (in Lorg/purple/smoke/Settings;) │ │ @@ -1572262,27 +1572261,27 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 25 16-bit code units │ │ -42f5d4: |[42f5d4] org.purple.smoke.Settings.startTimers:()V │ │ -42f5e4: 5480 095f |0000: iget-object v0, v8, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ -42f5e8: 3900 1600 |0002: if-nez v0, 0018 // +0016 │ │ -42f5ec: 7100 c860 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c8 │ │ -42f5f2: 0c01 |0007: move-result-object v1 │ │ -42f5f4: 5b81 095f |0008: iput-object v1, v8, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ -42f5f8: 2202 f31a |000a: new-instance v2, Lorg/purple/smoke/Settings$38; // type@1af3 │ │ -42f5fc: 7020 95bc 8200 |000c: invoke-direct {v2, v8}, Lorg/purple/smoke/Settings$38;.:(Lorg/purple/smoke/Settings;)V // method@bc95 │ │ -42f602: 1603 dc05 |000f: const-wide/16 v3, #int 1500 // #5dc │ │ -42f606: 1605 c409 |0011: const-wide/16 v5, #int 2500 // #9c4 │ │ -42f60a: 6207 ef2c |0013: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -42f60e: 7807 d060 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@60d0 │ │ -42f614: 0e00 |0018: return-void │ │ +42f5d0: |[42f5d0] org.purple.smoke.Settings.startTimers:()V │ │ +42f5e0: 5480 095f |0000: iget-object v0, v8, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ +42f5e4: 3900 1600 |0002: if-nez v0, 0018 // +0016 │ │ +42f5e8: 7100 c860 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c8 │ │ +42f5ee: 0c01 |0007: move-result-object v1 │ │ +42f5f0: 5b81 095f |0008: iput-object v1, v8, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ +42f5f4: 2202 f31a |000a: new-instance v2, Lorg/purple/smoke/Settings$38; // type@1af3 │ │ +42f5f8: 7020 95bc 8200 |000c: invoke-direct {v2, v8}, Lorg/purple/smoke/Settings$38;.:(Lorg/purple/smoke/Settings;)V // method@bc95 │ │ +42f5fe: 1603 dc05 |000f: const-wide/16 v3, #int 1500 // #5dc │ │ +42f602: 1605 c409 |0011: const-wide/16 v5, #int 2500 // #9c4 │ │ +42f606: 6207 ef2c |0013: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +42f60a: 7807 d060 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@60d0 │ │ +42f610: 0e00 |0018: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3178 │ │ 0x0004 line=3180 │ │ 0x000a line=3181 │ │ locals : │ │ 0x0000 - 0x0019 reg=8 this Lorg/purple/smoke/Settings; │ │ @@ -1572292,33 +1572291,33 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 33 16-bit code units │ │ -42f618: |[42f618] org.purple.smoke.Settings.stopTimers:()V │ │ -42f628: 5450 095f |0000: iget-object v0, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ -42f62c: 3800 1e00 |0002: if-eqz v0, 0020 // +001e │ │ -42f630: 7210 d160 0000 |0004: invoke-interface {v0}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60d1 │ │ -42f636: 1200 |0007: const/4 v0, #int 0 // #0 │ │ -42f638: 5451 095f |0008: iget-object v1, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ -42f63c: 1602 0500 |000a: const-wide/16 v2, #int 5 // #5 │ │ -42f640: 6204 f22c |000c: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ -42f644: 7240 ce60 2143 |000e: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60ce │ │ -42f64a: 0a01 |0011: move-result v1 │ │ -42f64c: 3901 0c00 |0012: if-nez v1, 001e // +000c │ │ -42f650: 5451 095f |0014: iget-object v1, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ -42f654: 7210 d260 0100 |0016: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d2 │ │ -42f65a: 2805 |0019: goto 001e // +0005 │ │ -42f65c: 0d01 |001a: move-exception v1 │ │ -42f65e: 5b50 095f |001b: iput-object v0, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ -42f662: 2701 |001d: throw v1 │ │ -42f664: 5b50 095f |001e: iput-object v0, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ -42f668: 0e00 |0020: return-void │ │ +42f614: |[42f614] org.purple.smoke.Settings.stopTimers:()V │ │ +42f624: 5450 095f |0000: iget-object v0, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ +42f628: 3800 1e00 |0002: if-eqz v0, 0020 // +001e │ │ +42f62c: 7210 d160 0000 |0004: invoke-interface {v0}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60d1 │ │ +42f632: 1200 |0007: const/4 v0, #int 0 // #0 │ │ +42f634: 5451 095f |0008: iget-object v1, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ +42f638: 1602 0500 |000a: const-wide/16 v2, #int 5 // #5 │ │ +42f63c: 6204 f22c |000c: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ +42f640: 7240 ce60 2143 |000e: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60ce │ │ +42f646: 0a01 |0011: move-result v1 │ │ +42f648: 3901 0c00 |0012: if-nez v1, 001e // +000c │ │ +42f64c: 5451 095f |0014: iget-object v1, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ +42f650: 7210 d260 0100 |0016: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d2 │ │ +42f656: 2805 |0019: goto 001e // +0005 │ │ +42f658: 0d01 |001a: move-exception v1 │ │ +42f65a: 5b50 095f |001b: iput-object v0, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ +42f65e: 2701 |001d: throw v1 │ │ +42f660: 5b50 095f |001e: iput-object v0, v5, Lorg/purple/smoke/Settings;.m_scheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f09 │ │ +42f664: 0e00 |0020: return-void │ │ catches : 2 │ │ 0x0004 - 0x0007 │ │ Ljava/lang/Exception; -> 0x0007 │ │ 0x0008 - 0x0019 │ │ Ljava/lang/Exception; -> 0x001e │ │ -> 0x001a │ │ positions : │ │ @@ -1572339,125 +1572338,125 @@ │ │ type : '(Landroid/view/MenuItem;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 10 │ │ ins : 2 │ │ outs : 6 │ │ insns size : 256 16-bit code units │ │ -42bfb8: |[42bfb8] org.purple.smoke.Settings.onContextItemSelected:(Landroid/view/MenuItem;)Z │ │ -42bfc8: 3909 0400 |0000: if-nez v9, 0004 // +0004 │ │ -42bfcc: 1209 |0002: const/4 v9, #int 0 // #0 │ │ -42bfce: 0f09 |0003: return v9 │ │ -42bfd0: 7210 6a55 0900 |0004: invoke-interface {v9}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ -42bfd6: 0a00 |0007: move-result v0 │ │ -42bfd8: 7210 6c55 0900 |0008: invoke-interface {v9}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ -42bfde: 0a01 |000b: move-result v1 │ │ -42bfe0: 2203 f81a |000c: new-instance v3, Lorg/purple/smoke/Settings$40; // type@1af8 │ │ -42bfe4: 7040 a0bc 8310 |000e: invoke-direct {v3, v8, v0, v1}, Lorg/purple/smoke/Settings$40;.:(Lorg/purple/smoke/Settings;II)V // method@bca0 │ │ -42bfea: 1a02 f608 |0011: const-string v2, "?" // string@08f6 │ │ -42bfee: 1a04 ec03 |0013: const-string v4, ")" // string@03ec │ │ -42bff2: 1a05 0000 |0015: const-string v5, "" // string@0000 │ │ -42bff6: 2b00 d500 0000 |0017: packed-switch v0, 000000ec // +000000d5 │ │ -42bffc: 2900 d000 |001a: goto/16 00ea // +00d0 │ │ -42c000: 7110 d55c 0100 |001c: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42c006: 0c09 |001f: move-result-object v9 │ │ -42c008: 7020 11bd 9800 |0020: invoke-direct {v8, v9}, Lorg/purple/smoke/Settings;.showDetailsOfParticipant:(Ljava/lang/String;)V // method@bd11 │ │ -42c00e: 2900 c700 |0023: goto/16 00ea // +00c7 │ │ -42c012: 7020 0ebd 1800 |0025: invoke-direct {v8, v1}, Lorg/purple/smoke/Settings;.shareSipHashId:(I)V // method@bd0e │ │ -42c018: 2900 c200 |0028: goto/16 00ea // +00c2 │ │ -42c01c: 7110 d55c 0100 |002a: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42c022: 0c09 |002d: move-result-object v9 │ │ -42c024: 7020 0dbd 9800 |002e: invoke-direct {v8, v9}, Lorg/purple/smoke/Settings;.shareKeysOf:(Ljava/lang/String;)V // method@bd0d │ │ -42c02a: 2900 b900 |0031: goto/16 00ea // +00b9 │ │ -42c02e: 7110 d55c 0100 |0033: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42c034: 0c09 |0036: move-result-object v9 │ │ -42c036: 7020 0abd 9800 |0037: invoke-direct {v8, v9}, Lorg/purple/smoke/Settings;.requestKeysOf:(Ljava/lang/String;)V // method@bd0a │ │ -42c03c: 2900 b000 |003a: goto/16 00ea // +00b0 │ │ -42c040: 7210 6e55 0900 |003c: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ -42c046: 0c09 |003f: move-result-object v9 │ │ -42c048: 7210 045c 0900 |0040: invoke-interface {v9}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c04e: 0c09 |0043: move-result-object v9 │ │ -42c050: 1a00 4341 |0044: const-string v0, "New Name (" // string@4143 │ │ -42c054: 6e30 c85c 0905 |0046: invoke-virtual {v9, v0, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42c05a: 0c09 |0049: move-result-object v9 │ │ -42c05c: 6e30 c85c 4905 |004a: invoke-virtual {v9, v4, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42c062: 0c05 |004d: move-result-object v5 │ │ -42c064: 2209 f10a |004e: new-instance v9, Ljava/lang/StringBuilder; // type@0af1 │ │ -42c068: 7010 ee5c 0900 |0050: invoke-direct {v9}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42c06e: 1a00 da44 |0053: const-string v0, "Please provide a new name for " // string@44da │ │ -42c072: 6e20 f95c 0900 |0055: invoke-virtual {v9, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c078: 6e20 f95c 5900 |0058: invoke-virtual {v9, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c07e: 1a00 9904 |005b: const-string v0, "." // string@0499 │ │ -42c082: 6e20 f95c 0900 |005d: invoke-virtual {v9, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c088: 6e10 035d 0900 |0060: invoke-virtual {v9}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42c08e: 0c04 |0063: move-result-object v4 │ │ -42c090: 1217 |0064: const/4 v7, #int 1 // #1 │ │ -42c092: 1a06 0e41 |0065: const-string v6, "Name" // string@410e │ │ -42c096: 0782 |0067: move-object v2, v8 │ │ -42c098: 7706 febb 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@bbfe │ │ -42c09e: 2900 7f00 |006b: goto/16 00ea // +007f │ │ -42c0a2: 2200 f10a |006d: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ -42c0a6: 7010 ee5c 0000 |006f: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42c0ac: 1a01 7b0e |0072: const-string v1, "Are you sure that you wish to delete the public keys of " // string@0e7b │ │ -42c0b0: 6e20 f95c 1000 |0074: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c0b6: 7210 6e55 0900 |0077: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ -42c0bc: 0c09 |007a: move-result-object v9 │ │ -42c0be: 7210 045c 0900 |007b: invoke-interface {v9}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c0c4: 0c09 |007e: move-result-object v9 │ │ -42c0c6: 1a01 2f17 |007f: const-string v1, "Delete Public Keys (" // string@172f │ │ -42c0ca: 6e30 c85c 1905 |0081: invoke-virtual {v9, v1, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42c0d0: 0c09 |0084: move-result-object v9 │ │ -42c0d2: 6e30 c85c 4905 |0085: invoke-virtual {v9, v4, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42c0d8: 0c09 |0088: move-result-object v9 │ │ -42c0da: 6e20 f95c 9000 |0089: invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c0e0: 6e20 f95c 2000 |008c: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c0e6: 6e10 035d 0000 |008f: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42c0ec: 0c09 |0092: move-result-object v9 │ │ -42c0ee: 7130 fcbb 3809 |0093: invoke-static {v8, v3, v9}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbfc │ │ -42c0f4: 2854 |0096: goto 00ea // +0054 │ │ -42c0f6: 2200 f10a |0097: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ -42c0fa: 7010 ee5c 0000 |0099: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42c100: 1a01 770e |009c: const-string v1, "Are you sure that you wish to delete the Fiasco keys of " // string@0e77 │ │ -42c104: 6e20 f95c 1000 |009e: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c10a: 7210 6e55 0900 |00a1: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ -42c110: 0c09 |00a4: move-result-object v9 │ │ -42c112: 7210 045c 0900 |00a5: invoke-interface {v9}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c118: 0c09 |00a8: move-result-object v9 │ │ -42c11a: 1a01 2d17 |00a9: const-string v1, "Delete Fiasco Keys (" // string@172d │ │ -42c11e: 6e30 c85c 1905 |00ab: invoke-virtual {v9, v1, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42c124: 0c09 |00ae: move-result-object v9 │ │ -42c126: 6e30 c85c 4905 |00af: invoke-virtual {v9, v4, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42c12c: 0c09 |00b2: move-result-object v9 │ │ -42c12e: 6e20 f95c 9000 |00b3: invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c134: 6e20 f95c 2000 |00b6: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c13a: 6e10 035d 0000 |00b9: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42c140: 0c09 |00bc: move-result-object v9 │ │ -42c142: 7130 fcbb 3809 |00bd: invoke-static {v8, v3, v9}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbfc │ │ -42c148: 282a |00c0: goto 00ea // +002a │ │ -42c14a: 2200 f10a |00c1: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ -42c14e: 7010 ee5c 0000 |00c3: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42c154: 1a01 7a0e |00c6: const-string v1, "Are you sure that you wish to delete the participant " // string@0e7a │ │ -42c158: 6e20 f95c 1000 |00c8: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c15e: 7210 6e55 0900 |00cb: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ -42c164: 0c09 |00ce: move-result-object v9 │ │ -42c166: 7210 045c 0900 |00cf: invoke-interface {v9}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c16c: 0c09 |00d2: move-result-object v9 │ │ -42c16e: 1a01 2a17 |00d3: const-string v1, "Delete (" // string@172a │ │ -42c172: 6e30 c85c 1905 |00d5: invoke-virtual {v9, v1, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42c178: 0c09 |00d8: move-result-object v9 │ │ -42c17a: 6e30 c85c 4905 |00d9: invoke-virtual {v9, v4, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42c180: 0c09 |00dc: move-result-object v9 │ │ -42c182: 6e20 f95c 9000 |00dd: invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c188: 6e20 f95c 2000 |00e0: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42c18e: 6e10 035d 0000 |00e3: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42c194: 0c09 |00e6: move-result-object v9 │ │ -42c196: 7130 fcbb 3809 |00e7: invoke-static {v8, v3, v9}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbfc │ │ -42c19c: 1219 |00ea: const/4 v9, #int 1 // #1 │ │ -42c19e: 0f09 |00eb: return v9 │ │ -42c1a0: 0001 0800 0000 0000 aa00 0000 8000 ... |00ec: packed-switch-data (20 units) │ │ +42bfb4: |[42bfb4] org.purple.smoke.Settings.onContextItemSelected:(Landroid/view/MenuItem;)Z │ │ +42bfc4: 3909 0400 |0000: if-nez v9, 0004 // +0004 │ │ +42bfc8: 1209 |0002: const/4 v9, #int 0 // #0 │ │ +42bfca: 0f09 |0003: return v9 │ │ +42bfcc: 7210 6a55 0900 |0004: invoke-interface {v9}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ +42bfd2: 0a00 |0007: move-result v0 │ │ +42bfd4: 7210 6c55 0900 |0008: invoke-interface {v9}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ +42bfda: 0a01 |000b: move-result v1 │ │ +42bfdc: 2203 f81a |000c: new-instance v3, Lorg/purple/smoke/Settings$40; // type@1af8 │ │ +42bfe0: 7040 a0bc 8310 |000e: invoke-direct {v3, v8, v0, v1}, Lorg/purple/smoke/Settings$40;.:(Lorg/purple/smoke/Settings;II)V // method@bca0 │ │ +42bfe6: 1a02 f608 |0011: const-string v2, "?" // string@08f6 │ │ +42bfea: 1a04 ec03 |0013: const-string v4, ")" // string@03ec │ │ +42bfee: 1a05 0000 |0015: const-string v5, "" // string@0000 │ │ +42bff2: 2b00 d500 0000 |0017: packed-switch v0, 000000ec // +000000d5 │ │ +42bff8: 2900 d000 |001a: goto/16 00ea // +00d0 │ │ +42bffc: 7110 d55c 0100 |001c: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42c002: 0c09 |001f: move-result-object v9 │ │ +42c004: 7020 11bd 9800 |0020: invoke-direct {v8, v9}, Lorg/purple/smoke/Settings;.showDetailsOfParticipant:(Ljava/lang/String;)V // method@bd11 │ │ +42c00a: 2900 c700 |0023: goto/16 00ea // +00c7 │ │ +42c00e: 7020 0ebd 1800 |0025: invoke-direct {v8, v1}, Lorg/purple/smoke/Settings;.shareSipHashId:(I)V // method@bd0e │ │ +42c014: 2900 c200 |0028: goto/16 00ea // +00c2 │ │ +42c018: 7110 d55c 0100 |002a: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42c01e: 0c09 |002d: move-result-object v9 │ │ +42c020: 7020 0dbd 9800 |002e: invoke-direct {v8, v9}, Lorg/purple/smoke/Settings;.shareKeysOf:(Ljava/lang/String;)V // method@bd0d │ │ +42c026: 2900 b900 |0031: goto/16 00ea // +00b9 │ │ +42c02a: 7110 d55c 0100 |0033: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42c030: 0c09 |0036: move-result-object v9 │ │ +42c032: 7020 0abd 9800 |0037: invoke-direct {v8, v9}, Lorg/purple/smoke/Settings;.requestKeysOf:(Ljava/lang/String;)V // method@bd0a │ │ +42c038: 2900 b000 |003a: goto/16 00ea // +00b0 │ │ +42c03c: 7210 6e55 0900 |003c: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ +42c042: 0c09 |003f: move-result-object v9 │ │ +42c044: 7210 045c 0900 |0040: invoke-interface {v9}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c04a: 0c09 |0043: move-result-object v9 │ │ +42c04c: 1a00 4341 |0044: const-string v0, "New Name (" // string@4143 │ │ +42c050: 6e30 c85c 0905 |0046: invoke-virtual {v9, v0, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42c056: 0c09 |0049: move-result-object v9 │ │ +42c058: 6e30 c85c 4905 |004a: invoke-virtual {v9, v4, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42c05e: 0c05 |004d: move-result-object v5 │ │ +42c060: 2209 f10a |004e: new-instance v9, Ljava/lang/StringBuilder; // type@0af1 │ │ +42c064: 7010 ee5c 0900 |0050: invoke-direct {v9}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42c06a: 1a00 da44 |0053: const-string v0, "Please provide a new name for " // string@44da │ │ +42c06e: 6e20 f95c 0900 |0055: invoke-virtual {v9, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c074: 6e20 f95c 5900 |0058: invoke-virtual {v9, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c07a: 1a00 9904 |005b: const-string v0, "." // string@0499 │ │ +42c07e: 6e20 f95c 0900 |005d: invoke-virtual {v9, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c084: 6e10 035d 0900 |0060: invoke-virtual {v9}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42c08a: 0c04 |0063: move-result-object v4 │ │ +42c08c: 1217 |0064: const/4 v7, #int 1 // #1 │ │ +42c08e: 1a06 0e41 |0065: const-string v6, "Name" // string@410e │ │ +42c092: 0782 |0067: move-object v2, v8 │ │ +42c094: 7706 febb 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@bbfe │ │ +42c09a: 2900 7f00 |006b: goto/16 00ea // +007f │ │ +42c09e: 2200 f10a |006d: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ +42c0a2: 7010 ee5c 0000 |006f: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42c0a8: 1a01 7b0e |0072: const-string v1, "Are you sure that you wish to delete the public keys of " // string@0e7b │ │ +42c0ac: 6e20 f95c 1000 |0074: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c0b2: 7210 6e55 0900 |0077: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ +42c0b8: 0c09 |007a: move-result-object v9 │ │ +42c0ba: 7210 045c 0900 |007b: invoke-interface {v9}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c0c0: 0c09 |007e: move-result-object v9 │ │ +42c0c2: 1a01 2f17 |007f: const-string v1, "Delete Public Keys (" // string@172f │ │ +42c0c6: 6e30 c85c 1905 |0081: invoke-virtual {v9, v1, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42c0cc: 0c09 |0084: move-result-object v9 │ │ +42c0ce: 6e30 c85c 4905 |0085: invoke-virtual {v9, v4, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42c0d4: 0c09 |0088: move-result-object v9 │ │ +42c0d6: 6e20 f95c 9000 |0089: invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c0dc: 6e20 f95c 2000 |008c: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c0e2: 6e10 035d 0000 |008f: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42c0e8: 0c09 |0092: move-result-object v9 │ │ +42c0ea: 7130 fcbb 3809 |0093: invoke-static {v8, v3, v9}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbfc │ │ +42c0f0: 2854 |0096: goto 00ea // +0054 │ │ +42c0f2: 2200 f10a |0097: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ +42c0f6: 7010 ee5c 0000 |0099: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42c0fc: 1a01 770e |009c: const-string v1, "Are you sure that you wish to delete the Fiasco keys of " // string@0e77 │ │ +42c100: 6e20 f95c 1000 |009e: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c106: 7210 6e55 0900 |00a1: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ +42c10c: 0c09 |00a4: move-result-object v9 │ │ +42c10e: 7210 045c 0900 |00a5: invoke-interface {v9}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c114: 0c09 |00a8: move-result-object v9 │ │ +42c116: 1a01 2d17 |00a9: const-string v1, "Delete Fiasco Keys (" // string@172d │ │ +42c11a: 6e30 c85c 1905 |00ab: invoke-virtual {v9, v1, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42c120: 0c09 |00ae: move-result-object v9 │ │ +42c122: 6e30 c85c 4905 |00af: invoke-virtual {v9, v4, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42c128: 0c09 |00b2: move-result-object v9 │ │ +42c12a: 6e20 f95c 9000 |00b3: invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c130: 6e20 f95c 2000 |00b6: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c136: 6e10 035d 0000 |00b9: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42c13c: 0c09 |00bc: move-result-object v9 │ │ +42c13e: 7130 fcbb 3809 |00bd: invoke-static {v8, v3, v9}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbfc │ │ +42c144: 282a |00c0: goto 00ea // +002a │ │ +42c146: 2200 f10a |00c1: new-instance v0, Ljava/lang/StringBuilder; // type@0af1 │ │ +42c14a: 7010 ee5c 0000 |00c3: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42c150: 1a01 7a0e |00c6: const-string v1, "Are you sure that you wish to delete the participant " // string@0e7a │ │ +42c154: 6e20 f95c 1000 |00c8: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c15a: 7210 6e55 0900 |00cb: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ +42c160: 0c09 |00ce: move-result-object v9 │ │ +42c162: 7210 045c 0900 |00cf: invoke-interface {v9}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c168: 0c09 |00d2: move-result-object v9 │ │ +42c16a: 1a01 2a17 |00d3: const-string v1, "Delete (" // string@172a │ │ +42c16e: 6e30 c85c 1905 |00d5: invoke-virtual {v9, v1, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42c174: 0c09 |00d8: move-result-object v9 │ │ +42c176: 6e30 c85c 4905 |00d9: invoke-virtual {v9, v4, v5}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42c17c: 0c09 |00dc: move-result-object v9 │ │ +42c17e: 6e20 f95c 9000 |00dd: invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c184: 6e20 f95c 2000 |00e0: invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42c18a: 6e10 035d 0000 |00e3: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42c190: 0c09 |00e6: move-result-object v9 │ │ +42c192: 7130 fcbb 3809 |00e7: invoke-static {v8, v3, v9}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbfc │ │ +42c198: 1219 |00ea: const/4 v9, #int 1 // #1 │ │ +42c19a: 0f09 |00eb: return v9 │ │ +42c19c: 0001 0800 0000 0000 aa00 0000 8000 ... |00ec: packed-switch-data (20 units) │ │ catches : (none) │ │ positions : │ │ 0x0004 line=3746 │ │ 0x0008 line=3747 │ │ 0x000c line=3753 │ │ 0x001c line=3882 │ │ 0x0025 line=3879 │ │ @@ -1572488,648 +1572487,648 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 42 │ │ ins : 2 │ │ outs : 30 │ │ insns size : 1412 16-bit code units │ │ -42cf28: |[42cf28] org.purple.smoke.Settings.onCreate:(Landroid/os/Bundle;)V │ │ -42cf38: 0800 2800 |0000: move-object/from16 v0, v40 │ │ -42cf3c: 7502 f23c 2800 |0002: invoke-super/range {v40, v41}, Landroid/support/v7/app/AppCompatActivity;.onCreate:(Landroid/os/Bundle;)V // method@3cf2 │ │ -42cf42: 7401 edbc 2800 |0005: invoke-virtual/range {v40}, Lorg/purple/smoke/Settings;.getApplicationContext:()Landroid/content/Context; // method@bced │ │ -42cf48: 0c01 |0008: move-result-object v1 │ │ -42cf4a: 7110 f4b9 0100 |0009: invoke-static {v1}, Lorg/purple/smoke/Database;.getInstance:(Landroid/content/Context;)Lorg/purple/smoke/Database; // method@b9f4 │ │ -42cf50: 0c01 |000c: move-result-object v1 │ │ -42cf52: 5b01 065f |000d: iput-object v1, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42cf56: 7100 74bd 0000 |000f: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42cf5c: 0c01 |0012: move-result-object v1 │ │ -42cf5e: 6e10 77bd 0100 |0013: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ -42cf64: 0a01 |0016: move-result v1 │ │ -42cf66: 3901 0e00 |0017: if-nez v1, 0025 // +000e │ │ -42cf6a: 5402 065f |0019: iget-object v2, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42cf6e: 6e10 deb9 0200 |001b: invoke-virtual {v2}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9de │ │ -42cf74: 0a02 |001e: move-result v2 │ │ -42cf76: 3802 0600 |001f: if-eqz v2, 0025 // +0006 │ │ -42cf7a: 7601 0fbd 2800 |0021: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.showAuthenticateActivity:()V // method@bd0f │ │ -42cf80: 0e00 |0024: return-void │ │ -42cf82: 7100 10bb 0000 |0025: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -42cf88: 0c02 |0028: move-result-object v2 │ │ -42cf8a: 5403 065f |0029: iget-object v3, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42cf8e: 1204 |002b: const/4 v4, #int 0 // #0 │ │ -42cf90: 1a05 6159 |002c: const-string v5, "always_awake" // string@5961 │ │ -42cf94: 6e30 1bba 4305 |002e: invoke-virtual {v3, v4, v5}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42cf9a: 0c03 |0031: move-result-object v3 │ │ -42cf9c: 1a06 97a5 |0032: const-string v6, "true" // string@a597 │ │ -42cfa0: 6e20 b85c 6300 |0034: invoke-virtual {v3, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42cfa6: 0a03 |0037: move-result v3 │ │ -42cfa8: 6e20 23bb 3200 |0038: invoke-virtual {v2, v3}, Lorg/purple/smoke/Kernel;.setWakeLock:(Z)V // method@bb23 │ │ -42cfae: 7100 74bd 0000 |003b: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42cfb4: 0c02 |003e: move-result-object v2 │ │ -42cfb6: 5403 065f |003f: iget-object v3, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42cfba: 1a07 f48b |0041: const-string v7, "neighbors_echo" // string@8bf4 │ │ -42cfbe: 6e30 1bba 4307 |0043: invoke-virtual {v3, v4, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42cfc4: 0c03 |0046: move-result-object v3 │ │ -42cfc6: 6e20 b85c 6300 |0047: invoke-virtual {v3, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42cfcc: 0a03 |004a: move-result v3 │ │ -42cfce: 6e20 8cbd 3200 |004b: invoke-virtual {v2, v3}, Lorg/purple/smoke/State;.setNeighborsEcho:(Z)V // method@bd8c │ │ -42cfd4: 2202 091b |004e: new-instance v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // type@1b09 │ │ -42cfd8: 7020 cabc 0200 |0050: invoke-direct {v2, v0}, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.:(Lorg/purple/smoke/Settings;)V // method@bcca │ │ -42cfde: 5b02 075f |0053: iput-object v2, v0, Lorg/purple/smoke/Settings;.m_receiver:Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // field@5f07 │ │ -42cfe2: 7601 05bd 2800 |0055: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.prepareForegroundService:()V // method@bd05 │ │ -42cfe8: 1402 1f00 0a7f |0058: const v2, #float 1.83434e+38 // #7f0a001f │ │ -42cfee: 6e20 0cbd 2000 |005b: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.setContentView:(I)V // method@bd0c │ │ -42cff4: 7401 f1bc 2800 |005e: invoke-virtual/range {v40}, Lorg/purple/smoke/Settings;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bcf1 │ │ -42cffa: 0c02 |0061: move-result-object v2 │ │ -42cffc: 7100 2ebd 0000 |0062: invoke-static {}, Lorg/purple/smoke/Smoke;.networkStatusString:()Ljava/lang/String; // method@bd2e │ │ -42d002: 0c03 |0065: move-result-object v3 │ │ -42d004: 6e20 0a3c 3200 |0066: invoke-virtual {v2, v3}, Landroid/support/v7/app/ActionBar;.setSubtitle:(Ljava/lang/CharSequence;)V // method@3c0a │ │ -42d00a: 7401 f1bc 2800 |0069: invoke-virtual/range {v40}, Lorg/purple/smoke/Settings;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bcf1 │ │ -42d010: 0c02 |006c: move-result-object v2 │ │ -42d012: 1a03 2f4c |006d: const-string v3, "Smoke | Settings" // string@4c2f │ │ -42d016: 6e20 0c3c 3200 |006f: invoke-virtual {v2, v3}, Landroid/support/v7/app/ActionBar;.setTitle:(Ljava/lang/CharSequence;)V // method@3c0c │ │ -42d01c: 2802 |0072: goto 0074 // +0002 │ │ -42d01e: 0000 |0073: nop // spacer │ │ -42d020: 7601 06bd 2800 |0074: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.prepareListeners:()V // method@bd06 │ │ -42d026: 1402 1e00 087f |0077: const v2, #float 1.80776e+38 // #7f08001e │ │ -42d02c: 6e20 eabc 2000 |007a: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d032: 0c02 |007d: move-result-object v2 │ │ -42d034: 1f02 5e0a |007e: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d038: 6e20 e058 1200 |0080: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42d03e: 1402 1f00 087f |0083: const v2, #float 1.80776e+38 // #7f08001f │ │ -42d044: 6e20 eabc 2000 |0086: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d04a: 0c02 |0089: move-result-object v2 │ │ -42d04c: 1f02 5e0a |008a: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d050: 6e20 e058 1200 |008c: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42d056: 1402 5d00 087f |008f: const v2, #float 1.80777e+38 // #7f08005d │ │ -42d05c: 6e20 eabc 2000 |0092: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d062: 0c02 |0095: move-result-object v2 │ │ -42d064: 1f02 5e0a |0096: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d068: 1403 6e00 077f |0098: const v3, #float 1.79448e+38 // #7f07006e │ │ -42d06e: 1208 |009b: const/4 v8, #int 0 // #0 │ │ -42d070: 6e58 df58 3288 |009c: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ -42d076: 1402 6400 087f |009f: const v2, #float 1.80777e+38 // #7f080064 │ │ -42d07c: 6e20 eabc 2000 |00a2: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d082: 0c02 |00a5: move-result-object v2 │ │ -42d084: 1f02 5e0a |00a6: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d088: 1409 8500 077f |00a8: const v9, #float 1.79448e+38 // #7f070085 │ │ -42d08e: 6e58 df58 9288 |00ab: invoke-virtual {v2, v9, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ -42d094: 6e20 e058 1200 |00ae: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42d09a: 1402 8200 087f |00b1: const v2, #float 1.80778e+38 // #7f080082 │ │ -42d0a0: 6e20 eabc 2000 |00b4: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d0a6: 0c02 |00b7: move-result-object v2 │ │ -42d0a8: 1f02 5e0a |00b8: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d0ac: 6e58 df58 3288 |00ba: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ -42d0b2: 1402 b800 087f |00bd: const v2, #float 1.80779e+38 // #7f0800b8 │ │ -42d0b8: 6e20 eabc 2000 |00c0: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d0be: 0c02 |00c3: move-result-object v2 │ │ -42d0c0: 1f02 5e0a |00c4: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d0c4: 6e58 df58 3288 |00c6: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ -42d0ca: 1402 c200 087f |00c9: const v2, #float 1.80779e+38 // #7f0800c2 │ │ -42d0d0: 6e20 eabc 2000 |00cc: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d0d6: 0c02 |00cf: move-result-object v2 │ │ -42d0d8: 1f02 5e0a |00d0: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d0dc: 6e58 df58 3288 |00d2: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ -42d0e2: 1402 da00 087f |00d5: const v2, #float 1.80779e+38 // #7f0800da │ │ -42d0e8: 6e20 eabc 2000 |00d8: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d0ee: 0c02 |00db: move-result-object v2 │ │ -42d0f0: 1f02 5e0a |00dc: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d0f4: 6e20 e058 1200 |00de: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42d0fa: 1402 db00 087f |00e1: const v2, #float 1.80779e+38 // #7f0800db │ │ -42d100: 6e20 eabc 2000 |00e4: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d106: 0c02 |00e7: move-result-object v2 │ │ -42d108: 1f02 5e0a |00e8: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d10c: 6e20 e058 1200 |00ea: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42d112: 1402 e000 087f |00ed: const v2, #float 1.8078e+38 // #7f0800e0 │ │ -42d118: 6e20 eabc 2000 |00f0: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d11e: 0c02 |00f3: move-result-object v2 │ │ -42d120: 1f02 5e0a |00f4: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d124: 6e20 e058 1200 |00f6: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42d12a: 1402 e100 087f |00f9: const v2, #float 1.8078e+38 // #7f0800e1 │ │ -42d130: 6e20 eabc 2000 |00fc: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d136: 0c02 |00ff: move-result-object v2 │ │ -42d138: 1f02 5e0a |0100: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d13c: 6e20 e058 1200 |0102: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42d142: 1402 e800 087f |0105: const v2, #float 1.8078e+38 // #7f0800e8 │ │ -42d148: 6e20 eabc 2000 |0108: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d14e: 0c02 |010b: move-result-object v2 │ │ -42d150: 1f02 5e0a |010c: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d154: 6e20 e058 1200 |010e: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42d15a: 1402 0201 087f |0111: const v2, #float 1.8078e+38 // #7f080102 │ │ -42d160: 6e20 eabc 2000 |0114: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d166: 0c02 |0117: move-result-object v2 │ │ -42d168: 1f02 5e0a |0118: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d16c: 6e58 df58 9288 |011a: invoke-virtual {v2, v9, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ -42d172: 6e20 e058 1200 |011d: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42d178: 1402 0901 087f |0120: const v2, #float 1.8078e+38 // #7f080109 │ │ -42d17e: 6e20 eabc 2000 |0123: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d184: 0c02 |0126: move-result-object v2 │ │ -42d186: 1f02 5e0a |0127: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d18a: 6e58 df58 3288 |0129: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ -42d190: 1402 0a01 087f |012c: const v2, #float 1.8078e+38 // #7f08010a │ │ -42d196: 6e20 eabc 2000 |012f: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d19c: 0c02 |0132: move-result-object v2 │ │ -42d19e: 1f02 5e0a |0133: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -42d1a2: 6e58 df58 3288 |0135: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ -42d1a8: 1402 2500 087f |0138: const v2, #float 1.80776e+38 // #7f080025 │ │ -42d1ae: 6e20 eabc 2000 |013b: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d1b4: 0c02 |013e: move-result-object v2 │ │ -42d1b6: 1f02 8d0a |013f: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ -42d1ba: 1213 |0141: const/4 v3, #int 1 // #1 │ │ -42d1bc: 6e20 db5a 3200 |0142: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d1c2: 1402 2c00 087f |0145: const v2, #float 1.80776e+38 // #7f08002c │ │ -42d1c8: 6e20 eabc 2000 |0148: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d1ce: 0c09 |014b: move-result-object v9 │ │ -42d1d0: 1f09 8d0a |014c: check-cast v9, Landroid/widget/Switch; // type@0a8d │ │ -42d1d4: 540a 065f |014e: iget-object v10, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d1d8: 1a0b 605b |0150: const-string v11, "automatic_neighbors_refresh" // string@5b60 │ │ -42d1dc: 6e30 1bba 4a0b |0152: invoke-virtual {v10, v4, v11}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42d1e2: 0c0a |0155: move-result-object v10 │ │ -42d1e4: 6e10 c35c 0a00 |0156: invoke-virtual {v10}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42d1ea: 0a0a |0159: move-result v10 │ │ -42d1ec: 380a 0b00 |015a: if-eqz v10, 0165 // +000b │ │ -42d1f0: 6e20 db5a 3900 |015c: invoke-virtual {v9, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d1f6: 540a 065f |015f: iget-object v10, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d1fa: 6e40 3eba 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@ba3e │ │ -42d200: 2814 |0164: goto 0178 // +0014 │ │ -42d202: 540a 065f |0165: iget-object v10, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d206: 6e30 1bba 4a0b |0167: invoke-virtual {v10, v4, v11}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42d20c: 0c0a |016a: move-result-object v10 │ │ -42d20e: 6e20 b85c 6a00 |016b: invoke-virtual {v10, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42d214: 0a0a |016e: move-result v10 │ │ -42d216: 380a 0600 |016f: if-eqz v10, 0175 // +0006 │ │ -42d21a: 6e20 db5a 3900 |0171: invoke-virtual {v9, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d220: 2804 |0174: goto 0178 // +0004 │ │ -42d222: 6e20 db5a 8900 |0175: invoke-virtual {v9, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d228: 6e10 da5a 0900 |0178: invoke-virtual {v9}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42d22e: 0a09 |017b: move-result v9 │ │ -42d230: 3809 0500 |017c: if-eqz v9, 0181 // +0005 │ │ -42d234: 7601 19bd 2800 |017e: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.startTimers:()V // method@bd19 │ │ -42d23a: 1409 5c00 087f |0181: const v9, #float 1.80777e+38 // #7f08005c │ │ -42d240: 6e20 eabc 9000 |0184: invoke-virtual {v0, v9}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d246: 0c09 |0187: move-result-object v9 │ │ -42d248: 1f09 8d0a |0188: check-cast v9, Landroid/widget/Switch; // type@0a8d │ │ -42d24c: 540a 065f |018a: iget-object v10, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d250: 6e30 1bba 4a07 |018c: invoke-virtual {v10, v4, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42d256: 0c07 |018f: move-result-object v7 │ │ -42d258: 6e20 b85c 6700 |0190: invoke-virtual {v7, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42d25e: 0a07 |0193: move-result v7 │ │ -42d260: 3807 0600 |0194: if-eqz v7, 019a // +0006 │ │ -42d264: 6e20 db5a 3900 |0196: invoke-virtual {v9, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d26a: 2804 |0199: goto 019d // +0004 │ │ -42d26c: 6e20 db5a 8900 |019a: invoke-virtual {v9, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d272: 1407 7300 087f |019d: const v7, #float 1.80777e+38 // #7f080073 │ │ -42d278: 6e20 eabc 7000 |01a0: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d27e: 0c07 |01a3: move-result-object v7 │ │ -42d280: 1f07 8d0a |01a4: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ -42d284: 5409 065f |01a6: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d288: 1a0a 5469 |01a8: const-string v10, "foreground_service" // string@6954 │ │ -42d28c: 6e30 1bba 490a |01aa: invoke-virtual {v9, v4, v10}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42d292: 0c09 |01ad: move-result-object v9 │ │ -42d294: 1a0a 1f68 |01ae: const-string v10, "false" // string@681f │ │ -42d298: 6e20 b85c a900 |01b0: invoke-virtual {v9, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42d29e: 0a09 |01b3: move-result v9 │ │ -42d2a0: 3809 0600 |01b4: if-eqz v9, 01ba // +0006 │ │ -42d2a4: 6e20 db5a 8700 |01b6: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d2aa: 2804 |01b9: goto 01bd // +0004 │ │ -42d2ac: 6e20 db5a 3700 |01ba: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d2b2: 1407 a600 087f |01bd: const v7, #float 1.80778e+38 // #7f0800a6 │ │ -42d2b8: 6e20 eabc 7000 |01c0: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d2be: 0c07 |01c3: move-result-object v7 │ │ -42d2c0: 1f07 8d0a |01c4: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ -42d2c4: 5409 065f |01c6: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d2c8: 1a0a f38b |01c8: const-string v10, "neighbors_details" // string@8bf3 │ │ -42d2cc: 6e30 1bba 490a |01ca: invoke-virtual {v9, v4, v10}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42d2d2: 0c09 |01cd: move-result-object v9 │ │ -42d2d4: 6e20 b85c 6900 |01ce: invoke-virtual {v9, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42d2da: 0a09 |01d1: move-result v9 │ │ -42d2dc: 3809 0600 |01d2: if-eqz v9, 01d8 // +0006 │ │ -42d2e0: 6e20 db5a 3700 |01d4: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d2e6: 2804 |01d7: goto 01db // +0004 │ │ -42d2e8: 6e20 db5a 8700 |01d8: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d2ee: 1407 d500 087f |01db: const v7, #float 1.80779e+38 // #7f0800d5 │ │ -42d2f4: 6e20 eabc 7000 |01de: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d2fa: 0c07 |01e1: move-result-object v7 │ │ -42d2fc: 1f07 8d0a |01e2: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ -42d300: 5409 065f |01e4: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d304: 1a0a f695 |01e6: const-string v10, "query_time_server" // string@95f6 │ │ -42d308: 6e30 1bba 490a |01e8: invoke-virtual {v9, v4, v10}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42d30e: 0c09 |01eb: move-result-object v9 │ │ -42d310: 6e20 b85c 6900 |01ec: invoke-virtual {v9, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42d316: 0a09 |01ef: move-result v9 │ │ -42d318: 3809 0600 |01f0: if-eqz v9, 01f6 // +0006 │ │ -42d31c: 6e20 db5a 3700 |01f2: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d322: 2804 |01f5: goto 01f9 // +0004 │ │ -42d324: 6e20 db5a 8700 |01f6: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d32a: 7100 74bd 0000 |01f9: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42d330: 0c09 |01fc: move-result-object v9 │ │ -42d332: 6e10 da5a 0700 |01fd: invoke-virtual {v7}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42d338: 0a07 |0200: move-result v7 │ │ -42d33a: 6e20 8dbd 7900 |0201: invoke-virtual {v9, v7}, Lorg/purple/smoke/State;.setQueryTimerServer:(Z)V // method@bd8d │ │ -42d340: 1407 0801 087f |0204: const v7, #float 1.8078e+38 // #7f080108 │ │ -42d346: 6e20 eabc 7000 |0207: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d34c: 0c07 |020a: move-result-object v7 │ │ -42d34e: 1f07 8d0a |020b: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ -42d352: 5409 065f |020d: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d356: 1a0a bea1 |020f: const-string v10, "silent" // string@a1be │ │ -42d35a: 6e30 1bba 490a |0211: invoke-virtual {v9, v4, v10}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42d360: 0c09 |0214: move-result-object v9 │ │ -42d362: 6e20 b85c 6900 |0215: invoke-virtual {v9, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42d368: 0a09 |0218: move-result v9 │ │ -42d36a: 3809 0600 |0219: if-eqz v9, 021f // +0006 │ │ -42d36e: 6e20 db5a 3700 |021b: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d374: 2804 |021e: goto 0222 // +0004 │ │ -42d376: 6e20 db5a 8700 |021f: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d37c: 7100 74bd 0000 |0222: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42d382: 0c09 |0225: move-result-object v9 │ │ -42d384: 6e10 da5a 0700 |0226: invoke-virtual {v7}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42d38a: 0a07 |0229: move-result v7 │ │ -42d38c: 6e20 8ebd 7900 |022a: invoke-virtual {v9, v7}, Lorg/purple/smoke/State;.setSilent:(Z)V // method@bd8e │ │ -42d392: 1407 0c01 087f |022d: const v7, #float 1.8078e+38 // #7f08010c │ │ -42d398: 6e20 eabc 7000 |0230: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d39e: 0c07 |0233: move-result-object v7 │ │ -42d3a0: 1f07 8d0a |0234: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ -42d3a4: 5409 065f |0236: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d3a8: 6e30 1bba 4905 |0238: invoke-virtual {v9, v4, v5}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42d3ae: 0c09 |023b: move-result-object v9 │ │ -42d3b0: 6e10 c35c 0900 |023c: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -42d3b6: 0a09 |023f: move-result v9 │ │ -42d3b8: 3809 0b00 |0240: if-eqz v9, 024b // +000b │ │ -42d3bc: 6e20 db5a 3700 |0242: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d3c2: 5407 065f |0245: iget-object v7, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d3c6: 6e40 3eba 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@ba3e │ │ -42d3cc: 2814 |024a: goto 025e // +0014 │ │ -42d3ce: 5409 065f |024b: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d3d2: 6e30 1bba 4905 |024d: invoke-virtual {v9, v4, v5}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42d3d8: 0c05 |0250: move-result-object v5 │ │ -42d3da: 6e20 b85c 6500 |0251: invoke-virtual {v5, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42d3e0: 0a05 |0254: move-result v5 │ │ -42d3e2: 3805 0600 |0255: if-eqz v5, 025b // +0006 │ │ -42d3e6: 6e20 db5a 3700 |0257: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d3ec: 2804 |025a: goto 025e // +0004 │ │ -42d3ee: 6e20 db5a 8700 |025b: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d3f4: 1405 a900 087f |025e: const v5, #float 1.80778e+38 // #7f0800a9 │ │ -42d3fa: 6e20 eabc 5000 |0261: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d400: 0c05 |0264: move-result-object v5 │ │ -42d402: 1f05 7d0a |0265: check-cast v5, Landroid/widget/RadioButton; // type@0a7d │ │ -42d406: 6e20 645a 1500 |0267: invoke-virtual {v5, v1}, Landroid/widget/RadioButton;.setEnabled:(Z)V // method@5a64 │ │ -42d40c: 1405 aa00 087f |026a: const v5, #float 1.80778e+38 // #7f0800aa │ │ -42d412: 6e20 eabc 5000 |026d: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d418: 0c05 |0270: move-result-object v5 │ │ -42d41a: 1f05 7d0a |0271: check-cast v5, Landroid/widget/RadioButton; // type@0a7d │ │ -42d41e: 6e20 645a 1500 |0273: invoke-virtual {v5, v1}, Landroid/widget/RadioButton;.setEnabled:(Z)V // method@5a64 │ │ -42d424: 1405 d400 087f |0276: const v5, #float 1.80779e+38 // #7f0800d4 │ │ -42d42a: 6e20 eabc 5000 |0279: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d430: 0c05 |027c: move-result-object v5 │ │ -42d432: 1f05 8b0a |027d: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ -42d436: 1a06 741c |027f: const-string v6, "HTTP" // string@1c74 │ │ -42d43a: 1a07 6b49 |0281: const-string v7, "SOCKS" // string@496b │ │ -42d43e: 2420 a81b 7600 |0283: filled-new-array {v6, v7}, [Ljava/lang/String; // type@1ba8 │ │ -42d444: 0c06 |0286: move-result-object v6 │ │ -42d446: 6e20 c65a 1500 |0287: invoke-virtual {v5, v1}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ -42d44c: 2207 5b0a |028a: new-instance v7, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -42d450: 1409 0800 0901 |028c: const v9, #float 2.51629e-38 // #01090008 │ │ -42d456: 7040 cb58 0769 |028f: invoke-direct {v7, v0, v9, v6}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ -42d45c: 6e20 c05a 7500 |0292: invoke-virtual {v5, v7}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -42d462: 1405 ae00 087f |0295: const v5, #float 1.80779e+38 // #7f0800ae │ │ -42d468: 6e20 eabc 5000 |0298: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d46e: 0c05 |029b: move-result-object v5 │ │ -42d470: 1f05 8b0a |029c: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ -42d474: 1a06 094d |029e: const-string v6, "TCP" // string@4d09 │ │ -42d478: 1a07 0050 |02a0: const-string v7, "UDP" // string@5000 │ │ -42d47c: 2420 a81b 7600 |02a2: filled-new-array {v6, v7}, [Ljava/lang/String; // type@1ba8 │ │ -42d482: 0c06 |02a5: move-result-object v6 │ │ -42d484: 6e20 c65a 1500 |02a6: invoke-virtual {v5, v1}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ -42d48a: 2207 5b0a |02a9: new-instance v7, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -42d48e: 7040 cb58 0769 |02ab: invoke-direct {v7, v0, v9, v6}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ -42d494: 6e20 c05a 7500 |02ae: invoke-virtual {v5, v7}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -42d49a: 1a0a e807 |02b1: const-string v10, "5" // string@07e8 │ │ -42d49e: 1a0b 5c06 |02b3: const-string v11, "10" // string@065c │ │ -42d4a2: 1a0c bb06 |02b5: const-string v12, "15" // string@06bb │ │ -42d4a6: 1a0d 5607 |02b7: const-string v13, "25" // string@0756 │ │ -42d4aa: 1a0e eb07 |02b9: const-string v14, "50" // string@07eb │ │ -42d4ae: 1a0f 5f06 |02bb: const-string v15, "100" // string@065f │ │ -42d4b2: 1a10 6106 |02bd: const-string v16, "1000" // string@0661 │ │ -42d4b6: 1a11 5707 |02bf: const-string v17, "2500" // string@0757 │ │ -42d4ba: 1a12 ed07 |02c1: const-string v18, "5000" // string@07ed │ │ -42d4be: 1a13 3808 |02c3: const-string v19, "7500" // string@0838 │ │ -42d4c2: 1a14 6206 |02c5: const-string v20, "10000" // string@0662 │ │ -42d4c6: 1a15 a906 |02c7: const-string v21, "12500" // string@06a9 │ │ -42d4ca: 1a16 c006 |02c9: const-string v22, "15000" // string@06c0 │ │ -42d4ce: 1a17 cb06 |02cb: const-string v23, "17500" // string@06cb │ │ -42d4d2: 1a18 4207 |02cd: const-string v24, "20000" // string@0742 │ │ -42d4d6: 1a19 5807 |02cf: const-string v25, "25000" // string@0758 │ │ -42d4da: 1a1a 7d07 |02d1: const-string v26, "30000" // string@077d │ │ -42d4de: 1a1b ab07 |02d3: const-string v27, "35000" // string@07ab │ │ -42d4e2: 1a1c c807 |02d5: const-string v28, "40000" // string@07c8 │ │ -42d4e6: 1a1d db07 |02d7: const-string v29, "45000" // string@07db │ │ -42d4ea: 1a1e ee07 |02d9: const-string v30, "50000" // string@07ee │ │ -42d4ee: 1a1f 0108 |02db: const-string v31, "55000" // string@0801 │ │ -42d4f2: 1a20 1508 |02dd: const-string v32, "60000" // string@0815 │ │ -42d4f6: 1a21 1c08 |02df: const-string v33, "65000" // string@081c │ │ -42d4fa: 1a22 3008 |02e1: const-string v34, "70000" // string@0830 │ │ -42d4fe: 1a23 6306 |02e3: const-string v35, "100000" // string@0663 │ │ -42d502: 1a24 5907 |02e5: const-string v36, "250000" // string@0759 │ │ -42d506: 1a25 6406 |02e7: const-string v37, "1000000" // string@0664 │ │ -42d50a: 1a26 5a07 |02e9: const-string v38, "2500000" // string@075a │ │ -42d50e: 1a27 6506 |02eb: const-string v39, "10000000" // string@0665 │ │ -42d512: 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 │ │ -42d518: 0c05 |02f0: move-result-object v5 │ │ -42d51a: 2206 5b0a |02f1: new-instance v6, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -42d51e: 7040 cb58 0659 |02f3: invoke-direct {v6, v0, v9, v5}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ -42d524: 5405 065f |02f6: iget-object v5, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d528: 1a07 1c7c |02f8: const-string v7, "iterationCount" // string@7c1c │ │ -42d52c: 6e30 1bba 4507 |02fa: invoke-virtual {v5, v4, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42d532: 0c05 |02fd: move-result-object v5 │ │ -42d534: 6e20 cc58 5600 |02fe: invoke-virtual {v6, v5}, Landroid/widget/ArrayAdapter;.getPosition:(Ljava/lang/Object;)I // method@58cc │ │ -42d53a: 0a05 |0301: move-result v5 │ │ -42d53c: 1407 8500 087f |0302: const v7, #float 1.80778e+38 // #7f080085 │ │ -42d542: 6e20 eabc 7000 |0305: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d548: 0c0a |0308: move-result-object v10 │ │ -42d54a: 1f0a 8b0a |0309: check-cast v10, Landroid/widget/Spinner; // type@0a8b │ │ -42d54e: 6e20 c05a 6a00 |030b: invoke-virtual {v10, v6}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -42d554: 1a06 820e |030e: const-string v6, "Argon2id" // string@0e82 │ │ -42d558: 1a0a 7543 |0310: const-string v10, "PBKDF2" // string@4375 │ │ -42d55c: 2420 a81b a600 |0312: filled-new-array {v6, v10}, [Ljava/lang/String; // type@1ba8 │ │ -42d562: 0c06 |0315: move-result-object v6 │ │ -42d564: 220a 5b0a |0316: new-instance v10, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -42d568: 7040 cb58 0a69 |0318: invoke-direct {v10, v0, v9, v6}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ -42d56e: 5406 065f |031b: iget-object v6, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d572: 1a0b 997c |031d: const-string v11, "keyDerivationFunction" // string@7c99 │ │ -42d576: 6e30 1bba 460b |031f: invoke-virtual {v6, v4, v11}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42d57c: 0c06 |0322: move-result-object v6 │ │ -42d57e: 7110 555c 0600 |0323: invoke-static {v6}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@5c55 │ │ -42d584: 0a06 |0326: move-result v6 │ │ -42d586: 2803 |0327: goto 032a // +0003 │ │ -42d588: 0000 |0328: nop // spacer │ │ -42d58a: 1216 |0329: const/4 v6, #int 1 // #1 │ │ -42d58c: 140b 8700 087f |032a: const v11, #float 1.80778e+38 // #7f080087 │ │ -42d592: 6e20 eabc b000 |032d: invoke-virtual {v0, v11}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d598: 0c0c |0330: move-result-object v12 │ │ -42d59a: 1f0c 8b0a |0331: check-cast v12, Landroid/widget/Spinner; // type@0a8b │ │ -42d59e: 6e20 c05a ac00 |0333: invoke-virtual {v12, v10}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -42d5a4: 620a c153 |0336: sget-object v10, Lorg/purple/smoke/Cryptography;.PUBLIC_KEY_TYPES:[Ljava/lang/String; // field@53c1 │ │ -42d5a8: 220c 5b0a |0338: new-instance v12, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -42d5ac: 7040 cb58 0ca9 |033a: invoke-direct {v12, v0, v9, v10}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ -42d5b2: 140a ca00 087f |033d: const v10, #float 1.80779e+38 // #7f0800ca │ │ -42d5b8: 6e20 eabc a000 |0340: invoke-virtual {v0, v10}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d5be: 0c0d |0343: move-result-object v13 │ │ -42d5c0: 1f0d 8b0a |0344: check-cast v13, Landroid/widget/Spinner; // type@0a8b │ │ -42d5c4: 6e20 c05a cd00 |0346: invoke-virtual {v13, v12}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -42d5ca: 1a0c 1918 |0349: const-string v12, "ECDSA" // string@1819 │ │ -42d5ce: 1a0d 6b46 |034b: const-string v13, "RSA" // string@466b │ │ -42d5d2: 1a0e 9846 |034d: const-string v14, "Rainbow" // string@4698 │ │ -42d5d6: 1a0f 8f49 |034f: const-string v15, "SPHINCS" // string@498f │ │ -42d5da: 2440 a81b dcfe |0351: filled-new-array {v12, v13, v14, v15}, [Ljava/lang/String; // type@1ba8 │ │ -42d5e0: 0c0c |0354: move-result-object v12 │ │ -42d5e2: 220d 5b0a |0355: new-instance v13, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -42d5e6: 7040 cb58 0dc9 |0357: invoke-direct {v13, v0, v9, v12}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ -42d5ec: 1409 cc00 087f |035a: const v9, #float 1.80779e+38 // #7f0800cc │ │ -42d5f2: 6e20 eabc 9000 |035d: invoke-virtual {v0, v9}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d5f8: 0c0c |0360: move-result-object v12 │ │ -42d5fa: 1f0c 8b0a |0361: check-cast v12, Landroid/widget/Spinner; // type@0a8b │ │ -42d5fe: 6e20 c05a dc00 |0363: invoke-virtual {v12, v13}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -42d604: 140c ab00 087f |0366: const v12, #float 1.80778e+38 // #7f0800ab │ │ -42d60a: 6e20 eabc c000 |0369: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d610: 0c0c |036c: move-result-object v12 │ │ -42d612: 1f0c 7f0a |036d: check-cast v12, Landroid/widget/RadioGroup; // type@0a7f │ │ -42d616: 220d f41a |036f: new-instance v13, Lorg/purple/smoke/Settings$39; // type@1af4 │ │ -42d61a: 7020 97bc 0d00 |0371: invoke-direct {v13, v0}, Lorg/purple/smoke/Settings$39;.:(Lorg/purple/smoke/Settings;)V // method@bc97 │ │ -42d620: 6e20 675a dc00 |0374: invoke-virtual {v12, v13}, Landroid/widget/RadioGroup;.setOnCheckedChangeListener:(Landroid/widget/RadioGroup$OnCheckedChangeListener;)V // method@5a67 │ │ -42d626: 140c b600 087f |0377: const v12, #float 1.80779e+38 // #7f0800b6 │ │ -42d62c: 6e20 eabc c000 |037a: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d632: 0c0d |037d: move-result-object v13 │ │ -42d634: 1f0d 8d0a |037e: check-cast v13, Landroid/widget/Switch; // type@0a8d │ │ -42d638: 6e20 db5a 8d00 |0380: invoke-virtual {v13, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ -42d63e: 6e20 de5a 1d00 |0383: invoke-virtual {v13, v1}, Landroid/widget/Switch;.setEnabled:(Z)V // method@5ade │ │ -42d644: 140d 7400 087f |0386: const v13, #float 1.80777e+38 // #7f080074 │ │ -42d64a: 6e20 eabc d000 |0389: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d650: 0c0e |038c: move-result-object v14 │ │ -42d652: 1f0e 5e0a |038d: check-cast v14, Landroid/widget/Button; // type@0a5e │ │ -42d656: 3801 0500 |038f: if-eqz v1, 0394 // +0005 │ │ -42d65a: 6e20 e058 8e00 |0391: invoke-virtual {v14, v8}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42d660: 140e ff00 087f |0394: const v14, #float 1.8078e+38 // #7f0800ff │ │ -42d666: 6e20 eabc e000 |0397: invoke-virtual {v0, v14}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d66c: 0c0e |039a: move-result-object v14 │ │ -42d66e: 1f0e 5e0a |039b: check-cast v14, Landroid/widget/Button; // type@0a5e │ │ -42d672: 3801 0500 |039d: if-eqz v1, 03a2 // +0005 │ │ -42d676: 6e20 e058 8e00 |039f: invoke-virtual {v14, v8}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ -42d67c: 150e 087f |03a2: const/high16 v14, #int 2131230720 // #7f08 │ │ -42d680: 6e20 eabc e000 |03a4: invoke-virtual {v0, v14}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d686: 0c0e |03a7: move-result-object v14 │ │ -42d688: 1f0e 970a |03a8: check-cast v14, Landroid/widget/TextView; // type@0a97 │ │ -42d68c: 7100 c8b8 0000 |03aa: invoke-static {}, Lorg/purple/smoke/About;.about:()Ljava/lang/String; // method@b8c8 │ │ -42d692: 0c0f |03ad: move-result-object v15 │ │ -42d694: 6e20 495b fe00 |03ae: invoke-virtual {v14, v15}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42d69a: 1a0f 0100 |03b1: const-string v15, " │ │ +42cf24: |[42cf24] org.purple.smoke.Settings.onCreate:(Landroid/os/Bundle;)V │ │ +42cf34: 0800 2800 |0000: move-object/from16 v0, v40 │ │ +42cf38: 7502 f23c 2800 |0002: invoke-super/range {v40, v41}, Landroid/support/v7/app/AppCompatActivity;.onCreate:(Landroid/os/Bundle;)V // method@3cf2 │ │ +42cf3e: 7401 edbc 2800 |0005: invoke-virtual/range {v40}, Lorg/purple/smoke/Settings;.getApplicationContext:()Landroid/content/Context; // method@bced │ │ +42cf44: 0c01 |0008: move-result-object v1 │ │ +42cf46: 7110 f4b9 0100 |0009: invoke-static {v1}, Lorg/purple/smoke/Database;.getInstance:(Landroid/content/Context;)Lorg/purple/smoke/Database; // method@b9f4 │ │ +42cf4c: 0c01 |000c: move-result-object v1 │ │ +42cf4e: 5b01 065f |000d: iput-object v1, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42cf52: 7100 74bd 0000 |000f: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42cf58: 0c01 |0012: move-result-object v1 │ │ +42cf5a: 6e10 77bd 0100 |0013: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ +42cf60: 0a01 |0016: move-result v1 │ │ +42cf62: 3901 0e00 |0017: if-nez v1, 0025 // +000e │ │ +42cf66: 5402 065f |0019: iget-object v2, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42cf6a: 6e10 deb9 0200 |001b: invoke-virtual {v2}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9de │ │ +42cf70: 0a02 |001e: move-result v2 │ │ +42cf72: 3802 0600 |001f: if-eqz v2, 0025 // +0006 │ │ +42cf76: 7601 0fbd 2800 |0021: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.showAuthenticateActivity:()V // method@bd0f │ │ +42cf7c: 0e00 |0024: return-void │ │ +42cf7e: 7100 10bb 0000 |0025: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +42cf84: 0c02 |0028: move-result-object v2 │ │ +42cf86: 5403 065f |0029: iget-object v3, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42cf8a: 1204 |002b: const/4 v4, #int 0 // #0 │ │ +42cf8c: 1a05 6159 |002c: const-string v5, "always_awake" // string@5961 │ │ +42cf90: 6e30 1bba 4305 |002e: invoke-virtual {v3, v4, v5}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42cf96: 0c03 |0031: move-result-object v3 │ │ +42cf98: 1a06 97a5 |0032: const-string v6, "true" // string@a597 │ │ +42cf9c: 6e20 b85c 6300 |0034: invoke-virtual {v3, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42cfa2: 0a03 |0037: move-result v3 │ │ +42cfa4: 6e20 23bb 3200 |0038: invoke-virtual {v2, v3}, Lorg/purple/smoke/Kernel;.setWakeLock:(Z)V // method@bb23 │ │ +42cfaa: 7100 74bd 0000 |003b: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42cfb0: 0c02 |003e: move-result-object v2 │ │ +42cfb2: 5403 065f |003f: iget-object v3, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42cfb6: 1a07 f48b |0041: const-string v7, "neighbors_echo" // string@8bf4 │ │ +42cfba: 6e30 1bba 4307 |0043: invoke-virtual {v3, v4, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42cfc0: 0c03 |0046: move-result-object v3 │ │ +42cfc2: 6e20 b85c 6300 |0047: invoke-virtual {v3, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42cfc8: 0a03 |004a: move-result v3 │ │ +42cfca: 6e20 8cbd 3200 |004b: invoke-virtual {v2, v3}, Lorg/purple/smoke/State;.setNeighborsEcho:(Z)V // method@bd8c │ │ +42cfd0: 2202 091b |004e: new-instance v2, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // type@1b09 │ │ +42cfd4: 7020 cabc 0200 |0050: invoke-direct {v2, v0}, Lorg/purple/smoke/Settings$SettingsBroadcastReceiver;.:(Lorg/purple/smoke/Settings;)V // method@bcca │ │ +42cfda: 5b02 075f |0053: iput-object v2, v0, Lorg/purple/smoke/Settings;.m_receiver:Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // field@5f07 │ │ +42cfde: 7601 05bd 2800 |0055: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.prepareForegroundService:()V // method@bd05 │ │ +42cfe4: 1402 1f00 0a7f |0058: const v2, #float 1.83434e+38 // #7f0a001f │ │ +42cfea: 6e20 0cbd 2000 |005b: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.setContentView:(I)V // method@bd0c │ │ +42cff0: 7401 f1bc 2800 |005e: invoke-virtual/range {v40}, Lorg/purple/smoke/Settings;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bcf1 │ │ +42cff6: 0c02 |0061: move-result-object v2 │ │ +42cff8: 7100 2ebd 0000 |0062: invoke-static {}, Lorg/purple/smoke/Smoke;.networkStatusString:()Ljava/lang/String; // method@bd2e │ │ +42cffe: 0c03 |0065: move-result-object v3 │ │ +42d000: 6e20 0a3c 3200 |0066: invoke-virtual {v2, v3}, Landroid/support/v7/app/ActionBar;.setSubtitle:(Ljava/lang/CharSequence;)V // method@3c0a │ │ +42d006: 7401 f1bc 2800 |0069: invoke-virtual/range {v40}, Lorg/purple/smoke/Settings;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bcf1 │ │ +42d00c: 0c02 |006c: move-result-object v2 │ │ +42d00e: 1a03 2f4c |006d: const-string v3, "Smoke | Settings" // string@4c2f │ │ +42d012: 6e20 0c3c 3200 |006f: invoke-virtual {v2, v3}, Landroid/support/v7/app/ActionBar;.setTitle:(Ljava/lang/CharSequence;)V // method@3c0c │ │ +42d018: 2802 |0072: goto 0074 // +0002 │ │ +42d01a: 0000 |0073: nop // spacer │ │ +42d01c: 7601 06bd 2800 |0074: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.prepareListeners:()V // method@bd06 │ │ +42d022: 1402 1e00 087f |0077: const v2, #float 1.80776e+38 // #7f08001e │ │ +42d028: 6e20 eabc 2000 |007a: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d02e: 0c02 |007d: move-result-object v2 │ │ +42d030: 1f02 5e0a |007e: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d034: 6e20 e058 1200 |0080: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42d03a: 1402 1f00 087f |0083: const v2, #float 1.80776e+38 // #7f08001f │ │ +42d040: 6e20 eabc 2000 |0086: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d046: 0c02 |0089: move-result-object v2 │ │ +42d048: 1f02 5e0a |008a: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d04c: 6e20 e058 1200 |008c: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42d052: 1402 5d00 087f |008f: const v2, #float 1.80777e+38 // #7f08005d │ │ +42d058: 6e20 eabc 2000 |0092: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d05e: 0c02 |0095: move-result-object v2 │ │ +42d060: 1f02 5e0a |0096: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d064: 1403 6e00 077f |0098: const v3, #float 1.79448e+38 // #7f07006e │ │ +42d06a: 1208 |009b: const/4 v8, #int 0 // #0 │ │ +42d06c: 6e58 df58 3288 |009c: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ +42d072: 1402 6400 087f |009f: const v2, #float 1.80777e+38 // #7f080064 │ │ +42d078: 6e20 eabc 2000 |00a2: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d07e: 0c02 |00a5: move-result-object v2 │ │ +42d080: 1f02 5e0a |00a6: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d084: 1409 8500 077f |00a8: const v9, #float 1.79448e+38 // #7f070085 │ │ +42d08a: 6e58 df58 9288 |00ab: invoke-virtual {v2, v9, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ +42d090: 6e20 e058 1200 |00ae: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42d096: 1402 8200 087f |00b1: const v2, #float 1.80778e+38 // #7f080082 │ │ +42d09c: 6e20 eabc 2000 |00b4: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d0a2: 0c02 |00b7: move-result-object v2 │ │ +42d0a4: 1f02 5e0a |00b8: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d0a8: 6e58 df58 3288 |00ba: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ +42d0ae: 1402 b800 087f |00bd: const v2, #float 1.80779e+38 // #7f0800b8 │ │ +42d0b4: 6e20 eabc 2000 |00c0: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d0ba: 0c02 |00c3: move-result-object v2 │ │ +42d0bc: 1f02 5e0a |00c4: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d0c0: 6e58 df58 3288 |00c6: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ +42d0c6: 1402 c200 087f |00c9: const v2, #float 1.80779e+38 // #7f0800c2 │ │ +42d0cc: 6e20 eabc 2000 |00cc: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d0d2: 0c02 |00cf: move-result-object v2 │ │ +42d0d4: 1f02 5e0a |00d0: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d0d8: 6e58 df58 3288 |00d2: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ +42d0de: 1402 da00 087f |00d5: const v2, #float 1.80779e+38 // #7f0800da │ │ +42d0e4: 6e20 eabc 2000 |00d8: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d0ea: 0c02 |00db: move-result-object v2 │ │ +42d0ec: 1f02 5e0a |00dc: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d0f0: 6e20 e058 1200 |00de: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42d0f6: 1402 db00 087f |00e1: const v2, #float 1.80779e+38 // #7f0800db │ │ +42d0fc: 6e20 eabc 2000 |00e4: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d102: 0c02 |00e7: move-result-object v2 │ │ +42d104: 1f02 5e0a |00e8: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d108: 6e20 e058 1200 |00ea: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42d10e: 1402 e000 087f |00ed: const v2, #float 1.8078e+38 // #7f0800e0 │ │ +42d114: 6e20 eabc 2000 |00f0: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d11a: 0c02 |00f3: move-result-object v2 │ │ +42d11c: 1f02 5e0a |00f4: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d120: 6e20 e058 1200 |00f6: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42d126: 1402 e100 087f |00f9: const v2, #float 1.8078e+38 // #7f0800e1 │ │ +42d12c: 6e20 eabc 2000 |00fc: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d132: 0c02 |00ff: move-result-object v2 │ │ +42d134: 1f02 5e0a |0100: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d138: 6e20 e058 1200 |0102: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42d13e: 1402 e800 087f |0105: const v2, #float 1.8078e+38 // #7f0800e8 │ │ +42d144: 6e20 eabc 2000 |0108: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d14a: 0c02 |010b: move-result-object v2 │ │ +42d14c: 1f02 5e0a |010c: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d150: 6e20 e058 1200 |010e: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42d156: 1402 0201 087f |0111: const v2, #float 1.8078e+38 // #7f080102 │ │ +42d15c: 6e20 eabc 2000 |0114: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d162: 0c02 |0117: move-result-object v2 │ │ +42d164: 1f02 5e0a |0118: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d168: 6e58 df58 9288 |011a: invoke-virtual {v2, v9, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ +42d16e: 6e20 e058 1200 |011d: invoke-virtual {v2, v1}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42d174: 1402 0901 087f |0120: const v2, #float 1.8078e+38 // #7f080109 │ │ +42d17a: 6e20 eabc 2000 |0123: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d180: 0c02 |0126: move-result-object v2 │ │ +42d182: 1f02 5e0a |0127: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d186: 6e58 df58 3288 |0129: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ +42d18c: 1402 0a01 087f |012c: const v2, #float 1.8078e+38 // #7f08010a │ │ +42d192: 6e20 eabc 2000 |012f: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d198: 0c02 |0132: move-result-object v2 │ │ +42d19a: 1f02 5e0a |0133: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +42d19e: 6e58 df58 3288 |0135: invoke-virtual {v2, v3, v8, v8, v8}, Landroid/widget/Button;.setCompoundDrawablesWithIntrinsicBounds:(IIII)V // method@58df │ │ +42d1a4: 1402 2500 087f |0138: const v2, #float 1.80776e+38 // #7f080025 │ │ +42d1aa: 6e20 eabc 2000 |013b: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d1b0: 0c02 |013e: move-result-object v2 │ │ +42d1b2: 1f02 8d0a |013f: check-cast v2, Landroid/widget/Switch; // type@0a8d │ │ +42d1b6: 1213 |0141: const/4 v3, #int 1 // #1 │ │ +42d1b8: 6e20 db5a 3200 |0142: invoke-virtual {v2, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d1be: 1402 2c00 087f |0145: const v2, #float 1.80776e+38 // #7f08002c │ │ +42d1c4: 6e20 eabc 2000 |0148: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d1ca: 0c09 |014b: move-result-object v9 │ │ +42d1cc: 1f09 8d0a |014c: check-cast v9, Landroid/widget/Switch; // type@0a8d │ │ +42d1d0: 540a 065f |014e: iget-object v10, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d1d4: 1a0b 605b |0150: const-string v11, "automatic_neighbors_refresh" // string@5b60 │ │ +42d1d8: 6e30 1bba 4a0b |0152: invoke-virtual {v10, v4, v11}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42d1de: 0c0a |0155: move-result-object v10 │ │ +42d1e0: 6e10 c35c 0a00 |0156: invoke-virtual {v10}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42d1e6: 0a0a |0159: move-result v10 │ │ +42d1e8: 380a 0b00 |015a: if-eqz v10, 0165 // +000b │ │ +42d1ec: 6e20 db5a 3900 |015c: invoke-virtual {v9, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d1f2: 540a 065f |015f: iget-object v10, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d1f6: 6e40 3eba 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@ba3e │ │ +42d1fc: 2814 |0164: goto 0178 // +0014 │ │ +42d1fe: 540a 065f |0165: iget-object v10, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d202: 6e30 1bba 4a0b |0167: invoke-virtual {v10, v4, v11}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42d208: 0c0a |016a: move-result-object v10 │ │ +42d20a: 6e20 b85c 6a00 |016b: invoke-virtual {v10, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42d210: 0a0a |016e: move-result v10 │ │ +42d212: 380a 0600 |016f: if-eqz v10, 0175 // +0006 │ │ +42d216: 6e20 db5a 3900 |0171: invoke-virtual {v9, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d21c: 2804 |0174: goto 0178 // +0004 │ │ +42d21e: 6e20 db5a 8900 |0175: invoke-virtual {v9, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d224: 6e10 da5a 0900 |0178: invoke-virtual {v9}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42d22a: 0a09 |017b: move-result v9 │ │ +42d22c: 3809 0500 |017c: if-eqz v9, 0181 // +0005 │ │ +42d230: 7601 19bd 2800 |017e: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.startTimers:()V // method@bd19 │ │ +42d236: 1409 5c00 087f |0181: const v9, #float 1.80777e+38 // #7f08005c │ │ +42d23c: 6e20 eabc 9000 |0184: invoke-virtual {v0, v9}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d242: 0c09 |0187: move-result-object v9 │ │ +42d244: 1f09 8d0a |0188: check-cast v9, Landroid/widget/Switch; // type@0a8d │ │ +42d248: 540a 065f |018a: iget-object v10, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d24c: 6e30 1bba 4a07 |018c: invoke-virtual {v10, v4, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42d252: 0c07 |018f: move-result-object v7 │ │ +42d254: 6e20 b85c 6700 |0190: invoke-virtual {v7, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42d25a: 0a07 |0193: move-result v7 │ │ +42d25c: 3807 0600 |0194: if-eqz v7, 019a // +0006 │ │ +42d260: 6e20 db5a 3900 |0196: invoke-virtual {v9, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d266: 2804 |0199: goto 019d // +0004 │ │ +42d268: 6e20 db5a 8900 |019a: invoke-virtual {v9, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d26e: 1407 7300 087f |019d: const v7, #float 1.80777e+38 // #7f080073 │ │ +42d274: 6e20 eabc 7000 |01a0: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d27a: 0c07 |01a3: move-result-object v7 │ │ +42d27c: 1f07 8d0a |01a4: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ +42d280: 5409 065f |01a6: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d284: 1a0a 5469 |01a8: const-string v10, "foreground_service" // string@6954 │ │ +42d288: 6e30 1bba 490a |01aa: invoke-virtual {v9, v4, v10}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42d28e: 0c09 |01ad: move-result-object v9 │ │ +42d290: 1a0a 1f68 |01ae: const-string v10, "false" // string@681f │ │ +42d294: 6e20 b85c a900 |01b0: invoke-virtual {v9, v10}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42d29a: 0a09 |01b3: move-result v9 │ │ +42d29c: 3809 0600 |01b4: if-eqz v9, 01ba // +0006 │ │ +42d2a0: 6e20 db5a 8700 |01b6: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d2a6: 2804 |01b9: goto 01bd // +0004 │ │ +42d2a8: 6e20 db5a 3700 |01ba: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d2ae: 1407 a600 087f |01bd: const v7, #float 1.80778e+38 // #7f0800a6 │ │ +42d2b4: 6e20 eabc 7000 |01c0: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d2ba: 0c07 |01c3: move-result-object v7 │ │ +42d2bc: 1f07 8d0a |01c4: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ +42d2c0: 5409 065f |01c6: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d2c4: 1a0a f38b |01c8: const-string v10, "neighbors_details" // string@8bf3 │ │ +42d2c8: 6e30 1bba 490a |01ca: invoke-virtual {v9, v4, v10}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42d2ce: 0c09 |01cd: move-result-object v9 │ │ +42d2d0: 6e20 b85c 6900 |01ce: invoke-virtual {v9, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42d2d6: 0a09 |01d1: move-result v9 │ │ +42d2d8: 3809 0600 |01d2: if-eqz v9, 01d8 // +0006 │ │ +42d2dc: 6e20 db5a 3700 |01d4: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d2e2: 2804 |01d7: goto 01db // +0004 │ │ +42d2e4: 6e20 db5a 8700 |01d8: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d2ea: 1407 d500 087f |01db: const v7, #float 1.80779e+38 // #7f0800d5 │ │ +42d2f0: 6e20 eabc 7000 |01de: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d2f6: 0c07 |01e1: move-result-object v7 │ │ +42d2f8: 1f07 8d0a |01e2: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ +42d2fc: 5409 065f |01e4: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d300: 1a0a f695 |01e6: const-string v10, "query_time_server" // string@95f6 │ │ +42d304: 6e30 1bba 490a |01e8: invoke-virtual {v9, v4, v10}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42d30a: 0c09 |01eb: move-result-object v9 │ │ +42d30c: 6e20 b85c 6900 |01ec: invoke-virtual {v9, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42d312: 0a09 |01ef: move-result v9 │ │ +42d314: 3809 0600 |01f0: if-eqz v9, 01f6 // +0006 │ │ +42d318: 6e20 db5a 3700 |01f2: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d31e: 2804 |01f5: goto 01f9 // +0004 │ │ +42d320: 6e20 db5a 8700 |01f6: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d326: 7100 74bd 0000 |01f9: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42d32c: 0c09 |01fc: move-result-object v9 │ │ +42d32e: 6e10 da5a 0700 |01fd: invoke-virtual {v7}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42d334: 0a07 |0200: move-result v7 │ │ +42d336: 6e20 8dbd 7900 |0201: invoke-virtual {v9, v7}, Lorg/purple/smoke/State;.setQueryTimerServer:(Z)V // method@bd8d │ │ +42d33c: 1407 0801 087f |0204: const v7, #float 1.8078e+38 // #7f080108 │ │ +42d342: 6e20 eabc 7000 |0207: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d348: 0c07 |020a: move-result-object v7 │ │ +42d34a: 1f07 8d0a |020b: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ +42d34e: 5409 065f |020d: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d352: 1a0a bea1 |020f: const-string v10, "silent" // string@a1be │ │ +42d356: 6e30 1bba 490a |0211: invoke-virtual {v9, v4, v10}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42d35c: 0c09 |0214: move-result-object v9 │ │ +42d35e: 6e20 b85c 6900 |0215: invoke-virtual {v9, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42d364: 0a09 |0218: move-result v9 │ │ +42d366: 3809 0600 |0219: if-eqz v9, 021f // +0006 │ │ +42d36a: 6e20 db5a 3700 |021b: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d370: 2804 |021e: goto 0222 // +0004 │ │ +42d372: 6e20 db5a 8700 |021f: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d378: 7100 74bd 0000 |0222: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42d37e: 0c09 |0225: move-result-object v9 │ │ +42d380: 6e10 da5a 0700 |0226: invoke-virtual {v7}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42d386: 0a07 |0229: move-result v7 │ │ +42d388: 6e20 8ebd 7900 |022a: invoke-virtual {v9, v7}, Lorg/purple/smoke/State;.setSilent:(Z)V // method@bd8e │ │ +42d38e: 1407 0c01 087f |022d: const v7, #float 1.8078e+38 // #7f08010c │ │ +42d394: 6e20 eabc 7000 |0230: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d39a: 0c07 |0233: move-result-object v7 │ │ +42d39c: 1f07 8d0a |0234: check-cast v7, Landroid/widget/Switch; // type@0a8d │ │ +42d3a0: 5409 065f |0236: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d3a4: 6e30 1bba 4905 |0238: invoke-virtual {v9, v4, v5}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42d3aa: 0c09 |023b: move-result-object v9 │ │ +42d3ac: 6e10 c35c 0900 |023c: invoke-virtual {v9}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +42d3b2: 0a09 |023f: move-result v9 │ │ +42d3b4: 3809 0b00 |0240: if-eqz v9, 024b // +000b │ │ +42d3b8: 6e20 db5a 3700 |0242: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d3be: 5407 065f |0245: iget-object v7, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d3c2: 6e40 3eba 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@ba3e │ │ +42d3c8: 2814 |024a: goto 025e // +0014 │ │ +42d3ca: 5409 065f |024b: iget-object v9, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d3ce: 6e30 1bba 4905 |024d: invoke-virtual {v9, v4, v5}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42d3d4: 0c05 |0250: move-result-object v5 │ │ +42d3d6: 6e20 b85c 6500 |0251: invoke-virtual {v5, v6}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42d3dc: 0a05 |0254: move-result v5 │ │ +42d3de: 3805 0600 |0255: if-eqz v5, 025b // +0006 │ │ +42d3e2: 6e20 db5a 3700 |0257: invoke-virtual {v7, v3}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d3e8: 2804 |025a: goto 025e // +0004 │ │ +42d3ea: 6e20 db5a 8700 |025b: invoke-virtual {v7, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d3f0: 1405 a900 087f |025e: const v5, #float 1.80778e+38 // #7f0800a9 │ │ +42d3f6: 6e20 eabc 5000 |0261: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d3fc: 0c05 |0264: move-result-object v5 │ │ +42d3fe: 1f05 7d0a |0265: check-cast v5, Landroid/widget/RadioButton; // type@0a7d │ │ +42d402: 6e20 645a 1500 |0267: invoke-virtual {v5, v1}, Landroid/widget/RadioButton;.setEnabled:(Z)V // method@5a64 │ │ +42d408: 1405 aa00 087f |026a: const v5, #float 1.80778e+38 // #7f0800aa │ │ +42d40e: 6e20 eabc 5000 |026d: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d414: 0c05 |0270: move-result-object v5 │ │ +42d416: 1f05 7d0a |0271: check-cast v5, Landroid/widget/RadioButton; // type@0a7d │ │ +42d41a: 6e20 645a 1500 |0273: invoke-virtual {v5, v1}, Landroid/widget/RadioButton;.setEnabled:(Z)V // method@5a64 │ │ +42d420: 1405 d400 087f |0276: const v5, #float 1.80779e+38 // #7f0800d4 │ │ +42d426: 6e20 eabc 5000 |0279: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d42c: 0c05 |027c: move-result-object v5 │ │ +42d42e: 1f05 8b0a |027d: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ +42d432: 1a06 741c |027f: const-string v6, "HTTP" // string@1c74 │ │ +42d436: 1a07 6b49 |0281: const-string v7, "SOCKS" // string@496b │ │ +42d43a: 2420 a81b 7600 |0283: filled-new-array {v6, v7}, [Ljava/lang/String; // type@1ba8 │ │ +42d440: 0c06 |0286: move-result-object v6 │ │ +42d442: 6e20 c65a 1500 |0287: invoke-virtual {v5, v1}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ +42d448: 2207 5b0a |028a: new-instance v7, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +42d44c: 1409 0800 0901 |028c: const v9, #float 2.51629e-38 // #01090008 │ │ +42d452: 7040 cb58 0769 |028f: invoke-direct {v7, v0, v9, v6}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ +42d458: 6e20 c05a 7500 |0292: invoke-virtual {v5, v7}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +42d45e: 1405 ae00 087f |0295: const v5, #float 1.80779e+38 // #7f0800ae │ │ +42d464: 6e20 eabc 5000 |0298: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d46a: 0c05 |029b: move-result-object v5 │ │ +42d46c: 1f05 8b0a |029c: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ +42d470: 1a06 094d |029e: const-string v6, "TCP" // string@4d09 │ │ +42d474: 1a07 0050 |02a0: const-string v7, "UDP" // string@5000 │ │ +42d478: 2420 a81b 7600 |02a2: filled-new-array {v6, v7}, [Ljava/lang/String; // type@1ba8 │ │ +42d47e: 0c06 |02a5: move-result-object v6 │ │ +42d480: 6e20 c65a 1500 |02a6: invoke-virtual {v5, v1}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ +42d486: 2207 5b0a |02a9: new-instance v7, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +42d48a: 7040 cb58 0769 |02ab: invoke-direct {v7, v0, v9, v6}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ +42d490: 6e20 c05a 7500 |02ae: invoke-virtual {v5, v7}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +42d496: 1a0a e807 |02b1: const-string v10, "5" // string@07e8 │ │ +42d49a: 1a0b 5c06 |02b3: const-string v11, "10" // string@065c │ │ +42d49e: 1a0c bb06 |02b5: const-string v12, "15" // string@06bb │ │ +42d4a2: 1a0d 5607 |02b7: const-string v13, "25" // string@0756 │ │ +42d4a6: 1a0e eb07 |02b9: const-string v14, "50" // string@07eb │ │ +42d4aa: 1a0f 5f06 |02bb: const-string v15, "100" // string@065f │ │ +42d4ae: 1a10 6106 |02bd: const-string v16, "1000" // string@0661 │ │ +42d4b2: 1a11 5707 |02bf: const-string v17, "2500" // string@0757 │ │ +42d4b6: 1a12 ed07 |02c1: const-string v18, "5000" // string@07ed │ │ +42d4ba: 1a13 3808 |02c3: const-string v19, "7500" // string@0838 │ │ +42d4be: 1a14 6206 |02c5: const-string v20, "10000" // string@0662 │ │ +42d4c2: 1a15 a906 |02c7: const-string v21, "12500" // string@06a9 │ │ +42d4c6: 1a16 c006 |02c9: const-string v22, "15000" // string@06c0 │ │ +42d4ca: 1a17 cb06 |02cb: const-string v23, "17500" // string@06cb │ │ +42d4ce: 1a18 4207 |02cd: const-string v24, "20000" // string@0742 │ │ +42d4d2: 1a19 5807 |02cf: const-string v25, "25000" // string@0758 │ │ +42d4d6: 1a1a 7d07 |02d1: const-string v26, "30000" // string@077d │ │ +42d4da: 1a1b ab07 |02d3: const-string v27, "35000" // string@07ab │ │ +42d4de: 1a1c c807 |02d5: const-string v28, "40000" // string@07c8 │ │ +42d4e2: 1a1d db07 |02d7: const-string v29, "45000" // string@07db │ │ +42d4e6: 1a1e ee07 |02d9: const-string v30, "50000" // string@07ee │ │ +42d4ea: 1a1f 0108 |02db: const-string v31, "55000" // string@0801 │ │ +42d4ee: 1a20 1508 |02dd: const-string v32, "60000" // string@0815 │ │ +42d4f2: 1a21 1c08 |02df: const-string v33, "65000" // string@081c │ │ +42d4f6: 1a22 3008 |02e1: const-string v34, "70000" // string@0830 │ │ +42d4fa: 1a23 6306 |02e3: const-string v35, "100000" // string@0663 │ │ +42d4fe: 1a24 5907 |02e5: const-string v36, "250000" // string@0759 │ │ +42d502: 1a25 6406 |02e7: const-string v37, "1000000" // string@0664 │ │ +42d506: 1a26 5a07 |02e9: const-string v38, "2500000" // string@075a │ │ +42d50a: 1a27 6506 |02eb: const-string v39, "10000000" // string@0665 │ │ +42d50e: 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 │ │ +42d514: 0c05 |02f0: move-result-object v5 │ │ +42d516: 2206 5b0a |02f1: new-instance v6, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +42d51a: 7040 cb58 0659 |02f3: invoke-direct {v6, v0, v9, v5}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ +42d520: 5405 065f |02f6: iget-object v5, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d524: 1a07 1c7c |02f8: const-string v7, "iterationCount" // string@7c1c │ │ +42d528: 6e30 1bba 4507 |02fa: invoke-virtual {v5, v4, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42d52e: 0c05 |02fd: move-result-object v5 │ │ +42d530: 6e20 cc58 5600 |02fe: invoke-virtual {v6, v5}, Landroid/widget/ArrayAdapter;.getPosition:(Ljava/lang/Object;)I // method@58cc │ │ +42d536: 0a05 |0301: move-result v5 │ │ +42d538: 1407 8500 087f |0302: const v7, #float 1.80778e+38 // #7f080085 │ │ +42d53e: 6e20 eabc 7000 |0305: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d544: 0c0a |0308: move-result-object v10 │ │ +42d546: 1f0a 8b0a |0309: check-cast v10, Landroid/widget/Spinner; // type@0a8b │ │ +42d54a: 6e20 c05a 6a00 |030b: invoke-virtual {v10, v6}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +42d550: 1a06 820e |030e: const-string v6, "Argon2id" // string@0e82 │ │ +42d554: 1a0a 7543 |0310: const-string v10, "PBKDF2" // string@4375 │ │ +42d558: 2420 a81b a600 |0312: filled-new-array {v6, v10}, [Ljava/lang/String; // type@1ba8 │ │ +42d55e: 0c06 |0315: move-result-object v6 │ │ +42d560: 220a 5b0a |0316: new-instance v10, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +42d564: 7040 cb58 0a69 |0318: invoke-direct {v10, v0, v9, v6}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ +42d56a: 5406 065f |031b: iget-object v6, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d56e: 1a0b 997c |031d: const-string v11, "keyDerivationFunction" // string@7c99 │ │ +42d572: 6e30 1bba 460b |031f: invoke-virtual {v6, v4, v11}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42d578: 0c06 |0322: move-result-object v6 │ │ +42d57a: 7110 555c 0600 |0323: invoke-static {v6}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@5c55 │ │ +42d580: 0a06 |0326: move-result v6 │ │ +42d582: 2803 |0327: goto 032a // +0003 │ │ +42d584: 0000 |0328: nop // spacer │ │ +42d586: 1216 |0329: const/4 v6, #int 1 // #1 │ │ +42d588: 140b 8700 087f |032a: const v11, #float 1.80778e+38 // #7f080087 │ │ +42d58e: 6e20 eabc b000 |032d: invoke-virtual {v0, v11}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d594: 0c0c |0330: move-result-object v12 │ │ +42d596: 1f0c 8b0a |0331: check-cast v12, Landroid/widget/Spinner; // type@0a8b │ │ +42d59a: 6e20 c05a ac00 |0333: invoke-virtual {v12, v10}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +42d5a0: 620a c153 |0336: sget-object v10, Lorg/purple/smoke/Cryptography;.PUBLIC_KEY_TYPES:[Ljava/lang/String; // field@53c1 │ │ +42d5a4: 220c 5b0a |0338: new-instance v12, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +42d5a8: 7040 cb58 0ca9 |033a: invoke-direct {v12, v0, v9, v10}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ +42d5ae: 140a ca00 087f |033d: const v10, #float 1.80779e+38 // #7f0800ca │ │ +42d5b4: 6e20 eabc a000 |0340: invoke-virtual {v0, v10}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d5ba: 0c0d |0343: move-result-object v13 │ │ +42d5bc: 1f0d 8b0a |0344: check-cast v13, Landroid/widget/Spinner; // type@0a8b │ │ +42d5c0: 6e20 c05a cd00 |0346: invoke-virtual {v13, v12}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +42d5c6: 1a0c 1918 |0349: const-string v12, "ECDSA" // string@1819 │ │ +42d5ca: 1a0d 6b46 |034b: const-string v13, "RSA" // string@466b │ │ +42d5ce: 1a0e 9846 |034d: const-string v14, "Rainbow" // string@4698 │ │ +42d5d2: 1a0f 8f49 |034f: const-string v15, "SPHINCS" // string@498f │ │ +42d5d6: 2440 a81b dcfe |0351: filled-new-array {v12, v13, v14, v15}, [Ljava/lang/String; // type@1ba8 │ │ +42d5dc: 0c0c |0354: move-result-object v12 │ │ +42d5de: 220d 5b0a |0355: new-instance v13, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +42d5e2: 7040 cb58 0dc9 |0357: invoke-direct {v13, v0, v9, v12}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ +42d5e8: 1409 cc00 087f |035a: const v9, #float 1.80779e+38 // #7f0800cc │ │ +42d5ee: 6e20 eabc 9000 |035d: invoke-virtual {v0, v9}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d5f4: 0c0c |0360: move-result-object v12 │ │ +42d5f6: 1f0c 8b0a |0361: check-cast v12, Landroid/widget/Spinner; // type@0a8b │ │ +42d5fa: 6e20 c05a dc00 |0363: invoke-virtual {v12, v13}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +42d600: 140c ab00 087f |0366: const v12, #float 1.80778e+38 // #7f0800ab │ │ +42d606: 6e20 eabc c000 |0369: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d60c: 0c0c |036c: move-result-object v12 │ │ +42d60e: 1f0c 7f0a |036d: check-cast v12, Landroid/widget/RadioGroup; // type@0a7f │ │ +42d612: 220d f41a |036f: new-instance v13, Lorg/purple/smoke/Settings$39; // type@1af4 │ │ +42d616: 7020 97bc 0d00 |0371: invoke-direct {v13, v0}, Lorg/purple/smoke/Settings$39;.:(Lorg/purple/smoke/Settings;)V // method@bc97 │ │ +42d61c: 6e20 675a dc00 |0374: invoke-virtual {v12, v13}, Landroid/widget/RadioGroup;.setOnCheckedChangeListener:(Landroid/widget/RadioGroup$OnCheckedChangeListener;)V // method@5a67 │ │ +42d622: 140c b600 087f |0377: const v12, #float 1.80779e+38 // #7f0800b6 │ │ +42d628: 6e20 eabc c000 |037a: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d62e: 0c0d |037d: move-result-object v13 │ │ +42d630: 1f0d 8d0a |037e: check-cast v13, Landroid/widget/Switch; // type@0a8d │ │ +42d634: 6e20 db5a 8d00 |0380: invoke-virtual {v13, v8}, Landroid/widget/Switch;.setChecked:(Z)V // method@5adb │ │ +42d63a: 6e20 de5a 1d00 |0383: invoke-virtual {v13, v1}, Landroid/widget/Switch;.setEnabled:(Z)V // method@5ade │ │ +42d640: 140d 7400 087f |0386: const v13, #float 1.80777e+38 // #7f080074 │ │ +42d646: 6e20 eabc d000 |0389: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d64c: 0c0e |038c: move-result-object v14 │ │ +42d64e: 1f0e 5e0a |038d: check-cast v14, Landroid/widget/Button; // type@0a5e │ │ +42d652: 3801 0500 |038f: if-eqz v1, 0394 // +0005 │ │ +42d656: 6e20 e058 8e00 |0391: invoke-virtual {v14, v8}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42d65c: 140e ff00 087f |0394: const v14, #float 1.8078e+38 // #7f0800ff │ │ +42d662: 6e20 eabc e000 |0397: invoke-virtual {v0, v14}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d668: 0c0e |039a: move-result-object v14 │ │ +42d66a: 1f0e 5e0a |039b: check-cast v14, Landroid/widget/Button; // type@0a5e │ │ +42d66e: 3801 0500 |039d: if-eqz v1, 03a2 // +0005 │ │ +42d672: 6e20 e058 8e00 |039f: invoke-virtual {v14, v8}, Landroid/widget/Button;.setEnabled:(Z)V // method@58e0 │ │ +42d678: 150e 087f |03a2: const/high16 v14, #int 2131230720 // #7f08 │ │ +42d67c: 6e20 eabc e000 |03a4: invoke-virtual {v0, v14}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d682: 0c0e |03a7: move-result-object v14 │ │ +42d684: 1f0e 970a |03a8: check-cast v14, Landroid/widget/TextView; // type@0a97 │ │ +42d688: 7100 c8b8 0000 |03aa: invoke-static {}, Lorg/purple/smoke/About;.about:()Ljava/lang/String; // method@b8c8 │ │ +42d68e: 0c0f |03ad: move-result-object v15 │ │ +42d690: 6e20 495b fe00 |03ae: invoke-virtual {v14, v15}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42d696: 1a0f 0100 |03b1: const-string v15, " │ │ " // string@0001 │ │ -42d69e: 6e20 035b fe00 |03b3: invoke-virtual {v14, v15}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ -42d6a4: 220c f10a |03b6: new-instance v12, Ljava/lang/StringBuilder; // type@0af1 │ │ -42d6a8: 7010 ee5c 0c00 |03b8: invoke-direct {v12}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42d6ae: 1a0d 0953 |03bb: const-string v13, "WakeLock Locked: " // string@5309 │ │ -42d6b2: 6e20 f95c dc00 |03bd: invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42d6b8: 7100 10bb 0000 |03c0: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -42d6be: 0c0d |03c3: move-result-object v13 │ │ -42d6c0: 6e10 24bb 0d00 |03c4: invoke-virtual {v13}, Lorg/purple/smoke/Kernel;.wakeLocked:()Z // method@bb24 │ │ -42d6c6: 0a0d |03c7: move-result v13 │ │ -42d6c8: 7110 f3bb 0d00 |03c8: invoke-static {v13}, Lorg/purple/smoke/Miscellaneous;.niceBoolean:(Z)Ljava/lang/String; // method@bbf3 │ │ -42d6ce: 0c0d |03cb: move-result-object v13 │ │ -42d6d0: 6e20 f95c dc00 |03cc: invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42d6d6: 6e10 035d 0c00 |03cf: invoke-virtual {v12}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42d6dc: 0c0c |03d2: move-result-object v12 │ │ -42d6de: 6e20 035b ce00 |03d3: invoke-virtual {v14, v12}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ -42d6e4: 6e20 035b fe00 |03d6: invoke-virtual {v14, v15}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ -42d6ea: 220c f10a |03d9: new-instance v12, Ljava/lang/StringBuilder; // type@0af1 │ │ -42d6ee: 7010 ee5c 0c00 |03db: invoke-direct {v12}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42d6f4: 1a0d 1253 |03de: const-string v13, "WiFiLock Locked: " // string@5312 │ │ -42d6f8: 6e20 f95c dc00 |03e0: invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42d6fe: 7100 10bb 0000 |03e3: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ -42d704: 0c0d |03e6: move-result-object v13 │ │ -42d706: 6e10 26bb 0d00 |03e7: invoke-virtual {v13}, Lorg/purple/smoke/Kernel;.wifiLocked:()Z // method@bb26 │ │ -42d70c: 0a0d |03ea: move-result v13 │ │ -42d70e: 7110 f3bb 0d00 |03eb: invoke-static {v13}, Lorg/purple/smoke/Miscellaneous;.niceBoolean:(Z)Ljava/lang/String; // method@bbf3 │ │ -42d714: 0c0d |03ee: move-result-object v13 │ │ -42d716: 6e20 f95c dc00 |03ef: invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42d71c: 6e10 035d 0c00 |03f2: invoke-virtual {v12}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42d722: 0c0c |03f5: move-result-object v12 │ │ -42d724: 6e20 035b ce00 |03f6: invoke-virtual {v14, v12}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ -42d72a: 140c ad00 087f |03f9: const v12, #float 1.80779e+38 // #7f0800ad │ │ -42d730: 6e20 eabc c000 |03fc: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d736: 0c0c |03ff: move-result-object v12 │ │ -42d738: 1f0c 970a |0400: check-cast v12, Landroid/widget/TextView; // type@0a97 │ │ -42d73c: 6e20 335b 8c00 |0402: invoke-virtual {v12, v8}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42d742: 140c ac00 087f |0405: const v12, #float 1.80778e+38 // #7f0800ac │ │ -42d748: 6e20 eabc c000 |0408: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d74e: 0c0c |040b: move-result-object v12 │ │ -42d750: 1f0c 970a |040c: check-cast v12, Landroid/widget/TextView; // type@0a97 │ │ -42d754: 6e20 335b 1c00 |040e: invoke-virtual {v12, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42d75a: 233d 9d1b |0411: new-array v13, v3, [Landroid/text/InputFilter; // type@1b9d │ │ -42d75e: 620e 0b5f |0413: sget-object v14, Lorg/purple/smoke/Settings;.s_portFilter:Landroid/text/InputFilter; // field@5f0b │ │ -42d762: 4d0e 0d08 |0415: aput-object v14, v13, v8 │ │ -42d766: 6e20 345b dc00 |0417: invoke-virtual {v12, v13}, Landroid/widget/TextView;.setFilters:([Landroid/text/InputFilter;)V // method@5b34 │ │ -42d76c: 1a0d df07 |041a: const-string v13, "4710" // string@07df │ │ -42d770: 6e20 495b dc00 |041c: invoke-virtual {v12, v13}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42d776: 140c a800 087f |041f: const v12, #float 1.80778e+38 // #7f0800a8 │ │ -42d77c: 6e20 eabc c000 |0422: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d782: 0c0c |0425: move-result-object v12 │ │ -42d784: 1f0c 970a |0426: check-cast v12, Landroid/widget/TextView; // type@0a97 │ │ -42d788: 3801 0500 |0428: if-eqz v1, 042d // +0005 │ │ -42d78c: 6e10 265b 0c00 |042a: invoke-virtual {v12}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ -42d792: 6e20 335b 1c00 |042d: invoke-virtual {v12, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42d798: 140c b700 087f |0430: const v12, #float 1.80779e+38 // #7f0800b7 │ │ -42d79e: 6e20 eabc c000 |0433: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d7a4: 0c0d |0436: move-result-object v13 │ │ -42d7a6: 1f0d 970a |0437: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ -42d7aa: 6e20 335b 1d00 |0439: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42d7b0: 140d bd00 087f |043c: const v13, #float 1.80779e+38 // #7f0800bd │ │ -42d7b6: 6e20 eabc d000 |043f: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d7bc: 0c0d |0442: move-result-object v13 │ │ -42d7be: 1f0d 970a |0443: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ -42d7c2: 6e20 335b 1d00 |0445: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42d7c8: 140d be00 087f |0448: const v13, #float 1.80779e+38 // #7f0800be │ │ -42d7ce: 6e20 eabc d000 |044b: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d7d4: 0c0d |044e: move-result-object v13 │ │ -42d7d6: 1f0d 970a |044f: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ -42d7da: 6e20 335b 1d00 |0451: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42d7e0: 140d c400 087f |0454: const v13, #float 1.80779e+38 // #7f0800c4 │ │ -42d7e6: 6e20 eabc d000 |0457: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d7ec: 0c0f |045a: move-result-object v15 │ │ -42d7ee: 1f0f 970a |045b: check-cast v15, Landroid/widget/TextView; // type@0a97 │ │ -42d7f2: 3901 0500 |045d: if-nez v1, 0462 // +0005 │ │ -42d7f6: 6e10 265b 0f00 |045f: invoke-virtual {v15}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ -42d7fc: 1a0d 0000 |0462: const-string v13, "" // string@0000 │ │ -42d800: 6e20 495b df00 |0464: invoke-virtual {v15, v13}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42d806: 140f c500 087f |0467: const v15, #float 1.80779e+38 // #7f0800c5 │ │ -42d80c: 6e20 eabc f000 |046a: invoke-virtual {v0, v15}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d812: 0c0f |046d: move-result-object v15 │ │ -42d814: 1f0f 970a |046e: check-cast v15, Landroid/widget/TextView; // type@0a97 │ │ -42d818: 6e20 495b df00 |0470: invoke-virtual {v15, v13}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42d81e: 140d d200 087f |0473: const v13, #float 1.80779e+38 // #7f0800d2 │ │ -42d824: 6e20 eabc d000 |0476: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d82a: 0c0d |0479: move-result-object v13 │ │ -42d82c: 1f0d 970a |047a: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ -42d830: 6e20 335b 1d00 |047c: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42d836: 140d d300 087f |047f: const v13, #float 1.80779e+38 // #7f0800d3 │ │ -42d83c: 6e20 eabc d000 |0482: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d842: 0c0d |0485: move-result-object v13 │ │ -42d844: 1f0d 970a |0486: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ -42d848: 6e20 335b 1d00 |0488: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ -42d84e: 233f 9d1b |048b: new-array v15, v3, [Landroid/text/InputFilter; // type@1b9d │ │ -42d852: 4d0e 0f08 |048d: aput-object v14, v15, v8 │ │ -42d856: 6e20 345b fd00 |048f: invoke-virtual {v13, v15}, Landroid/widget/TextView;.setFilters:([Landroid/text/InputFilter;)V // method@5b34 │ │ -42d85c: 6e20 eabc 7000 |0492: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d862: 0c07 |0495: move-result-object v7 │ │ -42d864: 1f07 8b0a |0496: check-cast v7, Landroid/widget/Spinner; // type@0a8b │ │ -42d868: 7120 7e5c 5800 |0498: invoke-static {v8, v5}, Ljava/lang/Math;.max:(II)I // method@5c7e │ │ -42d86e: 0a05 |049b: move-result v5 │ │ -42d870: 6e20 cc5a 5700 |049c: invoke-virtual {v7, v5}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -42d876: 6e20 eabc b000 |049f: invoke-virtual {v0, v11}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d87c: 0c05 |04a2: move-result-object v5 │ │ -42d87e: 1f05 8b0a |04a3: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ -42d882: 3a06 0600 |04a5: if-ltz v6, 04ab // +0006 │ │ -42d886: 6e20 cc5a 6500 |04a7: invoke-virtual {v5, v6}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -42d88c: 2804 |04aa: goto 04ae // +0004 │ │ -42d88e: 6e20 cc5a 3500 |04ab: invoke-virtual {v5, v3}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -42d894: 6e20 eabc a000 |04ae: invoke-virtual {v0, v10}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d89a: 0c05 |04b1: move-result-object v5 │ │ -42d89c: 1f05 8b0a |04b2: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ -42d8a0: 1246 |04b4: const/4 v6, #int 4 // #4 │ │ -42d8a2: 6e20 cc5a 6500 |04b5: invoke-virtual {v5, v6}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -42d8a8: 6e20 eabc 9000 |04b8: invoke-virtual {v0, v9}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d8ae: 0c05 |04bb: move-result-object v5 │ │ -42d8b0: 1f05 8b0a |04bc: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ -42d8b4: 6e10 b15a 0500 |04be: invoke-virtual {v5}, Landroid/widget/Spinner;.getAdapter:()Landroid/widget/SpinnerAdapter; // method@5ab1 │ │ -42d8ba: 0c06 |04c1: move-result-object v6 │ │ -42d8bc: 7210 cd5a 0600 |04c2: invoke-interface {v6}, Landroid/widget/SpinnerAdapter;.getCount:()I // method@5acd │ │ -42d8c2: 0a06 |04c5: move-result v6 │ │ -42d8c4: 3736 0500 |04c6: if-le v6, v3, 04cb // +0005 │ │ -42d8c8: 6e20 cc5a 3500 |04c8: invoke-virtual {v5, v3}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -42d8ce: 7601 00bd 2800 |04cb: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.populateFancyKeyData:()V // method@bd00 │ │ -42d8d4: 3801 3f00 |04ce: if-eqz v1, 050d // +003f │ │ -42d8d8: 6e20 eabc 2000 |04d0: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d8de: 0c01 |04d3: move-result-object v1 │ │ -42d8e0: 1f01 8d0a |04d4: check-cast v1, Landroid/widget/Switch; // type@0a8d │ │ -42d8e4: 1402 2200 087f |04d6: const v2, #float 1.80776e+38 // #7f080022 │ │ -42d8ea: 6e20 eabc 2000 |04d9: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d8f0: 0c02 |04dc: move-result-object v2 │ │ -42d8f2: 1f02 970a |04dd: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ -42d8f6: 5405 065f |04df: iget-object v5, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d8fa: 6206 0a5f |04e1: sget-object v6, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42d8fe: 1a07 4259 |04e3: const-string v7, "alias" // string@5942 │ │ -42d902: 6e30 1bba 6507 |04e5: invoke-virtual {v5, v6, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42d908: 0c05 |04e8: move-result-object v5 │ │ -42d90a: 6e20 495b 5200 |04e9: invoke-virtual {v2, v5}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42d910: 6e20 eabc c000 |04ec: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d916: 0c02 |04ef: move-result-object v2 │ │ -42d918: 1f02 970a |04f0: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ -42d91c: 5405 065f |04f2: iget-object v5, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42d920: 1a07 5892 |04f4: const-string v7, "ozone_address" // string@9258 │ │ -42d924: 6e30 1bba 6507 |04f6: invoke-virtual {v5, v6, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42d92a: 0c05 |04f9: move-result-object v5 │ │ -42d92c: 6e20 495b 5200 |04fa: invoke-virtual {v2, v5}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -42d932: 7601 03bd 2800 |04fd: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.populateParticipants:()V // method@bd03 │ │ -42d938: 7601 18bd 2800 |0500: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.startKernel:()V // method@bd18 │ │ -42d93e: 6e10 da5a 0100 |0503: invoke-virtual {v1}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ -42d944: 0a01 |0506: move-result v1 │ │ -42d946: 3901 6200 |0507: if-nez v1, 0569 // +0062 │ │ -42d94a: 7020 01bd 4000 |0509: invoke-direct {v0, v4}, Lorg/purple/smoke/Settings;.populateNeighbors:(Ljava/util/ArrayList;)V // method@bd01 │ │ -42d950: 285d |050c: goto 0569 // +005d │ │ -42d952: 1401 9200 087f |050d: const v1, #float 1.80778e+38 // #7f080092 │ │ -42d958: 6e20 eabc 1000 |0510: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d95e: 0c01 |0513: move-result-object v1 │ │ -42d960: 1f01 210a |0514: check-cast v1, Landroid/view/ViewGroup; // type@0a21 │ │ -42d964: 6e10 e356 0100 |0516: invoke-virtual {v1}, Landroid/view/ViewGroup;.getChildCount:()I // method@56e3 │ │ -42d96a: 0a02 |0519: move-result v2 │ │ -42d96c: 1304 0800 |051a: const/16 v4, #int 8 // #8 │ │ -42d970: 3528 3900 |051c: if-ge v8, v2, 0555 // +0039 │ │ -42d974: 6e20 e256 8100 |051e: invoke-virtual {v1, v8}, Landroid/view/ViewGroup;.getChildAt:(I)Landroid/view/View; // method@56e2 │ │ -42d97a: 0c05 |0521: move-result-object v5 │ │ -42d97c: 1406 c400 087f |0522: const v6, #float 1.80779e+38 // #7f0800c4 │ │ -42d982: 6e20 eabc 6000 |0525: invoke-virtual {v0, v6}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d988: 0c07 |0528: move-result-object v7 │ │ -42d98a: 3275 2900 |0529: if-eq v5, v7, 0552 // +0029 │ │ -42d98e: 1407 c500 087f |052b: const v7, #float 1.80779e+38 // #7f0800c5 │ │ -42d994: 6e20 eabc 7000 |052e: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d99a: 0c07 |0531: move-result-object v7 │ │ -42d99c: 3275 2000 |0532: if-eq v5, v7, 0552 // +0020 │ │ -42d9a0: 1407 c600 087f |0534: const v7, #float 1.80779e+38 // #7f0800c6 │ │ -42d9a6: 6e20 eabc 7000 |0537: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d9ac: 0c07 |053a: move-result-object v7 │ │ -42d9ae: 3275 1700 |053b: if-eq v5, v7, 0552 // +0017 │ │ -42d9b2: 1407 cb00 087f |053d: const v7, #float 1.80779e+38 // #7f0800cb │ │ -42d9b8: 6e20 eabc 7000 |0540: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d9be: 0c07 |0543: move-result-object v7 │ │ -42d9c0: 3275 0e00 |0544: if-eq v5, v7, 0552 // +000e │ │ -42d9c4: 1407 0001 087f |0546: const v7, #float 1.8078e+38 // #7f080100 │ │ -42d9ca: 6e20 eabc 7000 |0549: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d9d0: 0c07 |054c: move-result-object v7 │ │ -42d9d2: 3275 0500 |054d: if-eq v5, v7, 0552 // +0005 │ │ -42d9d6: 6e20 ac56 4500 |054f: invoke-virtual {v5, v4}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -42d9dc: d808 0801 |0552: add-int/lit8 v8, v8, #int 1 // #01 │ │ -42d9e0: 28c6 |0554: goto 051a // -003a │ │ -42d9e2: 1405 7400 087f |0555: const v5, #float 1.80777e+38 // #7f080074 │ │ -42d9e8: 6e20 eabc 5000 |0558: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42d9ee: 0c01 |055b: move-result-object v1 │ │ -42d9f0: 6e20 ac56 4100 |055c: invoke-virtual {v1, v4}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -42d9f6: 1401 b600 087f |055f: const v1, #float 1.80779e+38 // #7f0800b6 │ │ -42d9fc: 6e20 eabc 1000 |0562: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ -42da02: 0c01 |0565: move-result-object v1 │ │ -42da04: 6e20 ac56 4100 |0566: invoke-virtual {v1, v4}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ -42da0a: 5401 065f |0569: iget-object v1, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42da0e: 6e10 deb9 0100 |056b: invoke-virtual {v1}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9de │ │ -42da14: 0a01 |056e: move-result v1 │ │ -42da16: 3901 1400 |056f: if-nez v1, 0583 // +0014 │ │ -42da1a: 1a01 bd59 |0571: const-string v1, "android.permission.READ_EXTERNAL_STORAGE" // string@59bd │ │ -42da1e: 2410 a81b 0100 |0573: filled-new-array {v1}, [Ljava/lang/String; // type@1ba8 │ │ -42da24: 0c01 |0576: move-result-object v1 │ │ -42da26: 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 │ │ -42da2c: 1a01 be59 |057a: const-string v1, "android.permission.WRITE_EXTERNAL_STORAGE" // string@59be │ │ -42da30: 2410 a81b 0100 |057c: filled-new-array {v1}, [Ljava/lang/String; // type@1ba8 │ │ -42da36: 0c01 |057f: move-result-object v1 │ │ -42da38: 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 │ │ -42da3e: 0e00 |0583: return-void │ │ +42d69a: 6e20 035b fe00 |03b3: invoke-virtual {v14, v15}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ +42d6a0: 220c f10a |03b6: new-instance v12, Ljava/lang/StringBuilder; // type@0af1 │ │ +42d6a4: 7010 ee5c 0c00 |03b8: invoke-direct {v12}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42d6aa: 1a0d 0953 |03bb: const-string v13, "WakeLock Locked: " // string@5309 │ │ +42d6ae: 6e20 f95c dc00 |03bd: invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42d6b4: 7100 10bb 0000 |03c0: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +42d6ba: 0c0d |03c3: move-result-object v13 │ │ +42d6bc: 6e10 24bb 0d00 |03c4: invoke-virtual {v13}, Lorg/purple/smoke/Kernel;.wakeLocked:()Z // method@bb24 │ │ +42d6c2: 0a0d |03c7: move-result v13 │ │ +42d6c4: 7110 f3bb 0d00 |03c8: invoke-static {v13}, Lorg/purple/smoke/Miscellaneous;.niceBoolean:(Z)Ljava/lang/String; // method@bbf3 │ │ +42d6ca: 0c0d |03cb: move-result-object v13 │ │ +42d6cc: 6e20 f95c dc00 |03cc: invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42d6d2: 6e10 035d 0c00 |03cf: invoke-virtual {v12}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42d6d8: 0c0c |03d2: move-result-object v12 │ │ +42d6da: 6e20 035b ce00 |03d3: invoke-virtual {v14, v12}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ +42d6e0: 6e20 035b fe00 |03d6: invoke-virtual {v14, v15}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ +42d6e6: 220c f10a |03d9: new-instance v12, Ljava/lang/StringBuilder; // type@0af1 │ │ +42d6ea: 7010 ee5c 0c00 |03db: invoke-direct {v12}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42d6f0: 1a0d 1253 |03de: const-string v13, "WiFiLock Locked: " // string@5312 │ │ +42d6f4: 6e20 f95c dc00 |03e0: invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42d6fa: 7100 10bb 0000 |03e3: invoke-static {}, Lorg/purple/smoke/Kernel;.getInstance:()Lorg/purple/smoke/Kernel; // method@bb10 │ │ +42d700: 0c0d |03e6: move-result-object v13 │ │ +42d702: 6e10 26bb 0d00 |03e7: invoke-virtual {v13}, Lorg/purple/smoke/Kernel;.wifiLocked:()Z // method@bb26 │ │ +42d708: 0a0d |03ea: move-result v13 │ │ +42d70a: 7110 f3bb 0d00 |03eb: invoke-static {v13}, Lorg/purple/smoke/Miscellaneous;.niceBoolean:(Z)Ljava/lang/String; // method@bbf3 │ │ +42d710: 0c0d |03ee: move-result-object v13 │ │ +42d712: 6e20 f95c dc00 |03ef: invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42d718: 6e10 035d 0c00 |03f2: invoke-virtual {v12}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42d71e: 0c0c |03f5: move-result-object v12 │ │ +42d720: 6e20 035b ce00 |03f6: invoke-virtual {v14, v12}, Landroid/widget/TextView;.append:(Ljava/lang/CharSequence;)V // method@5b03 │ │ +42d726: 140c ad00 087f |03f9: const v12, #float 1.80779e+38 // #7f0800ad │ │ +42d72c: 6e20 eabc c000 |03fc: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d732: 0c0c |03ff: move-result-object v12 │ │ +42d734: 1f0c 970a |0400: check-cast v12, Landroid/widget/TextView; // type@0a97 │ │ +42d738: 6e20 335b 8c00 |0402: invoke-virtual {v12, v8}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42d73e: 140c ac00 087f |0405: const v12, #float 1.80778e+38 // #7f0800ac │ │ +42d744: 6e20 eabc c000 |0408: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d74a: 0c0c |040b: move-result-object v12 │ │ +42d74c: 1f0c 970a |040c: check-cast v12, Landroid/widget/TextView; // type@0a97 │ │ +42d750: 6e20 335b 1c00 |040e: invoke-virtual {v12, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42d756: 233d 9d1b |0411: new-array v13, v3, [Landroid/text/InputFilter; // type@1b9d │ │ +42d75a: 620e 0b5f |0413: sget-object v14, Lorg/purple/smoke/Settings;.s_portFilter:Landroid/text/InputFilter; // field@5f0b │ │ +42d75e: 4d0e 0d08 |0415: aput-object v14, v13, v8 │ │ +42d762: 6e20 345b dc00 |0417: invoke-virtual {v12, v13}, Landroid/widget/TextView;.setFilters:([Landroid/text/InputFilter;)V // method@5b34 │ │ +42d768: 1a0d df07 |041a: const-string v13, "4710" // string@07df │ │ +42d76c: 6e20 495b dc00 |041c: invoke-virtual {v12, v13}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42d772: 140c a800 087f |041f: const v12, #float 1.80778e+38 // #7f0800a8 │ │ +42d778: 6e20 eabc c000 |0422: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d77e: 0c0c |0425: move-result-object v12 │ │ +42d780: 1f0c 970a |0426: check-cast v12, Landroid/widget/TextView; // type@0a97 │ │ +42d784: 3801 0500 |0428: if-eqz v1, 042d // +0005 │ │ +42d788: 6e10 265b 0c00 |042a: invoke-virtual {v12}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ +42d78e: 6e20 335b 1c00 |042d: invoke-virtual {v12, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42d794: 140c b700 087f |0430: const v12, #float 1.80779e+38 // #7f0800b7 │ │ +42d79a: 6e20 eabc c000 |0433: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d7a0: 0c0d |0436: move-result-object v13 │ │ +42d7a2: 1f0d 970a |0437: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ +42d7a6: 6e20 335b 1d00 |0439: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42d7ac: 140d bd00 087f |043c: const v13, #float 1.80779e+38 // #7f0800bd │ │ +42d7b2: 6e20 eabc d000 |043f: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d7b8: 0c0d |0442: move-result-object v13 │ │ +42d7ba: 1f0d 970a |0443: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ +42d7be: 6e20 335b 1d00 |0445: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42d7c4: 140d be00 087f |0448: const v13, #float 1.80779e+38 // #7f0800be │ │ +42d7ca: 6e20 eabc d000 |044b: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d7d0: 0c0d |044e: move-result-object v13 │ │ +42d7d2: 1f0d 970a |044f: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ +42d7d6: 6e20 335b 1d00 |0451: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42d7dc: 140d c400 087f |0454: const v13, #float 1.80779e+38 // #7f0800c4 │ │ +42d7e2: 6e20 eabc d000 |0457: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d7e8: 0c0f |045a: move-result-object v15 │ │ +42d7ea: 1f0f 970a |045b: check-cast v15, Landroid/widget/TextView; // type@0a97 │ │ +42d7ee: 3901 0500 |045d: if-nez v1, 0462 // +0005 │ │ +42d7f2: 6e10 265b 0f00 |045f: invoke-virtual {v15}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ +42d7f8: 1a0d 0000 |0462: const-string v13, "" // string@0000 │ │ +42d7fc: 6e20 495b df00 |0464: invoke-virtual {v15, v13}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42d802: 140f c500 087f |0467: const v15, #float 1.80779e+38 // #7f0800c5 │ │ +42d808: 6e20 eabc f000 |046a: invoke-virtual {v0, v15}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d80e: 0c0f |046d: move-result-object v15 │ │ +42d810: 1f0f 970a |046e: check-cast v15, Landroid/widget/TextView; // type@0a97 │ │ +42d814: 6e20 495b df00 |0470: invoke-virtual {v15, v13}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42d81a: 140d d200 087f |0473: const v13, #float 1.80779e+38 // #7f0800d2 │ │ +42d820: 6e20 eabc d000 |0476: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d826: 0c0d |0479: move-result-object v13 │ │ +42d828: 1f0d 970a |047a: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ +42d82c: 6e20 335b 1d00 |047c: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42d832: 140d d300 087f |047f: const v13, #float 1.80779e+38 // #7f0800d3 │ │ +42d838: 6e20 eabc d000 |0482: invoke-virtual {v0, v13}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d83e: 0c0d |0485: move-result-object v13 │ │ +42d840: 1f0d 970a |0486: check-cast v13, Landroid/widget/TextView; // type@0a97 │ │ +42d844: 6e20 335b 1d00 |0488: invoke-virtual {v13, v1}, Landroid/widget/TextView;.setEnabled:(Z)V // method@5b33 │ │ +42d84a: 233f 9d1b |048b: new-array v15, v3, [Landroid/text/InputFilter; // type@1b9d │ │ +42d84e: 4d0e 0f08 |048d: aput-object v14, v15, v8 │ │ +42d852: 6e20 345b fd00 |048f: invoke-virtual {v13, v15}, Landroid/widget/TextView;.setFilters:([Landroid/text/InputFilter;)V // method@5b34 │ │ +42d858: 6e20 eabc 7000 |0492: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d85e: 0c07 |0495: move-result-object v7 │ │ +42d860: 1f07 8b0a |0496: check-cast v7, Landroid/widget/Spinner; // type@0a8b │ │ +42d864: 7120 7e5c 5800 |0498: invoke-static {v8, v5}, Ljava/lang/Math;.max:(II)I // method@5c7e │ │ +42d86a: 0a05 |049b: move-result v5 │ │ +42d86c: 6e20 cc5a 5700 |049c: invoke-virtual {v7, v5}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +42d872: 6e20 eabc b000 |049f: invoke-virtual {v0, v11}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d878: 0c05 |04a2: move-result-object v5 │ │ +42d87a: 1f05 8b0a |04a3: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ +42d87e: 3a06 0600 |04a5: if-ltz v6, 04ab // +0006 │ │ +42d882: 6e20 cc5a 6500 |04a7: invoke-virtual {v5, v6}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +42d888: 2804 |04aa: goto 04ae // +0004 │ │ +42d88a: 6e20 cc5a 3500 |04ab: invoke-virtual {v5, v3}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +42d890: 6e20 eabc a000 |04ae: invoke-virtual {v0, v10}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d896: 0c05 |04b1: move-result-object v5 │ │ +42d898: 1f05 8b0a |04b2: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ +42d89c: 1246 |04b4: const/4 v6, #int 4 // #4 │ │ +42d89e: 6e20 cc5a 6500 |04b5: invoke-virtual {v5, v6}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +42d8a4: 6e20 eabc 9000 |04b8: invoke-virtual {v0, v9}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d8aa: 0c05 |04bb: move-result-object v5 │ │ +42d8ac: 1f05 8b0a |04bc: check-cast v5, Landroid/widget/Spinner; // type@0a8b │ │ +42d8b0: 6e10 b15a 0500 |04be: invoke-virtual {v5}, Landroid/widget/Spinner;.getAdapter:()Landroid/widget/SpinnerAdapter; // method@5ab1 │ │ +42d8b6: 0c06 |04c1: move-result-object v6 │ │ +42d8b8: 7210 cd5a 0600 |04c2: invoke-interface {v6}, Landroid/widget/SpinnerAdapter;.getCount:()I // method@5acd │ │ +42d8be: 0a06 |04c5: move-result v6 │ │ +42d8c0: 3736 0500 |04c6: if-le v6, v3, 04cb // +0005 │ │ +42d8c4: 6e20 cc5a 3500 |04c8: invoke-virtual {v5, v3}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +42d8ca: 7601 00bd 2800 |04cb: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.populateFancyKeyData:()V // method@bd00 │ │ +42d8d0: 3801 3f00 |04ce: if-eqz v1, 050d // +003f │ │ +42d8d4: 6e20 eabc 2000 |04d0: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d8da: 0c01 |04d3: move-result-object v1 │ │ +42d8dc: 1f01 8d0a |04d4: check-cast v1, Landroid/widget/Switch; // type@0a8d │ │ +42d8e0: 1402 2200 087f |04d6: const v2, #float 1.80776e+38 // #7f080022 │ │ +42d8e6: 6e20 eabc 2000 |04d9: invoke-virtual {v0, v2}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d8ec: 0c02 |04dc: move-result-object v2 │ │ +42d8ee: 1f02 970a |04dd: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ +42d8f2: 5405 065f |04df: iget-object v5, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d8f6: 6206 0a5f |04e1: sget-object v6, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42d8fa: 1a07 4259 |04e3: const-string v7, "alias" // string@5942 │ │ +42d8fe: 6e30 1bba 6507 |04e5: invoke-virtual {v5, v6, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42d904: 0c05 |04e8: move-result-object v5 │ │ +42d906: 6e20 495b 5200 |04e9: invoke-virtual {v2, v5}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42d90c: 6e20 eabc c000 |04ec: invoke-virtual {v0, v12}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d912: 0c02 |04ef: move-result-object v2 │ │ +42d914: 1f02 970a |04f0: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ +42d918: 5405 065f |04f2: iget-object v5, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42d91c: 1a07 5892 |04f4: const-string v7, "ozone_address" // string@9258 │ │ +42d920: 6e30 1bba 6507 |04f6: invoke-virtual {v5, v6, v7}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42d926: 0c05 |04f9: move-result-object v5 │ │ +42d928: 6e20 495b 5200 |04fa: invoke-virtual {v2, v5}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +42d92e: 7601 03bd 2800 |04fd: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.populateParticipants:()V // method@bd03 │ │ +42d934: 7601 18bd 2800 |0500: invoke-direct/range {v40}, Lorg/purple/smoke/Settings;.startKernel:()V // method@bd18 │ │ +42d93a: 6e10 da5a 0100 |0503: invoke-virtual {v1}, Landroid/widget/Switch;.isChecked:()Z // method@5ada │ │ +42d940: 0a01 |0506: move-result v1 │ │ +42d942: 3901 6200 |0507: if-nez v1, 0569 // +0062 │ │ +42d946: 7020 01bd 4000 |0509: invoke-direct {v0, v4}, Lorg/purple/smoke/Settings;.populateNeighbors:(Ljava/util/ArrayList;)V // method@bd01 │ │ +42d94c: 285d |050c: goto 0569 // +005d │ │ +42d94e: 1401 9200 087f |050d: const v1, #float 1.80778e+38 // #7f080092 │ │ +42d954: 6e20 eabc 1000 |0510: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d95a: 0c01 |0513: move-result-object v1 │ │ +42d95c: 1f01 210a |0514: check-cast v1, Landroid/view/ViewGroup; // type@0a21 │ │ +42d960: 6e10 e356 0100 |0516: invoke-virtual {v1}, Landroid/view/ViewGroup;.getChildCount:()I // method@56e3 │ │ +42d966: 0a02 |0519: move-result v2 │ │ +42d968: 1304 0800 |051a: const/16 v4, #int 8 // #8 │ │ +42d96c: 3528 3900 |051c: if-ge v8, v2, 0555 // +0039 │ │ +42d970: 6e20 e256 8100 |051e: invoke-virtual {v1, v8}, Landroid/view/ViewGroup;.getChildAt:(I)Landroid/view/View; // method@56e2 │ │ +42d976: 0c05 |0521: move-result-object v5 │ │ +42d978: 1406 c400 087f |0522: const v6, #float 1.80779e+38 // #7f0800c4 │ │ +42d97e: 6e20 eabc 6000 |0525: invoke-virtual {v0, v6}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d984: 0c07 |0528: move-result-object v7 │ │ +42d986: 3275 2900 |0529: if-eq v5, v7, 0552 // +0029 │ │ +42d98a: 1407 c500 087f |052b: const v7, #float 1.80779e+38 // #7f0800c5 │ │ +42d990: 6e20 eabc 7000 |052e: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d996: 0c07 |0531: move-result-object v7 │ │ +42d998: 3275 2000 |0532: if-eq v5, v7, 0552 // +0020 │ │ +42d99c: 1407 c600 087f |0534: const v7, #float 1.80779e+38 // #7f0800c6 │ │ +42d9a2: 6e20 eabc 7000 |0537: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d9a8: 0c07 |053a: move-result-object v7 │ │ +42d9aa: 3275 1700 |053b: if-eq v5, v7, 0552 // +0017 │ │ +42d9ae: 1407 cb00 087f |053d: const v7, #float 1.80779e+38 // #7f0800cb │ │ +42d9b4: 6e20 eabc 7000 |0540: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d9ba: 0c07 |0543: move-result-object v7 │ │ +42d9bc: 3275 0e00 |0544: if-eq v5, v7, 0552 // +000e │ │ +42d9c0: 1407 0001 087f |0546: const v7, #float 1.8078e+38 // #7f080100 │ │ +42d9c6: 6e20 eabc 7000 |0549: invoke-virtual {v0, v7}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d9cc: 0c07 |054c: move-result-object v7 │ │ +42d9ce: 3275 0500 |054d: if-eq v5, v7, 0552 // +0005 │ │ +42d9d2: 6e20 ac56 4500 |054f: invoke-virtual {v5, v4}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +42d9d8: d808 0801 |0552: add-int/lit8 v8, v8, #int 1 // #01 │ │ +42d9dc: 28c6 |0554: goto 051a // -003a │ │ +42d9de: 1405 7400 087f |0555: const v5, #float 1.80777e+38 // #7f080074 │ │ +42d9e4: 6e20 eabc 5000 |0558: invoke-virtual {v0, v5}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d9ea: 0c01 |055b: move-result-object v1 │ │ +42d9ec: 6e20 ac56 4100 |055c: invoke-virtual {v1, v4}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +42d9f2: 1401 b600 087f |055f: const v1, #float 1.80779e+38 // #7f0800b6 │ │ +42d9f8: 6e20 eabc 1000 |0562: invoke-virtual {v0, v1}, Lorg/purple/smoke/Settings;.findViewById:(I)Landroid/view/View; // method@bcea │ │ +42d9fe: 0c01 |0565: move-result-object v1 │ │ +42da00: 6e20 ac56 4100 |0566: invoke-virtual {v1, v4}, Landroid/view/View;.setVisibility:(I)V // method@56ac │ │ +42da06: 5401 065f |0569: iget-object v1, v0, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42da0a: 6e10 deb9 0100 |056b: invoke-virtual {v1}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9de │ │ +42da10: 0a01 |056e: move-result v1 │ │ +42da12: 3901 1400 |056f: if-nez v1, 0583 // +0014 │ │ +42da16: 1a01 bd59 |0571: const-string v1, "android.permission.READ_EXTERNAL_STORAGE" // string@59bd │ │ +42da1a: 2410 a81b 0100 |0573: filled-new-array {v1}, [Ljava/lang/String; // type@1ba8 │ │ +42da20: 0c01 |0576: move-result-object v1 │ │ +42da22: 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 │ │ +42da28: 1a01 be59 |057a: const-string v1, "android.permission.WRITE_EXTERNAL_STORAGE" // string@59be │ │ +42da2c: 2410 a81b 0100 |057c: filled-new-array {v1}, [Ljava/lang/String; // type@1ba8 │ │ +42da32: 0c01 |057f: move-result-object v1 │ │ +42da34: 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 │ │ +42da3a: 0e00 |0583: return-void │ │ catches : 2 │ │ 0x005e - 0x0072 │ │ Ljava/lang/Exception; -> 0x0073 │ │ 0x031b - 0x0327 │ │ Ljava/lang/Exception; -> 0x0328 │ │ positions : │ │ 0x0002 line=3235 │ │ @@ -1573351,156 +1573350,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 │ │ -42da5c: |[42da5c] org.purple.smoke.Settings.onCreateContextMenu:(Landroid/view/ContextMenu;Landroid/view/View;Landroid/view/ContextMenu$ContextMenuInfo;)V │ │ -42da6c: 380b 3901 |0000: if-eqz v11, 0139 // +0139 │ │ -42da70: 390c 0400 |0002: if-nez v12, 0006 // +0004 │ │ -42da74: 2900 3501 |0004: goto/16 0139 // +0135 │ │ -42da78: 1400 bf00 087f |0006: const v0, #float 1.80779e+38 // #7f0800bf │ │ -42da7e: 6e20 1d56 0c00 |0009: invoke-virtual {v12, v0}, Landroid/view/View;.getTag:(I)Ljava/lang/Object; // method@561d │ │ -42da84: 0c00 |000c: move-result-object v0 │ │ -42da86: 1401 db00 087f |000d: const v1, #float 1.80779e+38 // #7f0800db │ │ -42da8c: 6e20 1d56 1c00 |0010: invoke-virtual {v12, v1}, Landroid/view/View;.getTag:(I)Ljava/lang/Object; // method@561d │ │ -42da92: 0c01 |0013: move-result-object v1 │ │ -42da94: 3800 2501 |0014: if-eqz v0, 0139 // +0125 │ │ -42da98: 3801 2301 |0016: if-eqz v1, 0139 // +0123 │ │ -42da9c: 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 │ │ -42daa2: 6e10 f455 0c00 |001b: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42daa8: 0a0d |001e: move-result v13 │ │ -42daaa: 2202 f10a |001f: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -42daae: 7010 ee5c 0200 |0021: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42dab4: 1a03 2a17 |0024: const-string v3, "Delete (" // string@172a │ │ -42dab8: 6e20 f95c 3200 |0026: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dabe: 6e20 f85c 0200 |0029: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ -42dac4: 1a03 ec03 |002c: const-string v3, ")" // string@03ec │ │ -42dac8: 6e20 f95c 3200 |002e: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dace: 6e10 035d 0200 |0031: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42dad4: 0c02 |0034: move-result-object v2 │ │ -42dad6: 1204 |0035: const/4 v4, #int 0 // #0 │ │ -42dad8: 7252 0c55 4b4d |0036: invoke-interface {v11, v4, v13, v4, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -42dade: 6e10 f455 0c00 |0039: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42dae4: 0a0d |003c: move-result v13 │ │ -42dae6: 2202 f10a |003d: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -42daea: 7010 ee5c 0200 |003f: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42daf0: 1a05 2d17 |0042: const-string v5, "Delete Fiasco Keys (" // string@172d │ │ -42daf4: 6e20 f95c 5200 |0044: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dafa: 6e20 f85c 0200 |0047: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ -42db00: 6e20 f95c 3200 |004a: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42db06: 6e10 035d 0200 |004d: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42db0c: 0c02 |0050: move-result-object v2 │ │ -42db0e: 1215 |0051: const/4 v5, #int 1 // #1 │ │ -42db10: 7252 0c55 5b5d |0052: invoke-interface {v11, v5, v13, v5, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -42db16: 0c0d |0055: move-result-object v13 │ │ -42db18: 54a2 065f |0056: iget-object v2, v10, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42db1c: 6e10 f455 0c00 |0058: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42db22: 0a06 |005b: move-result v6 │ │ -42db24: 6e20 f1b9 6200 |005c: invoke-virtual {v2, v6}, Lorg/purple/smoke/Database;.fiascoCount:(I)J // method@b9f1 │ │ -42db2a: 0b06 |005f: move-result-wide v6 │ │ -42db2c: 1608 0100 |0060: const-wide/16 v8, #int 1 // #1 │ │ -42db30: 3102 0608 |0062: cmp-long v2, v6, v8 │ │ -42db34: 3a02 0300 |0064: if-ltz v2, 0067 // +0003 │ │ -42db38: 2802 |0066: goto 0068 // +0002 │ │ -42db3a: 1205 |0067: const/4 v5, #int 0 // #0 │ │ -42db3c: 7220 7a55 5d00 |0068: invoke-interface {v13, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42db42: 6e10 f455 0c00 |006b: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42db48: 0a0d |006e: move-result v13 │ │ -42db4a: 2202 f10a |006f: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -42db4e: 7010 ee5c 0200 |0071: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42db54: 1a05 2f17 |0074: const-string v5, "Delete Public Keys (" // string@172f │ │ -42db58: 6e20 f95c 5200 |0076: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42db5e: 6e20 f85c 0200 |0079: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ -42db64: 6e20 f95c 3200 |007c: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42db6a: 6e10 035d 0200 |007f: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42db70: 0c02 |0082: move-result-object v2 │ │ -42db72: 1225 |0083: const/4 v5, #int 2 // #2 │ │ -42db74: 7252 0c55 5b5d |0084: invoke-interface {v11, v5, v13, v5, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -42db7a: 0c0d |0087: move-result-object v13 │ │ -42db7c: 54a2 065f |0088: iget-object v2, v10, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42db80: 6205 0a5f |008a: sget-object v5, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42db84: 6e10 f455 0c00 |008c: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42db8a: 0a06 |008f: move-result v6 │ │ -42db8c: 6e30 f6b9 5206 |0090: invoke-virtual {v2, v5, v6}, Lorg/purple/smoke/Database;.hasPublicKeys:(Lorg/purple/smoke/Cryptography;I)Z // method@b9f6 │ │ -42db92: 0a02 |0093: move-result v2 │ │ -42db94: 7220 7a55 2d00 |0094: invoke-interface {v13, v2}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42db9a: 6e10 f455 0c00 |0097: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42dba0: 0a0d |009a: move-result v13 │ │ -42dba2: 2202 f10a |009b: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -42dba6: 7010 ee5c 0200 |009d: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42dbac: 1a06 4341 |00a0: const-string v6, "New Name (" // string@4143 │ │ -42dbb0: 6e20 f95c 6200 |00a2: invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dbb6: 6e20 f85c 0200 |00a5: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ -42dbbc: 6e20 f95c 3200 |00a8: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dbc2: 6e10 035d 0200 |00ab: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42dbc8: 0c02 |00ae: move-result-object v2 │ │ -42dbca: 1236 |00af: const/4 v6, #int 3 // #3 │ │ -42dbcc: 7252 0c55 6b6d |00b0: invoke-interface {v11, v6, v13, v6, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -42dbd2: 6e10 92b9 0500 |00b3: invoke-virtual {v5}, Lorg/purple/smoke/Cryptography;.hasValidOzoneKeys:()Z // method@b992 │ │ -42dbd8: 0a0d |00b6: move-result v13 │ │ -42dbda: 6e10 f455 0c00 |00b7: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42dbe0: 0a02 |00ba: move-result v2 │ │ -42dbe2: 2205 f10a |00bb: new-instance v5, Ljava/lang/StringBuilder; // type@0af1 │ │ -42dbe6: 7010 ee5c 0500 |00bd: invoke-direct {v5}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42dbec: 1a06 e046 |00c0: const-string v6, "Request Keys via Ozone (" // string@46e0 │ │ -42dbf0: 6e20 f95c 6500 |00c2: invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dbf6: 6e20 f85c 0500 |00c5: invoke-virtual {v5, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ -42dbfc: 6e20 f95c 3500 |00c8: invoke-virtual {v5, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dc02: 6e10 035d 0500 |00cb: invoke-virtual {v5}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42dc08: 0c05 |00ce: move-result-object v5 │ │ -42dc0a: 1246 |00cf: const/4 v6, #int 4 // #4 │ │ -42dc0c: 7255 0c55 6b42 |00d0: invoke-interface {v11, v6, v2, v4, v5}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -42dc12: 0c02 |00d3: move-result-object v2 │ │ -42dc14: 7220 7a55 d200 |00d4: invoke-interface {v2, v13}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42dc1a: 6e10 f455 0c00 |00d7: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42dc20: 0a02 |00da: move-result v2 │ │ -42dc22: 2204 f10a |00db: new-instance v4, Ljava/lang/StringBuilder; // type@0af1 │ │ -42dc26: 7010 ee5c 0400 |00dd: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42dc2c: 1a05 5f4b |00e0: const-string v5, "Share Keys Of (" // string@4b5f │ │ -42dc30: 6e20 f95c 5400 |00e2: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dc36: 6e20 f85c 0400 |00e5: invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ -42dc3c: 6e20 f95c 3400 |00e8: invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dc42: 6e10 035d 0400 |00eb: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42dc48: 0c04 |00ee: move-result-object v4 │ │ -42dc4a: 1255 |00ef: const/4 v5, #int 5 // #5 │ │ -42dc4c: 7254 0c55 5b62 |00f0: invoke-interface {v11, v5, v2, v6, v4}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -42dc52: 0c02 |00f3: move-result-object v2 │ │ -42dc54: 1f01 c60a |00f4: check-cast v1, Ljava/lang/Boolean; // type@0ac6 │ │ -42dc58: 6e10 fe5b 0100 |00f6: invoke-virtual {v1}, Ljava/lang/Boolean;.booleanValue:()Z // method@5bfe │ │ -42dc5e: 0a01 |00f9: move-result v1 │ │ -42dc60: 7220 7a55 1200 |00fa: invoke-interface {v2, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42dc66: 6e10 f455 0c00 |00fd: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42dc6c: 0a01 |0100: move-result v1 │ │ -42dc6e: 2202 f10a |0101: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ -42dc72: 7010 ee5c 0200 |0103: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42dc78: 1a04 604b |0106: const-string v4, "Share Smoke ID Of (" // string@4b60 │ │ -42dc7c: 6e20 f95c 4200 |0108: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dc82: 6e20 f85c 0200 |010b: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ -42dc88: 6e20 f95c 3200 |010e: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dc8e: 6e10 035d 0200 |0111: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42dc94: 0c02 |0114: move-result-object v2 │ │ -42dc96: 1264 |0115: const/4 v4, #int 6 // #6 │ │ -42dc98: 7252 0c55 4b51 |0116: invoke-interface {v11, v4, v1, v5, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -42dc9e: 0c01 |0119: move-result-object v1 │ │ -42dca0: 7220 7a55 d100 |011a: invoke-interface {v1, v13}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42dca6: 127d |011d: const/4 v13, #int 7 // #7 │ │ -42dca8: 6e10 f455 0c00 |011e: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ -42dcae: 0a0c |0121: move-result v12 │ │ -42dcb0: 2201 f10a |0122: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -42dcb4: 7010 ee5c 0100 |0124: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -42dcba: 1a02 6152 |0127: const-string v2, "View Details (" // string@5261 │ │ -42dcbe: 6e20 f95c 2100 |0129: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dcc4: 6e20 f85c 0100 |012c: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ -42dcca: 6e20 f95c 3100 |012f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -42dcd0: 6e10 035d 0100 |0132: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -42dcd6: 0c00 |0135: move-result-object v0 │ │ -42dcd8: 7250 0c55 db4c |0136: invoke-interface {v11, v13, v12, v4, v0}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ -42dcde: 0e00 |0139: return-void │ │ +42da58: |[42da58] org.purple.smoke.Settings.onCreateContextMenu:(Landroid/view/ContextMenu;Landroid/view/View;Landroid/view/ContextMenu$ContextMenuInfo;)V │ │ +42da68: 380b 3901 |0000: if-eqz v11, 0139 // +0139 │ │ +42da6c: 390c 0400 |0002: if-nez v12, 0006 // +0004 │ │ +42da70: 2900 3501 |0004: goto/16 0139 // +0135 │ │ +42da74: 1400 bf00 087f |0006: const v0, #float 1.80779e+38 // #7f0800bf │ │ +42da7a: 6e20 1d56 0c00 |0009: invoke-virtual {v12, v0}, Landroid/view/View;.getTag:(I)Ljava/lang/Object; // method@561d │ │ +42da80: 0c00 |000c: move-result-object v0 │ │ +42da82: 1401 db00 087f |000d: const v1, #float 1.80779e+38 // #7f0800db │ │ +42da88: 6e20 1d56 1c00 |0010: invoke-virtual {v12, v1}, Landroid/view/View;.getTag:(I)Ljava/lang/Object; // method@561d │ │ +42da8e: 0c01 |0013: move-result-object v1 │ │ +42da90: 3800 2501 |0014: if-eqz v0, 0139 // +0125 │ │ +42da94: 3801 2301 |0016: if-eqz v1, 0139 // +0123 │ │ +42da98: 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 │ │ +42da9e: 6e10 f455 0c00 |001b: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42daa4: 0a0d |001e: move-result v13 │ │ +42daa6: 2202 f10a |001f: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +42daaa: 7010 ee5c 0200 |0021: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42dab0: 1a03 2a17 |0024: const-string v3, "Delete (" // string@172a │ │ +42dab4: 6e20 f95c 3200 |0026: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42daba: 6e20 f85c 0200 |0029: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ +42dac0: 1a03 ec03 |002c: const-string v3, ")" // string@03ec │ │ +42dac4: 6e20 f95c 3200 |002e: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42daca: 6e10 035d 0200 |0031: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42dad0: 0c02 |0034: move-result-object v2 │ │ +42dad2: 1204 |0035: const/4 v4, #int 0 // #0 │ │ +42dad4: 7252 0c55 4b4d |0036: invoke-interface {v11, v4, v13, v4, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +42dada: 6e10 f455 0c00 |0039: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42dae0: 0a0d |003c: move-result v13 │ │ +42dae2: 2202 f10a |003d: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +42dae6: 7010 ee5c 0200 |003f: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42daec: 1a05 2d17 |0042: const-string v5, "Delete Fiasco Keys (" // string@172d │ │ +42daf0: 6e20 f95c 5200 |0044: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42daf6: 6e20 f85c 0200 |0047: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ +42dafc: 6e20 f95c 3200 |004a: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42db02: 6e10 035d 0200 |004d: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42db08: 0c02 |0050: move-result-object v2 │ │ +42db0a: 1215 |0051: const/4 v5, #int 1 // #1 │ │ +42db0c: 7252 0c55 5b5d |0052: invoke-interface {v11, v5, v13, v5, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +42db12: 0c0d |0055: move-result-object v13 │ │ +42db14: 54a2 065f |0056: iget-object v2, v10, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42db18: 6e10 f455 0c00 |0058: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42db1e: 0a06 |005b: move-result v6 │ │ +42db20: 6e20 f1b9 6200 |005c: invoke-virtual {v2, v6}, Lorg/purple/smoke/Database;.fiascoCount:(I)J // method@b9f1 │ │ +42db26: 0b06 |005f: move-result-wide v6 │ │ +42db28: 1608 0100 |0060: const-wide/16 v8, #int 1 // #1 │ │ +42db2c: 3102 0608 |0062: cmp-long v2, v6, v8 │ │ +42db30: 3a02 0300 |0064: if-ltz v2, 0067 // +0003 │ │ +42db34: 2802 |0066: goto 0068 // +0002 │ │ +42db36: 1205 |0067: const/4 v5, #int 0 // #0 │ │ +42db38: 7220 7a55 5d00 |0068: invoke-interface {v13, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42db3e: 6e10 f455 0c00 |006b: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42db44: 0a0d |006e: move-result v13 │ │ +42db46: 2202 f10a |006f: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +42db4a: 7010 ee5c 0200 |0071: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42db50: 1a05 2f17 |0074: const-string v5, "Delete Public Keys (" // string@172f │ │ +42db54: 6e20 f95c 5200 |0076: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42db5a: 6e20 f85c 0200 |0079: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ +42db60: 6e20 f95c 3200 |007c: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42db66: 6e10 035d 0200 |007f: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42db6c: 0c02 |0082: move-result-object v2 │ │ +42db6e: 1225 |0083: const/4 v5, #int 2 // #2 │ │ +42db70: 7252 0c55 5b5d |0084: invoke-interface {v11, v5, v13, v5, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +42db76: 0c0d |0087: move-result-object v13 │ │ +42db78: 54a2 065f |0088: iget-object v2, v10, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42db7c: 6205 0a5f |008a: sget-object v5, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42db80: 6e10 f455 0c00 |008c: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42db86: 0a06 |008f: move-result v6 │ │ +42db88: 6e30 f6b9 5206 |0090: invoke-virtual {v2, v5, v6}, Lorg/purple/smoke/Database;.hasPublicKeys:(Lorg/purple/smoke/Cryptography;I)Z // method@b9f6 │ │ +42db8e: 0a02 |0093: move-result v2 │ │ +42db90: 7220 7a55 2d00 |0094: invoke-interface {v13, v2}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42db96: 6e10 f455 0c00 |0097: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42db9c: 0a0d |009a: move-result v13 │ │ +42db9e: 2202 f10a |009b: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +42dba2: 7010 ee5c 0200 |009d: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42dba8: 1a06 4341 |00a0: const-string v6, "New Name (" // string@4143 │ │ +42dbac: 6e20 f95c 6200 |00a2: invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42dbb2: 6e20 f85c 0200 |00a5: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ +42dbb8: 6e20 f95c 3200 |00a8: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42dbbe: 6e10 035d 0200 |00ab: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42dbc4: 0c02 |00ae: move-result-object v2 │ │ +42dbc6: 1236 |00af: const/4 v6, #int 3 // #3 │ │ +42dbc8: 7252 0c55 6b6d |00b0: invoke-interface {v11, v6, v13, v6, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +42dbce: 6e10 92b9 0500 |00b3: invoke-virtual {v5}, Lorg/purple/smoke/Cryptography;.hasValidOzoneKeys:()Z // method@b992 │ │ +42dbd4: 0a0d |00b6: move-result v13 │ │ +42dbd6: 6e10 f455 0c00 |00b7: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42dbdc: 0a02 |00ba: move-result v2 │ │ +42dbde: 2205 f10a |00bb: new-instance v5, Ljava/lang/StringBuilder; // type@0af1 │ │ +42dbe2: 7010 ee5c 0500 |00bd: invoke-direct {v5}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42dbe8: 1a06 e046 |00c0: const-string v6, "Request Keys via Ozone (" // string@46e0 │ │ +42dbec: 6e20 f95c 6500 |00c2: invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42dbf2: 6e20 f85c 0500 |00c5: invoke-virtual {v5, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ +42dbf8: 6e20 f95c 3500 |00c8: invoke-virtual {v5, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42dbfe: 6e10 035d 0500 |00cb: invoke-virtual {v5}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42dc04: 0c05 |00ce: move-result-object v5 │ │ +42dc06: 1246 |00cf: const/4 v6, #int 4 // #4 │ │ +42dc08: 7255 0c55 6b42 |00d0: invoke-interface {v11, v6, v2, v4, v5}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +42dc0e: 0c02 |00d3: move-result-object v2 │ │ +42dc10: 7220 7a55 d200 |00d4: invoke-interface {v2, v13}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42dc16: 6e10 f455 0c00 |00d7: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42dc1c: 0a02 |00da: move-result v2 │ │ +42dc1e: 2204 f10a |00db: new-instance v4, Ljava/lang/StringBuilder; // type@0af1 │ │ +42dc22: 7010 ee5c 0400 |00dd: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42dc28: 1a05 5f4b |00e0: const-string v5, "Share Keys Of (" // string@4b5f │ │ +42dc2c: 6e20 f95c 5400 |00e2: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42dc32: 6e20 f85c 0400 |00e5: invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ +42dc38: 6e20 f95c 3400 |00e8: invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42dc3e: 6e10 035d 0400 |00eb: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42dc44: 0c04 |00ee: move-result-object v4 │ │ +42dc46: 1255 |00ef: const/4 v5, #int 5 // #5 │ │ +42dc48: 7254 0c55 5b62 |00f0: invoke-interface {v11, v5, v2, v6, v4}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +42dc4e: 0c02 |00f3: move-result-object v2 │ │ +42dc50: 1f01 c60a |00f4: check-cast v1, Ljava/lang/Boolean; // type@0ac6 │ │ +42dc54: 6e10 fe5b 0100 |00f6: invoke-virtual {v1}, Ljava/lang/Boolean;.booleanValue:()Z // method@5bfe │ │ +42dc5a: 0a01 |00f9: move-result v1 │ │ +42dc5c: 7220 7a55 1200 |00fa: invoke-interface {v2, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42dc62: 6e10 f455 0c00 |00fd: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42dc68: 0a01 |0100: move-result v1 │ │ +42dc6a: 2202 f10a |0101: new-instance v2, Ljava/lang/StringBuilder; // type@0af1 │ │ +42dc6e: 7010 ee5c 0200 |0103: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42dc74: 1a04 604b |0106: const-string v4, "Share Smoke ID Of (" // string@4b60 │ │ +42dc78: 6e20 f95c 4200 |0108: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42dc7e: 6e20 f85c 0200 |010b: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ +42dc84: 6e20 f95c 3200 |010e: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42dc8a: 6e10 035d 0200 |0111: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42dc90: 0c02 |0114: move-result-object v2 │ │ +42dc92: 1264 |0115: const/4 v4, #int 6 // #6 │ │ +42dc94: 7252 0c55 4b51 |0116: invoke-interface {v11, v4, v1, v5, v2}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +42dc9a: 0c01 |0119: move-result-object v1 │ │ +42dc9c: 7220 7a55 d100 |011a: invoke-interface {v1, v13}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42dca2: 127d |011d: const/4 v13, #int 7 // #7 │ │ +42dca4: 6e10 f455 0c00 |011e: invoke-virtual {v12}, Landroid/view/View;.getId:()I // method@55f4 │ │ +42dcaa: 0a0c |0121: move-result v12 │ │ +42dcac: 2201 f10a |0122: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +42dcb0: 7010 ee5c 0100 |0124: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +42dcb6: 1a02 6152 |0127: const-string v2, "View Details (" // string@5261 │ │ +42dcba: 6e20 f95c 2100 |0129: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42dcc0: 6e20 f85c 0100 |012c: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@5cf8 │ │ +42dcc6: 6e20 f95c 3100 |012f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +42dccc: 6e10 035d 0100 |0132: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +42dcd2: 0c00 |0135: move-result-object v0 │ │ +42dcd4: 7250 0c55 db4c |0136: invoke-interface {v11, v13, v12, v4, v0}, Landroid/view/ContextMenu;.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem; // method@550c │ │ +42dcda: 0e00 |0139: return-void │ │ catches : (none) │ │ positions : │ │ 0x0009 line=3996 │ │ 0x0010 line=3997 │ │ 0x0018 line=4001 │ │ 0x001b line=4003 │ │ 0x0036 line=4002 │ │ @@ -1573535,21 +1573534,21 @@ │ │ type : '(Landroid/view/Menu;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 12 16-bit code units │ │ -42c1c8: |[42c1c8] org.purple.smoke.Settings.onCreateOptionsMenu:(Landroid/view/Menu;)Z │ │ -42c1d8: 6e10 efbc 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.getMenuInflater:()Landroid/view/MenuInflater; // method@bcef │ │ -42c1de: 0c00 |0003: move-result-object v0 │ │ -42c1e0: 1401 0400 0b7f |0004: const v1, #float 1.84763e+38 // #7f0b0004 │ │ -42c1e6: 6e30 6255 1003 |0007: invoke-virtual {v0, v1, v3}, Landroid/view/MenuInflater;.inflate:(ILandroid/view/Menu;)V // method@5562 │ │ -42c1ec: 1213 |000a: const/4 v3, #int 1 // #1 │ │ -42c1ee: 0f03 |000b: return v3 │ │ +42c1c4: |[42c1c4] org.purple.smoke.Settings.onCreateOptionsMenu:(Landroid/view/Menu;)Z │ │ +42c1d4: 6e10 efbc 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/Settings;.getMenuInflater:()Landroid/view/MenuInflater; // method@bcef │ │ +42c1da: 0c00 |0003: move-result-object v0 │ │ +42c1dc: 1401 0400 0b7f |0004: const v1, #float 1.84763e+38 // #7f0b0004 │ │ +42c1e2: 6e30 6255 1003 |0007: invoke-virtual {v0, v1, v3}, Landroid/view/MenuInflater;.inflate:(ILandroid/view/Menu;)V // method@5562 │ │ +42c1e8: 1213 |000a: const/4 v3, #int 1 // #1 │ │ +42c1ea: 0f03 |000b: return v3 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3894 │ │ locals : │ │ 0x0000 - 0x000c reg=2 this Lorg/purple/smoke/Settings; │ │ 0x0000 - 0x000c reg=3 (null) Landroid/view/Menu; │ │ │ │ @@ -1573558,27 +1573557,27 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 25 16-bit code units │ │ -42dce0: |[42dce0] org.purple.smoke.Settings.onDestroy:()V │ │ -42dcf0: 7100 74bd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42dcf6: 0c00 |0003: move-result-object v0 │ │ -42dcf8: 6e10 6fbd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.exit:()Z // method@bd6f │ │ -42dcfe: 0a00 |0007: move-result v0 │ │ -42dd00: 3800 0a00 |0008: if-eqz v0, 0012 // +000a │ │ -42dd04: 7100 5705 0000 |000a: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ -42dd0a: 0a00 |000d: move-result v0 │ │ -42dd0c: 7110 5605 0000 |000e: invoke-static {v0}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ -42dd12: 2807 |0011: goto 0018 // +0007 │ │ -42dd14: 7010 1abd 0100 |0012: invoke-direct {v1}, Lorg/purple/smoke/Settings;.stopTimers:()V // method@bd1a │ │ -42dd1a: 6f10 f53c 0100 |0015: invoke-super {v1}, Landroid/support/v7/app/AppCompatActivity;.onDestroy:()V // method@3cf5 │ │ -42dd20: 0e00 |0018: return-void │ │ +42dcdc: |[42dcdc] org.purple.smoke.Settings.onDestroy:()V │ │ +42dcec: 7100 74bd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42dcf2: 0c00 |0003: move-result-object v0 │ │ +42dcf4: 6e10 6fbd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.exit:()Z // method@bd6f │ │ +42dcfa: 0a00 |0007: move-result v0 │ │ +42dcfc: 3800 0a00 |0008: if-eqz v0, 0012 // +000a │ │ +42dd00: 7100 5705 0000 |000a: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ +42dd06: 0a00 |000d: move-result v0 │ │ +42dd08: 7110 5605 0000 |000e: invoke-static {v0}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ +42dd0e: 2807 |0011: goto 0018 // +0007 │ │ +42dd10: 7010 1abd 0100 |0012: invoke-direct {v1}, Lorg/purple/smoke/Settings;.stopTimers:()V // method@bd1a │ │ +42dd16: 6f10 f53c 0100 |0015: invoke-super {v1}, Landroid/support/v7/app/AppCompatActivity;.onDestroy:()V // method@3cf5 │ │ +42dd1c: 0e00 |0018: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3646 │ │ 0x000a line=3647 │ │ 0x0012 line=3650 │ │ 0x0015 line=3651 │ │ locals : │ │ @@ -1573589,87 +1573588,87 @@ │ │ type : '(Landroid/view/MenuItem;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 10 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 168 16-bit code units │ │ -42c1f0: |[42c1f0] org.purple.smoke.Settings.onOptionsItemSelected:(Landroid/view/MenuItem;)Z │ │ -42c200: 7210 6a55 0900 |0000: invoke-interface {v9}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ -42c206: 0a00 |0003: move-result v0 │ │ -42c208: 7210 6c55 0900 |0004: invoke-interface {v9}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ -42c20e: 0a01 |0007: move-result v1 │ │ -42c210: 1a02 eb7c |0008: const-string v2, "lastActivity" // string@7ceb │ │ -42c214: 1203 |000a: const/4 v3, #int 0 // #0 │ │ -42c216: 1214 |000b: const/4 v4, #int 1 // #1 │ │ -42c218: 3900 2f00 |000c: if-nez v0, 003b // +002f │ │ -42c21c: 2c01 8400 0000 |000e: sparse-switch v1, 00000092 // +00000084 │ │ -42c222: 287b |0011: goto 008c // +007b │ │ -42c224: 5489 065f |0012: iget-object v9, v8, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c228: 1a00 7a4c |0014: const-string v0, "Steam" // string@4c7a │ │ -42c22c: 6e40 3eba 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@ba3e │ │ -42c232: 7010 15bd 0800 |0019: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showSteamActivity:()V // method@bd15 │ │ -42c238: 0f04 |001c: return v4 │ │ -42c23a: 7010 14bd 0800 |001d: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showSmokescreenActivity:()V // method@bd14 │ │ -42c240: 0f04 |0020: return v4 │ │ -42c242: 5489 065f |0021: iget-object v9, v8, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c246: 1a00 e91a |0023: const-string v0, "Fire" // string@1ae9 │ │ -42c24a: 6e40 3eba 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@ba3e │ │ -42c250: 7010 12bd 0800 |0028: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showFireActivity:()V // method@bd12 │ │ -42c256: 0f04 |002b: return v4 │ │ -42c258: 7120 2abd 8400 |002c: invoke-static {v4, v8}, Lorg/purple/smoke/Smoke;.exit:(ZLandroid/content/Context;)V // method@bd2a │ │ -42c25e: 0f04 |002f: return v4 │ │ -42c260: 5489 065f |0030: iget-object v9, v8, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c264: 1a00 0113 |0032: const-string v0, "Chat" // string@1301 │ │ -42c268: 6e40 3eba 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@ba3e │ │ -42c26e: 7010 10bd 0800 |0037: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showChatActivity:()V // method@bd10 │ │ -42c274: 0f04 |003a: return v4 │ │ -42c276: 7210 6e55 0900 |003b: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ -42c27c: 0c00 |003e: move-result-object v0 │ │ -42c27e: 7210 045c 0000 |003f: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -42c284: 0c00 |0042: move-result-object v0 │ │ -42c286: 1a05 7a03 |0043: const-string v5, "(" // string@037a │ │ -42c28a: 6e20 c25c 5000 |0045: invoke-virtual {v0, v5}, Ljava/lang/String;.indexOf:(Ljava/lang/String;)I // method@5cc2 │ │ -42c290: 0a05 |0048: move-result v5 │ │ -42c292: 3a05 0f00 |0049: if-ltz v5, 0058 // +000f │ │ -42c296: b045 |004b: add-int/2addr v5, v4 │ │ -42c298: 6e20 cc5c 5000 |004c: invoke-virtual {v0, v5}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ -42c29e: 0c04 |004f: move-result-object v4 │ │ -42c2a0: 1a05 ec03 |0050: const-string v5, ")" // string@03ec │ │ -42c2a4: 1a06 0000 |0052: const-string v6, "" // string@0000 │ │ -42c2a8: 6e30 c85c 5406 |0054: invoke-virtual {v4, v5, v6}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -42c2ae: 0c00 |0057: move-result-object v0 │ │ -42c2b0: 7110 f5bb 0000 |0058: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf5 │ │ -42c2b6: 0c00 |005b: move-result-object v0 │ │ -42c2b8: 7100 74bd 0000 |005c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42c2be: 0c04 |005f: move-result-object v4 │ │ -42c2c0: 7110 d55c 0100 |0060: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42c2c6: 0c05 |0063: move-result-object v5 │ │ -42c2c8: 1a06 a98a |0064: const-string v6, "member_chat_oid" // string@8aa9 │ │ -42c2cc: 6e30 90bd 6405 |0066: invoke-virtual {v4, v6, v5}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd90 │ │ -42c2d2: 7100 74bd 0000 |0069: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42c2d8: 0c04 |006c: move-result-object v4 │ │ -42c2da: 1a05 ab8a |006d: const-string v5, "member_chat_siphash_id" // string@8aab │ │ -42c2de: 6e30 90bd 5400 |006f: invoke-virtual {v4, v5, v0}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd90 │ │ -42c2e4: 5484 065f |0072: iget-object v4, v8, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c2e8: 1a07 0b40 |0074: const-string v7, "MemberChat" // string@400b │ │ -42c2ec: 6e40 3eba 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@ba3e │ │ -42c2f2: 5482 065f |0079: iget-object v2, v8, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c2f6: 6203 0a5f |007b: sget-object v3, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ -42c2fa: 7110 d55c 0100 |007d: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -42c300: 0c01 |0080: move-result-object v1 │ │ -42c302: 6e40 3eba 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@ba3e │ │ -42c308: 5481 065f |0084: iget-object v1, v8, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c30c: 6e40 3eba 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@ba3e │ │ -42c312: 7010 13bd 0800 |0089: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showMemberChatActivity:()V // method@bd13 │ │ -42c318: 6f20 f83c 9800 |008c: invoke-super {v8, v9}, Landroid/support/v7/app/AppCompatActivity;.onOptionsItemSelected:(Landroid/view/MenuItem;)Z // method@3cf8 │ │ -42c31e: 0a09 |008f: move-result v9 │ │ -42c320: 0f09 |0090: return v9 │ │ -42c322: 0000 |0091: nop // spacer │ │ -42c324: 0002 0500 0a00 087f 0e00 087f 0f00 ... |0092: sparse-switch-data (22 units) │ │ +42c1ec: |[42c1ec] org.purple.smoke.Settings.onOptionsItemSelected:(Landroid/view/MenuItem;)Z │ │ +42c1fc: 7210 6a55 0900 |0000: invoke-interface {v9}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ +42c202: 0a00 |0003: move-result v0 │ │ +42c204: 7210 6c55 0900 |0004: invoke-interface {v9}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ +42c20a: 0a01 |0007: move-result v1 │ │ +42c20c: 1a02 eb7c |0008: const-string v2, "lastActivity" // string@7ceb │ │ +42c210: 1203 |000a: const/4 v3, #int 0 // #0 │ │ +42c212: 1214 |000b: const/4 v4, #int 1 // #1 │ │ +42c214: 3900 2f00 |000c: if-nez v0, 003b // +002f │ │ +42c218: 2c01 8400 0000 |000e: sparse-switch v1, 00000092 // +00000084 │ │ +42c21e: 287b |0011: goto 008c // +007b │ │ +42c220: 5489 065f |0012: iget-object v9, v8, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c224: 1a00 7a4c |0014: const-string v0, "Steam" // string@4c7a │ │ +42c228: 6e40 3eba 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@ba3e │ │ +42c22e: 7010 15bd 0800 |0019: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showSteamActivity:()V // method@bd15 │ │ +42c234: 0f04 |001c: return v4 │ │ +42c236: 7010 14bd 0800 |001d: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showSmokescreenActivity:()V // method@bd14 │ │ +42c23c: 0f04 |0020: return v4 │ │ +42c23e: 5489 065f |0021: iget-object v9, v8, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c242: 1a00 e91a |0023: const-string v0, "Fire" // string@1ae9 │ │ +42c246: 6e40 3eba 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@ba3e │ │ +42c24c: 7010 12bd 0800 |0028: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showFireActivity:()V // method@bd12 │ │ +42c252: 0f04 |002b: return v4 │ │ +42c254: 7120 2abd 8400 |002c: invoke-static {v4, v8}, Lorg/purple/smoke/Smoke;.exit:(ZLandroid/content/Context;)V // method@bd2a │ │ +42c25a: 0f04 |002f: return v4 │ │ +42c25c: 5489 065f |0030: iget-object v9, v8, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c260: 1a00 0113 |0032: const-string v0, "Chat" // string@1301 │ │ +42c264: 6e40 3eba 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@ba3e │ │ +42c26a: 7010 10bd 0800 |0037: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showChatActivity:()V // method@bd10 │ │ +42c270: 0f04 |003a: return v4 │ │ +42c272: 7210 6e55 0900 |003b: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ +42c278: 0c00 |003e: move-result-object v0 │ │ +42c27a: 7210 045c 0000 |003f: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +42c280: 0c00 |0042: move-result-object v0 │ │ +42c282: 1a05 7a03 |0043: const-string v5, "(" // string@037a │ │ +42c286: 6e20 c25c 5000 |0045: invoke-virtual {v0, v5}, Ljava/lang/String;.indexOf:(Ljava/lang/String;)I // method@5cc2 │ │ +42c28c: 0a05 |0048: move-result v5 │ │ +42c28e: 3a05 0f00 |0049: if-ltz v5, 0058 // +000f │ │ +42c292: b045 |004b: add-int/2addr v5, v4 │ │ +42c294: 6e20 cc5c 5000 |004c: invoke-virtual {v0, v5}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ +42c29a: 0c04 |004f: move-result-object v4 │ │ +42c29c: 1a05 ec03 |0050: const-string v5, ")" // string@03ec │ │ +42c2a0: 1a06 0000 |0052: const-string v6, "" // string@0000 │ │ +42c2a4: 6e30 c85c 5406 |0054: invoke-virtual {v4, v5, v6}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +42c2aa: 0c00 |0057: move-result-object v0 │ │ +42c2ac: 7110 f5bb 0000 |0058: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf5 │ │ +42c2b2: 0c00 |005b: move-result-object v0 │ │ +42c2b4: 7100 74bd 0000 |005c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42c2ba: 0c04 |005f: move-result-object v4 │ │ +42c2bc: 7110 d55c 0100 |0060: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42c2c2: 0c05 |0063: move-result-object v5 │ │ +42c2c4: 1a06 a98a |0064: const-string v6, "member_chat_oid" // string@8aa9 │ │ +42c2c8: 6e30 90bd 6405 |0066: invoke-virtual {v4, v6, v5}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd90 │ │ +42c2ce: 7100 74bd 0000 |0069: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42c2d4: 0c04 |006c: move-result-object v4 │ │ +42c2d6: 1a05 ab8a |006d: const-string v5, "member_chat_siphash_id" // string@8aab │ │ +42c2da: 6e30 90bd 5400 |006f: invoke-virtual {v4, v5, v0}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd90 │ │ +42c2e0: 5484 065f |0072: iget-object v4, v8, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c2e4: 1a07 0b40 |0074: const-string v7, "MemberChat" // string@400b │ │ +42c2e8: 6e40 3eba 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@ba3e │ │ +42c2ee: 5482 065f |0079: iget-object v2, v8, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c2f2: 6203 0a5f |007b: sget-object v3, Lorg/purple/smoke/Settings;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f0a │ │ +42c2f6: 7110 d55c 0100 |007d: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +42c2fc: 0c01 |0080: move-result-object v1 │ │ +42c2fe: 6e40 3eba 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@ba3e │ │ +42c304: 5481 065f |0084: iget-object v1, v8, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c308: 6e40 3eba 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@ba3e │ │ +42c30e: 7010 13bd 0800 |0089: invoke-direct {v8}, Lorg/purple/smoke/Settings;.showMemberChatActivity:()V // method@bd13 │ │ +42c314: 6f20 f83c 9800 |008c: invoke-super {v8, v9}, Landroid/support/v7/app/AppCompatActivity;.onOptionsItemSelected:(Landroid/view/MenuItem;)Z // method@3cf8 │ │ +42c31a: 0a09 |008f: move-result v9 │ │ +42c31c: 0f09 |0090: return v9 │ │ +42c31e: 0000 |0091: nop // spacer │ │ +42c320: 0002 0500 0a00 087f 0e00 087f 0f00 ... |0092: sparse-switch-data (22 units) │ │ catches : 1 │ │ 0x0043 - 0x0058 │ │ Ljava/lang/Exception; -> 0x0058 │ │ positions : │ │ 0x0000 line=3901 │ │ 0x0004 line=3902 │ │ 0x0012 line=3923 │ │ @@ -1573705,26 +1573704,26 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 23 16-bit code units │ │ -42dd24: |[42dd24] org.purple.smoke.Settings.onPause:()V │ │ -42dd34: 6f10 fa3c 0200 |0000: invoke-super {v2}, Landroid/support/v7/app/AppCompatActivity;.onPause:()V // method@3cfa │ │ -42dd3a: 5520 085f |0003: iget-boolean v0, v2, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ -42dd3e: 3800 0e00 |0005: if-eqz v0, 0013 // +000e │ │ -42dd42: 7110 a41d 0200 |0007: invoke-static {v2}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ -42dd48: 0c00 |000a: move-result-object v0 │ │ -42dd4a: 5421 075f |000b: iget-object v1, v2, Lorg/purple/smoke/Settings;.m_receiver:Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // field@5f07 │ │ -42dd4e: 6e20 a81d 1000 |000d: invoke-virtual {v0, v1}, Landroid/support/v4/content/LocalBroadcastManager;.unregisterReceiver:(Landroid/content/BroadcastReceiver;)V // method@1da8 │ │ -42dd54: 1200 |0010: const/4 v0, #int 0 // #0 │ │ -42dd56: 5c20 085f |0011: iput-boolean v0, v2, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ -42dd5a: 7010 09bd 0200 |0013: invoke-direct {v2}, Lorg/purple/smoke/Settings;.releaseResources:()V // method@bd09 │ │ -42dd60: 0e00 |0016: return-void │ │ +42dd20: |[42dd20] org.purple.smoke.Settings.onPause:()V │ │ +42dd30: 6f10 fa3c 0200 |0000: invoke-super {v2}, Landroid/support/v7/app/AppCompatActivity;.onPause:()V // method@3cfa │ │ +42dd36: 5520 085f |0003: iget-boolean v0, v2, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ +42dd3a: 3800 0e00 |0005: if-eqz v0, 0013 // +000e │ │ +42dd3e: 7110 a41d 0200 |0007: invoke-static {v2}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ +42dd44: 0c00 |000a: move-result-object v0 │ │ +42dd46: 5421 075f |000b: iget-object v1, v2, Lorg/purple/smoke/Settings;.m_receiver:Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // field@5f07 │ │ +42dd4a: 6e20 a81d 1000 |000d: invoke-virtual {v0, v1}, Landroid/support/v4/content/LocalBroadcastManager;.unregisterReceiver:(Landroid/content/BroadcastReceiver;)V // method@1da8 │ │ +42dd50: 1200 |0010: const/4 v0, #int 0 // #0 │ │ +42dd52: 5c20 085f |0011: iput-boolean v0, v2, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ +42dd56: 7010 09bd 0200 |0013: invoke-direct {v2}, Lorg/purple/smoke/Settings;.releaseResources:()V // method@bd09 │ │ +42dd5c: 0e00 |0016: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3658 │ │ 0x0003 line=3660 │ │ 0x0007 line=3662 │ │ 0x000d line=3663 │ │ 0x0011 line=3664 │ │ @@ -1573737,66 +1573736,66 @@ │ │ type : '(Landroid/view/Menu;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 108 16-bit code units │ │ -42c360: |[42c360] org.purple.smoke.Settings.onPrepareOptionsMenu:(Landroid/view/Menu;)Z │ │ -42c370: 7100 74bd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42c376: 0c00 |0003: move-result-object v0 │ │ -42c378: 6e10 77bd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ -42c37e: 0a00 |0007: move-result v0 │ │ -42c380: 5431 065f |0008: iget-object v1, v3, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42c384: 6e10 deb9 0100 |000a: invoke-virtual {v1}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9de │ │ -42c38a: 0a01 |000d: move-result v1 │ │ -42c38c: 1212 |000e: const/4 v2, #int 1 // #1 │ │ -42c38e: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ -42c392: 1210 |0011: const/4 v0, #int 1 // #1 │ │ -42c394: 1401 0200 087f |0012: const v1, #float 1.80775e+38 // #7f080002 │ │ -42c39a: 7220 5c55 1400 |0015: invoke-interface {v4, v1}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -42c3a0: 0c01 |0018: move-result-object v1 │ │ -42c3a2: b720 |0019: xor-int/2addr v0, v2 │ │ -42c3a4: 7220 7a55 0100 |001a: invoke-interface {v1, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42c3aa: 1400 0a00 087f |001d: const v0, #float 1.80775e+38 // #7f08000a │ │ -42c3b0: 7220 5c55 0400 |0020: invoke-interface {v4, v0}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -42c3b6: 0c00 |0023: move-result-object v0 │ │ -42c3b8: 7100 74bd 0000 |0024: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42c3be: 0c01 |0027: move-result-object v1 │ │ -42c3c0: 6e10 77bd 0100 |0028: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ -42c3c6: 0a01 |002b: move-result v1 │ │ -42c3c8: 7220 7a55 1000 |002c: invoke-interface {v0, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42c3ce: 1400 0f00 087f |002f: const v0, #float 1.80775e+38 // #7f08000f │ │ -42c3d4: 7220 5c55 0400 |0032: invoke-interface {v4, v0}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -42c3da: 0c00 |0035: move-result-object v0 │ │ -42c3dc: 7100 74bd 0000 |0036: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42c3e2: 0c01 |0039: move-result-object v1 │ │ -42c3e4: 6e10 77bd 0100 |003a: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ -42c3ea: 0a01 |003d: move-result v1 │ │ -42c3ec: 7220 7a55 1000 |003e: invoke-interface {v0, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42c3f2: 1400 1700 087f |0041: const v0, #float 1.80775e+38 // #7f080017 │ │ -42c3f8: 7220 5c55 0400 |0044: invoke-interface {v4, v0}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -42c3fe: 0c00 |0047: move-result-object v0 │ │ -42c400: 7100 74bd 0000 |0048: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42c406: 0c01 |004b: move-result-object v1 │ │ -42c408: 6e10 77bd 0100 |004c: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ -42c40e: 0a01 |004f: move-result v1 │ │ -42c410: 7220 7a55 1000 |0050: invoke-interface {v0, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42c416: 1400 1800 087f |0053: const v0, #float 1.80775e+38 // #7f080018 │ │ -42c41c: 7220 5c55 0400 |0056: invoke-interface {v4, v0}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -42c422: 0c00 |0059: move-result-object v0 │ │ -42c424: 7100 74bd 0000 |005a: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42c42a: 0c01 |005d: move-result-object v1 │ │ -42c42c: 6e10 77bd 0100 |005e: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ -42c432: 0a01 |0061: move-result v1 │ │ -42c434: 7220 7a55 1000 |0062: invoke-interface {v0, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -42c43a: 1260 |0065: const/4 v0, #int 6 // #6 │ │ -42c43c: 1301 fa00 |0066: const/16 v1, #int 250 // #fa │ │ -42c440: 7130 e3bb 0401 |0068: invoke-static {v4, v0, v1}, Lorg/purple/smoke/Miscellaneous;.addMembersToMenu:(Landroid/view/Menu;II)Landroid/view/SubMenu; // method@bbe3 │ │ -42c446: 0f02 |006b: return v2 │ │ +42c35c: |[42c35c] org.purple.smoke.Settings.onPrepareOptionsMenu:(Landroid/view/Menu;)Z │ │ +42c36c: 7100 74bd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42c372: 0c00 |0003: move-result-object v0 │ │ +42c374: 6e10 77bd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ +42c37a: 0a00 |0007: move-result v0 │ │ +42c37c: 5431 065f |0008: iget-object v1, v3, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42c380: 6e10 deb9 0100 |000a: invoke-virtual {v1}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9de │ │ +42c386: 0a01 |000d: move-result v1 │ │ +42c388: 1212 |000e: const/4 v2, #int 1 // #1 │ │ +42c38a: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ +42c38e: 1210 |0011: const/4 v0, #int 1 // #1 │ │ +42c390: 1401 0200 087f |0012: const v1, #float 1.80775e+38 // #7f080002 │ │ +42c396: 7220 5c55 1400 |0015: invoke-interface {v4, v1}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +42c39c: 0c01 |0018: move-result-object v1 │ │ +42c39e: b720 |0019: xor-int/2addr v0, v2 │ │ +42c3a0: 7220 7a55 0100 |001a: invoke-interface {v1, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42c3a6: 1400 0a00 087f |001d: const v0, #float 1.80775e+38 // #7f08000a │ │ +42c3ac: 7220 5c55 0400 |0020: invoke-interface {v4, v0}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +42c3b2: 0c00 |0023: move-result-object v0 │ │ +42c3b4: 7100 74bd 0000 |0024: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42c3ba: 0c01 |0027: move-result-object v1 │ │ +42c3bc: 6e10 77bd 0100 |0028: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ +42c3c2: 0a01 |002b: move-result v1 │ │ +42c3c4: 7220 7a55 1000 |002c: invoke-interface {v0, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42c3ca: 1400 0f00 087f |002f: const v0, #float 1.80775e+38 // #7f08000f │ │ +42c3d0: 7220 5c55 0400 |0032: invoke-interface {v4, v0}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +42c3d6: 0c00 |0035: move-result-object v0 │ │ +42c3d8: 7100 74bd 0000 |0036: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42c3de: 0c01 |0039: move-result-object v1 │ │ +42c3e0: 6e10 77bd 0100 |003a: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ +42c3e6: 0a01 |003d: move-result v1 │ │ +42c3e8: 7220 7a55 1000 |003e: invoke-interface {v0, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42c3ee: 1400 1700 087f |0041: const v0, #float 1.80775e+38 // #7f080017 │ │ +42c3f4: 7220 5c55 0400 |0044: invoke-interface {v4, v0}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +42c3fa: 0c00 |0047: move-result-object v0 │ │ +42c3fc: 7100 74bd 0000 |0048: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42c402: 0c01 |004b: move-result-object v1 │ │ +42c404: 6e10 77bd 0100 |004c: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ +42c40a: 0a01 |004f: move-result v1 │ │ +42c40c: 7220 7a55 1000 |0050: invoke-interface {v0, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42c412: 1400 1800 087f |0053: const v0, #float 1.80775e+38 // #7f080018 │ │ +42c418: 7220 5c55 0400 |0056: invoke-interface {v4, v0}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +42c41e: 0c00 |0059: move-result-object v0 │ │ +42c420: 7100 74bd 0000 |005a: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42c426: 0c01 |005d: move-result-object v1 │ │ +42c428: 6e10 77bd 0100 |005e: invoke-virtual {v1}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ +42c42e: 0a01 |0061: move-result v1 │ │ +42c430: 7220 7a55 1000 |0062: invoke-interface {v0, v1}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +42c436: 1260 |0065: const/4 v0, #int 6 // #6 │ │ +42c438: 1301 fa00 |0066: const/16 v1, #int 250 // #fa │ │ +42c43c: 7130 e3bb 0401 |0068: invoke-static {v4, v0, v1}, Lorg/purple/smoke/Miscellaneous;.addMembersToMenu:(Landroid/view/Menu;II)Landroid/view/SubMenu; // method@bbe3 │ │ +42c442: 0f02 |006b: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3966 │ │ 0x0008 line=3968 │ │ 0x0015 line=3975 │ │ 0x0020 line=3976 │ │ 0x0024 line=3977 │ │ @@ -1573816,128 +1573815,128 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -42dd64: |[42dd64] org.purple.smoke.Settings.onRestoreInstanceState:(Landroid/os/Bundle;)V │ │ -42dd74: 0e00 |0000: return-void │ │ +42dd60: |[42dd60] org.purple.smoke.Settings.onRestoreInstanceState:(Landroid/os/Bundle;)V │ │ +42dd70: 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 │ │ -42dd78: |[42dd78] org.purple.smoke.Settings.onResume:()V │ │ -42dd88: 6f10 fe3c 0500 |0000: invoke-super {v5}, Landroid/support/v7/app/AppCompatActivity;.onResume:()V // method@3cfe │ │ -42dd8e: 7010 f5bc 0500 |0003: invoke-direct {v5}, Lorg/purple/smoke/Settings;.networkStatusChanged:()V // method@bcf5 │ │ -42dd94: 5550 085f |0006: iget-boolean v0, v5, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ -42dd98: 1211 |0008: const/4 v1, #int 1 // #1 │ │ -42dd9a: 3900 4400 |0009: if-nez v0, 004d // +0044 │ │ -42dd9e: 2200 4a00 |000b: new-instance v0, Landroid/content/IntentFilter; // type@004a │ │ -42dda2: 7010 cf01 0000 |000d: invoke-direct {v0}, Landroid/content/IntentFilter;.:()V // method@01cf │ │ -42dda8: 1a02 f491 |0010: const-string v2, "org.purple.smoke.chat_message" // string@91f4 │ │ -42ddac: 6e20 d001 2000 |0012: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42ddb2: 1a02 fc91 |0015: const-string v2, "org.purple.smoke.neighbor_aborted" // string@91fc │ │ -42ddb6: 6e20 d001 2000 |0017: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42ddbc: 1a02 fd91 |001a: const-string v2, "org.purple.smoke.neighbor_connected" // string@91fd │ │ -42ddc0: 6e20 d001 2000 |001c: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42ddc6: 1a02 fe91 |001f: const-string v2, "org.purple.smoke.neighbor_disconnected" // string@91fe │ │ -42ddca: 6e20 d001 2000 |0021: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42ddd0: 1a02 ff91 |0024: const-string v2, "org.purple.smoke.network_connected" // string@91ff │ │ -42ddd4: 6e20 d001 2000 |0026: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42ddda: 1a02 0092 |0029: const-string v2, "org.purple.smoke.network_disconnected" // string@9200 │ │ -42ddde: 6e20 d001 2000 |002b: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42dde4: 1a02 0292 |002e: const-string v2, "org.purple.smoke.populate_participants" // string@9202 │ │ -42dde8: 6e20 d001 2000 |0030: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42ddee: 1a02 0792 |0033: const-string v2, "org.purple.smoke.siphash_share_confirmation" // string@9207 │ │ -42ddf2: 6e20 d001 2000 |0035: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42ddf8: 1a02 0892 |0038: const-string v2, "org.purple.smoke.state_participants_populated" // string@9208 │ │ -42ddfc: 6e20 d001 2000 |003a: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42de02: 1a02 0c92 |003d: const-string v2, "org.purple.smoke.time" // string@920c │ │ -42de06: 6e20 d001 2000 |003f: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -42de0c: 7110 a41d 0500 |0042: invoke-static {v5}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ -42de12: 0c02 |0045: move-result-object v2 │ │ -42de14: 5453 075f |0046: iget-object v3, v5, Lorg/purple/smoke/Settings;.m_receiver:Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // field@5f07 │ │ -42de18: 6e30 a51d 3200 |0048: invoke-virtual {v2, v3, v0}, Landroid/support/v4/content/LocalBroadcastManager;.registerReceiver:(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)V // method@1da5 │ │ -42de1e: 5c51 085f |004b: iput-boolean v1, v5, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ -42de22: 7100 74bd 0000 |004d: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -42de28: 0c00 |0050: move-result-object v0 │ │ -42de2a: 6e10 78bd 0000 |0051: invoke-virtual {v0}, Lorg/purple/smoke/State;.isLocked:()Z // method@bd78 │ │ -42de30: 0a00 |0054: move-result v0 │ │ -42de32: 3800 0600 |0055: if-eqz v0, 005b // +0006 │ │ -42de36: 7010 14bd 0500 |0057: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showSmokescreenActivity:()V // method@bd14 │ │ -42de3c: 0e00 |005a: return-void │ │ -42de3e: 5450 065f |005b: iget-object v0, v5, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42de42: 1202 |005d: const/4 v2, #int 0 // #0 │ │ -42de44: 1a03 eb7c |005e: const-string v3, "lastActivity" // string@7ceb │ │ -42de48: 6e30 1bba 2003 |0060: invoke-virtual {v0, v2, v3}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42de4e: 0c00 |0063: move-result-object v0 │ │ -42de50: 6e10 bf5c 0000 |0064: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -42de56: 12f3 |0067: const/4 v3, #int -1 // #ff │ │ -42de58: 6e10 bf5c 0000 |0068: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ -42de5e: 0a04 |006b: move-result v4 │ │ -42de60: 2c04 5600 0000 |006c: sparse-switch v4, 000000c2 // +00000056 │ │ -42de66: 12f1 |006f: const/4 v1, #int -1 // #ff │ │ -42de68: 282a |0070: goto 009a // +002a │ │ -42de6a: 1a01 0b40 |0071: const-string v1, "MemberChat" // string@400b │ │ -42de6e: 6e20 b85c 1000 |0073: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42de74: 0a00 |0076: move-result v0 │ │ -42de76: 3900 0300 |0077: if-nez v0, 007a // +0003 │ │ -42de7a: 28f6 |0079: goto 006f // -000a │ │ -42de7c: 1231 |007a: const/4 v1, #int 3 // #3 │ │ -42de7e: 281f |007b: goto 009a // +001f │ │ -42de80: 1a01 7a4c |007c: const-string v1, "Steam" // string@4c7a │ │ -42de84: 6e20 b85c 1000 |007e: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42de8a: 0a00 |0081: move-result v0 │ │ -42de8c: 3900 0300 |0082: if-nez v0, 0085 // +0003 │ │ -42de90: 28eb |0084: goto 006f // -0015 │ │ -42de92: 1221 |0085: const/4 v1, #int 2 // #2 │ │ -42de94: 2814 |0086: goto 009a // +0014 │ │ -42de96: 1a04 e91a |0087: const-string v4, "Fire" // string@1ae9 │ │ -42de9a: 6e20 b85c 4000 |0089: invoke-virtual {v0, v4}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42dea0: 0a00 |008c: move-result v0 │ │ -42dea2: 3900 0d00 |008d: if-nez v0, 009a // +000d │ │ -42dea6: 28e0 |008f: goto 006f // -0020 │ │ -42dea8: 1a01 0113 |0090: const-string v1, "Chat" // string@1301 │ │ -42deac: 6e20 b85c 1000 |0092: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42deb2: 0a00 |0095: move-result v0 │ │ -42deb4: 3900 0300 |0096: if-nez v0, 0099 // +0003 │ │ -42deb8: 28d7 |0098: goto 006f // -0029 │ │ -42deba: 1201 |0099: const/4 v1, #int 0 // #0 │ │ -42debc: 2b01 3a00 0000 |009a: packed-switch v1, 000000d4 // +0000003a │ │ -42dec2: 5450 065f |009d: iget-object v0, v5, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ -42dec6: 1a01 605b |009f: const-string v1, "automatic_neighbors_refresh" // string@5b60 │ │ -42deca: 6e30 1bba 2001 |00a1: invoke-virtual {v0, v2, v1}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -42ded0: 0c00 |00a4: move-result-object v0 │ │ -42ded2: 1a01 97a5 |00a5: const-string v1, "true" // string@a597 │ │ -42ded6: 6e20 b85c 1000 |00a7: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ -42dedc: 0a00 |00aa: move-result v0 │ │ -42dede: 3800 1500 |00ab: if-eqz v0, 00c0 // +0015 │ │ -42dee2: 7010 19bd 0500 |00ad: invoke-direct {v5}, Lorg/purple/smoke/Settings;.startTimers:()V // method@bd19 │ │ -42dee8: 2810 |00b0: goto 00c0 // +0010 │ │ -42deea: 7010 13bd 0500 |00b1: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showMemberChatActivity:()V // method@bd13 │ │ -42def0: 280c |00b4: goto 00c0 // +000c │ │ -42def2: 7010 15bd 0500 |00b5: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showSteamActivity:()V // method@bd15 │ │ -42def8: 2808 |00b8: goto 00c0 // +0008 │ │ -42defa: 7010 12bd 0500 |00b9: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showFireActivity:()V // method@bd12 │ │ -42df00: 2804 |00bc: goto 00c0 // +0004 │ │ -42df02: 7010 10bd 0500 |00bd: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showChatActivity:()V // method@bd10 │ │ -42df08: 0e00 |00c0: return-void │ │ -42df0a: 0000 |00c1: nop // spacer │ │ -42df0c: 0002 0400 7807 2000 566a 2100 30e1 ... |00c2: sparse-switch-data (18 units) │ │ -42df30: 0001 0400 0000 0000 2300 0000 1f00 ... |00d4: packed-switch-data (12 units) │ │ +42dd74: |[42dd74] org.purple.smoke.Settings.onResume:()V │ │ +42dd84: 6f10 fe3c 0500 |0000: invoke-super {v5}, Landroid/support/v7/app/AppCompatActivity;.onResume:()V // method@3cfe │ │ +42dd8a: 7010 f5bc 0500 |0003: invoke-direct {v5}, Lorg/purple/smoke/Settings;.networkStatusChanged:()V // method@bcf5 │ │ +42dd90: 5550 085f |0006: iget-boolean v0, v5, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ +42dd94: 1211 |0008: const/4 v1, #int 1 // #1 │ │ +42dd96: 3900 4400 |0009: if-nez v0, 004d // +0044 │ │ +42dd9a: 2200 4a00 |000b: new-instance v0, Landroid/content/IntentFilter; // type@004a │ │ +42dd9e: 7010 cf01 0000 |000d: invoke-direct {v0}, Landroid/content/IntentFilter;.:()V // method@01cf │ │ +42dda4: 1a02 f491 |0010: const-string v2, "org.purple.smoke.chat_message" // string@91f4 │ │ +42dda8: 6e20 d001 2000 |0012: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42ddae: 1a02 fc91 |0015: const-string v2, "org.purple.smoke.neighbor_aborted" // string@91fc │ │ +42ddb2: 6e20 d001 2000 |0017: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42ddb8: 1a02 fd91 |001a: const-string v2, "org.purple.smoke.neighbor_connected" // string@91fd │ │ +42ddbc: 6e20 d001 2000 |001c: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42ddc2: 1a02 fe91 |001f: const-string v2, "org.purple.smoke.neighbor_disconnected" // string@91fe │ │ +42ddc6: 6e20 d001 2000 |0021: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42ddcc: 1a02 ff91 |0024: const-string v2, "org.purple.smoke.network_connected" // string@91ff │ │ +42ddd0: 6e20 d001 2000 |0026: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42ddd6: 1a02 0092 |0029: const-string v2, "org.purple.smoke.network_disconnected" // string@9200 │ │ +42ddda: 6e20 d001 2000 |002b: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42dde0: 1a02 0292 |002e: const-string v2, "org.purple.smoke.populate_participants" // string@9202 │ │ +42dde4: 6e20 d001 2000 |0030: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42ddea: 1a02 0792 |0033: const-string v2, "org.purple.smoke.siphash_share_confirmation" // string@9207 │ │ +42ddee: 6e20 d001 2000 |0035: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42ddf4: 1a02 0892 |0038: const-string v2, "org.purple.smoke.state_participants_populated" // string@9208 │ │ +42ddf8: 6e20 d001 2000 |003a: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42ddfe: 1a02 0c92 |003d: const-string v2, "org.purple.smoke.time" // string@920c │ │ +42de02: 6e20 d001 2000 |003f: invoke-virtual {v0, v2}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +42de08: 7110 a41d 0500 |0042: invoke-static {v5}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ +42de0e: 0c02 |0045: move-result-object v2 │ │ +42de10: 5453 075f |0046: iget-object v3, v5, Lorg/purple/smoke/Settings;.m_receiver:Lorg/purple/smoke/Settings$SettingsBroadcastReceiver; // field@5f07 │ │ +42de14: 6e30 a51d 3200 |0048: invoke-virtual {v2, v3, v0}, Landroid/support/v4/content/LocalBroadcastManager;.registerReceiver:(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)V // method@1da5 │ │ +42de1a: 5c51 085f |004b: iput-boolean v1, v5, Lorg/purple/smoke/Settings;.m_receiverRegistered:Z // field@5f08 │ │ +42de1e: 7100 74bd 0000 |004d: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +42de24: 0c00 |0050: move-result-object v0 │ │ +42de26: 6e10 78bd 0000 |0051: invoke-virtual {v0}, Lorg/purple/smoke/State;.isLocked:()Z // method@bd78 │ │ +42de2c: 0a00 |0054: move-result v0 │ │ +42de2e: 3800 0600 |0055: if-eqz v0, 005b // +0006 │ │ +42de32: 7010 14bd 0500 |0057: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showSmokescreenActivity:()V // method@bd14 │ │ +42de38: 0e00 |005a: return-void │ │ +42de3a: 5450 065f |005b: iget-object v0, v5, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42de3e: 1202 |005d: const/4 v2, #int 0 // #0 │ │ +42de40: 1a03 eb7c |005e: const-string v3, "lastActivity" // string@7ceb │ │ +42de44: 6e30 1bba 2003 |0060: invoke-virtual {v0, v2, v3}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42de4a: 0c00 |0063: move-result-object v0 │ │ +42de4c: 6e10 bf5c 0000 |0064: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +42de52: 12f3 |0067: const/4 v3, #int -1 // #ff │ │ +42de54: 6e10 bf5c 0000 |0068: invoke-virtual {v0}, Ljava/lang/String;.hashCode:()I // method@5cbf │ │ +42de5a: 0a04 |006b: move-result v4 │ │ +42de5c: 2c04 5600 0000 |006c: sparse-switch v4, 000000c2 // +00000056 │ │ +42de62: 12f1 |006f: const/4 v1, #int -1 // #ff │ │ +42de64: 282a |0070: goto 009a // +002a │ │ +42de66: 1a01 0b40 |0071: const-string v1, "MemberChat" // string@400b │ │ +42de6a: 6e20 b85c 1000 |0073: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42de70: 0a00 |0076: move-result v0 │ │ +42de72: 3900 0300 |0077: if-nez v0, 007a // +0003 │ │ +42de76: 28f6 |0079: goto 006f // -000a │ │ +42de78: 1231 |007a: const/4 v1, #int 3 // #3 │ │ +42de7a: 281f |007b: goto 009a // +001f │ │ +42de7c: 1a01 7a4c |007c: const-string v1, "Steam" // string@4c7a │ │ +42de80: 6e20 b85c 1000 |007e: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42de86: 0a00 |0081: move-result v0 │ │ +42de88: 3900 0300 |0082: if-nez v0, 0085 // +0003 │ │ +42de8c: 28eb |0084: goto 006f // -0015 │ │ +42de8e: 1221 |0085: const/4 v1, #int 2 // #2 │ │ +42de90: 2814 |0086: goto 009a // +0014 │ │ +42de92: 1a04 e91a |0087: const-string v4, "Fire" // string@1ae9 │ │ +42de96: 6e20 b85c 4000 |0089: invoke-virtual {v0, v4}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42de9c: 0a00 |008c: move-result v0 │ │ +42de9e: 3900 0d00 |008d: if-nez v0, 009a // +000d │ │ +42dea2: 28e0 |008f: goto 006f // -0020 │ │ +42dea4: 1a01 0113 |0090: const-string v1, "Chat" // string@1301 │ │ +42dea8: 6e20 b85c 1000 |0092: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42deae: 0a00 |0095: move-result v0 │ │ +42deb0: 3900 0300 |0096: if-nez v0, 0099 // +0003 │ │ +42deb4: 28d7 |0098: goto 006f // -0029 │ │ +42deb6: 1201 |0099: const/4 v1, #int 0 // #0 │ │ +42deb8: 2b01 3a00 0000 |009a: packed-switch v1, 000000d4 // +0000003a │ │ +42debe: 5450 065f |009d: iget-object v0, v5, Lorg/purple/smoke/Settings;.m_database:Lorg/purple/smoke/Database; // field@5f06 │ │ +42dec2: 1a01 605b |009f: const-string v1, "automatic_neighbors_refresh" // string@5b60 │ │ +42dec6: 6e30 1bba 2001 |00a1: invoke-virtual {v0, v2, v1}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +42decc: 0c00 |00a4: move-result-object v0 │ │ +42dece: 1a01 97a5 |00a5: const-string v1, "true" // string@a597 │ │ +42ded2: 6e20 b85c 1000 |00a7: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@5cb8 │ │ +42ded8: 0a00 |00aa: move-result v0 │ │ +42deda: 3800 1500 |00ab: if-eqz v0, 00c0 // +0015 │ │ +42dede: 7010 19bd 0500 |00ad: invoke-direct {v5}, Lorg/purple/smoke/Settings;.startTimers:()V // method@bd19 │ │ +42dee4: 2810 |00b0: goto 00c0 // +0010 │ │ +42dee6: 7010 13bd 0500 |00b1: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showMemberChatActivity:()V // method@bd13 │ │ +42deec: 280c |00b4: goto 00c0 // +000c │ │ +42deee: 7010 15bd 0500 |00b5: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showSteamActivity:()V // method@bd15 │ │ +42def4: 2808 |00b8: goto 00c0 // +0008 │ │ +42def6: 7010 12bd 0500 |00b9: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showFireActivity:()V // method@bd12 │ │ +42defc: 2804 |00bc: goto 00c0 // +0004 │ │ +42defe: 7010 10bd 0500 |00bd: invoke-direct {v5}, Lorg/purple/smoke/Settings;.showChatActivity:()V // method@bd10 │ │ +42df04: 0e00 |00c0: return-void │ │ +42df06: 0000 |00c1: nop // spacer │ │ +42df08: 0002 0400 7807 2000 566a 2100 30e1 ... |00c2: sparse-switch-data (18 units) │ │ +42df2c: 0001 0400 0000 0000 2300 0000 1f00 ... |00d4: packed-switch-data (12 units) │ │ catches : (none) │ │ positions : │ │ 0x0000 line=3681 │ │ 0x0003 line=3682 │ │ 0x0006 line=3684 │ │ 0x000b line=3686 │ │ 0x0012 line=3688 │ │ @@ -1574016,42 +1574015,42 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 7 16-bit code units │ │ -430558: |[430558] org.purple.smoke.Smokescreen.:()V │ │ -430568: 7100 91b9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ -43056e: 0c00 |0003: move-result-object v0 │ │ -430570: 6900 315f |0004: sput-object v0, Lorg/purple/smoke/Smokescreen;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f31 │ │ -430574: 0e00 |0006: return-void │ │ +430554: |[430554] org.purple.smoke.Smokescreen.:()V │ │ +430564: 7100 91b9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ +43056a: 0c00 |0003: move-result-object v0 │ │ +43056c: 6900 315f |0004: sput-object v0, Lorg/purple/smoke/Smokescreen;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f31 │ │ +430570: 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 │ │ -430578: |[430578] org.purple.smoke.Smokescreen.:()V │ │ -430588: 7010 df3c 0100 |0000: invoke-direct {v1}, Landroid/support/v7/app/AppCompatActivity;.:()V // method@3cdf │ │ -43058e: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -430590: 5b10 2e5f |0004: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_lock:Landroid/widget/Button; // field@5f2e │ │ -430594: 5b10 305f |0006: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_unlock:Landroid/widget/Button; // field@5f30 │ │ -430598: 5b10 2c5f |0008: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -43059c: 5b10 2d5f |000a: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_label:Landroid/widget/TextView; // field@5f2d │ │ -4305a0: 5b10 2f5f |000c: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -4305a4: 0e00 |000e: return-void │ │ +430574: |[430574] org.purple.smoke.Smokescreen.:()V │ │ +430584: 7010 df3c 0100 |0000: invoke-direct {v1}, Landroid/support/v7/app/AppCompatActivity;.:()V // method@3cdf │ │ +43058a: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +43058c: 5b10 2e5f |0004: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_lock:Landroid/widget/Button; // field@5f2e │ │ +430590: 5b10 305f |0006: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_unlock:Landroid/widget/Button; // field@5f30 │ │ +430594: 5b10 2c5f |0008: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +430598: 5b10 2d5f |000a: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_label:Landroid/widget/TextView; // field@5f2d │ │ +43059c: 5b10 2f5f |000c: iput-object v0, v1, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +4305a0: 0e00 |000e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=40 │ │ 0x0004 line=42 │ │ 0x0006 line=43 │ │ 0x0008 line=44 │ │ 0x000a line=45 │ │ @@ -1574064,17 +1574063,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 │ │ -4305a8: |[4305a8] org.purple.smoke.Smokescreen.access$000:(Lorg/purple/smoke/Smokescreen;)V │ │ -4305b8: 7010 56bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Smokescreen;.prepareWidgets:()V // method@bd56 │ │ -4305be: 0e00 |0003: return-void │ │ +4305a4: |[4305a4] org.purple.smoke.Smokescreen.access$000:(Lorg/purple/smoke/Smokescreen;)V │ │ +4305b4: 7010 56bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Smokescreen;.prepareWidgets:()V // method@bd56 │ │ +4305ba: 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;) │ │ @@ -1574082,17 +1574081,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 │ │ -4305c0: |[4305c0] org.purple.smoke.Smokescreen.access$100:(Lorg/purple/smoke/Smokescreen;)V │ │ -4305d0: 7010 49bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Smokescreen;.authenticate:()V // method@bd49 │ │ -4305d6: 0e00 |0003: return-void │ │ +4305bc: |[4305bc] org.purple.smoke.Smokescreen.access$100:(Lorg/purple/smoke/Smokescreen;)V │ │ +4305cc: 7010 49bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Smokescreen;.authenticate:()V // method@bd49 │ │ +4305d2: 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;) │ │ @@ -1574100,17 +1574099,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 │ │ -430288: |[430288] org.purple.smoke.Smokescreen.access$200:(Lorg/purple/smoke/Smokescreen;)Landroid/widget/TextView; │ │ -430298: 5400 2f5f |0000: iget-object v0, v0, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -43029c: 1100 |0002: return-object v0 │ │ +430284: |[430284] org.purple.smoke.Smokescreen.access$200:(Lorg/purple/smoke/Smokescreen;)Landroid/widget/TextView; │ │ +430294: 5400 2f5f |0000: iget-object v0, v0, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +430298: 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;) │ │ @@ -1574118,96 +1574117,96 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 162 16-bit code units │ │ -4305d8: |[4305d8] org.purple.smoke.Smokescreen.authenticate:()V │ │ -4305e8: 6e10 4fbd 0800 |0000: invoke-virtual {v8}, Lorg/purple/smoke/Smokescreen;.isFinishing:()Z // method@bd4f │ │ -4305ee: 0a00 |0003: move-result v0 │ │ -4305f0: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ -4305f4: 0e00 |0006: return-void │ │ -4305f6: 5480 2c5f |0007: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -4305fa: 1201 |0009: const/4 v1, #int 0 // #0 │ │ -4305fc: 1a02 4566 |000a: const-string v2, "encryptionSalt" // string@6645 │ │ -430600: 6e30 1bba 1002 |000c: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -430606: 0c00 |000f: move-result-object v0 │ │ -430608: 6e10 bc5c 0000 |0010: invoke-virtual {v0}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -43060e: 0c00 |0013: move-result-object v0 │ │ -430610: 1202 |0014: const/4 v2, #int 0 // #0 │ │ -430612: 7120 c254 2000 |0015: invoke-static {v0, v2}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -430618: 0c00 |0018: move-result-object v0 │ │ -43061a: 5483 2f5f |0019: iget-object v3, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -43061e: 1214 |001b: const/4 v4, #int 1 // #1 │ │ -430620: 6e20 445b 4300 |001c: invoke-virtual {v3, v4}, Landroid/widget/TextView;.setSelectAllOnFocus:(Z)V // method@5b44 │ │ -430626: 1a03 0000 |001f: const-string v3, "" // string@0000 │ │ -43062a: 3900 0d00 |0021: if-nez v0, 002e // +000d │ │ -43062e: 5480 2f5f |0023: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -430632: 6e20 495b 3000 |0025: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -430638: 5480 2f5f |0028: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -43063c: 6e10 265b 0000 |002a: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ -430642: 0e00 |002d: return-void │ │ -430644: 5485 2c5f |002e: iget-object v5, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -430648: 1a06 b889 |0030: const-string v6, "macSalt" // string@89b8 │ │ -43064c: 6e30 1bba 1506 |0032: invoke-virtual {v5, v1, v6}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -430652: 0c05 |0035: move-result-object v5 │ │ -430654: 6e10 bc5c 0500 |0036: invoke-virtual {v5}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -43065a: 0c05 |0039: move-result-object v5 │ │ -43065c: 7120 c254 2500 |003a: invoke-static {v5, v2}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ -430662: 0c05 |003d: move-result-object v5 │ │ -430664: 3905 0d00 |003e: if-nez v5, 004b // +000d │ │ -430668: 5480 2f5f |0040: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -43066c: 6e20 495b 3000 |0042: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -430672: 5480 2f5f |0045: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -430676: 6e10 265b 0000 |0047: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ -43067c: 0e00 |004a: return-void │ │ -43067e: 1236 |004b: const/4 v6, #int 3 // #3 │ │ -430680: 2366 0f1c |004c: new-array v6, v6, [[B // type@1c0f │ │ -430684: 5487 2f5f |004e: iget-object v7, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -430688: 6e10 1c5b 0700 |0050: invoke-virtual {v7}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -43068e: 0c07 |0053: move-result-object v7 │ │ -430690: 7210 045c 0700 |0054: invoke-interface {v7}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -430696: 0c07 |0057: move-result-object v7 │ │ -430698: 6e10 bc5c 0700 |0058: invoke-virtual {v7}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -43069e: 0c07 |005b: move-result-object v7 │ │ -4306a0: 4d07 0602 |005c: aput-object v7, v6, v2 │ │ -4306a4: 4d00 0604 |005e: aput-object v0, v6, v4 │ │ -4306a8: 1220 |0060: const/4 v0, #int 2 // #2 │ │ -4306aa: 4d05 0600 |0061: aput-object v5, v6, v0 │ │ -4306ae: 7110 bcb9 0600 |0063: invoke-static {v6}, Lorg/purple/smoke/Cryptography;.sha512:([[B)[B // method@b9bc │ │ -4306b4: 0c00 |0066: move-result-object v0 │ │ -4306b6: 3900 0d00 |0067: if-nez v0, 0074 // +000d │ │ -4306ba: 5480 2f5f |0069: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -4306be: 6e20 495b 3000 |006b: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -4306c4: 5480 2f5f |006e: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -4306c8: 6e10 265b 0000 |0070: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ -4306ce: 0e00 |0073: return-void │ │ -4306d0: 5484 2c5f |0074: iget-object v4, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -4306d4: 1a05 ad99 |0076: const-string v5, "saltedPassword" // string@99ad │ │ -4306d8: 6e30 1bba 1405 |0078: invoke-virtual {v4, v1, v5}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ -4306de: 0c01 |007b: move-result-object v1 │ │ -4306e0: 6e10 bc5c 0100 |007c: invoke-virtual {v1}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ -4306e6: 0c01 |007f: move-result-object v1 │ │ -4306e8: 7120 c354 2000 |0080: invoke-static {v0, v2}, Landroid/util/Base64;.encode:([BI)[B // method@54c3 │ │ -4306ee: 0c00 |0083: move-result-object v0 │ │ -4306f0: 7120 9cb9 0100 |0084: invoke-static {v1, v0}, Lorg/purple/smoke/Cryptography;.memcmp:([B[B)Z // method@b99c │ │ -4306f6: 0a00 |0087: move-result v0 │ │ -4306f8: 3900 0d00 |0088: if-nez v0, 0095 // +000d │ │ -4306fc: 5480 2f5f |008a: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -430700: 6e20 495b 3000 |008c: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -430706: 5480 2f5f |008f: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -43070a: 6e10 265b 0000 |0091: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ -430710: 0e00 |0094: return-void │ │ -430712: 7100 74bd 0000 |0095: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -430718: 0c00 |0098: move-result-object v0 │ │ -43071a: 6e20 8bbd 2000 |0099: invoke-virtual {v0, v2}, Lorg/purple/smoke/State;.setLocked:(Z)V // method@bd8b │ │ -430720: 5480 2f5f |009c: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -430724: 6e20 495b 3000 |009e: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -43072a: 0e00 |00a1: return-void │ │ +4305d4: |[4305d4] org.purple.smoke.Smokescreen.authenticate:()V │ │ +4305e4: 6e10 4fbd 0800 |0000: invoke-virtual {v8}, Lorg/purple/smoke/Smokescreen;.isFinishing:()Z // method@bd4f │ │ +4305ea: 0a00 |0003: move-result v0 │ │ +4305ec: 3800 0300 |0004: if-eqz v0, 0007 // +0003 │ │ +4305f0: 0e00 |0006: return-void │ │ +4305f2: 5480 2c5f |0007: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +4305f6: 1201 |0009: const/4 v1, #int 0 // #0 │ │ +4305f8: 1a02 4566 |000a: const-string v2, "encryptionSalt" // string@6645 │ │ +4305fc: 6e30 1bba 1002 |000c: invoke-virtual {v0, v1, v2}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +430602: 0c00 |000f: move-result-object v0 │ │ +430604: 6e10 bc5c 0000 |0010: invoke-virtual {v0}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +43060a: 0c00 |0013: move-result-object v0 │ │ +43060c: 1202 |0014: const/4 v2, #int 0 // #0 │ │ +43060e: 7120 c254 2000 |0015: invoke-static {v0, v2}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +430614: 0c00 |0018: move-result-object v0 │ │ +430616: 5483 2f5f |0019: iget-object v3, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +43061a: 1214 |001b: const/4 v4, #int 1 // #1 │ │ +43061c: 6e20 445b 4300 |001c: invoke-virtual {v3, v4}, Landroid/widget/TextView;.setSelectAllOnFocus:(Z)V // method@5b44 │ │ +430622: 1a03 0000 |001f: const-string v3, "" // string@0000 │ │ +430626: 3900 0d00 |0021: if-nez v0, 002e // +000d │ │ +43062a: 5480 2f5f |0023: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +43062e: 6e20 495b 3000 |0025: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +430634: 5480 2f5f |0028: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +430638: 6e10 265b 0000 |002a: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ +43063e: 0e00 |002d: return-void │ │ +430640: 5485 2c5f |002e: iget-object v5, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +430644: 1a06 b889 |0030: const-string v6, "macSalt" // string@89b8 │ │ +430648: 6e30 1bba 1506 |0032: invoke-virtual {v5, v1, v6}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +43064e: 0c05 |0035: move-result-object v5 │ │ +430650: 6e10 bc5c 0500 |0036: invoke-virtual {v5}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +430656: 0c05 |0039: move-result-object v5 │ │ +430658: 7120 c254 2500 |003a: invoke-static {v5, v2}, Landroid/util/Base64;.decode:([BI)[B // method@54c2 │ │ +43065e: 0c05 |003d: move-result-object v5 │ │ +430660: 3905 0d00 |003e: if-nez v5, 004b // +000d │ │ +430664: 5480 2f5f |0040: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +430668: 6e20 495b 3000 |0042: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +43066e: 5480 2f5f |0045: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +430672: 6e10 265b 0000 |0047: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ +430678: 0e00 |004a: return-void │ │ +43067a: 1236 |004b: const/4 v6, #int 3 // #3 │ │ +43067c: 2366 0f1c |004c: new-array v6, v6, [[B // type@1c0f │ │ +430680: 5487 2f5f |004e: iget-object v7, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +430684: 6e10 1c5b 0700 |0050: invoke-virtual {v7}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +43068a: 0c07 |0053: move-result-object v7 │ │ +43068c: 7210 045c 0700 |0054: invoke-interface {v7}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +430692: 0c07 |0057: move-result-object v7 │ │ +430694: 6e10 bc5c 0700 |0058: invoke-virtual {v7}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +43069a: 0c07 |005b: move-result-object v7 │ │ +43069c: 4d07 0602 |005c: aput-object v7, v6, v2 │ │ +4306a0: 4d00 0604 |005e: aput-object v0, v6, v4 │ │ +4306a4: 1220 |0060: const/4 v0, #int 2 // #2 │ │ +4306a6: 4d05 0600 |0061: aput-object v5, v6, v0 │ │ +4306aa: 7110 bcb9 0600 |0063: invoke-static {v6}, Lorg/purple/smoke/Cryptography;.sha512:([[B)[B // method@b9bc │ │ +4306b0: 0c00 |0066: move-result-object v0 │ │ +4306b2: 3900 0d00 |0067: if-nez v0, 0074 // +000d │ │ +4306b6: 5480 2f5f |0069: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +4306ba: 6e20 495b 3000 |006b: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +4306c0: 5480 2f5f |006e: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +4306c4: 6e10 265b 0000 |0070: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ +4306ca: 0e00 |0073: return-void │ │ +4306cc: 5484 2c5f |0074: iget-object v4, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +4306d0: 1a05 ad99 |0076: const-string v5, "saltedPassword" // string@99ad │ │ +4306d4: 6e30 1bba 1405 |0078: invoke-virtual {v4, v1, v5}, Lorg/purple/smoke/Database;.readSetting:(Lorg/purple/smoke/Cryptography;Ljava/lang/String;)Ljava/lang/String; // method@ba1b │ │ +4306da: 0c01 |007b: move-result-object v1 │ │ +4306dc: 6e10 bc5c 0100 |007c: invoke-virtual {v1}, Ljava/lang/String;.getBytes:()[B // method@5cbc │ │ +4306e2: 0c01 |007f: move-result-object v1 │ │ +4306e4: 7120 c354 2000 |0080: invoke-static {v0, v2}, Landroid/util/Base64;.encode:([BI)[B // method@54c3 │ │ +4306ea: 0c00 |0083: move-result-object v0 │ │ +4306ec: 7120 9cb9 0100 |0084: invoke-static {v1, v0}, Lorg/purple/smoke/Cryptography;.memcmp:([B[B)Z // method@b99c │ │ +4306f2: 0a00 |0087: move-result v0 │ │ +4306f4: 3900 0d00 |0088: if-nez v0, 0095 // +000d │ │ +4306f8: 5480 2f5f |008a: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +4306fc: 6e20 495b 3000 |008c: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +430702: 5480 2f5f |008f: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +430706: 6e10 265b 0000 |0091: invoke-virtual {v0}, Landroid/widget/TextView;.requestFocus:()Z // method@5b26 │ │ +43070c: 0e00 |0094: return-void │ │ +43070e: 7100 74bd 0000 |0095: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +430714: 0c00 |0098: move-result-object v0 │ │ +430716: 6e20 8bbd 2000 |0099: invoke-virtual {v0, v2}, Lorg/purple/smoke/State;.setLocked:(Z)V // method@bd8b │ │ +43071c: 5480 2f5f |009c: iget-object v0, v8, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +430720: 6e20 495b 3000 |009e: invoke-virtual {v0, v3}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +430726: 0e00 |00a1: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=52 │ │ 0x0007 line=55 │ │ 0x000c line=56 │ │ 0x0019 line=59 │ │ 0x0023 line=63 │ │ @@ -1574236,26 +1574235,26 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 25 16-bit code units │ │ -430828: |[430828] org.purple.smoke.Smokescreen.prepareListeners:()V │ │ -430838: 5420 2e5f |0000: iget-object v0, v2, Lorg/purple/smoke/Smokescreen;.m_lock:Landroid/widget/Button; // field@5f2e │ │ -43083c: 3800 0a00 |0002: if-eqz v0, 000c // +000a │ │ -430840: 2201 101b |0004: new-instance v1, Lorg/purple/smoke/Smokescreen$1; // type@1b10 │ │ -430844: 7020 3ebd 2100 |0006: invoke-direct {v1, v2}, Lorg/purple/smoke/Smokescreen$1;.:(Lorg/purple/smoke/Smokescreen;)V // method@bd3e │ │ -43084a: 6e20 e258 1000 |0009: invoke-virtual {v0, v1}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -430850: 5420 305f |000c: iget-object v0, v2, Lorg/purple/smoke/Smokescreen;.m_unlock:Landroid/widget/Button; // field@5f30 │ │ -430854: 3800 0a00 |000e: if-eqz v0, 0018 // +000a │ │ -430858: 2201 111b |0010: new-instance v1, Lorg/purple/smoke/Smokescreen$2; // type@1b11 │ │ -43085c: 7020 40bd 2100 |0012: invoke-direct {v1, v2}, Lorg/purple/smoke/Smokescreen$2;.:(Lorg/purple/smoke/Smokescreen;)V // method@bd40 │ │ -430862: 6e20 e258 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -430868: 0e00 |0018: return-void │ │ +430824: |[430824] org.purple.smoke.Smokescreen.prepareListeners:()V │ │ +430834: 5420 2e5f |0000: iget-object v0, v2, Lorg/purple/smoke/Smokescreen;.m_lock:Landroid/widget/Button; // field@5f2e │ │ +430838: 3800 0a00 |0002: if-eqz v0, 000c // +000a │ │ +43083c: 2201 101b |0004: new-instance v1, Lorg/purple/smoke/Smokescreen$1; // type@1b10 │ │ +430840: 7020 3ebd 2100 |0006: invoke-direct {v1, v2}, Lorg/purple/smoke/Smokescreen$1;.:(Lorg/purple/smoke/Smokescreen;)V // method@bd3e │ │ +430846: 6e20 e258 1000 |0009: invoke-virtual {v0, v1}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +43084c: 5420 305f |000c: iget-object v0, v2, Lorg/purple/smoke/Smokescreen;.m_unlock:Landroid/widget/Button; // field@5f30 │ │ +430850: 3800 0a00 |000e: if-eqz v0, 0018 // +000a │ │ +430854: 2201 111b |0010: new-instance v1, Lorg/purple/smoke/Smokescreen$2; // type@1b11 │ │ +430858: 7020 40bd 2100 |0012: invoke-direct {v1, v2}, Lorg/purple/smoke/Smokescreen$2;.:(Lorg/purple/smoke/Smokescreen;)V // method@bd40 │ │ +43085e: 6e20 e258 1000 |0015: invoke-virtual {v0, v1}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +430864: 0e00 |0018: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=106 │ │ 0x0004 line=107 │ │ 0x000c line=119 │ │ 0x0010 line=120 │ │ locals : │ │ @@ -1574266,49 +1574265,49 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 66 16-bit code units │ │ -43086c: |[43086c] org.purple.smoke.Smokescreen.prepareWidgets:()V │ │ -43087c: 7100 74bd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -430882: 0c00 |0003: move-result-object v0 │ │ -430884: 6e10 78bd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.isLocked:()Z // method@bd78 │ │ -43088a: 0a00 |0007: move-result v0 │ │ -43088c: 5451 2d5f |0008: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_label:Landroid/widget/TextView; // field@5f2d │ │ -430890: 3800 0500 |000a: if-eqz v0, 000f // +0005 │ │ -430894: 1a02 274c |000c: const-string v2, "Smoke is locked. To unlock, please provide the correct password and click the below button." // string@4c27 │ │ -430898: 2803 |000e: goto 0011 // +0003 │ │ -43089a: 1a02 284c |000f: const-string v2, "Smoke is unlocked. To lock, please click the below button." // string@4c28 │ │ -43089e: 6e20 495b 2100 |0011: invoke-virtual {v1, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -4308a4: 5451 2e5f |0014: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_lock:Landroid/widget/Button; // field@5f2e │ │ -4308a8: 1302 0800 |0016: const/16 v2, #int 8 // #8 │ │ -4308ac: 1203 |0018: const/4 v3, #int 0 // #0 │ │ -4308ae: 3800 0500 |0019: if-eqz v0, 001e // +0005 │ │ -4308b2: 1304 0800 |001b: const/16 v4, #int 8 // #8 │ │ -4308b6: 2802 |001d: goto 001f // +0002 │ │ -4308b8: 1204 |001e: const/4 v4, #int 0 // #0 │ │ -4308ba: 6e20 e558 4100 |001f: invoke-virtual {v1, v4}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ -4308c0: 5451 2f5f |0022: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -4308c4: 3800 0400 |0024: if-eqz v0, 0028 // +0004 │ │ -4308c8: 1204 |0026: const/4 v4, #int 0 // #0 │ │ -4308ca: 2803 |0027: goto 002a // +0003 │ │ -4308cc: 1304 0800 |0028: const/16 v4, #int 8 // #8 │ │ -4308d0: 6e20 535b 4100 |002a: invoke-virtual {v1, v4}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ -4308d6: 3800 0c00 |002d: if-eqz v0, 0039 // +000c │ │ -4308da: 5451 2f5f |002f: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -4308de: 2204 121b |0031: new-instance v4, Lorg/purple/smoke/Smokescreen$3; // type@1b12 │ │ -4308e2: 7020 42bd 5400 |0033: invoke-direct {v4, v5}, Lorg/purple/smoke/Smokescreen$3;.:(Lorg/purple/smoke/Smokescreen;)V // method@bd42 │ │ -4308e8: 6e20 255b 4100 |0036: invoke-virtual {v1, v4}, Landroid/widget/TextView;.post:(Ljava/lang/Runnable;)Z // method@5b25 │ │ -4308ee: 5451 305f |0039: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_unlock:Landroid/widget/Button; // field@5f30 │ │ -4308f2: 3800 0300 |003b: if-eqz v0, 003e // +0003 │ │ -4308f6: 1202 |003d: const/4 v2, #int 0 // #0 │ │ -4308f8: 6e20 e558 2100 |003e: invoke-virtual {v1, v2}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ -4308fe: 0e00 |0041: return-void │ │ +430868: |[430868] org.purple.smoke.Smokescreen.prepareWidgets:()V │ │ +430878: 7100 74bd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +43087e: 0c00 |0003: move-result-object v0 │ │ +430880: 6e10 78bd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.isLocked:()Z // method@bd78 │ │ +430886: 0a00 |0007: move-result v0 │ │ +430888: 5451 2d5f |0008: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_label:Landroid/widget/TextView; // field@5f2d │ │ +43088c: 3800 0500 |000a: if-eqz v0, 000f // +0005 │ │ +430890: 1a02 274c |000c: const-string v2, "Smoke is locked. To unlock, please provide the correct password and click the below button." // string@4c27 │ │ +430894: 2803 |000e: goto 0011 // +0003 │ │ +430896: 1a02 284c |000f: const-string v2, "Smoke is unlocked. To lock, please click the below button." // string@4c28 │ │ +43089a: 6e20 495b 2100 |0011: invoke-virtual {v1, v2}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +4308a0: 5451 2e5f |0014: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_lock:Landroid/widget/Button; // field@5f2e │ │ +4308a4: 1302 0800 |0016: const/16 v2, #int 8 // #8 │ │ +4308a8: 1203 |0018: const/4 v3, #int 0 // #0 │ │ +4308aa: 3800 0500 |0019: if-eqz v0, 001e // +0005 │ │ +4308ae: 1304 0800 |001b: const/16 v4, #int 8 // #8 │ │ +4308b2: 2802 |001d: goto 001f // +0002 │ │ +4308b4: 1204 |001e: const/4 v4, #int 0 // #0 │ │ +4308b6: 6e20 e558 4100 |001f: invoke-virtual {v1, v4}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ +4308bc: 5451 2f5f |0022: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +4308c0: 3800 0400 |0024: if-eqz v0, 0028 // +0004 │ │ +4308c4: 1204 |0026: const/4 v4, #int 0 // #0 │ │ +4308c6: 2803 |0027: goto 002a // +0003 │ │ +4308c8: 1304 0800 |0028: const/16 v4, #int 8 // #8 │ │ +4308cc: 6e20 535b 4100 |002a: invoke-virtual {v1, v4}, Landroid/widget/TextView;.setVisibility:(I)V // method@5b53 │ │ +4308d2: 3800 0c00 |002d: if-eqz v0, 0039 // +000c │ │ +4308d6: 5451 2f5f |002f: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +4308da: 2204 121b |0031: new-instance v4, Lorg/purple/smoke/Smokescreen$3; // type@1b12 │ │ +4308de: 7020 42bd 5400 |0033: invoke-direct {v4, v5}, Lorg/purple/smoke/Smokescreen$3;.:(Lorg/purple/smoke/Smokescreen;)V // method@bd42 │ │ +4308e4: 6e20 255b 4100 |0036: invoke-virtual {v1, v4}, Landroid/widget/TextView;.post:(Ljava/lang/Runnable;)Z // method@5b25 │ │ +4308ea: 5451 305f |0039: iget-object v1, v5, Lorg/purple/smoke/Smokescreen;.m_unlock:Landroid/widget/Button; // field@5f30 │ │ +4308ee: 3800 0300 |003b: if-eqz v0, 003e // +0003 │ │ +4308f2: 1202 |003d: const/4 v2, #int 0 // #0 │ │ +4308f4: 6e20 e558 2100 |003e: invoke-virtual {v1, v2}, Landroid/widget/Button;.setVisibility:(I)V // method@58e5 │ │ +4308fa: 0e00 |0041: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=135 │ │ 0x0008 line=137 │ │ 0x0011 line=138 │ │ 0x0014 line=142 │ │ 0x0022 line=143 │ │ @@ -1574322,21 +1574321,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -430900: |[430900] org.purple.smoke.Smokescreen.showChatActivity:()V │ │ -430910: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -430914: 1c01 5a1a |0002: const-class v1, Lorg/purple/smoke/Chat; // type@1a5a │ │ -430918: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -43091e: 6e20 5dbd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd5d │ │ -430924: 6e10 4bbd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd4b │ │ -43092a: 0e00 |000d: return-void │ │ +4308fc: |[4308fc] org.purple.smoke.Smokescreen.showChatActivity:()V │ │ +43090c: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +430910: 1c01 5a1a |0002: const-class v1, Lorg/purple/smoke/Chat; // type@1a5a │ │ +430914: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +43091a: 6e20 5dbd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd5d │ │ +430920: 6e10 4bbd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd4b │ │ +430926: 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; │ │ @@ -1574346,21 +1574345,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -43092c: |[43092c] org.purple.smoke.Smokescreen.showFireActivity:()V │ │ -43093c: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -430940: 1c01 751a |0002: const-class v1, Lorg/purple/smoke/Fire; // type@1a75 │ │ -430944: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -43094a: 6e20 5dbd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd5d │ │ -430950: 6e10 4bbd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd4b │ │ -430956: 0e00 |000d: return-void │ │ +430928: |[430928] org.purple.smoke.Smokescreen.showFireActivity:()V │ │ +430938: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +43093c: 1c01 751a |0002: const-class v1, Lorg/purple/smoke/Fire; // type@1a75 │ │ +430940: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +430946: 6e20 5dbd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd5d │ │ +43094c: 6e10 4bbd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd4b │ │ +430952: 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; │ │ @@ -1574370,21 +1574369,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -430958: |[430958] org.purple.smoke.Smokescreen.showMemberChatActivity:()V │ │ -430968: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -43096c: 1c01 a61a |0002: const-class v1, Lorg/purple/smoke/MemberChat; // type@1aa6 │ │ -430970: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -430976: 6e20 5dbd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd5d │ │ -43097c: 6e10 4bbd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd4b │ │ -430982: 0e00 |000d: return-void │ │ +430954: |[430954] org.purple.smoke.Smokescreen.showMemberChatActivity:()V │ │ +430964: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +430968: 1c01 a61a |0002: const-class v1, Lorg/purple/smoke/MemberChat; // type@1aa6 │ │ +43096c: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +430972: 6e20 5dbd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd5d │ │ +430978: 6e10 4bbd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd4b │ │ +43097e: 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; │ │ @@ -1574394,21 +1574393,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -430984: |[430984] org.purple.smoke.Smokescreen.showSettingsActivity:()V │ │ -430994: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -430998: 1c01 0a1b |0002: const-class v1, Lorg/purple/smoke/Settings; // type@1b0a │ │ -43099c: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -4309a2: 6e20 5dbd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd5d │ │ -4309a8: 6e10 4bbd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd4b │ │ -4309ae: 0e00 |000d: return-void │ │ +430980: |[430980] org.purple.smoke.Smokescreen.showSettingsActivity:()V │ │ +430990: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +430994: 1c01 0a1b |0002: const-class v1, Lorg/purple/smoke/Settings; // type@1b0a │ │ +430998: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +43099e: 6e20 5dbd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd5d │ │ +4309a4: 6e10 4bbd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd4b │ │ +4309aa: 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; │ │ @@ -1574418,21 +1574417,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -4309b0: |[4309b0] org.purple.smoke.Smokescreen.showSteamActivity:()V │ │ -4309c0: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -4309c4: 1c01 201b |0002: const-class v1, Lorg/purple/smoke/Steam; // type@1b20 │ │ -4309c8: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -4309ce: 6e20 5dbd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd5d │ │ -4309d4: 6e10 4bbd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd4b │ │ -4309da: 0e00 |000d: return-void │ │ +4309ac: |[4309ac] org.purple.smoke.Smokescreen.showSteamActivity:()V │ │ +4309bc: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +4309c0: 1c01 201b |0002: const-class v1, Lorg/purple/smoke/Steam; // type@1b20 │ │ +4309c4: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +4309ca: 6e20 5dbd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Smokescreen;.startActivity:(Landroid/content/Intent;)V // method@bd5d │ │ +4309d0: 6e10 4bbd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Smokescreen;.finish:()V // method@bd4b │ │ +4309d6: 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; │ │ @@ -1574443,50 +1574442,50 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 79 16-bit code units │ │ -43072c: |[43072c] org.purple.smoke.Smokescreen.onCreate:(Landroid/os/Bundle;)V │ │ -43073c: 6f20 f23c 2100 |0000: invoke-super {v1, v2}, Landroid/support/v7/app/AppCompatActivity;.onCreate:(Landroid/os/Bundle;)V // method@3cf2 │ │ -430742: 6e10 4cbd 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/Smokescreen;.getApplicationContext:()Landroid/content/Context; // method@bd4c │ │ -430748: 0c02 |0006: move-result-object v2 │ │ -43074a: 7110 f4b9 0200 |0007: invoke-static {v2}, Lorg/purple/smoke/Database;.getInstance:(Landroid/content/Context;)Lorg/purple/smoke/Database; // method@b9f4 │ │ -430750: 0c02 |000a: move-result-object v2 │ │ -430752: 5b12 2c5f |000b: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -430756: 1402 2000 0a7f |000d: const v2, #float 1.83434e+38 // #7f0a0020 │ │ -43075c: 6e20 57bd 2100 |0010: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.setContentView:(I)V // method@bd57 │ │ -430762: 6e10 4ebd 0100 |0013: invoke-virtual {v1}, Lorg/purple/smoke/Smokescreen;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bd4e │ │ -430768: 0c02 |0016: move-result-object v2 │ │ -43076a: 1a00 304c |0017: const-string v0, "Smoke | Smokescreen" // string@4c30 │ │ -43076e: 6e20 0c3c 0200 |0019: invoke-virtual {v2, v0}, Landroid/support/v7/app/ActionBar;.setTitle:(Ljava/lang/CharSequence;)V // method@3c0c │ │ -430774: 1402 8b00 087f |001c: const v2, #float 1.80778e+38 // #7f08008b │ │ -43077a: 6e20 4abd 2100 |001f: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.findViewById:(I)Landroid/view/View; // method@bd4a │ │ -430780: 0c02 |0022: move-result-object v2 │ │ -430782: 1f02 970a |0023: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ -430786: 5b12 2d5f |0025: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_label:Landroid/widget/TextView; // field@5f2d │ │ -43078a: 1402 9700 087f |0027: const v2, #float 1.80778e+38 // #7f080097 │ │ -430790: 6e20 4abd 2100 |002a: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.findViewById:(I)Landroid/view/View; // method@bd4a │ │ -430796: 0c02 |002d: move-result-object v2 │ │ -430798: 1f02 5e0a |002e: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -43079c: 5b12 2e5f |0030: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_lock:Landroid/widget/Button; // field@5f2e │ │ -4307a0: 1402 c300 087f |0032: const v2, #float 1.80779e+38 // #7f0800c3 │ │ -4307a6: 6e20 4abd 2100 |0035: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.findViewById:(I)Landroid/view/View; // method@bd4a │ │ -4307ac: 0c02 |0038: move-result-object v2 │ │ -4307ae: 1f02 970a |0039: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ -4307b2: 5b12 2f5f |003b: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ -4307b6: 1402 2800 087f |003d: const v2, #float 1.80776e+38 // #7f080028 │ │ -4307bc: 6e20 4abd 2100 |0040: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.findViewById:(I)Landroid/view/View; // method@bd4a │ │ -4307c2: 0c02 |0043: move-result-object v2 │ │ -4307c4: 1f02 5e0a |0044: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ -4307c8: 5b12 305f |0046: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_unlock:Landroid/widget/Button; // field@5f30 │ │ -4307cc: 7010 55bd 0100 |0048: invoke-direct {v1}, Lorg/purple/smoke/Smokescreen;.prepareListeners:()V // method@bd55 │ │ -4307d2: 7010 56bd 0100 |004b: invoke-direct {v1}, Lorg/purple/smoke/Smokescreen;.prepareWidgets:()V // method@bd56 │ │ -4307d8: 0e00 |004e: return-void │ │ +430728: |[430728] org.purple.smoke.Smokescreen.onCreate:(Landroid/os/Bundle;)V │ │ +430738: 6f20 f23c 2100 |0000: invoke-super {v1, v2}, Landroid/support/v7/app/AppCompatActivity;.onCreate:(Landroid/os/Bundle;)V // method@3cf2 │ │ +43073e: 6e10 4cbd 0100 |0003: invoke-virtual {v1}, Lorg/purple/smoke/Smokescreen;.getApplicationContext:()Landroid/content/Context; // method@bd4c │ │ +430744: 0c02 |0006: move-result-object v2 │ │ +430746: 7110 f4b9 0200 |0007: invoke-static {v2}, Lorg/purple/smoke/Database;.getInstance:(Landroid/content/Context;)Lorg/purple/smoke/Database; // method@b9f4 │ │ +43074c: 0c02 |000a: move-result-object v2 │ │ +43074e: 5b12 2c5f |000b: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +430752: 1402 2000 0a7f |000d: const v2, #float 1.83434e+38 // #7f0a0020 │ │ +430758: 6e20 57bd 2100 |0010: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.setContentView:(I)V // method@bd57 │ │ +43075e: 6e10 4ebd 0100 |0013: invoke-virtual {v1}, Lorg/purple/smoke/Smokescreen;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bd4e │ │ +430764: 0c02 |0016: move-result-object v2 │ │ +430766: 1a00 304c |0017: const-string v0, "Smoke | Smokescreen" // string@4c30 │ │ +43076a: 6e20 0c3c 0200 |0019: invoke-virtual {v2, v0}, Landroid/support/v7/app/ActionBar;.setTitle:(Ljava/lang/CharSequence;)V // method@3c0c │ │ +430770: 1402 8b00 087f |001c: const v2, #float 1.80778e+38 // #7f08008b │ │ +430776: 6e20 4abd 2100 |001f: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.findViewById:(I)Landroid/view/View; // method@bd4a │ │ +43077c: 0c02 |0022: move-result-object v2 │ │ +43077e: 1f02 970a |0023: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ +430782: 5b12 2d5f |0025: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_label:Landroid/widget/TextView; // field@5f2d │ │ +430786: 1402 9700 087f |0027: const v2, #float 1.80778e+38 // #7f080097 │ │ +43078c: 6e20 4abd 2100 |002a: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.findViewById:(I)Landroid/view/View; // method@bd4a │ │ +430792: 0c02 |002d: move-result-object v2 │ │ +430794: 1f02 5e0a |002e: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +430798: 5b12 2e5f |0030: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_lock:Landroid/widget/Button; // field@5f2e │ │ +43079c: 1402 c300 087f |0032: const v2, #float 1.80779e+38 // #7f0800c3 │ │ +4307a2: 6e20 4abd 2100 |0035: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.findViewById:(I)Landroid/view/View; // method@bd4a │ │ +4307a8: 0c02 |0038: move-result-object v2 │ │ +4307aa: 1f02 970a |0039: check-cast v2, Landroid/widget/TextView; // type@0a97 │ │ +4307ae: 5b12 2f5f |003b: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_password:Landroid/widget/TextView; // field@5f2f │ │ +4307b2: 1402 2800 087f |003d: const v2, #float 1.80776e+38 // #7f080028 │ │ +4307b8: 6e20 4abd 2100 |0040: invoke-virtual {v1, v2}, Lorg/purple/smoke/Smokescreen;.findViewById:(I)Landroid/view/View; // method@bd4a │ │ +4307be: 0c02 |0043: move-result-object v2 │ │ +4307c0: 1f02 5e0a |0044: check-cast v2, Landroid/widget/Button; // type@0a5e │ │ +4307c4: 5b12 305f |0046: iput-object v2, v1, Lorg/purple/smoke/Smokescreen;.m_unlock:Landroid/widget/Button; // field@5f30 │ │ +4307c8: 7010 55bd 0100 |0048: invoke-direct {v1}, Lorg/purple/smoke/Smokescreen;.prepareListeners:()V // method@bd55 │ │ +4307ce: 7010 56bd 0100 |004b: invoke-direct {v1}, Lorg/purple/smoke/Smokescreen;.prepareWidgets:()V // method@bd56 │ │ +4307d4: 0e00 |004e: return-void │ │ catches : 1 │ │ 0x0013 - 0x001c │ │ Ljava/lang/Exception; -> 0x001c │ │ positions : │ │ 0x0000 line=201 │ │ 0x0003 line=202 │ │ 0x0010 line=203 │ │ @@ -1574506,42 +1574505,42 @@ │ │ type : '(Landroid/view/Menu;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 2 16-bit code units │ │ -4302a0: |[4302a0] org.purple.smoke.Smokescreen.onCreateOptionsMenu:(Landroid/view/Menu;)Z │ │ -4302b0: 1211 |0000: const/4 v1, #int 1 // #1 │ │ -4302b2: 0f01 |0001: return v1 │ │ +43029c: |[43029c] org.purple.smoke.Smokescreen.onCreateOptionsMenu:(Landroid/view/Menu;)Z │ │ +4302ac: 1211 |0000: const/4 v1, #int 1 // #1 │ │ +4302ae: 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 │ │ -4307ec: |[4307ec] org.purple.smoke.Smokescreen.onDestroy:()V │ │ -4307fc: 7100 74bd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -430802: 0c00 |0003: move-result-object v0 │ │ -430804: 6e10 6fbd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.exit:()Z // method@bd6f │ │ -43080a: 0a00 |0007: move-result v0 │ │ -43080c: 3800 0a00 |0008: if-eqz v0, 0012 // +000a │ │ -430810: 7100 5705 0000 |000a: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ -430816: 0a00 |000d: move-result v0 │ │ -430818: 7110 5605 0000 |000e: invoke-static {v0}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ -43081e: 2804 |0011: goto 0015 // +0004 │ │ -430820: 6f10 f53c 0100 |0012: invoke-super {v1}, Landroid/support/v7/app/AppCompatActivity;.onDestroy:()V // method@3cf5 │ │ -430826: 0e00 |0015: return-void │ │ +4307e8: |[4307e8] org.purple.smoke.Smokescreen.onDestroy:()V │ │ +4307f8: 7100 74bd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +4307fe: 0c00 |0003: move-result-object v0 │ │ +430800: 6e10 6fbd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.exit:()Z // method@bd6f │ │ +430806: 0a00 |0007: move-result v0 │ │ +430808: 3800 0a00 |0008: if-eqz v0, 0012 // +000a │ │ +43080c: 7100 5705 0000 |000a: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ +430812: 0a00 |000d: move-result v0 │ │ +430814: 7110 5605 0000 |000e: invoke-static {v0}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ +43081a: 2804 |0011: goto 0015 // +0004 │ │ +43081c: 6f10 f53c 0100 |0012: invoke-super {v1}, Landroid/support/v7/app/AppCompatActivity;.onDestroy:()V // method@3cf5 │ │ +430822: 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; │ │ @@ -1574551,90 +1574550,90 @@ │ │ type : '(Landroid/view/MenuItem;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 10 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 176 16-bit code units │ │ -4302b4: |[4302b4] org.purple.smoke.Smokescreen.onOptionsItemSelected:(Landroid/view/MenuItem;)Z │ │ -4302c4: 7210 6a55 0900 |0000: invoke-interface {v9}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ -4302ca: 0a00 |0003: move-result v0 │ │ -4302cc: 7210 6c55 0900 |0004: invoke-interface {v9}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ -4302d2: 0a01 |0007: move-result v1 │ │ -4302d4: 1a02 eb7c |0008: const-string v2, "lastActivity" // string@7ceb │ │ -4302d8: 1203 |000a: const/4 v3, #int 0 // #0 │ │ -4302da: 1214 |000b: const/4 v4, #int 1 // #1 │ │ -4302dc: 3900 3700 |000c: if-nez v0, 0043 // +0037 │ │ -4302e0: 2c01 8c00 0000 |000e: sparse-switch v1, 0000009a // +0000008c │ │ -4302e6: 2900 8300 |0011: goto/16 0094 // +0083 │ │ -4302ea: 5489 2c5f |0013: iget-object v9, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -4302ee: 1a00 7a4c |0015: const-string v0, "Steam" // string@4c7a │ │ -4302f2: 6e40 3eba 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@ba3e │ │ -4302f8: 7010 5cbd 0800 |001a: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showSteamActivity:()V // method@bd5c │ │ -4302fe: 0f04 |001d: return v4 │ │ -430300: 5489 2c5f |001e: iget-object v9, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -430304: 1a00 504b |0020: const-string v0, "Settings" // string@4b50 │ │ -430308: 6e40 3eba 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@ba3e │ │ -43030e: 7010 5bbd 0800 |0025: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showSettingsActivity:()V // method@bd5b │ │ -430314: 0f04 |0028: return v4 │ │ -430316: 5489 2c5f |0029: iget-object v9, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -43031a: 1a00 e91a |002b: const-string v0, "Fire" // string@1ae9 │ │ -43031e: 6e40 3eba 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@ba3e │ │ -430324: 7010 59bd 0800 |0030: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showFireActivity:()V // method@bd59 │ │ -43032a: 0f04 |0033: return v4 │ │ -43032c: 7120 2abd 8400 |0034: invoke-static {v4, v8}, Lorg/purple/smoke/Smoke;.exit:(ZLandroid/content/Context;)V // method@bd2a │ │ -430332: 0f04 |0037: return v4 │ │ -430334: 5489 2c5f |0038: iget-object v9, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -430338: 1a00 0113 |003a: const-string v0, "Chat" // string@1301 │ │ -43033c: 6e40 3eba 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@ba3e │ │ -430342: 7010 58bd 0800 |003f: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showChatActivity:()V // method@bd58 │ │ -430348: 0f04 |0042: return v4 │ │ -43034a: 7210 6e55 0900 |0043: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ -430350: 0c00 |0046: move-result-object v0 │ │ -430352: 7210 045c 0000 |0047: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -430358: 0c00 |004a: move-result-object v0 │ │ -43035a: 1a05 7a03 |004b: const-string v5, "(" // string@037a │ │ -43035e: 6e20 c25c 5000 |004d: invoke-virtual {v0, v5}, Ljava/lang/String;.indexOf:(Ljava/lang/String;)I // method@5cc2 │ │ -430364: 0a05 |0050: move-result v5 │ │ -430366: 3a05 0f00 |0051: if-ltz v5, 0060 // +000f │ │ -43036a: b045 |0053: add-int/2addr v5, v4 │ │ -43036c: 6e20 cc5c 5000 |0054: invoke-virtual {v0, v5}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ -430372: 0c04 |0057: move-result-object v4 │ │ -430374: 1a05 ec03 |0058: const-string v5, ")" // string@03ec │ │ -430378: 1a06 0000 |005a: const-string v6, "" // string@0000 │ │ -43037c: 6e30 c85c 5406 |005c: invoke-virtual {v4, v5, v6}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -430382: 0c00 |005f: move-result-object v0 │ │ -430384: 7110 f5bb 0000 |0060: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf5 │ │ -43038a: 0c00 |0063: move-result-object v0 │ │ -43038c: 7100 74bd 0000 |0064: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -430392: 0c04 |0067: move-result-object v4 │ │ -430394: 7110 d55c 0100 |0068: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -43039a: 0c05 |006b: move-result-object v5 │ │ -43039c: 1a06 a98a |006c: const-string v6, "member_chat_oid" // string@8aa9 │ │ -4303a0: 6e30 90bd 6405 |006e: invoke-virtual {v4, v6, v5}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd90 │ │ -4303a6: 7100 74bd 0000 |0071: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -4303ac: 0c04 |0074: move-result-object v4 │ │ -4303ae: 1a05 ab8a |0075: const-string v5, "member_chat_siphash_id" // string@8aab │ │ -4303b2: 6e30 90bd 5400 |0077: invoke-virtual {v4, v5, v0}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd90 │ │ -4303b8: 5484 2c5f |007a: iget-object v4, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -4303bc: 1a07 0b40 |007c: const-string v7, "MemberChat" // string@400b │ │ -4303c0: 6e40 3eba 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@ba3e │ │ -4303c6: 5482 2c5f |0081: iget-object v2, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -4303ca: 6203 315f |0083: sget-object v3, Lorg/purple/smoke/Smokescreen;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f31 │ │ -4303ce: 7110 d55c 0100 |0085: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -4303d4: 0c01 |0088: move-result-object v1 │ │ -4303d6: 6e40 3eba 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@ba3e │ │ -4303dc: 5481 2c5f |008c: iget-object v1, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -4303e0: 6e40 3eba 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@ba3e │ │ -4303e6: 7010 5abd 0800 |0091: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showMemberChatActivity:()V // method@bd5a │ │ -4303ec: 6f20 f83c 9800 |0094: invoke-super {v8, v9}, Landroid/support/v7/app/AppCompatActivity;.onOptionsItemSelected:(Landroid/view/MenuItem;)Z // method@3cf8 │ │ -4303f2: 0a09 |0097: move-result v9 │ │ -4303f4: 0f09 |0098: return v9 │ │ -4303f6: 0000 |0099: nop // spacer │ │ -4303f8: 0002 0500 0a00 087f 0e00 087f 0f00 ... |009a: sparse-switch-data (22 units) │ │ +4302b0: |[4302b0] org.purple.smoke.Smokescreen.onOptionsItemSelected:(Landroid/view/MenuItem;)Z │ │ +4302c0: 7210 6a55 0900 |0000: invoke-interface {v9}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ +4302c6: 0a00 |0003: move-result v0 │ │ +4302c8: 7210 6c55 0900 |0004: invoke-interface {v9}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ +4302ce: 0a01 |0007: move-result v1 │ │ +4302d0: 1a02 eb7c |0008: const-string v2, "lastActivity" // string@7ceb │ │ +4302d4: 1203 |000a: const/4 v3, #int 0 // #0 │ │ +4302d6: 1214 |000b: const/4 v4, #int 1 // #1 │ │ +4302d8: 3900 3700 |000c: if-nez v0, 0043 // +0037 │ │ +4302dc: 2c01 8c00 0000 |000e: sparse-switch v1, 0000009a // +0000008c │ │ +4302e2: 2900 8300 |0011: goto/16 0094 // +0083 │ │ +4302e6: 5489 2c5f |0013: iget-object v9, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +4302ea: 1a00 7a4c |0015: const-string v0, "Steam" // string@4c7a │ │ +4302ee: 6e40 3eba 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@ba3e │ │ +4302f4: 7010 5cbd 0800 |001a: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showSteamActivity:()V // method@bd5c │ │ +4302fa: 0f04 |001d: return v4 │ │ +4302fc: 5489 2c5f |001e: iget-object v9, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +430300: 1a00 504b |0020: const-string v0, "Settings" // string@4b50 │ │ +430304: 6e40 3eba 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@ba3e │ │ +43030a: 7010 5bbd 0800 |0025: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showSettingsActivity:()V // method@bd5b │ │ +430310: 0f04 |0028: return v4 │ │ +430312: 5489 2c5f |0029: iget-object v9, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +430316: 1a00 e91a |002b: const-string v0, "Fire" // string@1ae9 │ │ +43031a: 6e40 3eba 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@ba3e │ │ +430320: 7010 59bd 0800 |0030: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showFireActivity:()V // method@bd59 │ │ +430326: 0f04 |0033: return v4 │ │ +430328: 7120 2abd 8400 |0034: invoke-static {v4, v8}, Lorg/purple/smoke/Smoke;.exit:(ZLandroid/content/Context;)V // method@bd2a │ │ +43032e: 0f04 |0037: return v4 │ │ +430330: 5489 2c5f |0038: iget-object v9, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +430334: 1a00 0113 |003a: const-string v0, "Chat" // string@1301 │ │ +430338: 6e40 3eba 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@ba3e │ │ +43033e: 7010 58bd 0800 |003f: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showChatActivity:()V // method@bd58 │ │ +430344: 0f04 |0042: return v4 │ │ +430346: 7210 6e55 0900 |0043: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ +43034c: 0c00 |0046: move-result-object v0 │ │ +43034e: 7210 045c 0000 |0047: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +430354: 0c00 |004a: move-result-object v0 │ │ +430356: 1a05 7a03 |004b: const-string v5, "(" // string@037a │ │ +43035a: 6e20 c25c 5000 |004d: invoke-virtual {v0, v5}, Ljava/lang/String;.indexOf:(Ljava/lang/String;)I // method@5cc2 │ │ +430360: 0a05 |0050: move-result v5 │ │ +430362: 3a05 0f00 |0051: if-ltz v5, 0060 // +000f │ │ +430366: b045 |0053: add-int/2addr v5, v4 │ │ +430368: 6e20 cc5c 5000 |0054: invoke-virtual {v0, v5}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ +43036e: 0c04 |0057: move-result-object v4 │ │ +430370: 1a05 ec03 |0058: const-string v5, ")" // string@03ec │ │ +430374: 1a06 0000 |005a: const-string v6, "" // string@0000 │ │ +430378: 6e30 c85c 5406 |005c: invoke-virtual {v4, v5, v6}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +43037e: 0c00 |005f: move-result-object v0 │ │ +430380: 7110 f5bb 0000 |0060: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf5 │ │ +430386: 0c00 |0063: move-result-object v0 │ │ +430388: 7100 74bd 0000 |0064: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +43038e: 0c04 |0067: move-result-object v4 │ │ +430390: 7110 d55c 0100 |0068: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +430396: 0c05 |006b: move-result-object v5 │ │ +430398: 1a06 a98a |006c: const-string v6, "member_chat_oid" // string@8aa9 │ │ +43039c: 6e30 90bd 6405 |006e: invoke-virtual {v4, v6, v5}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd90 │ │ +4303a2: 7100 74bd 0000 |0071: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +4303a8: 0c04 |0074: move-result-object v4 │ │ +4303aa: 1a05 ab8a |0075: const-string v5, "member_chat_siphash_id" // string@8aab │ │ +4303ae: 6e30 90bd 5400 |0077: invoke-virtual {v4, v5, v0}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd90 │ │ +4303b4: 5484 2c5f |007a: iget-object v4, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +4303b8: 1a07 0b40 |007c: const-string v7, "MemberChat" // string@400b │ │ +4303bc: 6e40 3eba 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@ba3e │ │ +4303c2: 5482 2c5f |0081: iget-object v2, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +4303c6: 6203 315f |0083: sget-object v3, Lorg/purple/smoke/Smokescreen;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f31 │ │ +4303ca: 7110 d55c 0100 |0085: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +4303d0: 0c01 |0088: move-result-object v1 │ │ +4303d2: 6e40 3eba 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@ba3e │ │ +4303d8: 5481 2c5f |008c: iget-object v1, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +4303dc: 6e40 3eba 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@ba3e │ │ +4303e2: 7010 5abd 0800 |0091: invoke-direct {v8}, Lorg/purple/smoke/Smokescreen;.showMemberChatActivity:()V // method@bd5a │ │ +4303e8: 6f20 f83c 9800 |0094: invoke-super {v8, v9}, Landroid/support/v7/app/AppCompatActivity;.onOptionsItemSelected:(Landroid/view/MenuItem;)Z // method@3cf8 │ │ +4303ee: 0a09 |0097: move-result v9 │ │ +4303f0: 0f09 |0098: return v9 │ │ +4303f2: 0000 |0099: nop // spacer │ │ +4303f4: 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 │ │ @@ -1574671,77 +1574670,77 @@ │ │ type : '(Landroid/view/Menu;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 10 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 137 16-bit code units │ │ -430434: |[430434] org.purple.smoke.Smokescreen.onPrepareOptionsMenu:(Landroid/view/Menu;)Z │ │ -430444: 7210 5b55 0900 |0000: invoke-interface {v9}, Landroid/view/Menu;.clear:()V // method@555b │ │ -43044a: 6e10 4dbd 0800 |0003: invoke-virtual {v8}, Lorg/purple/smoke/Smokescreen;.getMenuInflater:()Landroid/view/MenuInflater; // method@bd4d │ │ -430450: 0c00 |0006: move-result-object v0 │ │ -430452: 1401 0500 0b7f |0007: const v1, #float 1.84763e+38 // #7f0b0005 │ │ -430458: 6e30 6255 1009 |000a: invoke-virtual {v0, v1, v9}, Landroid/view/MenuInflater;.inflate:(ILandroid/view/Menu;)V // method@5562 │ │ -43045e: 7100 74bd 0000 |000d: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -430464: 0c00 |0010: move-result-object v0 │ │ -430466: 6e10 78bd 0000 |0011: invoke-virtual {v0}, Lorg/purple/smoke/State;.isLocked:()Z // method@bd78 │ │ -43046c: 0a00 |0014: move-result v0 │ │ -43046e: 1401 1800 087f |0015: const v1, #float 1.80775e+38 // #7f080018 │ │ -430474: 1402 1600 087f |0018: const v2, #float 1.80775e+38 // #7f080016 │ │ -43047a: 1403 0f00 087f |001b: const v3, #float 1.80775e+38 // #7f08000f │ │ -430480: 1404 0a00 087f |001e: const v4, #float 1.80775e+38 // #7f08000a │ │ -430486: 1405 0200 087f |0021: const v5, #float 1.80775e+38 // #7f080002 │ │ -43048c: 1216 |0024: const/4 v6, #int 1 // #1 │ │ -43048e: 3800 2700 |0025: if-eqz v0, 004c // +0027 │ │ -430492: 7220 5c55 5900 |0027: invoke-interface {v9, v5}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -430498: 0c00 |002a: move-result-object v0 │ │ -43049a: 1205 |002b: const/4 v5, #int 0 // #0 │ │ -43049c: 7220 7a55 5000 |002c: invoke-interface {v0, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -4304a2: 7220 5c55 4900 |002f: invoke-interface {v9, v4}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -4304a8: 0c00 |0032: move-result-object v0 │ │ -4304aa: 7220 7a55 5000 |0033: invoke-interface {v0, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -4304b0: 7220 5c55 3900 |0036: invoke-interface {v9, v3}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -4304b6: 0c00 |0039: move-result-object v0 │ │ -4304b8: 7220 7a55 5000 |003a: invoke-interface {v0, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -4304be: 7220 5c55 2900 |003d: invoke-interface {v9, v2}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -4304c4: 0c00 |0040: move-result-object v0 │ │ -4304c6: 7220 7a55 5000 |0041: invoke-interface {v0, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -4304cc: 7220 5c55 1900 |0044: invoke-interface {v9, v1}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -4304d2: 0c09 |0047: move-result-object v9 │ │ -4304d4: 7220 7a55 5900 |0048: invoke-interface {v9, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -4304da: 283d |004b: goto 0088 // +003d │ │ -4304dc: 7100 74bd 0000 |004c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -4304e2: 0c00 |004f: move-result-object v0 │ │ -4304e4: 6e10 77bd 0000 |0050: invoke-virtual {v0}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ -4304ea: 0a00 |0053: move-result v0 │ │ -4304ec: 5487 2c5f |0054: iget-object v7, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ -4304f0: 6e10 deb9 0700 |0056: invoke-virtual {v7}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9de │ │ -4304f6: 0a07 |0059: move-result v7 │ │ -4304f8: 3907 0300 |005a: if-nez v7, 005d // +0003 │ │ -4304fc: 1210 |005c: const/4 v0, #int 1 // #1 │ │ -4304fe: 7220 5c55 5900 |005d: invoke-interface {v9, v5}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -430504: 0c05 |0060: move-result-object v5 │ │ -430506: df07 0001 |0061: xor-int/lit8 v7, v0, #int 1 // #01 │ │ -43050a: 7220 7a55 7500 |0063: invoke-interface {v5, v7}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -430510: 7220 5c55 4900 |0066: invoke-interface {v9, v4}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -430516: 0c04 |0069: move-result-object v4 │ │ -430518: 7220 7a55 0400 |006a: invoke-interface {v4, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -43051e: 7220 5c55 3900 |006d: invoke-interface {v9, v3}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -430524: 0c03 |0070: move-result-object v3 │ │ -430526: 7220 7a55 0300 |0071: invoke-interface {v3, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -43052c: 7220 5c55 2900 |0074: invoke-interface {v9, v2}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -430532: 0c02 |0077: move-result-object v2 │ │ -430534: 7220 7a55 0200 |0078: invoke-interface {v2, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -43053a: 7220 5c55 1900 |007b: invoke-interface {v9, v1}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -430540: 0c01 |007e: move-result-object v1 │ │ -430542: 7220 7a55 0100 |007f: invoke-interface {v1, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -430548: 1260 |0082: const/4 v0, #int 6 // #6 │ │ -43054a: 1301 fa00 |0083: const/16 v1, #int 250 // #fa │ │ -43054e: 7130 e3bb 0901 |0085: invoke-static {v9, v0, v1}, Lorg/purple/smoke/Miscellaneous;.addMembersToMenu:(Landroid/view/Menu;II)Landroid/view/SubMenu; // method@bbe3 │ │ -430554: 0f06 |0088: return v6 │ │ +430430: |[430430] org.purple.smoke.Smokescreen.onPrepareOptionsMenu:(Landroid/view/Menu;)Z │ │ +430440: 7210 5b55 0900 |0000: invoke-interface {v9}, Landroid/view/Menu;.clear:()V // method@555b │ │ +430446: 6e10 4dbd 0800 |0003: invoke-virtual {v8}, Lorg/purple/smoke/Smokescreen;.getMenuInflater:()Landroid/view/MenuInflater; // method@bd4d │ │ +43044c: 0c00 |0006: move-result-object v0 │ │ +43044e: 1401 0500 0b7f |0007: const v1, #float 1.84763e+38 // #7f0b0005 │ │ +430454: 6e30 6255 1009 |000a: invoke-virtual {v0, v1, v9}, Landroid/view/MenuInflater;.inflate:(ILandroid/view/Menu;)V // method@5562 │ │ +43045a: 7100 74bd 0000 |000d: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +430460: 0c00 |0010: move-result-object v0 │ │ +430462: 6e10 78bd 0000 |0011: invoke-virtual {v0}, Lorg/purple/smoke/State;.isLocked:()Z // method@bd78 │ │ +430468: 0a00 |0014: move-result v0 │ │ +43046a: 1401 1800 087f |0015: const v1, #float 1.80775e+38 // #7f080018 │ │ +430470: 1402 1600 087f |0018: const v2, #float 1.80775e+38 // #7f080016 │ │ +430476: 1403 0f00 087f |001b: const v3, #float 1.80775e+38 // #7f08000f │ │ +43047c: 1404 0a00 087f |001e: const v4, #float 1.80775e+38 // #7f08000a │ │ +430482: 1405 0200 087f |0021: const v5, #float 1.80775e+38 // #7f080002 │ │ +430488: 1216 |0024: const/4 v6, #int 1 // #1 │ │ +43048a: 3800 2700 |0025: if-eqz v0, 004c // +0027 │ │ +43048e: 7220 5c55 5900 |0027: invoke-interface {v9, v5}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +430494: 0c00 |002a: move-result-object v0 │ │ +430496: 1205 |002b: const/4 v5, #int 0 // #0 │ │ +430498: 7220 7a55 5000 |002c: invoke-interface {v0, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +43049e: 7220 5c55 4900 |002f: invoke-interface {v9, v4}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +4304a4: 0c00 |0032: move-result-object v0 │ │ +4304a6: 7220 7a55 5000 |0033: invoke-interface {v0, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +4304ac: 7220 5c55 3900 |0036: invoke-interface {v9, v3}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +4304b2: 0c00 |0039: move-result-object v0 │ │ +4304b4: 7220 7a55 5000 |003a: invoke-interface {v0, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +4304ba: 7220 5c55 2900 |003d: invoke-interface {v9, v2}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +4304c0: 0c00 |0040: move-result-object v0 │ │ +4304c2: 7220 7a55 5000 |0041: invoke-interface {v0, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +4304c8: 7220 5c55 1900 |0044: invoke-interface {v9, v1}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +4304ce: 0c09 |0047: move-result-object v9 │ │ +4304d0: 7220 7a55 5900 |0048: invoke-interface {v9, v5}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +4304d6: 283d |004b: goto 0088 // +003d │ │ +4304d8: 7100 74bd 0000 |004c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +4304de: 0c00 |004f: move-result-object v0 │ │ +4304e0: 6e10 77bd 0000 |0050: invoke-virtual {v0}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ +4304e6: 0a00 |0053: move-result v0 │ │ +4304e8: 5487 2c5f |0054: iget-object v7, v8, Lorg/purple/smoke/Smokescreen;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f2c │ │ +4304ec: 6e10 deb9 0700 |0056: invoke-virtual {v7}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9de │ │ +4304f2: 0a07 |0059: move-result v7 │ │ +4304f4: 3907 0300 |005a: if-nez v7, 005d // +0003 │ │ +4304f8: 1210 |005c: const/4 v0, #int 1 // #1 │ │ +4304fa: 7220 5c55 5900 |005d: invoke-interface {v9, v5}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +430500: 0c05 |0060: move-result-object v5 │ │ +430502: df07 0001 |0061: xor-int/lit8 v7, v0, #int 1 // #01 │ │ +430506: 7220 7a55 7500 |0063: invoke-interface {v5, v7}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +43050c: 7220 5c55 4900 |0066: invoke-interface {v9, v4}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +430512: 0c04 |0069: move-result-object v4 │ │ +430514: 7220 7a55 0400 |006a: invoke-interface {v4, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +43051a: 7220 5c55 3900 |006d: invoke-interface {v9, v3}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +430520: 0c03 |0070: move-result-object v3 │ │ +430522: 7220 7a55 0300 |0071: invoke-interface {v3, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +430528: 7220 5c55 2900 |0074: invoke-interface {v9, v2}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +43052e: 0c02 |0077: move-result-object v2 │ │ +430530: 7220 7a55 0200 |0078: invoke-interface {v2, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +430536: 7220 5c55 1900 |007b: invoke-interface {v9, v1}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +43053c: 0c01 |007e: move-result-object v1 │ │ +43053e: 7220 7a55 0100 |007f: invoke-interface {v1, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +430544: 1260 |0082: const/4 v0, #int 6 // #6 │ │ +430546: 1301 fa00 |0083: const/16 v1, #int 250 // #fa │ │ +43054a: 7130 e3bb 0901 |0085: invoke-static {v9, v0, v1}, Lorg/purple/smoke/Miscellaneous;.addMembersToMenu:(Landroid/view/Menu;II)Landroid/view/SubMenu; // method@bbe3 │ │ +430550: 0f06 |0088: return v6 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=303 │ │ 0x0003 line=304 │ │ 0x000d line=306 │ │ 0x0027 line=310 │ │ 0x002f line=311 │ │ @@ -1574876,54 +1574875,54 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 7 16-bit code units │ │ -436d00: |[436d00] org.purple.smoke.Steam.:()V │ │ -436d10: 7100 91b9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ -436d16: 0c00 |0003: move-result-object v0 │ │ -436d18: 6900 695f |0004: sput-object v0, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ -436d1c: 0e00 |0006: return-void │ │ +436cfc: |[436cfc] org.purple.smoke.Steam.:()V │ │ +436d0c: 7100 91b9 0000 |0000: invoke-static {}, Lorg/purple/smoke/Cryptography;.getInstance:()Lorg/purple/smoke/Cryptography; // method@b991 │ │ +436d12: 0c00 |0003: move-result-object v0 │ │ +436d14: 6900 695f |0004: sput-object v0, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ +436d18: 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 │ │ -436d20: |[436d20] org.purple.smoke.Steam.:()V │ │ -436d30: 7010 df3c 0200 |0000: invoke-direct {v2}, Landroid/support/v7/app/AppCompatActivity;.:()V // method@3cdf │ │ -436d36: 1200 |0003: const/4 v0, #int 0 // #0 │ │ -436d38: 5b20 5c5f |0004: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_attachmentButton:Landroid/widget/Button; // field@5f5c │ │ -436d3c: 5b20 675f |0006: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_sendButton:Landroid/widget/Button; // field@5f67 │ │ -436d40: 5b20 5d5f |0008: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436d44: 5b20 665f |000a: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ -436d48: 5b20 5b5f |000c: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -436d4c: 5b20 685f |000e: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ -436d50: 5b20 615f |0010: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ -436d54: 5b20 635f |0012: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ -436d58: 5b20 645f |0014: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_receiver:Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // field@5f64 │ │ -436d5c: 5b20 625f |0016: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ -436d60: 1a01 0000 |0018: const-string v1, "" // string@0000 │ │ -436d64: 5b21 5a5f |001a: iput-object v1, v2, Lorg/purple/smoke/Steam;.m_absoluteFileName:Ljava/lang/String; // field@5f5a │ │ -436d68: 5b20 5e5f |001c: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ -436d6c: 5b20 5f5f |001e: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_downloads:Landroid/widget/TextView; // field@5f5f │ │ -436d70: 5b20 605f |0020: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_information:Landroid/widget/TextView; // field@5f60 │ │ -436d74: 1200 |0022: const/4 v0, #int 0 // #0 │ │ -436d76: 5c20 655f |0023: iput-boolean v0, v2, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ -436d7a: 0e00 |0025: return-void │ │ +436d1c: |[436d1c] org.purple.smoke.Steam.:()V │ │ +436d2c: 7010 df3c 0200 |0000: invoke-direct {v2}, Landroid/support/v7/app/AppCompatActivity;.:()V // method@3cdf │ │ +436d32: 1200 |0003: const/4 v0, #int 0 // #0 │ │ +436d34: 5b20 5c5f |0004: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_attachmentButton:Landroid/widget/Button; // field@5f5c │ │ +436d38: 5b20 675f |0006: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_sendButton:Landroid/widget/Button; // field@5f67 │ │ +436d3c: 5b20 5d5f |0008: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436d40: 5b20 665f |000a: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ +436d44: 5b20 5b5f |000c: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +436d48: 5b20 685f |000e: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ +436d4c: 5b20 615f |0010: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ +436d50: 5b20 635f |0012: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ +436d54: 5b20 645f |0014: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_receiver:Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // field@5f64 │ │ +436d58: 5b20 625f |0016: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ +436d5c: 1a01 0000 |0018: const-string v1, "" // string@0000 │ │ +436d60: 5b21 5a5f |001a: iput-object v1, v2, Lorg/purple/smoke/Steam;.m_absoluteFileName:Ljava/lang/String; // field@5f5a │ │ +436d64: 5b20 5e5f |001c: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ +436d68: 5b20 5f5f |001e: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_downloads:Landroid/widget/TextView; // field@5f5f │ │ +436d6c: 5b20 605f |0020: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_information:Landroid/widget/TextView; // field@5f60 │ │ +436d70: 1200 |0022: const/4 v0, #int 0 // #0 │ │ +436d72: 5c20 655f |0023: iput-boolean v0, v2, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ +436d76: 0e00 |0025: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=57 │ │ 0x0004 line=127 │ │ 0x0006 line=128 │ │ 0x0008 line=129 │ │ 0x000a line=130 │ │ @@ -1574946,17 +1574945,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 │ │ -436d7c: |[436d7c] org.purple.smoke.Steam.access$000:(Lorg/purple/smoke/Steam;)V │ │ -436d8c: 7010 c1bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Steam;.networkStatusChanged:()V // method@bdc1 │ │ -436d92: 0e00 |0003: return-void │ │ +436d78: |[436d78] org.purple.smoke.Steam.access$000:(Lorg/purple/smoke/Steam;)V │ │ +436d88: 7010 c1bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Steam;.networkStatusChanged:()V // method@bdc1 │ │ +436d8e: 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;) │ │ @@ -1574964,17 +1574963,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 │ │ -436d94: |[436d94] org.purple.smoke.Steam.access$100:(Lorg/purple/smoke/Steam;)V │ │ -436da4: 7010 cdbd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Steam;.populateParticipants:()V // method@bdcd │ │ -436daa: 0e00 |0003: return-void │ │ +436d90: |[436d90] org.purple.smoke.Steam.access$100:(Lorg/purple/smoke/Steam;)V │ │ +436da0: 7010 cdbd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Steam;.populateParticipants:()V // method@bdcd │ │ +436da6: 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;) │ │ @@ -1574982,34 +1574981,34 @@ │ │ type : '()Lorg/purple/smoke/Cryptography;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -436cb8: |[436cb8] org.purple.smoke.Steam.access$1000:()Lorg/purple/smoke/Cryptography; │ │ -436cc8: 6200 695f |0000: sget-object v0, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ -436ccc: 1100 |0002: return-object v0 │ │ +436cb4: |[436cb4] org.purple.smoke.Steam.access$1000:()Lorg/purple/smoke/Cryptography; │ │ +436cc4: 6200 695f |0000: sget-object v0, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ +436cc8: 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 │ │ -436910: |[436910] org.purple.smoke.Steam.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; │ │ -436920: 5400 5b5f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -436924: 1100 |0002: return-object v0 │ │ +43690c: |[43690c] org.purple.smoke.Steam.access$200:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView$Adapter; │ │ +43691c: 5400 5b5f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +436920: 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;) │ │ @@ -1575017,17 +1575016,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 │ │ -436dac: |[436dac] org.purple.smoke.Steam.access$300:(Lorg/purple/smoke/Steam;)V │ │ -436dbc: 7010 d9bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Steam;.showFileActivity:()V // method@bdd9 │ │ -436dc2: 0e00 |0003: return-void │ │ +436da8: |[436da8] org.purple.smoke.Steam.access$300:(Lorg/purple/smoke/Steam;)V │ │ +436db8: 7010 d9bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Steam;.showFileActivity:()V // method@bdd9 │ │ +436dbe: 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;) │ │ @@ -1575035,17 +1575034,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 │ │ -436928: |[436928] org.purple.smoke.Steam.access$400:(Lorg/purple/smoke/Steam;)Landroid/widget/Spinner; │ │ -436938: 5400 615f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ -43693c: 1100 |0002: return-object v0 │ │ +436924: |[436924] org.purple.smoke.Steam.access$400:(Lorg/purple/smoke/Steam;)Landroid/widget/Spinner; │ │ +436934: 5400 615f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ +436938: 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;) │ │ @@ -1575053,17 +1575052,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 │ │ -436dc4: |[436dc4] org.purple.smoke.Steam.access$500:(Lorg/purple/smoke/Steam;)V │ │ -436dd4: 7010 d4bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Steam;.saveSteam:()V // method@bdd4 │ │ -436dda: 0e00 |0003: return-void │ │ +436dc0: |[436dc0] org.purple.smoke.Steam.access$500:(Lorg/purple/smoke/Steam;)V │ │ +436dd0: 7010 d4bd 0000 |0000: invoke-direct {v0}, Lorg/purple/smoke/Steam;.saveSteam:()V // method@bdd4 │ │ +436dd6: 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;) │ │ @@ -1575071,17 +1575070,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 │ │ -436940: |[436940] org.purple.smoke.Steam.access$600:(Lorg/purple/smoke/Steam;)Landroid/widget/TextView; │ │ -436950: 5400 605f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_information:Landroid/widget/TextView; // field@5f60 │ │ -436954: 1100 |0002: return-object v0 │ │ +43693c: |[43693c] org.purple.smoke.Steam.access$600:(Lorg/purple/smoke/Steam;)Landroid/widget/TextView; │ │ +43694c: 5400 605f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_information:Landroid/widget/TextView; // field@5f60 │ │ +436950: 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;) │ │ @@ -1575089,17 +1575088,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 │ │ -4368f8: |[4368f8] org.purple.smoke.Steam.access$700:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView; │ │ -436908: 5400 665f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ -43690c: 1100 |0002: return-object v0 │ │ +4368f4: |[4368f4] org.purple.smoke.Steam.access$700:(Lorg/purple/smoke/Steam;)Landroid/support/v7/widget/RecyclerView; │ │ +436904: 5400 665f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ +436908: 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;) │ │ @@ -1575107,17 +1575106,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 │ │ -436ce8: |[436ce8] org.purple.smoke.Steam.access$800:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Steam$SteamLinearLayoutManager; │ │ -436cf8: 5400 625f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ -436cfc: 1100 |0002: return-object v0 │ │ +436ce4: |[436ce4] org.purple.smoke.Steam.access$800:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Steam$SteamLinearLayoutManager; │ │ +436cf4: 5400 625f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ +436cf8: 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;) │ │ @@ -1575125,17 +1575124,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 │ │ -436cd0: |[436cd0] org.purple.smoke.Steam.access$900:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Database; │ │ -436ce0: 5400 5d5f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436ce4: 1100 |0002: return-object v0 │ │ +436ccc: |[436ccc] org.purple.smoke.Steam.access$900:(Lorg/purple/smoke/Steam;)Lorg/purple/smoke/Database; │ │ +436cdc: 5400 5d5f |0000: iget-object v0, v0, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436ce0: 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;) │ │ @@ -1575143,21 +1575142,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 12 16-bit code units │ │ -436ddc: |[436ddc] org.purple.smoke.Steam.networkStatusChanged:()V │ │ -436dec: 6e10 bebd 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bdbe │ │ -436df2: 0c00 |0003: move-result-object v0 │ │ -436df4: 7100 2ebd 0000 |0004: invoke-static {}, Lorg/purple/smoke/Smoke;.networkStatusString:()Ljava/lang/String; // method@bd2e │ │ -436dfa: 0c01 |0007: move-result-object v1 │ │ -436dfc: 6e20 0a3c 1000 |0008: invoke-virtual {v0, v1}, Landroid/support/v7/app/ActionBar;.setSubtitle:(Ljava/lang/CharSequence;)V // method@3c0a │ │ -436e02: 0e00 |000b: return-void │ │ +436dd8: |[436dd8] org.purple.smoke.Steam.networkStatusChanged:()V │ │ +436de8: 6e10 bebd 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bdbe │ │ +436dee: 0c00 |0003: move-result-object v0 │ │ +436df0: 7100 2ebd 0000 |0004: invoke-static {}, Lorg/purple/smoke/Smoke;.networkStatusString:()Ljava/lang/String; // method@bd2e │ │ +436df6: 0c01 |0007: move-result-object v1 │ │ +436df8: 6e20 0a3c 1000 |0008: invoke-virtual {v0, v1}, Landroid/support/v7/app/ActionBar;.setSubtitle:(Ljava/lang/CharSequence;)V // method@3c0a │ │ +436dfe: 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; │ │ @@ -1575167,70 +1575166,70 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 7 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 118 16-bit code units │ │ -437338: |[437338] org.purple.smoke.Steam.populateParticipants:()V │ │ -437348: 5460 635f |0000: iget-object v0, v6, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ -43734c: 3900 0300 |0002: if-nez v0, 0005 // +0003 │ │ -437350: 0e00 |0004: return-void │ │ -437352: 7100 74bd 0000 |0005: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -437358: 0c00 |0008: move-result-object v0 │ │ -43735a: 6e10 7cbd 0000 |0009: invoke-virtual {v0}, Lorg/purple/smoke/State;.participants:()Ljava/util/ArrayList; // method@bd7c │ │ -437360: 0c00 |000c: move-result-object v0 │ │ -437362: 1a01 b442 |000d: const-string v1, "Other (Non-Smoke)" // string@42b4 │ │ -437366: 1402 0800 0901 |000f: const v2, #float 2.51629e-38 // #01090008 │ │ -43736c: 3800 5500 |0012: if-eqz v0, 0067 // +0055 │ │ -437370: 6e10 a85f 0000 |0014: invoke-virtual {v0}, Ljava/util/ArrayList;.isEmpty:()Z // method@5fa8 │ │ -437376: 0a03 |0017: move-result v3 │ │ -437378: 3803 0300 |0018: if-eqz v3, 001b // +0003 │ │ -43737c: 284d |001a: goto 0067 // +004d │ │ -43737e: 5463 635f |001b: iget-object v3, v6, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ -437382: 1204 |001d: const/4 v4, #int 0 // #0 │ │ -437384: 6e20 c05a 4300 |001e: invoke-virtual {v3, v4}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -43738a: 2203 ab0b |0021: new-instance v3, Ljava/util/ArrayList; // type@0bab │ │ -43738e: 7010 9b5f 0300 |0023: invoke-direct {v3}, Ljava/util/ArrayList;.:()V // method@5f9b │ │ -437394: 6e20 9f5f 1300 |0026: invoke-virtual {v3, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9f │ │ -43739a: 6e10 a95f 0000 |0029: invoke-virtual {v0}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa9 │ │ -4373a0: 0c00 |002c: move-result-object v0 │ │ -4373a2: 7210 1d60 0000 |002d: invoke-interface {v0}, Ljava/util/Iterator;.hasNext:()Z // method@601d │ │ -4373a8: 0a01 |0030: move-result v1 │ │ -4373aa: 3801 2b00 |0031: if-eqz v1, 005c // +002b │ │ -4373ae: 7210 1e60 0000 |0033: invoke-interface {v0}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601e │ │ -4373b4: 0c01 |0036: move-result-object v1 │ │ -4373b6: 1f01 c01a |0037: check-cast v1, Lorg/purple/smoke/ParticipantElement; // type@1ac0 │ │ -4373ba: 3801 f4ff |0039: if-eqz v1, 002d // -000c │ │ -4373be: 2204 f10a |003b: new-instance v4, Ljava/lang/StringBuilder; // type@0af1 │ │ -4373c2: 7010 ee5c 0400 |003d: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -4373c8: 5415 8055 |0040: iget-object v5, v1, Lorg/purple/smoke/ParticipantElement;.m_name:Ljava/lang/String; // field@5580 │ │ -4373cc: 6e20 f95c 5400 |0042: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4373d2: 1a05 9800 |0045: const-string v5, " (" // string@0098 │ │ -4373d6: 6e20 f95c 5400 |0047: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4373dc: 5411 8255 |004a: iget-object v1, v1, Lorg/purple/smoke/ParticipantElement;.m_sipHashId:Ljava/lang/String; // field@5582 │ │ -4373e0: 6e20 f95c 1400 |004c: invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4373e6: 1a01 ec03 |004f: const-string v1, ")" // string@03ec │ │ -4373ea: 6e20 f95c 1400 |0051: invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4373f0: 6e10 035d 0400 |0054: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4373f6: 0c01 |0057: move-result-object v1 │ │ -4373f8: 6e20 9f5f 1300 |0058: invoke-virtual {v3, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9f │ │ -4373fe: 28d2 |005b: goto 002d // -002e │ │ -437400: 2200 5b0a |005c: new-instance v0, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -437404: 7040 ca58 6032 |005e: invoke-direct {v0, v6, v2, v3}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;ILjava/util/List;)V // method@58ca │ │ -43740a: 5461 635f |0061: iget-object v1, v6, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ -43740e: 6e20 c05a 0100 |0063: invoke-virtual {v1, v0}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -437414: 0e00 |0066: return-void │ │ -437416: 2200 5b0a |0067: new-instance v0, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -43741a: 2410 a81b 0100 |0069: filled-new-array {v1}, [Ljava/lang/String; // type@1ba8 │ │ -437420: 0c01 |006c: move-result-object v1 │ │ -437422: 7040 cb58 6012 |006d: invoke-direct {v0, v6, v2, v1}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ -437428: 5461 635f |0070: iget-object v1, v6, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ -43742c: 6e20 c05a 0100 |0072: invoke-virtual {v1, v0}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -437432: 0e00 |0075: return-void │ │ +437334: |[437334] org.purple.smoke.Steam.populateParticipants:()V │ │ +437344: 5460 635f |0000: iget-object v0, v6, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ +437348: 3900 0300 |0002: if-nez v0, 0005 // +0003 │ │ +43734c: 0e00 |0004: return-void │ │ +43734e: 7100 74bd 0000 |0005: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +437354: 0c00 |0008: move-result-object v0 │ │ +437356: 6e10 7cbd 0000 |0009: invoke-virtual {v0}, Lorg/purple/smoke/State;.participants:()Ljava/util/ArrayList; // method@bd7c │ │ +43735c: 0c00 |000c: move-result-object v0 │ │ +43735e: 1a01 b442 |000d: const-string v1, "Other (Non-Smoke)" // string@42b4 │ │ +437362: 1402 0800 0901 |000f: const v2, #float 2.51629e-38 // #01090008 │ │ +437368: 3800 5500 |0012: if-eqz v0, 0067 // +0055 │ │ +43736c: 6e10 a85f 0000 |0014: invoke-virtual {v0}, Ljava/util/ArrayList;.isEmpty:()Z // method@5fa8 │ │ +437372: 0a03 |0017: move-result v3 │ │ +437374: 3803 0300 |0018: if-eqz v3, 001b // +0003 │ │ +437378: 284d |001a: goto 0067 // +004d │ │ +43737a: 5463 635f |001b: iget-object v3, v6, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ +43737e: 1204 |001d: const/4 v4, #int 0 // #0 │ │ +437380: 6e20 c05a 4300 |001e: invoke-virtual {v3, v4}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +437386: 2203 ab0b |0021: new-instance v3, Ljava/util/ArrayList; // type@0bab │ │ +43738a: 7010 9b5f 0300 |0023: invoke-direct {v3}, Ljava/util/ArrayList;.:()V // method@5f9b │ │ +437390: 6e20 9f5f 1300 |0026: invoke-virtual {v3, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9f │ │ +437396: 6e10 a95f 0000 |0029: invoke-virtual {v0}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@5fa9 │ │ +43739c: 0c00 |002c: move-result-object v0 │ │ +43739e: 7210 1d60 0000 |002d: invoke-interface {v0}, Ljava/util/Iterator;.hasNext:()Z // method@601d │ │ +4373a4: 0a01 |0030: move-result v1 │ │ +4373a6: 3801 2b00 |0031: if-eqz v1, 005c // +002b │ │ +4373aa: 7210 1e60 0000 |0033: invoke-interface {v0}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@601e │ │ +4373b0: 0c01 |0036: move-result-object v1 │ │ +4373b2: 1f01 c01a |0037: check-cast v1, Lorg/purple/smoke/ParticipantElement; // type@1ac0 │ │ +4373b6: 3801 f4ff |0039: if-eqz v1, 002d // -000c │ │ +4373ba: 2204 f10a |003b: new-instance v4, Ljava/lang/StringBuilder; // type@0af1 │ │ +4373be: 7010 ee5c 0400 |003d: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4373c4: 5415 8055 |0040: iget-object v5, v1, Lorg/purple/smoke/ParticipantElement;.m_name:Ljava/lang/String; // field@5580 │ │ +4373c8: 6e20 f95c 5400 |0042: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4373ce: 1a05 9800 |0045: const-string v5, " (" // string@0098 │ │ +4373d2: 6e20 f95c 5400 |0047: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4373d8: 5411 8255 |004a: iget-object v1, v1, Lorg/purple/smoke/ParticipantElement;.m_sipHashId:Ljava/lang/String; // field@5582 │ │ +4373dc: 6e20 f95c 1400 |004c: invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4373e2: 1a01 ec03 |004f: const-string v1, ")" // string@03ec │ │ +4373e6: 6e20 f95c 1400 |0051: invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4373ec: 6e10 035d 0400 |0054: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4373f2: 0c01 |0057: move-result-object v1 │ │ +4373f4: 6e20 9f5f 1300 |0058: invoke-virtual {v3, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@5f9f │ │ +4373fa: 28d2 |005b: goto 002d // -002e │ │ +4373fc: 2200 5b0a |005c: new-instance v0, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +437400: 7040 ca58 6032 |005e: invoke-direct {v0, v6, v2, v3}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;ILjava/util/List;)V // method@58ca │ │ +437406: 5461 635f |0061: iget-object v1, v6, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ +43740a: 6e20 c05a 0100 |0063: invoke-virtual {v1, v0}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +437410: 0e00 |0066: return-void │ │ +437412: 2200 5b0a |0067: new-instance v0, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +437416: 2410 a81b 0100 |0069: filled-new-array {v1}, [Ljava/lang/String; // type@1ba8 │ │ +43741c: 0c01 |006c: move-result-object v1 │ │ +43741e: 7040 cb58 6012 |006d: invoke-direct {v0, v6, v2, v1}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ +437424: 5461 635f |0070: iget-object v1, v6, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ +437428: 6e20 c05a 0100 |0072: invoke-virtual {v1, v0}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +43742e: 0e00 |0075: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=175 │ │ 0x0005 line=178 │ │ 0x0009 line=179 │ │ 0x0014 line=181 │ │ 0x001b line=192 │ │ @@ -1575251,30 +1575250,30 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 35 16-bit code units │ │ -437434: |[437434] org.purple.smoke.Steam.prepareListeners:()V │ │ -437444: 5420 5c5f |0000: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_attachmentButton:Landroid/widget/Button; // field@5f5c │ │ -437448: 3800 0a00 |0002: if-eqz v0, 000c // +000a │ │ -43744c: 2201 161b |0004: new-instance v1, Lorg/purple/smoke/Steam$1; // type@1b16 │ │ -437450: 7020 95bd 2100 |0006: invoke-direct {v1, v2}, Lorg/purple/smoke/Steam$1;.:(Lorg/purple/smoke/Steam;)V // method@bd95 │ │ -437456: 6e20 e258 1000 |0009: invoke-virtual {v0, v1}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -43745c: 5420 635f |000c: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ -437460: 2201 171b |000e: new-instance v1, Lorg/purple/smoke/Steam$2; // type@1b17 │ │ -437464: 7020 97bd 2100 |0010: invoke-direct {v1, v2}, Lorg/purple/smoke/Steam$2;.:(Lorg/purple/smoke/Steam;)V // method@bd97 │ │ -43746a: 6e20 c95a 1000 |0013: invoke-virtual {v0, v1}, Landroid/widget/Spinner;.setOnItemSelectedListener:(Landroid/widget/AdapterView$OnItemSelectedListener;)V // method@5ac9 │ │ -437470: 5420 675f |0016: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_sendButton:Landroid/widget/Button; // field@5f67 │ │ -437474: 3800 0a00 |0018: if-eqz v0, 0022 // +000a │ │ -437478: 2201 181b |001a: new-instance v1, Lorg/purple/smoke/Steam$3; // type@1b18 │ │ -43747c: 7020 9abd 2100 |001c: invoke-direct {v1, v2}, Lorg/purple/smoke/Steam$3;.:(Lorg/purple/smoke/Steam;)V // method@bd9a │ │ -437482: 6e20 e258 1000 |001f: invoke-virtual {v0, v1}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ -437488: 0e00 |0022: return-void │ │ +437430: |[437430] org.purple.smoke.Steam.prepareListeners:()V │ │ +437440: 5420 5c5f |0000: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_attachmentButton:Landroid/widget/Button; // field@5f5c │ │ +437444: 3800 0a00 |0002: if-eqz v0, 000c // +000a │ │ +437448: 2201 161b |0004: new-instance v1, Lorg/purple/smoke/Steam$1; // type@1b16 │ │ +43744c: 7020 95bd 2100 |0006: invoke-direct {v1, v2}, Lorg/purple/smoke/Steam$1;.:(Lorg/purple/smoke/Steam;)V // method@bd95 │ │ +437452: 6e20 e258 1000 |0009: invoke-virtual {v0, v1}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +437458: 5420 635f |000c: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ +43745c: 2201 171b |000e: new-instance v1, Lorg/purple/smoke/Steam$2; // type@1b17 │ │ +437460: 7020 97bd 2100 |0010: invoke-direct {v1, v2}, Lorg/purple/smoke/Steam$2;.:(Lorg/purple/smoke/Steam;)V // method@bd97 │ │ +437466: 6e20 c95a 1000 |0013: invoke-virtual {v0, v1}, Landroid/widget/Spinner;.setOnItemSelectedListener:(Landroid/widget/AdapterView$OnItemSelectedListener;)V // method@5ac9 │ │ +43746c: 5420 675f |0016: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_sendButton:Landroid/widget/Button; // field@5f67 │ │ +437470: 3800 0a00 |0018: if-eqz v0, 0022 // +000a │ │ +437474: 2201 181b |001a: new-instance v1, Lorg/purple/smoke/Steam$3; // type@1b18 │ │ +437478: 7020 9abd 2100 |001c: invoke-direct {v1, v2}, Lorg/purple/smoke/Steam$3;.:(Lorg/purple/smoke/Steam;)V // method@bd9a │ │ +43747e: 6e20 e258 1000 |001f: invoke-virtual {v0, v1}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@58e2 │ │ +437484: 0e00 |0022: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=211 │ │ 0x0004 line=212 │ │ 0x000c line=223 │ │ 0x0013 line=224 │ │ 0x0016 line=242 │ │ @@ -1575287,27 +1575286,27 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 7 │ │ insns size : 25 16-bit code units │ │ -43748c: |[43748c] org.purple.smoke.Steam.prepareSchedulers:()V │ │ -43749c: 5480 685f |0000: iget-object v0, v8, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ -4374a0: 3900 1600 |0002: if-nez v0, 0018 // +0016 │ │ -4374a4: 7100 c860 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c8 │ │ -4374aa: 0c01 |0007: move-result-object v1 │ │ -4374ac: 5b81 685f |0008: iput-object v1, v8, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ -4374b0: 2202 1a1b |000a: new-instance v2, Lorg/purple/smoke/Steam$4; // type@1b1a │ │ -4374b4: 7020 9ebd 8200 |000c: invoke-direct {v2, v8}, Lorg/purple/smoke/Steam$4;.:(Lorg/purple/smoke/Steam;)V // method@bd9e │ │ -4374ba: 1603 0000 |000f: const-wide/16 v3, #int 0 // #0 │ │ -4374be: 1605 dc05 |0011: const-wide/16 v5, #int 1500 // #5dc │ │ -4374c2: 6207 ef2c |0013: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ -4374c6: 7807 d060 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@60d0 │ │ -4374cc: 0e00 |0018: return-void │ │ +437488: |[437488] org.purple.smoke.Steam.prepareSchedulers:()V │ │ +437498: 5480 685f |0000: iget-object v0, v8, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ +43749c: 3900 1600 |0002: if-nez v0, 0018 // +0016 │ │ +4374a0: 7100 c860 0000 |0004: invoke-static {}, Ljava/util/concurrent/Executors;.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService; // method@60c8 │ │ +4374a6: 0c01 |0007: move-result-object v1 │ │ +4374a8: 5b81 685f |0008: iput-object v1, v8, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ +4374ac: 2202 1a1b |000a: new-instance v2, Lorg/purple/smoke/Steam$4; // type@1b1a │ │ +4374b0: 7020 9ebd 8200 |000c: invoke-direct {v2, v8}, Lorg/purple/smoke/Steam$4;.:(Lorg/purple/smoke/Steam;)V // method@bd9e │ │ +4374b6: 1603 0000 |000f: const-wide/16 v3, #int 0 // #0 │ │ +4374ba: 1605 dc05 |0011: const-wide/16 v5, #int 1500 // #5dc │ │ +4374be: 6207 ef2c |0013: sget-object v7, Ljava/util/concurrent/TimeUnit;.MILLISECONDS:Ljava/util/concurrent/TimeUnit; // field@2cef │ │ +4374c2: 7807 d060 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@60d0 │ │ +4374c8: 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; │ │ @@ -1575317,32 +1575316,32 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 38 16-bit code units │ │ -4374d0: |[4374d0] org.purple.smoke.Steam.prepareWidgets:()V │ │ -4374e0: 5420 5b5f |0000: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -4374e4: 3900 2300 |0002: if-nez v0, 0025 // +0023 │ │ -4374e8: 5420 665f |0004: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ -4374ec: 3800 1f00 |0006: if-eqz v0, 0025 // +001f │ │ -4374f0: 2200 221b |0008: new-instance v0, Lorg/purple/smoke/SteamAdapter; // type@1b22 │ │ -4374f4: 7020 e4bd 2000 |000a: invoke-direct {v0, v2}, Lorg/purple/smoke/SteamAdapter;.:(Lorg/purple/smoke/Steam;)V // method@bde4 │ │ -4374fa: 5b20 5b5f |000d: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -4374fe: 2201 1b1b |000f: new-instance v1, Lorg/purple/smoke/Steam$5; // type@1b1b │ │ -437502: 7020 a0bd 2100 |0011: invoke-direct {v1, v2}, Lorg/purple/smoke/Steam$5;.:(Lorg/purple/smoke/Steam;)V // method@bda0 │ │ -437508: 6e20 494c 1000 |0014: invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$Adapter;.registerAdapterDataObserver:(Landroid/support/v7/widget/RecyclerView$AdapterDataObserver;)V // method@4c49 │ │ -43750e: 5420 665f |0017: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ -437512: 5421 5b5f |0019: iget-object v1, v2, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -437516: 6e20 044f 1000 |001b: invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView;.setAdapter:(Landroid/support/v7/widget/RecyclerView$Adapter;)V // method@4f04 │ │ -43751c: 5420 665f |001e: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ -437520: 5421 625f |0020: iget-object v1, v2, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ -437524: 6e20 114f 1000 |0022: invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView;.setLayoutManager:(Landroid/support/v7/widget/RecyclerView$LayoutManager;)V // method@4f11 │ │ -43752a: 0e00 |0025: return-void │ │ +4374cc: |[4374cc] org.purple.smoke.Steam.prepareWidgets:()V │ │ +4374dc: 5420 5b5f |0000: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +4374e0: 3900 2300 |0002: if-nez v0, 0025 // +0023 │ │ +4374e4: 5420 665f |0004: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ +4374e8: 3800 1f00 |0006: if-eqz v0, 0025 // +001f │ │ +4374ec: 2200 221b |0008: new-instance v0, Lorg/purple/smoke/SteamAdapter; // type@1b22 │ │ +4374f0: 7020 e4bd 2000 |000a: invoke-direct {v0, v2}, Lorg/purple/smoke/SteamAdapter;.:(Lorg/purple/smoke/Steam;)V // method@bde4 │ │ +4374f6: 5b20 5b5f |000d: iput-object v0, v2, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +4374fa: 2201 1b1b |000f: new-instance v1, Lorg/purple/smoke/Steam$5; // type@1b1b │ │ +4374fe: 7020 a0bd 2100 |0011: invoke-direct {v1, v2}, Lorg/purple/smoke/Steam$5;.:(Lorg/purple/smoke/Steam;)V // method@bda0 │ │ +437504: 6e20 494c 1000 |0014: invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$Adapter;.registerAdapterDataObserver:(Landroid/support/v7/widget/RecyclerView$AdapterDataObserver;)V // method@4c49 │ │ +43750a: 5420 665f |0017: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ +43750e: 5421 5b5f |0019: iget-object v1, v2, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +437512: 6e20 044f 1000 |001b: invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView;.setAdapter:(Landroid/support/v7/widget/RecyclerView$Adapter;)V // method@4f04 │ │ +437518: 5420 665f |001e: iget-object v0, v2, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ +43751c: 5421 625f |0020: iget-object v1, v2, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ +437520: 6e20 114f 1000 |0022: invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView;.setLayoutManager:(Landroid/support/v7/widget/RecyclerView$LayoutManager;)V // method@4f11 │ │ +437526: 0e00 |0025: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=296 │ │ 0x0008 line=298 │ │ 0x000f line=299 │ │ 0x0014 line=300 │ │ 0x0017 line=318 │ │ @@ -1575355,33 +1575354,33 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 33 16-bit code units │ │ -43752c: |[43752c] org.purple.smoke.Steam.releaseResources:()V │ │ -43753c: 5450 685f |0000: iget-object v0, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ -437540: 3800 1e00 |0002: if-eqz v0, 0020 // +001e │ │ -437544: 7210 d160 0000 |0004: invoke-interface {v0}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60d1 │ │ -43754a: 1200 |0007: const/4 v0, #int 0 // #0 │ │ -43754c: 5451 685f |0008: iget-object v1, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ -437550: 1602 0500 |000a: const-wide/16 v2, #int 5 // #5 │ │ -437554: 6204 f22c |000c: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ -437558: 7240 ce60 2143 |000e: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60ce │ │ -43755e: 0a01 |0011: move-result v1 │ │ -437560: 3901 0c00 |0012: if-nez v1, 001e // +000c │ │ -437564: 5451 685f |0014: iget-object v1, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ -437568: 7210 d260 0100 |0016: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d2 │ │ -43756e: 2805 |0019: goto 001e // +0005 │ │ -437570: 0d01 |001a: move-exception v1 │ │ -437572: 5b50 685f |001b: iput-object v0, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ -437576: 2701 |001d: throw v1 │ │ -437578: 5b50 685f |001e: iput-object v0, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ -43757c: 0e00 |0020: return-void │ │ +437528: |[437528] org.purple.smoke.Steam.releaseResources:()V │ │ +437538: 5450 685f |0000: iget-object v0, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ +43753c: 3800 1e00 |0002: if-eqz v0, 0020 // +001e │ │ +437540: 7210 d160 0000 |0004: invoke-interface {v0}, Ljava/util/concurrent/ScheduledExecutorService;.shutdown:()V // method@60d1 │ │ +437546: 1200 |0007: const/4 v0, #int 0 // #0 │ │ +437548: 5451 685f |0008: iget-object v1, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ +43754c: 1602 0500 |000a: const-wide/16 v2, #int 5 // #5 │ │ +437550: 6204 f22c |000c: sget-object v4, Ljava/util/concurrent/TimeUnit;.SECONDS:Ljava/util/concurrent/TimeUnit; // field@2cf2 │ │ +437554: 7240 ce60 2143 |000e: invoke-interface {v1, v2, v3, v4}, Ljava/util/concurrent/ScheduledExecutorService;.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z // method@60ce │ │ +43755a: 0a01 |0011: move-result v1 │ │ +43755c: 3901 0c00 |0012: if-nez v1, 001e // +000c │ │ +437560: 5451 685f |0014: iget-object v1, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ +437564: 7210 d260 0100 |0016: invoke-interface {v1}, Ljava/util/concurrent/ScheduledExecutorService;.shutdownNow:()Ljava/util/List; // method@60d2 │ │ +43756a: 2805 |0019: goto 001e // +0005 │ │ +43756c: 0d01 |001a: move-exception v1 │ │ +43756e: 5b50 685f |001b: iput-object v0, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ +437572: 2701 |001d: throw v1 │ │ +437574: 5b50 685f |001e: iput-object v0, v5, Lorg/purple/smoke/Steam;.m_statusScheduler:Ljava/util/concurrent/ScheduledExecutorService; // field@5f68 │ │ +437578: 0e00 |0020: return-void │ │ catches : 2 │ │ 0x0004 - 0x0007 │ │ Ljava/lang/Exception; -> 0x0007 │ │ 0x0008 - 0x0019 │ │ Ljava/lang/Exception; -> 0x001e │ │ -> 0x001a │ │ positions : │ │ @@ -1575401,51 +1575400,51 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 73 16-bit code units │ │ -43759c: |[43759c] org.purple.smoke.Steam.saveSteam:()V │ │ -4375ac: 5440 5e5f |0000: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ -4375b0: 6e10 1c5b 0000 |0002: invoke-virtual {v0}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ -4375b6: 0c00 |0005: move-result-object v0 │ │ -4375b8: 7210 045c 0000 |0006: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -4375be: 0c00 |0009: move-result-object v0 │ │ -4375c0: 6e10 d35c 0000 |000a: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ -4375c6: 0c01 |000d: move-result-object v1 │ │ -4375c8: 6e10 c35c 0100 |000e: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -4375ce: 0a01 |0011: move-result v1 │ │ -4375d0: 3801 0300 |0012: if-eqz v1, 0015 // +0003 │ │ -4375d4: 0e00 |0014: return-void │ │ -4375d6: 2201 281b |0015: new-instance v1, Lorg/purple/smoke/SteamElement; // type@1b28 │ │ -4375da: 5442 5a5f |0017: iget-object v2, v4, Lorg/purple/smoke/Steam;.m_absoluteFileName:Ljava/lang/String; // field@5f5a │ │ -4375de: 5443 615f |0019: iget-object v3, v4, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ -4375e2: 6e10 ba5a 0300 |001b: invoke-virtual {v3}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -4375e8: 0c03 |001e: move-result-object v3 │ │ -4375ea: 6e10 965c 0300 |001f: invoke-virtual {v3}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -4375f0: 0c03 |0022: move-result-object v3 │ │ -4375f2: 7040 07be 0132 |0023: invoke-direct {v1, v0, v2, v3}, Lorg/purple/smoke/SteamElement;.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V // method@be07 │ │ -4375f8: 5440 635f |0026: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ -4375fc: 6e10 ba5a 0000 |0028: invoke-virtual {v0}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ -437602: 0c00 |002b: move-result-object v0 │ │ -437604: 6e10 965c 0000 |002c: invoke-virtual {v0}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ -43760a: 0c00 |002f: move-result-object v0 │ │ -43760c: 5b10 965f |0030: iput-object v0, v1, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ -437610: 1a00 0000 |0032: const-string v0, "" // string@0000 │ │ -437614: 5b40 5a5f |0034: iput-object v0, v4, Lorg/purple/smoke/Steam;.m_absoluteFileName:Ljava/lang/String; // field@5f5a │ │ -437618: 5442 5d5f |0036: iget-object v2, v4, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -43761c: 6203 695f |0038: sget-object v3, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ -437620: 6e30 40ba 3201 |003a: invoke-virtual {v2, v3, v1}, Lorg/purple/smoke/Database;.writeSteam:(Lorg/purple/smoke/Cryptography;Lorg/purple/smoke/SteamElement;)V // method@ba40 │ │ -437626: 5441 5e5f |003d: iget-object v1, v4, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ -43762a: 6e20 495b 0100 |003f: invoke-virtual {v1, v0}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -437630: 5440 635f |0042: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ -437634: 1201 |0044: const/4 v1, #int 0 // #0 │ │ -437636: 6e20 cc5a 1000 |0045: invoke-virtual {v0, v1}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -43763c: 0e00 |0048: return-void │ │ +437598: |[437598] org.purple.smoke.Steam.saveSteam:()V │ │ +4375a8: 5440 5e5f |0000: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ +4375ac: 6e10 1c5b 0000 |0002: invoke-virtual {v0}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@5b1c │ │ +4375b2: 0c00 |0005: move-result-object v0 │ │ +4375b4: 7210 045c 0000 |0006: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +4375ba: 0c00 |0009: move-result-object v0 │ │ +4375bc: 6e10 d35c 0000 |000a: invoke-virtual {v0}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@5cd3 │ │ +4375c2: 0c01 |000d: move-result-object v1 │ │ +4375c4: 6e10 c35c 0100 |000e: invoke-virtual {v1}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +4375ca: 0a01 |0011: move-result v1 │ │ +4375cc: 3801 0300 |0012: if-eqz v1, 0015 // +0003 │ │ +4375d0: 0e00 |0014: return-void │ │ +4375d2: 2201 281b |0015: new-instance v1, Lorg/purple/smoke/SteamElement; // type@1b28 │ │ +4375d6: 5442 5a5f |0017: iget-object v2, v4, Lorg/purple/smoke/Steam;.m_absoluteFileName:Ljava/lang/String; // field@5f5a │ │ +4375da: 5443 615f |0019: iget-object v3, v4, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ +4375de: 6e10 ba5a 0300 |001b: invoke-virtual {v3}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +4375e4: 0c03 |001e: move-result-object v3 │ │ +4375e6: 6e10 965c 0300 |001f: invoke-virtual {v3}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +4375ec: 0c03 |0022: move-result-object v3 │ │ +4375ee: 7040 07be 0132 |0023: invoke-direct {v1, v0, v2, v3}, Lorg/purple/smoke/SteamElement;.:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V // method@be07 │ │ +4375f4: 5440 635f |0026: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ +4375f8: 6e10 ba5a 0000 |0028: invoke-virtual {v0}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@5aba │ │ +4375fe: 0c00 |002b: move-result-object v0 │ │ +437600: 6e10 965c 0000 |002c: invoke-virtual {v0}, Ljava/lang/Object;.toString:()Ljava/lang/String; // method@5c96 │ │ +437606: 0c00 |002f: move-result-object v0 │ │ +437608: 5b10 965f |0030: iput-object v0, v1, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ +43760c: 1a00 0000 |0032: const-string v0, "" // string@0000 │ │ +437610: 5b40 5a5f |0034: iput-object v0, v4, Lorg/purple/smoke/Steam;.m_absoluteFileName:Ljava/lang/String; // field@5f5a │ │ +437614: 5442 5d5f |0036: iget-object v2, v4, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +437618: 6203 695f |0038: sget-object v3, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ +43761c: 6e30 40ba 3201 |003a: invoke-virtual {v2, v3, v1}, Lorg/purple/smoke/Database;.writeSteam:(Lorg/purple/smoke/Cryptography;Lorg/purple/smoke/SteamElement;)V // method@ba40 │ │ +437622: 5441 5e5f |003d: iget-object v1, v4, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ +437626: 6e20 495b 0100 |003f: invoke-virtual {v1, v0}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +43762c: 5440 635f |0042: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ +437630: 1201 |0044: const/4 v1, #int 0 // #0 │ │ +437632: 6e20 cc5a 1000 |0045: invoke-virtual {v0, v1}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +437638: 0e00 |0048: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=353 │ │ 0x000a line=355 │ │ 0x0015 line=358 │ │ 0x001b line=361 │ │ 0x0026 line=363 │ │ @@ -1575462,21 +1575461,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -437640: |[437640] org.purple.smoke.Steam.showChatActivity:()V │ │ -437650: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -437654: 1c01 5a1a |0002: const-class v1, Lorg/purple/smoke/Chat; // type@1a5a │ │ -437658: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -43765e: 6e20 debd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdde │ │ -437664: 6e10 babd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdba │ │ -43766a: 0e00 |000d: return-void │ │ +43763c: |[43763c] org.purple.smoke.Steam.showChatActivity:()V │ │ +43764c: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +437650: 1c01 5a1a |0002: const-class v1, Lorg/purple/smoke/Chat; // type@1a5a │ │ +437654: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +43765a: 6e20 debd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdde │ │ +437660: 6e10 babd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdba │ │ +437666: 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; │ │ @@ -1575486,23 +1575485,23 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 17 16-bit code units │ │ -437690: |[437690] org.purple.smoke.Steam.showFileActivity:()V │ │ -4376a0: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -4376a4: 1a01 7d59 |0002: const-string v1, "android.intent.action.OPEN_DOCUMENT" // string@597d │ │ -4376a8: 7020 a001 1000 |0004: invoke-direct {v0, v1}, Landroid/content/Intent;.:(Ljava/lang/String;)V // method@01a0 │ │ -4376ae: 1a01 2604 |0007: const-string v1, "*/*" // string@0426 │ │ -4376b2: 6e20 ce01 1000 |0009: invoke-virtual {v0, v1}, Landroid/content/Intent;.setType:(Ljava/lang/String;)Landroid/content/Intent; // method@01ce │ │ -4376b8: 1201 |000c: const/4 v1, #int 0 // #0 │ │ -4376ba: 6e30 dfbd 0201 |000d: invoke-virtual {v2, v0, v1}, Lorg/purple/smoke/Steam;.startActivityForResult:(Landroid/content/Intent;I)V // method@bddf │ │ -4376c0: 0e00 |0010: return-void │ │ +43768c: |[43768c] org.purple.smoke.Steam.showFileActivity:()V │ │ +43769c: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +4376a0: 1a01 7d59 |0002: const-string v1, "android.intent.action.OPEN_DOCUMENT" // string@597d │ │ +4376a4: 7020 a001 1000 |0004: invoke-direct {v0, v1}, Landroid/content/Intent;.:(Ljava/lang/String;)V // method@01a0 │ │ +4376aa: 1a01 2604 |0007: const-string v1, "*/*" // string@0426 │ │ +4376ae: 6e20 ce01 1000 |0009: invoke-virtual {v0, v1}, Landroid/content/Intent;.setType:(Ljava/lang/String;)Landroid/content/Intent; // method@01ce │ │ +4376b4: 1201 |000c: const/4 v1, #int 0 // #0 │ │ +4376b6: 6e30 dfbd 0201 |000d: invoke-virtual {v2, v0, v1}, Lorg/purple/smoke/Steam;.startActivityForResult:(Landroid/content/Intent;I)V // method@bddf │ │ +4376bc: 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; │ │ @@ -1575512,21 +1575511,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -4376c4: |[4376c4] org.purple.smoke.Steam.showFireActivity:()V │ │ -4376d4: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -4376d8: 1c01 751a |0002: const-class v1, Lorg/purple/smoke/Fire; // type@1a75 │ │ -4376dc: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -4376e2: 6e20 debd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdde │ │ -4376e8: 6e10 babd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdba │ │ -4376ee: 0e00 |000d: return-void │ │ +4376c0: |[4376c0] org.purple.smoke.Steam.showFireActivity:()V │ │ +4376d0: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +4376d4: 1c01 751a |0002: const-class v1, Lorg/purple/smoke/Fire; // type@1a75 │ │ +4376d8: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +4376de: 6e20 debd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdde │ │ +4376e4: 6e10 babd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdba │ │ +4376ea: 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; │ │ @@ -1575536,21 +1575535,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -4376f0: |[4376f0] org.purple.smoke.Steam.showMemberChatActivity:()V │ │ -437700: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -437704: 1c01 a61a |0002: const-class v1, Lorg/purple/smoke/MemberChat; // type@1aa6 │ │ -437708: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -43770e: 6e20 debd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdde │ │ -437714: 6e10 babd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdba │ │ -43771a: 0e00 |000d: return-void │ │ +4376ec: |[4376ec] org.purple.smoke.Steam.showMemberChatActivity:()V │ │ +4376fc: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +437700: 1c01 a61a |0002: const-class v1, Lorg/purple/smoke/MemberChat; // type@1aa6 │ │ +437704: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +43770a: 6e20 debd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdde │ │ +437710: 6e10 babd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdba │ │ +437716: 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; │ │ @@ -1575560,21 +1575559,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -43771c: |[43771c] org.purple.smoke.Steam.showSettingsActivity:()V │ │ -43772c: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -437730: 1c01 0a1b |0002: const-class v1, Lorg/purple/smoke/Settings; // type@1b0a │ │ -437734: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -43773a: 6e20 debd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdde │ │ -437740: 6e10 babd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdba │ │ -437746: 0e00 |000d: return-void │ │ +437718: |[437718] org.purple.smoke.Steam.showSettingsActivity:()V │ │ +437728: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +43772c: 1c01 0a1b |0002: const-class v1, Lorg/purple/smoke/Settings; // type@1b0a │ │ +437730: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +437736: 6e20 debd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdde │ │ +43773c: 6e10 babd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdba │ │ +437742: 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; │ │ @@ -1575584,21 +1575583,21 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 14 16-bit code units │ │ -437748: |[437748] org.purple.smoke.Steam.showSmokescreenActivity:()V │ │ -437758: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -43775c: 1c01 131b |0002: const-class v1, Lorg/purple/smoke/Smokescreen; // type@1b13 │ │ -437760: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ -437766: 6e20 debd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdde │ │ -43776c: 6e10 babd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdba │ │ -437772: 0e00 |000d: return-void │ │ +437744: |[437744] org.purple.smoke.Steam.showSmokescreenActivity:()V │ │ +437754: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +437758: 1c01 131b |0002: const-class v1, Lorg/purple/smoke/Smokescreen; // type@1b13 │ │ +43775c: 7030 9e01 2001 |0004: invoke-direct {v0, v2, v1}, Landroid/content/Intent;.:(Landroid/content/Context;Ljava/lang/Class;)V // method@019e │ │ +437762: 6e20 debd 0200 |0007: invoke-virtual {v2, v0}, Lorg/purple/smoke/Steam;.startActivity:(Landroid/content/Intent;)V // method@bdde │ │ +437768: 6e10 babd 0200 |000a: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.finish:()V // method@bdba │ │ +43776e: 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; │ │ @@ -1575609,101 +1575608,101 @@ │ │ type : '(IILandroid/content/Intent;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 12 │ │ ins : 4 │ │ outs : 6 │ │ insns size : 175 16-bit code units │ │ -436e14: |[436e14] org.purple.smoke.Steam.onActivityResult:(IILandroid/content/Intent;)V │ │ -436e24: 1a00 9904 |0000: const-string v0, "." // string@0499 │ │ -436e28: 6f40 ec3c 98ba |0002: invoke-super {v8, v9, v10, v11}, Landroid/support/v7/app/AppCompatActivity;.onActivityResult:(IILandroid/content/Intent;)V // method@3cec │ │ -436e2e: 380b a900 |0005: if-eqz v11, 00ae // +00a9 │ │ -436e32: 3909 a700 |0007: if-nez v9, 00ae // +00a7 │ │ -436e36: 12f9 |0009: const/4 v9, #int -1 // #ff │ │ -436e38: 339a a400 |000a: if-ne v10, v9, 00ae // +00a4 │ │ -436e3c: 1209 |000c: const/4 v9, #int 0 // #0 │ │ -436e3e: 6e10 bcbd 0800 |000d: invoke-virtual {v8}, Lorg/purple/smoke/Steam;.getContentResolver:()Landroid/content/ContentResolver; // method@bdbc │ │ -436e44: 0c0a |0010: move-result-object v10 │ │ -436e46: 6e10 ac01 0b00 |0011: invoke-virtual {v11}, Landroid/content/Intent;.getData:()Landroid/net/Uri; // method@01ac │ │ -436e4c: 0c01 |0014: move-result-object v1 │ │ -436e4e: 6e20 5701 1a00 |0015: invoke-virtual {v10, v1}, Landroid/content/ContentResolver;.getType:(Landroid/net/Uri;)Ljava/lang/String; // method@0157 │ │ -436e54: 0c0a |0018: move-result-object v10 │ │ -436e56: 1301 2f00 |0019: const/16 v1, #int 47 // #2f │ │ -436e5a: 6e20 c45c 1a00 |001b: invoke-virtual {v10, v1}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ -436e60: 0a02 |001e: move-result v2 │ │ -436e62: 3d02 0c00 |001f: if-lez v2, 002b // +000c │ │ -436e66: 6e20 c45c 1a00 |0021: invoke-virtual {v10, v1}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ -436e6c: 0a01 |0024: move-result v1 │ │ -436e6e: d801 0101 |0025: add-int/lit8 v1, v1, #int 1 // #01 │ │ -436e72: 6e20 cc5c 1a00 |0027: invoke-virtual {v10, v1}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ -436e78: 0c0a |002a: move-result-object v10 │ │ -436e7a: 2201 f10a |002b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -436e7e: 7010 ee5c 0100 |002d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -436e84: 6e10 ac01 0b00 |0030: invoke-virtual {v11}, Landroid/content/Intent;.getData:()Landroid/net/Uri; // method@01ac │ │ -436e8a: 0c02 |0033: move-result-object v2 │ │ -436e8c: 6e10 ad04 0200 |0034: invoke-virtual {v2}, Landroid/net/Uri;.toString:()Ljava/lang/String; // method@04ad │ │ -436e92: 0c02 |0037: move-result-object v2 │ │ -436e94: 6e20 f95c 2100 |0038: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -436e9a: 6e20 f95c 0100 |003b: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -436ea0: 6e20 f95c a100 |003e: invoke-virtual {v1, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -436ea6: 6e10 035d 0100 |0041: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -436eac: 0c01 |0044: move-result-object v1 │ │ -436eae: 5b81 5a5f |0045: iput-object v1, v8, Lorg/purple/smoke/Steam;.m_absoluteFileName:Ljava/lang/String; // field@5f5a │ │ -436eb2: 6e10 bcbd 0800 |0047: invoke-virtual {v8}, Lorg/purple/smoke/Steam;.getContentResolver:()Landroid/content/ContentResolver; // method@bdbc │ │ -436eb8: 0c02 |004a: move-result-object v2 │ │ -436eba: 6e10 ac01 0b00 |004b: invoke-virtual {v11}, Landroid/content/Intent;.getData:()Landroid/net/Uri; // method@01ac │ │ -436ec0: 0c03 |004e: move-result-object v3 │ │ -436ec2: 1204 |004f: const/4 v4, #int 0 // #0 │ │ -436ec4: 1205 |0050: const/4 v5, #int 0 // #0 │ │ -436ec6: 1206 |0051: const/4 v6, #int 0 // #0 │ │ -436ec8: 1207 |0052: const/4 v7, #int 0 // #0 │ │ -436eca: 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 │ │ -436ed0: 0c09 |0056: move-result-object v9 │ │ -436ed2: 3809 3200 |0057: if-eqz v9, 0089 // +0032 │ │ -436ed6: 7210 6402 0900 |0059: invoke-interface {v9}, Landroid/database/Cursor;.moveToFirst:()Z // method@0264 │ │ -436edc: 0a0b |005c: move-result v11 │ │ -436ede: 380b 2c00 |005d: if-eqz v11, 0089 // +002c │ │ -436ee2: 1a0b ea55 |005f: const-string v11, "_display_name" // string@55ea │ │ -436ee6: 7220 5802 b900 |0061: invoke-interface {v9, v11}, Landroid/database/Cursor;.getColumnIndex:(Ljava/lang/String;)I // method@0258 │ │ -436eec: 0a0b |0064: move-result v11 │ │ -436eee: 7220 6002 b900 |0065: invoke-interface {v9, v11}, Landroid/database/Cursor;.getString:(I)Ljava/lang/String; // method@0260 │ │ -436ef4: 0c0b |0068: move-result-object v11 │ │ -436ef6: 6e10 c35c 0b00 |0069: invoke-virtual {v11}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ -436efc: 0a01 |006c: move-result v1 │ │ -436efe: 3801 1700 |006d: if-eqz v1, 0084 // +0017 │ │ -436f02: 548b 5e5f |006f: iget-object v11, v8, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ -436f06: 2201 f10a |0071: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -436f0a: 7010 ee5c 0100 |0073: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -436f10: 6e20 f95c 0100 |0076: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -436f16: 6e20 f95c a100 |0079: invoke-virtual {v1, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -436f1c: 6e10 035d 0100 |007c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -436f22: 0c01 |007f: move-result-object v1 │ │ -436f24: 6e20 495b 1b00 |0080: invoke-virtual {v11, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -436f2a: 2806 |0083: goto 0089 // +0006 │ │ -436f2c: 5481 5e5f |0084: iget-object v1, v8, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ -436f30: 6e20 495b b100 |0086: invoke-virtual {v1, v11}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -436f36: 3809 2500 |0089: if-eqz v9, 00ae // +0025 │ │ -436f3a: 7210 5602 0900 |008b: invoke-interface {v9}, Landroid/database/Cursor;.close:()V // method@0256 │ │ -436f40: 2820 |008e: goto 00ae // +0020 │ │ -436f42: 0d0a |008f: move-exception v10 │ │ -436f44: 2818 |0090: goto 00a8 // +0018 │ │ -436f46: 548b 5e5f |0091: iget-object v11, v8, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ -436f4a: 2201 f10a |0093: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -436f4e: 7010 ee5c 0100 |0095: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -436f54: 6e20 f95c 0100 |0098: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -436f5a: 6e20 f95c a100 |009b: invoke-virtual {v1, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -436f60: 6e10 035d 0100 |009e: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -436f66: 0c0a |00a1: move-result-object v10 │ │ -436f68: 6e20 495b ab00 |00a2: invoke-virtual {v11, v10}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -436f6e: 3809 0900 |00a5: if-eqz v9, 00ae // +0009 │ │ -436f72: 28e4 |00a7: goto 008b // -001c │ │ -436f74: 3809 0500 |00a8: if-eqz v9, 00ad // +0005 │ │ -436f78: 7210 5602 0900 |00aa: invoke-interface {v9}, Landroid/database/Cursor;.close:()V // method@0256 │ │ -436f7e: 270a |00ad: throw v10 │ │ -436f80: 0e00 |00ae: return-void │ │ +436e10: |[436e10] org.purple.smoke.Steam.onActivityResult:(IILandroid/content/Intent;)V │ │ +436e20: 1a00 9904 |0000: const-string v0, "." // string@0499 │ │ +436e24: 6f40 ec3c 98ba |0002: invoke-super {v8, v9, v10, v11}, Landroid/support/v7/app/AppCompatActivity;.onActivityResult:(IILandroid/content/Intent;)V // method@3cec │ │ +436e2a: 380b a900 |0005: if-eqz v11, 00ae // +00a9 │ │ +436e2e: 3909 a700 |0007: if-nez v9, 00ae // +00a7 │ │ +436e32: 12f9 |0009: const/4 v9, #int -1 // #ff │ │ +436e34: 339a a400 |000a: if-ne v10, v9, 00ae // +00a4 │ │ +436e38: 1209 |000c: const/4 v9, #int 0 // #0 │ │ +436e3a: 6e10 bcbd 0800 |000d: invoke-virtual {v8}, Lorg/purple/smoke/Steam;.getContentResolver:()Landroid/content/ContentResolver; // method@bdbc │ │ +436e40: 0c0a |0010: move-result-object v10 │ │ +436e42: 6e10 ac01 0b00 |0011: invoke-virtual {v11}, Landroid/content/Intent;.getData:()Landroid/net/Uri; // method@01ac │ │ +436e48: 0c01 |0014: move-result-object v1 │ │ +436e4a: 6e20 5701 1a00 |0015: invoke-virtual {v10, v1}, Landroid/content/ContentResolver;.getType:(Landroid/net/Uri;)Ljava/lang/String; // method@0157 │ │ +436e50: 0c0a |0018: move-result-object v10 │ │ +436e52: 1301 2f00 |0019: const/16 v1, #int 47 // #2f │ │ +436e56: 6e20 c45c 1a00 |001b: invoke-virtual {v10, v1}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ +436e5c: 0a02 |001e: move-result v2 │ │ +436e5e: 3d02 0c00 |001f: if-lez v2, 002b // +000c │ │ +436e62: 6e20 c45c 1a00 |0021: invoke-virtual {v10, v1}, Ljava/lang/String;.lastIndexOf:(I)I // method@5cc4 │ │ +436e68: 0a01 |0024: move-result v1 │ │ +436e6a: d801 0101 |0025: add-int/lit8 v1, v1, #int 1 // #01 │ │ +436e6e: 6e20 cc5c 1a00 |0027: invoke-virtual {v10, v1}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ +436e74: 0c0a |002a: move-result-object v10 │ │ +436e76: 2201 f10a |002b: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +436e7a: 7010 ee5c 0100 |002d: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +436e80: 6e10 ac01 0b00 |0030: invoke-virtual {v11}, Landroid/content/Intent;.getData:()Landroid/net/Uri; // method@01ac │ │ +436e86: 0c02 |0033: move-result-object v2 │ │ +436e88: 6e10 ad04 0200 |0034: invoke-virtual {v2}, Landroid/net/Uri;.toString:()Ljava/lang/String; // method@04ad │ │ +436e8e: 0c02 |0037: move-result-object v2 │ │ +436e90: 6e20 f95c 2100 |0038: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +436e96: 6e20 f95c 0100 |003b: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +436e9c: 6e20 f95c a100 |003e: invoke-virtual {v1, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +436ea2: 6e10 035d 0100 |0041: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +436ea8: 0c01 |0044: move-result-object v1 │ │ +436eaa: 5b81 5a5f |0045: iput-object v1, v8, Lorg/purple/smoke/Steam;.m_absoluteFileName:Ljava/lang/String; // field@5f5a │ │ +436eae: 6e10 bcbd 0800 |0047: invoke-virtual {v8}, Lorg/purple/smoke/Steam;.getContentResolver:()Landroid/content/ContentResolver; // method@bdbc │ │ +436eb4: 0c02 |004a: move-result-object v2 │ │ +436eb6: 6e10 ac01 0b00 |004b: invoke-virtual {v11}, Landroid/content/Intent;.getData:()Landroid/net/Uri; // method@01ac │ │ +436ebc: 0c03 |004e: move-result-object v3 │ │ +436ebe: 1204 |004f: const/4 v4, #int 0 // #0 │ │ +436ec0: 1205 |0050: const/4 v5, #int 0 // #0 │ │ +436ec2: 1206 |0051: const/4 v6, #int 0 // #0 │ │ +436ec4: 1207 |0052: const/4 v7, #int 0 // #0 │ │ +436ec6: 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 │ │ +436ecc: 0c09 |0056: move-result-object v9 │ │ +436ece: 3809 3200 |0057: if-eqz v9, 0089 // +0032 │ │ +436ed2: 7210 6402 0900 |0059: invoke-interface {v9}, Landroid/database/Cursor;.moveToFirst:()Z // method@0264 │ │ +436ed8: 0a0b |005c: move-result v11 │ │ +436eda: 380b 2c00 |005d: if-eqz v11, 0089 // +002c │ │ +436ede: 1a0b ea55 |005f: const-string v11, "_display_name" // string@55ea │ │ +436ee2: 7220 5802 b900 |0061: invoke-interface {v9, v11}, Landroid/database/Cursor;.getColumnIndex:(Ljava/lang/String;)I // method@0258 │ │ +436ee8: 0a0b |0064: move-result v11 │ │ +436eea: 7220 6002 b900 |0065: invoke-interface {v9, v11}, Landroid/database/Cursor;.getString:(I)Ljava/lang/String; // method@0260 │ │ +436ef0: 0c0b |0068: move-result-object v11 │ │ +436ef2: 6e10 c35c 0b00 |0069: invoke-virtual {v11}, Ljava/lang/String;.isEmpty:()Z // method@5cc3 │ │ +436ef8: 0a01 |006c: move-result v1 │ │ +436efa: 3801 1700 |006d: if-eqz v1, 0084 // +0017 │ │ +436efe: 548b 5e5f |006f: iget-object v11, v8, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ +436f02: 2201 f10a |0071: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +436f06: 7010 ee5c 0100 |0073: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +436f0c: 6e20 f95c 0100 |0076: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +436f12: 6e20 f95c a100 |0079: invoke-virtual {v1, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +436f18: 6e10 035d 0100 |007c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +436f1e: 0c01 |007f: move-result-object v1 │ │ +436f20: 6e20 495b 1b00 |0080: invoke-virtual {v11, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +436f26: 2806 |0083: goto 0089 // +0006 │ │ +436f28: 5481 5e5f |0084: iget-object v1, v8, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ +436f2c: 6e20 495b b100 |0086: invoke-virtual {v1, v11}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +436f32: 3809 2500 |0089: if-eqz v9, 00ae // +0025 │ │ +436f36: 7210 5602 0900 |008b: invoke-interface {v9}, Landroid/database/Cursor;.close:()V // method@0256 │ │ +436f3c: 2820 |008e: goto 00ae // +0020 │ │ +436f3e: 0d0a |008f: move-exception v10 │ │ +436f40: 2818 |0090: goto 00a8 // +0018 │ │ +436f42: 548b 5e5f |0091: iget-object v11, v8, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ +436f46: 2201 f10a |0093: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +436f4a: 7010 ee5c 0100 |0095: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +436f50: 6e20 f95c 0100 |0098: invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +436f56: 6e20 f95c a100 |009b: invoke-virtual {v1, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +436f5c: 6e10 035d 0100 |009e: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +436f62: 0c0a |00a1: move-result-object v10 │ │ +436f64: 6e20 495b ab00 |00a2: invoke-virtual {v11, v10}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +436f6a: 3809 0900 |00a5: if-eqz v9, 00ae // +0009 │ │ +436f6e: 28e4 |00a7: goto 008b // -001c │ │ +436f70: 3809 0500 |00a8: if-eqz v9, 00ad // +0005 │ │ +436f74: 7210 5602 0900 |00aa: invoke-interface {v9}, Landroid/database/Cursor;.close:()V // method@0256 │ │ +436f7a: 270a |00ad: throw v10 │ │ +436f7c: 0e00 |00ae: return-void │ │ catches : 5 │ │ 0x000d - 0x0047 │ │ Ljava/lang/Exception; -> 0x00ae │ │ 0x0047 - 0x0089 │ │ Ljava/lang/Exception; -> 0x0091 │ │ -> 0x008f │ │ 0x008b - 0x008e │ │ @@ -1575741,24 +1575740,24 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 20 16-bit code units │ │ -436fbc: |[436fbc] org.purple.smoke.Steam.onBackPressed:()V │ │ -436fcc: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ -436fd0: 7010 9d01 0000 |0002: invoke-direct {v0}, Landroid/content/Intent;.:()V // method@019d │ │ -436fd6: 1a01 0047 |0005: const-string v1, "Result" // string@4700 │ │ -436fda: 1a02 9e17 |0007: const-string v2, "Done" // string@179e │ │ -436fde: 6e30 c201 1002 |0009: invoke-virtual {v0, v1, v2}, Landroid/content/Intent;.putExtra:(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent; // method@01c2 │ │ -436fe4: 12f1 |000c: const/4 v1, #int -1 // #ff │ │ -436fe6: 6e30 d6bd 1300 |000d: invoke-virtual {v3, v1, v0}, Lorg/purple/smoke/Steam;.setResult:(ILandroid/content/Intent;)V // method@bdd6 │ │ -436fec: 6f10 ee3c 0300 |0010: invoke-super {v3}, Landroid/support/v7/app/AppCompatActivity;.onBackPressed:()V // method@3cee │ │ -436ff2: 0e00 |0013: return-void │ │ +436fb8: |[436fb8] org.purple.smoke.Steam.onBackPressed:()V │ │ +436fc8: 2200 4900 |0000: new-instance v0, Landroid/content/Intent; // type@0049 │ │ +436fcc: 7010 9d01 0000 |0002: invoke-direct {v0}, Landroid/content/Intent;.:()V // method@019d │ │ +436fd2: 1a01 0047 |0005: const-string v1, "Result" // string@4700 │ │ +436fd6: 1a02 9e17 |0007: const-string v2, "Done" // string@179e │ │ +436fda: 6e30 c201 1002 |0009: invoke-virtual {v0, v1, v2}, Landroid/content/Intent;.putExtra:(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent; // method@01c2 │ │ +436fe0: 12f1 |000c: const/4 v1, #int -1 // #ff │ │ +436fe2: 6e30 d6bd 1300 |000d: invoke-virtual {v3, v1, v0}, Lorg/purple/smoke/Steam;.setResult:(ILandroid/content/Intent;)V // method@bdd6 │ │ +436fe8: 6f10 ee3c 0300 |0010: invoke-super {v3}, Landroid/support/v7/app/AppCompatActivity;.onBackPressed:()V // method@3cee │ │ +436fee: 0e00 |0013: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=817 │ │ 0x0009 line=819 │ │ 0x000d line=820 │ │ 0x0010 line=821 │ │ locals : │ │ @@ -1575769,91 +1575768,91 @@ │ │ type : '(Landroid/view/MenuItem;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 11 │ │ ins : 2 │ │ outs : 7 │ │ insns size : 176 16-bit code units │ │ -436958: |[436958] org.purple.smoke.Steam.onContextItemSelected:(Landroid/view/MenuItem;)Z │ │ -436968: 390a 0400 |0000: if-nez v10, 0004 // +0004 │ │ -43696c: 120a |0002: const/4 v10, #int 0 // #0 │ │ -43696e: 0f0a |0003: return v10 │ │ -436970: 7210 6a55 0a00 |0004: invoke-interface {v10}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ -436976: 0a00 |0007: move-result v0 │ │ -436978: 7210 6c55 0a00 |0008: invoke-interface {v10}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ -43697e: 0a05 |000b: move-result v5 │ │ -436980: 220a 1c1b |000c: new-instance v10, Lorg/purple/smoke/Steam$6; // type@1b1c │ │ -436984: 7040 a3bd 9a50 |000e: invoke-direct {v10, v9, v0, v5}, Lorg/purple/smoke/Steam$6;.:(Lorg/purple/smoke/Steam;II)V // method@bda3 │ │ -43698a: 1218 |0011: const/4 v8, #int 1 // #1 │ │ -43698c: 2b00 8800 0000 |0012: packed-switch v0, 0000009a // +00000088 │ │ -436992: 2900 8400 |0015: goto/16 0099 // +0084 │ │ -436996: 549a 5d5f |0017: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -43699a: 6e20 30ba 5a00 |0019: invoke-virtual {v10, v5}, Lorg/purple/smoke/Database;.toggleSteamLockStatus:(I)V // method@ba30 │ │ -4369a0: 549a 5b5f |001c: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -4369a4: 6e10 364c 0a00 |001e: invoke-virtual {v10}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -4369aa: 2900 7800 |0021: goto/16 0099 // +0078 │ │ -4369ae: 5490 5d5f |0023: iget-object v0, v9, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -4369b2: 6201 695f |0025: sget-object v1, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ -4369b6: 12f2 |0027: const/4 v2, #int -1 // #ff │ │ -4369b8: b185 |0028: sub-int/2addr v5, v8 │ │ -4369ba: 6e40 20ba 1052 |0029: invoke-virtual {v0, v1, v2, v5}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba20 │ │ -4369c0: 0c00 |002c: move-result-object v0 │ │ -4369c2: 3800 0900 |002d: if-eqz v0, 0036 // +0009 │ │ -4369c6: 5400 965f |002f: iget-object v0, v0, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ -4369ca: 7110 00bc 0000 |0031: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.sipHashIdFromDestination:(Ljava/lang/String;)Ljava/lang/String; // method@bc00 │ │ -4369d0: 0c00 |0034: move-result-object v0 │ │ -4369d2: 2803 |0035: goto 0038 // +0003 │ │ -4369d4: 1a00 0000 |0036: const-string v0, "" // string@0000 │ │ -4369d8: 7100 74bd 0000 |0038: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -4369de: 0c01 |003b: move-result-object v1 │ │ -4369e0: 6e20 7dbd 0100 |003c: invoke-virtual {v1, v0}, Lorg/purple/smoke/State;.participantsNames:(Ljava/lang/String;)Ljava/util/ArrayList; // method@bd7d │ │ -4369e6: 0c00 |003f: move-result-object v0 │ │ -4369e8: 1a01 df44 |0040: const-string v1, "Please select the desired destination participant(s)." // string@44df │ │ -4369ec: 1a02 864c |0042: const-string v2, "Steamroll Participant Selection" // string@4c86 │ │ -4369f0: 7152 fdbb 901a |0044: invoke-static {v0, v9, v10, 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@bbfd │ │ -4369f6: 7100 74bd 0000 |0047: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -4369fc: 0c0a |004a: move-result-object v10 │ │ -4369fe: 6e10 6cbd 0a00 |004b: invoke-virtual {v10}, Lorg/purple/smoke/State;.clearSelectedSwitches:()V // method@bd6c │ │ -436a04: 284b |004e: goto 0099 // +004b │ │ -436a06: 5491 5d5f |004f: iget-object v1, v9, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436a0a: 6202 695f |0051: sget-object v2, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ -436a0e: 1606 0000 |0053: const-wide/16 v6, #int 0 // #0 │ │ -436a12: 1a03 4998 |0055: const-string v3, "rewind" // string@9849 │ │ -436a16: 1a04 cc04 |0057: const-string v4, "0.00 B / s" // string@04cc │ │ -436a1a: 7407 47ba 0100 |0059: 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@ba47 │ │ -436a20: 549a 5b5f |005c: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -436a24: 6e10 364c 0a00 |005e: invoke-virtual {v10}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -436a2a: 2838 |0061: goto 0099 // +0038 │ │ -436a2c: 549a 5d5f |0062: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436a30: 6e10 26ba 0a00 |0064: invoke-virtual {v10}, Lorg/purple/smoke/Database;.rewindAndResumeAllSteams:()V // method@ba26 │ │ -436a36: 549a 5b5f |0067: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -436a3a: 6e10 364c 0a00 |0069: invoke-virtual {v10}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -436a40: 282d |006c: goto 0099 // +002d │ │ -436a42: 549a 5d5f |006d: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436a46: 6e10 25ba 0a00 |006f: invoke-virtual {v10}, Lorg/purple/smoke/Database;.rewindAllSteams:()V // method@ba25 │ │ -436a4c: 549a 5b5f |0072: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -436a50: 6e10 364c 0a00 |0074: invoke-virtual {v10}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -436a56: 2822 |0077: goto 0099 // +0022 │ │ -436a58: 549a 5d5f |0078: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436a5c: 6e10 24ba 0a00 |007a: invoke-virtual {v10}, Lorg/purple/smoke/Database;.resumeAllSteams:()V // method@ba24 │ │ -436a62: 549a 5b5f |007d: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -436a66: 6e10 364c 0a00 |007f: invoke-virtual {v10}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -436a6c: 2817 |0082: goto 0099 // +0017 │ │ -436a6e: 549a 5d5f |0083: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436a72: 6e10 0bba 0a00 |0085: invoke-virtual {v10}, Lorg/purple/smoke/Database;.pauseAllSteams:()V // method@ba0b │ │ -436a78: 549a 5b5f |0088: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -436a7c: 6e10 364c 0a00 |008a: invoke-virtual {v10}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -436a82: 280c |008d: goto 0099 // +000c │ │ -436a84: 1a00 7c0e |008e: const-string v0, "Are you sure that you wish to delete the selected Steam?" // string@0e7c │ │ -436a88: 7130 fcbb a900 |0090: invoke-static {v9, v10, v0}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbfc │ │ -436a8e: 2806 |0093: goto 0099 // +0006 │ │ -436a90: 1a00 750e |0094: const-string v0, "Are you sure that you wish to delete all of the Steams?" // string@0e75 │ │ -436a94: 7130 fcbb a900 |0096: invoke-static {v9, v10, v0}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbfc │ │ -436a9a: 0f08 |0099: return v8 │ │ -436a9c: 0001 0900 0000 0000 8200 0000 7c00 ... |009a: packed-switch-data (22 units) │ │ +436954: |[436954] org.purple.smoke.Steam.onContextItemSelected:(Landroid/view/MenuItem;)Z │ │ +436964: 390a 0400 |0000: if-nez v10, 0004 // +0004 │ │ +436968: 120a |0002: const/4 v10, #int 0 // #0 │ │ +43696a: 0f0a |0003: return v10 │ │ +43696c: 7210 6a55 0a00 |0004: invoke-interface {v10}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ +436972: 0a00 |0007: move-result v0 │ │ +436974: 7210 6c55 0a00 |0008: invoke-interface {v10}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ +43697a: 0a05 |000b: move-result v5 │ │ +43697c: 220a 1c1b |000c: new-instance v10, Lorg/purple/smoke/Steam$6; // type@1b1c │ │ +436980: 7040 a3bd 9a50 |000e: invoke-direct {v10, v9, v0, v5}, Lorg/purple/smoke/Steam$6;.:(Lorg/purple/smoke/Steam;II)V // method@bda3 │ │ +436986: 1218 |0011: const/4 v8, #int 1 // #1 │ │ +436988: 2b00 8800 0000 |0012: packed-switch v0, 0000009a // +00000088 │ │ +43698e: 2900 8400 |0015: goto/16 0099 // +0084 │ │ +436992: 549a 5d5f |0017: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436996: 6e20 30ba 5a00 |0019: invoke-virtual {v10, v5}, Lorg/purple/smoke/Database;.toggleSteamLockStatus:(I)V // method@ba30 │ │ +43699c: 549a 5b5f |001c: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +4369a0: 6e10 364c 0a00 |001e: invoke-virtual {v10}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +4369a6: 2900 7800 |0021: goto/16 0099 // +0078 │ │ +4369aa: 5490 5d5f |0023: iget-object v0, v9, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +4369ae: 6201 695f |0025: sget-object v1, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ +4369b2: 12f2 |0027: const/4 v2, #int -1 // #ff │ │ +4369b4: b185 |0028: sub-int/2addr v5, v8 │ │ +4369b6: 6e40 20ba 1052 |0029: invoke-virtual {v0, v1, v2, v5}, Lorg/purple/smoke/Database;.readSteam:(Lorg/purple/smoke/Cryptography;II)Lorg/purple/smoke/SteamElement; // method@ba20 │ │ +4369bc: 0c00 |002c: move-result-object v0 │ │ +4369be: 3800 0900 |002d: if-eqz v0, 0036 // +0009 │ │ +4369c2: 5400 965f |002f: iget-object v0, v0, Lorg/purple/smoke/SteamElement;.m_destination:Ljava/lang/String; // field@5f96 │ │ +4369c6: 7110 00bc 0000 |0031: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.sipHashIdFromDestination:(Ljava/lang/String;)Ljava/lang/String; // method@bc00 │ │ +4369cc: 0c00 |0034: move-result-object v0 │ │ +4369ce: 2803 |0035: goto 0038 // +0003 │ │ +4369d0: 1a00 0000 |0036: const-string v0, "" // string@0000 │ │ +4369d4: 7100 74bd 0000 |0038: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +4369da: 0c01 |003b: move-result-object v1 │ │ +4369dc: 6e20 7dbd 0100 |003c: invoke-virtual {v1, v0}, Lorg/purple/smoke/State;.participantsNames:(Ljava/lang/String;)Ljava/util/ArrayList; // method@bd7d │ │ +4369e2: 0c00 |003f: move-result-object v0 │ │ +4369e4: 1a01 df44 |0040: const-string v1, "Please select the desired destination participant(s)." // string@44df │ │ +4369e8: 1a02 864c |0042: const-string v2, "Steamroll Participant Selection" // string@4c86 │ │ +4369ec: 7152 fdbb 901a |0044: invoke-static {v0, v9, v10, 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@bbfd │ │ +4369f2: 7100 74bd 0000 |0047: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +4369f8: 0c0a |004a: move-result-object v10 │ │ +4369fa: 6e10 6cbd 0a00 |004b: invoke-virtual {v10}, Lorg/purple/smoke/State;.clearSelectedSwitches:()V // method@bd6c │ │ +436a00: 284b |004e: goto 0099 // +004b │ │ +436a02: 5491 5d5f |004f: iget-object v1, v9, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436a06: 6202 695f |0051: sget-object v2, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ +436a0a: 1606 0000 |0053: const-wide/16 v6, #int 0 // #0 │ │ +436a0e: 1a03 4998 |0055: const-string v3, "rewind" // string@9849 │ │ +436a12: 1a04 cc04 |0057: const-string v4, "0.00 B / s" // string@04cc │ │ +436a16: 7407 47ba 0100 |0059: 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@ba47 │ │ +436a1c: 549a 5b5f |005c: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +436a20: 6e10 364c 0a00 |005e: invoke-virtual {v10}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +436a26: 2838 |0061: goto 0099 // +0038 │ │ +436a28: 549a 5d5f |0062: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436a2c: 6e10 26ba 0a00 |0064: invoke-virtual {v10}, Lorg/purple/smoke/Database;.rewindAndResumeAllSteams:()V // method@ba26 │ │ +436a32: 549a 5b5f |0067: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +436a36: 6e10 364c 0a00 |0069: invoke-virtual {v10}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +436a3c: 282d |006c: goto 0099 // +002d │ │ +436a3e: 549a 5d5f |006d: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436a42: 6e10 25ba 0a00 |006f: invoke-virtual {v10}, Lorg/purple/smoke/Database;.rewindAllSteams:()V // method@ba25 │ │ +436a48: 549a 5b5f |0072: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +436a4c: 6e10 364c 0a00 |0074: invoke-virtual {v10}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +436a52: 2822 |0077: goto 0099 // +0022 │ │ +436a54: 549a 5d5f |0078: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436a58: 6e10 24ba 0a00 |007a: invoke-virtual {v10}, Lorg/purple/smoke/Database;.resumeAllSteams:()V // method@ba24 │ │ +436a5e: 549a 5b5f |007d: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +436a62: 6e10 364c 0a00 |007f: invoke-virtual {v10}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +436a68: 2817 |0082: goto 0099 // +0017 │ │ +436a6a: 549a 5d5f |0083: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436a6e: 6e10 0bba 0a00 |0085: invoke-virtual {v10}, Lorg/purple/smoke/Database;.pauseAllSteams:()V // method@ba0b │ │ +436a74: 549a 5b5f |0088: iget-object v10, v9, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +436a78: 6e10 364c 0a00 |008a: invoke-virtual {v10}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +436a7e: 280c |008d: goto 0099 // +000c │ │ +436a80: 1a00 7c0e |008e: const-string v0, "Are you sure that you wish to delete the selected Steam?" // string@0e7c │ │ +436a84: 7130 fcbb a900 |0090: invoke-static {v9, v10, v0}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbfc │ │ +436a8a: 2806 |0093: goto 0099 // +0006 │ │ +436a8c: 1a00 750e |0094: const-string v0, "Are you sure that you wish to delete all of the Steams?" // string@0e75 │ │ +436a90: 7130 fcbb a900 |0096: invoke-static {v9, v10, v0}, Lorg/purple/smoke/Miscellaneous;.showPromptDialog:(Landroid/content/Context;Landroid/content/DialogInterface$OnCancelListener;Ljava/lang/String;)V // method@bbfc │ │ +436a96: 0f08 |0099: return v8 │ │ +436a98: 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 │ │ @@ -1575884,117 +1575883,117 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 7 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 231 16-bit code units │ │ -436ff4: |[436ff4] org.purple.smoke.Steam.onCreate:(Landroid/os/Bundle;)V │ │ -437004: 6f20 f23c 6500 |0000: invoke-super {v5, v6}, Landroid/support/v7/app/AppCompatActivity;.onCreate:(Landroid/os/Bundle;)V // method@3cf2 │ │ -43700a: 6e10 bbbd 0500 |0003: invoke-virtual {v5}, Lorg/purple/smoke/Steam;.getApplicationContext:()Landroid/content/Context; // method@bdbb │ │ -437010: 0c06 |0006: move-result-object v6 │ │ -437012: 7110 f4b9 0600 |0007: invoke-static {v6}, Lorg/purple/smoke/Database;.getInstance:(Landroid/content/Context;)Lorg/purple/smoke/Database; // method@b9f4 │ │ -437018: 0c06 |000a: move-result-object v6 │ │ -43701a: 5b56 5d5f |000b: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -43701e: 6200 695f |000d: sget-object v0, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ -437022: 6e20 e3b9 0600 |000f: invoke-virtual {v6, v0}, Lorg/purple/smoke/Database;.clearSteamRates:(Lorg/purple/smoke/Cryptography;)V // method@b9e3 │ │ -437028: 2206 1e1b |0012: new-instance v6, Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // type@1b1e │ │ -43702c: 7020 a6bd 5600 |0014: invoke-direct {v6, v5}, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.:(Lorg/purple/smoke/Steam;)V // method@bda6 │ │ -437032: 5b56 645f |0017: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_receiver:Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // field@5f64 │ │ -437036: 1406 2100 0a7f |0019: const v6, #float 1.83434e+38 // #7f0a0021 │ │ -43703c: 6e20 d5bd 6500 |001c: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.setContentView:(I)V // method@bdd5 │ │ -437042: 2206 1f1b |001f: new-instance v6, Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // type@1b1f │ │ -437046: 7020 a8bd 5600 |0021: invoke-direct {v6, v5}, Lorg/purple/smoke/Steam$SteamLinearLayoutManager;.:(Landroid/content/Context;)V // method@bda8 │ │ -43704c: 5b56 625f |0024: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ -437050: 1210 |0026: const/4 v0, #int 1 // #1 │ │ -437052: 6e20 aabd 0600 |0027: invoke-virtual {v6, v0}, Lorg/purple/smoke/Steam$SteamLinearLayoutManager;.setOrientation:(I)V // method@bdaa │ │ -437058: 6e10 bebd 0500 |002a: invoke-virtual {v5}, Lorg/purple/smoke/Steam;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bdbe │ │ -43705e: 0c06 |002d: move-result-object v6 │ │ -437060: 7100 2ebd 0000 |002e: invoke-static {}, Lorg/purple/smoke/Smoke;.networkStatusString:()Ljava/lang/String; // method@bd2e │ │ -437066: 0c01 |0031: move-result-object v1 │ │ -437068: 6e20 0a3c 1600 |0032: invoke-virtual {v6, v1}, Landroid/support/v7/app/ActionBar;.setSubtitle:(Ljava/lang/CharSequence;)V // method@3c0a │ │ -43706e: 6e10 bebd 0500 |0035: invoke-virtual {v5}, Lorg/purple/smoke/Steam;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bdbe │ │ -437074: 0c06 |0038: move-result-object v6 │ │ -437076: 1a01 314c |0039: const-string v1, "Smoke | Steam" // string@4c31 │ │ -43707a: 6e20 0c3c 1600 |003b: invoke-virtual {v6, v1}, Landroid/support/v7/app/ActionBar;.setTitle:(Ljava/lang/CharSequence;)V // method@3c0c │ │ -437080: 1406 2700 087f |003e: const v6, #float 1.80776e+38 // #7f080027 │ │ -437086: 6e20 b9bd 6500 |0041: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ -43708c: 0c06 |0044: move-result-object v6 │ │ -43708e: 1f06 5e0a |0045: check-cast v6, Landroid/widget/Button; // type@0a5e │ │ -437092: 5b56 5c5f |0047: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_attachmentButton:Landroid/widget/Button; // field@5f5c │ │ -437096: 1406 6b00 087f |0049: const v6, #float 1.80777e+38 // #7f08006b │ │ -43709c: 6e20 b9bd 6500 |004c: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ -4370a2: 0c06 |004f: move-result-object v6 │ │ -4370a4: 1f06 970a |0050: check-cast v6, Landroid/widget/TextView; // type@0a97 │ │ -4370a8: 5b56 5e5f |0052: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ -4370ac: 1406 5b00 087f |0054: const v6, #float 1.80777e+38 // #7f08005b │ │ -4370b2: 6e20 b9bd 6500 |0057: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ -4370b8: 0c06 |005a: move-result-object v6 │ │ -4370ba: 1f06 970a |005b: check-cast v6, Landroid/widget/TextView; // type@0a97 │ │ -4370be: 5b56 5f5f |005d: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_downloads:Landroid/widget/TextView; // field@5f5f │ │ -4370c2: 2201 f10a |005f: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ -4370c6: 7010 ee5c 0100 |0061: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ -4370cc: 1a02 9f17 |0064: const-string v2, "Downloads Directory: " // string@179f │ │ -4370d0: 6e20 f95c 2100 |0066: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4370d6: 6202 6f00 |0069: sget-object v2, Landroid/os/Environment;.DIRECTORY_DOWNLOADS:Ljava/lang/String; // field@006f │ │ -4370da: 7110 f304 0200 |006b: invoke-static {v2}, Landroid/os/Environment;.getExternalStoragePublicDirectory:(Ljava/lang/String;)Ljava/io/File; // method@04f3 │ │ -4370e0: 0c02 |006e: move-result-object v2 │ │ -4370e2: 6e10 a25b 0200 |006f: invoke-virtual {v2}, Ljava/io/File;.toString:()Ljava/lang/String; // method@5ba2 │ │ -4370e8: 0c02 |0072: move-result-object v2 │ │ -4370ea: 6e20 f95c 2100 |0073: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ -4370f0: 6e10 035d 0100 |0076: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ -4370f6: 0c01 |0079: move-result-object v1 │ │ -4370f8: 6e20 495b 1600 |007a: invoke-virtual {v6, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ -4370fe: 1406 8000 087f |007d: const v6, #float 1.80778e+38 // #7f080080 │ │ -437104: 6e20 b9bd 6500 |0080: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ -43710a: 0c06 |0083: move-result-object v6 │ │ -43710c: 1f06 970a |0084: check-cast v6, Landroid/widget/TextView; // type@0a97 │ │ -437110: 5b56 605f |0086: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_information:Landroid/widget/TextView; // field@5f60 │ │ -437114: 1406 8900 087f |0088: const v6, #float 1.80778e+38 // #7f080089 │ │ -43711a: 6e20 b9bd 6500 |008b: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ -437120: 0c06 |008e: move-result-object v6 │ │ -437122: 1f06 8b0a |008f: check-cast v6, Landroid/widget/Spinner; // type@0a8b │ │ -437126: 5b56 615f |0091: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ -43712a: 2201 5b0a |0093: new-instance v1, Landroid/widget/ArrayAdapter; // type@0a5b │ │ -43712e: 1402 0800 0901 |0095: const v2, #float 2.51629e-38 // #01090008 │ │ -437134: 1a03 ae3f |0098: const-string v3, "McEliece" // string@3fae │ │ -437138: 1a04 6b46 |009a: const-string v4, "RSA" // string@466b │ │ -43713c: 2420 a81b 4300 |009c: filled-new-array {v3, v4}, [Ljava/lang/String; // type@1ba8 │ │ -437142: 0c03 |009f: move-result-object v3 │ │ -437144: 7040 cb58 5132 |00a0: invoke-direct {v1, v5, v2, v3}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ -43714a: 6e20 c05a 1600 |00a3: invoke-virtual {v6, v1}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ -437150: 5456 615f |00a6: iget-object v6, v5, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ -437154: 1201 |00a8: const/4 v1, #int 0 // #0 │ │ -437156: 6e20 c65a 1600 |00a9: invoke-virtual {v6, v1}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ -43715c: 5456 615f |00ac: iget-object v6, v5, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ -437160: 6e20 cc5a 0600 |00ae: invoke-virtual {v6, v0}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ -437166: 1406 bf00 087f |00b1: const v6, #float 1.80779e+38 // #7f0800bf │ │ -43716c: 6e20 b9bd 6500 |00b4: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ -437172: 0c06 |00b7: move-result-object v6 │ │ -437174: 1f06 8b0a |00b8: check-cast v6, Landroid/widget/Spinner; // type@0a8b │ │ -437178: 5b56 635f |00ba: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ -43717c: 1406 d900 087f |00bc: const v6, #float 1.80779e+38 // #7f0800d9 │ │ -437182: 6e20 b9bd 6500 |00bf: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ -437188: 0c06 |00c2: move-result-object v6 │ │ -43718a: 1f06 4909 |00c3: check-cast v6, Landroid/support/v7/widget/RecyclerView; // type@0949 │ │ -43718e: 5b56 665f |00c5: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ -437192: 6e20 0d4f 0600 |00c7: invoke-virtual {v6, v0}, Landroid/support/v7/widget/RecyclerView;.setHasFixedSize:(Z)V // method@4f0d │ │ -437198: 1406 fb00 087f |00ca: const v6, #float 1.8078e+38 // #7f0800fb │ │ -43719e: 6e20 b9bd 6500 |00cd: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ -4371a4: 0c06 |00d0: move-result-object v6 │ │ -4371a6: 1f06 5e0a |00d1: check-cast v6, Landroid/widget/Button; // type@0a5e │ │ -4371aa: 5b56 675f |00d3: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_sendButton:Landroid/widget/Button; // field@5f67 │ │ -4371ae: 7010 cdbd 0500 |00d5: invoke-direct {v5}, Lorg/purple/smoke/Steam;.populateParticipants:()V // method@bdcd │ │ -4371b4: 7010 cebd 0500 |00d8: invoke-direct {v5}, Lorg/purple/smoke/Steam;.prepareListeners:()V // method@bdce │ │ -4371ba: 7010 d0bd 0500 |00db: invoke-direct {v5}, Lorg/purple/smoke/Steam;.prepareWidgets:()V // method@bdd0 │ │ -4371c0: 5456 625f |00de: iget-object v6, v5, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ -4371c4: 5450 665f |00e0: iget-object v0, v5, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ -4371c8: 1202 |00e2: const/4 v2, #int 0 // #0 │ │ -4371ca: 6e40 abbd 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@bdab │ │ -4371d0: 0e00 |00e6: return-void │ │ +436ff0: |[436ff0] org.purple.smoke.Steam.onCreate:(Landroid/os/Bundle;)V │ │ +437000: 6f20 f23c 6500 |0000: invoke-super {v5, v6}, Landroid/support/v7/app/AppCompatActivity;.onCreate:(Landroid/os/Bundle;)V // method@3cf2 │ │ +437006: 6e10 bbbd 0500 |0003: invoke-virtual {v5}, Lorg/purple/smoke/Steam;.getApplicationContext:()Landroid/content/Context; // method@bdbb │ │ +43700c: 0c06 |0006: move-result-object v6 │ │ +43700e: 7110 f4b9 0600 |0007: invoke-static {v6}, Lorg/purple/smoke/Database;.getInstance:(Landroid/content/Context;)Lorg/purple/smoke/Database; // method@b9f4 │ │ +437014: 0c06 |000a: move-result-object v6 │ │ +437016: 5b56 5d5f |000b: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +43701a: 6200 695f |000d: sget-object v0, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ +43701e: 6e20 e3b9 0600 |000f: invoke-virtual {v6, v0}, Lorg/purple/smoke/Database;.clearSteamRates:(Lorg/purple/smoke/Cryptography;)V // method@b9e3 │ │ +437024: 2206 1e1b |0012: new-instance v6, Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // type@1b1e │ │ +437028: 7020 a6bd 5600 |0014: invoke-direct {v6, v5}, Lorg/purple/smoke/Steam$SteamBroadcastReceiver;.:(Lorg/purple/smoke/Steam;)V // method@bda6 │ │ +43702e: 5b56 645f |0017: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_receiver:Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // field@5f64 │ │ +437032: 1406 2100 0a7f |0019: const v6, #float 1.83434e+38 // #7f0a0021 │ │ +437038: 6e20 d5bd 6500 |001c: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.setContentView:(I)V // method@bdd5 │ │ +43703e: 2206 1f1b |001f: new-instance v6, Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // type@1b1f │ │ +437042: 7020 a8bd 5600 |0021: invoke-direct {v6, v5}, Lorg/purple/smoke/Steam$SteamLinearLayoutManager;.:(Landroid/content/Context;)V // method@bda8 │ │ +437048: 5b56 625f |0024: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ +43704c: 1210 |0026: const/4 v0, #int 1 // #1 │ │ +43704e: 6e20 aabd 0600 |0027: invoke-virtual {v6, v0}, Lorg/purple/smoke/Steam$SteamLinearLayoutManager;.setOrientation:(I)V // method@bdaa │ │ +437054: 6e10 bebd 0500 |002a: invoke-virtual {v5}, Lorg/purple/smoke/Steam;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bdbe │ │ +43705a: 0c06 |002d: move-result-object v6 │ │ +43705c: 7100 2ebd 0000 |002e: invoke-static {}, Lorg/purple/smoke/Smoke;.networkStatusString:()Ljava/lang/String; // method@bd2e │ │ +437062: 0c01 |0031: move-result-object v1 │ │ +437064: 6e20 0a3c 1600 |0032: invoke-virtual {v6, v1}, Landroid/support/v7/app/ActionBar;.setSubtitle:(Ljava/lang/CharSequence;)V // method@3c0a │ │ +43706a: 6e10 bebd 0500 |0035: invoke-virtual {v5}, Lorg/purple/smoke/Steam;.getSupportActionBar:()Landroid/support/v7/app/ActionBar; // method@bdbe │ │ +437070: 0c06 |0038: move-result-object v6 │ │ +437072: 1a01 314c |0039: const-string v1, "Smoke | Steam" // string@4c31 │ │ +437076: 6e20 0c3c 1600 |003b: invoke-virtual {v6, v1}, Landroid/support/v7/app/ActionBar;.setTitle:(Ljava/lang/CharSequence;)V // method@3c0c │ │ +43707c: 1406 2700 087f |003e: const v6, #float 1.80776e+38 // #7f080027 │ │ +437082: 6e20 b9bd 6500 |0041: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ +437088: 0c06 |0044: move-result-object v6 │ │ +43708a: 1f06 5e0a |0045: check-cast v6, Landroid/widget/Button; // type@0a5e │ │ +43708e: 5b56 5c5f |0047: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_attachmentButton:Landroid/widget/Button; // field@5f5c │ │ +437092: 1406 6b00 087f |0049: const v6, #float 1.80777e+38 // #7f08006b │ │ +437098: 6e20 b9bd 6500 |004c: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ +43709e: 0c06 |004f: move-result-object v6 │ │ +4370a0: 1f06 970a |0050: check-cast v6, Landroid/widget/TextView; // type@0a97 │ │ +4370a4: 5b56 5e5f |0052: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_displayFileName:Landroid/widget/TextView; // field@5f5e │ │ +4370a8: 1406 5b00 087f |0054: const v6, #float 1.80777e+38 // #7f08005b │ │ +4370ae: 6e20 b9bd 6500 |0057: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ +4370b4: 0c06 |005a: move-result-object v6 │ │ +4370b6: 1f06 970a |005b: check-cast v6, Landroid/widget/TextView; // type@0a97 │ │ +4370ba: 5b56 5f5f |005d: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_downloads:Landroid/widget/TextView; // field@5f5f │ │ +4370be: 2201 f10a |005f: new-instance v1, Ljava/lang/StringBuilder; // type@0af1 │ │ +4370c2: 7010 ee5c 0100 |0061: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@5cee │ │ +4370c8: 1a02 9f17 |0064: const-string v2, "Downloads Directory: " // string@179f │ │ +4370cc: 6e20 f95c 2100 |0066: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4370d2: 6202 6f00 |0069: sget-object v2, Landroid/os/Environment;.DIRECTORY_DOWNLOADS:Ljava/lang/String; // field@006f │ │ +4370d6: 7110 f304 0200 |006b: invoke-static {v2}, Landroid/os/Environment;.getExternalStoragePublicDirectory:(Ljava/lang/String;)Ljava/io/File; // method@04f3 │ │ +4370dc: 0c02 |006e: move-result-object v2 │ │ +4370de: 6e10 a25b 0200 |006f: invoke-virtual {v2}, Ljava/io/File;.toString:()Ljava/lang/String; // method@5ba2 │ │ +4370e4: 0c02 |0072: move-result-object v2 │ │ +4370e6: 6e20 f95c 2100 |0073: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@5cf9 │ │ +4370ec: 6e10 035d 0100 |0076: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@5d03 │ │ +4370f2: 0c01 |0079: move-result-object v1 │ │ +4370f4: 6e20 495b 1600 |007a: invoke-virtual {v6, v1}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@5b49 │ │ +4370fa: 1406 8000 087f |007d: const v6, #float 1.80778e+38 // #7f080080 │ │ +437100: 6e20 b9bd 6500 |0080: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ +437106: 0c06 |0083: move-result-object v6 │ │ +437108: 1f06 970a |0084: check-cast v6, Landroid/widget/TextView; // type@0a97 │ │ +43710c: 5b56 605f |0086: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_information:Landroid/widget/TextView; // field@5f60 │ │ +437110: 1406 8900 087f |0088: const v6, #float 1.80778e+38 // #7f080089 │ │ +437116: 6e20 b9bd 6500 |008b: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ +43711c: 0c06 |008e: move-result-object v6 │ │ +43711e: 1f06 8b0a |008f: check-cast v6, Landroid/widget/Spinner; // type@0a8b │ │ +437122: 5b56 615f |0091: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ +437126: 2201 5b0a |0093: new-instance v1, Landroid/widget/ArrayAdapter; // type@0a5b │ │ +43712a: 1402 0800 0901 |0095: const v2, #float 2.51629e-38 // #01090008 │ │ +437130: 1a03 ae3f |0098: const-string v3, "McEliece" // string@3fae │ │ +437134: 1a04 6b46 |009a: const-string v4, "RSA" // string@466b │ │ +437138: 2420 a81b 4300 |009c: filled-new-array {v3, v4}, [Ljava/lang/String; // type@1ba8 │ │ +43713e: 0c03 |009f: move-result-object v3 │ │ +437140: 7040 cb58 5132 |00a0: invoke-direct {v1, v5, v2, v3}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@58cb │ │ +437146: 6e20 c05a 1600 |00a3: invoke-virtual {v6, v1}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@5ac0 │ │ +43714c: 5456 615f |00a6: iget-object v6, v5, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ +437150: 1201 |00a8: const/4 v1, #int 0 // #0 │ │ +437152: 6e20 c65a 1600 |00a9: invoke-virtual {v6, v1}, Landroid/widget/Spinner;.setEnabled:(Z)V // method@5ac6 │ │ +437158: 5456 615f |00ac: iget-object v6, v5, Lorg/purple/smoke/Steam;.m_keysSpinner:Landroid/widget/Spinner; // field@5f61 │ │ +43715c: 6e20 cc5a 0600 |00ae: invoke-virtual {v6, v0}, Landroid/widget/Spinner;.setSelection:(I)V // method@5acc │ │ +437162: 1406 bf00 087f |00b1: const v6, #float 1.80779e+38 // #7f0800bf │ │ +437168: 6e20 b9bd 6500 |00b4: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ +43716e: 0c06 |00b7: move-result-object v6 │ │ +437170: 1f06 8b0a |00b8: check-cast v6, Landroid/widget/Spinner; // type@0a8b │ │ +437174: 5b56 635f |00ba: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_participantsSpinner:Landroid/widget/Spinner; // field@5f63 │ │ +437178: 1406 d900 087f |00bc: const v6, #float 1.80779e+38 // #7f0800d9 │ │ +43717e: 6e20 b9bd 6500 |00bf: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ +437184: 0c06 |00c2: move-result-object v6 │ │ +437186: 1f06 4909 |00c3: check-cast v6, Landroid/support/v7/widget/RecyclerView; // type@0949 │ │ +43718a: 5b56 665f |00c5: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ +43718e: 6e20 0d4f 0600 |00c7: invoke-virtual {v6, v0}, Landroid/support/v7/widget/RecyclerView;.setHasFixedSize:(Z)V // method@4f0d │ │ +437194: 1406 fb00 087f |00ca: const v6, #float 1.8078e+38 // #7f0800fb │ │ +43719a: 6e20 b9bd 6500 |00cd: invoke-virtual {v5, v6}, Lorg/purple/smoke/Steam;.findViewById:(I)Landroid/view/View; // method@bdb9 │ │ +4371a0: 0c06 |00d0: move-result-object v6 │ │ +4371a2: 1f06 5e0a |00d1: check-cast v6, Landroid/widget/Button; // type@0a5e │ │ +4371a6: 5b56 675f |00d3: iput-object v6, v5, Lorg/purple/smoke/Steam;.m_sendButton:Landroid/widget/Button; // field@5f67 │ │ +4371aa: 7010 cdbd 0500 |00d5: invoke-direct {v5}, Lorg/purple/smoke/Steam;.populateParticipants:()V // method@bdcd │ │ +4371b0: 7010 cebd 0500 |00d8: invoke-direct {v5}, Lorg/purple/smoke/Steam;.prepareListeners:()V // method@bdce │ │ +4371b6: 7010 d0bd 0500 |00db: invoke-direct {v5}, Lorg/purple/smoke/Steam;.prepareWidgets:()V // method@bdd0 │ │ +4371bc: 5456 625f |00de: iget-object v6, v5, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ +4371c0: 5450 665f |00e0: iget-object v0, v5, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ +4371c4: 1202 |00e2: const/4 v2, #int 0 // #0 │ │ +4371c6: 6e40 abbd 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@bdab │ │ +4371cc: 0e00 |00e6: return-void │ │ catches : 2 │ │ 0x002a - 0x003e │ │ Ljava/lang/Exception; -> 0x003e │ │ 0x00de - 0x00e6 │ │ Ljava/lang/Exception; -> 0x00e6 │ │ positions : │ │ 0x0000 line=480 │ │ @@ -1576036,21 +1576035,21 @@ │ │ type : '(Landroid/view/Menu;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 12 16-bit code units │ │ -436ac8: |[436ac8] org.purple.smoke.Steam.onCreateOptionsMenu:(Landroid/view/Menu;)Z │ │ -436ad8: 6e10 bdbd 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.getMenuInflater:()Landroid/view/MenuInflater; // method@bdbd │ │ -436ade: 0c00 |0003: move-result-object v0 │ │ -436ae0: 1401 0600 0b7f |0004: const v1, #float 1.84763e+38 // #7f0b0006 │ │ -436ae6: 6e30 6255 1003 |0007: invoke-virtual {v0, v1, v3}, Landroid/view/MenuInflater;.inflate:(ILandroid/view/Menu;)V // method@5562 │ │ -436aec: 1213 |000a: const/4 v3, #int 1 // #1 │ │ -436aee: 0f03 |000b: return v3 │ │ +436ac4: |[436ac4] org.purple.smoke.Steam.onCreateOptionsMenu:(Landroid/view/Menu;)Z │ │ +436ad4: 6e10 bdbd 0200 |0000: invoke-virtual {v2}, Lorg/purple/smoke/Steam;.getMenuInflater:()Landroid/view/MenuInflater; // method@bdbd │ │ +436ada: 0c00 |0003: move-result-object v0 │ │ +436adc: 1401 0600 0b7f |0004: const v1, #float 1.84763e+38 // #7f0b0006 │ │ +436ae2: 6e30 6255 1003 |0007: invoke-virtual {v0, v1, v3}, Landroid/view/MenuInflater;.inflate:(ILandroid/view/Menu;)V // method@5562 │ │ +436ae8: 1213 |000a: const/4 v3, #int 1 // #1 │ │ +436aea: 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; │ │ │ │ @@ -1576059,26 +1576058,26 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 22 16-bit code units │ │ -4371f0: |[4371f0] org.purple.smoke.Steam.onDestroy:()V │ │ -437200: 7100 74bd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -437206: 0c00 |0003: move-result-object v0 │ │ -437208: 6e10 6fbd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.exit:()Z // method@bd6f │ │ -43720e: 0a00 |0007: move-result v0 │ │ -437210: 3800 0a00 |0008: if-eqz v0, 0012 // +000a │ │ -437214: 7100 5705 0000 |000a: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ -43721a: 0a00 |000d: move-result v0 │ │ -43721c: 7110 5605 0000 |000e: invoke-static {v0}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ -437222: 2804 |0011: goto 0015 // +0004 │ │ -437224: 6f10 f53c 0100 |0012: invoke-super {v1}, Landroid/support/v7/app/AppCompatActivity;.onDestroy:()V // method@3cf5 │ │ -43722a: 0e00 |0015: return-void │ │ +4371ec: |[4371ec] org.purple.smoke.Steam.onDestroy:()V │ │ +4371fc: 7100 74bd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +437202: 0c00 |0003: move-result-object v0 │ │ +437204: 6e10 6fbd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.exit:()Z // method@bd6f │ │ +43720a: 0a00 |0007: move-result v0 │ │ +43720c: 3800 0a00 |0008: if-eqz v0, 0012 // +000a │ │ +437210: 7100 5705 0000 |000a: invoke-static {}, Landroid/os/Process;.myPid:()I // method@0557 │ │ +437216: 0a00 |000d: move-result v0 │ │ +437218: 7110 5605 0000 |000e: invoke-static {v0}, Landroid/os/Process;.killProcess:(I)V // method@0556 │ │ +43721e: 2804 |0011: goto 0015 // +0004 │ │ +437220: 6f10 f53c 0100 |0012: invoke-super {v1}, Landroid/support/v7/app/AppCompatActivity;.onDestroy:()V // method@3cf5 │ │ +437226: 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; │ │ @@ -1576088,87 +1576087,87 @@ │ │ type : '(Landroid/view/MenuItem;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 10 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 168 16-bit code units │ │ -436af0: |[436af0] org.purple.smoke.Steam.onOptionsItemSelected:(Landroid/view/MenuItem;)Z │ │ -436b00: 7210 6a55 0900 |0000: invoke-interface {v9}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ -436b06: 0a00 |0003: move-result v0 │ │ -436b08: 7210 6c55 0900 |0004: invoke-interface {v9}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ -436b0e: 0a01 |0007: move-result v1 │ │ -436b10: 1a02 eb7c |0008: const-string v2, "lastActivity" // string@7ceb │ │ -436b14: 1203 |000a: const/4 v3, #int 0 // #0 │ │ -436b16: 1214 |000b: const/4 v4, #int 1 // #1 │ │ -436b18: 3900 2f00 |000c: if-nez v0, 003b // +002f │ │ -436b1c: 2c01 8400 0000 |000e: sparse-switch v1, 00000092 // +00000084 │ │ -436b22: 287b |0011: goto 008c // +007b │ │ -436b24: 7010 ddbd 0800 |0012: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showSmokescreenActivity:()V // method@bddd │ │ -436b2a: 0f04 |0015: return v4 │ │ -436b2c: 5489 5d5f |0016: iget-object v9, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436b30: 1a00 504b |0018: const-string v0, "Settings" // string@4b50 │ │ -436b34: 6e40 3eba 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@ba3e │ │ -436b3a: 7010 dcbd 0800 |001d: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showSettingsActivity:()V // method@bddc │ │ -436b40: 0f04 |0020: return v4 │ │ -436b42: 5489 5d5f |0021: iget-object v9, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436b46: 1a00 e91a |0023: const-string v0, "Fire" // string@1ae9 │ │ -436b4a: 6e40 3eba 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@ba3e │ │ -436b50: 7010 dabd 0800 |0028: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showFireActivity:()V // method@bdda │ │ -436b56: 0f04 |002b: return v4 │ │ -436b58: 7120 2abd 8400 |002c: invoke-static {v4, v8}, Lorg/purple/smoke/Smoke;.exit:(ZLandroid/content/Context;)V // method@bd2a │ │ -436b5e: 0f04 |002f: return v4 │ │ -436b60: 5489 5d5f |0030: iget-object v9, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436b64: 1a00 0113 |0032: const-string v0, "Chat" // string@1301 │ │ -436b68: 6e40 3eba 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@ba3e │ │ -436b6e: 7010 d7bd 0800 |0037: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showChatActivity:()V // method@bdd7 │ │ -436b74: 0f04 |003a: return v4 │ │ -436b76: 7210 6e55 0900 |003b: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ -436b7c: 0c00 |003e: move-result-object v0 │ │ -436b7e: 7210 045c 0000 |003f: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ -436b84: 0c00 |0042: move-result-object v0 │ │ -436b86: 1a05 7a03 |0043: const-string v5, "(" // string@037a │ │ -436b8a: 6e20 c25c 5000 |0045: invoke-virtual {v0, v5}, Ljava/lang/String;.indexOf:(Ljava/lang/String;)I // method@5cc2 │ │ -436b90: 0a05 |0048: move-result v5 │ │ -436b92: 3a05 0f00 |0049: if-ltz v5, 0058 // +000f │ │ -436b96: b045 |004b: add-int/2addr v5, v4 │ │ -436b98: 6e20 cc5c 5000 |004c: invoke-virtual {v0, v5}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ -436b9e: 0c04 |004f: move-result-object v4 │ │ -436ba0: 1a05 ec03 |0050: const-string v5, ")" // string@03ec │ │ -436ba4: 1a06 0000 |0052: const-string v6, "" // string@0000 │ │ -436ba8: 6e30 c85c 5406 |0054: invoke-virtual {v4, v5, v6}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ -436bae: 0c00 |0057: move-result-object v0 │ │ -436bb0: 7110 f5bb 0000 |0058: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf5 │ │ -436bb6: 0c00 |005b: move-result-object v0 │ │ -436bb8: 7100 74bd 0000 |005c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -436bbe: 0c04 |005f: move-result-object v4 │ │ -436bc0: 7110 d55c 0100 |0060: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -436bc6: 0c05 |0063: move-result-object v5 │ │ -436bc8: 1a06 a98a |0064: const-string v6, "member_chat_oid" // string@8aa9 │ │ -436bcc: 6e30 90bd 6405 |0066: invoke-virtual {v4, v6, v5}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd90 │ │ -436bd2: 7100 74bd 0000 |0069: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -436bd8: 0c04 |006c: move-result-object v4 │ │ -436bda: 1a05 ab8a |006d: const-string v5, "member_chat_siphash_id" // string@8aab │ │ -436bde: 6e30 90bd 5400 |006f: invoke-virtual {v4, v5, v0}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd90 │ │ -436be4: 5484 5d5f |0072: iget-object v4, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436be8: 1a07 0b40 |0074: const-string v7, "MemberChat" // string@400b │ │ -436bec: 6e40 3eba 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@ba3e │ │ -436bf2: 5482 5d5f |0079: iget-object v2, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436bf6: 6203 695f |007b: sget-object v3, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ -436bfa: 7110 d55c 0100 |007d: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ -436c00: 0c01 |0080: move-result-object v1 │ │ -436c02: 6e40 3eba 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@ba3e │ │ -436c08: 5481 5d5f |0084: iget-object v1, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436c0c: 6e40 3eba 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@ba3e │ │ -436c12: 7010 dbbd 0800 |0089: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showMemberChatActivity:()V // method@bddb │ │ -436c18: 6f20 f83c 9800 |008c: invoke-super {v8, v9}, Landroid/support/v7/app/AppCompatActivity;.onOptionsItemSelected:(Landroid/view/MenuItem;)Z // method@3cf8 │ │ -436c1e: 0a09 |008f: move-result v9 │ │ -436c20: 0f09 |0090: return v9 │ │ -436c22: 0000 |0091: nop // spacer │ │ -436c24: 0002 0500 0a00 087f 0e00 087f 0f00 ... |0092: sparse-switch-data (22 units) │ │ +436aec: |[436aec] org.purple.smoke.Steam.onOptionsItemSelected:(Landroid/view/MenuItem;)Z │ │ +436afc: 7210 6a55 0900 |0000: invoke-interface {v9}, Landroid/view/MenuItem;.getGroupId:()I // method@556a │ │ +436b02: 0a00 |0003: move-result v0 │ │ +436b04: 7210 6c55 0900 |0004: invoke-interface {v9}, Landroid/view/MenuItem;.getItemId:()I // method@556c │ │ +436b0a: 0a01 |0007: move-result v1 │ │ +436b0c: 1a02 eb7c |0008: const-string v2, "lastActivity" // string@7ceb │ │ +436b10: 1203 |000a: const/4 v3, #int 0 // #0 │ │ +436b12: 1214 |000b: const/4 v4, #int 1 // #1 │ │ +436b14: 3900 2f00 |000c: if-nez v0, 003b // +002f │ │ +436b18: 2c01 8400 0000 |000e: sparse-switch v1, 00000092 // +00000084 │ │ +436b1e: 287b |0011: goto 008c // +007b │ │ +436b20: 7010 ddbd 0800 |0012: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showSmokescreenActivity:()V // method@bddd │ │ +436b26: 0f04 |0015: return v4 │ │ +436b28: 5489 5d5f |0016: iget-object v9, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436b2c: 1a00 504b |0018: const-string v0, "Settings" // string@4b50 │ │ +436b30: 6e40 3eba 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@ba3e │ │ +436b36: 7010 dcbd 0800 |001d: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showSettingsActivity:()V // method@bddc │ │ +436b3c: 0f04 |0020: return v4 │ │ +436b3e: 5489 5d5f |0021: iget-object v9, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436b42: 1a00 e91a |0023: const-string v0, "Fire" // string@1ae9 │ │ +436b46: 6e40 3eba 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@ba3e │ │ +436b4c: 7010 dabd 0800 |0028: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showFireActivity:()V // method@bdda │ │ +436b52: 0f04 |002b: return v4 │ │ +436b54: 7120 2abd 8400 |002c: invoke-static {v4, v8}, Lorg/purple/smoke/Smoke;.exit:(ZLandroid/content/Context;)V // method@bd2a │ │ +436b5a: 0f04 |002f: return v4 │ │ +436b5c: 5489 5d5f |0030: iget-object v9, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436b60: 1a00 0113 |0032: const-string v0, "Chat" // string@1301 │ │ +436b64: 6e40 3eba 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@ba3e │ │ +436b6a: 7010 d7bd 0800 |0037: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showChatActivity:()V // method@bdd7 │ │ +436b70: 0f04 |003a: return v4 │ │ +436b72: 7210 6e55 0900 |003b: invoke-interface {v9}, Landroid/view/MenuItem;.getTitle:()Ljava/lang/CharSequence; // method@556e │ │ +436b78: 0c00 |003e: move-result-object v0 │ │ +436b7a: 7210 045c 0000 |003f: invoke-interface {v0}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@5c04 │ │ +436b80: 0c00 |0042: move-result-object v0 │ │ +436b82: 1a05 7a03 |0043: const-string v5, "(" // string@037a │ │ +436b86: 6e20 c25c 5000 |0045: invoke-virtual {v0, v5}, Ljava/lang/String;.indexOf:(Ljava/lang/String;)I // method@5cc2 │ │ +436b8c: 0a05 |0048: move-result v5 │ │ +436b8e: 3a05 0f00 |0049: if-ltz v5, 0058 // +000f │ │ +436b92: b045 |004b: add-int/2addr v5, v4 │ │ +436b94: 6e20 cc5c 5000 |004c: invoke-virtual {v0, v5}, Ljava/lang/String;.substring:(I)Ljava/lang/String; // method@5ccc │ │ +436b9a: 0c04 |004f: move-result-object v4 │ │ +436b9c: 1a05 ec03 |0050: const-string v5, ")" // string@03ec │ │ +436ba0: 1a06 0000 |0052: const-string v6, "" // string@0000 │ │ +436ba4: 6e30 c85c 5406 |0054: invoke-virtual {v4, v5, v6}, Ljava/lang/String;.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; // method@5cc8 │ │ +436baa: 0c00 |0057: move-result-object v0 │ │ +436bac: 7110 f5bb 0000 |0058: invoke-static {v0}, Lorg/purple/smoke/Miscellaneous;.prepareSipHashId:(Ljava/lang/String;)Ljava/lang/String; // method@bbf5 │ │ +436bb2: 0c00 |005b: move-result-object v0 │ │ +436bb4: 7100 74bd 0000 |005c: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +436bba: 0c04 |005f: move-result-object v4 │ │ +436bbc: 7110 d55c 0100 |0060: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +436bc2: 0c05 |0063: move-result-object v5 │ │ +436bc4: 1a06 a98a |0064: const-string v6, "member_chat_oid" // string@8aa9 │ │ +436bc8: 6e30 90bd 6405 |0066: invoke-virtual {v4, v6, v5}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd90 │ │ +436bce: 7100 74bd 0000 |0069: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +436bd4: 0c04 |006c: move-result-object v4 │ │ +436bd6: 1a05 ab8a |006d: const-string v5, "member_chat_siphash_id" // string@8aab │ │ +436bda: 6e30 90bd 5400 |006f: invoke-virtual {v4, v5, v0}, Lorg/purple/smoke/State;.setString:(Ljava/lang/String;Ljava/lang/String;)V // method@bd90 │ │ +436be0: 5484 5d5f |0072: iget-object v4, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436be4: 1a07 0b40 |0074: const-string v7, "MemberChat" // string@400b │ │ +436be8: 6e40 3eba 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@ba3e │ │ +436bee: 5482 5d5f |0079: iget-object v2, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436bf2: 6203 695f |007b: sget-object v3, Lorg/purple/smoke/Steam;.s_cryptography:Lorg/purple/smoke/Cryptography; // field@5f69 │ │ +436bf6: 7110 d55c 0100 |007d: invoke-static {v1}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@5cd5 │ │ +436bfc: 0c01 |0080: move-result-object v1 │ │ +436bfe: 6e40 3eba 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@ba3e │ │ +436c04: 5481 5d5f |0084: iget-object v1, v8, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436c08: 6e40 3eba 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@ba3e │ │ +436c0e: 7010 dbbd 0800 |0089: invoke-direct {v8}, Lorg/purple/smoke/Steam;.showMemberChatActivity:()V // method@bddb │ │ +436c14: 6f20 f83c 9800 |008c: invoke-super {v8, v9}, Landroid/support/v7/app/AppCompatActivity;.onOptionsItemSelected:(Landroid/view/MenuItem;)Z // method@3cf8 │ │ +436c1a: 0a09 |008f: move-result v9 │ │ +436c1c: 0f09 |0090: return v9 │ │ +436c1e: 0000 |0091: nop // spacer │ │ +436c20: 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 │ │ @@ -1576204,26 +1576203,26 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 23 16-bit code units │ │ -43722c: |[43722c] org.purple.smoke.Steam.onPause:()V │ │ -43723c: 6f10 fa3c 0200 |0000: invoke-super {v2}, Landroid/support/v7/app/AppCompatActivity;.onPause:()V // method@3cfa │ │ -437242: 5520 655f |0003: iget-boolean v0, v2, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ -437246: 3800 0e00 |0005: if-eqz v0, 0013 // +000e │ │ -43724a: 7110 a41d 0200 |0007: invoke-static {v2}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ -437250: 0c00 |000a: move-result-object v0 │ │ -437252: 5421 645f |000b: iget-object v1, v2, Lorg/purple/smoke/Steam;.m_receiver:Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // field@5f64 │ │ -437256: 6e20 a81d 1000 |000d: invoke-virtual {v0, v1}, Landroid/support/v4/content/LocalBroadcastManager;.unregisterReceiver:(Landroid/content/BroadcastReceiver;)V // method@1da8 │ │ -43725c: 1200 |0010: const/4 v0, #int 0 // #0 │ │ -43725e: 5c20 655f |0011: iput-boolean v0, v2, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ -437262: 7010 d2bd 0200 |0013: invoke-direct {v2}, Lorg/purple/smoke/Steam;.releaseResources:()V // method@bdd2 │ │ -437268: 0e00 |0016: return-void │ │ +437228: |[437228] org.purple.smoke.Steam.onPause:()V │ │ +437238: 6f10 fa3c 0200 |0000: invoke-super {v2}, Landroid/support/v7/app/AppCompatActivity;.onPause:()V // method@3cfa │ │ +43723e: 5520 655f |0003: iget-boolean v0, v2, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ +437242: 3800 0e00 |0005: if-eqz v0, 0013 // +000e │ │ +437246: 7110 a41d 0200 |0007: invoke-static {v2}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ +43724c: 0c00 |000a: move-result-object v0 │ │ +43724e: 5421 645f |000b: iget-object v1, v2, Lorg/purple/smoke/Steam;.m_receiver:Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // field@5f64 │ │ +437252: 6e20 a81d 1000 |000d: invoke-virtual {v0, v1}, Landroid/support/v4/content/LocalBroadcastManager;.unregisterReceiver:(Landroid/content/BroadcastReceiver;)V // method@1da8 │ │ +437258: 1200 |0010: const/4 v0, #int 0 // #0 │ │ +43725a: 5c20 655f |0011: iput-boolean v0, v2, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ +43725e: 7010 d2bd 0200 |0013: invoke-direct {v2}, Lorg/purple/smoke/Steam;.releaseResources:()V // method@bdd2 │ │ +437264: 0e00 |0016: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=547 │ │ 0x0003 line=549 │ │ 0x0007 line=551 │ │ 0x000d line=552 │ │ 0x0011 line=553 │ │ @@ -1576236,34 +1576235,34 @@ │ │ type : '(Landroid/view/Menu;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 36 16-bit code units │ │ -436c60: |[436c60] org.purple.smoke.Steam.onPrepareOptionsMenu:(Landroid/view/Menu;)Z │ │ -436c70: 7100 74bd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ -436c76: 0c00 |0003: move-result-object v0 │ │ -436c78: 6e10 77bd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ -436c7e: 0a00 |0007: move-result v0 │ │ -436c80: 5431 5d5f |0008: iget-object v1, v3, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ -436c84: 6e10 deb9 0100 |000a: invoke-virtual {v1}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9de │ │ -436c8a: 0a01 |000d: move-result v1 │ │ -436c8c: 1212 |000e: const/4 v2, #int 1 // #1 │ │ -436c8e: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ -436c92: 1210 |0011: const/4 v0, #int 1 // #1 │ │ -436c94: 1401 0200 087f |0012: const v1, #float 1.80775e+38 // #7f080002 │ │ -436c9a: 7220 5c55 1400 |0015: invoke-interface {v4, v1}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ -436ca0: 0c01 |0018: move-result-object v1 │ │ -436ca2: b720 |0019: xor-int/2addr v0, v2 │ │ -436ca4: 7220 7a55 0100 |001a: invoke-interface {v1, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ -436caa: 1260 |001d: const/4 v0, #int 6 // #6 │ │ -436cac: 1301 fa00 |001e: const/16 v1, #int 250 // #fa │ │ -436cb0: 7130 e3bb 0401 |0020: invoke-static {v4, v0, v1}, Lorg/purple/smoke/Miscellaneous;.addMembersToMenu:(Landroid/view/Menu;II)Landroid/view/SubMenu; // method@bbe3 │ │ -436cb6: 0f02 |0023: return v2 │ │ +436c5c: |[436c5c] org.purple.smoke.Steam.onPrepareOptionsMenu:(Landroid/view/Menu;)Z │ │ +436c6c: 7100 74bd 0000 |0000: invoke-static {}, Lorg/purple/smoke/State;.getInstance:()Lorg/purple/smoke/State; // method@bd74 │ │ +436c72: 0c00 |0003: move-result-object v0 │ │ +436c74: 6e10 77bd 0000 |0004: invoke-virtual {v0}, Lorg/purple/smoke/State;.isAuthenticated:()Z // method@bd77 │ │ +436c7a: 0a00 |0007: move-result v0 │ │ +436c7c: 5431 5d5f |0008: iget-object v1, v3, Lorg/purple/smoke/Steam;.m_databaseHelper:Lorg/purple/smoke/Database; // field@5f5d │ │ +436c80: 6e10 deb9 0100 |000a: invoke-virtual {v1}, Lorg/purple/smoke/Database;.accountPrepared:()Z // method@b9de │ │ +436c86: 0a01 |000d: move-result v1 │ │ +436c88: 1212 |000e: const/4 v2, #int 1 // #1 │ │ +436c8a: 3901 0300 |000f: if-nez v1, 0012 // +0003 │ │ +436c8e: 1210 |0011: const/4 v0, #int 1 // #1 │ │ +436c90: 1401 0200 087f |0012: const v1, #float 1.80775e+38 // #7f080002 │ │ +436c96: 7220 5c55 1400 |0015: invoke-interface {v4, v1}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@555c │ │ +436c9c: 0c01 |0018: move-result-object v1 │ │ +436c9e: b720 |0019: xor-int/2addr v0, v2 │ │ +436ca0: 7220 7a55 0100 |001a: invoke-interface {v1, v0}, Landroid/view/MenuItem;.setEnabled:(Z)Landroid/view/MenuItem; // method@557a │ │ +436ca6: 1260 |001d: const/4 v0, #int 6 // #6 │ │ +436ca8: 1301 fa00 |001e: const/16 v1, #int 250 // #fa │ │ +436cac: 7130 e3bb 0401 |0020: invoke-static {v4, v0, v1}, Lorg/purple/smoke/Miscellaneous;.addMembersToMenu:(Landroid/view/Menu;II)Landroid/view/SubMenu; // method@bbe3 │ │ +436cb2: 0f02 |0023: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=800 │ │ 0x0008 line=802 │ │ 0x0015 line=809 │ │ 0x0020 line=810 │ │ locals : │ │ @@ -1576275,52 +1576274,52 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 85 16-bit code units │ │ -43726c: |[43726c] org.purple.smoke.Steam.onResume:()V │ │ -43727c: 6f10 fe3c 0400 |0000: invoke-super {v4}, Landroid/support/v7/app/AppCompatActivity;.onResume:()V // method@3cfe │ │ -437282: 7010 c1bd 0400 |0003: invoke-direct {v4}, Lorg/purple/smoke/Steam;.networkStatusChanged:()V // method@bdc1 │ │ -437288: 5540 655f |0006: iget-boolean v0, v4, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ -43728c: 3900 3b00 |0008: if-nez v0, 0043 // +003b │ │ -437290: 2200 4a00 |000a: new-instance v0, Landroid/content/IntentFilter; // type@004a │ │ -437294: 7010 cf01 0000 |000c: invoke-direct {v0}, Landroid/content/IntentFilter;.:()V // method@01cf │ │ -43729a: 1a01 f491 |000f: const-string v1, "org.purple.smoke.chat_message" // string@91f4 │ │ -43729e: 6e20 d001 1000 |0011: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -4372a4: 1a01 fd91 |0014: const-string v1, "org.purple.smoke.neighbor_connected" // string@91fd │ │ -4372a8: 6e20 d001 1000 |0016: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -4372ae: 1a01 ff91 |0019: const-string v1, "org.purple.smoke.network_connected" // string@91ff │ │ -4372b2: 6e20 d001 1000 |001b: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -4372b8: 1a01 0092 |001e: const-string v1, "org.purple.smoke.network_disconnected" // string@9200 │ │ -4372bc: 6e20 d001 1000 |0020: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -4372c2: 1a01 0892 |0023: const-string v1, "org.purple.smoke.state_participants_populated" // string@9208 │ │ -4372c6: 6e20 d001 1000 |0025: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -4372cc: 1a01 0992 |0028: const-string v1, "org.purple.smoke.steam_added" // string@9209 │ │ -4372d0: 6e20 d001 1000 |002a: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -4372d6: 1a01 0b92 |002d: const-string v1, "org.purple.smoke.steam_status" // string@920b │ │ -4372da: 6e20 d001 1000 |002f: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -4372e0: 1a01 0c92 |0032: const-string v1, "org.purple.smoke.time" // string@920c │ │ -4372e4: 6e20 d001 1000 |0034: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ -4372ea: 7110 a41d 0400 |0037: invoke-static {v4}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ -4372f0: 0c01 |003a: move-result-object v1 │ │ -4372f2: 5442 645f |003b: iget-object v2, v4, Lorg/purple/smoke/Steam;.m_receiver:Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // field@5f64 │ │ -4372f6: 6e30 a51d 2100 |003d: invoke-virtual {v1, v2, v0}, Landroid/support/v4/content/LocalBroadcastManager;.registerReceiver:(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)V // method@1da5 │ │ -4372fc: 1210 |0040: const/4 v0, #int 1 // #1 │ │ -4372fe: 5c40 655f |0041: iput-boolean v0, v4, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ -437302: 5440 5b5f |0043: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ -437306: 6e10 364c 0000 |0045: invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ -43730c: 5440 625f |0048: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ -437310: 5441 665f |004a: iget-object v1, v4, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ -437314: 1202 |004c: const/4 v2, #int 0 // #0 │ │ -437316: 1203 |004d: const/4 v3, #int 0 // #0 │ │ -437318: 6e40 abbd 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@bdab │ │ -43731e: 7010 cfbd 0400 |0051: invoke-direct {v4}, Lorg/purple/smoke/Steam;.prepareSchedulers:()V // method@bdcf │ │ -437324: 0e00 |0054: return-void │ │ +437268: |[437268] org.purple.smoke.Steam.onResume:()V │ │ +437278: 6f10 fe3c 0400 |0000: invoke-super {v4}, Landroid/support/v7/app/AppCompatActivity;.onResume:()V // method@3cfe │ │ +43727e: 7010 c1bd 0400 |0003: invoke-direct {v4}, Lorg/purple/smoke/Steam;.networkStatusChanged:()V // method@bdc1 │ │ +437284: 5540 655f |0006: iget-boolean v0, v4, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ +437288: 3900 3b00 |0008: if-nez v0, 0043 // +003b │ │ +43728c: 2200 4a00 |000a: new-instance v0, Landroid/content/IntentFilter; // type@004a │ │ +437290: 7010 cf01 0000 |000c: invoke-direct {v0}, Landroid/content/IntentFilter;.:()V // method@01cf │ │ +437296: 1a01 f491 |000f: const-string v1, "org.purple.smoke.chat_message" // string@91f4 │ │ +43729a: 6e20 d001 1000 |0011: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +4372a0: 1a01 fd91 |0014: const-string v1, "org.purple.smoke.neighbor_connected" // string@91fd │ │ +4372a4: 6e20 d001 1000 |0016: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +4372aa: 1a01 ff91 |0019: const-string v1, "org.purple.smoke.network_connected" // string@91ff │ │ +4372ae: 6e20 d001 1000 |001b: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +4372b4: 1a01 0092 |001e: const-string v1, "org.purple.smoke.network_disconnected" // string@9200 │ │ +4372b8: 6e20 d001 1000 |0020: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +4372be: 1a01 0892 |0023: const-string v1, "org.purple.smoke.state_participants_populated" // string@9208 │ │ +4372c2: 6e20 d001 1000 |0025: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +4372c8: 1a01 0992 |0028: const-string v1, "org.purple.smoke.steam_added" // string@9209 │ │ +4372cc: 6e20 d001 1000 |002a: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +4372d2: 1a01 0b92 |002d: const-string v1, "org.purple.smoke.steam_status" // string@920b │ │ +4372d6: 6e20 d001 1000 |002f: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +4372dc: 1a01 0c92 |0032: const-string v1, "org.purple.smoke.time" // string@920c │ │ +4372e0: 6e20 d001 1000 |0034: invoke-virtual {v0, v1}, Landroid/content/IntentFilter;.addAction:(Ljava/lang/String;)V // method@01d0 │ │ +4372e6: 7110 a41d 0400 |0037: invoke-static {v4}, Landroid/support/v4/content/LocalBroadcastManager;.getInstance:(Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager; // method@1da4 │ │ +4372ec: 0c01 |003a: move-result-object v1 │ │ +4372ee: 5442 645f |003b: iget-object v2, v4, Lorg/purple/smoke/Steam;.m_receiver:Lorg/purple/smoke/Steam$SteamBroadcastReceiver; // field@5f64 │ │ +4372f2: 6e30 a51d 2100 |003d: invoke-virtual {v1, v2, v0}, Landroid/support/v4/content/LocalBroadcastManager;.registerReceiver:(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)V // method@1da5 │ │ +4372f8: 1210 |0040: const/4 v0, #int 1 // #1 │ │ +4372fa: 5c40 655f |0041: iput-boolean v0, v4, Lorg/purple/smoke/Steam;.m_receiverRegistered:Z // field@5f65 │ │ +4372fe: 5440 5b5f |0043: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_adapter:Landroid/support/v7/widget/RecyclerView$Adapter; // field@5f5b │ │ +437302: 6e10 364c 0000 |0045: invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Adapter;.notifyDataSetChanged:()V // method@4c36 │ │ +437308: 5440 625f |0048: iget-object v0, v4, Lorg/purple/smoke/Steam;.m_layoutManager:Lorg/purple/smoke/Steam$SteamLinearLayoutManager; // field@5f62 │ │ +43730c: 5441 665f |004a: iget-object v1, v4, Lorg/purple/smoke/Steam;.m_recyclerView:Landroid/support/v7/widget/RecyclerView; // field@5f66 │ │ +437310: 1202 |004c: const/4 v2, #int 0 // #0 │ │ +437312: 1203 |004d: const/4 v3, #int 0 // #0 │ │ +437314: 6e40 abbd 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@bdab │ │ +43731a: 7010 cfbd 0400 |0051: invoke-direct {v4}, Lorg/purple/smoke/Steam;.prepareSchedulers:()V // method@bdcf │ │ +437320: 0e00 |0054: return-void │ │ catches : 1 │ │ 0x0043 - 0x0051 │ │ Ljava/lang/Exception; -> 0x0051 │ │ positions : │ │ 0x0000 line=562 │ │ 0x0003 line=563 │ │ 0x0006 line=565 │ │ @@ -1576347,19 +1576346,19 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 9 16-bit code units │ │ -43766c: |[43766c] org.purple.smoke.Steam.showContextMenu:(Landroid/view/View;)V │ │ -43767c: 3801 0800 |0000: if-eqz v1, 0008 // +0008 │ │ -437680: 6e20 d1bd 1000 |0002: invoke-virtual {v0, v1}, Lorg/purple/smoke/Steam;.registerForContextMenu:(Landroid/view/View;)V // method@bdd1 │ │ -437686: 6e20 ccbd 1000 |0005: invoke-virtual {v0, v1}, Lorg/purple/smoke/Steam;.openContextMenu:(Landroid/view/View;)V // method@bdcc │ │ -43768c: 0e00 |0008: return-void │ │ +437668: |[437668] org.purple.smoke.Steam.showContextMenu:(Landroid/view/View;)V │ │ +437678: 3801 0800 |0000: if-eqz v1, 0008 // +0008 │ │ +43767c: 6e20 d1bd 1000 |0002: invoke-virtual {v0, v1}, Lorg/purple/smoke/Steam;.registerForContextMenu:(Landroid/view/View;)V // method@bdd1 │ │ +437682: 6e20 ccbd 1000 |0005: invoke-virtual {v0, v1}, Lorg/purple/smoke/Steam;.openContextMenu:(Landroid/view/View;)V // method@bdcc │ │ +437688: 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: 12232186 bytes, number of entries: 6082 │ │ │ +Zip file size: 12232171 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, 12955346 bytes uncompressed, 11046086 bytes compressed: 14.7% │ │ │ +6082 files, 12955331 bytes uncompressed, 11046071 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.30 Exhaust "); │ │ │ │ sb.append("(Release)"); │ │ │ │ sb.append("\nBuild Date "); │ │ │ │ - final Date date = new Date(1680457565968L); │ │ │ │ + final Date date = new Date(1680435659554L); │ │ │ │ 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 = 1680457565968L; │ │ │ │ + public static final long BUILD_TIME = 1680435659554L; │ │ │ │ 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 = 20230330; │ │ │ │ public static final String VERSION_NAME = "2023.03.30"; │ │ │ │ } │ │ ├── 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 3188 │ :try_start_0 │ iget-object v0, p0, Lorg/purple/smoke/Settings$38;->this$0:Lorg/purple/smoke/Settings; │ │ .line 3189 │ 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 3191 │ 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 3192 │ invoke-virtual {v1, v2}, Lorg/purple/smoke/Settings;->runOnUiThread(Ljava/lang/Runnable;)V │ │ .line 3193 │ 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, 0x18743138710L │ + const-wide v4, 0x18741c54322L │ │ 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 = 0x18743138710L │ +.field public static final BUILD_TIME:J = 0x18741c54322L │ │ .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"