--- /home/fdroid/fdroiddata/tmp/de.duenndns.gmdice_7.apk +++ /home/fdroid/fdroiddata/tmp/sigcp_de.duenndns.gmdice_7.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: res/drawable-hdpi/logo.png entry referenced by META-INF/MANIFEST.MF not found in the APK │ @@ -1,16 +0,0 @@ │ -Verifies │ -Verified using v1 scheme (JAR signing): true │ -Verified using v2 scheme (APK Signature Scheme v2): false │ -Verified using v3 scheme (APK Signature Scheme v3): false │ -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: a26b42202e9fed321295dd0be832a8fd8babaf875385f2e916b571633dff181e │ -Signer #1 certificate SHA-1 digest: 3b68f191a21bbe71821bf255c33382b4f5522454 │ -Signer #1 certificate MD5 digest: 72f304e7b801e940fa6d144f993af805 │ -Signer #1 key algorithm: RSA │ -Signer #1 key size (bits): 2048 │ -Signer #1 public key SHA-256 digest: 69b6941a67addbf0e4dbdc673ff031a55aa7e4fc234a9b8bf2ca3d19235d45f7 │ -Signer #1 public key SHA-1 digest: 9f91d3fd067ac6e2fa2ef974e615670c96a3609a │ -Signer #1 public key MD5 digest: fccecec02a600a1ba914f99dc0212ce6 ├── zipinfo -v {} │┄ Differences in extra fields detected; using output from zipinfo -v │ @@ -1,952 +1,922 @@ │ There is no zipfile comment. │ │ End-of-central-directory record: │ ------------------------------- │ │ - Zip archive file size: 61705 (000000000000F109h) │ - Actual end-cent-dir record offset: 61683 (000000000000F0F3h) │ - Expected end-cent-dir record offset: 61683 (000000000000F0F3h) │ + Zip archive file size: 62181 (000000000000F2E5h) │ + Actual end-cent-dir record offset: 62159 (000000000000F2CFh) │ + Expected end-cent-dir record offset: 62159 (000000000000F2CFh) │ (based on the length of the central directory and its expected offset) │ │ This zipfile constitutes the sole disk of a single-part archive; its │ central directory contains 31 entries. │ - The central directory is 2443 (000000000000098Bh) bytes long, │ + The central directory is 2446 (000000000000098Eh) bytes long, │ and its (expected) offset in bytes from the beginning of the zipfile │ - is 59240 (000000000000E768h). │ + is 59713 (000000000000E941h). │ │ │ Central directory entry #1: │ --------------------------- │ │ - META-INF/MANIFEST.MF │ + AndroidManifest.xml │ │ offset of local header from start of archive: 0 │ (0000000000000000h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 2.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 2.0 │ compression method: deflated │ compression sub-type (deflation): normal │ file security status: not encrypted │ extended local header: yes │ - file last modified on (DOS date/time): 2014 Jul 9 05:40:58 │ - 32-bit CRC value (hex): 79129eb6 │ - compressed size: 986 bytes │ - uncompressed size: 2504 bytes │ - length of filename: 20 characters │ - length of extra field: 0 bytes │ + file last modified on (DOS date/time): 2017 Oct 8 00:11:08 │ + 32-bit CRC value (hex): 963aee62 │ + compressed size: 677 bytes │ + uncompressed size: 1736 bytes │ + length of filename: 19 characters │ + length of extra field: 4 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ + The central-directory extra field contains: │ + - A subfield with ID 0xcafe (unknown) and 0 data bytes. │ + │ There is no file comment. │ │ Central directory entry #2: │ --------------------------- │ │ There are an extra 16 bytes preceding this file. │ │ - META-INF/0EC6DE5B.SF │ + res/drawable-hdpi-v4/logo.png │ │ - offset of local header from start of archive: 1052 │ - (000000000000041Ch) bytes │ + offset of local header from start of archive: 746 │ + (00000000000002EAh) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ - version of encoding software: 2.0 │ + version of encoding software: 1.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ - minimum software version required to extract: 2.0 │ - compression method: deflated │ - compression sub-type (deflation): normal │ + minimum software version required to extract: 1.0 │ + compression method: none (stored) │ file security status: not encrypted │ - extended local header: yes │ - file last modified on (DOS date/time): 2014 Jul 9 05:40:58 │ - 32-bit CRC value (hex): 90b6ca16 │ - compressed size: 1058 bytes │ - uncompressed size: 2625 bytes │ - length of filename: 20 characters │ + extended local header: no │ + file last modified on (DOS date/time): 1980 Jan 1 00:00:00 │ + 32-bit CRC value (hex): b683267c │ + compressed size: 7432 bytes │ + uncompressed size: 7432 bytes │ + length of filename: 29 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ Central directory entry #3: │ --------------------------- │ │ - There are an extra 16 bytes preceding this file. │ - │ - META-INF/0EC6DE5B.RSA │ - │ - offset of local header from start of archive: 2176 │ - (0000000000000880h) bytes │ - file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ - version of encoding software: 2.0 │ - minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ - minimum software version required to extract: 2.0 │ - compression method: deflated │ - compression sub-type (deflation): normal │ - file security status: not encrypted │ - extended local header: yes │ - file last modified on (DOS date/time): 2014 Jul 9 05:40:58 │ - 32-bit CRC value (hex): da9213c8 │ - compressed size: 1037 bytes │ - uncompressed size: 1297 bytes │ - length of filename: 21 characters │ - length of extra field: 0 bytes │ - length of file comment: 0 characters │ - disk number on which file begins: disk 1 │ - apparent file type: binary │ - non-MSDOS external file attributes: 000000 hex │ - MS-DOS file attributes (00 hex): none │ - │ - There is no file comment. │ - │ -Central directory entry #4: │ ---------------------------- │ - │ - There are an extra 16 bytes preceding this file. │ - │ res/drawable/logo.png │ │ - offset of local header from start of archive: 3280 │ - (0000000000000CD0h) bytes │ + offset of local header from start of archive: 8237 │ + (000000000000202Dh) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 1.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 1.0 │ compression method: none (stored) │ file security status: not encrypted │ extended local header: no │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ + file last modified on (DOS date/time): 1980 Jan 1 00:00:00 │ 32-bit CRC value (hex): b0937586 │ compressed size: 3702 bytes │ uncompressed size: 3702 bytes │ length of filename: 21 characters │ - length of extra field: 4 bytes │ + length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ - The central-directory extra field contains: │ - - A subfield with ID 0xcafe (unknown) and 0 data bytes. │ - │ There is no file comment. │ │ -Central directory entry #5: │ +Central directory entry #4: │ --------------------------- │ │ - There are an extra 1 bytes preceding this file. │ - │ res/drawable/timepicker_down_btn.xml │ │ - offset of local header from start of archive: 7038 │ - (0000000000001B7Eh) bytes │ + offset of local header from start of archive: 11990 │ + (0000000000002ED6h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 2.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 2.0 │ compression method: deflated │ compression sub-type (deflation): normal │ file security status: not encrypted │ extended local header: yes │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ + file last modified on (DOS date/time): 2017 Oct 8 00:11:08 │ 32-bit CRC value (hex): a4cf3bf8 │ compressed size: 329 bytes │ uncompressed size: 1136 bytes │ length of filename: 36 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #6: │ +Central directory entry #5: │ --------------------------- │ │ There are an extra 16 bytes preceding this file. │ │ res/drawable/timepicker_down_disabled.9.png │ │ - offset of local header from start of archive: 7449 │ - (0000000000001D19h) bytes │ + offset of local header from start of archive: 12401 │ + (0000000000003071h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 1.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 1.0 │ compression method: none (stored) │ file security status: not encrypted │ extended local header: no │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ - 32-bit CRC value (hex): 9229ea25 │ - compressed size: 509 bytes │ - uncompressed size: 509 bytes │ + file last modified on (DOS date/time): 1980 Jan 1 00:00:00 │ + 32-bit CRC value (hex): deb2fe2b │ + compressed size: 545 bytes │ + uncompressed size: 545 bytes │ length of filename: 43 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #7: │ +Central directory entry #6: │ --------------------------- │ │ - There are an extra 2 bytes preceding this file. │ - │ res/drawable/timepicker_down_disabled_focused.9.png │ │ - offset of local header from start of archive: 8033 │ - (0000000000001F61h) bytes │ + offset of local header from start of archive: 13019 │ + (00000000000032DBh) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 1.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 1.0 │ compression method: none (stored) │ file security status: not encrypted │ extended local header: no │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ - 32-bit CRC value (hex): 7905a0ab │ - compressed size: 667 bytes │ - uncompressed size: 667 bytes │ + file last modified on (DOS date/time): 1980 Jan 1 00:00:00 │ + 32-bit CRC value (hex): 055b6c06 │ + compressed size: 703 bytes │ + uncompressed size: 703 bytes │ length of filename: 51 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #8: │ +Central directory entry #7: │ --------------------------- │ │ - There are an extra 2 bytes preceding this file. │ - │ res/drawable/timepicker_down_normal.9.png │ │ - offset of local header from start of archive: 8783 │ - (000000000000224Fh) bytes │ + offset of local header from start of archive: 13803 │ + (00000000000035EBh) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 1.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 1.0 │ compression method: none (stored) │ file security status: not encrypted │ extended local header: no │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ - 32-bit CRC value (hex): b015cfc8 │ - compressed size: 876 bytes │ - uncompressed size: 876 bytes │ + file last modified on (DOS date/time): 1980 Jan 1 00:00:00 │ + 32-bit CRC value (hex): 5a35bee4 │ + compressed size: 912 bytes │ + uncompressed size: 912 bytes │ length of filename: 41 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #9: │ +Central directory entry #8: │ --------------------------- │ │ - There are an extra 2 bytes preceding this file. │ - │ res/drawable/timepicker_down_pressed.9.png │ │ - offset of local header from start of archive: 9732 │ - (0000000000002604h) bytes │ + offset of local header from start of archive: 14786 │ + (00000000000039C2h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 1.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 1.0 │ compression method: none (stored) │ file security status: not encrypted │ extended local header: no │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ - 32-bit CRC value (hex): c9ad0b84 │ - compressed size: 1238 bytes │ - uncompressed size: 1238 bytes │ + file last modified on (DOS date/time): 1980 Jan 1 00:00:00 │ + 32-bit CRC value (hex): b773cbe0 │ + compressed size: 1274 bytes │ + uncompressed size: 1274 bytes │ length of filename: 42 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #10: │ +Central directory entry #9: │ --------------------------- │ │ res/drawable/timepicker_down_selected.9.png │ │ - offset of local header from start of archive: 11042 │ - (0000000000002B22h) bytes │ + offset of local header from start of archive: 16132 │ + (0000000000003F04h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 1.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 1.0 │ compression method: none (stored) │ file security status: not encrypted │ extended local header: no │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ - 32-bit CRC value (hex): 0580e3d1 │ - compressed size: 1247 bytes │ - uncompressed size: 1247 bytes │ + file last modified on (DOS date/time): 1980 Jan 1 00:00:00 │ + 32-bit CRC value (hex): b47d60e7 │ + compressed size: 1283 bytes │ + uncompressed size: 1283 bytes │ length of filename: 43 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #11: │ +Central directory entry #10: │ --------------------------- │ │ - There are an extra 1 bytes preceding this file. │ - │ res/drawable/timepicker_input.xml │ │ - offset of local header from start of archive: 12363 │ - (000000000000304Bh) bytes │ + offset of local header from start of archive: 17488 │ + (0000000000004450h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 2.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 2.0 │ compression method: deflated │ compression sub-type (deflation): normal │ file security status: not encrypted │ extended local header: yes │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ + file last modified on (DOS date/time): 2017 Oct 8 00:11:08 │ 32-bit CRC value (hex): 4084600f │ - compressed size: 330 bytes │ + compressed size: 329 bytes │ uncompressed size: 1136 bytes │ length of filename: 33 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #12: │ +Central directory entry #11: │ --------------------------- │ │ There are an extra 16 bytes preceding this file. │ │ res/drawable/timepicker_input_disabled.9.png │ │ - offset of local header from start of archive: 12772 │ - (00000000000031E4h) bytes │ + offset of local header from start of archive: 17896 │ + (00000000000045E8h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 1.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 1.0 │ compression method: none (stored) │ file security status: not encrypted │ extended local header: no │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ - 32-bit CRC value (hex): 465a5a7e │ - compressed size: 302 bytes │ - uncompressed size: 302 bytes │ + file last modified on (DOS date/time): 1980 Jan 1 00:00:00 │ + 32-bit CRC value (hex): cacbd52d │ + compressed size: 338 bytes │ + uncompressed size: 338 bytes │ length of filename: 44 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #13: │ +Central directory entry #12: │ --------------------------- │ │ - There are an extra 2 bytes preceding this file. │ - │ res/drawable/timepicker_input_normal.9.png │ │ - offset of local header from start of archive: 13150 │ - (000000000000335Eh) bytes │ + offset of local header from start of archive: 18308 │ + (0000000000004784h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 1.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 1.0 │ compression method: none (stored) │ file security status: not encrypted │ extended local header: no │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ - 32-bit CRC value (hex): bd711072 │ - compressed size: 633 bytes │ - uncompressed size: 633 bytes │ + file last modified on (DOS date/time): 1980 Jan 1 00:00:00 │ + 32-bit CRC value (hex): cff2e7cc │ + compressed size: 669 bytes │ + uncompressed size: 669 bytes │ length of filename: 42 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #14: │ +Central directory entry #13: │ --------------------------- │ │ - There are an extra 2 bytes preceding this file. │ - │ res/drawable/timepicker_input_pressed.9.png │ │ - offset of local header from start of archive: 13857 │ - (0000000000003621h) bytes │ + offset of local header from start of archive: 19049 │ + (0000000000004A69h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 1.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 1.0 │ compression method: none (stored) │ file security status: not encrypted │ extended local header: no │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ - 32-bit CRC value (hex): 586f634f │ - compressed size: 625 bytes │ - uncompressed size: 625 bytes │ + file last modified on (DOS date/time): 1980 Jan 1 00:00:00 │ + 32-bit CRC value (hex): 20ea1755 │ + compressed size: 661 bytes │ + uncompressed size: 661 bytes │ length of filename: 43 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #15: │ +Central directory entry #14: │ --------------------------- │ │ - There are an extra 2 bytes preceding this file. │ - │ res/drawable/timepicker_input_selected.9.png │ │ - offset of local header from start of archive: 14557 │ - (00000000000038DDh) bytes │ + offset of local header from start of archive: 19783 │ + (0000000000004D47h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 1.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 1.0 │ compression method: none (stored) │ file security status: not encrypted │ extended local header: no │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ - 32-bit CRC value (hex): e25f95e9 │ - compressed size: 539 bytes │ - uncompressed size: 539 bytes │ + file last modified on (DOS date/time): 1980 Jan 1 00:00:00 │ + 32-bit CRC value (hex): bcbe085c │ + compressed size: 575 bytes │ + uncompressed size: 575 bytes │ length of filename: 44 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #16: │ +Central directory entry #15: │ --------------------------- │ │ - There are an extra 1 bytes preceding this file. │ - │ res/drawable/timepicker_up_btn.xml │ │ - offset of local header from start of archive: 15171 │ - (0000000000003B43h) bytes │ + offset of local header from start of archive: 20432 │ + (0000000000004FD0h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 2.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 2.0 │ compression method: deflated │ compression sub-type (deflation): normal │ file security status: not encrypted │ extended local header: yes │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ + file last modified on (DOS date/time): 2017 Oct 8 00:11:08 │ 32-bit CRC value (hex): 210f0fab │ - compressed size: 329 bytes │ + compressed size: 328 bytes │ uncompressed size: 1136 bytes │ length of filename: 34 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #17: │ +Central directory entry #16: │ --------------------------- │ │ There are an extra 16 bytes preceding this file. │ │ res/drawable/timepicker_up_disabled.9.png │ │ - offset of local header from start of archive: 15580 │ - (0000000000003CDCh) bytes │ + offset of local header from start of archive: 20840 │ + (0000000000005168h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 1.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 1.0 │ compression method: none (stored) │ file security status: not encrypted │ extended local header: no │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ - 32-bit CRC value (hex): 8781831c │ - compressed size: 596 bytes │ - uncompressed size: 596 bytes │ + file last modified on (DOS date/time): 1980 Jan 1 00:00:00 │ + 32-bit CRC value (hex): 4f991be1 │ + compressed size: 632 bytes │ + uncompressed size: 632 bytes │ length of filename: 41 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #18: │ +Central directory entry #17: │ --------------------------- │ │ - There are an extra 1 bytes preceding this file. │ - │ res/drawable/timepicker_up_disabled_focused.9.png │ │ - offset of local header from start of archive: 16248 │ - (0000000000003F78h) bytes │ + offset of local header from start of archive: 21543 │ + (0000000000005427h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 1.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 1.0 │ compression method: none (stored) │ file security status: not encrypted │ extended local header: no │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ - 32-bit CRC value (hex): c8e0f016 │ - compressed size: 810 bytes │ - uncompressed size: 810 bytes │ + file last modified on (DOS date/time): 1980 Jan 1 00:00:00 │ + 32-bit CRC value (hex): 7f98a0ed │ + compressed size: 846 bytes │ + uncompressed size: 846 bytes │ length of filename: 49 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #19: │ +Central directory entry #18: │ --------------------------- │ │ - There are an extra 1 bytes preceding this file. │ - │ res/drawable/timepicker_up_normal.9.png │ │ - offset of local header from start of archive: 17138 │ - (00000000000042F2h) bytes │ + offset of local header from start of archive: 22468 │ + (00000000000057C4h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 1.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 1.0 │ compression method: none (stored) │ file security status: not encrypted │ extended local header: no │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ - 32-bit CRC value (hex): 48540d45 │ - compressed size: 1104 bytes │ - uncompressed size: 1104 bytes │ + file last modified on (DOS date/time): 1980 Jan 1 00:00:00 │ + 32-bit CRC value (hex): 00a022d5 │ + compressed size: 1140 bytes │ + uncompressed size: 1140 bytes │ length of filename: 39 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #20: │ +Central directory entry #19: │ --------------------------- │ │ - There are an extra 1 bytes preceding this file. │ - │ res/drawable/timepicker_up_pressed.9.png │ │ - offset of local header from start of archive: 18312 │ - (0000000000004788h) bytes │ + offset of local header from start of archive: 23677 │ + (0000000000005C7Dh) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 1.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 1.0 │ compression method: none (stored) │ file security status: not encrypted │ extended local header: no │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ - 32-bit CRC value (hex): 84d5eeb1 │ - compressed size: 1513 bytes │ - uncompressed size: 1513 bytes │ + file last modified on (DOS date/time): 1980 Jan 1 00:00:00 │ + 32-bit CRC value (hex): d9a7aa66 │ + compressed size: 1549 bytes │ + uncompressed size: 1549 bytes │ length of filename: 40 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #21: │ +Central directory entry #20: │ --------------------------- │ │ - There are an extra 2 bytes preceding this file. │ - │ res/drawable/timepicker_up_selected.9.png │ │ - offset of local header from start of archive: 19897 │ - (0000000000004DB9h) bytes │ + offset of local header from start of archive: 25296 │ + (00000000000062D0h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 1.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 1.0 │ compression method: none (stored) │ file security status: not encrypted │ extended local header: no │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ - 32-bit CRC value (hex): 354fb7fd │ - compressed size: 1506 bytes │ - uncompressed size: 1506 bytes │ + file last modified on (DOS date/time): 1980 Jan 1 00:00:00 │ + 32-bit CRC value (hex): ea5fb74b │ + compressed size: 1542 bytes │ + uncompressed size: 1542 bytes │ length of filename: 41 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #22: │ +Central directory entry #21: │ --------------------------- │ │ res/layout/act_gmdice.xml │ │ - offset of local header from start of archive: 21474 │ - (00000000000053E2h) bytes │ + offset of local header from start of archive: 26909 │ + (000000000000691Dh) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 2.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 2.0 │ compression method: deflated │ compression sub-type (deflation): normal │ file security status: not encrypted │ extended local header: yes │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ + file last modified on (DOS date/time): 2017 Oct 8 00:11:08 │ 32-bit CRC value (hex): f6ae7fa4 │ compressed size: 689 bytes │ uncompressed size: 2428 bytes │ length of filename: 25 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #23: │ +Central directory entry #22: │ --------------------------- │ │ There are an extra 16 bytes preceding this file. │ │ res/layout/dg_configure.xml │ │ - offset of local header from start of archive: 22234 │ - (00000000000056DAh) bytes │ + offset of local header from start of archive: 27669 │ + (0000000000006C15h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 2.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 2.0 │ compression method: deflated │ compression sub-type (deflation): normal │ file security status: not encrypted │ extended local header: yes │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ + file last modified on (DOS date/time): 2017 Oct 8 00:11:08 │ 32-bit CRC value (hex): dcd2dc75 │ - compressed size: 637 bytes │ + compressed size: 636 bytes │ uncompressed size: 1924 bytes │ length of filename: 27 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #24: │ +Central directory entry #23: │ --------------------------- │ │ There are an extra 16 bytes preceding this file. │ │ res/layout/number_picker.xml │ │ - offset of local header from start of archive: 22944 │ - (00000000000059A0h) bytes │ + offset of local header from start of archive: 28378 │ + (0000000000006EDAh) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 2.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 2.0 │ compression method: deflated │ compression sub-type (deflation): normal │ file security status: not encrypted │ extended local header: yes │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ + file last modified on (DOS date/time): 2017 Oct 8 00:11:08 │ 32-bit CRC value (hex): 1ab92738 │ compressed size: 517 bytes │ uncompressed size: 1264 bytes │ length of filename: 28 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #25: │ +Central directory entry #24: │ --------------------------- │ │ There are an extra 16 bytes preceding this file. │ │ res/layout/spinner_item.xml │ │ - offset of local header from start of archive: 23535 │ - (0000000000005BEFh) bytes │ + offset of local header from start of archive: 28969 │ + (0000000000007129h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 2.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 2.0 │ compression method: deflated │ compression sub-type (deflation): normal │ file security status: not encrypted │ extended local header: yes │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ + file last modified on (DOS date/time): 2017 Oct 8 00:11:08 │ 32-bit CRC value (hex): af910bdb │ compressed size: 344 bytes │ uncompressed size: 704 bytes │ length of filename: 27 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #26: │ +Central directory entry #25: │ --------------------------- │ │ There are an extra 16 bytes preceding this file. │ │ res/layout/view_log.xml │ │ - offset of local header from start of archive: 23952 │ - (0000000000005D90h) bytes │ + offset of local header from start of archive: 29386 │ + (00000000000072CAh) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 2.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 2.0 │ compression method: deflated │ compression sub-type (deflation): normal │ file security status: not encrypted │ extended local header: yes │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ + file last modified on (DOS date/time): 2017 Oct 8 00:11:08 │ 32-bit CRC value (hex): b99e389c │ compressed size: 334 bytes │ uncompressed size: 696 bytes │ length of filename: 23 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #27: │ +Central directory entry #26: │ --------------------------- │ │ There are an extra 16 bytes preceding this file. │ │ res/menu/main_context.xml │ │ - offset of local header from start of archive: 24355 │ - (0000000000005F23h) bytes │ + offset of local header from start of archive: 29789 │ + (000000000000745Dh) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 2.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 2.0 │ compression method: deflated │ compression sub-type (deflation): normal │ file security status: not encrypted │ extended local header: yes │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ + file last modified on (DOS date/time): 2017 Oct 8 00:11:08 │ 32-bit CRC value (hex): cc21e9ea │ compressed size: 327 bytes │ uncompressed size: 864 bytes │ length of filename: 25 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ -Central directory entry #28: │ +Central directory entry #27: │ --------------------------- │ │ There are an extra 16 bytes preceding this file. │ │ - AndroidManifest.xml │ + resources.arsc │ │ - offset of local header from start of archive: 24753 │ - (00000000000060B1h) bytes │ + offset of local header from start of archive: 30187 │ + (00000000000075EBh) bytes │ + file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ + version of encoding software: 1.0 │ + minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ + minimum software version required to extract: 1.0 │ + compression method: none (stored) │ + file security status: not encrypted │ + extended local header: no │ + file last modified on (DOS date/time): 1980 Jan 1 00:00:00 │ + 32-bit CRC value (hex): 60d66ec0 │ + compressed size: 10016 bytes │ + uncompressed size: 10016 bytes │ + length of filename: 14 characters │ + length of extra field: 0 bytes │ + length of file comment: 0 characters │ + disk number on which file begins: disk 1 │ + apparent file type: binary │ + non-MSDOS external file attributes: 000000 hex │ + MS-DOS file attributes (00 hex): none │ + │ + There is no file comment. │ + │ +Central directory entry #28: │ +--------------------------- │ + │ + classes.dex │ + │ + offset of local header from start of archive: 40247 │ + (0000000000009D37h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 2.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 2.0 │ compression method: deflated │ compression sub-type (deflation): normal │ file security status: not encrypted │ extended local header: yes │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ - 32-bit CRC value (hex): db8aeaaf │ - compressed size: 758 bytes │ - uncompressed size: 1928 bytes │ - length of filename: 19 characters │ + file last modified on (DOS date/time): 2017 Oct 8 00:11:08 │ + 32-bit CRC value (hex): 5db9d144 │ + compressed size: 16196 bytes │ + uncompressed size: 39632 bytes │ + length of filename: 11 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ Central directory entry #29: │ --------------------------- │ │ There are an extra 16 bytes preceding this file. │ │ - resources.arsc │ + META-INF/MANIFEST.MF │ │ - offset of local header from start of archive: 25576 │ - (00000000000063E8h) bytes │ + offset of local header from start of archive: 56500 │ + (000000000000DCB4h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ - version of encoding software: 1.0 │ + version of encoding software: 2.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ - minimum software version required to extract: 1.0 │ - compression method: none (stored) │ + minimum software version required to extract: 2.0 │ + compression method: deflated │ + compression sub-type (deflation): normal │ file security status: not encrypted │ extended local header: no │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ - 32-bit CRC value (hex): 45511c64 │ - compressed size: 9848 bytes │ - uncompressed size: 9848 bytes │ - length of filename: 14 characters │ + file last modified on (DOS date/time): 2017 Oct 8 00:11:08 │ + 32-bit CRC value (hex): 79129eb6 │ + compressed size: 978 bytes │ + uncompressed size: 2504 bytes │ + length of filename: 20 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ Central directory entry #30: │ --------------------------- │ │ - res/drawable-hdpi/logo.png │ + META-INF/0EC6DE5B.SF │ │ - offset of local header from start of archive: 35468 │ - (0000000000008A8Ch) bytes │ + offset of local header from start of archive: 57528 │ + (000000000000E0B8h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ - version of encoding software: 1.0 │ + version of encoding software: 2.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ - minimum software version required to extract: 1.0 │ - compression method: none (stored) │ + minimum software version required to extract: 2.0 │ + compression method: deflated │ + compression sub-type (deflation): normal │ file security status: not encrypted │ extended local header: no │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ - 32-bit CRC value (hex): b683267c │ - compressed size: 7432 bytes │ - uncompressed size: 7432 bytes │ - length of filename: 26 characters │ + file last modified on (DOS date/time): 2017 Oct 8 00:11:08 │ + 32-bit CRC value (hex): 90b6ca16 │ + compressed size: 1047 bytes │ + uncompressed size: 2625 bytes │ + length of filename: 20 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none │ │ There is no file comment. │ │ Central directory entry #31: │ --------------------------- │ │ - classes.dex │ + META-INF/0EC6DE5B.RSA │ │ - offset of local header from start of archive: 42956 │ - (000000000000A7CCh) bytes │ + offset of local header from start of archive: 58625 │ + (000000000000E501h) bytes │ file system or operating system of origin: MS-DOS, OS/2 or NT FAT │ version of encoding software: 2.0 │ minimum file system compatibility required: MS-DOS, OS/2 or NT FAT │ minimum software version required to extract: 2.0 │ compression method: deflated │ compression sub-type (deflation): normal │ file security status: not encrypted │ - extended local header: yes │ - file last modified on (DOS date/time): 2014 Jul 9 05:26:26 │ - 32-bit CRC value (hex): 8caf47de │ - compressed size: 16227 bytes │ - uncompressed size: 39356 bytes │ - length of filename: 11 characters │ + extended local header: no │ + file last modified on (DOS date/time): 2017 Oct 8 00:11:08 │ + 32-bit CRC value (hex): da9213c8 │ + compressed size: 1037 bytes │ + uncompressed size: 1297 bytes │ + length of filename: 21 characters │ length of extra field: 0 bytes │ length of file comment: 0 characters │ disk number on which file begins: disk 1 │ apparent file type: binary │ non-MSDOS external file attributes: 000000 hex │ MS-DOS file attributes (00 hex): none ├── filetype from file(1) │ @@ -1 +1 @@ │ -Zip archive data, at least v2.0 to extract │ +Java archive data (JAR) ├── AndroidManifest.xml (decoded) │ ├── AndroidManifest.xml │ │ @@ -1,13 +1,12 @@ │ │ │ │ - │ │ + │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ - │ │ ├── resources.arsc │ ├── aapt2 dump resources {} │ │ @@ -10,15 +10,15 @@ │ │ resource 0x7f010003 attr/maxValue │ │ () (attr) type=integer │ │ resource 0x7f010004 attr/wrap │ │ () (attr) type=boolean │ │ type drawable id=02 entryCount=18 │ │ resource 0x7f020000 drawable/logo │ │ () (file) res/drawable/logo.png type=PNG │ │ - (hdpi-v4) (file) res/drawable-hdpi/logo.png type=PNG │ │ + (hdpi-v4) (file) res/drawable-hdpi-v4/logo.png type=PNG │ │ resource 0x7f020001 drawable/timepicker_down_btn │ │ () (file) res/drawable/timepicker_down_btn.xml type=XML │ │ resource 0x7f020002 drawable/timepicker_down_disabled │ │ () (file) res/drawable/timepicker_down_disabled.9.png type=PNG │ │ resource 0x7f020003 drawable/timepicker_down_disabled_focused │ │ () (file) res/drawable/timepicker_down_disabled_focused.9.png type=PNG │ │ resource 0x7f020004 drawable/timepicker_down_normal ├── classes.dex │ ├── dexdump -a -d -f -h {} │ │┄ Ignoring differences in offsets to keep diff size reasonable. │ │ @@ -1,36 +1,36 @@ │ │ DEX version '035' │ │ DEX file header: │ │ magic : 'dex\n035\0' │ │ -checksum : cab7b61f │ │ -signature : 1fa4...64bb │ │ -file_size : 39356 │ │ +checksum : da85aef3 │ │ +signature : d4b8...8a10 │ │ +file_size : 39632 │ │ header_size : 112 │ │ link_size : 0 │ │ link_off : 0 (0x000000) │ │ -string_ids_size : 604 │ │ +string_ids_size : 600 │ │ string_ids_off : 112 (0x000070) │ │ -type_ids_size : 121 │ │ -type_ids_off : 2528 (0x0009e0) │ │ +type_ids_size : 120 │ │ +type_ids_off : 2512 (0x0009d0) │ │ proto_ids_size : 128 │ │ -proto_ids_off : 3012 (0x000bc4) │ │ +proto_ids_off : 2992 (0x000bb0) │ │ field_ids_size : 159 │ │ -field_ids_off : 4548 (0x0011c4) │ │ +field_ids_off : 4528 (0x0011b0) │ │ method_ids_size : 296 │ │ -method_ids_off : 5820 (0x0016bc) │ │ +method_ids_off : 5800 (0x0016a8) │ │ class_defs_size : 34 │ │ -class_defs_off : 8188 (0x001ffc) │ │ -data_size : 30036 │ │ -data_off : 9320 (0x002468) │ │ +class_defs_off : 8168 (0x001fe8) │ │ +data_size : 30332 │ │ +data_off : 9300 (0x002454) │ │ │ │ Class #0 header: │ │ class_idx : 2 │ │ access_flags : 9729 (0x2601) │ │ -superclass_idx : 97 │ │ -source_file_idx : 198 │ │ +superclass_idx : 96 │ │ +source_file_idx : 197 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 0 │ │ virtual_methods_size: 1 │ │ │ │ Class #0 annotations: │ │ Annotations on class │ │ @@ -49,21 +49,21 @@ │ │ Virtual methods - │ │ #0 : (in Landroid/annotation/SuppressLint;) │ │ name : 'value' │ │ type : '()[Ljava/lang/String;' │ │ access : 0x0401 (PUBLIC ABSTRACT) │ │ code : (none) │ │ │ │ - source_file_idx : 198 (SuppressLint.java) │ │ + source_file_idx : 197 (SuppressLint.java) │ │ │ │ Class #1 header: │ │ class_idx : 3 │ │ access_flags : 9729 (0x2601) │ │ -superclass_idx : 97 │ │ -source_file_idx : 202 │ │ +superclass_idx : 96 │ │ +source_file_idx : 201 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 0 │ │ virtual_methods_size: 1 │ │ │ │ Class #1 annotations: │ │ Annotations on class │ │ @@ -82,20 +82,20 @@ │ │ Virtual methods - │ │ #0 : (in Landroid/annotation/TargetApi;) │ │ name : 'value' │ │ type : '()I' │ │ access : 0x0401 (PUBLIC ABSTRACT) │ │ code : (none) │ │ │ │ - source_file_idx : 202 (TargetApi.java) │ │ + source_file_idx : 201 (TargetApi.java) │ │ │ │ Class #2 header: │ │ -class_idx : 58 │ │ +class_idx : 57 │ │ access_flags : 17 (0x0011) │ │ -superclass_idx : 97 │ │ +superclass_idx : 96 │ │ source_file_idx : 27 │ │ static_fields_size : 1 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 0 │ │ │ │ Class #2 - │ │ @@ -115,30 +115,30 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -002f14: |[002f14] de.duenndns.gmdice.BuildConfig.:()V │ │ -002f24: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ -002f2a: 0e00 |0003: return-void │ │ +00309c: |[00309c] de.duenndns.gmdice.BuildConfig.:()V │ │ +0030ac: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ +0030b2: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=4 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lde/duenndns/gmdice/BuildConfig; │ │ │ │ Virtual methods - │ │ source_file_idx : 27 (BuildConfig.java) │ │ │ │ Class #3 header: │ │ -class_idx : 61 │ │ +class_idx : 60 │ │ access_flags : 1 (0x0001) │ │ -superclass_idx : 97 │ │ +superclass_idx : 96 │ │ source_file_idx : 39 │ │ static_fields_size : 0 │ │ instance_fields_size: 2 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 6 │ │ │ │ Class #3 annotations: │ │ @@ -168,46 +168,46 @@ │ │ type : '(I)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 68 16-bit code units │ │ -002f2c: |[002f2c] de.duenndns.gmdice.DiceCache.:(I)V │ │ -002f3c: 7010 0501 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@0105 │ │ -002f42: 5923 0900 |0003: iput v3, v2, Lde/duenndns/gmdice/DiceCache;.count:I // field@0009 │ │ -002f46: 2200 6a00 |0005: new-instance v0, Ljava/util/ArrayList; // type@006a │ │ -002f4a: 7010 1701 0000 |0007: invoke-direct {v0}, Ljava/util/ArrayList;.:()V // method@0117 │ │ -002f50: 5b20 0a00 |000a: iput-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ -002f54: 5420 0a00 |000c: iget-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ -002f58: 1a01 0f00 |000e: const-string v1, "1d2" // string@000f │ │ -002f5c: 7110 7200 0100 |0010: invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ -002f62: 0c01 |0013: move-result-object v1 │ │ -002f64: 6e20 1901 1000 |0014: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@0119 │ │ -002f6a: 5420 0a00 |0017: iget-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ -002f6e: 1a01 1100 |0019: const-string v1, "1d6" // string@0011 │ │ -002f72: 7110 7200 0100 |001b: invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ -002f78: 0c01 |001e: move-result-object v1 │ │ -002f7a: 6e20 1901 1000 |001f: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@0119 │ │ -002f80: 5420 0a00 |0022: iget-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ -002f84: 1a01 1200 |0024: const-string v1, "1d6+1" // string@0012 │ │ -002f88: 7110 7200 0100 |0026: invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ -002f8e: 0c01 |0029: move-result-object v1 │ │ -002f90: 6e20 1901 1000 |002a: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@0119 │ │ -002f96: 5420 0a00 |002d: iget-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ -002f9a: 1a01 0e00 |002f: const-string v1, "1d10" // string@000e │ │ -002f9e: 7110 7200 0100 |0031: invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ -002fa4: 0c01 |0034: move-result-object v1 │ │ -002fa6: 6e20 1901 1000 |0035: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@0119 │ │ -002fac: 5420 0a00 |0038: iget-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ -002fb0: 1a01 1000 |003a: const-string v1, "1d20" // string@0010 │ │ -002fb4: 7110 7200 0100 |003c: invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ -002fba: 0c01 |003f: move-result-object v1 │ │ -002fbc: 6e20 1901 1000 |0040: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@0119 │ │ -002fc2: 0e00 |0043: return-void │ │ +0030b4: |[0030b4] de.duenndns.gmdice.DiceCache.:(I)V │ │ +0030c4: 7010 0501 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@0105 │ │ +0030ca: 5923 0900 |0003: iput v3, v2, Lde/duenndns/gmdice/DiceCache;.count:I // field@0009 │ │ +0030ce: 2200 6900 |0005: new-instance v0, Ljava/util/ArrayList; // type@0069 │ │ +0030d2: 7010 1701 0000 |0007: invoke-direct {v0}, Ljava/util/ArrayList;.:()V // method@0117 │ │ +0030d8: 5b20 0a00 |000a: iput-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ +0030dc: 5420 0a00 |000c: iget-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ +0030e0: 1a01 0f00 |000e: const-string v1, "1d2" // string@000f │ │ +0030e4: 7110 7200 0100 |0010: invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ +0030ea: 0c01 |0013: move-result-object v1 │ │ +0030ec: 6e20 1901 1000 |0014: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@0119 │ │ +0030f2: 5420 0a00 |0017: iget-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ +0030f6: 1a01 1100 |0019: const-string v1, "1d6" // string@0011 │ │ +0030fa: 7110 7200 0100 |001b: invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ +003100: 0c01 |001e: move-result-object v1 │ │ +003102: 6e20 1901 1000 |001f: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@0119 │ │ +003108: 5420 0a00 |0022: iget-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ +00310c: 1a01 1200 |0024: const-string v1, "1d6+1" // string@0012 │ │ +003110: 7110 7200 0100 |0026: invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ +003116: 0c01 |0029: move-result-object v1 │ │ +003118: 6e20 1901 1000 |002a: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@0119 │ │ +00311e: 5420 0a00 |002d: iget-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ +003122: 1a01 0e00 |002f: const-string v1, "1d10" // string@000e │ │ +003126: 7110 7200 0100 |0031: invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ +00312c: 0c01 |0034: move-result-object v1 │ │ +00312e: 6e20 1901 1000 |0035: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@0119 │ │ +003134: 5420 0a00 |0038: iget-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ +003138: 1a01 1000 |003a: const-string v1, "1d20" // string@0010 │ │ +00313c: 7110 7200 0100 |003c: invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ +003142: 0c01 |003f: move-result-object v1 │ │ +003144: 6e20 1901 1000 |0040: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@0119 │ │ +00314a: 0e00 |0043: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=30 │ │ 0x0003 line=31 │ │ 0x0005 line=32 │ │ 0x000c line=33 │ │ 0x0017 line=34 │ │ @@ -225,16 +225,16 @@ │ │ type : '(Lde/duenndns/gmdice/DSADiceSet;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -002fc4: |[002fc4] de.duenndns.gmdice.DiceCache.add:(Lde/duenndns/gmdice/DSADiceSet;)V │ │ -002fd4: 0e00 |0000: return-void │ │ +00314c: |[00314c] de.duenndns.gmdice.DiceCache.add:(Lde/duenndns/gmdice/DSADiceSet;)V │ │ +00315c: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ locals : │ │ 0x0000 - 0x0001 reg=0 this Lde/duenndns/gmdice/DiceCache; │ │ 0x0000 - 0x0001 reg=1 ds Lde/duenndns/gmdice/DSADiceSet; │ │ │ │ @@ -243,30 +243,30 @@ │ │ type : '(Lde/duenndns/gmdice/DiceSet;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 30 16-bit code units │ │ -002fd8: |[002fd8] de.duenndns.gmdice.DiceCache.add:(Lde/duenndns/gmdice/DiceSet;)V │ │ -002fe8: 5420 0a00 |0000: iget-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ -002fec: 6e20 1d01 3000 |0002: invoke-virtual {v0, v3}, Ljava/util/ArrayList;.remove:(Ljava/lang/Object;)Z // method@011d │ │ -002ff2: 5420 0a00 |0005: iget-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ -002ff6: 1201 |0007: const/4 v1, #int 0 // #0 │ │ -002ff8: 6e30 1801 1003 |0008: invoke-virtual {v0, v1, v3}, Ljava/util/ArrayList;.add:(ILjava/lang/Object;)V // method@0118 │ │ -002ffe: 5420 0a00 |000b: iget-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ -003002: 6e10 1e01 0000 |000d: invoke-virtual {v0}, Ljava/util/ArrayList;.size:()I // method@011e │ │ -003008: 0a00 |0010: move-result v0 │ │ -00300a: 5221 0900 |0011: iget v1, v2, Lde/duenndns/gmdice/DiceCache;.count:I // field@0009 │ │ -00300e: 3710 0a00 |0013: if-le v0, v1, 001d // +000a │ │ -003012: 5420 0a00 |0015: iget-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ -003016: 5221 0900 |0017: iget v1, v2, Lde/duenndns/gmdice/DiceCache;.count:I // field@0009 │ │ -00301a: 6e20 1c01 1000 |0019: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.remove:(I)Ljava/lang/Object; // method@011c │ │ -003020: 28ef |001c: goto 000b // -0011 │ │ -003022: 0e00 |001d: return-void │ │ +003160: |[003160] de.duenndns.gmdice.DiceCache.add:(Lde/duenndns/gmdice/DiceSet;)V │ │ +003170: 5420 0a00 |0000: iget-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ +003174: 6e20 1d01 3000 |0002: invoke-virtual {v0, v3}, Ljava/util/ArrayList;.remove:(Ljava/lang/Object;)Z // method@011d │ │ +00317a: 5420 0a00 |0005: iget-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ +00317e: 1201 |0007: const/4 v1, #int 0 // #0 │ │ +003180: 6e30 1801 1003 |0008: invoke-virtual {v0, v1, v3}, Ljava/util/ArrayList;.add:(ILjava/lang/Object;)V // method@0118 │ │ +003186: 5420 0a00 |000b: iget-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ +00318a: 6e10 1e01 0000 |000d: invoke-virtual {v0}, Ljava/util/ArrayList;.size:()I // method@011e │ │ +003190: 0a00 |0010: move-result v0 │ │ +003192: 5221 0900 |0011: iget v1, v2, Lde/duenndns/gmdice/DiceCache;.count:I // field@0009 │ │ +003196: 3710 0a00 |0013: if-le v0, v1, 001d // +000a │ │ +00319a: 5420 0a00 |0015: iget-object v0, v2, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ +00319e: 5221 0900 |0017: iget v1, v2, Lde/duenndns/gmdice/DiceCache;.count:I // field@0009 │ │ +0031a2: 6e20 1c01 1000 |0019: invoke-virtual {v0, v1}, Ljava/util/ArrayList;.remove:(I)Ljava/lang/Object; // method@011c │ │ +0031a8: 28ef |001c: goto 000b // -0011 │ │ +0031aa: 0e00 |001d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=50 │ │ 0x0005 line=51 │ │ 0x000b line=52 │ │ 0x0015 line=53 │ │ 0x001d line=54 │ │ @@ -279,184 +279,178 @@ │ │ type : '(Lde/duenndns/gmdice/FUDGEDiceSet;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 1 16-bit code units │ │ -003024: |[003024] de.duenndns.gmdice.DiceCache.add:(Lde/duenndns/gmdice/FUDGEDiceSet;)V │ │ -003034: 0e00 |0000: return-void │ │ +0031ac: |[0031ac] de.duenndns.gmdice.DiceCache.add:(Lde/duenndns/gmdice/FUDGEDiceSet;)V │ │ +0031bc: 0e00 |0000: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=41 │ │ locals : │ │ 0x0000 - 0x0001 reg=0 this Lde/duenndns/gmdice/DiceCache; │ │ 0x0000 - 0x0001 reg=1 ds Lde/duenndns/gmdice/FUDGEDiceSet; │ │ │ │ #3 : (in Lde/duenndns/gmdice/DiceCache;) │ │ name : 'loadFromString' │ │ type : '(Ljava/lang/String;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ - registers : 9 │ │ + registers : 8 │ │ ins : 2 │ │ outs : 2 │ │ - insns size : 39 16-bit code units │ │ -003038: |[003038] de.duenndns.gmdice.DiceCache.loadFromString:(Ljava/lang/String;)V │ │ -003048: 3908 0300 |0000: if-nez v8, 0003 // +0003 │ │ -00304c: 0e00 |0002: return-void │ │ -00304e: 1a05 ec00 |0003: const-string v5, "\|" // string@00ec │ │ -003052: 6e20 0b01 5800 |0005: invoke-virtual {v8, v5}, Ljava/lang/String;.split:(Ljava/lang/String;)[Ljava/lang/String; // method@010b │ │ -003058: 0c04 |0008: move-result-object v4 │ │ -00305a: 5475 0a00 |0009: iget-object v5, v7, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ -00305e: 6e10 1a01 0500 |000b: invoke-virtual {v5}, Ljava/util/ArrayList;.clear:()V // method@011a │ │ -003064: 0740 |000e: move-object v0, v4 │ │ -003066: 2102 |000f: array-length v2, v0 │ │ -003068: 1201 |0010: const/4 v1, #int 0 // #0 │ │ -00306a: 3521 f1ff |0011: if-ge v1, v2, 0002 // -000f │ │ -00306e: 4603 0001 |0013: aget-object v3, v0, v1 │ │ -003072: 6e10 0a01 0300 |0015: invoke-virtual {v3}, Ljava/lang/String;.length:()I // method@010a │ │ -003078: 0a05 |0018: move-result v5 │ │ -00307a: 3d05 0b00 |0019: if-lez v5, 0024 // +000b │ │ -00307e: 5475 0a00 |001b: iget-object v5, v7, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ -003082: 7110 7200 0300 |001d: invoke-static {v3}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ -003088: 0c06 |0020: move-result-object v6 │ │ -00308a: 6e20 1901 6500 |0021: invoke-virtual {v5, v6}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@0119 │ │ -003090: d801 0101 |0024: add-int/lit8 v1, v1, #int 1 // #01 │ │ -003094: 28eb |0026: goto 0011 // -0015 │ │ + insns size : 38 16-bit code units │ │ +0031c0: |[0031c0] de.duenndns.gmdice.DiceCache.loadFromString:(Ljava/lang/String;)V │ │ +0031d0: 3907 0300 |0000: if-nez v7, 0003 // +0003 │ │ +0031d4: 0e00 |0002: return-void │ │ +0031d6: 1a02 eb00 |0003: const-string v2, "\|" // string@00eb │ │ +0031da: 6e20 0b01 2700 |0005: invoke-virtual {v7, v2}, Ljava/lang/String;.split:(Ljava/lang/String;)[Ljava/lang/String; // method@010b │ │ +0031e0: 0c01 |0008: move-result-object v1 │ │ +0031e2: 5462 0a00 |0009: iget-object v2, v6, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ +0031e6: 6e10 1a01 0200 |000b: invoke-virtual {v2}, Ljava/util/ArrayList;.clear:()V // method@011a │ │ +0031ec: 2113 |000e: array-length v3, v1 │ │ +0031ee: 1202 |000f: const/4 v2, #int 0 // #0 │ │ +0031f0: 3532 f2ff |0010: if-ge v2, v3, 0002 // -000e │ │ +0031f4: 4600 0102 |0012: aget-object v0, v1, v2 │ │ +0031f8: 6e10 0a01 0000 |0014: invoke-virtual {v0}, Ljava/lang/String;.length:()I // method@010a │ │ +0031fe: 0a04 |0017: move-result v4 │ │ +003200: 3d04 0b00 |0018: if-lez v4, 0023 // +000b │ │ +003204: 5464 0a00 |001a: iget-object v4, v6, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ +003208: 7110 7200 0000 |001c: invoke-static {v0}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ +00320e: 0c05 |001f: move-result-object v5 │ │ +003210: 6e20 1901 5400 |0020: invoke-virtual {v4, v5}, Ljava/util/ArrayList;.add:(Ljava/lang/Object;)Z // method@0119 │ │ +003216: d802 0201 |0023: add-int/lit8 v2, v2, #int 1 // #01 │ │ +00321a: 28eb |0025: goto 0010 // -0015 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=77 │ │ 0x0002 line=85 │ │ 0x0003 line=79 │ │ 0x0009 line=80 │ │ 0x000e line=81 │ │ - 0x0015 line=82 │ │ - 0x001b line=83 │ │ - 0x0024 line=81 │ │ + 0x0014 line=82 │ │ + 0x001a line=83 │ │ + 0x0023 line=81 │ │ locals : │ │ - 0x000f - 0x0027 reg=0 arr$ [Ljava/lang/String; │ │ - 0x0011 - 0x0027 reg=1 i$ I │ │ - 0x0010 - 0x0027 reg=2 len$ I │ │ - 0x0015 - 0x0027 reg=3 v Ljava/lang/String; │ │ - 0x0009 - 0x0027 reg=4 values [Ljava/lang/String; │ │ - 0x0000 - 0x0027 reg=7 this Lde/duenndns/gmdice/DiceCache; │ │ - 0x0000 - 0x0027 reg=8 s Ljava/lang/String; │ │ + 0x0014 - 0x0026 reg=0 v Ljava/lang/String; │ │ + 0x0009 - 0x0026 reg=1 values [Ljava/lang/String; │ │ + 0x0000 - 0x0026 reg=6 this Lde/duenndns/gmdice/DiceCache; │ │ + 0x0000 - 0x0026 reg=7 s Ljava/lang/String; │ │ │ │ #4 : (in Lde/duenndns/gmdice/DiceCache;) │ │ name : 'populate' │ │ type : '(Landroid/widget/ArrayAdapter;Ljava/util/List;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 6 │ │ ins : 3 │ │ outs : 2 │ │ insns size : 67 16-bit code units │ │ -003098: |[003098] de.duenndns.gmdice.DiceCache.populate:(Landroid/widget/ArrayAdapter;Ljava/util/List;)V │ │ -0030a8: 5432 0a00 |0000: iget-object v2, v3, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ -0030ac: 6e10 1b01 0200 |0002: invoke-virtual {v2}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@011b │ │ -0030b2: 0c01 |0005: move-result-object v1 │ │ -0030b4: 7210 2301 0100 |0006: invoke-interface {v1}, Ljava/util/Iterator;.hasNext:()Z // method@0123 │ │ -0030ba: 0a02 |0009: move-result v2 │ │ -0030bc: 3802 1600 |000a: if-eqz v2, 0020 // +0016 │ │ -0030c0: 7210 2401 0100 |000c: invoke-interface {v1}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@0124 │ │ -0030c6: 0c00 |000f: move-result-object v0 │ │ -0030c8: 1f00 3e00 |0010: check-cast v0, Lde/duenndns/gmdice/DiceSet; // type@003e │ │ -0030cc: 7220 2501 0500 |0012: invoke-interface {v5, v0}, Ljava/util/List;.contains:(Ljava/lang/Object;)Z // method@0125 │ │ -0030d2: 0a02 |0015: move-result v2 │ │ -0030d4: 3902 f0ff |0016: if-nez v2, 0006 // -0010 │ │ -0030d8: 6e10 7500 0000 |0018: invoke-virtual {v0}, Lde/duenndns/gmdice/DiceSet;.toString:()Ljava/lang/String; // method@0075 │ │ -0030de: 0c02 |001b: move-result-object v2 │ │ -0030e0: 6e20 3b00 2400 |001c: invoke-virtual {v4, v2}, Landroid/widget/ArrayAdapter;.add:(Ljava/lang/Object;)V // method@003b │ │ -0030e6: 28e7 |001f: goto 0006 // -0019 │ │ -0030e8: 1a02 1300 |0020: const-string v2, "3D20" // string@0013 │ │ -0030ec: 7110 7200 0200 |0022: invoke-static {v2}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ -0030f2: 0c02 |0025: move-result-object v2 │ │ -0030f4: 7220 2501 2500 |0026: invoke-interface {v5, v2}, Ljava/util/List;.contains:(Ljava/lang/Object;)Z // method@0125 │ │ -0030fa: 0a02 |0029: move-result v2 │ │ -0030fc: 3902 0700 |002a: if-nez v2, 0031 // +0007 │ │ -003100: 1a02 1300 |002c: const-string v2, "3D20" // string@0013 │ │ -003104: 6e20 3b00 2400 |002e: invoke-virtual {v4, v2}, Landroid/widget/ArrayAdapter;.add:(Ljava/lang/Object;)V // method@003b │ │ -00310a: 1a02 1400 |0031: const-string v2, "4dF" // string@0014 │ │ -00310e: 7110 7200 0200 |0033: invoke-static {v2}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ -003114: 0c02 |0036: move-result-object v2 │ │ -003116: 7220 2501 2500 |0037: invoke-interface {v5, v2}, Ljava/util/List;.contains:(Ljava/lang/Object;)Z // method@0125 │ │ -00311c: 0a02 |003a: move-result v2 │ │ -00311e: 3902 0700 |003b: if-nez v2, 0042 // +0007 │ │ -003122: 1a02 1400 |003d: const-string v2, "4dF" // string@0014 │ │ -003126: 6e20 3b00 2400 |003f: invoke-virtual {v4, v2}, Landroid/widget/ArrayAdapter;.add:(Ljava/lang/Object;)V // method@003b │ │ -00312c: 0e00 |0042: return-void │ │ +00321c: |[00321c] de.duenndns.gmdice.DiceCache.populate:(Landroid/widget/ArrayAdapter;Ljava/util/List;)V │ │ +00322c: 5431 0a00 |0000: iget-object v1, v3, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ +003230: 6e10 1b01 0100 |0002: invoke-virtual {v1}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@011b │ │ +003236: 0c01 |0005: move-result-object v1 │ │ +003238: 7210 2301 0100 |0006: invoke-interface {v1}, Ljava/util/Iterator;.hasNext:()Z // method@0123 │ │ +00323e: 0a02 |0009: move-result v2 │ │ +003240: 3802 1600 |000a: if-eqz v2, 0020 // +0016 │ │ +003244: 7210 2401 0100 |000c: invoke-interface {v1}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@0124 │ │ +00324a: 0c00 |000f: move-result-object v0 │ │ +00324c: 1f00 3d00 |0010: check-cast v0, Lde/duenndns/gmdice/DiceSet; // type@003d │ │ +003250: 7220 2501 0500 |0012: invoke-interface {v5, v0}, Ljava/util/List;.contains:(Ljava/lang/Object;)Z // method@0125 │ │ +003256: 0a02 |0015: move-result v2 │ │ +003258: 3902 f0ff |0016: if-nez v2, 0006 // -0010 │ │ +00325c: 6e10 7500 0000 |0018: invoke-virtual {v0}, Lde/duenndns/gmdice/DiceSet;.toString:()Ljava/lang/String; // method@0075 │ │ +003262: 0c02 |001b: move-result-object v2 │ │ +003264: 6e20 3b00 2400 |001c: invoke-virtual {v4, v2}, Landroid/widget/ArrayAdapter;.add:(Ljava/lang/Object;)V // method@003b │ │ +00326a: 28e7 |001f: goto 0006 // -0019 │ │ +00326c: 1a01 1300 |0020: const-string v1, "3D20" // string@0013 │ │ +003270: 7110 7200 0100 |0022: invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ +003276: 0c01 |0025: move-result-object v1 │ │ +003278: 7220 2501 1500 |0026: invoke-interface {v5, v1}, Ljava/util/List;.contains:(Ljava/lang/Object;)Z // method@0125 │ │ +00327e: 0a01 |0029: move-result v1 │ │ +003280: 3901 0700 |002a: if-nez v1, 0031 // +0007 │ │ +003284: 1a01 1300 |002c: const-string v1, "3D20" // string@0013 │ │ +003288: 6e20 3b00 1400 |002e: invoke-virtual {v4, v1}, Landroid/widget/ArrayAdapter;.add:(Ljava/lang/Object;)V // method@003b │ │ +00328e: 1a01 1400 |0031: const-string v1, "4dF" // string@0014 │ │ +003292: 7110 7200 0100 |0033: invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ +003298: 0c01 |0036: move-result-object v1 │ │ +00329a: 7220 2501 1500 |0037: invoke-interface {v5, v1}, Ljava/util/List;.contains:(Ljava/lang/Object;)Z // method@0125 │ │ +0032a0: 0a01 |003a: move-result v1 │ │ +0032a2: 3901 0700 |003b: if-nez v1, 0042 // +0007 │ │ +0032a6: 1a01 1400 |003d: const-string v1, "4dF" // string@0014 │ │ +0032aa: 6e20 3b00 1400 |003f: invoke-virtual {v4, v1}, Landroid/widget/ArrayAdapter;.add:(Ljava/lang/Object;)V // method@003b │ │ +0032b0: 0e00 |0042: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=57 │ │ 0x0012 line=58 │ │ 0x0018 line=59 │ │ 0x0020 line=61 │ │ 0x002c line=62 │ │ 0x0031 line=63 │ │ 0x003d line=64 │ │ 0x0042 line=65 │ │ locals : │ │ 0x0000 - 0x0000 reg=4 (null) Landroid/widget/ArrayAdapter; │ │ 0x0000 - 0x0000 reg=5 (null) Ljava/util/List; │ │ 0x0012 - 0x0020 reg=0 i Lde/duenndns/gmdice/DiceSet; │ │ - 0x0006 - 0x0043 reg=1 i$ Ljava/util/Iterator; │ │ 0x0000 - 0x0043 reg=3 this Lde/duenndns/gmdice/DiceCache; │ │ 0x0000 - 0x0043 reg=4 list Landroid/widget/ArrayAdapter; Landroid/widget/ArrayAdapter; │ │ 0x0000 - 0x0043 reg=5 except Ljava/util/List; Ljava/util/List; │ │ │ │ #5 : (in Lde/duenndns/gmdice/DiceCache;) │ │ name : 'toString' │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 41 16-bit code units │ │ -003130: |[003130] de.duenndns.gmdice.DiceCache.toString:()Ljava/lang/String; │ │ -003140: 2202 6400 |0000: new-instance v2, Ljava/lang/StringBuilder; // type@0064 │ │ -003144: 7010 1001 0200 |0002: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ -00314a: 5443 0a00 |0005: iget-object v3, v4, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ -00314e: 6e10 1b01 0300 |0007: invoke-virtual {v3}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@011b │ │ -003154: 0c01 |000a: move-result-object v1 │ │ -003156: 7210 2301 0100 |000b: invoke-interface {v1}, Ljava/util/Iterator;.hasNext:()Z // method@0123 │ │ -00315c: 0a03 |000e: move-result v3 │ │ -00315e: 3803 1500 |000f: if-eqz v3, 0024 // +0015 │ │ -003162: 7210 2401 0100 |0011: invoke-interface {v1}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@0124 │ │ -003168: 0c00 |0014: move-result-object v0 │ │ -00316a: 1f00 3e00 |0015: check-cast v0, Lde/duenndns/gmdice/DiceSet; // type@003e │ │ -00316e: 6e10 7500 0000 |0017: invoke-virtual {v0}, Lde/duenndns/gmdice/DiceSet;.toString:()Ljava/lang/String; // method@0075 │ │ -003174: 0c03 |001a: move-result-object v3 │ │ -003176: 6e20 1301 3200 |001b: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -00317c: 1a03 5b02 |001e: const-string v3, "|" // string@025b │ │ -003180: 6e20 1301 3200 |0020: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -003186: 28e8 |0023: goto 000b // -0018 │ │ -003188: 6e10 1601 0200 |0024: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ -00318e: 0c03 |0027: move-result-object v3 │ │ -003190: 1103 |0028: return-object v3 │ │ +0032b4: |[0032b4] de.duenndns.gmdice.DiceCache.toString:()Ljava/lang/String; │ │ +0032c4: 2201 6300 |0000: new-instance v1, Ljava/lang/StringBuilder; // type@0063 │ │ +0032c8: 7010 1001 0100 |0002: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ +0032ce: 5442 0a00 |0005: iget-object v2, v4, Lde/duenndns/gmdice/DiceCache;.dscache:Ljava/util/ArrayList; // field@000a │ │ +0032d2: 6e10 1b01 0200 |0007: invoke-virtual {v2}, Ljava/util/ArrayList;.iterator:()Ljava/util/Iterator; // method@011b │ │ +0032d8: 0c02 |000a: move-result-object v2 │ │ +0032da: 7210 2301 0200 |000b: invoke-interface {v2}, Ljava/util/Iterator;.hasNext:()Z // method@0123 │ │ +0032e0: 0a03 |000e: move-result v3 │ │ +0032e2: 3803 1500 |000f: if-eqz v3, 0024 // +0015 │ │ +0032e6: 7210 2401 0200 |0011: invoke-interface {v2}, Ljava/util/Iterator;.next:()Ljava/lang/Object; // method@0124 │ │ +0032ec: 0c00 |0014: move-result-object v0 │ │ +0032ee: 1f00 3d00 |0015: check-cast v0, Lde/duenndns/gmdice/DiceSet; // type@003d │ │ +0032f2: 6e10 7500 0000 |0017: invoke-virtual {v0}, Lde/duenndns/gmdice/DiceSet;.toString:()Ljava/lang/String; // method@0075 │ │ +0032f8: 0c03 |001a: move-result-object v3 │ │ +0032fa: 6e20 1301 3100 |001b: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +003300: 1a03 5702 |001e: const-string v3, "|" // string@0257 │ │ +003304: 6e20 1301 3100 |0020: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +00330a: 28e8 |0023: goto 000b // -0018 │ │ +00330c: 6e10 1601 0100 |0024: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ +003312: 0c02 |0027: move-result-object v2 │ │ +003314: 1102 |0028: return-object v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=68 │ │ 0x0005 line=69 │ │ 0x0017 line=70 │ │ 0x001e line=71 │ │ 0x0024 line=73 │ │ locals : │ │ 0x0017 - 0x0024 reg=0 i Lde/duenndns/gmdice/DiceSet; │ │ - 0x000b - 0x0029 reg=1 i$ Ljava/util/Iterator; │ │ - 0x0005 - 0x0029 reg=2 sb Ljava/lang/StringBuilder; │ │ + 0x0005 - 0x0029 reg=1 sb Ljava/lang/StringBuilder; │ │ 0x0000 - 0x0029 reg=4 this Lde/duenndns/gmdice/DiceCache; │ │ │ │ source_file_idx : 39 (DiceCache.java) │ │ │ │ Class #4 header: │ │ -class_idx : 62 │ │ +class_idx : 61 │ │ access_flags : 1025 (0x0401) │ │ -superclass_idx : 97 │ │ +superclass_idx : 96 │ │ source_file_idx : 40 │ │ static_fields_size : 2 │ │ instance_fields_size: 3 │ │ direct_methods_size : 4 │ │ virtual_methods_size: 4 │ │ │ │ Class #4 - │ │ @@ -494,17 +488,17 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -003194: |[003194] de.duenndns.gmdice.DiceSet.:()V │ │ -0031a4: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ -0031aa: 0e00 |0003: return-void │ │ +003318: |[003318] de.duenndns.gmdice.DiceSet.:()V │ │ +003328: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ +00332e: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=33 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lde/duenndns/gmdice/DiceSet; │ │ │ │ #1 : (in Lde/duenndns/gmdice/DiceSet;) │ │ @@ -512,39 +506,39 @@ │ │ type : '()Lde/duenndns/gmdice/DiceSet;' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 4 │ │ ins : 0 │ │ outs : 4 │ │ insns size : 9 16-bit code units │ │ -0031ac: |[0031ac] de.duenndns.gmdice.DiceSet.getDiceSet:()Lde/duenndns/gmdice/DiceSet; │ │ -0031bc: 2200 5900 |0000: new-instance v0, Lde/duenndns/gmdice/StandardDiceSet; // type@0059 │ │ -0031c0: 1211 |0002: const/4 v1, #int 1 // #1 │ │ -0031c2: 1262 |0003: const/4 v2, #int 6 // #6 │ │ -0031c4: 1203 |0004: const/4 v3, #int 0 // #0 │ │ -0031c6: 7040 fb00 1032 |0005: invoke-direct {v0, v1, v2, v3}, Lde/duenndns/gmdice/StandardDiceSet;.:(III)V // method@00fb │ │ -0031cc: 1100 |0008: return-object v0 │ │ +003330: |[003330] de.duenndns.gmdice.DiceSet.getDiceSet:()Lde/duenndns/gmdice/DiceSet; │ │ +003340: 2200 5800 |0000: new-instance v0, Lde/duenndns/gmdice/StandardDiceSet; // type@0058 │ │ +003344: 1211 |0002: const/4 v1, #int 1 // #1 │ │ +003346: 1262 |0003: const/4 v2, #int 6 // #6 │ │ +003348: 1203 |0004: const/4 v3, #int 0 // #0 │ │ +00334a: 7040 fb00 1032 |0005: invoke-direct {v0, v1, v2, v3}, Lde/duenndns/gmdice/StandardDiceSet;.:(III)V // method@00fb │ │ +003350: 1100 |0008: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=47 │ │ locals : │ │ │ │ #2 : (in Lde/duenndns/gmdice/DiceSet;) │ │ name : 'getDiceSet' │ │ type : '(III)Lde/duenndns/gmdice/DiceSet;' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 4 │ │ insns size : 6 16-bit code units │ │ -0031d0: |[0031d0] de.duenndns.gmdice.DiceSet.getDiceSet:(III)Lde/duenndns/gmdice/DiceSet; │ │ -0031e0: 2200 5900 |0000: new-instance v0, Lde/duenndns/gmdice/StandardDiceSet; // type@0059 │ │ -0031e4: 7040 fb00 1032 |0002: invoke-direct {v0, v1, v2, v3}, Lde/duenndns/gmdice/StandardDiceSet;.:(III)V // method@00fb │ │ -0031ea: 1100 |0005: return-object v0 │ │ +003354: |[003354] de.duenndns.gmdice.DiceSet.getDiceSet:(III)Lde/duenndns/gmdice/DiceSet; │ │ +003364: 2200 5800 |0000: new-instance v0, Lde/duenndns/gmdice/StandardDiceSet; // type@0058 │ │ +003368: 7040 fb00 1032 |0002: invoke-direct {v0, v1, v2, v3}, Lde/duenndns/gmdice/StandardDiceSet;.:(III)V // method@00fb │ │ +00336e: 1100 |0005: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=43 │ │ locals : │ │ 0x0000 - 0x0006 reg=1 c I │ │ 0x0000 - 0x0006 reg=2 s I │ │ 0x0000 - 0x0006 reg=3 m I │ │ @@ -554,72 +548,72 @@ │ │ type : '(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet;' │ │ access : 0x0009 (PUBLIC STATIC) │ │ code - │ │ registers : 9 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 100 16-bit code units │ │ -0031ec: |[0031ec] de.duenndns.gmdice.DiceSet.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; │ │ -0031fc: 1217 |0000: const/4 v7, #int 1 // #1 │ │ -0031fe: 1226 |0001: const/4 v6, #int 2 // #2 │ │ -003200: 1a05 1300 |0002: const-string v5, "3D20" // string@0013 │ │ -003204: 6e20 0701 5800 |0004: invoke-virtual {v8, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@0107 │ │ -00320a: 0a05 |0007: move-result v5 │ │ -00320c: 3805 0800 |0008: if-eqz v5, 0010 // +0008 │ │ -003210: 2205 3c00 |000a: new-instance v5, Lde/duenndns/gmdice/DSADiceSet; // type@003c │ │ -003214: 7010 6300 0500 |000c: invoke-direct {v5}, Lde/duenndns/gmdice/DSADiceSet;.:()V // method@0063 │ │ -00321a: 1105 |000f: return-object v5 │ │ -00321c: 1a05 1400 |0010: const-string v5, "4dF" // string@0014 │ │ -003220: 6e20 0701 5800 |0012: invoke-virtual {v8, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@0107 │ │ -003226: 0a05 |0015: move-result v5 │ │ -003228: 3805 0800 |0016: if-eqz v5, 001e // +0008 │ │ -00322c: 2205 3f00 |0018: new-instance v5, Lde/duenndns/gmdice/FUDGEDiceSet; // type@003f │ │ -003230: 7010 7600 0500 |001a: invoke-direct {v5}, Lde/duenndns/gmdice/FUDGEDiceSet;.:()V // method@0076 │ │ -003236: 28f2 |001d: goto 000f // -000e │ │ -003238: 1a05 eb00 |001e: const-string v5, "[d+-]" // string@00eb │ │ -00323c: 6e20 0b01 5800 |0020: invoke-virtual {v8, v5}, Ljava/lang/String;.split:(Ljava/lang/String;)[Ljava/lang/String; // method@010b │ │ -003242: 0c03 |0023: move-result-object v3 │ │ -003244: 1205 |0024: const/4 v5, #int 0 // #0 │ │ -003246: 4605 0305 |0025: aget-object v5, v3, v5 │ │ -00324a: 7110 0101 0500 |0027: invoke-static {v5}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@0101 │ │ -003250: 0a00 |002a: move-result v0 │ │ -003252: 1215 |002b: const/4 v5, #int 1 // #1 │ │ -003254: 4605 0305 |002c: aget-object v5, v3, v5 │ │ -003258: 7110 0101 0500 |002e: invoke-static {v5}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@0101 │ │ -00325e: 0a04 |0031: move-result v4 │ │ -003260: 2135 |0032: array-length v5, v3 │ │ -003262: 3765 2400 |0033: if-le v5, v6, 0057 // +0024 │ │ -003266: 1225 |0035: const/4 v5, #int 2 // #2 │ │ -003268: 4605 0305 |0036: aget-object v5, v3, v5 │ │ -00326c: 7110 0101 0500 |0038: invoke-static {v5}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@0101 │ │ -003272: 0a02 |003b: move-result v2 │ │ -003274: 1305 2d00 |003c: const/16 v5, #int 45 // #2d │ │ -003278: 6e20 0901 5800 |003e: invoke-virtual {v8, v5}, Ljava/lang/String;.indexOf:(I)I // method@0109 │ │ -00327e: 0a05 |0041: move-result v5 │ │ -003280: 3a05 0300 |0042: if-ltz v5, 0045 // +0003 │ │ -003284: 7b22 |0044: neg-int v2, v2 │ │ -003286: 3370 1400 |0045: if-ne v0, v7, 0059 // +0014 │ │ -00328a: 3364 1200 |0047: if-ne v4, v6, 0059 // +0012 │ │ -00328e: 3902 1000 |0049: if-nez v2, 0059 // +0010 │ │ -003292: 2205 3b00 |004b: new-instance v5, Lde/duenndns/gmdice/Coin; // type@003b │ │ -003296: 7010 6000 0500 |004d: invoke-direct {v5}, Lde/duenndns/gmdice/Coin;.:()V // method@0060 │ │ -00329c: 28bf |0050: goto 000f // -0041 │ │ -00329e: 0d01 |0051: move-exception v1 │ │ -0032a0: 7100 7000 0000 |0052: invoke-static {}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:()Lde/duenndns/gmdice/DiceSet; // method@0070 │ │ -0032a6: 0c05 |0055: move-result-object v5 │ │ -0032a8: 28b9 |0056: goto 000f // -0047 │ │ -0032aa: 1202 |0057: const/4 v2, #int 0 // #0 │ │ -0032ac: 28ed |0058: goto 0045 // -0013 │ │ -0032ae: 7130 7100 4002 |0059: invoke-static {v0, v4, v2}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(III)Lde/duenndns/gmdice/DiceSet; // method@0071 │ │ -0032b4: 0c05 |005c: move-result-object v5 │ │ -0032b6: 28b2 |005d: goto 000f // -004e │ │ -0032b8: 0d01 |005e: move-exception v1 │ │ -0032ba: 7100 7000 0000 |005f: invoke-static {}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:()Lde/duenndns/gmdice/DiceSet; // method@0070 │ │ -0032c0: 0c05 |0062: move-result-object v5 │ │ -0032c2: 28ac |0063: goto 000f // -0054 │ │ +003370: |[003370] de.duenndns.gmdice.DiceSet.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; │ │ +003380: 1217 |0000: const/4 v7, #int 1 // #1 │ │ +003382: 1226 |0001: const/4 v6, #int 2 // #2 │ │ +003384: 1a05 1300 |0002: const-string v5, "3D20" // string@0013 │ │ +003388: 6e20 0701 5800 |0004: invoke-virtual {v8, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@0107 │ │ +00338e: 0a05 |0007: move-result v5 │ │ +003390: 3805 0800 |0008: if-eqz v5, 0010 // +0008 │ │ +003394: 2205 3b00 |000a: new-instance v5, Lde/duenndns/gmdice/DSADiceSet; // type@003b │ │ +003398: 7010 6300 0500 |000c: invoke-direct {v5}, Lde/duenndns/gmdice/DSADiceSet;.:()V // method@0063 │ │ +00339e: 1105 |000f: return-object v5 │ │ +0033a0: 1a05 1400 |0010: const-string v5, "4dF" // string@0014 │ │ +0033a4: 6e20 0701 5800 |0012: invoke-virtual {v8, v5}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@0107 │ │ +0033aa: 0a05 |0015: move-result v5 │ │ +0033ac: 3805 0800 |0016: if-eqz v5, 001e // +0008 │ │ +0033b0: 2205 3e00 |0018: new-instance v5, Lde/duenndns/gmdice/FUDGEDiceSet; // type@003e │ │ +0033b4: 7010 7600 0500 |001a: invoke-direct {v5}, Lde/duenndns/gmdice/FUDGEDiceSet;.:()V // method@0076 │ │ +0033ba: 28f2 |001d: goto 000f // -000e │ │ +0033bc: 1a05 ea00 |001e: const-string v5, "[d+-]" // string@00ea │ │ +0033c0: 6e20 0b01 5800 |0020: invoke-virtual {v8, v5}, Ljava/lang/String;.split:(Ljava/lang/String;)[Ljava/lang/String; // method@010b │ │ +0033c6: 0c03 |0023: move-result-object v3 │ │ +0033c8: 1205 |0024: const/4 v5, #int 0 // #0 │ │ +0033ca: 4605 0305 |0025: aget-object v5, v3, v5 │ │ +0033ce: 7110 0101 0500 |0027: invoke-static {v5}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@0101 │ │ +0033d4: 0a00 |002a: move-result v0 │ │ +0033d6: 1215 |002b: const/4 v5, #int 1 // #1 │ │ +0033d8: 4605 0305 |002c: aget-object v5, v3, v5 │ │ +0033dc: 7110 0101 0500 |002e: invoke-static {v5}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@0101 │ │ +0033e2: 0a04 |0031: move-result v4 │ │ +0033e4: 2135 |0032: array-length v5, v3 │ │ +0033e6: 3765 2400 |0033: if-le v5, v6, 0057 // +0024 │ │ +0033ea: 1225 |0035: const/4 v5, #int 2 // #2 │ │ +0033ec: 4605 0305 |0036: aget-object v5, v3, v5 │ │ +0033f0: 7110 0101 0500 |0038: invoke-static {v5}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@0101 │ │ +0033f6: 0a02 |003b: move-result v2 │ │ +0033f8: 1305 2d00 |003c: const/16 v5, #int 45 // #2d │ │ +0033fc: 6e20 0901 5800 |003e: invoke-virtual {v8, v5}, Ljava/lang/String;.indexOf:(I)I // method@0109 │ │ +003402: 0a05 |0041: move-result v5 │ │ +003404: 3a05 0300 |0042: if-ltz v5, 0045 // +0003 │ │ +003408: 7b22 |0044: neg-int v2, v2 │ │ +00340a: 3370 1400 |0045: if-ne v0, v7, 0059 // +0014 │ │ +00340e: 3364 1200 |0047: if-ne v4, v6, 0059 // +0012 │ │ +003412: 3902 1000 |0049: if-nez v2, 0059 // +0010 │ │ +003416: 2205 3a00 |004b: new-instance v5, Lde/duenndns/gmdice/Coin; // type@003a │ │ +00341a: 7010 6000 0500 |004d: invoke-direct {v5}, Lde/duenndns/gmdice/Coin;.:()V // method@0060 │ │ +003420: 28bf |0050: goto 000f // -0041 │ │ +003422: 0d01 |0051: move-exception v1 │ │ +003424: 7100 7000 0000 |0052: invoke-static {}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:()Lde/duenndns/gmdice/DiceSet; // method@0070 │ │ +00342a: 0c05 |0055: move-result-object v5 │ │ +00342c: 28b9 |0056: goto 000f // -0047 │ │ +00342e: 1202 |0057: const/4 v2, #int 0 // #0 │ │ +003430: 28ed |0058: goto 0045 // -0013 │ │ +003432: 7130 7100 4002 |0059: invoke-static {v0, v4, v2}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(III)Lde/duenndns/gmdice/DiceSet; // method@0071 │ │ +003438: 0c05 |005c: move-result-object v5 │ │ +00343a: 28b2 |005d: goto 000f // -004e │ │ +00343c: 0d01 |005e: move-exception v1 │ │ +00343e: 7100 7000 0000 |005f: invoke-static {}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:()Lde/duenndns/gmdice/DiceSet; // method@0070 │ │ +003444: 0c05 |0062: move-result-object v5 │ │ +003446: 28ac |0063: goto 000f // -0054 │ │ catches : 2 │ │ 0x001e - 0x0050 │ │ Ljava/lang/IndexOutOfBoundsException; -> 0x0051 │ │ Ljava/lang/NumberFormatException; -> 0x005e │ │ 0x0059 - 0x005c │ │ Ljava/lang/IndexOutOfBoundsException; -> 0x0051 │ │ Ljava/lang/NumberFormatException; -> 0x005e │ │ @@ -663,42 +657,42 @@ │ │ type : '(Ljava/lang/Object;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 44 16-bit code units │ │ -0032dc: |[0032dc] de.duenndns.gmdice.DiceSet.equals:(Ljava/lang/Object;)Z │ │ -0032ec: 1211 |0000: const/4 v1, #int 1 // #1 │ │ -0032ee: 1202 |0001: const/4 v2, #int 0 // #0 │ │ -0032f0: 3365 0300 |0002: if-ne v5, v6, 0005 // +0003 │ │ -0032f4: 0f01 |0004: return v1 │ │ -0032f6: 3906 0400 |0005: if-nez v6, 0009 // +0004 │ │ -0032fa: 0121 |0007: move v1, v2 │ │ -0032fc: 28fc |0008: goto 0004 // -0004 │ │ -0032fe: 6e10 0601 0500 |0009: invoke-virtual {v5}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@0106 │ │ -003304: 0c03 |000c: move-result-object v3 │ │ -003306: 6e10 0601 0600 |000d: invoke-virtual {v6}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@0106 │ │ -00330c: 0c04 |0010: move-result-object v4 │ │ -00330e: 3243 0400 |0011: if-eq v3, v4, 0015 // +0004 │ │ -003312: 0121 |0013: move v1, v2 │ │ -003314: 28f0 |0014: goto 0004 // -0010 │ │ -003316: 0760 |0015: move-object v0, v6 │ │ -003318: 1f00 3e00 |0016: check-cast v0, Lde/duenndns/gmdice/DiceSet; // type@003e │ │ -00331c: 5253 0d00 |0018: iget v3, v5, Lde/duenndns/gmdice/DiceSet;.count:I // field@000d │ │ -003320: 5204 0d00 |001a: iget v4, v0, Lde/duenndns/gmdice/DiceSet;.count:I // field@000d │ │ -003324: 3343 0e00 |001c: if-ne v3, v4, 002a // +000e │ │ -003328: 5253 0f00 |001e: iget v3, v5, Lde/duenndns/gmdice/DiceSet;.sides:I // field@000f │ │ -00332c: 5204 0f00 |0020: iget v4, v0, Lde/duenndns/gmdice/DiceSet;.sides:I // field@000f │ │ -003330: 3343 0800 |0022: if-ne v3, v4, 002a // +0008 │ │ -003334: 5253 0e00 |0024: iget v3, v5, Lde/duenndns/gmdice/DiceSet;.modifier:I // field@000e │ │ -003338: 5204 0e00 |0026: iget v4, v0, Lde/duenndns/gmdice/DiceSet;.modifier:I // field@000e │ │ -00333c: 3243 dcff |0028: if-eq v3, v4, 0004 // -0024 │ │ -003340: 0121 |002a: move v1, v2 │ │ -003342: 28d9 |002b: goto 0004 // -0027 │ │ +003460: |[003460] de.duenndns.gmdice.DiceSet.equals:(Ljava/lang/Object;)Z │ │ +003470: 1211 |0000: const/4 v1, #int 1 // #1 │ │ +003472: 1202 |0001: const/4 v2, #int 0 // #0 │ │ +003474: 3365 0300 |0002: if-ne v5, v6, 0005 // +0003 │ │ +003478: 0f01 |0004: return v1 │ │ +00347a: 3906 0400 |0005: if-nez v6, 0009 // +0004 │ │ +00347e: 0121 |0007: move v1, v2 │ │ +003480: 28fc |0008: goto 0004 // -0004 │ │ +003482: 6e10 0601 0500 |0009: invoke-virtual {v5}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@0106 │ │ +003488: 0c03 |000c: move-result-object v3 │ │ +00348a: 6e10 0601 0600 |000d: invoke-virtual {v6}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@0106 │ │ +003490: 0c04 |0010: move-result-object v4 │ │ +003492: 3243 0400 |0011: if-eq v3, v4, 0015 // +0004 │ │ +003496: 0121 |0013: move v1, v2 │ │ +003498: 28f0 |0014: goto 0004 // -0010 │ │ +00349a: 0760 |0015: move-object v0, v6 │ │ +00349c: 1f00 3d00 |0016: check-cast v0, Lde/duenndns/gmdice/DiceSet; // type@003d │ │ +0034a0: 5253 0d00 |0018: iget v3, v5, Lde/duenndns/gmdice/DiceSet;.count:I // field@000d │ │ +0034a4: 5204 0d00 |001a: iget v4, v0, Lde/duenndns/gmdice/DiceSet;.count:I // field@000d │ │ +0034a8: 3343 0e00 |001c: if-ne v3, v4, 002a // +000e │ │ +0034ac: 5253 0f00 |001e: iget v3, v5, Lde/duenndns/gmdice/DiceSet;.sides:I // field@000f │ │ +0034b0: 5204 0f00 |0020: iget v4, v0, Lde/duenndns/gmdice/DiceSet;.sides:I // field@000f │ │ +0034b4: 3343 0800 |0022: if-ne v3, v4, 002a // +0008 │ │ +0034b8: 5253 0e00 |0024: iget v3, v5, Lde/duenndns/gmdice/DiceSet;.modifier:I // field@000e │ │ +0034bc: 5204 0e00 |0026: iget v4, v0, Lde/duenndns/gmdice/DiceSet;.modifier:I // field@000e │ │ +0034c0: 3243 dcff |0028: if-eq v3, v4, 0004 // -0024 │ │ +0034c4: 0121 |002a: move v1, v2 │ │ +0034c6: 28d9 |002b: goto 0004 // -0027 │ │ catches : (none) │ │ positions : │ │ 0x0002 line=91 │ │ 0x0004 line=98 │ │ 0x0005 line=93 │ │ 0x0008 line=94 │ │ 0x0009 line=95 │ │ @@ -715,23 +709,23 @@ │ │ type : '()I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 13 16-bit code units │ │ -003344: |[003344] de.duenndns.gmdice.DiceSet.hashCode:()I │ │ -003354: 5220 0d00 |0000: iget v0, v2, Lde/duenndns/gmdice/DiceSet;.count:I // field@000d │ │ -003358: d200 1027 |0002: mul-int/lit16 v0, v0, #int 10000 // #2710 │ │ -00335c: 5221 0f00 |0004: iget v1, v2, Lde/duenndns/gmdice/DiceSet;.sides:I // field@000f │ │ -003360: da01 0164 |0006: mul-int/lit8 v1, v1, #int 100 // #64 │ │ -003364: b010 |0008: add-int/2addr v0, v1 │ │ -003366: 5221 0e00 |0009: iget v1, v2, Lde/duenndns/gmdice/DiceSet;.modifier:I // field@000e │ │ -00336a: b010 |000b: add-int/2addr v0, v1 │ │ -00336c: 0f00 |000c: return v0 │ │ +0034c8: |[0034c8] de.duenndns.gmdice.DiceSet.hashCode:()I │ │ +0034d8: 5220 0d00 |0000: iget v0, v2, Lde/duenndns/gmdice/DiceSet;.count:I // field@000d │ │ +0034dc: d200 1027 |0002: mul-int/lit16 v0, v0, #int 10000 // #2710 │ │ +0034e0: 5221 0f00 |0004: iget v1, v2, Lde/duenndns/gmdice/DiceSet;.sides:I // field@000f │ │ +0034e4: da01 0164 |0006: mul-int/lit8 v1, v1, #int 100 // #64 │ │ +0034e8: b010 |0008: add-int/2addr v0, v1 │ │ +0034ea: 5221 0e00 |0009: iget v1, v2, Lde/duenndns/gmdice/DiceSet;.modifier:I // field@000e │ │ +0034ee: b010 |000b: add-int/2addr v0, v1 │ │ +0034f0: 0f00 |000c: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=88 │ │ locals : │ │ 0x0000 - 0x000d reg=2 this Lde/duenndns/gmdice/DiceSet; │ │ │ │ #2 : (in Lde/duenndns/gmdice/DiceSet;) │ │ @@ -745,17 +739,17 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0401 (PUBLIC ABSTRACT) │ │ code : (none) │ │ │ │ source_file_idx : 40 (DiceSet.java) │ │ │ │ Class #5 header: │ │ -class_idx : 64 │ │ +class_idx : 63 │ │ access_flags : 0 (0x0000) │ │ -superclass_idx : 97 │ │ +superclass_idx : 96 │ │ source_file_idx : 46 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #5 annotations: │ │ @@ -781,60 +775,62 @@ │ │ type : '(Lde/duenndns/gmdice/GameMasterDice;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -003370: |[003370] de.duenndns.gmdice.GameMasterDice$1.:(Lde/duenndns/gmdice/GameMasterDice;)V │ │ -003380: 5b01 1300 |0000: iput-object v1, v0, Lde/duenndns/gmdice/GameMasterDice$1;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0013 │ │ -003384: 7010 0501 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ -00338a: 0e00 |0005: return-void │ │ +0034f4: |[0034f4] de.duenndns.gmdice.GameMasterDice$1.:(Lde/duenndns/gmdice/GameMasterDice;)V │ │ +003504: 5b01 1300 |0000: iput-object v1, v0, Lde/duenndns/gmdice/GameMasterDice$1;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0013 │ │ +003508: 7010 0501 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ +00350e: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=182 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lde/duenndns/gmdice/GameMasterDice$1; │ │ - 0x0000 - 0x0006 reg=1 (null) Lde/duenndns/gmdice/GameMasterDice; │ │ + 0x0000 - 0x0006 reg=1 this$0 Lde/duenndns/gmdice/GameMasterDice; │ │ │ │ Virtual methods - │ │ #0 : (in Lde/duenndns/gmdice/GameMasterDice$1;) │ │ name : 'onClick' │ │ type : '(Landroid/content/DialogInterface;I)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 19 16-bit code units │ │ -00338c: |[00338c] de.duenndns.gmdice.GameMasterDice$1.onClick:(Landroid/content/DialogInterface;I)V │ │ -00339c: 5440 1300 |0000: iget-object v0, v4, Lde/duenndns/gmdice/GameMasterDice$1;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0013 │ │ -0033a0: 2201 0a00 |0002: new-instance v1, Landroid/content/Intent; // type@000a │ │ -0033a4: 1a02 0001 |0004: const-string v2, "android.intent.action.VIEW" // string@0100 │ │ -0033a8: 1a03 7401 |0006: const-string v3, "https://github.com/ge0rg/gamemasterdice/wiki" // string@0174 │ │ -0033ac: 7110 2100 0300 |0008: invoke-static {v3}, Landroid/net/Uri;.parse:(Ljava/lang/String;)Landroid/net/Uri; // method@0021 │ │ -0033b2: 0c03 |000b: move-result-object v3 │ │ -0033b4: 7030 1600 2103 |000c: invoke-direct {v1, v2, v3}, Landroid/content/Intent;.:(Ljava/lang/String;Landroid/net/Uri;)V // method@0016 │ │ -0033ba: 6e20 a400 1000 |000f: invoke-virtual {v0, v1}, Lde/duenndns/gmdice/GameMasterDice;.startActivity:(Landroid/content/Intent;)V // method@00a4 │ │ -0033c0: 0e00 |0012: return-void │ │ +003510: |[003510] de.duenndns.gmdice.GameMasterDice$1.onClick:(Landroid/content/DialogInterface;I)V │ │ +003520: 5440 1300 |0000: iget-object v0, v4, Lde/duenndns/gmdice/GameMasterDice$1;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0013 │ │ +003524: 2201 0a00 |0002: new-instance v1, Landroid/content/Intent; // type@000a │ │ +003528: 1a02 ff00 |0004: const-string v2, "android.intent.action.VIEW" // string@00ff │ │ +00352c: 1a03 7201 |0006: const-string v3, "https://github.com/ge0rg/gamemasterdice/wiki" // string@0172 │ │ +003530: 7110 2100 0300 |0008: invoke-static {v3}, Landroid/net/Uri;.parse:(Ljava/lang/String;)Landroid/net/Uri; // method@0021 │ │ +003536: 0c03 |000b: move-result-object v3 │ │ +003538: 7030 1600 2103 |000c: invoke-direct {v1, v2, v3}, Landroid/content/Intent;.:(Ljava/lang/String;Landroid/net/Uri;)V // method@0016 │ │ +00353e: 6e20 a400 1000 |000f: invoke-virtual {v0, v1}, Lde/duenndns/gmdice/GameMasterDice;.startActivity:(Landroid/content/Intent;)V // method@00a4 │ │ +003544: 0e00 |0012: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=184 │ │ + 0x0008 line=185 │ │ + 0x000f line=184 │ │ 0x0012 line=186 │ │ locals : │ │ 0x0000 - 0x0013 reg=4 this Lde/duenndns/gmdice/GameMasterDice$1; │ │ 0x0000 - 0x0013 reg=5 dialog Landroid/content/DialogInterface; │ │ 0x0000 - 0x0013 reg=6 which I │ │ │ │ source_file_idx : 46 (GameMasterDice.java) │ │ │ │ Class #6 header: │ │ -class_idx : 67 │ │ +class_idx : 66 │ │ access_flags : 0 (0x0000) │ │ -superclass_idx : 97 │ │ +superclass_idx : 96 │ │ source_file_idx : 46 │ │ static_fields_size : 0 │ │ instance_fields_size: 5 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #6 annotations: │ │ @@ -876,28 +872,28 @@ │ │ type : '(Lde/duenndns/gmdice/GameMasterDice;Lde/duenndns/gmdice/NumberPicker;Landroid/widget/Spinner;Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/OnDiceChange;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 6 │ │ ins : 6 │ │ outs : 1 │ │ insns size : 14 16-bit code units │ │ -0033c4: |[0033c4] de.duenndns.gmdice.GameMasterDice$4.:(Lde/duenndns/gmdice/GameMasterDice;Lde/duenndns/gmdice/NumberPicker;Landroid/widget/Spinner;Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/OnDiceChange;)V │ │ -0033d4: 5b01 1700 |0000: iput-object v1, v0, Lde/duenndns/gmdice/GameMasterDice$4;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0017 │ │ -0033d8: 5b02 1800 |0002: iput-object v2, v0, Lde/duenndns/gmdice/GameMasterDice$4;.val$np_c:Lde/duenndns/gmdice/NumberPicker; // field@0018 │ │ -0033dc: 5b03 1b00 |0004: iput-object v3, v0, Lde/duenndns/gmdice/GameMasterDice$4;.val$sp_s:Landroid/widget/Spinner; // field@001b │ │ -0033e0: 5b04 1900 |0006: iput-object v4, v0, Lde/duenndns/gmdice/GameMasterDice$4;.val$np_m:Lde/duenndns/gmdice/NumberPicker; // field@0019 │ │ -0033e4: 5b05 1a00 |0008: iput-object v5, v0, Lde/duenndns/gmdice/GameMasterDice$4;.val$onOk:Lde/duenndns/gmdice/OnDiceChange; // field@001a │ │ -0033e8: 7010 0501 0000 |000a: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ -0033ee: 0e00 |000d: return-void │ │ +003548: |[003548] de.duenndns.gmdice.GameMasterDice$4.:(Lde/duenndns/gmdice/GameMasterDice;Lde/duenndns/gmdice/NumberPicker;Landroid/widget/Spinner;Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/OnDiceChange;)V │ │ +003558: 5b01 1700 |0000: iput-object v1, v0, Lde/duenndns/gmdice/GameMasterDice$4;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0017 │ │ +00355c: 5b02 1800 |0002: iput-object v2, v0, Lde/duenndns/gmdice/GameMasterDice$4;.val$np_c:Lde/duenndns/gmdice/NumberPicker; // field@0018 │ │ +003560: 5b03 1b00 |0004: iput-object v3, v0, Lde/duenndns/gmdice/GameMasterDice$4;.val$sp_s:Landroid/widget/Spinner; // field@001b │ │ +003564: 5b04 1900 |0006: iput-object v4, v0, Lde/duenndns/gmdice/GameMasterDice$4;.val$np_m:Lde/duenndns/gmdice/NumberPicker; // field@0019 │ │ +003568: 5b05 1a00 |0008: iput-object v5, v0, Lde/duenndns/gmdice/GameMasterDice$4;.val$onOk:Lde/duenndns/gmdice/OnDiceChange; // field@001a │ │ +00356c: 7010 0501 0000 |000a: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ +003572: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=299 │ │ locals : │ │ 0x0000 - 0x000e reg=0 this Lde/duenndns/gmdice/GameMasterDice$4; │ │ - 0x0000 - 0x000e reg=1 (null) Lde/duenndns/gmdice/GameMasterDice; │ │ + 0x0000 - 0x000e reg=1 this$0 Lde/duenndns/gmdice/GameMasterDice; │ │ 0x0000 - 0x000e reg=2 (null) Lde/duenndns/gmdice/NumberPicker; │ │ 0x0000 - 0x000e reg=3 (null) Landroid/widget/Spinner; │ │ 0x0000 - 0x000e reg=4 (null) Lde/duenndns/gmdice/NumberPicker; │ │ 0x0000 - 0x000e reg=5 (null) Lde/duenndns/gmdice/OnDiceChange; │ │ │ │ Virtual methods - │ │ #0 : (in Lde/duenndns/gmdice/GameMasterDice$4;) │ │ @@ -905,53 +901,56 @@ │ │ type : '(Landroid/content/DialogInterface;I)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 42 16-bit code units │ │ -0033f0: |[0033f0] de.duenndns.gmdice.GameMasterDice$4.onClick:(Landroid/content/DialogInterface;I)V │ │ -003400: 5441 1800 |0000: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice$4;.val$np_c:Lde/duenndns/gmdice/NumberPicker; // field@0018 │ │ -003404: 6e10 c600 0100 |0002: invoke-virtual {v1}, Lde/duenndns/gmdice/NumberPicker;.getCurrent:()I // method@00c6 │ │ -00340a: 0a02 |0005: move-result v2 │ │ -00340c: 5441 1b00 |0006: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice$4;.val$sp_s:Landroid/widget/Spinner; // field@001b │ │ -003410: 6e10 5800 0100 |0008: invoke-virtual {v1}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@0058 │ │ -003416: 0c01 |000b: move-result-object v1 │ │ -003418: 1f01 5e00 |000c: check-cast v1, Ljava/lang/Integer; // type@005e │ │ -00341c: 6e10 0001 0100 |000e: invoke-virtual {v1}, Ljava/lang/Integer;.intValue:()I // method@0100 │ │ -003422: 0a01 |0011: move-result v1 │ │ -003424: 5443 1900 |0012: iget-object v3, v4, Lde/duenndns/gmdice/GameMasterDice$4;.val$np_m:Lde/duenndns/gmdice/NumberPicker; // field@0019 │ │ -003428: 6e10 c600 0300 |0014: invoke-virtual {v3}, Lde/duenndns/gmdice/NumberPicker;.getCurrent:()I // method@00c6 │ │ -00342e: 0a03 |0017: move-result v3 │ │ -003430: 7110 0201 0300 |0018: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -003436: 0c03 |001b: move-result-object v3 │ │ -003438: 6e10 0001 0300 |001c: invoke-virtual {v3}, Ljava/lang/Integer;.intValue:()I // method@0100 │ │ -00343e: 0a03 |001f: move-result v3 │ │ -003440: 7130 7100 1203 |0020: invoke-static {v2, v1, v3}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(III)Lde/duenndns/gmdice/DiceSet; // method@0071 │ │ -003446: 0c00 |0023: move-result-object v0 │ │ -003448: 5441 1a00 |0024: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice$4;.val$onOk:Lde/duenndns/gmdice/OnDiceChange; // field@001a │ │ -00344c: 6e20 e800 0100 |0026: invoke-virtual {v1, v0}, Lde/duenndns/gmdice/OnDiceChange;.onDiceChange:(Lde/duenndns/gmdice/DiceSet;)V // method@00e8 │ │ -003452: 0e00 |0029: return-void │ │ +003574: |[003574] de.duenndns.gmdice.GameMasterDice$4.onClick:(Landroid/content/DialogInterface;I)V │ │ +003584: 5441 1800 |0000: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice$4;.val$np_c:Lde/duenndns/gmdice/NumberPicker; // field@0018 │ │ +003588: 6e10 c600 0100 |0002: invoke-virtual {v1}, Lde/duenndns/gmdice/NumberPicker;.getCurrent:()I // method@00c6 │ │ +00358e: 0a02 |0005: move-result v2 │ │ +003590: 5441 1b00 |0006: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice$4;.val$sp_s:Landroid/widget/Spinner; // field@001b │ │ +003594: 6e10 5800 0100 |0008: invoke-virtual {v1}, Landroid/widget/Spinner;.getSelectedItem:()Ljava/lang/Object; // method@0058 │ │ +00359a: 0c01 |000b: move-result-object v1 │ │ +00359c: 1f01 5d00 |000c: check-cast v1, Ljava/lang/Integer; // type@005d │ │ +0035a0: 6e10 0001 0100 |000e: invoke-virtual {v1}, Ljava/lang/Integer;.intValue:()I // method@0100 │ │ +0035a6: 0a01 |0011: move-result v1 │ │ +0035a8: 5443 1900 |0012: iget-object v3, v4, Lde/duenndns/gmdice/GameMasterDice$4;.val$np_m:Lde/duenndns/gmdice/NumberPicker; // field@0019 │ │ +0035ac: 6e10 c600 0300 |0014: invoke-virtual {v3}, Lde/duenndns/gmdice/NumberPicker;.getCurrent:()I // method@00c6 │ │ +0035b2: 0a03 |0017: move-result v3 │ │ +0035b4: 7110 0201 0300 |0018: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0035ba: 0c03 |001b: move-result-object v3 │ │ +0035bc: 6e10 0001 0300 |001c: invoke-virtual {v3}, Ljava/lang/Integer;.intValue:()I // method@0100 │ │ +0035c2: 0a03 |001f: move-result v3 │ │ +0035c4: 7130 7100 1203 |0020: invoke-static {v2, v1, v3}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(III)Lde/duenndns/gmdice/DiceSet; // method@0071 │ │ +0035ca: 0c00 |0023: move-result-object v0 │ │ +0035cc: 5441 1a00 |0024: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice$4;.val$onOk:Lde/duenndns/gmdice/OnDiceChange; // field@001a │ │ +0035d0: 6e20 e800 0100 |0026: invoke-virtual {v1, v0}, Lde/duenndns/gmdice/OnDiceChange;.onDiceChange:(Lde/duenndns/gmdice/DiceSet;)V // method@00e8 │ │ +0035d6: 0e00 |0029: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=301 │ │ + 0x0008 line=302 │ │ + 0x0014 line=303 │ │ + 0x0020 line=301 │ │ 0x0024 line=304 │ │ 0x0029 line=305 │ │ locals : │ │ 0x0024 - 0x002a reg=0 ds Lde/duenndns/gmdice/DiceSet; │ │ 0x0000 - 0x002a reg=4 this Lde/duenndns/gmdice/GameMasterDice$4; │ │ 0x0000 - 0x002a reg=5 dialog Landroid/content/DialogInterface; │ │ 0x0000 - 0x002a reg=6 which I │ │ │ │ source_file_idx : 46 (GameMasterDice.java) │ │ │ │ Class #7 header: │ │ -class_idx : 68 │ │ +class_idx : 67 │ │ access_flags : 0 (0x0000) │ │ -superclass_idx : 97 │ │ +superclass_idx : 96 │ │ source_file_idx : 46 │ │ static_fields_size : 0 │ │ instance_fields_size: 4 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #7 annotations: │ │ @@ -989,80 +988,80 @@ │ │ type : '(Lde/duenndns/gmdice/GameMasterDice;Landroid/widget/ArrayAdapter;Lde/duenndns/gmdice/DiceSet;Lde/duenndns/gmdice/OnDiceChange;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 5 │ │ ins : 5 │ │ outs : 1 │ │ insns size : 12 16-bit code units │ │ -003454: |[003454] de.duenndns.gmdice.GameMasterDice$5.:(Lde/duenndns/gmdice/GameMasterDice;Landroid/widget/ArrayAdapter;Lde/duenndns/gmdice/DiceSet;Lde/duenndns/gmdice/OnDiceChange;)V │ │ -003464: 5b01 1c00 |0000: iput-object v1, v0, Lde/duenndns/gmdice/GameMasterDice$5;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@001c │ │ -003468: 5b02 1d00 |0002: iput-object v2, v0, Lde/duenndns/gmdice/GameMasterDice$5;.val$adapter:Landroid/widget/ArrayAdapter; // field@001d │ │ -00346c: 5b03 1e00 |0004: iput-object v3, v0, Lde/duenndns/gmdice/GameMasterDice$5;.val$defaults:Lde/duenndns/gmdice/DiceSet; // field@001e │ │ -003470: 5b04 1f00 |0006: iput-object v4, v0, Lde/duenndns/gmdice/GameMasterDice$5;.val$onOk:Lde/duenndns/gmdice/OnDiceChange; // field@001f │ │ -003474: 7010 0501 0000 |0008: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ -00347a: 0e00 |000b: return-void │ │ +0035d8: |[0035d8] de.duenndns.gmdice.GameMasterDice$5.:(Lde/duenndns/gmdice/GameMasterDice;Landroid/widget/ArrayAdapter;Lde/duenndns/gmdice/DiceSet;Lde/duenndns/gmdice/OnDiceChange;)V │ │ +0035e8: 5b01 1c00 |0000: iput-object v1, v0, Lde/duenndns/gmdice/GameMasterDice$5;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@001c │ │ +0035ec: 5b02 1d00 |0002: iput-object v2, v0, Lde/duenndns/gmdice/GameMasterDice$5;.val$adapter:Landroid/widget/ArrayAdapter; // field@001d │ │ +0035f0: 5b03 1e00 |0004: iput-object v3, v0, Lde/duenndns/gmdice/GameMasterDice$5;.val$defaults:Lde/duenndns/gmdice/DiceSet; // field@001e │ │ +0035f4: 5b04 1f00 |0006: iput-object v4, v0, Lde/duenndns/gmdice/GameMasterDice$5;.val$onOk:Lde/duenndns/gmdice/OnDiceChange; // field@001f │ │ +0035f8: 7010 0501 0000 |0008: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ +0035fe: 0e00 |000b: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=321 │ │ locals : │ │ 0x0000 - 0x000c reg=0 this Lde/duenndns/gmdice/GameMasterDice$5; │ │ - 0x0000 - 0x000c reg=1 (null) Lde/duenndns/gmdice/GameMasterDice; │ │ + 0x0000 - 0x000c reg=1 this$0 Lde/duenndns/gmdice/GameMasterDice; │ │ 0x0000 - 0x000c reg=2 (null) Landroid/widget/ArrayAdapter; │ │ 0x0000 - 0x000c reg=3 (null) Lde/duenndns/gmdice/DiceSet; │ │ 0x0000 - 0x000c reg=4 (null) Lde/duenndns/gmdice/OnDiceChange; │ │ │ │ Virtual methods - │ │ #0 : (in Lde/duenndns/gmdice/GameMasterDice$5;) │ │ name : 'onClick' │ │ type : '(Landroid/content/DialogInterface;I)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 78 16-bit code units │ │ -00347c: |[00347c] de.duenndns.gmdice.GameMasterDice$5.onClick:(Landroid/content/DialogInterface;I)V │ │ -00348c: 5441 1d00 |0000: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice$5;.val$adapter:Landroid/widget/ArrayAdapter; // field@001d │ │ -003490: 6e20 3d00 6100 |0002: invoke-virtual {v1, v6}, Landroid/widget/ArrayAdapter;.getItem:(I)Ljava/lang/Object; // method@003d │ │ -003496: 0c01 |0005: move-result-object v1 │ │ -003498: 1f01 5b00 |0006: check-cast v1, Ljava/lang/CharSequence; // type@005b │ │ -00349c: 7210 ff00 0100 |0008: invoke-interface {v1}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@00ff │ │ -0034a2: 0c00 |000b: move-result-object v0 │ │ -0034a4: 7100 8700 0000 |000c: invoke-static {}, Lde/duenndns/gmdice/GameMasterDice;.access$000:()Ljava/lang/String; // method@0087 │ │ -0034aa: 0c01 |000f: move-result-object v1 │ │ -0034ac: 2202 6400 |0010: new-instance v2, Ljava/lang/StringBuilder; // type@0064 │ │ -0034b0: 7010 1001 0200 |0012: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ -0034b6: 1a03 8001 |0015: const-string v3, "item clicked: " // string@0180 │ │ -0034ba: 6e20 1301 3200 |0017: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -0034c0: 0c02 |001a: move-result-object v2 │ │ -0034c2: 6e20 1101 6200 |001b: invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0111 │ │ -0034c8: 0c02 |001e: move-result-object v2 │ │ -0034ca: 1a03 0200 |001f: const-string v3, " - " // string@0002 │ │ -0034ce: 6e20 1301 3200 |0021: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -0034d4: 0c02 |0024: move-result-object v2 │ │ -0034d6: 6e20 1301 0200 |0025: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -0034dc: 0c02 |0028: move-result-object v2 │ │ -0034de: 6e10 1601 0200 |0029: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ -0034e4: 0c02 |002c: move-result-object v2 │ │ -0034e6: 7120 2e00 2100 |002d: invoke-static {v1, v2}, Landroid/util/Log;.d:(Ljava/lang/String;Ljava/lang/String;)I // method@002e │ │ -0034ec: 5441 1d00 |0030: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice$5;.val$adapter:Landroid/widget/ArrayAdapter; // field@001d │ │ -0034f0: 6e10 3c00 0100 |0032: invoke-virtual {v1}, Landroid/widget/ArrayAdapter;.getCount:()I // method@003c │ │ -0034f6: 0a01 |0035: move-result v1 │ │ -0034f8: d801 01ff |0036: add-int/lit8 v1, v1, #int -1 // #ff │ │ -0034fc: 3316 0c00 |0038: if-ne v6, v1, 0044 // +000c │ │ -003500: 5441 1c00 |003a: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice$5;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@001c │ │ -003504: 5442 1e00 |003c: iget-object v2, v4, Lde/duenndns/gmdice/GameMasterDice$5;.val$defaults:Lde/duenndns/gmdice/DiceSet; // field@001e │ │ -003508: 5443 1f00 |003e: iget-object v3, v4, Lde/duenndns/gmdice/GameMasterDice$5;.val$onOk:Lde/duenndns/gmdice/OnDiceChange; // field@001f │ │ -00350c: 6e30 8900 2103 |0040: invoke-virtual {v1, v2, v3}, Lde/duenndns/gmdice/GameMasterDice;.configureDice:(Lde/duenndns/gmdice/DiceSet;Lde/duenndns/gmdice/OnDiceChange;)V // method@0089 │ │ -003512: 0e00 |0043: return-void │ │ -003514: 5441 1f00 |0044: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice$5;.val$onOk:Lde/duenndns/gmdice/OnDiceChange; // field@001f │ │ -003518: 7110 7200 0000 |0046: invoke-static {v0}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ -00351e: 0c02 |0049: move-result-object v2 │ │ -003520: 6e20 e800 2100 |004a: invoke-virtual {v1, v2}, Lde/duenndns/gmdice/OnDiceChange;.onDiceChange:(Lde/duenndns/gmdice/DiceSet;)V // method@00e8 │ │ -003526: 28f6 |004d: goto 0043 // -000a │ │ +003600: |[003600] de.duenndns.gmdice.GameMasterDice$5.onClick:(Landroid/content/DialogInterface;I)V │ │ +003610: 5441 1d00 |0000: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice$5;.val$adapter:Landroid/widget/ArrayAdapter; // field@001d │ │ +003614: 6e20 3d00 6100 |0002: invoke-virtual {v1, v6}, Landroid/widget/ArrayAdapter;.getItem:(I)Ljava/lang/Object; // method@003d │ │ +00361a: 0c01 |0005: move-result-object v1 │ │ +00361c: 1f01 5a00 |0006: check-cast v1, Ljava/lang/CharSequence; // type@005a │ │ +003620: 7210 ff00 0100 |0008: invoke-interface {v1}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@00ff │ │ +003626: 0c00 |000b: move-result-object v0 │ │ +003628: 7100 8700 0000 |000c: invoke-static {}, Lde/duenndns/gmdice/GameMasterDice;.access$000:()Ljava/lang/String; // method@0087 │ │ +00362e: 0c01 |000f: move-result-object v1 │ │ +003630: 2202 6300 |0010: new-instance v2, Ljava/lang/StringBuilder; // type@0063 │ │ +003634: 7010 1001 0200 |0012: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ +00363a: 1a03 7d01 |0015: const-string v3, "item clicked: " // string@017d │ │ +00363e: 6e20 1301 3200 |0017: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +003644: 0c02 |001a: move-result-object v2 │ │ +003646: 6e20 1101 6200 |001b: invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0111 │ │ +00364c: 0c02 |001e: move-result-object v2 │ │ +00364e: 1a03 0200 |001f: const-string v3, " - " // string@0002 │ │ +003652: 6e20 1301 3200 |0021: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +003658: 0c02 |0024: move-result-object v2 │ │ +00365a: 6e20 1301 0200 |0025: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +003660: 0c02 |0028: move-result-object v2 │ │ +003662: 6e10 1601 0200 |0029: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ +003668: 0c02 |002c: move-result-object v2 │ │ +00366a: 7120 2e00 2100 |002d: invoke-static {v1, v2}, Landroid/util/Log;.d:(Ljava/lang/String;Ljava/lang/String;)I // method@002e │ │ +003670: 5441 1d00 |0030: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice$5;.val$adapter:Landroid/widget/ArrayAdapter; // field@001d │ │ +003674: 6e10 3c00 0100 |0032: invoke-virtual {v1}, Landroid/widget/ArrayAdapter;.getCount:()I // method@003c │ │ +00367a: 0a01 |0035: move-result v1 │ │ +00367c: d801 01ff |0036: add-int/lit8 v1, v1, #int -1 // #ff │ │ +003680: 3316 0c00 |0038: if-ne v6, v1, 0044 // +000c │ │ +003684: 5441 1c00 |003a: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice$5;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@001c │ │ +003688: 5442 1e00 |003c: iget-object v2, v4, Lde/duenndns/gmdice/GameMasterDice$5;.val$defaults:Lde/duenndns/gmdice/DiceSet; // field@001e │ │ +00368c: 5443 1f00 |003e: iget-object v3, v4, Lde/duenndns/gmdice/GameMasterDice$5;.val$onOk:Lde/duenndns/gmdice/OnDiceChange; // field@001f │ │ +003690: 6e30 8900 2103 |0040: invoke-virtual {v1, v2, v3}, Lde/duenndns/gmdice/GameMasterDice;.configureDice:(Lde/duenndns/gmdice/DiceSet;Lde/duenndns/gmdice/OnDiceChange;)V // method@0089 │ │ +003696: 0e00 |0043: return-void │ │ +003698: 5441 1f00 |0044: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice$5;.val$onOk:Lde/duenndns/gmdice/OnDiceChange; // field@001f │ │ +00369c: 7110 7200 0000 |0046: invoke-static {v0}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ +0036a2: 0c02 |0049: move-result-object v2 │ │ +0036a4: 6e20 e800 2100 |004a: invoke-virtual {v1, v2}, Lde/duenndns/gmdice/OnDiceChange;.onDiceChange:(Lde/duenndns/gmdice/DiceSet;)V // method@00e8 │ │ +0036aa: 28f6 |004d: goto 0043 // -000a │ │ catches : (none) │ │ positions : │ │ 0x0000 line=323 │ │ 0x000c line=324 │ │ 0x0030 line=325 │ │ 0x003a line=326 │ │ 0x0043 line=329 │ │ @@ -1072,15 +1071,15 @@ │ │ 0x0000 - 0x004e reg=4 this Lde/duenndns/gmdice/GameMasterDice$5; │ │ 0x0000 - 0x004e reg=5 dialog Landroid/content/DialogInterface; │ │ 0x0000 - 0x004e reg=6 which I │ │ │ │ source_file_idx : 46 (GameMasterDice.java) │ │ │ │ Class #8 header: │ │ -class_idx : 69 │ │ +class_idx : 68 │ │ access_flags : 1 (0x0001) │ │ superclass_idx : 6 │ │ source_file_idx : 46 │ │ static_fields_size : 4 │ │ instance_fields_size: 10 │ │ direct_methods_size : 3 │ │ virtual_methods_size: 20 │ │ @@ -1156,272 +1155,278 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 8 │ │ ins : 0 │ │ outs : 1 │ │ insns size : 352 16-bit code units │ │ -003528: |[003528] de.duenndns.gmdice.GameMasterDice.:()V │ │ -003538: 1307 0800 |0000: const/16 v7, #int 8 // #8 │ │ -00353c: 1266 |0002: const/4 v6, #int 6 // #6 │ │ -00353e: 1245 |0003: const/4 v5, #int 4 // #4 │ │ -003540: 1234 |0004: const/4 v4, #int 3 // #3 │ │ -003542: 1223 |0005: const/4 v3, #int 2 // #2 │ │ -003544: 1a00 2d00 |0006: const-string v0, "GameMasterDice" // string@002d │ │ -003548: 6900 2300 |0008: sput-object v0, Lde/duenndns/gmdice/GameMasterDice;.TAG:Ljava/lang/String; // field@0023 │ │ -00354c: 1300 0a00 |000a: const/16 v0, #int 10 // #a │ │ -003550: 2300 7600 |000c: new-array v0, v0, [Ljava/lang/Integer; // type@0076 │ │ -003554: 1201 |000e: const/4 v1, #int 0 // #0 │ │ -003556: 1212 |000f: const/4 v2, #int 1 // #1 │ │ -003558: 7110 0201 0200 |0010: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -00355e: 0c02 |0013: move-result-object v2 │ │ -003560: 4d02 0001 |0014: aput-object v2, v0, v1 │ │ -003564: 1211 |0016: const/4 v1, #int 1 // #1 │ │ -003566: 7110 0201 0300 |0017: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -00356c: 0c02 |001a: move-result-object v2 │ │ -00356e: 4d02 0001 |001b: aput-object v2, v0, v1 │ │ -003572: 7110 0201 0400 |001d: invoke-static {v4}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -003578: 0c01 |0020: move-result-object v1 │ │ -00357a: 4d01 0003 |0021: aput-object v1, v0, v3 │ │ -00357e: 7110 0201 0500 |0023: invoke-static {v5}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -003584: 0c01 |0026: move-result-object v1 │ │ -003586: 4d01 0004 |0027: aput-object v1, v0, v4 │ │ -00358a: 1251 |0029: const/4 v1, #int 5 // #5 │ │ -00358c: 7110 0201 0100 |002a: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -003592: 0c01 |002d: move-result-object v1 │ │ -003594: 4d01 0005 |002e: aput-object v1, v0, v5 │ │ -003598: 1251 |0030: const/4 v1, #int 5 // #5 │ │ -00359a: 7110 0201 0600 |0031: invoke-static {v6}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0035a0: 0c02 |0034: move-result-object v2 │ │ -0035a2: 4d02 0001 |0035: aput-object v2, v0, v1 │ │ -0035a6: 1271 |0037: const/4 v1, #int 7 // #7 │ │ -0035a8: 7110 0201 0100 |0038: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0035ae: 0c01 |003b: move-result-object v1 │ │ -0035b0: 4d01 0006 |003c: aput-object v1, v0, v6 │ │ -0035b4: 1271 |003e: const/4 v1, #int 7 // #7 │ │ -0035b6: 7110 0201 0700 |003f: invoke-static {v7}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0035bc: 0c02 |0042: move-result-object v2 │ │ -0035be: 4d02 0001 |0043: aput-object v2, v0, v1 │ │ -0035c2: 1301 0900 |0045: const/16 v1, #int 9 // #9 │ │ -0035c6: 7110 0201 0100 |0047: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0035cc: 0c01 |004a: move-result-object v1 │ │ -0035ce: 4d01 0007 |004b: aput-object v1, v0, v7 │ │ -0035d2: 1301 0900 |004d: const/16 v1, #int 9 // #9 │ │ -0035d6: 1302 0a00 |004f: const/16 v2, #int 10 // #a │ │ -0035da: 7110 0201 0200 |0051: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0035e0: 0c02 |0054: move-result-object v2 │ │ -0035e2: 4d02 0001 |0055: aput-object v2, v0, v1 │ │ -0035e6: 6900 2000 |0057: sput-object v0, Lde/duenndns/gmdice/GameMasterDice;.SPIN_COUNT:[Ljava/lang/Integer; // field@0020 │ │ -0035ea: 1300 0a00 |0059: const/16 v0, #int 10 // #a │ │ -0035ee: 2300 7600 |005b: new-array v0, v0, [Ljava/lang/Integer; // type@0076 │ │ -0035f2: 1201 |005d: const/4 v1, #int 0 // #0 │ │ -0035f4: 7110 0201 0300 |005e: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0035fa: 0c02 |0061: move-result-object v2 │ │ -0035fc: 4d02 0001 |0062: aput-object v2, v0, v1 │ │ -003600: 1211 |0064: const/4 v1, #int 1 // #1 │ │ -003602: 7110 0201 0400 |0065: invoke-static {v4}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -003608: 0c02 |0068: move-result-object v2 │ │ -00360a: 4d02 0001 |0069: aput-object v2, v0, v1 │ │ -00360e: 7110 0201 0500 |006b: invoke-static {v5}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -003614: 0c01 |006e: move-result-object v1 │ │ -003616: 4d01 0003 |006f: aput-object v1, v0, v3 │ │ -00361a: 7110 0201 0600 |0071: invoke-static {v6}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -003620: 0c01 |0074: move-result-object v1 │ │ -003622: 4d01 0004 |0075: aput-object v1, v0, v4 │ │ -003626: 7110 0201 0700 |0077: invoke-static {v7}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -00362c: 0c01 |007a: move-result-object v1 │ │ -00362e: 4d01 0005 |007b: aput-object v1, v0, v5 │ │ -003632: 1251 |007d: const/4 v1, #int 5 // #5 │ │ -003634: 1302 0a00 |007e: const/16 v2, #int 10 // #a │ │ -003638: 7110 0201 0200 |0080: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -00363e: 0c02 |0083: move-result-object v2 │ │ -003640: 4d02 0001 |0084: aput-object v2, v0, v1 │ │ -003644: 1301 0c00 |0086: const/16 v1, #int 12 // #c │ │ -003648: 7110 0201 0100 |0088: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -00364e: 0c01 |008b: move-result-object v1 │ │ -003650: 4d01 0006 |008c: aput-object v1, v0, v6 │ │ -003654: 1271 |008e: const/4 v1, #int 7 // #7 │ │ -003656: 1302 1400 |008f: const/16 v2, #int 20 // #14 │ │ -00365a: 7110 0201 0200 |0091: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -003660: 0c02 |0094: move-result-object v2 │ │ -003662: 4d02 0001 |0095: aput-object v2, v0, v1 │ │ -003666: 1301 1e00 |0097: const/16 v1, #int 30 // #1e │ │ -00366a: 7110 0201 0100 |0099: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -003670: 0c01 |009c: move-result-object v1 │ │ -003672: 4d01 0007 |009d: aput-object v1, v0, v7 │ │ -003676: 1301 0900 |009f: const/16 v1, #int 9 // #9 │ │ -00367a: 1302 6400 |00a1: const/16 v2, #int 100 // #64 │ │ -00367e: 7110 0201 0200 |00a3: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -003684: 0c02 |00a6: move-result-object v2 │ │ -003686: 4d02 0001 |00a7: aput-object v2, v0, v1 │ │ -00368a: 6900 2200 |00a9: sput-object v0, Lde/duenndns/gmdice/GameMasterDice;.SPIN_SIDES:[Ljava/lang/Integer; // field@0022 │ │ -00368e: 1300 1500 |00ab: const/16 v0, #int 21 // #15 │ │ -003692: 2300 7600 |00ad: new-array v0, v0, [Ljava/lang/Integer; // type@0076 │ │ -003696: 1201 |00af: const/4 v1, #int 0 // #0 │ │ -003698: 1302 f6ff |00b0: const/16 v2, #int -10 // #fff6 │ │ -00369c: 7110 0201 0200 |00b2: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0036a2: 0c02 |00b5: move-result-object v2 │ │ -0036a4: 4d02 0001 |00b6: aput-object v2, v0, v1 │ │ -0036a8: 1211 |00b8: const/4 v1, #int 1 // #1 │ │ -0036aa: 1302 f7ff |00b9: const/16 v2, #int -9 // #fff7 │ │ -0036ae: 7110 0201 0200 |00bb: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0036b4: 0c02 |00be: move-result-object v2 │ │ -0036b6: 4d02 0001 |00bf: aput-object v2, v0, v1 │ │ -0036ba: 1281 |00c1: const/4 v1, #int -8 // #f8 │ │ -0036bc: 7110 0201 0100 |00c2: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0036c2: 0c01 |00c5: move-result-object v1 │ │ -0036c4: 4d01 0003 |00c6: aput-object v1, v0, v3 │ │ -0036c8: 1291 |00c8: const/4 v1, #int -7 // #f9 │ │ -0036ca: 7110 0201 0100 |00c9: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0036d0: 0c01 |00cc: move-result-object v1 │ │ -0036d2: 4d01 0004 |00cd: aput-object v1, v0, v4 │ │ -0036d6: 12a1 |00cf: const/4 v1, #int -6 // #fa │ │ -0036d8: 7110 0201 0100 |00d0: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0036de: 0c01 |00d3: move-result-object v1 │ │ -0036e0: 4d01 0005 |00d4: aput-object v1, v0, v5 │ │ -0036e4: 1251 |00d6: const/4 v1, #int 5 // #5 │ │ -0036e6: 12b2 |00d7: const/4 v2, #int -5 // #fb │ │ -0036e8: 7110 0201 0200 |00d8: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0036ee: 0c02 |00db: move-result-object v2 │ │ -0036f0: 4d02 0001 |00dc: aput-object v2, v0, v1 │ │ -0036f4: 12c1 |00de: const/4 v1, #int -4 // #fc │ │ -0036f6: 7110 0201 0100 |00df: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0036fc: 0c01 |00e2: move-result-object v1 │ │ -0036fe: 4d01 0006 |00e3: aput-object v1, v0, v6 │ │ -003702: 1271 |00e5: const/4 v1, #int 7 // #7 │ │ -003704: 12d2 |00e6: const/4 v2, #int -3 // #fd │ │ -003706: 7110 0201 0200 |00e7: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -00370c: 0c02 |00ea: move-result-object v2 │ │ -00370e: 4d02 0001 |00eb: aput-object v2, v0, v1 │ │ -003712: 12e1 |00ed: const/4 v1, #int -2 // #fe │ │ -003714: 7110 0201 0100 |00ee: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -00371a: 0c01 |00f1: move-result-object v1 │ │ -00371c: 4d01 0007 |00f2: aput-object v1, v0, v7 │ │ -003720: 1301 0900 |00f4: const/16 v1, #int 9 // #9 │ │ -003724: 12f2 |00f6: const/4 v2, #int -1 // #ff │ │ -003726: 7110 0201 0200 |00f7: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -00372c: 0c02 |00fa: move-result-object v2 │ │ -00372e: 4d02 0001 |00fb: aput-object v2, v0, v1 │ │ -003732: 1301 0a00 |00fd: const/16 v1, #int 10 // #a │ │ -003736: 1202 |00ff: const/4 v2, #int 0 // #0 │ │ -003738: 7110 0201 0200 |0100: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -00373e: 0c02 |0103: move-result-object v2 │ │ -003740: 4d02 0001 |0104: aput-object v2, v0, v1 │ │ -003744: 1301 0b00 |0106: const/16 v1, #int 11 // #b │ │ -003748: 1212 |0108: const/4 v2, #int 1 // #1 │ │ -00374a: 7110 0201 0200 |0109: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -003750: 0c02 |010c: move-result-object v2 │ │ -003752: 4d02 0001 |010d: aput-object v2, v0, v1 │ │ -003756: 1301 0c00 |010f: const/16 v1, #int 12 // #c │ │ -00375a: 7110 0201 0300 |0111: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -003760: 0c02 |0114: move-result-object v2 │ │ -003762: 4d02 0001 |0115: aput-object v2, v0, v1 │ │ -003766: 1301 0d00 |0117: const/16 v1, #int 13 // #d │ │ -00376a: 7110 0201 0400 |0119: invoke-static {v4}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -003770: 0c02 |011c: move-result-object v2 │ │ -003772: 4d02 0001 |011d: aput-object v2, v0, v1 │ │ -003776: 1301 0e00 |011f: const/16 v1, #int 14 // #e │ │ -00377a: 7110 0201 0500 |0121: invoke-static {v5}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -003780: 0c02 |0124: move-result-object v2 │ │ -003782: 4d02 0001 |0125: aput-object v2, v0, v1 │ │ -003786: 1301 0f00 |0127: const/16 v1, #int 15 // #f │ │ -00378a: 1252 |0129: const/4 v2, #int 5 // #5 │ │ -00378c: 7110 0201 0200 |012a: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -003792: 0c02 |012d: move-result-object v2 │ │ -003794: 4d02 0001 |012e: aput-object v2, v0, v1 │ │ -003798: 1301 1000 |0130: const/16 v1, #int 16 // #10 │ │ -00379c: 7110 0201 0600 |0132: invoke-static {v6}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0037a2: 0c02 |0135: move-result-object v2 │ │ -0037a4: 4d02 0001 |0136: aput-object v2, v0, v1 │ │ -0037a8: 1301 1100 |0138: const/16 v1, #int 17 // #11 │ │ -0037ac: 1272 |013a: const/4 v2, #int 7 // #7 │ │ -0037ae: 7110 0201 0200 |013b: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0037b4: 0c02 |013e: move-result-object v2 │ │ -0037b6: 4d02 0001 |013f: aput-object v2, v0, v1 │ │ -0037ba: 1301 1200 |0141: const/16 v1, #int 18 // #12 │ │ -0037be: 7110 0201 0700 |0143: invoke-static {v7}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0037c4: 0c02 |0146: move-result-object v2 │ │ -0037c6: 4d02 0001 |0147: aput-object v2, v0, v1 │ │ -0037ca: 1301 1300 |0149: const/16 v1, #int 19 // #13 │ │ -0037ce: 1302 0900 |014b: const/16 v2, #int 9 // #9 │ │ -0037d2: 7110 0201 0200 |014d: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0037d8: 0c02 |0150: move-result-object v2 │ │ -0037da: 4d02 0001 |0151: aput-object v2, v0, v1 │ │ -0037de: 1301 1400 |0153: const/16 v1, #int 20 // #14 │ │ -0037e2: 1302 0a00 |0155: const/16 v2, #int 10 // #a │ │ -0037e6: 7110 0201 0200 |0157: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0037ec: 0c02 |015a: move-result-object v2 │ │ -0037ee: 4d02 0001 |015b: aput-object v2, v0, v1 │ │ -0037f2: 6900 2100 |015d: sput-object v0, Lde/duenndns/gmdice/GameMasterDice;.SPIN_MODIFIER:[Ljava/lang/Integer; // field@0021 │ │ -0037f6: 0e00 |015f: return-void │ │ +0036ac: |[0036ac] de.duenndns.gmdice.GameMasterDice.:()V │ │ +0036bc: 1307 0800 |0000: const/16 v7, #int 8 // #8 │ │ +0036c0: 1266 |0002: const/4 v6, #int 6 // #6 │ │ +0036c2: 1245 |0003: const/4 v5, #int 4 // #4 │ │ +0036c4: 1234 |0004: const/4 v4, #int 3 // #3 │ │ +0036c6: 1223 |0005: const/4 v3, #int 2 // #2 │ │ +0036c8: 1a00 2d00 |0006: const-string v0, "GameMasterDice" // string@002d │ │ +0036cc: 6900 2300 |0008: sput-object v0, Lde/duenndns/gmdice/GameMasterDice;.TAG:Ljava/lang/String; // field@0023 │ │ +0036d0: 1300 0a00 |000a: const/16 v0, #int 10 // #a │ │ +0036d4: 2300 7500 |000c: new-array v0, v0, [Ljava/lang/Integer; // type@0075 │ │ +0036d8: 1201 |000e: const/4 v1, #int 0 // #0 │ │ +0036da: 1212 |000f: const/4 v2, #int 1 // #1 │ │ +0036dc: 7110 0201 0200 |0010: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0036e2: 0c02 |0013: move-result-object v2 │ │ +0036e4: 4d02 0001 |0014: aput-object v2, v0, v1 │ │ +0036e8: 1211 |0016: const/4 v1, #int 1 // #1 │ │ +0036ea: 7110 0201 0300 |0017: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0036f0: 0c02 |001a: move-result-object v2 │ │ +0036f2: 4d02 0001 |001b: aput-object v2, v0, v1 │ │ +0036f6: 7110 0201 0400 |001d: invoke-static {v4}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0036fc: 0c01 |0020: move-result-object v1 │ │ +0036fe: 4d01 0003 |0021: aput-object v1, v0, v3 │ │ +003702: 7110 0201 0500 |0023: invoke-static {v5}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003708: 0c01 |0026: move-result-object v1 │ │ +00370a: 4d01 0004 |0027: aput-object v1, v0, v4 │ │ +00370e: 1251 |0029: const/4 v1, #int 5 // #5 │ │ +003710: 7110 0201 0100 |002a: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003716: 0c01 |002d: move-result-object v1 │ │ +003718: 4d01 0005 |002e: aput-object v1, v0, v5 │ │ +00371c: 1251 |0030: const/4 v1, #int 5 // #5 │ │ +00371e: 7110 0201 0600 |0031: invoke-static {v6}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003724: 0c02 |0034: move-result-object v2 │ │ +003726: 4d02 0001 |0035: aput-object v2, v0, v1 │ │ +00372a: 1271 |0037: const/4 v1, #int 7 // #7 │ │ +00372c: 7110 0201 0100 |0038: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003732: 0c01 |003b: move-result-object v1 │ │ +003734: 4d01 0006 |003c: aput-object v1, v0, v6 │ │ +003738: 1271 |003e: const/4 v1, #int 7 // #7 │ │ +00373a: 7110 0201 0700 |003f: invoke-static {v7}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003740: 0c02 |0042: move-result-object v2 │ │ +003742: 4d02 0001 |0043: aput-object v2, v0, v1 │ │ +003746: 1301 0900 |0045: const/16 v1, #int 9 // #9 │ │ +00374a: 7110 0201 0100 |0047: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003750: 0c01 |004a: move-result-object v1 │ │ +003752: 4d01 0007 |004b: aput-object v1, v0, v7 │ │ +003756: 1301 0900 |004d: const/16 v1, #int 9 // #9 │ │ +00375a: 1302 0a00 |004f: const/16 v2, #int 10 // #a │ │ +00375e: 7110 0201 0200 |0051: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003764: 0c02 |0054: move-result-object v2 │ │ +003766: 4d02 0001 |0055: aput-object v2, v0, v1 │ │ +00376a: 6900 2000 |0057: sput-object v0, Lde/duenndns/gmdice/GameMasterDice;.SPIN_COUNT:[Ljava/lang/Integer; // field@0020 │ │ +00376e: 1300 0a00 |0059: const/16 v0, #int 10 // #a │ │ +003772: 2300 7500 |005b: new-array v0, v0, [Ljava/lang/Integer; // type@0075 │ │ +003776: 1201 |005d: const/4 v1, #int 0 // #0 │ │ +003778: 7110 0201 0300 |005e: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +00377e: 0c02 |0061: move-result-object v2 │ │ +003780: 4d02 0001 |0062: aput-object v2, v0, v1 │ │ +003784: 1211 |0064: const/4 v1, #int 1 // #1 │ │ +003786: 7110 0201 0400 |0065: invoke-static {v4}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +00378c: 0c02 |0068: move-result-object v2 │ │ +00378e: 4d02 0001 |0069: aput-object v2, v0, v1 │ │ +003792: 7110 0201 0500 |006b: invoke-static {v5}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003798: 0c01 |006e: move-result-object v1 │ │ +00379a: 4d01 0003 |006f: aput-object v1, v0, v3 │ │ +00379e: 7110 0201 0600 |0071: invoke-static {v6}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0037a4: 0c01 |0074: move-result-object v1 │ │ +0037a6: 4d01 0004 |0075: aput-object v1, v0, v4 │ │ +0037aa: 7110 0201 0700 |0077: invoke-static {v7}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0037b0: 0c01 |007a: move-result-object v1 │ │ +0037b2: 4d01 0005 |007b: aput-object v1, v0, v5 │ │ +0037b6: 1251 |007d: const/4 v1, #int 5 // #5 │ │ +0037b8: 1302 0a00 |007e: const/16 v2, #int 10 // #a │ │ +0037bc: 7110 0201 0200 |0080: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0037c2: 0c02 |0083: move-result-object v2 │ │ +0037c4: 4d02 0001 |0084: aput-object v2, v0, v1 │ │ +0037c8: 1301 0c00 |0086: const/16 v1, #int 12 // #c │ │ +0037cc: 7110 0201 0100 |0088: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0037d2: 0c01 |008b: move-result-object v1 │ │ +0037d4: 4d01 0006 |008c: aput-object v1, v0, v6 │ │ +0037d8: 1271 |008e: const/4 v1, #int 7 // #7 │ │ +0037da: 1302 1400 |008f: const/16 v2, #int 20 // #14 │ │ +0037de: 7110 0201 0200 |0091: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0037e4: 0c02 |0094: move-result-object v2 │ │ +0037e6: 4d02 0001 |0095: aput-object v2, v0, v1 │ │ +0037ea: 1301 1e00 |0097: const/16 v1, #int 30 // #1e │ │ +0037ee: 7110 0201 0100 |0099: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0037f4: 0c01 |009c: move-result-object v1 │ │ +0037f6: 4d01 0007 |009d: aput-object v1, v0, v7 │ │ +0037fa: 1301 0900 |009f: const/16 v1, #int 9 // #9 │ │ +0037fe: 1302 6400 |00a1: const/16 v2, #int 100 // #64 │ │ +003802: 7110 0201 0200 |00a3: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003808: 0c02 |00a6: move-result-object v2 │ │ +00380a: 4d02 0001 |00a7: aput-object v2, v0, v1 │ │ +00380e: 6900 2200 |00a9: sput-object v0, Lde/duenndns/gmdice/GameMasterDice;.SPIN_SIDES:[Ljava/lang/Integer; // field@0022 │ │ +003812: 1300 1500 |00ab: const/16 v0, #int 21 // #15 │ │ +003816: 2300 7500 |00ad: new-array v0, v0, [Ljava/lang/Integer; // type@0075 │ │ +00381a: 1201 |00af: const/4 v1, #int 0 // #0 │ │ +00381c: 1302 f6ff |00b0: const/16 v2, #int -10 // #fff6 │ │ +003820: 7110 0201 0200 |00b2: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003826: 0c02 |00b5: move-result-object v2 │ │ +003828: 4d02 0001 |00b6: aput-object v2, v0, v1 │ │ +00382c: 1211 |00b8: const/4 v1, #int 1 // #1 │ │ +00382e: 1302 f7ff |00b9: const/16 v2, #int -9 // #fff7 │ │ +003832: 7110 0201 0200 |00bb: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003838: 0c02 |00be: move-result-object v2 │ │ +00383a: 4d02 0001 |00bf: aput-object v2, v0, v1 │ │ +00383e: 1281 |00c1: const/4 v1, #int -8 // #f8 │ │ +003840: 7110 0201 0100 |00c2: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003846: 0c01 |00c5: move-result-object v1 │ │ +003848: 4d01 0003 |00c6: aput-object v1, v0, v3 │ │ +00384c: 1291 |00c8: const/4 v1, #int -7 // #f9 │ │ +00384e: 7110 0201 0100 |00c9: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003854: 0c01 |00cc: move-result-object v1 │ │ +003856: 4d01 0004 |00cd: aput-object v1, v0, v4 │ │ +00385a: 12a1 |00cf: const/4 v1, #int -6 // #fa │ │ +00385c: 7110 0201 0100 |00d0: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003862: 0c01 |00d3: move-result-object v1 │ │ +003864: 4d01 0005 |00d4: aput-object v1, v0, v5 │ │ +003868: 1251 |00d6: const/4 v1, #int 5 // #5 │ │ +00386a: 12b2 |00d7: const/4 v2, #int -5 // #fb │ │ +00386c: 7110 0201 0200 |00d8: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003872: 0c02 |00db: move-result-object v2 │ │ +003874: 4d02 0001 |00dc: aput-object v2, v0, v1 │ │ +003878: 12c1 |00de: const/4 v1, #int -4 // #fc │ │ +00387a: 7110 0201 0100 |00df: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003880: 0c01 |00e2: move-result-object v1 │ │ +003882: 4d01 0006 |00e3: aput-object v1, v0, v6 │ │ +003886: 1271 |00e5: const/4 v1, #int 7 // #7 │ │ +003888: 12d2 |00e6: const/4 v2, #int -3 // #fd │ │ +00388a: 7110 0201 0200 |00e7: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003890: 0c02 |00ea: move-result-object v2 │ │ +003892: 4d02 0001 |00eb: aput-object v2, v0, v1 │ │ +003896: 12e1 |00ed: const/4 v1, #int -2 // #fe │ │ +003898: 7110 0201 0100 |00ee: invoke-static {v1}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +00389e: 0c01 |00f1: move-result-object v1 │ │ +0038a0: 4d01 0007 |00f2: aput-object v1, v0, v7 │ │ +0038a4: 1301 0900 |00f4: const/16 v1, #int 9 // #9 │ │ +0038a8: 12f2 |00f6: const/4 v2, #int -1 // #ff │ │ +0038aa: 7110 0201 0200 |00f7: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0038b0: 0c02 |00fa: move-result-object v2 │ │ +0038b2: 4d02 0001 |00fb: aput-object v2, v0, v1 │ │ +0038b6: 1301 0a00 |00fd: const/16 v1, #int 10 // #a │ │ +0038ba: 1202 |00ff: const/4 v2, #int 0 // #0 │ │ +0038bc: 7110 0201 0200 |0100: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0038c2: 0c02 |0103: move-result-object v2 │ │ +0038c4: 4d02 0001 |0104: aput-object v2, v0, v1 │ │ +0038c8: 1301 0b00 |0106: const/16 v1, #int 11 // #b │ │ +0038cc: 1212 |0108: const/4 v2, #int 1 // #1 │ │ +0038ce: 7110 0201 0200 |0109: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0038d4: 0c02 |010c: move-result-object v2 │ │ +0038d6: 4d02 0001 |010d: aput-object v2, v0, v1 │ │ +0038da: 1301 0c00 |010f: const/16 v1, #int 12 // #c │ │ +0038de: 7110 0201 0300 |0111: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0038e4: 0c02 |0114: move-result-object v2 │ │ +0038e6: 4d02 0001 |0115: aput-object v2, v0, v1 │ │ +0038ea: 1301 0d00 |0117: const/16 v1, #int 13 // #d │ │ +0038ee: 7110 0201 0400 |0119: invoke-static {v4}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0038f4: 0c02 |011c: move-result-object v2 │ │ +0038f6: 4d02 0001 |011d: aput-object v2, v0, v1 │ │ +0038fa: 1301 0e00 |011f: const/16 v1, #int 14 // #e │ │ +0038fe: 7110 0201 0500 |0121: invoke-static {v5}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003904: 0c02 |0124: move-result-object v2 │ │ +003906: 4d02 0001 |0125: aput-object v2, v0, v1 │ │ +00390a: 1301 0f00 |0127: const/16 v1, #int 15 // #f │ │ +00390e: 1252 |0129: const/4 v2, #int 5 // #5 │ │ +003910: 7110 0201 0200 |012a: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003916: 0c02 |012d: move-result-object v2 │ │ +003918: 4d02 0001 |012e: aput-object v2, v0, v1 │ │ +00391c: 1301 1000 |0130: const/16 v1, #int 16 // #10 │ │ +003920: 7110 0201 0600 |0132: invoke-static {v6}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003926: 0c02 |0135: move-result-object v2 │ │ +003928: 4d02 0001 |0136: aput-object v2, v0, v1 │ │ +00392c: 1301 1100 |0138: const/16 v1, #int 17 // #11 │ │ +003930: 1272 |013a: const/4 v2, #int 7 // #7 │ │ +003932: 7110 0201 0200 |013b: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003938: 0c02 |013e: move-result-object v2 │ │ +00393a: 4d02 0001 |013f: aput-object v2, v0, v1 │ │ +00393e: 1301 1200 |0141: const/16 v1, #int 18 // #12 │ │ +003942: 7110 0201 0700 |0143: invoke-static {v7}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003948: 0c02 |0146: move-result-object v2 │ │ +00394a: 4d02 0001 |0147: aput-object v2, v0, v1 │ │ +00394e: 1301 1300 |0149: const/16 v1, #int 19 // #13 │ │ +003952: 1302 0900 |014b: const/16 v2, #int 9 // #9 │ │ +003956: 7110 0201 0200 |014d: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +00395c: 0c02 |0150: move-result-object v2 │ │ +00395e: 4d02 0001 |0151: aput-object v2, v0, v1 │ │ +003962: 1301 1400 |0153: const/16 v1, #int 20 // #14 │ │ +003966: 1302 0a00 |0155: const/16 v2, #int 10 // #a │ │ +00396a: 7110 0201 0200 |0157: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +003970: 0c02 |015a: move-result-object v2 │ │ +003972: 4d02 0001 |015b: aput-object v2, v0, v1 │ │ +003976: 6900 2100 |015d: sput-object v0, Lde/duenndns/gmdice/GameMasterDice;.SPIN_MODIFIER:[Ljava/lang/Integer; // field@0021 │ │ +00397a: 0e00 |015f: return-void │ │ catches : (none) │ │ positions : │ │ 0x0006 line=52 │ │ 0x000a line=262 │ │ 0x0059 line=263 │ │ 0x00ab line=264 │ │ + 0x0100 line=265 │ │ + 0x015f line=264 │ │ locals : │ │ │ │ #1 : (in Lde/duenndns/gmdice/GameMasterDice;) │ │ name : '' │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 7 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 100 16-bit code units │ │ -0037f8: |[0037f8] de.duenndns.gmdice.GameMasterDice.:()V │ │ -003808: 1265 |0000: const/4 v5, #int 6 // #6 │ │ -00380a: 1244 |0001: const/4 v4, #int 4 // #4 │ │ -00380c: 1202 |0002: const/4 v2, #int 0 // #0 │ │ -00380e: 1213 |0003: const/4 v3, #int 1 // #1 │ │ -003810: 7010 0e00 0600 |0004: invoke-direct {v6}, Landroid/app/ListActivity;.:()V // method@000e │ │ -003816: 2340 7300 |0007: new-array v0, v4, [I // type@0073 │ │ -00381a: 2600 4100 0000 |0009: fill-array-data v0, 0000004a // +00000041 │ │ -003820: 5b60 2600 |000c: iput-object v0, v6, Lde/duenndns/gmdice/GameMasterDice;.button_ids:[I // field@0026 │ │ -003824: 1250 |000e: const/4 v0, #int 5 // #5 │ │ -003826: 2300 7300 |000f: new-array v0, v0, [I // type@0073 │ │ -00382a: 2600 4500 0000 |0011: fill-array-data v0, 00000056 // +00000045 │ │ -003830: 5b60 2500 |0014: iput-object v0, v6, Lde/duenndns/gmdice/GameMasterDice;.button_colors:[I // field@0025 │ │ -003834: 2340 7500 |0016: new-array v0, v4, [Lde/duenndns/gmdice/DiceSet; // type@0075 │ │ -003838: 1a01 1300 |0018: const-string v1, "3D20" // string@0013 │ │ -00383c: 7110 7200 0100 |001a: invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ -003842: 0c01 |001d: move-result-object v1 │ │ -003844: 4d01 0002 |001e: aput-object v1, v0, v2 │ │ -003848: 1301 1400 |0020: const/16 v1, #int 20 // #14 │ │ -00384c: 7130 7100 1302 |0022: invoke-static {v3, v1, v2}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(III)Lde/duenndns/gmdice/DiceSet; // method@0071 │ │ -003852: 0c01 |0025: move-result-object v1 │ │ -003854: 4d01 0003 |0026: aput-object v1, v0, v3 │ │ -003858: 1221 |0028: const/4 v1, #int 2 // #2 │ │ -00385a: 7130 7100 5302 |0029: invoke-static {v3, v5, v2}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(III)Lde/duenndns/gmdice/DiceSet; // method@0071 │ │ -003860: 0c02 |002c: move-result-object v2 │ │ -003862: 4d02 0001 |002d: aput-object v2, v0, v1 │ │ -003866: 1231 |002f: const/4 v1, #int 3 // #3 │ │ -003868: 7130 7100 5304 |0030: invoke-static {v3, v5, v4}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(III)Lde/duenndns/gmdice/DiceSet; // method@0071 │ │ -00386e: 0c02 |0033: move-result-object v2 │ │ -003870: 4d02 0001 |0034: aput-object v2, v0, v1 │ │ -003874: 5b60 2400 |0036: iput-object v0, v6, Lde/duenndns/gmdice/GameMasterDice;.button_cfg:[Lde/duenndns/gmdice/DiceSet; // field@0024 │ │ -003878: 2200 3d00 |0038: new-instance v0, Lde/duenndns/gmdice/DiceCache; // type@003d │ │ -00387c: 1301 0a00 |003a: const/16 v1, #int 10 // #a │ │ -003880: 7020 6700 1000 |003c: invoke-direct {v0, v1}, Lde/duenndns/gmdice/DiceCache;.:(I)V // method@0067 │ │ -003886: 5b60 2900 |003f: iput-object v0, v6, Lde/duenndns/gmdice/GameMasterDice;.dicecache:Lde/duenndns/gmdice/DiceCache; // field@0029 │ │ -00388a: 2200 6f00 |0041: new-instance v0, Ljava/util/Random; // type@006f │ │ -00388e: 7010 2601 0000 |0043: invoke-direct {v0}, Ljava/util/Random;.:()V // method@0126 │ │ -003894: 5b60 2a00 |0046: iput-object v0, v6, Lde/duenndns/gmdice/GameMasterDice;.generator:Ljava/util/Random; // field@002a │ │ -003898: 0e00 |0048: return-void │ │ -00389a: 0000 |0049: nop // spacer │ │ -00389c: 0003 0400 0400 0000 0100 067f 0200 ... |004a: array-data (12 units) │ │ -0038b4: 0003 0400 0500 0000 f0b0 f0ff f0c0 ... |0056: array-data (14 units) │ │ +00397c: |[00397c] de.duenndns.gmdice.GameMasterDice.:()V │ │ +00398c: 1265 |0000: const/4 v5, #int 6 // #6 │ │ +00398e: 1244 |0001: const/4 v4, #int 4 // #4 │ │ +003990: 1202 |0002: const/4 v2, #int 0 // #0 │ │ +003992: 1213 |0003: const/4 v3, #int 1 // #1 │ │ +003994: 7010 0e00 0600 |0004: invoke-direct {v6}, Landroid/app/ListActivity;.:()V // method@000e │ │ +00399a: 2340 7200 |0007: new-array v0, v4, [I // type@0072 │ │ +00399e: 2600 4100 0000 |0009: fill-array-data v0, 0000004a // +00000041 │ │ +0039a4: 5b60 2600 |000c: iput-object v0, v6, Lde/duenndns/gmdice/GameMasterDice;.button_ids:[I // field@0026 │ │ +0039a8: 1250 |000e: const/4 v0, #int 5 // #5 │ │ +0039aa: 2300 7200 |000f: new-array v0, v0, [I // type@0072 │ │ +0039ae: 2600 4500 0000 |0011: fill-array-data v0, 00000056 // +00000045 │ │ +0039b4: 5b60 2500 |0014: iput-object v0, v6, Lde/duenndns/gmdice/GameMasterDice;.button_colors:[I // field@0025 │ │ +0039b8: 2340 7400 |0016: new-array v0, v4, [Lde/duenndns/gmdice/DiceSet; // type@0074 │ │ +0039bc: 1a01 1300 |0018: const-string v1, "3D20" // string@0013 │ │ +0039c0: 7110 7200 0100 |001a: invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ +0039c6: 0c01 |001d: move-result-object v1 │ │ +0039c8: 4d01 0002 |001e: aput-object v1, v0, v2 │ │ +0039cc: 1301 1400 |0020: const/16 v1, #int 20 // #14 │ │ +0039d0: 7130 7100 1302 |0022: invoke-static {v3, v1, v2}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(III)Lde/duenndns/gmdice/DiceSet; // method@0071 │ │ +0039d6: 0c01 |0025: move-result-object v1 │ │ +0039d8: 4d01 0003 |0026: aput-object v1, v0, v3 │ │ +0039dc: 1221 |0028: const/4 v1, #int 2 // #2 │ │ +0039de: 7130 7100 5302 |0029: invoke-static {v3, v5, v2}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(III)Lde/duenndns/gmdice/DiceSet; // method@0071 │ │ +0039e4: 0c02 |002c: move-result-object v2 │ │ +0039e6: 4d02 0001 |002d: aput-object v2, v0, v1 │ │ +0039ea: 1231 |002f: const/4 v1, #int 3 // #3 │ │ +0039ec: 7130 7100 5304 |0030: invoke-static {v3, v5, v4}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(III)Lde/duenndns/gmdice/DiceSet; // method@0071 │ │ +0039f2: 0c02 |0033: move-result-object v2 │ │ +0039f4: 4d02 0001 |0034: aput-object v2, v0, v1 │ │ +0039f8: 5b60 2400 |0036: iput-object v0, v6, Lde/duenndns/gmdice/GameMasterDice;.button_cfg:[Lde/duenndns/gmdice/DiceSet; // field@0024 │ │ +0039fc: 2200 3c00 |0038: new-instance v0, Lde/duenndns/gmdice/DiceCache; // type@003c │ │ +003a00: 1301 0a00 |003a: const/16 v1, #int 10 // #a │ │ +003a04: 7020 6700 1000 |003c: invoke-direct {v0, v1}, Lde/duenndns/gmdice/DiceCache;.:(I)V // method@0067 │ │ +003a0a: 5b60 2900 |003f: iput-object v0, v6, Lde/duenndns/gmdice/GameMasterDice;.dicecache:Lde/duenndns/gmdice/DiceCache; // field@0029 │ │ +003a0e: 2200 6e00 |0041: new-instance v0, Ljava/util/Random; // type@006e │ │ +003a12: 7010 2601 0000 |0043: invoke-direct {v0}, Ljava/util/Random;.:()V // method@0126 │ │ +003a18: 5b60 2a00 |0046: iput-object v0, v6, Lde/duenndns/gmdice/GameMasterDice;.generator:Ljava/util/Random; // field@002a │ │ +003a1c: 0e00 |0048: return-void │ │ +003a1e: 0000 |0049: nop // spacer │ │ +003a20: 0003 0400 0400 0000 0100 067f 0200 ... |004a: array-data (12 units) │ │ +003a38: 0003 0400 0500 0000 f0b0 f0ff f0c0 ... |0056: array-data (14 units) │ │ catches : (none) │ │ positions : │ │ 0x0004 line=49 │ │ 0x0007 line=55 │ │ 0x000e line=58 │ │ 0x0016 line=63 │ │ + 0x001a line=64 │ │ + 0x0022 line=65 │ │ + 0x0029 line=66 │ │ + 0x0030 line=67 │ │ 0x0038 line=69 │ │ 0x0041 line=70 │ │ 0x0049 line=55 │ │ 0x0056 line=58 │ │ locals : │ │ 0x0000 - 0x0064 reg=6 this Lde/duenndns/gmdice/GameMasterDice; │ │ │ │ @@ -1430,17 +1435,17 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -0038d0: |[0038d0] de.duenndns.gmdice.GameMasterDice.access$000:()Ljava/lang/String; │ │ -0038e0: 6200 2300 |0000: sget-object v0, Lde/duenndns/gmdice/GameMasterDice;.TAG:Ljava/lang/String; // field@0023 │ │ -0038e4: 1100 |0002: return-object v0 │ │ +003a54: |[003a54] de.duenndns.gmdice.GameMasterDice.access$000:()Ljava/lang/String; │ │ +003a64: 6200 2300 |0000: sget-object v0, Lde/duenndns/gmdice/GameMasterDice;.TAG:Ljava/lang/String; // field@0023 │ │ +003a68: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=49 │ │ locals : │ │ │ │ Virtual methods - │ │ #0 : (in Lde/duenndns/gmdice/GameMasterDice;) │ │ @@ -1448,84 +1453,91 @@ │ │ type : '()V' │ │ access : 0x0000 () │ │ code - │ │ registers : 7 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 126 16-bit code units │ │ -0038e8: |[0038e8] de.duenndns.gmdice.GameMasterDice.aboutDialog:()V │ │ -0038f8: 1403 0100 047f |0000: const v3, #float 1.75458e+38 // #7f040001 │ │ -0038fe: 6e20 8f00 3600 |0003: invoke-virtual {v6, v3}, Lde/duenndns/gmdice/GameMasterDice;.getString:(I)Ljava/lang/String; // method@008f │ │ -003904: 0c02 |0006: move-result-object v2 │ │ -003906: 6e10 8d00 0600 |0007: invoke-virtual {v6}, Lde/duenndns/gmdice/GameMasterDice;.getPackageManager:()Landroid/content/pm/PackageManager; // method@008d │ │ -00390c: 0c03 |000a: move-result-object v3 │ │ -00390e: 6e10 8e00 0600 |000b: invoke-virtual {v6}, Lde/duenndns/gmdice/GameMasterDice;.getPackageName:()Ljava/lang/String; // method@008e │ │ -003914: 0c04 |000e: move-result-object v4 │ │ -003916: 1205 |000f: const/4 v5, #int 0 // #0 │ │ -003918: 6e30 1d00 4305 |0010: invoke-virtual {v3, v4, v5}, Landroid/content/pm/PackageManager;.getPackageInfo:(Ljava/lang/String;I)Landroid/content/pm/PackageInfo; // method@001d │ │ -00391e: 0c01 |0013: move-result-object v1 │ │ -003920: 2203 6400 |0014: new-instance v3, Ljava/lang/StringBuilder; // type@0064 │ │ -003924: 7010 1001 0300 |0016: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ -00392a: 6e20 1301 2300 |0019: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -003930: 0c03 |001c: move-result-object v3 │ │ -003932: 1a04 0100 |001d: const-string v4, " " // string@0001 │ │ -003936: 6e20 1301 4300 |001f: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -00393c: 0c03 |0022: move-result-object v3 │ │ -00393e: 5414 0000 |0023: iget-object v4, v1, Landroid/content/pm/PackageInfo;.versionName:Ljava/lang/String; // field@0000 │ │ -003942: 6e20 1301 4300 |0025: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -003948: 0c03 |0028: move-result-object v3 │ │ -00394a: 6e10 1601 0300 |0029: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ -003950: 0c02 |002c: move-result-object v2 │ │ -003952: 2203 6400 |002d: new-instance v3, Ljava/lang/StringBuilder; // type@0064 │ │ -003956: 7010 1001 0300 |002f: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ -00395c: 1404 1000 047f |0032: const v4, #float 1.75458e+38 // #7f040010 │ │ -003962: 6e20 8f00 4600 |0035: invoke-virtual {v6, v4}, Lde/duenndns/gmdice/GameMasterDice;.getString:(I)Ljava/lang/String; // method@008f │ │ -003968: 0c04 |0038: move-result-object v4 │ │ -00396a: 6e20 1301 4300 |0039: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -003970: 0c03 |003c: move-result-object v3 │ │ -003972: 1404 1100 047f |003d: const v4, #float 1.75458e+38 // #7f040011 │ │ -003978: 6e20 8f00 4600 |0040: invoke-virtual {v6, v4}, Lde/duenndns/gmdice/GameMasterDice;.getString:(I)Ljava/lang/String; // method@008f │ │ -00397e: 0c04 |0043: move-result-object v4 │ │ -003980: 6e20 1301 4300 |0044: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -003986: 0c03 |0047: move-result-object v3 │ │ -003988: 6e10 1601 0300 |0048: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ -00398e: 0c00 |004b: move-result-object v0 │ │ -003990: 2203 0400 |004c: new-instance v3, Landroid/app/AlertDialog$Builder; // type@0004 │ │ -003994: 7020 0200 6300 |004e: invoke-direct {v3, v6}, Landroid/app/AlertDialog$Builder;.:(Landroid/content/Context;)V // method@0002 │ │ -00399a: 6e20 0b00 2300 |0051: invoke-virtual {v3, v2}, Landroid/app/AlertDialog$Builder;.setTitle:(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder; // method@000b │ │ -0039a0: 0c03 |0054: move-result-object v3 │ │ -0039a2: 1404 9b00 0801 |0055: const v4, #float 2.49797e-38 // #0108009b │ │ -0039a8: 6e20 0500 4300 |0058: invoke-virtual {v3, v4}, Landroid/app/AlertDialog$Builder;.setIcon:(I)Landroid/app/AlertDialog$Builder; // method@0005 │ │ -0039ae: 0c03 |005b: move-result-object v3 │ │ -0039b0: 6e20 0600 0300 |005c: invoke-virtual {v3, v0}, Landroid/app/AlertDialog$Builder;.setMessage:(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder; // method@0006 │ │ -0039b6: 0c03 |005f: move-result-object v3 │ │ -0039b8: 1404 0a00 0401 |0060: const v4, #float 2.42446e-38 // #0104000a │ │ -0039be: 1205 |0063: const/4 v5, #int 0 // #0 │ │ -0039c0: 6e30 0900 4305 |0064: invoke-virtual {v3, v4, v5}, Landroid/app/AlertDialog$Builder;.setPositiveButton:(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; // method@0009 │ │ -0039c6: 0c03 |0067: move-result-object v3 │ │ -0039c8: 1404 1200 047f |0068: const v4, #float 1.75458e+38 // #7f040012 │ │ -0039ce: 2205 4000 |006b: new-instance v5, Lde/duenndns/gmdice/GameMasterDice$1; // type@0040 │ │ -0039d2: 7020 7a00 6500 |006d: invoke-direct {v5, v6}, Lde/duenndns/gmdice/GameMasterDice$1;.:(Lde/duenndns/gmdice/GameMasterDice;)V // method@007a │ │ -0039d8: 6e30 0800 4305 |0070: invoke-virtual {v3, v4, v5}, Landroid/app/AlertDialog$Builder;.setNeutralButton:(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; // method@0008 │ │ -0039de: 0c03 |0073: move-result-object v3 │ │ -0039e0: 6e10 0300 0300 |0074: invoke-virtual {v3}, Landroid/app/AlertDialog$Builder;.create:()Landroid/app/AlertDialog; // method@0003 │ │ -0039e6: 0c03 |0077: move-result-object v3 │ │ -0039e8: 6e10 0d00 0300 |0078: invoke-virtual {v3}, Landroid/app/AlertDialog;.show:()V // method@000d │ │ -0039ee: 0e00 |007b: return-void │ │ -0039f0: 0d03 |007c: move-exception v3 │ │ -0039f2: 28b0 |007d: goto 002d // -0050 │ │ +003a6c: |[003a6c] de.duenndns.gmdice.GameMasterDice.aboutDialog:()V │ │ +003a7c: 1403 0100 047f |0000: const v3, #float 1.75458e+38 // #7f040001 │ │ +003a82: 6e20 8f00 3600 |0003: invoke-virtual {v6, v3}, Lde/duenndns/gmdice/GameMasterDice;.getString:(I)Ljava/lang/String; // method@008f │ │ +003a88: 0c02 |0006: move-result-object v2 │ │ +003a8a: 6e10 8d00 0600 |0007: invoke-virtual {v6}, Lde/duenndns/gmdice/GameMasterDice;.getPackageManager:()Landroid/content/pm/PackageManager; // method@008d │ │ +003a90: 0c03 |000a: move-result-object v3 │ │ +003a92: 6e10 8e00 0600 |000b: invoke-virtual {v6}, Lde/duenndns/gmdice/GameMasterDice;.getPackageName:()Ljava/lang/String; // method@008e │ │ +003a98: 0c04 |000e: move-result-object v4 │ │ +003a9a: 1205 |000f: const/4 v5, #int 0 // #0 │ │ +003a9c: 6e30 1d00 4305 |0010: invoke-virtual {v3, v4, v5}, Landroid/content/pm/PackageManager;.getPackageInfo:(Ljava/lang/String;I)Landroid/content/pm/PackageInfo; // method@001d │ │ +003aa2: 0c01 |0013: move-result-object v1 │ │ +003aa4: 2203 6300 |0014: new-instance v3, Ljava/lang/StringBuilder; // type@0063 │ │ +003aa8: 7010 1001 0300 |0016: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ +003aae: 6e20 1301 2300 |0019: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +003ab4: 0c03 |001c: move-result-object v3 │ │ +003ab6: 1a04 0100 |001d: const-string v4, " " // string@0001 │ │ +003aba: 6e20 1301 4300 |001f: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +003ac0: 0c03 |0022: move-result-object v3 │ │ +003ac2: 5414 0000 |0023: iget-object v4, v1, Landroid/content/pm/PackageInfo;.versionName:Ljava/lang/String; // field@0000 │ │ +003ac6: 6e20 1301 4300 |0025: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +003acc: 0c03 |0028: move-result-object v3 │ │ +003ace: 6e10 1601 0300 |0029: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ +003ad4: 0c02 |002c: move-result-object v2 │ │ +003ad6: 2203 6300 |002d: new-instance v3, Ljava/lang/StringBuilder; // type@0063 │ │ +003ada: 7010 1001 0300 |002f: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ +003ae0: 1404 1000 047f |0032: const v4, #float 1.75458e+38 // #7f040010 │ │ +003ae6: 6e20 8f00 4600 |0035: invoke-virtual {v6, v4}, Lde/duenndns/gmdice/GameMasterDice;.getString:(I)Ljava/lang/String; // method@008f │ │ +003aec: 0c04 |0038: move-result-object v4 │ │ +003aee: 6e20 1301 4300 |0039: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +003af4: 0c03 |003c: move-result-object v3 │ │ +003af6: 1404 1100 047f |003d: const v4, #float 1.75458e+38 // #7f040011 │ │ +003afc: 6e20 8f00 4600 |0040: invoke-virtual {v6, v4}, Lde/duenndns/gmdice/GameMasterDice;.getString:(I)Ljava/lang/String; // method@008f │ │ +003b02: 0c04 |0043: move-result-object v4 │ │ +003b04: 6e20 1301 4300 |0044: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +003b0a: 0c03 |0047: move-result-object v3 │ │ +003b0c: 6e10 1601 0300 |0048: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ +003b12: 0c00 |004b: move-result-object v0 │ │ +003b14: 2203 0400 |004c: new-instance v3, Landroid/app/AlertDialog$Builder; // type@0004 │ │ +003b18: 7020 0200 6300 |004e: invoke-direct {v3, v6}, Landroid/app/AlertDialog$Builder;.:(Landroid/content/Context;)V // method@0002 │ │ +003b1e: 6e20 0b00 2300 |0051: invoke-virtual {v3, v2}, Landroid/app/AlertDialog$Builder;.setTitle:(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder; // method@000b │ │ +003b24: 0c03 |0054: move-result-object v3 │ │ +003b26: 1404 9b00 0801 |0055: const v4, #float 2.49797e-38 // #0108009b │ │ +003b2c: 6e20 0500 4300 |0058: invoke-virtual {v3, v4}, Landroid/app/AlertDialog$Builder;.setIcon:(I)Landroid/app/AlertDialog$Builder; // method@0005 │ │ +003b32: 0c03 |005b: move-result-object v3 │ │ +003b34: 6e20 0600 0300 |005c: invoke-virtual {v3, v0}, Landroid/app/AlertDialog$Builder;.setMessage:(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder; // method@0006 │ │ +003b3a: 0c03 |005f: move-result-object v3 │ │ +003b3c: 1404 0a00 0401 |0060: const v4, #float 2.42446e-38 // #0104000a │ │ +003b42: 1205 |0063: const/4 v5, #int 0 // #0 │ │ +003b44: 6e30 0900 4305 |0064: invoke-virtual {v3, v4, v5}, Landroid/app/AlertDialog$Builder;.setPositiveButton:(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; // method@0009 │ │ +003b4a: 0c03 |0067: move-result-object v3 │ │ +003b4c: 1404 1200 047f |0068: const v4, #float 1.75458e+38 // #7f040012 │ │ +003b52: 2205 3f00 |006b: new-instance v5, Lde/duenndns/gmdice/GameMasterDice$1; // type@003f │ │ +003b56: 7020 7a00 6500 |006d: invoke-direct {v5, v6}, Lde/duenndns/gmdice/GameMasterDice$1;.:(Lde/duenndns/gmdice/GameMasterDice;)V // method@007a │ │ +003b5c: 6e30 0800 4305 |0070: invoke-virtual {v3, v4, v5}, Landroid/app/AlertDialog$Builder;.setNeutralButton:(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; // method@0008 │ │ +003b62: 0c03 |0073: move-result-object v3 │ │ +003b64: 6e10 0300 0300 |0074: invoke-virtual {v3}, Landroid/app/AlertDialog$Builder;.create:()Landroid/app/AlertDialog; // method@0003 │ │ +003b6a: 0c03 |0077: move-result-object v3 │ │ +003b6c: 6e10 0d00 0300 |0078: invoke-virtual {v3}, Landroid/app/AlertDialog;.show:()V // method@000d │ │ +003b72: 0e00 |007b: return-void │ │ +003b74: 0d03 |007c: move-exception v3 │ │ +003b76: 28b0 |007d: goto 002d // -0050 │ │ catches : 1 │ │ 0x0007 - 0x002c │ │ Landroid/content/pm/PackageManager$NameNotFoundException; -> 0x007c │ │ positions : │ │ 0x0000 line=168 │ │ 0x0007 line=170 │ │ + 0x000b line=171 │ │ 0x0014 line=172 │ │ 0x002d line=175 │ │ 0x004c line=176 │ │ + 0x0051 line=177 │ │ + 0x0058 line=178 │ │ + 0x005c line=179 │ │ + 0x0064 line=180 │ │ + 0x0070 line=181 │ │ + 0x0074 line=188 │ │ 0x007b line=189 │ │ 0x007c line=173 │ │ locals : │ │ 0x0014 - 0x002d reg=1 pi Landroid/content/pm/PackageInfo; │ │ 0x004c - 0x007c reg=0 about Ljava/lang/String; │ │ 0x0007 - 0x007e reg=2 versionTitle Ljava/lang/String; │ │ 0x0000 - 0x007e reg=6 this Lde/duenndns/gmdice/GameMasterDice; │ │ @@ -1535,30 +1547,30 @@ │ │ type : '()V' │ │ access : 0x0000 () │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 29 16-bit code units │ │ -003a00: |[003a00] de.duenndns.gmdice.GameMasterDice.configKeepScreenOn:()V │ │ -003a10: 1303 8000 |0000: const/16 v3, #int 128 // #80 │ │ -003a14: 5440 2b00 |0002: iget-object v0, v4, Lde/duenndns/gmdice/GameMasterDice;.prefs:Landroid/content/SharedPreferences; // field@002b │ │ -003a18: 1a01 8201 |0004: const-string v1, "keepscreen" // string@0182 │ │ -003a1c: 1202 |0006: const/4 v2, #int 0 // #0 │ │ -003a1e: 7230 1b00 1002 |0007: invoke-interface {v0, v1, v2}, Landroid/content/SharedPreferences;.getBoolean:(Ljava/lang/String;Z)Z // method@001b │ │ -003a24: 0a00 |000a: move-result v0 │ │ -003a26: 3800 0a00 |000b: if-eqz v0, 0015 // +000a │ │ -003a2a: 6e10 9100 0400 |000d: invoke-virtual {v4}, Lde/duenndns/gmdice/GameMasterDice;.getWindow:()Landroid/view/Window; // method@0091 │ │ -003a30: 0c00 |0010: move-result-object v0 │ │ -003a32: 6e20 3700 3000 |0011: invoke-virtual {v0, v3}, Landroid/view/Window;.addFlags:(I)V // method@0037 │ │ -003a38: 0e00 |0014: return-void │ │ -003a3a: 6e10 9100 0400 |0015: invoke-virtual {v4}, Lde/duenndns/gmdice/GameMasterDice;.getWindow:()Landroid/view/Window; // method@0091 │ │ -003a40: 0c00 |0018: move-result-object v0 │ │ -003a42: 6e20 3800 3000 |0019: invoke-virtual {v0, v3}, Landroid/view/Window;.clearFlags:(I)V // method@0038 │ │ -003a48: 28f8 |001c: goto 0014 // -0008 │ │ +003b84: |[003b84] de.duenndns.gmdice.GameMasterDice.configKeepScreenOn:()V │ │ +003b94: 1303 8000 |0000: const/16 v3, #int 128 // #80 │ │ +003b98: 5440 2b00 |0002: iget-object v0, v4, Lde/duenndns/gmdice/GameMasterDice;.prefs:Landroid/content/SharedPreferences; // field@002b │ │ +003b9c: 1a01 7f01 |0004: const-string v1, "keepscreen" // string@017f │ │ +003ba0: 1202 |0006: const/4 v2, #int 0 // #0 │ │ +003ba2: 7230 1b00 1002 |0007: invoke-interface {v0, v1, v2}, Landroid/content/SharedPreferences;.getBoolean:(Ljava/lang/String;Z)Z // method@001b │ │ +003ba8: 0a00 |000a: move-result v0 │ │ +003baa: 3800 0a00 |000b: if-eqz v0, 0015 // +000a │ │ +003bae: 6e10 9100 0400 |000d: invoke-virtual {v4}, Lde/duenndns/gmdice/GameMasterDice;.getWindow:()Landroid/view/Window; // method@0091 │ │ +003bb4: 0c00 |0010: move-result-object v0 │ │ +003bb6: 6e20 3700 3000 |0011: invoke-virtual {v0, v3}, Landroid/view/Window;.addFlags:(I)V // method@0037 │ │ +003bbc: 0e00 |0014: return-void │ │ +003bbe: 6e10 9100 0400 |0015: invoke-virtual {v4}, Lde/duenndns/gmdice/GameMasterDice;.getWindow:()Landroid/view/Window; // method@0091 │ │ +003bc4: 0c00 |0018: move-result-object v0 │ │ +003bc6: 6e20 3800 3000 |0019: invoke-virtual {v0, v3}, Landroid/view/Window;.clearFlags:(I)V // method@0038 │ │ +003bcc: 28f8 |001c: goto 0014 // -0008 │ │ catches : (none) │ │ positions : │ │ 0x0002 line=156 │ │ 0x000d line=157 │ │ 0x0014 line=161 │ │ 0x0015 line=159 │ │ locals : │ │ @@ -1569,66 +1581,71 @@ │ │ type : '(Lde/duenndns/gmdice/DiceSet;Lde/duenndns/gmdice/OnDiceChange;)V' │ │ access : 0x0000 () │ │ code - │ │ registers : 14 │ │ ins : 3 │ │ outs : 6 │ │ insns size : 90 16-bit code units │ │ -003a4c: |[003a4c] de.duenndns.gmdice.GameMasterDice.configureDice:(Lde/duenndns/gmdice/DiceSet;Lde/duenndns/gmdice/OnDiceChange;)V │ │ -003a5c: 120a |0000: const/4 v10, #int 0 // #0 │ │ -003a5e: 1a00 8601 |0001: const-string v0, "layout_inflater" // string@0186 │ │ -003a62: 6e20 9000 0b00 |0003: invoke-virtual {v11, v0}, Lde/duenndns/gmdice/GameMasterDice;.getSystemService:(Ljava/lang/String;)Ljava/lang/Object; // method@0090 │ │ -003a68: 0c07 |0006: move-result-object v7 │ │ -003a6a: 1f07 2000 |0007: check-cast v7, Landroid/view/LayoutInflater; // type@0020 │ │ -003a6e: 1400 0100 037f |0009: const v0, #float 1.74129e+38 // #7f030001 │ │ -003a74: 1201 |000c: const/4 v1, #int 0 // #0 │ │ -003a76: 6e40 2f00 071a |000d: invoke-virtual {v7, v0, v10, v1}, Landroid/view/LayoutInflater;.inflate:(ILandroid/view/ViewGroup;Z)Landroid/view/View; // method@002f │ │ -003a7c: 0c06 |0010: move-result-object v6 │ │ -003a7e: 1400 0600 067f |0011: const v0, #float 1.78117e+38 // #7f060006 │ │ -003a84: 52c1 0d00 |0014: iget v1, v12, Lde/duenndns/gmdice/DiceSet;.count:I // field@000d │ │ -003a88: 6e40 a200 6b10 |0016: invoke-virtual {v11, v6, v0, v1}, Lde/duenndns/gmdice/GameMasterDice;.setupNumPicker:(Landroid/view/View;II)Lde/duenndns/gmdice/NumberPicker; // method@00a2 │ │ -003a8e: 0c02 |0019: move-result-object v2 │ │ -003a90: 1400 0700 067f |001a: const v0, #float 1.78117e+38 // #7f060007 │ │ -003a96: 6201 2200 |001d: sget-object v1, Lde/duenndns/gmdice/GameMasterDice;.SPIN_SIDES:[Ljava/lang/Integer; // field@0022 │ │ -003a9a: 52c5 0f00 |001f: iget v5, v12, Lde/duenndns/gmdice/DiceSet;.sides:I // field@000f │ │ -003a9e: 6e55 a300 6b10 |0021: invoke-virtual {v11, v6, v0, v1, v5}, Lde/duenndns/gmdice/GameMasterDice;.setupSpinner:(Landroid/view/View;I[Ljava/lang/Integer;I)Landroid/widget/Spinner; // method@00a3 │ │ -003aa4: 0c03 |0024: move-result-object v3 │ │ -003aa6: 1400 0800 067f |0025: const v0, #float 1.78117e+38 // #7f060008 │ │ -003aac: 52c1 0e00 |0028: iget v1, v12, Lde/duenndns/gmdice/DiceSet;.modifier:I // field@000e │ │ -003ab0: 6e40 a200 6b10 |002a: invoke-virtual {v11, v6, v0, v1}, Lde/duenndns/gmdice/GameMasterDice;.setupNumPicker:(Landroid/view/View;II)Lde/duenndns/gmdice/NumberPicker; // method@00a2 │ │ -003ab6: 0c04 |002d: move-result-object v4 │ │ -003ab8: 2200 0400 |002e: new-instance v0, Landroid/app/AlertDialog$Builder; // type@0004 │ │ -003abc: 7020 0200 b000 |0030: invoke-direct {v0, v11}, Landroid/app/AlertDialog$Builder;.:(Landroid/content/Context;)V // method@0002 │ │ -003ac2: 1401 0400 047f |0033: const v1, #float 1.75458e+38 // #7f040004 │ │ -003ac8: 6e20 0a00 1000 |0036: invoke-virtual {v0, v1}, Landroid/app/AlertDialog$Builder;.setTitle:(I)Landroid/app/AlertDialog$Builder; // method@000a │ │ -003ace: 0c00 |0039: move-result-object v0 │ │ -003ad0: 6e20 0c00 6000 |003a: invoke-virtual {v0, v6}, Landroid/app/AlertDialog$Builder;.setView:(Landroid/view/View;)Landroid/app/AlertDialog$Builder; // method@000c │ │ -003ad6: 0c08 |003d: move-result-object v8 │ │ -003ad8: 1409 0a00 0401 |003e: const v9, #float 2.42446e-38 // #0104000a │ │ -003ade: 2200 4300 |0041: new-instance v0, Lde/duenndns/gmdice/GameMasterDice$4; // type@0043 │ │ -003ae2: 07b1 |0043: move-object v1, v11 │ │ -003ae4: 07d5 |0044: move-object v5, v13 │ │ -003ae6: 7606 8000 0000 |0045: invoke-direct/range {v0, v1, v2, v3, v4, v5}, Lde/duenndns/gmdice/GameMasterDice$4;.:(Lde/duenndns/gmdice/GameMasterDice;Lde/duenndns/gmdice/NumberPicker;Landroid/widget/Spinner;Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/OnDiceChange;)V // method@0080 │ │ -003aec: 6e30 0900 9800 |0048: invoke-virtual {v8, v9, v0}, Landroid/app/AlertDialog$Builder;.setPositiveButton:(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; // method@0009 │ │ -003af2: 0c00 |004b: move-result-object v0 │ │ -003af4: 1501 0401 |004c: const/high16 v1, #int 17039360 // #104 │ │ -003af8: 6e30 0700 100a |004e: invoke-virtual {v0, v1, v10}, Landroid/app/AlertDialog$Builder;.setNegativeButton:(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; // method@0007 │ │ -003afe: 0c00 |0051: move-result-object v0 │ │ -003b00: 6e10 0300 0000 |0052: invoke-virtual {v0}, Landroid/app/AlertDialog$Builder;.create:()Landroid/app/AlertDialog; // method@0003 │ │ -003b06: 0c00 |0055: move-result-object v0 │ │ -003b08: 6e10 0d00 0000 |0056: invoke-virtual {v0}, Landroid/app/AlertDialog;.show:()V // method@000d │ │ -003b0e: 0e00 |0059: return-void │ │ +003bd0: |[003bd0] de.duenndns.gmdice.GameMasterDice.configureDice:(Lde/duenndns/gmdice/DiceSet;Lde/duenndns/gmdice/OnDiceChange;)V │ │ +003be0: 120a |0000: const/4 v10, #int 0 // #0 │ │ +003be2: 1a00 8301 |0001: const-string v0, "layout_inflater" // string@0183 │ │ +003be6: 6e20 9000 0b00 |0003: invoke-virtual {v11, v0}, Lde/duenndns/gmdice/GameMasterDice;.getSystemService:(Ljava/lang/String;)Ljava/lang/Object; // method@0090 │ │ +003bec: 0c07 |0006: move-result-object v7 │ │ +003bee: 1f07 1f00 |0007: check-cast v7, Landroid/view/LayoutInflater; // type@001f │ │ +003bf2: 1400 0100 037f |0009: const v0, #float 1.74129e+38 // #7f030001 │ │ +003bf8: 1201 |000c: const/4 v1, #int 0 // #0 │ │ +003bfa: 6e40 2f00 071a |000d: invoke-virtual {v7, v0, v10, v1}, Landroid/view/LayoutInflater;.inflate:(ILandroid/view/ViewGroup;Z)Landroid/view/View; // method@002f │ │ +003c00: 0c06 |0010: move-result-object v6 │ │ +003c02: 1400 0600 067f |0011: const v0, #float 1.78117e+38 // #7f060006 │ │ +003c08: 52c1 0d00 |0014: iget v1, v12, Lde/duenndns/gmdice/DiceSet;.count:I // field@000d │ │ +003c0c: 6e40 a200 6b10 |0016: invoke-virtual {v11, v6, v0, v1}, Lde/duenndns/gmdice/GameMasterDice;.setupNumPicker:(Landroid/view/View;II)Lde/duenndns/gmdice/NumberPicker; // method@00a2 │ │ +003c12: 0c02 |0019: move-result-object v2 │ │ +003c14: 1400 0700 067f |001a: const v0, #float 1.78117e+38 // #7f060007 │ │ +003c1a: 6201 2200 |001d: sget-object v1, Lde/duenndns/gmdice/GameMasterDice;.SPIN_SIDES:[Ljava/lang/Integer; // field@0022 │ │ +003c1e: 52c5 0f00 |001f: iget v5, v12, Lde/duenndns/gmdice/DiceSet;.sides:I // field@000f │ │ +003c22: 6e55 a300 6b10 |0021: invoke-virtual {v11, v6, v0, v1, v5}, Lde/duenndns/gmdice/GameMasterDice;.setupSpinner:(Landroid/view/View;I[Ljava/lang/Integer;I)Landroid/widget/Spinner; // method@00a3 │ │ +003c28: 0c03 |0024: move-result-object v3 │ │ +003c2a: 1400 0800 067f |0025: const v0, #float 1.78117e+38 // #7f060008 │ │ +003c30: 52c1 0e00 |0028: iget v1, v12, Lde/duenndns/gmdice/DiceSet;.modifier:I // field@000e │ │ +003c34: 6e40 a200 6b10 |002a: invoke-virtual {v11, v6, v0, v1}, Lde/duenndns/gmdice/GameMasterDice;.setupNumPicker:(Landroid/view/View;II)Lde/duenndns/gmdice/NumberPicker; // method@00a2 │ │ +003c3a: 0c04 |002d: move-result-object v4 │ │ +003c3c: 2200 0400 |002e: new-instance v0, Landroid/app/AlertDialog$Builder; // type@0004 │ │ +003c40: 7020 0200 b000 |0030: invoke-direct {v0, v11}, Landroid/app/AlertDialog$Builder;.:(Landroid/content/Context;)V // method@0002 │ │ +003c46: 1401 0400 047f |0033: const v1, #float 1.75458e+38 // #7f040004 │ │ +003c4c: 6e20 0a00 1000 |0036: invoke-virtual {v0, v1}, Landroid/app/AlertDialog$Builder;.setTitle:(I)Landroid/app/AlertDialog$Builder; // method@000a │ │ +003c52: 0c00 |0039: move-result-object v0 │ │ +003c54: 6e20 0c00 6000 |003a: invoke-virtual {v0, v6}, Landroid/app/AlertDialog$Builder;.setView:(Landroid/view/View;)Landroid/app/AlertDialog$Builder; // method@000c │ │ +003c5a: 0c08 |003d: move-result-object v8 │ │ +003c5c: 1409 0a00 0401 |003e: const v9, #float 2.42446e-38 // #0104000a │ │ +003c62: 2200 4200 |0041: new-instance v0, Lde/duenndns/gmdice/GameMasterDice$4; // type@0042 │ │ +003c66: 07b1 |0043: move-object v1, v11 │ │ +003c68: 07d5 |0044: move-object v5, v13 │ │ +003c6a: 7606 8000 0000 |0045: invoke-direct/range {v0, v1, v2, v3, v4, v5}, Lde/duenndns/gmdice/GameMasterDice$4;.:(Lde/duenndns/gmdice/GameMasterDice;Lde/duenndns/gmdice/NumberPicker;Landroid/widget/Spinner;Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/OnDiceChange;)V // method@0080 │ │ +003c70: 6e30 0900 9800 |0048: invoke-virtual {v8, v9, v0}, Landroid/app/AlertDialog$Builder;.setPositiveButton:(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; // method@0009 │ │ +003c76: 0c00 |004b: move-result-object v0 │ │ +003c78: 1501 0401 |004c: const/high16 v1, #int 17039360 // #104 │ │ +003c7c: 6e30 0700 100a |004e: invoke-virtual {v0, v1, v10}, Landroid/app/AlertDialog$Builder;.setNegativeButton:(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; // method@0007 │ │ +003c82: 0c00 |0051: move-result-object v0 │ │ +003c84: 6e10 0300 0000 |0052: invoke-virtual {v0}, Landroid/app/AlertDialog$Builder;.create:()Landroid/app/AlertDialog; // method@0003 │ │ +003c8a: 0c00 |0055: move-result-object v0 │ │ +003c8c: 6e10 0d00 0000 |0056: invoke-virtual {v0}, Landroid/app/AlertDialog;.show:()V // method@000d │ │ +003c92: 0e00 |0059: return-void │ │ catches : (none) │ │ positions : │ │ 0x0001 line=288 │ │ 0x0009 line=290 │ │ 0x0011 line=291 │ │ 0x001a line=292 │ │ 0x0025 line=293 │ │ 0x002e line=295 │ │ + 0x0036 line=296 │ │ + 0x003a line=297 │ │ + 0x0048 line=298 │ │ + 0x004e line=307 │ │ + 0x0052 line=309 │ │ 0x0059 line=310 │ │ locals : │ │ 0x001a - 0x005a reg=2 np_c Lde/duenndns/gmdice/NumberPicker; │ │ 0x0025 - 0x005a reg=3 sp_s Landroid/widget/Spinner; │ │ 0x002e - 0x005a reg=4 np_m Lde/duenndns/gmdice/NumberPicker; │ │ 0x0011 - 0x005a reg=6 group Landroid/view/View; │ │ 0x0009 - 0x005a reg=7 inflater Landroid/view/LayoutInflater; │ │ @@ -1641,54 +1658,54 @@ │ │ type : '()V' │ │ access : 0x0000 () │ │ code - │ │ registers : 8 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 75 16-bit code units │ │ -003b10: |[003b10] de.duenndns.gmdice.GameMasterDice.loadDicePrefs:()V │ │ -003b20: 1206 |0000: const/4 v6, #int 0 // #0 │ │ -003b22: 5473 2b00 |0001: iget-object v3, v7, Lde/duenndns/gmdice/GameMasterDice;.prefs:Landroid/content/SharedPreferences; // field@002b │ │ -003b26: 1a04 1101 |0003: const-string v4, "buttons" // string@0111 │ │ -003b2a: 7230 1c00 4306 |0005: invoke-interface {v3, v4, v6}, Landroid/content/SharedPreferences;.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; // method@001c │ │ -003b30: 0c01 |0008: move-result-object v1 │ │ -003b32: 3901 0300 |0009: if-nez v1, 000c // +0003 │ │ -003b36: 0e00 |000b: return-void │ │ -003b38: 1a03 ec00 |000c: const-string v3, "\|" // string@00ec │ │ -003b3c: 6e20 0b01 3100 |000e: invoke-virtual {v1, v3}, Ljava/lang/String;.split:(Ljava/lang/String;)[Ljava/lang/String; // method@010b │ │ -003b42: 0c00 |0011: move-result-object v0 │ │ -003b44: 1202 |0012: const/4 v2, #int 0 // #0 │ │ -003b46: 2103 |0013: array-length v3, v0 │ │ -003b48: 3532 2900 |0014: if-ge v2, v3, 003d // +0029 │ │ -003b4c: 6203 2300 |0016: sget-object v3, Lde/duenndns/gmdice/GameMasterDice;.TAG:Ljava/lang/String; // field@0023 │ │ -003b50: 2204 6400 |0018: new-instance v4, Ljava/lang/StringBuilder; // type@0064 │ │ -003b54: 7010 1001 0400 |001a: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ -003b5a: 1a05 8b01 |001d: const-string v5, "load: " // string@018b │ │ -003b5e: 6e20 1301 5400 |001f: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -003b64: 0c04 |0022: move-result-object v4 │ │ -003b66: 4605 0002 |0023: aget-object v5, v0, v2 │ │ -003b6a: 6e20 1301 5400 |0025: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -003b70: 0c04 |0028: move-result-object v4 │ │ -003b72: 6e10 1601 0400 |0029: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ -003b78: 0c04 |002c: move-result-object v4 │ │ -003b7a: 7120 2e00 4300 |002d: invoke-static {v3, v4}, Landroid/util/Log;.d:(Ljava/lang/String;Ljava/lang/String;)I // method@002e │ │ -003b80: 5473 2400 |0030: iget-object v3, v7, Lde/duenndns/gmdice/GameMasterDice;.button_cfg:[Lde/duenndns/gmdice/DiceSet; // field@0024 │ │ -003b84: 4604 0002 |0032: aget-object v4, v0, v2 │ │ -003b88: 7110 7200 0400 |0034: invoke-static {v4}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ -003b8e: 0c04 |0037: move-result-object v4 │ │ -003b90: 4d04 0302 |0038: aput-object v4, v3, v2 │ │ -003b94: d802 0201 |003a: add-int/lit8 v2, v2, #int 1 // #01 │ │ -003b98: 28d7 |003c: goto 0013 // -0029 │ │ -003b9a: 5473 2900 |003d: iget-object v3, v7, Lde/duenndns/gmdice/GameMasterDice;.dicecache:Lde/duenndns/gmdice/DiceCache; // field@0029 │ │ -003b9e: 5474 2b00 |003f: iget-object v4, v7, Lde/duenndns/gmdice/GameMasterDice;.prefs:Landroid/content/SharedPreferences; // field@002b │ │ -003ba2: 1a05 1301 |0041: const-string v5, "cache" // string@0113 │ │ -003ba6: 7230 1c00 5406 |0043: invoke-interface {v4, v5, v6}, Landroid/content/SharedPreferences;.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; // method@001c │ │ -003bac: 0c04 |0046: move-result-object v4 │ │ -003bae: 6e20 6b00 4300 |0047: invoke-virtual {v3, v4}, Lde/duenndns/gmdice/DiceCache;.loadFromString:(Ljava/lang/String;)V // method@006b │ │ -003bb4: 28c1 |004a: goto 000b // -003f │ │ +003c94: |[003c94] de.duenndns.gmdice.GameMasterDice.loadDicePrefs:()V │ │ +003ca4: 1206 |0000: const/4 v6, #int 0 // #0 │ │ +003ca6: 5473 2b00 |0001: iget-object v3, v7, Lde/duenndns/gmdice/GameMasterDice;.prefs:Landroid/content/SharedPreferences; // field@002b │ │ +003caa: 1a04 0f01 |0003: const-string v4, "buttons" // string@010f │ │ +003cae: 7230 1c00 4306 |0005: invoke-interface {v3, v4, v6}, Landroid/content/SharedPreferences;.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; // method@001c │ │ +003cb4: 0c01 |0008: move-result-object v1 │ │ +003cb6: 3901 0300 |0009: if-nez v1, 000c // +0003 │ │ +003cba: 0e00 |000b: return-void │ │ +003cbc: 1a03 eb00 |000c: const-string v3, "\|" // string@00eb │ │ +003cc0: 6e20 0b01 3100 |000e: invoke-virtual {v1, v3}, Ljava/lang/String;.split:(Ljava/lang/String;)[Ljava/lang/String; // method@010b │ │ +003cc6: 0c00 |0011: move-result-object v0 │ │ +003cc8: 1202 |0012: const/4 v2, #int 0 // #0 │ │ +003cca: 2103 |0013: array-length v3, v0 │ │ +003ccc: 3532 2900 |0014: if-ge v2, v3, 003d // +0029 │ │ +003cd0: 6203 2300 |0016: sget-object v3, Lde/duenndns/gmdice/GameMasterDice;.TAG:Ljava/lang/String; // field@0023 │ │ +003cd4: 2204 6300 |0018: new-instance v4, Ljava/lang/StringBuilder; // type@0063 │ │ +003cd8: 7010 1001 0400 |001a: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ +003cde: 1a05 8701 |001d: const-string v5, "load: " // string@0187 │ │ +003ce2: 6e20 1301 5400 |001f: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +003ce8: 0c04 |0022: move-result-object v4 │ │ +003cea: 4605 0002 |0023: aget-object v5, v0, v2 │ │ +003cee: 6e20 1301 5400 |0025: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +003cf4: 0c04 |0028: move-result-object v4 │ │ +003cf6: 6e10 1601 0400 |0029: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ +003cfc: 0c04 |002c: move-result-object v4 │ │ +003cfe: 7120 2e00 4300 |002d: invoke-static {v3, v4}, Landroid/util/Log;.d:(Ljava/lang/String;Ljava/lang/String;)I // method@002e │ │ +003d04: 5473 2400 |0030: iget-object v3, v7, Lde/duenndns/gmdice/GameMasterDice;.button_cfg:[Lde/duenndns/gmdice/DiceSet; // field@0024 │ │ +003d08: 4604 0002 |0032: aget-object v4, v0, v2 │ │ +003d0c: 7110 7200 0400 |0034: invoke-static {v4}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ +003d12: 0c04 |0037: move-result-object v4 │ │ +003d14: 4d04 0302 |0038: aput-object v4, v3, v2 │ │ +003d18: d802 0201 |003a: add-int/lit8 v2, v2, #int 1 // #01 │ │ +003d1c: 28d7 |003c: goto 0013 // -0029 │ │ +003d1e: 5473 2900 |003d: iget-object v3, v7, Lde/duenndns/gmdice/GameMasterDice;.dicecache:Lde/duenndns/gmdice/DiceCache; // field@0029 │ │ +003d22: 5474 2b00 |003f: iget-object v4, v7, Lde/duenndns/gmdice/GameMasterDice;.prefs:Landroid/content/SharedPreferences; // field@002b │ │ +003d26: 1a05 1101 |0041: const-string v5, "cache" // string@0111 │ │ +003d2a: 7230 1c00 5406 |0043: invoke-interface {v4, v5, v6}, Landroid/content/SharedPreferences;.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; // method@001c │ │ +003d30: 0c04 |0046: move-result-object v4 │ │ +003d32: 6e20 6b00 4300 |0047: invoke-virtual {v3, v4}, Lde/duenndns/gmdice/DiceCache;.loadFromString:(Ljava/lang/String;)V // method@006b │ │ +003d38: 28c1 |004a: goto 000b // -003f │ │ catches : (none) │ │ positions : │ │ 0x0001 line=193 │ │ 0x0009 line=194 │ │ 0x000b line=202 │ │ 0x000c line=196 │ │ 0x0012 line=197 │ │ @@ -1707,44 +1724,44 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 9 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 55 16-bit code units │ │ -003bb8: |[003bb8] de.duenndns.gmdice.GameMasterDice.onClick:(Landroid/view/View;)V │ │ -003bc8: 0780 |0000: move-object v0, v8 │ │ -003bca: 1f00 2c00 |0001: check-cast v0, Landroid/widget/Button; // type@002c │ │ -003bce: 5474 2700 |0003: iget-object v4, v7, Lde/duenndns/gmdice/GameMasterDice;.button_more:Landroid/widget/Button; // field@0027 │ │ -003bd2: 3340 1000 |0005: if-ne v0, v4, 0015 // +0010 │ │ -003bd6: 7100 7000 0000 |0007: invoke-static {}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:()Lde/duenndns/gmdice/DiceSet; // method@0070 │ │ -003bdc: 0c04 |000a: move-result-object v4 │ │ -003bde: 1215 |000b: const/4 v5, #int 1 // #1 │ │ -003be0: 2206 4100 |000c: new-instance v6, Lde/duenndns/gmdice/GameMasterDice$2; // type@0041 │ │ -003be4: 7020 7c00 7600 |000e: invoke-direct {v6, v7}, Lde/duenndns/gmdice/GameMasterDice$2;.:(Lde/duenndns/gmdice/GameMasterDice;)V // method@007c │ │ -003bea: 6e40 9e00 4765 |0011: invoke-virtual {v7, v4, v5, v6}, Lde/duenndns/gmdice/GameMasterDice;.selectDice:(Lde/duenndns/gmdice/DiceSet;ZLde/duenndns/gmdice/OnDiceChange;)V // method@009e │ │ -003bf0: 0e00 |0014: return-void │ │ -003bf2: 1203 |0015: const/4 v3, #int 0 // #0 │ │ -003bf4: 5474 2800 |0016: iget-object v4, v7, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ -003bf8: 2144 |0018: array-length v4, v4 │ │ -003bfa: 3543 fbff |0019: if-ge v3, v4, 0014 // -0005 │ │ -003bfe: 5474 2800 |001b: iget-object v4, v7, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ -003c02: 4604 0403 |001d: aget-object v4, v4, v3 │ │ -003c06: 3304 1500 |001f: if-ne v4, v0, 0034 // +0015 │ │ -003c0a: 6e10 4100 0000 |0021: invoke-virtual {v0}, Landroid/widget/Button;.getText:()Ljava/lang/CharSequence; // method@0041 │ │ -003c10: 0c04 |0024: move-result-object v4 │ │ -003c12: 7210 ff00 0400 |0025: invoke-interface {v4}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@00ff │ │ -003c18: 0c01 |0028: move-result-object v1 │ │ -003c1a: 7110 7200 0100 |0029: invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ -003c20: 0c02 |002c: move-result-object v2 │ │ -003c22: 5474 2500 |002d: iget-object v4, v7, Lde/duenndns/gmdice/GameMasterDice;.button_colors:[I // field@0025 │ │ -003c26: 4404 0403 |002f: aget v4, v4, v3 │ │ -003c2a: 6e30 9d00 2704 |0031: invoke-virtual {v7, v2, v4}, Lde/duenndns/gmdice/GameMasterDice;.roll:(Lde/duenndns/gmdice/DiceSet;I)V // method@009d │ │ -003c30: d803 0301 |0034: add-int/lit8 v3, v3, #int 1 // #01 │ │ -003c34: 28e0 |0036: goto 0016 // -0020 │ │ +003d3c: |[003d3c] de.duenndns.gmdice.GameMasterDice.onClick:(Landroid/view/View;)V │ │ +003d4c: 0780 |0000: move-object v0, v8 │ │ +003d4e: 1f00 2b00 |0001: check-cast v0, Landroid/widget/Button; // type@002b │ │ +003d52: 5474 2700 |0003: iget-object v4, v7, Lde/duenndns/gmdice/GameMasterDice;.button_more:Landroid/widget/Button; // field@0027 │ │ +003d56: 3340 1000 |0005: if-ne v0, v4, 0015 // +0010 │ │ +003d5a: 7100 7000 0000 |0007: invoke-static {}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:()Lde/duenndns/gmdice/DiceSet; // method@0070 │ │ +003d60: 0c04 |000a: move-result-object v4 │ │ +003d62: 1215 |000b: const/4 v5, #int 1 // #1 │ │ +003d64: 2206 4000 |000c: new-instance v6, Lde/duenndns/gmdice/GameMasterDice$2; // type@0040 │ │ +003d68: 7020 7c00 7600 |000e: invoke-direct {v6, v7}, Lde/duenndns/gmdice/GameMasterDice$2;.:(Lde/duenndns/gmdice/GameMasterDice;)V // method@007c │ │ +003d6e: 6e40 9e00 4765 |0011: invoke-virtual {v7, v4, v5, v6}, Lde/duenndns/gmdice/GameMasterDice;.selectDice:(Lde/duenndns/gmdice/DiceSet;ZLde/duenndns/gmdice/OnDiceChange;)V // method@009e │ │ +003d74: 0e00 |0014: return-void │ │ +003d76: 1203 |0015: const/4 v3, #int 0 // #0 │ │ +003d78: 5474 2800 |0016: iget-object v4, v7, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ +003d7c: 2144 |0018: array-length v4, v4 │ │ +003d7e: 3543 fbff |0019: if-ge v3, v4, 0014 // -0005 │ │ +003d82: 5474 2800 |001b: iget-object v4, v7, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ +003d86: 4604 0403 |001d: aget-object v4, v4, v3 │ │ +003d8a: 3304 1500 |001f: if-ne v4, v0, 0034 // +0015 │ │ +003d8e: 6e10 4100 0000 |0021: invoke-virtual {v0}, Landroid/widget/Button;.getText:()Ljava/lang/CharSequence; // method@0041 │ │ +003d94: 0c04 |0024: move-result-object v4 │ │ +003d96: 7210 ff00 0400 |0025: invoke-interface {v4}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@00ff │ │ +003d9c: 0c01 |0028: move-result-object v1 │ │ +003d9e: 7110 7200 0100 |0029: invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ +003da4: 0c02 |002c: move-result-object v2 │ │ +003da6: 5474 2500 |002d: iget-object v4, v7, Lde/duenndns/gmdice/GameMasterDice;.button_colors:[I // field@0025 │ │ +003daa: 4404 0403 |002f: aget v4, v4, v3 │ │ +003dae: 6e30 9d00 2704 |0031: invoke-virtual {v7, v2, v4}, Lde/duenndns/gmdice/GameMasterDice;.roll:(Lde/duenndns/gmdice/DiceSet;I)V // method@009d │ │ +003db4: d803 0301 |0034: add-int/lit8 v3, v3, #int 1 // #01 │ │ +003db8: 28e0 |0036: goto 0016 // -0020 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=217 │ │ 0x0003 line=218 │ │ 0x0007 line=219 │ │ 0x0014 line=232 │ │ 0x0015 line=224 │ │ @@ -1766,87 +1783,87 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 151 16-bit code units │ │ -003c38: |[003c38] de.duenndns.gmdice.GameMasterDice.onCreate:(Landroid/os/Bundle;)V │ │ -003c48: 6f20 0f00 5400 |0000: invoke-super {v4, v5}, Landroid/app/ListActivity;.onCreate:(Landroid/os/Bundle;)V // method@000f │ │ -003c4e: 1501 037f |0003: const/high16 v1, #int 2130903040 // #7f03 │ │ -003c52: 6e20 9f00 1400 |0005: invoke-virtual {v4, v1}, Lde/duenndns/gmdice/GameMasterDice;.setContentView:(I)V // method@009f │ │ -003c58: 1401 0100 047f |0008: const v1, #float 1.75458e+38 // #7f040001 │ │ -003c5e: 6e20 a100 1400 |000b: invoke-virtual {v4, v1}, Lde/duenndns/gmdice/GameMasterDice;.setTitle:(I)V // method@00a1 │ │ -003c64: 7110 2700 0400 |000e: invoke-static {v4}, Landroid/preference/PreferenceManager;.getDefaultSharedPreferences:(Landroid/content/Context;)Landroid/content/SharedPreferences; // method@0027 │ │ -003c6a: 0c01 |0011: move-result-object v1 │ │ -003c6c: 5b41 2b00 |0012: iput-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.prefs:Landroid/content/SharedPreferences; // field@002b │ │ -003c70: 5441 2600 |0014: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.button_ids:[I // field@0026 │ │ -003c74: 2111 |0016: array-length v1, v1 │ │ -003c76: 2311 7400 |0017: new-array v1, v1, [Landroid/widget/Button; // type@0074 │ │ -003c7a: 5b41 2800 |0019: iput-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ -003c7e: 1200 |001b: const/4 v0, #int 0 // #0 │ │ -003c80: 5441 2600 |001c: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.button_ids:[I // field@0026 │ │ -003c84: 2111 |001e: array-length v1, v1 │ │ -003c86: 3510 3200 |001f: if-ge v0, v1, 0051 // +0032 │ │ -003c8a: 5442 2800 |0021: iget-object v2, v4, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ -003c8e: 5441 2600 |0023: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.button_ids:[I // field@0026 │ │ -003c92: 4401 0100 |0025: aget v1, v1, v0 │ │ -003c96: 6e20 8a00 1400 |0027: invoke-virtual {v4, v1}, Lde/duenndns/gmdice/GameMasterDice;.findViewById:(I)Landroid/view/View; // method@008a │ │ -003c9c: 0c01 |002a: move-result-object v1 │ │ -003c9e: 1f01 2c00 |002b: check-cast v1, Landroid/widget/Button; // type@002c │ │ -003ca2: 4d01 0200 |002d: aput-object v1, v2, v0 │ │ -003ca6: 5441 2800 |002f: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ -003caa: 4601 0100 |0031: aget-object v1, v1, v0 │ │ -003cae: 6e20 4200 4100 |0033: invoke-virtual {v1, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@0042 │ │ -003cb4: 5441 2800 |0036: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ -003cb8: 4601 0100 |0038: aget-object v1, v1, v0 │ │ -003cbc: 6e20 4300 4100 |003a: invoke-virtual {v1, v4}, Landroid/widget/Button;.setOnLongClickListener:(Landroid/view/View$OnLongClickListener;)V // method@0043 │ │ -003cc2: 5441 2800 |003d: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ -003cc6: 4601 0100 |003f: aget-object v1, v1, v0 │ │ -003cca: 6e10 4000 0100 |0041: invoke-virtual {v1}, Landroid/widget/Button;.getBackground:()Landroid/graphics/drawable/Drawable; // method@0040 │ │ -003cd0: 0c01 |0044: move-result-object v1 │ │ -003cd2: 5442 2500 |0045: iget-object v2, v4, Lde/duenndns/gmdice/GameMasterDice;.button_colors:[I // field@0025 │ │ -003cd6: 4402 0200 |0047: aget v2, v2, v0 │ │ -003cda: 6203 0100 |0049: sget-object v3, Landroid/graphics/PorterDuff$Mode;.MULTIPLY:Landroid/graphics/PorterDuff$Mode; // field@0001 │ │ -003cde: 6e30 2000 2103 |004b: invoke-virtual {v1, v2, v3}, Landroid/graphics/drawable/Drawable;.setColorFilter:(ILandroid/graphics/PorterDuff$Mode;)V // method@0020 │ │ -003ce4: d800 0001 |004e: add-int/lit8 v0, v0, #int 1 // #01 │ │ -003ce8: 28cc |0050: goto 001c // -0034 │ │ -003cea: 1401 0500 067f |0051: const v1, #float 1.78117e+38 // #7f060005 │ │ -003cf0: 6e20 8a00 1400 |0054: invoke-virtual {v4, v1}, Lde/duenndns/gmdice/GameMasterDice;.findViewById:(I)Landroid/view/View; // method@008a │ │ -003cf6: 0c01 |0057: move-result-object v1 │ │ -003cf8: 1f01 2c00 |0058: check-cast v1, Landroid/widget/Button; // type@002c │ │ -003cfc: 5b41 2700 |005a: iput-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.button_more:Landroid/widget/Button; // field@0027 │ │ -003d00: 5441 2700 |005c: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.button_more:Landroid/widget/Button; // field@0027 │ │ -003d04: 6e20 4200 4100 |005e: invoke-virtual {v1, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@0042 │ │ -003d0a: 5441 2700 |0061: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.button_more:Landroid/widget/Button; // field@0027 │ │ -003d0e: 6e10 4000 0100 |0063: invoke-virtual {v1}, Landroid/widget/Button;.getBackground:()Landroid/graphics/drawable/Drawable; // method@0040 │ │ -003d14: 0c01 |0066: move-result-object v1 │ │ -003d16: 5442 2500 |0067: iget-object v2, v4, Lde/duenndns/gmdice/GameMasterDice;.button_colors:[I // field@0025 │ │ -003d1a: 1243 |0069: const/4 v3, #int 4 // #4 │ │ -003d1c: 4402 0203 |006a: aget v2, v2, v3 │ │ -003d20: 6203 0100 |006c: sget-object v3, Landroid/graphics/PorterDuff$Mode;.MULTIPLY:Landroid/graphics/PorterDuff$Mode; // field@0001 │ │ -003d24: 6e30 2000 2103 |006e: invoke-virtual {v1, v2, v3}, Landroid/graphics/drawable/Drawable;.setColorFilter:(ILandroid/graphics/PorterDuff$Mode;)V // method@0020 │ │ -003d2a: 1501 067f |0071: const/high16 v1, #int 2131099648 // #7f06 │ │ -003d2e: 6e20 8a00 1400 |0073: invoke-virtual {v4, v1}, Lde/duenndns/gmdice/GameMasterDice;.findViewById:(I)Landroid/view/View; // method@008a │ │ -003d34: 0c01 |0076: move-result-object v1 │ │ -003d36: 1f01 3400 |0077: check-cast v1, Landroid/widget/TextView; // type@0034 │ │ -003d3a: 5b41 2d00 |0079: iput-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.resultview:Landroid/widget/TextView; // field@002d │ │ -003d3e: 2201 5800 |007b: new-instance v1, Lde/duenndns/gmdice/RollResultAdapter; // type@0058 │ │ -003d42: 7020 f600 4100 |007d: invoke-direct {v1, v4}, Lde/duenndns/gmdice/RollResultAdapter;.:(Landroid/content/Context;)V // method@00f6 │ │ -003d48: 5b41 2c00 |0080: iput-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.resultlog:Lde/duenndns/gmdice/RollResultAdapter; // field@002c │ │ -003d4c: 5441 2c00 |0082: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.resultlog:Lde/duenndns/gmdice/RollResultAdapter; // field@002c │ │ -003d50: 6e20 a000 1400 |0084: invoke-virtual {v4, v1}, Lde/duenndns/gmdice/GameMasterDice;.setListAdapter:(Landroid/widget/ListAdapter;)V // method@00a0 │ │ -003d56: 3805 0f00 |0087: if-eqz v5, 0096 // +000f │ │ -003d5a: 6e10 8b00 0400 |0089: invoke-virtual {v4}, Lde/duenndns/gmdice/GameMasterDice;.getListView:()Landroid/widget/ListView; // method@008b │ │ -003d60: 0c01 |008c: move-result-object v1 │ │ -003d62: 1a02 e701 |008d: const-string v2, "resultlog" // string@01e7 │ │ -003d66: 6e20 2200 2500 |008f: invoke-virtual {v5, v2}, Landroid/os/Bundle;.getParcelable:(Ljava/lang/String;)Landroid/os/Parcelable; // method@0022 │ │ -003d6c: 0c02 |0092: move-result-object v2 │ │ -003d6e: 6e20 5600 2100 |0093: invoke-virtual {v1, v2}, Landroid/widget/ListView;.onRestoreInstanceState:(Landroid/os/Parcelable;)V // method@0056 │ │ -003d74: 0e00 |0096: return-void │ │ +003dbc: |[003dbc] de.duenndns.gmdice.GameMasterDice.onCreate:(Landroid/os/Bundle;)V │ │ +003dcc: 6f20 0f00 5400 |0000: invoke-super {v4, v5}, Landroid/app/ListActivity;.onCreate:(Landroid/os/Bundle;)V // method@000f │ │ +003dd2: 1501 037f |0003: const/high16 v1, #int 2130903040 // #7f03 │ │ +003dd6: 6e20 9f00 1400 |0005: invoke-virtual {v4, v1}, Lde/duenndns/gmdice/GameMasterDice;.setContentView:(I)V // method@009f │ │ +003ddc: 1401 0100 047f |0008: const v1, #float 1.75458e+38 // #7f040001 │ │ +003de2: 6e20 a100 1400 |000b: invoke-virtual {v4, v1}, Lde/duenndns/gmdice/GameMasterDice;.setTitle:(I)V // method@00a1 │ │ +003de8: 7110 2700 0400 |000e: invoke-static {v4}, Landroid/preference/PreferenceManager;.getDefaultSharedPreferences:(Landroid/content/Context;)Landroid/content/SharedPreferences; // method@0027 │ │ +003dee: 0c01 |0011: move-result-object v1 │ │ +003df0: 5b41 2b00 |0012: iput-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.prefs:Landroid/content/SharedPreferences; // field@002b │ │ +003df4: 5441 2600 |0014: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.button_ids:[I // field@0026 │ │ +003df8: 2111 |0016: array-length v1, v1 │ │ +003dfa: 2311 7300 |0017: new-array v1, v1, [Landroid/widget/Button; // type@0073 │ │ +003dfe: 5b41 2800 |0019: iput-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ +003e02: 1200 |001b: const/4 v0, #int 0 // #0 │ │ +003e04: 5441 2600 |001c: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.button_ids:[I // field@0026 │ │ +003e08: 2111 |001e: array-length v1, v1 │ │ +003e0a: 3510 3200 |001f: if-ge v0, v1, 0051 // +0032 │ │ +003e0e: 5442 2800 |0021: iget-object v2, v4, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ +003e12: 5441 2600 |0023: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.button_ids:[I // field@0026 │ │ +003e16: 4401 0100 |0025: aget v1, v1, v0 │ │ +003e1a: 6e20 8a00 1400 |0027: invoke-virtual {v4, v1}, Lde/duenndns/gmdice/GameMasterDice;.findViewById:(I)Landroid/view/View; // method@008a │ │ +003e20: 0c01 |002a: move-result-object v1 │ │ +003e22: 1f01 2b00 |002b: check-cast v1, Landroid/widget/Button; // type@002b │ │ +003e26: 4d01 0200 |002d: aput-object v1, v2, v0 │ │ +003e2a: 5441 2800 |002f: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ +003e2e: 4601 0100 |0031: aget-object v1, v1, v0 │ │ +003e32: 6e20 4200 4100 |0033: invoke-virtual {v1, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@0042 │ │ +003e38: 5441 2800 |0036: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ +003e3c: 4601 0100 |0038: aget-object v1, v1, v0 │ │ +003e40: 6e20 4300 4100 |003a: invoke-virtual {v1, v4}, Landroid/widget/Button;.setOnLongClickListener:(Landroid/view/View$OnLongClickListener;)V // method@0043 │ │ +003e46: 5441 2800 |003d: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ +003e4a: 4601 0100 |003f: aget-object v1, v1, v0 │ │ +003e4e: 6e10 4000 0100 |0041: invoke-virtual {v1}, Landroid/widget/Button;.getBackground:()Landroid/graphics/drawable/Drawable; // method@0040 │ │ +003e54: 0c01 |0044: move-result-object v1 │ │ +003e56: 5442 2500 |0045: iget-object v2, v4, Lde/duenndns/gmdice/GameMasterDice;.button_colors:[I // field@0025 │ │ +003e5a: 4402 0200 |0047: aget v2, v2, v0 │ │ +003e5e: 6203 0100 |0049: sget-object v3, Landroid/graphics/PorterDuff$Mode;.MULTIPLY:Landroid/graphics/PorterDuff$Mode; // field@0001 │ │ +003e62: 6e30 2000 2103 |004b: invoke-virtual {v1, v2, v3}, Landroid/graphics/drawable/Drawable;.setColorFilter:(ILandroid/graphics/PorterDuff$Mode;)V // method@0020 │ │ +003e68: d800 0001 |004e: add-int/lit8 v0, v0, #int 1 // #01 │ │ +003e6c: 28cc |0050: goto 001c // -0034 │ │ +003e6e: 1401 0500 067f |0051: const v1, #float 1.78117e+38 // #7f060005 │ │ +003e74: 6e20 8a00 1400 |0054: invoke-virtual {v4, v1}, Lde/duenndns/gmdice/GameMasterDice;.findViewById:(I)Landroid/view/View; // method@008a │ │ +003e7a: 0c01 |0057: move-result-object v1 │ │ +003e7c: 1f01 2b00 |0058: check-cast v1, Landroid/widget/Button; // type@002b │ │ +003e80: 5b41 2700 |005a: iput-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.button_more:Landroid/widget/Button; // field@0027 │ │ +003e84: 5441 2700 |005c: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.button_more:Landroid/widget/Button; // field@0027 │ │ +003e88: 6e20 4200 4100 |005e: invoke-virtual {v1, v4}, Landroid/widget/Button;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@0042 │ │ +003e8e: 5441 2700 |0061: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.button_more:Landroid/widget/Button; // field@0027 │ │ +003e92: 6e10 4000 0100 |0063: invoke-virtual {v1}, Landroid/widget/Button;.getBackground:()Landroid/graphics/drawable/Drawable; // method@0040 │ │ +003e98: 0c01 |0066: move-result-object v1 │ │ +003e9a: 5442 2500 |0067: iget-object v2, v4, Lde/duenndns/gmdice/GameMasterDice;.button_colors:[I // field@0025 │ │ +003e9e: 1243 |0069: const/4 v3, #int 4 // #4 │ │ +003ea0: 4402 0203 |006a: aget v2, v2, v3 │ │ +003ea4: 6203 0100 |006c: sget-object v3, Landroid/graphics/PorterDuff$Mode;.MULTIPLY:Landroid/graphics/PorterDuff$Mode; // field@0001 │ │ +003ea8: 6e30 2000 2103 |006e: invoke-virtual {v1, v2, v3}, Landroid/graphics/drawable/Drawable;.setColorFilter:(ILandroid/graphics/PorterDuff$Mode;)V // method@0020 │ │ +003eae: 1501 067f |0071: const/high16 v1, #int 2131099648 // #7f06 │ │ +003eb2: 6e20 8a00 1400 |0073: invoke-virtual {v4, v1}, Lde/duenndns/gmdice/GameMasterDice;.findViewById:(I)Landroid/view/View; // method@008a │ │ +003eb8: 0c01 |0076: move-result-object v1 │ │ +003eba: 1f01 3300 |0077: check-cast v1, Landroid/widget/TextView; // type@0033 │ │ +003ebe: 5b41 2d00 |0079: iput-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.resultview:Landroid/widget/TextView; // field@002d │ │ +003ec2: 2201 5700 |007b: new-instance v1, Lde/duenndns/gmdice/RollResultAdapter; // type@0057 │ │ +003ec6: 7020 f600 4100 |007d: invoke-direct {v1, v4}, Lde/duenndns/gmdice/RollResultAdapter;.:(Landroid/content/Context;)V // method@00f6 │ │ +003ecc: 5b41 2c00 |0080: iput-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.resultlog:Lde/duenndns/gmdice/RollResultAdapter; // field@002c │ │ +003ed0: 5441 2c00 |0082: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.resultlog:Lde/duenndns/gmdice/RollResultAdapter; // field@002c │ │ +003ed4: 6e20 a000 1400 |0084: invoke-virtual {v4, v1}, Lde/duenndns/gmdice/GameMasterDice;.setListAdapter:(Landroid/widget/ListAdapter;)V // method@00a0 │ │ +003eda: 3805 0f00 |0087: if-eqz v5, 0096 // +000f │ │ +003ede: 6e10 8b00 0400 |0089: invoke-virtual {v4}, Lde/duenndns/gmdice/GameMasterDice;.getListView:()Landroid/widget/ListView; // method@008b │ │ +003ee4: 0c01 |008c: move-result-object v1 │ │ +003ee6: 1a02 e301 |008d: const-string v2, "resultlog" // string@01e3 │ │ +003eea: 6e20 2200 2500 |008f: invoke-virtual {v5, v2}, Landroid/os/Bundle;.getParcelable:(Ljava/lang/String;)Landroid/os/Parcelable; // method@0022 │ │ +003ef0: 0c02 |0092: move-result-object v2 │ │ +003ef2: 6e20 5600 2100 |0093: invoke-virtual {v1, v2}, Landroid/widget/ListView;.onRestoreInstanceState:(Landroid/os/Parcelable;)V // method@0056 │ │ +003ef8: 0e00 |0096: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=75 │ │ 0x0003 line=76 │ │ 0x0008 line=77 │ │ 0x000e line=80 │ │ 0x0014 line=82 │ │ @@ -1875,21 +1892,21 @@ │ │ type : '(Landroid/view/Menu;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 11 16-bit code units │ │ -003d78: |[003d78] de.duenndns.gmdice.GameMasterDice.onCreateOptionsMenu:(Landroid/view/Menu;)Z │ │ -003d88: 6e10 8c00 0200 |0000: invoke-virtual {v2}, Lde/duenndns/gmdice/GameMasterDice;.getMenuInflater:()Landroid/view/MenuInflater; // method@008c │ │ -003d8e: 0c00 |0003: move-result-object v0 │ │ -003d90: 1501 057f |0004: const/high16 v1, #int 2131034112 // #7f05 │ │ -003d94: 6e30 3100 1003 |0006: invoke-virtual {v0, v1, v3}, Landroid/view/MenuInflater;.inflate:(ILandroid/view/Menu;)V // method@0031 │ │ -003d9a: 1210 |0009: const/4 v0, #int 1 // #1 │ │ -003d9c: 0f00 |000a: return v0 │ │ +003efc: |[003efc] de.duenndns.gmdice.GameMasterDice.onCreateOptionsMenu:(Landroid/view/Menu;)Z │ │ +003f0c: 6e10 8c00 0200 |0000: invoke-virtual {v2}, Lde/duenndns/gmdice/GameMasterDice;.getMenuInflater:()Landroid/view/MenuInflater; // method@008c │ │ +003f12: 0c00 |0003: move-result-object v0 │ │ +003f14: 1501 057f |0004: const/high16 v1, #int 2131034112 // #7f05 │ │ +003f18: 6e30 3100 1003 |0006: invoke-virtual {v0, v1, v3}, Landroid/view/MenuInflater;.inflate:(ILandroid/view/Menu;)V // method@0031 │ │ +003f1e: 1210 |0009: const/4 v0, #int 1 // #1 │ │ +003f20: 0f00 |000a: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=126 │ │ 0x0009 line=127 │ │ locals : │ │ 0x0000 - 0x000b reg=2 this Lde/duenndns/gmdice/GameMasterDice; │ │ 0x0000 - 0x000b reg=3 menu Landroid/view/Menu; │ │ @@ -1899,21 +1916,21 @@ │ │ type : '(Landroid/widget/ListView;Landroid/view/View;IJ)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 7 │ │ ins : 6 │ │ outs : 2 │ │ insns size : 12 16-bit code units │ │ -003da0: |[003da0] de.duenndns.gmdice.GameMasterDice.onListItemClick:(Landroid/widget/ListView;Landroid/view/View;IJ)V │ │ -003db0: 5410 2c00 |0000: iget-object v0, v1, Lde/duenndns/gmdice/GameMasterDice;.resultlog:Lde/duenndns/gmdice/RollResultAdapter; // field@002c │ │ -003db4: 6e20 f900 4000 |0002: invoke-virtual {v0, v4}, Lde/duenndns/gmdice/RollResultAdapter;.getItem:(I)Ljava/lang/Object; // method@00f9 │ │ -003dba: 0c00 |0005: move-result-object v0 │ │ -003dbc: 1f00 5700 |0006: check-cast v0, Lde/duenndns/gmdice/RollResult; // type@0057 │ │ -003dc0: 6e20 f400 1000 |0008: invoke-virtual {v0, v1}, Lde/duenndns/gmdice/RollResult;.showDetails:(Landroid/content/Context;)V // method@00f4 │ │ -003dc6: 0e00 |000b: return-void │ │ +003f24: |[003f24] de.duenndns.gmdice.GameMasterDice.onListItemClick:(Landroid/widget/ListView;Landroid/view/View;IJ)V │ │ +003f34: 5410 2c00 |0000: iget-object v0, v1, Lde/duenndns/gmdice/GameMasterDice;.resultlog:Lde/duenndns/gmdice/RollResultAdapter; // field@002c │ │ +003f38: 6e20 f900 4000 |0002: invoke-virtual {v0, v4}, Lde/duenndns/gmdice/RollResultAdapter;.getItem:(I)Ljava/lang/Object; // method@00f9 │ │ +003f3e: 0c00 |0005: move-result-object v0 │ │ +003f40: 1f00 5600 |0006: check-cast v0, Lde/duenndns/gmdice/RollResult; // type@0056 │ │ +003f44: 6e20 f400 1000 |0008: invoke-virtual {v0, v1}, Lde/duenndns/gmdice/RollResult;.showDetails:(Landroid/content/Context;)V // method@00f4 │ │ +003f4a: 0e00 |000b: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=337 │ │ 0x000b line=338 │ │ locals : │ │ 0x0000 - 0x000c reg=1 this Lde/duenndns/gmdice/GameMasterDice; │ │ 0x0000 - 0x000c reg=2 l Landroid/widget/ListView; │ │ @@ -1926,40 +1943,40 @@ │ │ type : '(Landroid/view/View;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 2 │ │ outs : 4 │ │ insns size : 50 16-bit code units │ │ -003dc8: |[003dc8] de.duenndns.gmdice.GameMasterDice.onLongClick:(Landroid/view/View;)Z │ │ -003dd8: 0760 |0000: move-object v0, v6 │ │ -003dda: 1f00 2c00 |0001: check-cast v0, Landroid/widget/Button; // type@002c │ │ -003dde: 6202 2300 |0003: sget-object v2, Lde/duenndns/gmdice/GameMasterDice;.TAG:Ljava/lang/String; // field@0023 │ │ -003de2: 2203 6400 |0005: new-instance v3, Ljava/lang/StringBuilder; // type@0064 │ │ -003de6: 7010 1001 0300 |0007: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ -003dec: 1a04 ca01 |000a: const-string v4, "onLongClicked " // string@01ca │ │ -003df0: 6e20 1301 4300 |000c: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -003df6: 0c03 |000f: move-result-object v3 │ │ -003df8: 6e20 1201 0300 |0010: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0112 │ │ -003dfe: 0c03 |0013: move-result-object v3 │ │ -003e00: 6e10 1601 0300 |0014: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ -003e06: 0c03 |0017: move-result-object v3 │ │ -003e08: 7120 2e00 3200 |0018: invoke-static {v2, v3}, Landroid/util/Log;.d:(Ljava/lang/String;Ljava/lang/String;)I // method@002e │ │ -003e0e: 6e10 4100 0000 |001b: invoke-virtual {v0}, Landroid/widget/Button;.getText:()Ljava/lang/CharSequence; // method@0041 │ │ -003e14: 0c02 |001e: move-result-object v2 │ │ -003e16: 7210 ff00 0200 |001f: invoke-interface {v2}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@00ff │ │ -003e1c: 0c01 |0022: move-result-object v1 │ │ -003e1e: 7110 7200 0100 |0023: invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ -003e24: 0c02 |0026: move-result-object v2 │ │ -003e26: 1203 |0027: const/4 v3, #int 0 // #0 │ │ -003e28: 2204 4200 |0028: new-instance v4, Lde/duenndns/gmdice/GameMasterDice$3; // type@0042 │ │ -003e2c: 7030 7e00 5400 |002a: invoke-direct {v4, v5, v0}, Lde/duenndns/gmdice/GameMasterDice$3;.:(Lde/duenndns/gmdice/GameMasterDice;Landroid/widget/Button;)V // method@007e │ │ -003e32: 6e40 9e00 2543 |002d: invoke-virtual {v5, v2, v3, v4}, Lde/duenndns/gmdice/GameMasterDice;.selectDice:(Lde/duenndns/gmdice/DiceSet;ZLde/duenndns/gmdice/OnDiceChange;)V // method@009e │ │ -003e38: 1212 |0030: const/4 v2, #int 1 // #1 │ │ -003e3a: 0f02 |0031: return v2 │ │ +003f4c: |[003f4c] de.duenndns.gmdice.GameMasterDice.onLongClick:(Landroid/view/View;)Z │ │ +003f5c: 0760 |0000: move-object v0, v6 │ │ +003f5e: 1f00 2b00 |0001: check-cast v0, Landroid/widget/Button; // type@002b │ │ +003f62: 6202 2300 |0003: sget-object v2, Lde/duenndns/gmdice/GameMasterDice;.TAG:Ljava/lang/String; // field@0023 │ │ +003f66: 2203 6300 |0005: new-instance v3, Ljava/lang/StringBuilder; // type@0063 │ │ +003f6a: 7010 1001 0300 |0007: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ +003f70: 1a04 c601 |000a: const-string v4, "onLongClicked " // string@01c6 │ │ +003f74: 6e20 1301 4300 |000c: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +003f7a: 0c03 |000f: move-result-object v3 │ │ +003f7c: 6e20 1201 0300 |0010: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0112 │ │ +003f82: 0c03 |0013: move-result-object v3 │ │ +003f84: 6e10 1601 0300 |0014: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ +003f8a: 0c03 |0017: move-result-object v3 │ │ +003f8c: 7120 2e00 3200 |0018: invoke-static {v2, v3}, Landroid/util/Log;.d:(Ljava/lang/String;Ljava/lang/String;)I // method@002e │ │ +003f92: 6e10 4100 0000 |001b: invoke-virtual {v0}, Landroid/widget/Button;.getText:()Ljava/lang/CharSequence; // method@0041 │ │ +003f98: 0c02 |001e: move-result-object v2 │ │ +003f9a: 7210 ff00 0200 |001f: invoke-interface {v2}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@00ff │ │ +003fa0: 0c01 |0022: move-result-object v1 │ │ +003fa2: 7110 7200 0100 |0023: invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;.getDiceSet:(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; // method@0072 │ │ +003fa8: 0c02 |0026: move-result-object v2 │ │ +003faa: 1203 |0027: const/4 v3, #int 0 // #0 │ │ +003fac: 2204 4100 |0028: new-instance v4, Lde/duenndns/gmdice/GameMasterDice$3; // type@0041 │ │ +003fb0: 7030 7e00 5400 |002a: invoke-direct {v4, v5, v0}, Lde/duenndns/gmdice/GameMasterDice$3;.:(Lde/duenndns/gmdice/GameMasterDice;Landroid/widget/Button;)V // method@007e │ │ +003fb6: 6e40 9e00 2543 |002d: invoke-virtual {v5, v2, v3, v4}, Lde/duenndns/gmdice/GameMasterDice;.selectDice:(Lde/duenndns/gmdice/DiceSet;ZLde/duenndns/gmdice/OnDiceChange;)V // method@009e │ │ +003fbc: 1212 |0030: const/4 v2, #int 1 // #1 │ │ +003fbe: 0f02 |0031: return v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=247 │ │ 0x0003 line=248 │ │ 0x001b line=249 │ │ 0x0023 line=250 │ │ 0x0030 line=259 │ │ @@ -1974,32 +1991,32 @@ │ │ type : '(Landroid/view/MenuItem;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 42 16-bit code units │ │ -003e3c: |[003e3c] de.duenndns.gmdice.GameMasterDice.onOptionsItemSelected:(Landroid/view/MenuItem;)Z │ │ -003e4c: 1210 |0000: const/4 v0, #int 1 // #1 │ │ -003e4e: 7210 3200 0400 |0001: invoke-interface {v4}, Landroid/view/MenuItem;.getItemId:()I // method@0032 │ │ -003e54: 0a01 |0004: move-result v1 │ │ -003e56: 2b01 1b00 0000 |0005: packed-switch v1, 00000020 // +0000001b │ │ -003e5c: 1200 |0008: const/4 v0, #int 0 // #0 │ │ -003e5e: 0f00 |0009: return v0 │ │ -003e60: 6e10 a600 0300 |000a: invoke-virtual {v3}, Lde/duenndns/gmdice/GameMasterDice;.toggleKeepScreenOn:()V // method@00a6 │ │ -003e66: 28fc |000d: goto 0009 // -0004 │ │ -003e68: 5431 2c00 |000e: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice;.resultlog:Lde/duenndns/gmdice/RollResultAdapter; // field@002c │ │ -003e6c: 6e10 f800 0100 |0010: invoke-virtual {v1}, Lde/duenndns/gmdice/RollResultAdapter;.clear:()V // method@00f8 │ │ -003e72: 5431 2d00 |0013: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice;.resultview:Landroid/widget/TextView; // field@002d │ │ -003e76: 1402 0900 047f |0015: const v2, #float 1.75458e+38 // #7f040009 │ │ -003e7c: 6e20 5c00 2100 |0018: invoke-virtual {v1, v2}, Landroid/widget/TextView;.setText:(I)V // method@005c │ │ -003e82: 28ee |001b: goto 0009 // -0012 │ │ -003e84: 6e10 8600 0300 |001c: invoke-virtual {v3}, Lde/duenndns/gmdice/GameMasterDice;.aboutDialog:()V // method@0086 │ │ -003e8a: 28ea |001f: goto 0009 // -0016 │ │ -003e8c: 0001 0300 0d00 067f 0500 0000 0900 ... |0020: packed-switch-data (10 units) │ │ +003fc0: |[003fc0] de.duenndns.gmdice.GameMasterDice.onOptionsItemSelected:(Landroid/view/MenuItem;)Z │ │ +003fd0: 1210 |0000: const/4 v0, #int 1 // #1 │ │ +003fd2: 7210 3200 0400 |0001: invoke-interface {v4}, Landroid/view/MenuItem;.getItemId:()I // method@0032 │ │ +003fd8: 0a01 |0004: move-result v1 │ │ +003fda: 2b01 1b00 0000 |0005: packed-switch v1, 00000020 // +0000001b │ │ +003fe0: 1200 |0008: const/4 v0, #int 0 // #0 │ │ +003fe2: 0f00 |0009: return v0 │ │ +003fe4: 6e10 a600 0300 |000a: invoke-virtual {v3}, Lde/duenndns/gmdice/GameMasterDice;.toggleKeepScreenOn:()V // method@00a6 │ │ +003fea: 28fc |000d: goto 0009 // -0004 │ │ +003fec: 5431 2c00 |000e: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice;.resultlog:Lde/duenndns/gmdice/RollResultAdapter; // field@002c │ │ +003ff0: 6e10 f800 0100 |0010: invoke-virtual {v1}, Lde/duenndns/gmdice/RollResultAdapter;.clear:()V // method@00f8 │ │ +003ff6: 5431 2d00 |0013: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice;.resultview:Landroid/widget/TextView; // field@002d │ │ +003ffa: 1402 0900 047f |0015: const v2, #float 1.75458e+38 // #7f040009 │ │ +004000: 6e20 5c00 2100 |0018: invoke-virtual {v1, v2}, Landroid/widget/TextView;.setText:(I)V // method@005c │ │ +004006: 28ee |001b: goto 0009 // -0012 │ │ +004008: 6e10 8600 0300 |001c: invoke-virtual {v3}, Lde/duenndns/gmdice/GameMasterDice;.aboutDialog:()V // method@0086 │ │ +00400e: 28ea |001f: goto 0009 // -0016 │ │ +004010: 0001 0300 0d00 067f 0500 0000 0900 ... |0020: packed-switch-data (10 units) │ │ catches : (none) │ │ positions : │ │ 0x0001 line=141 │ │ 0x0008 line=153 │ │ 0x000a line=143 │ │ 0x000e line=146 │ │ 0x0013 line=147 │ │ @@ -2014,18 +2031,18 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 7 16-bit code units │ │ -003ea0: |[003ea0] de.duenndns.gmdice.GameMasterDice.onPause:()V │ │ -003eb0: 6f10 1000 0000 |0000: invoke-super {v0}, Landroid/app/ListActivity;.onPause:()V // method@0010 │ │ -003eb6: 6e10 a500 0000 |0003: invoke-virtual {v0}, Lde/duenndns/gmdice/GameMasterDice;.storeDicePrefs:()V // method@00a5 │ │ -003ebc: 0e00 |0006: return-void │ │ +004024: |[004024] de.duenndns.gmdice.GameMasterDice.onPause:()V │ │ +004034: 6f10 1000 0000 |0000: invoke-super {v0}, Landroid/app/ListActivity;.onPause:()V // method@0010 │ │ +00403a: 6e10 a500 0000 |0003: invoke-virtual {v0}, Lde/duenndns/gmdice/GameMasterDice;.storeDicePrefs:()V // method@00a5 │ │ +004040: 0e00 |0006: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=113 │ │ 0x0003 line=114 │ │ 0x0006 line=115 │ │ locals : │ │ 0x0000 - 0x0007 reg=0 this Lde/duenndns/gmdice/GameMasterDice; │ │ @@ -2035,32 +2052,32 @@ │ │ type : '(Landroid/view/Menu;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 6 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 33 16-bit code units │ │ -003ec0: |[003ec0] de.duenndns.gmdice.GameMasterDice.onPrepareOptionsMenu:(Landroid/view/Menu;)Z │ │ -003ed0: 1201 |0000: const/4 v1, #int 0 // #0 │ │ -003ed2: 1402 0d00 067f |0001: const v2, #float 1.78117e+38 // #7f06000d │ │ -003ed8: 7220 3000 2500 |0004: invoke-interface {v5, v2}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@0030 │ │ -003ede: 0c00 |0007: move-result-object v0 │ │ -003ee0: 3900 0300 |0008: if-nez v0, 000b // +0003 │ │ -003ee4: 0f01 |000a: return v1 │ │ -003ee6: 5442 2b00 |000b: iget-object v2, v4, Lde/duenndns/gmdice/GameMasterDice;.prefs:Landroid/content/SharedPreferences; // field@002b │ │ -003eea: 1a03 8201 |000d: const-string v3, "keepscreen" // string@0182 │ │ -003eee: 7230 1b00 3201 |000f: invoke-interface {v2, v3, v1}, Landroid/content/SharedPreferences;.getBoolean:(Ljava/lang/String;Z)Z // method@001b │ │ -003ef4: 0a01 |0012: move-result v1 │ │ -003ef6: 3801 0a00 |0013: if-eqz v1, 001d // +000a │ │ -003efa: 1401 0d00 0801 |0015: const v1, #float 2.49793e-38 // #0108000d │ │ -003f00: 7220 3300 1000 |0018: invoke-interface {v0, v1}, Landroid/view/MenuItem;.setIcon:(I)Landroid/view/MenuItem; // method@0033 │ │ -003f06: 1211 |001b: const/4 v1, #int 1 // #1 │ │ -003f08: 28ee |001c: goto 000a // -0012 │ │ -003f0a: 1401 0e00 0801 |001d: const v1, #float 2.49793e-38 // #0108000e │ │ -003f10: 28f8 |0020: goto 0018 // -0008 │ │ +004044: |[004044] de.duenndns.gmdice.GameMasterDice.onPrepareOptionsMenu:(Landroid/view/Menu;)Z │ │ +004054: 1201 |0000: const/4 v1, #int 0 // #0 │ │ +004056: 1402 0d00 067f |0001: const v2, #float 1.78117e+38 // #7f06000d │ │ +00405c: 7220 3000 2500 |0004: invoke-interface {v5, v2}, Landroid/view/Menu;.findItem:(I)Landroid/view/MenuItem; // method@0030 │ │ +004062: 0c00 |0007: move-result-object v0 │ │ +004064: 3900 0300 |0008: if-nez v0, 000b // +0003 │ │ +004068: 0f01 |000a: return v1 │ │ +00406a: 5442 2b00 |000b: iget-object v2, v4, Lde/duenndns/gmdice/GameMasterDice;.prefs:Landroid/content/SharedPreferences; // field@002b │ │ +00406e: 1a03 7f01 |000d: const-string v3, "keepscreen" // string@017f │ │ +004072: 7230 1b00 3201 |000f: invoke-interface {v2, v3, v1}, Landroid/content/SharedPreferences;.getBoolean:(Ljava/lang/String;Z)Z // method@001b │ │ +004078: 0a01 |0012: move-result v1 │ │ +00407a: 3801 0a00 |0013: if-eqz v1, 001d // +000a │ │ +00407e: 1401 0d00 0801 |0015: const v1, #float 2.49793e-38 // #0108000d │ │ +004084: 7220 3300 1000 |0018: invoke-interface {v0, v1}, Landroid/view/MenuItem;.setIcon:(I)Landroid/view/MenuItem; // method@0033 │ │ +00408a: 1211 |001b: const/4 v1, #int 1 // #1 │ │ +00408c: 28ee |001c: goto 000a // -0012 │ │ +00408e: 1401 0e00 0801 |001d: const v1, #float 2.49793e-38 // #0108000e │ │ +004094: 28f8 |0020: goto 0018 // -0008 │ │ catches : (none) │ │ positions : │ │ 0x0001 line=131 │ │ 0x0008 line=132 │ │ 0x000a line=137 │ │ 0x000b line=134 │ │ 0x001b line=137 │ │ @@ -2075,32 +2092,32 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 34 16-bit code units │ │ -003f14: |[003f14] de.duenndns.gmdice.GameMasterDice.onResume:()V │ │ -003f24: 6f10 1100 0300 |0000: invoke-super {v3}, Landroid/app/ListActivity;.onResume:()V // method@0011 │ │ -003f2a: 6e10 9200 0300 |0003: invoke-virtual {v3}, Lde/duenndns/gmdice/GameMasterDice;.loadDicePrefs:()V // method@0092 │ │ -003f30: 1200 |0006: const/4 v0, #int 0 // #0 │ │ -003f32: 5431 2600 |0007: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice;.button_ids:[I // field@0026 │ │ -003f36: 2111 |0009: array-length v1, v1 │ │ -003f38: 3510 1400 |000a: if-ge v0, v1, 001e // +0014 │ │ -003f3c: 5431 2800 |000c: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ -003f40: 4601 0100 |000e: aget-object v1, v1, v0 │ │ -003f44: 5432 2400 |0010: iget-object v2, v3, Lde/duenndns/gmdice/GameMasterDice;.button_cfg:[Lde/duenndns/gmdice/DiceSet; // field@0024 │ │ -003f48: 4602 0200 |0012: aget-object v2, v2, v0 │ │ -003f4c: 6e10 7500 0200 |0014: invoke-virtual {v2}, Lde/duenndns/gmdice/DiceSet;.toString:()Ljava/lang/String; // method@0075 │ │ -003f52: 0c02 |0017: move-result-object v2 │ │ -003f54: 6e20 4400 2100 |0018: invoke-virtual {v1, v2}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@0044 │ │ -003f5a: d800 0001 |001b: add-int/lit8 v0, v0, #int 1 // #01 │ │ -003f5e: 28ea |001d: goto 0007 // -0016 │ │ -003f60: 6e10 8800 0300 |001e: invoke-virtual {v3}, Lde/duenndns/gmdice/GameMasterDice;.configKeepScreenOn:()V // method@0088 │ │ -003f66: 0e00 |0021: return-void │ │ +004098: |[004098] de.duenndns.gmdice.GameMasterDice.onResume:()V │ │ +0040a8: 6f10 1100 0300 |0000: invoke-super {v3}, Landroid/app/ListActivity;.onResume:()V // method@0011 │ │ +0040ae: 6e10 9200 0300 |0003: invoke-virtual {v3}, Lde/duenndns/gmdice/GameMasterDice;.loadDicePrefs:()V // method@0092 │ │ +0040b4: 1200 |0006: const/4 v0, #int 0 // #0 │ │ +0040b6: 5431 2600 |0007: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice;.button_ids:[I // field@0026 │ │ +0040ba: 2111 |0009: array-length v1, v1 │ │ +0040bc: 3510 1400 |000a: if-ge v0, v1, 001e // +0014 │ │ +0040c0: 5431 2800 |000c: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ +0040c4: 4601 0100 |000e: aget-object v1, v1, v0 │ │ +0040c8: 5432 2400 |0010: iget-object v2, v3, Lde/duenndns/gmdice/GameMasterDice;.button_cfg:[Lde/duenndns/gmdice/DiceSet; // field@0024 │ │ +0040cc: 4602 0200 |0012: aget-object v2, v2, v0 │ │ +0040d0: 6e10 7500 0200 |0014: invoke-virtual {v2}, Lde/duenndns/gmdice/DiceSet;.toString:()Ljava/lang/String; // method@0075 │ │ +0040d6: 0c02 |0017: move-result-object v2 │ │ +0040d8: 6e20 4400 2100 |0018: invoke-virtual {v1, v2}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@0044 │ │ +0040de: d800 0001 |001b: add-int/lit8 v0, v0, #int 1 // #01 │ │ +0040e2: 28ea |001d: goto 0007 // -0016 │ │ +0040e4: 6e10 8800 0300 |001e: invoke-virtual {v3}, Lde/duenndns/gmdice/GameMasterDice;.configKeepScreenOn:()V // method@0088 │ │ +0040ea: 0e00 |0021: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=104 │ │ 0x0003 line=105 │ │ 0x0006 line=106 │ │ 0x000c line=107 │ │ 0x001b line=106 │ │ @@ -2115,23 +2132,23 @@ │ │ type : '(Landroid/os/Bundle;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 17 16-bit code units │ │ -003f68: |[003f68] de.duenndns.gmdice.GameMasterDice.onSaveInstanceState:(Landroid/os/Bundle;)V │ │ -003f78: 1a00 e701 |0000: const-string v0, "resultlog" // string@01e7 │ │ -003f7c: 6e10 8b00 0200 |0002: invoke-virtual {v2}, Lde/duenndns/gmdice/GameMasterDice;.getListView:()Landroid/widget/ListView; // method@008b │ │ -003f82: 0c01 |0005: move-result-object v1 │ │ -003f84: 6e10 5700 0100 |0006: invoke-virtual {v1}, Landroid/widget/ListView;.onSaveInstanceState:()Landroid/os/Parcelable; // method@0057 │ │ -003f8a: 0c01 |0009: move-result-object v1 │ │ -003f8c: 6e30 2300 0301 |000a: invoke-virtual {v3, v0, v1}, Landroid/os/Bundle;.putParcelable:(Ljava/lang/String;Landroid/os/Parcelable;)V // method@0023 │ │ -003f92: 6f20 1200 3200 |000d: invoke-super {v2, v3}, Landroid/app/ListActivity;.onSaveInstanceState:(Landroid/os/Bundle;)V // method@0012 │ │ -003f98: 0e00 |0010: return-void │ │ +0040ec: |[0040ec] de.duenndns.gmdice.GameMasterDice.onSaveInstanceState:(Landroid/os/Bundle;)V │ │ +0040fc: 1a00 e301 |0000: const-string v0, "resultlog" // string@01e3 │ │ +004100: 6e10 8b00 0200 |0002: invoke-virtual {v2}, Lde/duenndns/gmdice/GameMasterDice;.getListView:()Landroid/widget/ListView; // method@008b │ │ +004106: 0c01 |0005: move-result-object v1 │ │ +004108: 6e10 5700 0100 |0006: invoke-virtual {v1}, Landroid/widget/ListView;.onSaveInstanceState:()Landroid/os/Parcelable; // method@0057 │ │ +00410e: 0c01 |0009: move-result-object v1 │ │ +004110: 6e30 2300 0301 |000a: invoke-virtual {v3, v0, v1}, Landroid/os/Bundle;.putParcelable:(Ljava/lang/String;Landroid/os/Parcelable;)V // method@0023 │ │ +004116: 6f20 1200 3200 |000d: invoke-super {v2, v3}, Landroid/app/ListActivity;.onSaveInstanceState:(Landroid/os/Bundle;)V // method@0012 │ │ +00411c: 0e00 |0010: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=119 │ │ 0x000d line=120 │ │ 0x0010 line=121 │ │ locals : │ │ 0x0000 - 0x0011 reg=2 this Lde/duenndns/gmdice/GameMasterDice; │ │ @@ -2142,51 +2159,51 @@ │ │ type : '(Lde/duenndns/gmdice/DiceSet;I)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 8 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 78 16-bit code units │ │ -003f9c: |[003f9c] de.duenndns.gmdice.GameMasterDice.roll:(Lde/duenndns/gmdice/DiceSet;I)V │ │ -003fac: 5452 2a00 |0000: iget-object v2, v5, Lde/duenndns/gmdice/GameMasterDice;.generator:Ljava/util/Random; // field@002a │ │ -003fb0: 6e30 7400 5602 |0002: invoke-virtual {v6, v5, v2}, Lde/duenndns/gmdice/DiceSet;.roll:(Landroid/content/Context;Ljava/util/Random;)Ljava/lang/String; // method@0074 │ │ -003fb6: 0c00 |0005: move-result-object v0 │ │ -003fb8: 5452 2900 |0006: iget-object v2, v5, Lde/duenndns/gmdice/GameMasterDice;.dicecache:Lde/duenndns/gmdice/DiceCache; // field@0029 │ │ -003fbc: 6e20 6900 6200 |0008: invoke-virtual {v2, v6}, Lde/duenndns/gmdice/DiceCache;.add:(Lde/duenndns/gmdice/DiceSet;)V // method@0069 │ │ -003fc2: 5452 2d00 |000b: iget-object v2, v5, Lde/duenndns/gmdice/GameMasterDice;.resultview:Landroid/widget/TextView; // field@002d │ │ -003fc6: 6e20 5d00 0200 |000d: invoke-virtual {v2, v0}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@005d │ │ -003fcc: 2202 6400 |0010: new-instance v2, Ljava/lang/StringBuilder; // type@0064 │ │ -003fd0: 7010 1001 0200 |0012: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ -003fd6: 6e10 7500 0600 |0015: invoke-virtual {v6}, Lde/duenndns/gmdice/DiceSet;.toString:()Ljava/lang/String; // method@0075 │ │ -003fdc: 0c03 |0018: move-result-object v3 │ │ -003fde: 6e20 1301 3200 |0019: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -003fe4: 0c02 |001c: move-result-object v2 │ │ -003fe6: 1a03 1500 |001d: const-string v3, ": " // string@0015 │ │ -003fea: 6e20 1301 3200 |001f: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -003ff0: 0c02 |0022: move-result-object v2 │ │ -003ff2: 6e20 1301 0200 |0023: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -003ff8: 0c02 |0026: move-result-object v2 │ │ -003ffa: 6e10 1601 0200 |0027: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ -004000: 0c01 |002a: move-result-object v1 │ │ -004002: 6202 2300 |002b: sget-object v2, Lde/duenndns/gmdice/GameMasterDice;.TAG:Ljava/lang/String; // field@0023 │ │ -004006: 2203 6400 |002d: new-instance v3, Ljava/lang/StringBuilder; // type@0064 │ │ -00400a: 7010 1001 0300 |002f: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ -004010: 1a04 ed01 |0032: const-string v4, "rolled: " // string@01ed │ │ -004014: 6e20 1301 4300 |0034: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -00401a: 0c03 |0037: move-result-object v3 │ │ -00401c: 6e20 1301 1300 |0038: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -004022: 0c03 |003b: move-result-object v3 │ │ -004024: 6e10 1601 0300 |003c: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ -00402a: 0c03 |003f: move-result-object v3 │ │ -00402c: 7120 2e00 3200 |0040: invoke-static {v2, v3}, Landroid/util/Log;.d:(Ljava/lang/String;Ljava/lang/String;)I // method@002e │ │ -004032: 5452 2c00 |0043: iget-object v2, v5, Lde/duenndns/gmdice/GameMasterDice;.resultlog:Lde/duenndns/gmdice/RollResultAdapter; // field@002c │ │ -004036: 2203 5700 |0045: new-instance v3, Lde/duenndns/gmdice/RollResult; // type@0057 │ │ -00403a: 7030 f200 1307 |0047: invoke-direct {v3, v1, v7}, Lde/duenndns/gmdice/RollResult;.:(Ljava/lang/String;I)V // method@00f2 │ │ -004040: 6e20 f700 3200 |004a: invoke-virtual {v2, v3}, Lde/duenndns/gmdice/RollResultAdapter;.add:(Ljava/lang/Object;)V // method@00f7 │ │ -004046: 0e00 |004d: return-void │ │ +004120: |[004120] de.duenndns.gmdice.GameMasterDice.roll:(Lde/duenndns/gmdice/DiceSet;I)V │ │ +004130: 5452 2a00 |0000: iget-object v2, v5, Lde/duenndns/gmdice/GameMasterDice;.generator:Ljava/util/Random; // field@002a │ │ +004134: 6e30 7400 5602 |0002: invoke-virtual {v6, v5, v2}, Lde/duenndns/gmdice/DiceSet;.roll:(Landroid/content/Context;Ljava/util/Random;)Ljava/lang/String; // method@0074 │ │ +00413a: 0c00 |0005: move-result-object v0 │ │ +00413c: 5452 2900 |0006: iget-object v2, v5, Lde/duenndns/gmdice/GameMasterDice;.dicecache:Lde/duenndns/gmdice/DiceCache; // field@0029 │ │ +004140: 6e20 6900 6200 |0008: invoke-virtual {v2, v6}, Lde/duenndns/gmdice/DiceCache;.add:(Lde/duenndns/gmdice/DiceSet;)V // method@0069 │ │ +004146: 5452 2d00 |000b: iget-object v2, v5, Lde/duenndns/gmdice/GameMasterDice;.resultview:Landroid/widget/TextView; // field@002d │ │ +00414a: 6e20 5d00 0200 |000d: invoke-virtual {v2, v0}, Landroid/widget/TextView;.setText:(Ljava/lang/CharSequence;)V // method@005d │ │ +004150: 2202 6300 |0010: new-instance v2, Ljava/lang/StringBuilder; // type@0063 │ │ +004154: 7010 1001 0200 |0012: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ +00415a: 6e10 7500 0600 |0015: invoke-virtual {v6}, Lde/duenndns/gmdice/DiceSet;.toString:()Ljava/lang/String; // method@0075 │ │ +004160: 0c03 |0018: move-result-object v3 │ │ +004162: 6e20 1301 3200 |0019: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +004168: 0c02 |001c: move-result-object v2 │ │ +00416a: 1a03 1500 |001d: const-string v3, ": " // string@0015 │ │ +00416e: 6e20 1301 3200 |001f: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +004174: 0c02 |0022: move-result-object v2 │ │ +004176: 6e20 1301 0200 |0023: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +00417c: 0c02 |0026: move-result-object v2 │ │ +00417e: 6e10 1601 0200 |0027: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ +004184: 0c01 |002a: move-result-object v1 │ │ +004186: 6202 2300 |002b: sget-object v2, Lde/duenndns/gmdice/GameMasterDice;.TAG:Ljava/lang/String; // field@0023 │ │ +00418a: 2203 6300 |002d: new-instance v3, Ljava/lang/StringBuilder; // type@0063 │ │ +00418e: 7010 1001 0300 |002f: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ +004194: 1a04 e901 |0032: const-string v4, "rolled: " // string@01e9 │ │ +004198: 6e20 1301 4300 |0034: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +00419e: 0c03 |0037: move-result-object v3 │ │ +0041a0: 6e20 1301 1300 |0038: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +0041a6: 0c03 |003b: move-result-object v3 │ │ +0041a8: 6e10 1601 0300 |003c: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ +0041ae: 0c03 |003f: move-result-object v3 │ │ +0041b0: 7120 2e00 3200 |0040: invoke-static {v2, v3}, Landroid/util/Log;.d:(Ljava/lang/String;Ljava/lang/String;)I // method@002e │ │ +0041b6: 5452 2c00 |0043: iget-object v2, v5, Lde/duenndns/gmdice/GameMasterDice;.resultlog:Lde/duenndns/gmdice/RollResultAdapter; // field@002c │ │ +0041ba: 2203 5600 |0045: new-instance v3, Lde/duenndns/gmdice/RollResult; // type@0056 │ │ +0041be: 7030 f200 1307 |0047: invoke-direct {v3, v1, v7}, Lde/duenndns/gmdice/RollResult;.:(Ljava/lang/String;I)V // method@00f2 │ │ +0041c4: 6e20 f700 3200 |004a: invoke-virtual {v2, v3}, Lde/duenndns/gmdice/RollResultAdapter;.add:(Ljava/lang/Object;)V // method@00f7 │ │ +0041ca: 0e00 |004d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=235 │ │ 0x0006 line=236 │ │ 0x000b line=238 │ │ 0x0010 line=240 │ │ 0x002b line=241 │ │ @@ -2204,54 +2221,58 @@ │ │ type : '(Lde/duenndns/gmdice/DiceSet;ZLde/duenndns/gmdice/OnDiceChange;)V' │ │ access : 0x0000 () │ │ code - │ │ registers : 8 │ │ ins : 4 │ │ outs : 5 │ │ insns size : 73 16-bit code units │ │ -004048: |[004048] de.duenndns.gmdice.GameMasterDice.selectDice:(Lde/duenndns/gmdice/DiceSet;ZLde/duenndns/gmdice/OnDiceChange;)V │ │ -004058: 2200 2b00 |0000: new-instance v0, Landroid/widget/ArrayAdapter; // type@002b │ │ -00405c: 1401 0900 0901 |0002: const v1, #float 2.5163e-38 // #01090009 │ │ -004062: 7030 3900 4001 |0005: invoke-direct {v0, v4, v1}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I)V // method@0039 │ │ -004068: 5442 2900 |0008: iget-object v2, v4, Lde/duenndns/gmdice/GameMasterDice;.dicecache:Lde/duenndns/gmdice/DiceCache; // field@0029 │ │ -00406c: 3806 3900 |000a: if-eqz v6, 0043 // +0039 │ │ -004070: 5441 2400 |000c: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.button_cfg:[Lde/duenndns/gmdice/DiceSet; // field@0024 │ │ -004074: 7110 1f01 0100 |000e: invoke-static {v1}, Ljava/util/Arrays;.asList:([Ljava/lang/Object;)Ljava/util/List; // method@011f │ │ -00407a: 0c01 |0011: move-result-object v1 │ │ -00407c: 6e30 6c00 0201 |0012: invoke-virtual {v2, v0, v1}, Lde/duenndns/gmdice/DiceCache;.populate:(Landroid/widget/ArrayAdapter;Ljava/util/List;)V // method@006c │ │ -004082: 1401 0300 047f |0015: const v1, #float 1.75458e+38 // #7f040003 │ │ -004088: 6e20 8f00 1400 |0018: invoke-virtual {v4, v1}, Lde/duenndns/gmdice/GameMasterDice;.getString:(I)Ljava/lang/String; // method@008f │ │ -00408e: 0c01 |001b: move-result-object v1 │ │ -004090: 6e20 3b00 1000 |001c: invoke-virtual {v0, v1}, Landroid/widget/ArrayAdapter;.add:(Ljava/lang/Object;)V // method@003b │ │ -004096: 2201 0400 |001f: new-instance v1, Landroid/app/AlertDialog$Builder; // type@0004 │ │ -00409a: 7020 0200 4100 |0021: invoke-direct {v1, v4}, Landroid/app/AlertDialog$Builder;.:(Landroid/content/Context;)V // method@0002 │ │ -0040a0: 1402 0200 047f |0024: const v2, #float 1.75458e+38 // #7f040002 │ │ -0040a6: 6e20 0a00 2100 |0027: invoke-virtual {v1, v2}, Landroid/app/AlertDialog$Builder;.setTitle:(I)Landroid/app/AlertDialog$Builder; // method@000a │ │ -0040ac: 0c01 |002a: move-result-object v1 │ │ -0040ae: 2202 4400 |002b: new-instance v2, Lde/duenndns/gmdice/GameMasterDice$5; // type@0044 │ │ -0040b2: 7057 8200 4250 |002d: invoke-direct {v2, v4, v0, v5, v7}, Lde/duenndns/gmdice/GameMasterDice$5;.:(Lde/duenndns/gmdice/GameMasterDice;Landroid/widget/ArrayAdapter;Lde/duenndns/gmdice/DiceSet;Lde/duenndns/gmdice/OnDiceChange;)V // method@0082 │ │ -0040b8: 6e30 0400 0102 |0030: invoke-virtual {v1, v0, v2}, Landroid/app/AlertDialog$Builder;.setAdapter:(Landroid/widget/ListAdapter;Landroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; // method@0004 │ │ -0040be: 0c01 |0033: move-result-object v1 │ │ -0040c0: 1502 0401 |0034: const/high16 v2, #int 17039360 // #104 │ │ -0040c4: 1203 |0036: const/4 v3, #int 0 // #0 │ │ -0040c6: 6e30 0700 2103 |0037: invoke-virtual {v1, v2, v3}, Landroid/app/AlertDialog$Builder;.setNegativeButton:(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; // method@0007 │ │ -0040cc: 0c01 |003a: move-result-object v1 │ │ -0040ce: 6e10 0300 0100 |003b: invoke-virtual {v1}, Landroid/app/AlertDialog$Builder;.create:()Landroid/app/AlertDialog; // method@0003 │ │ -0040d4: 0c01 |003e: move-result-object v1 │ │ -0040d6: 6e10 0d00 0100 |003f: invoke-virtual {v1}, Landroid/app/AlertDialog;.show:()V // method@000d │ │ -0040dc: 0e00 |0042: return-void │ │ -0040de: 2201 6a00 |0043: new-instance v1, Ljava/util/ArrayList; // type@006a │ │ -0040e2: 7010 1701 0100 |0045: invoke-direct {v1}, Ljava/util/ArrayList;.:()V // method@0117 │ │ -0040e8: 28ca |0048: goto 0012 // -0036 │ │ +0041cc: |[0041cc] de.duenndns.gmdice.GameMasterDice.selectDice:(Lde/duenndns/gmdice/DiceSet;ZLde/duenndns/gmdice/OnDiceChange;)V │ │ +0041dc: 2200 2a00 |0000: new-instance v0, Landroid/widget/ArrayAdapter; // type@002a │ │ +0041e0: 1401 0900 0901 |0002: const v1, #float 2.5163e-38 // #01090009 │ │ +0041e6: 7030 3900 4001 |0005: invoke-direct {v0, v4, v1}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I)V // method@0039 │ │ +0041ec: 5442 2900 |0008: iget-object v2, v4, Lde/duenndns/gmdice/GameMasterDice;.dicecache:Lde/duenndns/gmdice/DiceCache; // field@0029 │ │ +0041f0: 3806 3900 |000a: if-eqz v6, 0043 // +0039 │ │ +0041f4: 5441 2400 |000c: iget-object v1, v4, Lde/duenndns/gmdice/GameMasterDice;.button_cfg:[Lde/duenndns/gmdice/DiceSet; // field@0024 │ │ +0041f8: 7110 1f01 0100 |000e: invoke-static {v1}, Ljava/util/Arrays;.asList:([Ljava/lang/Object;)Ljava/util/List; // method@011f │ │ +0041fe: 0c01 |0011: move-result-object v1 │ │ +004200: 6e30 6c00 0201 |0012: invoke-virtual {v2, v0, v1}, Lde/duenndns/gmdice/DiceCache;.populate:(Landroid/widget/ArrayAdapter;Ljava/util/List;)V // method@006c │ │ +004206: 1401 0300 047f |0015: const v1, #float 1.75458e+38 // #7f040003 │ │ +00420c: 6e20 8f00 1400 |0018: invoke-virtual {v4, v1}, Lde/duenndns/gmdice/GameMasterDice;.getString:(I)Ljava/lang/String; // method@008f │ │ +004212: 0c01 |001b: move-result-object v1 │ │ +004214: 6e20 3b00 1000 |001c: invoke-virtual {v0, v1}, Landroid/widget/ArrayAdapter;.add:(Ljava/lang/Object;)V // method@003b │ │ +00421a: 2201 0400 |001f: new-instance v1, Landroid/app/AlertDialog$Builder; // type@0004 │ │ +00421e: 7020 0200 4100 |0021: invoke-direct {v1, v4}, Landroid/app/AlertDialog$Builder;.:(Landroid/content/Context;)V // method@0002 │ │ +004224: 1402 0200 047f |0024: const v2, #float 1.75458e+38 // #7f040002 │ │ +00422a: 6e20 0a00 2100 |0027: invoke-virtual {v1, v2}, Landroid/app/AlertDialog$Builder;.setTitle:(I)Landroid/app/AlertDialog$Builder; // method@000a │ │ +004230: 0c01 |002a: move-result-object v1 │ │ +004232: 2202 4300 |002b: new-instance v2, Lde/duenndns/gmdice/GameMasterDice$5; // type@0043 │ │ +004236: 7057 8200 4250 |002d: invoke-direct {v2, v4, v0, v5, v7}, Lde/duenndns/gmdice/GameMasterDice$5;.:(Lde/duenndns/gmdice/GameMasterDice;Landroid/widget/ArrayAdapter;Lde/duenndns/gmdice/DiceSet;Lde/duenndns/gmdice/OnDiceChange;)V // method@0082 │ │ +00423c: 6e30 0400 0102 |0030: invoke-virtual {v1, v0, v2}, Landroid/app/AlertDialog$Builder;.setAdapter:(Landroid/widget/ListAdapter;Landroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; // method@0004 │ │ +004242: 0c01 |0033: move-result-object v1 │ │ +004244: 1502 0401 |0034: const/high16 v2, #int 17039360 // #104 │ │ +004248: 1203 |0036: const/4 v3, #int 0 // #0 │ │ +00424a: 6e30 0700 2103 |0037: invoke-virtual {v1, v2, v3}, Landroid/app/AlertDialog$Builder;.setNegativeButton:(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; // method@0007 │ │ +004250: 0c01 |003a: move-result-object v1 │ │ +004252: 6e10 0300 0100 |003b: invoke-virtual {v1}, Landroid/app/AlertDialog$Builder;.create:()Landroid/app/AlertDialog; // method@0003 │ │ +004258: 0c01 |003e: move-result-object v1 │ │ +00425a: 6e10 0d00 0100 |003f: invoke-virtual {v1}, Landroid/app/AlertDialog;.show:()V // method@000d │ │ +004260: 0e00 |0042: return-void │ │ +004262: 2201 6900 |0043: new-instance v1, Ljava/util/ArrayList; // type@0069 │ │ +004266: 7010 1701 0100 |0045: invoke-direct {v1}, Ljava/util/ArrayList;.:()V // method@0117 │ │ +00426c: 28ca |0048: goto 0012 // -0036 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=314 │ │ 0x0008 line=316 │ │ 0x0015 line=318 │ │ 0x001f line=319 │ │ + 0x0027 line=320 │ │ + 0x0030 line=321 │ │ + 0x0037 line=331 │ │ + 0x003b line=332 │ │ 0x0042 line=333 │ │ 0x0043 line=316 │ │ locals : │ │ 0x0008 - 0x0049 reg=0 adapter Landroid/widget/ArrayAdapter; Landroid/widget/ArrayAdapter; │ │ 0x0000 - 0x0049 reg=4 this Lde/duenndns/gmdice/GameMasterDice; │ │ 0x0000 - 0x0049 reg=5 defaults Lde/duenndns/gmdice/DiceSet; │ │ 0x0000 - 0x0049 reg=6 hideBtns Z │ │ @@ -2262,20 +2283,20 @@ │ │ type : '(Landroid/view/View;II)Lde/duenndns/gmdice/NumberPicker;' │ │ access : 0x0000 () │ │ code - │ │ registers : 5 │ │ ins : 4 │ │ outs : 2 │ │ insns size : 10 16-bit code units │ │ -0040ec: |[0040ec] de.duenndns.gmdice.GameMasterDice.setupNumPicker:(Landroid/view/View;II)Lde/duenndns/gmdice/NumberPicker; │ │ -0040fc: 6e20 3500 3200 |0000: invoke-virtual {v2, v3}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@0035 │ │ -004102: 0c00 |0003: move-result-object v0 │ │ -004104: 1f00 4c00 |0004: check-cast v0, Lde/duenndns/gmdice/NumberPicker; // type@004c │ │ -004108: 6e20 cd00 4000 |0006: invoke-virtual {v0, v4}, Lde/duenndns/gmdice/NumberPicker;.setCurrent:(I)V // method@00cd │ │ -00410e: 1100 |0009: return-object v0 │ │ +004270: |[004270] de.duenndns.gmdice.GameMasterDice.setupNumPicker:(Landroid/view/View;II)Lde/duenndns/gmdice/NumberPicker; │ │ +004280: 6e20 3500 3200 |0000: invoke-virtual {v2, v3}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@0035 │ │ +004286: 0c00 |0003: move-result-object v0 │ │ +004288: 1f00 4b00 |0004: check-cast v0, Lde/duenndns/gmdice/NumberPicker; // type@004b │ │ +00428c: 6e20 cd00 4000 |0006: invoke-virtual {v0, v4}, Lde/duenndns/gmdice/NumberPicker;.setCurrent:(I)V // method@00cd │ │ +004292: 1100 |0009: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=268 │ │ 0x0006 line=269 │ │ 0x0009 line=270 │ │ locals : │ │ 0x0006 - 0x000a reg=0 sp Lde/duenndns/gmdice/NumberPicker; │ │ @@ -2289,35 +2310,35 @@ │ │ type : '(Landroid/view/View;I[Ljava/lang/Integer;I)Landroid/widget/Spinner;' │ │ access : 0x0000 () │ │ code - │ │ registers : 9 │ │ ins : 5 │ │ outs : 4 │ │ insns size : 42 16-bit code units │ │ -004110: |[004110] de.duenndns.gmdice.GameMasterDice.setupSpinner:(Landroid/view/View;I[Ljava/lang/Integer;I)Landroid/widget/Spinner; │ │ -004120: 6e20 3500 6500 |0000: invoke-virtual {v5, v6}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@0035 │ │ -004126: 0c02 |0003: move-result-object v2 │ │ -004128: 1f02 3200 |0004: check-cast v2, Landroid/widget/Spinner; // type@0032 │ │ -00412c: 2200 2b00 |0006: new-instance v0, Landroid/widget/ArrayAdapter; // type@002b │ │ -004130: 1403 0300 037f |0008: const v3, #float 1.74129e+38 // #7f030003 │ │ -004136: 7040 3a00 4073 |000b: invoke-direct {v0, v4, v3, v7}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@003a │ │ -00413c: 1403 0900 0901 |000e: const v3, #float 2.5163e-38 // #01090009 │ │ -004142: 6e20 3f00 3000 |0011: invoke-virtual {v0, v3}, Landroid/widget/ArrayAdapter;.setDropDownViewResource:(I)V // method@003f │ │ -004148: 6e20 5900 0200 |0014: invoke-virtual {v2, v0}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@0059 │ │ -00414e: 1201 |0017: const/4 v1, #int 0 // #0 │ │ -004150: 2173 |0018: array-length v3, v7 │ │ -004152: 3531 1000 |0019: if-ge v1, v3, 0029 // +0010 │ │ -004156: 4603 0701 |001b: aget-object v3, v7, v1 │ │ -00415a: 6e10 0001 0300 |001d: invoke-virtual {v3}, Ljava/lang/Integer;.intValue:()I // method@0100 │ │ -004160: 0a03 |0020: move-result v3 │ │ -004162: 3383 0500 |0021: if-ne v3, v8, 0026 // +0005 │ │ -004166: 6e20 5a00 1200 |0023: invoke-virtual {v2, v1}, Landroid/widget/Spinner;.setSelection:(I)V // method@005a │ │ -00416c: d801 0101 |0026: add-int/lit8 v1, v1, #int 1 // #01 │ │ -004170: 28f0 |0028: goto 0018 // -0010 │ │ -004172: 1102 |0029: return-object v2 │ │ +004294: |[004294] de.duenndns.gmdice.GameMasterDice.setupSpinner:(Landroid/view/View;I[Ljava/lang/Integer;I)Landroid/widget/Spinner; │ │ +0042a4: 6e20 3500 6500 |0000: invoke-virtual {v5, v6}, Landroid/view/View;.findViewById:(I)Landroid/view/View; // method@0035 │ │ +0042aa: 0c02 |0003: move-result-object v2 │ │ +0042ac: 1f02 3100 |0004: check-cast v2, Landroid/widget/Spinner; // type@0031 │ │ +0042b0: 2200 2a00 |0006: new-instance v0, Landroid/widget/ArrayAdapter; // type@002a │ │ +0042b4: 1403 0300 037f |0008: const v3, #float 1.74129e+38 // #7f030003 │ │ +0042ba: 7040 3a00 4073 |000b: invoke-direct {v0, v4, v3, v7}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I[Ljava/lang/Object;)V // method@003a │ │ +0042c0: 1403 0900 0901 |000e: const v3, #float 2.5163e-38 // #01090009 │ │ +0042c6: 6e20 3f00 3000 |0011: invoke-virtual {v0, v3}, Landroid/widget/ArrayAdapter;.setDropDownViewResource:(I)V // method@003f │ │ +0042cc: 6e20 5900 0200 |0014: invoke-virtual {v2, v0}, Landroid/widget/Spinner;.setAdapter:(Landroid/widget/SpinnerAdapter;)V // method@0059 │ │ +0042d2: 1201 |0017: const/4 v1, #int 0 // #0 │ │ +0042d4: 2173 |0018: array-length v3, v7 │ │ +0042d6: 3531 1000 |0019: if-ge v1, v3, 0029 // +0010 │ │ +0042da: 4603 0701 |001b: aget-object v3, v7, v1 │ │ +0042de: 6e10 0001 0300 |001d: invoke-virtual {v3}, Ljava/lang/Integer;.intValue:()I // method@0100 │ │ +0042e4: 0a03 |0020: move-result v3 │ │ +0042e6: 3383 0500 |0021: if-ne v3, v8, 0026 // +0005 │ │ +0042ea: 6e20 5a00 1200 |0023: invoke-virtual {v2, v1}, Landroid/widget/Spinner;.setSelection:(I)V // method@005a │ │ +0042f0: d801 0101 |0026: add-int/lit8 v1, v1, #int 1 // #01 │ │ +0042f4: 28f0 |0028: goto 0018 // -0010 │ │ +0042f6: 1102 |0029: return-object v2 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=274 │ │ 0x0006 line=275 │ │ 0x000e line=276 │ │ 0x0014 line=277 │ │ 0x0017 line=278 │ │ @@ -2340,57 +2361,59 @@ │ │ type : '()V' │ │ access : 0x0000 () │ │ code - │ │ registers : 6 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 65 16-bit code units │ │ -004174: |[004174] de.duenndns.gmdice.GameMasterDice.storeDicePrefs:()V │ │ -004184: 2201 6400 |0000: new-instance v1, Ljava/lang/StringBuilder; // type@0064 │ │ -004188: 7010 1001 0100 |0002: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ -00418e: 1200 |0005: const/4 v0, #int 0 // #0 │ │ -004190: 5452 2400 |0006: iget-object v2, v5, Lde/duenndns/gmdice/GameMasterDice;.button_cfg:[Lde/duenndns/gmdice/DiceSet; // field@0024 │ │ -004194: 2122 |0008: array-length v2, v2 │ │ -004196: 3520 1800 |0009: if-ge v0, v2, 0021 // +0018 │ │ -00419a: 5452 2400 |000b: iget-object v2, v5, Lde/duenndns/gmdice/GameMasterDice;.button_cfg:[Lde/duenndns/gmdice/DiceSet; // field@0024 │ │ -00419e: 4602 0200 |000d: aget-object v2, v2, v0 │ │ -0041a2: 6e20 1201 2100 |000f: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0112 │ │ -0041a8: 5452 2400 |0012: iget-object v2, v5, Lde/duenndns/gmdice/GameMasterDice;.button_cfg:[Lde/duenndns/gmdice/DiceSet; // field@0024 │ │ -0041ac: 2122 |0014: array-length v2, v2 │ │ -0041ae: d802 02ff |0015: add-int/lit8 v2, v2, #int -1 // #ff │ │ -0041b2: 3520 0700 |0017: if-ge v0, v2, 001e // +0007 │ │ -0041b6: 1a02 5b02 |0019: const-string v2, "|" // string@025b │ │ -0041ba: 6e20 1301 2100 |001b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -0041c0: d800 0001 |001e: add-int/lit8 v0, v0, #int 1 // #01 │ │ -0041c4: 28e6 |0020: goto 0006 // -001a │ │ -0041c6: 5452 2b00 |0021: iget-object v2, v5, Lde/duenndns/gmdice/GameMasterDice;.prefs:Landroid/content/SharedPreferences; // field@002b │ │ -0041ca: 7210 1a00 0200 |0023: invoke-interface {v2}, Landroid/content/SharedPreferences;.edit:()Landroid/content/SharedPreferences$Editor; // method@001a │ │ -0041d0: 0c02 |0026: move-result-object v2 │ │ -0041d2: 1a03 1101 |0027: const-string v3, "buttons" // string@0111 │ │ -0041d6: 6e10 1601 0100 |0029: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ -0041dc: 0c04 |002c: move-result-object v4 │ │ -0041de: 7230 1900 3204 |002d: invoke-interface {v2, v3, v4}, Landroid/content/SharedPreferences$Editor;.putString:(Ljava/lang/String;Ljava/lang/String;)Landroid/content/SharedPreferences$Editor; // method@0019 │ │ -0041e4: 0c02 |0030: move-result-object v2 │ │ -0041e6: 1a03 1301 |0031: const-string v3, "cache" // string@0113 │ │ -0041ea: 5454 2900 |0033: iget-object v4, v5, Lde/duenndns/gmdice/GameMasterDice;.dicecache:Lde/duenndns/gmdice/DiceCache; // field@0029 │ │ -0041ee: 6e10 6d00 0400 |0035: invoke-virtual {v4}, Lde/duenndns/gmdice/DiceCache;.toString:()Ljava/lang/String; // method@006d │ │ -0041f4: 0c04 |0038: move-result-object v4 │ │ -0041f6: 7230 1900 3204 |0039: invoke-interface {v2, v3, v4}, Landroid/content/SharedPreferences$Editor;.putString:(Ljava/lang/String;Ljava/lang/String;)Landroid/content/SharedPreferences$Editor; // method@0019 │ │ -0041fc: 0c02 |003c: move-result-object v2 │ │ -0041fe: 7210 1700 0200 |003d: invoke-interface {v2}, Landroid/content/SharedPreferences$Editor;.commit:()Z // method@0017 │ │ -004204: 0e00 |0040: return-void │ │ +0042f8: |[0042f8] de.duenndns.gmdice.GameMasterDice.storeDicePrefs:()V │ │ +004308: 2201 6300 |0000: new-instance v1, Ljava/lang/StringBuilder; // type@0063 │ │ +00430c: 7010 1001 0100 |0002: invoke-direct {v1}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ +004312: 1200 |0005: const/4 v0, #int 0 // #0 │ │ +004314: 5452 2400 |0006: iget-object v2, v5, Lde/duenndns/gmdice/GameMasterDice;.button_cfg:[Lde/duenndns/gmdice/DiceSet; // field@0024 │ │ +004318: 2122 |0008: array-length v2, v2 │ │ +00431a: 3520 1800 |0009: if-ge v0, v2, 0021 // +0018 │ │ +00431e: 5452 2400 |000b: iget-object v2, v5, Lde/duenndns/gmdice/GameMasterDice;.button_cfg:[Lde/duenndns/gmdice/DiceSet; // field@0024 │ │ +004322: 4602 0200 |000d: aget-object v2, v2, v0 │ │ +004326: 6e20 1201 2100 |000f: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0112 │ │ +00432c: 5452 2400 |0012: iget-object v2, v5, Lde/duenndns/gmdice/GameMasterDice;.button_cfg:[Lde/duenndns/gmdice/DiceSet; // field@0024 │ │ +004330: 2122 |0014: array-length v2, v2 │ │ +004332: d802 02ff |0015: add-int/lit8 v2, v2, #int -1 // #ff │ │ +004336: 3520 0700 |0017: if-ge v0, v2, 001e // +0007 │ │ +00433a: 1a02 5702 |0019: const-string v2, "|" // string@0257 │ │ +00433e: 6e20 1301 2100 |001b: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +004344: d800 0001 |001e: add-int/lit8 v0, v0, #int 1 // #01 │ │ +004348: 28e6 |0020: goto 0006 // -001a │ │ +00434a: 5452 2b00 |0021: iget-object v2, v5, Lde/duenndns/gmdice/GameMasterDice;.prefs:Landroid/content/SharedPreferences; // field@002b │ │ +00434e: 7210 1a00 0200 |0023: invoke-interface {v2}, Landroid/content/SharedPreferences;.edit:()Landroid/content/SharedPreferences$Editor; // method@001a │ │ +004354: 0c02 |0026: move-result-object v2 │ │ +004356: 1a03 0f01 |0027: const-string v3, "buttons" // string@010f │ │ +00435a: 6e10 1601 0100 |0029: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ +004360: 0c04 |002c: move-result-object v4 │ │ +004362: 7230 1900 3204 |002d: invoke-interface {v2, v3, v4}, Landroid/content/SharedPreferences$Editor;.putString:(Ljava/lang/String;Ljava/lang/String;)Landroid/content/SharedPreferences$Editor; // method@0019 │ │ +004368: 0c02 |0030: move-result-object v2 │ │ +00436a: 1a03 1101 |0031: const-string v3, "cache" // string@0111 │ │ +00436e: 5454 2900 |0033: iget-object v4, v5, Lde/duenndns/gmdice/GameMasterDice;.dicecache:Lde/duenndns/gmdice/DiceCache; // field@0029 │ │ +004372: 6e10 6d00 0400 |0035: invoke-virtual {v4}, Lde/duenndns/gmdice/DiceCache;.toString:()Ljava/lang/String; // method@006d │ │ +004378: 0c04 |0038: move-result-object v4 │ │ +00437a: 7230 1900 3204 |0039: invoke-interface {v2, v3, v4}, Landroid/content/SharedPreferences$Editor;.putString:(Ljava/lang/String;Ljava/lang/String;)Landroid/content/SharedPreferences$Editor; // method@0019 │ │ +004380: 0c02 |003c: move-result-object v2 │ │ +004382: 7210 1700 0200 |003d: invoke-interface {v2}, Landroid/content/SharedPreferences$Editor;.commit:()Z // method@0017 │ │ +004388: 0e00 |0040: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=204 │ │ 0x0005 line=205 │ │ 0x000b line=206 │ │ 0x0012 line=207 │ │ 0x0019 line=208 │ │ 0x001e line=205 │ │ 0x0021 line=210 │ │ + 0x0035 line=211 │ │ + 0x003d line=212 │ │ 0x0040 line=213 │ │ locals : │ │ 0x0006 - 0x0041 reg=0 i I │ │ 0x0005 - 0x0041 reg=1 sb Ljava/lang/StringBuilder; │ │ 0x0000 - 0x0041 reg=5 this Lde/duenndns/gmdice/GameMasterDice; │ │ │ │ #19 : (in Lde/duenndns/gmdice/GameMasterDice;) │ │ @@ -2398,48 +2421,48 @@ │ │ type : '()V' │ │ access : 0x0000 () │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 3 │ │ insns size : 31 16-bit code units │ │ -004208: |[004208] de.duenndns.gmdice.GameMasterDice.toggleKeepScreenOn:()V │ │ -004218: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -00421a: 5431 2b00 |0001: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice;.prefs:Landroid/content/SharedPreferences; // field@002b │ │ -00421e: 1a02 8201 |0003: const-string v2, "keepscreen" // string@0182 │ │ -004222: 7230 1b00 2100 |0005: invoke-interface {v1, v2, v0}, Landroid/content/SharedPreferences;.getBoolean:(Ljava/lang/String;Z)Z // method@001b │ │ -004228: 0a01 |0008: move-result v1 │ │ -00422a: 3901 0300 |0009: if-nez v1, 000c // +0003 │ │ -00422e: 1210 |000b: const/4 v0, #int 1 // #1 │ │ -004230: 5431 2b00 |000c: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice;.prefs:Landroid/content/SharedPreferences; // field@002b │ │ -004234: 7210 1a00 0100 |000e: invoke-interface {v1}, Landroid/content/SharedPreferences;.edit:()Landroid/content/SharedPreferences$Editor; // method@001a │ │ -00423a: 0c01 |0011: move-result-object v1 │ │ -00423c: 1a02 8201 |0012: const-string v2, "keepscreen" // string@0182 │ │ -004240: 7230 1800 2100 |0014: invoke-interface {v1, v2, v0}, Landroid/content/SharedPreferences$Editor;.putBoolean:(Ljava/lang/String;Z)Landroid/content/SharedPreferences$Editor; // method@0018 │ │ -004246: 0c01 |0017: move-result-object v1 │ │ -004248: 7210 1700 0100 |0018: invoke-interface {v1}, Landroid/content/SharedPreferences$Editor;.commit:()Z // method@0017 │ │ -00424e: 6e10 8800 0300 |001b: invoke-virtual {v3}, Lde/duenndns/gmdice/GameMasterDice;.configKeepScreenOn:()V // method@0088 │ │ -004254: 0e00 |001e: return-void │ │ +00438c: |[00438c] de.duenndns.gmdice.GameMasterDice.toggleKeepScreenOn:()V │ │ +00439c: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +00439e: 5431 2b00 |0001: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice;.prefs:Landroid/content/SharedPreferences; // field@002b │ │ +0043a2: 1a02 7f01 |0003: const-string v2, "keepscreen" // string@017f │ │ +0043a6: 7230 1b00 2100 |0005: invoke-interface {v1, v2, v0}, Landroid/content/SharedPreferences;.getBoolean:(Ljava/lang/String;Z)Z // method@001b │ │ +0043ac: 0a01 |0008: move-result v1 │ │ +0043ae: 3901 0300 |0009: if-nez v1, 000c // +0003 │ │ +0043b2: 1210 |000b: const/4 v0, #int 1 // #1 │ │ +0043b4: 5431 2b00 |000c: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice;.prefs:Landroid/content/SharedPreferences; // field@002b │ │ +0043b8: 7210 1a00 0100 |000e: invoke-interface {v1}, Landroid/content/SharedPreferences;.edit:()Landroid/content/SharedPreferences$Editor; // method@001a │ │ +0043be: 0c01 |0011: move-result-object v1 │ │ +0043c0: 1a02 7f01 |0012: const-string v2, "keepscreen" // string@017f │ │ +0043c4: 7230 1800 2100 |0014: invoke-interface {v1, v2, v0}, Landroid/content/SharedPreferences$Editor;.putBoolean:(Ljava/lang/String;Z)Landroid/content/SharedPreferences$Editor; // method@0018 │ │ +0043ca: 0c01 |0017: move-result-object v1 │ │ +0043cc: 7210 1700 0100 |0018: invoke-interface {v1}, Landroid/content/SharedPreferences$Editor;.commit:()Z // method@0017 │ │ +0043d2: 6e10 8800 0300 |001b: invoke-virtual {v3}, Lde/duenndns/gmdice/GameMasterDice;.configKeepScreenOn:()V // method@0088 │ │ +0043d8: 0e00 |001e: return-void │ │ catches : (none) │ │ positions : │ │ 0x0001 line=163 │ │ 0x000c line=164 │ │ 0x001b line=165 │ │ 0x001e line=166 │ │ locals : │ │ 0x000c - 0x001f reg=0 new_state Z │ │ 0x0000 - 0x001f reg=3 this Lde/duenndns/gmdice/GameMasterDice; │ │ │ │ source_file_idx : 46 (GameMasterDice.java) │ │ │ │ Class #9 header: │ │ -class_idx : 71 │ │ +class_idx : 70 │ │ access_flags : 0 (0x0000) │ │ -superclass_idx : 97 │ │ -source_file_idx : 187 │ │ +superclass_idx : 96 │ │ +source_file_idx : 186 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #9 annotations: │ │ Annotations on class │ │ @@ -2464,89 +2487,89 @@ │ │ type : '(Lde/duenndns/gmdice/NumberPicker;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -004258: |[004258] de.duenndns.gmdice.NumberPicker$2.:(Lde/duenndns/gmdice/NumberPicker;)V │ │ -004268: 5b01 3100 |0000: iput-object v1, v0, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ -00426c: 7010 0501 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ -004272: 0e00 |0005: return-void │ │ +0043dc: |[0043dc] de.duenndns.gmdice.NumberPicker$2.:(Lde/duenndns/gmdice/NumberPicker;)V │ │ +0043ec: 5b01 3100 |0000: iput-object v1, v0, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ +0043f0: 7010 0501 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ +0043f6: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=82 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lde/duenndns/gmdice/NumberPicker$2; │ │ - 0x0000 - 0x0006 reg=1 (null) Lde/duenndns/gmdice/NumberPicker; │ │ + 0x0000 - 0x0006 reg=1 this$0 Lde/duenndns/gmdice/NumberPicker; │ │ │ │ Virtual methods - │ │ #0 : (in Lde/duenndns/gmdice/NumberPicker$2;) │ │ name : 'run' │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ - registers : 4 │ │ + registers : 5 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 70 16-bit code units │ │ -004274: |[004274] de.duenndns.gmdice.NumberPicker$2.run:()V │ │ -004284: 5430 3100 |0000: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ -004288: 7110 b900 0000 |0002: invoke-static {v0}, Lde/duenndns/gmdice/NumberPicker;.access$000:(Lde/duenndns/gmdice/NumberPicker;)Z // method@00b9 │ │ -00428e: 0a00 |0005: move-result v0 │ │ -004290: 3800 1d00 |0006: if-eqz v0, 0023 // +001d │ │ -004294: 5430 3100 |0008: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ -004298: 5431 3100 |000a: iget-object v1, v3, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ -00429c: 5211 3b00 |000c: iget v1, v1, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -0042a0: d801 0101 |000e: add-int/lit8 v1, v1, #int 1 // #01 │ │ -0042a4: 6e20 c300 1000 |0010: invoke-virtual {v0, v1}, Lde/duenndns/gmdice/NumberPicker;.changeCurrent:(I)V // method@00c3 │ │ -0042aa: 5430 3100 |0013: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ -0042ae: 7110 bb00 0000 |0015: invoke-static {v0}, Lde/duenndns/gmdice/NumberPicker;.access$200:(Lde/duenndns/gmdice/NumberPicker;)Landroid/os/Handler; // method@00bb │ │ -0042b4: 0c00 |0018: move-result-object v0 │ │ -0042b6: 5431 3100 |0019: iget-object v1, v3, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ -0042ba: 7110 ba00 0100 |001b: invoke-static {v1}, Lde/duenndns/gmdice/NumberPicker;.access$100:(Lde/duenndns/gmdice/NumberPicker;)J // method@00ba │ │ -0042c0: 0b01 |001e: move-result-wide v1 │ │ -0042c2: 6e40 2600 3021 |001f: invoke-virtual {v0, v3, v1, v2}, Landroid/os/Handler;.postDelayed:(Ljava/lang/Runnable;J)Z // method@0026 │ │ -0042c8: 0e00 |0022: return-void │ │ -0042ca: 5430 3100 |0023: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ -0042ce: 7110 bc00 0000 |0025: invoke-static {v0}, Lde/duenndns/gmdice/NumberPicker;.access$300:(Lde/duenndns/gmdice/NumberPicker;)Z // method@00bc │ │ -0042d4: 0a00 |0028: move-result v0 │ │ -0042d6: 3800 f9ff |0029: if-eqz v0, 0022 // -0007 │ │ -0042da: 5430 3100 |002b: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ -0042de: 5431 3100 |002d: iget-object v1, v3, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ -0042e2: 5211 3b00 |002f: iget v1, v1, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -0042e6: d801 01ff |0031: add-int/lit8 v1, v1, #int -1 // #ff │ │ -0042ea: 6e20 c300 1000 |0033: invoke-virtual {v0, v1}, Lde/duenndns/gmdice/NumberPicker;.changeCurrent:(I)V // method@00c3 │ │ -0042f0: 5430 3100 |0036: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ -0042f4: 7110 bb00 0000 |0038: invoke-static {v0}, Lde/duenndns/gmdice/NumberPicker;.access$200:(Lde/duenndns/gmdice/NumberPicker;)Landroid/os/Handler; // method@00bb │ │ -0042fa: 0c00 |003b: move-result-object v0 │ │ -0042fc: 5431 3100 |003c: iget-object v1, v3, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ -004300: 7110 ba00 0100 |003e: invoke-static {v1}, Lde/duenndns/gmdice/NumberPicker;.access$100:(Lde/duenndns/gmdice/NumberPicker;)J // method@00ba │ │ -004306: 0b01 |0041: move-result-wide v1 │ │ -004308: 6e40 2600 3021 |0042: invoke-virtual {v0, v3, v1, v2}, Landroid/os/Handler;.postDelayed:(Ljava/lang/Runnable;J)Z // method@0026 │ │ -00430e: 28dd |0045: goto 0022 // -0023 │ │ +0043f8: |[0043f8] de.duenndns.gmdice.NumberPicker$2.run:()V │ │ +004408: 5440 3100 |0000: iget-object v0, v4, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ +00440c: 7110 b900 0000 |0002: invoke-static {v0}, Lde/duenndns/gmdice/NumberPicker;.access$000:(Lde/duenndns/gmdice/NumberPicker;)Z // method@00b9 │ │ +004412: 0a00 |0005: move-result v0 │ │ +004414: 3800 1d00 |0006: if-eqz v0, 0023 // +001d │ │ +004418: 5440 3100 |0008: iget-object v0, v4, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ +00441c: 5441 3100 |000a: iget-object v1, v4, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ +004420: 5211 3b00 |000c: iget v1, v1, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +004424: d801 0101 |000e: add-int/lit8 v1, v1, #int 1 // #01 │ │ +004428: 6e20 c300 1000 |0010: invoke-virtual {v0, v1}, Lde/duenndns/gmdice/NumberPicker;.changeCurrent:(I)V // method@00c3 │ │ +00442e: 5440 3100 |0013: iget-object v0, v4, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ +004432: 7110 bb00 0000 |0015: invoke-static {v0}, Lde/duenndns/gmdice/NumberPicker;.access$200:(Lde/duenndns/gmdice/NumberPicker;)Landroid/os/Handler; // method@00bb │ │ +004438: 0c00 |0018: move-result-object v0 │ │ +00443a: 5441 3100 |0019: iget-object v1, v4, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ +00443e: 7110 ba00 0100 |001b: invoke-static {v1}, Lde/duenndns/gmdice/NumberPicker;.access$100:(Lde/duenndns/gmdice/NumberPicker;)J // method@00ba │ │ +004444: 0b02 |001e: move-result-wide v2 │ │ +004446: 6e40 2600 4032 |001f: invoke-virtual {v0, v4, v2, v3}, Landroid/os/Handler;.postDelayed:(Ljava/lang/Runnable;J)Z // method@0026 │ │ +00444c: 0e00 |0022: return-void │ │ +00444e: 5440 3100 |0023: iget-object v0, v4, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ +004452: 7110 bc00 0000 |0025: invoke-static {v0}, Lde/duenndns/gmdice/NumberPicker;.access$300:(Lde/duenndns/gmdice/NumberPicker;)Z // method@00bc │ │ +004458: 0a00 |0028: move-result v0 │ │ +00445a: 3800 f9ff |0029: if-eqz v0, 0022 // -0007 │ │ +00445e: 5440 3100 |002b: iget-object v0, v4, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ +004462: 5441 3100 |002d: iget-object v1, v4, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ +004466: 5211 3b00 |002f: iget v1, v1, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +00446a: d801 01ff |0031: add-int/lit8 v1, v1, #int -1 // #ff │ │ +00446e: 6e20 c300 1000 |0033: invoke-virtual {v0, v1}, Lde/duenndns/gmdice/NumberPicker;.changeCurrent:(I)V // method@00c3 │ │ +004474: 5440 3100 |0036: iget-object v0, v4, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ +004478: 7110 bb00 0000 |0038: invoke-static {v0}, Lde/duenndns/gmdice/NumberPicker;.access$200:(Lde/duenndns/gmdice/NumberPicker;)Landroid/os/Handler; // method@00bb │ │ +00447e: 0c00 |003b: move-result-object v0 │ │ +004480: 5441 3100 |003c: iget-object v1, v4, Lde/duenndns/gmdice/NumberPicker$2;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0031 │ │ +004484: 7110 ba00 0100 |003e: invoke-static {v1}, Lde/duenndns/gmdice/NumberPicker;.access$100:(Lde/duenndns/gmdice/NumberPicker;)J // method@00ba │ │ +00448a: 0b02 |0041: move-result-wide v2 │ │ +00448c: 6e40 2600 4032 |0042: invoke-virtual {v0, v4, v2, v3}, Landroid/os/Handler;.postDelayed:(Ljava/lang/Runnable;J)Z // method@0026 │ │ +004492: 28dd |0045: goto 0022 // -0023 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=84 │ │ 0x0008 line=85 │ │ 0x0013 line=86 │ │ 0x0022 line=91 │ │ 0x0023 line=87 │ │ 0x002b line=88 │ │ 0x0036 line=89 │ │ locals : │ │ - 0x0000 - 0x0046 reg=3 this Lde/duenndns/gmdice/NumberPicker$2; │ │ + 0x0000 - 0x0046 reg=4 this Lde/duenndns/gmdice/NumberPicker$2; │ │ │ │ - source_file_idx : 187 (NumberPicker.java) │ │ + source_file_idx : 186 (NumberPicker.java) │ │ │ │ Class #10 header: │ │ -class_idx : 72 │ │ +class_idx : 71 │ │ access_flags : 1537 (0x0601) │ │ -superclass_idx : 97 │ │ -source_file_idx : 187 │ │ +superclass_idx : 96 │ │ +source_file_idx : 186 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 0 │ │ virtual_methods_size: 1 │ │ │ │ Class #10 annotations: │ │ Annotations on class │ │ @@ -2564,21 +2587,21 @@ │ │ Virtual methods - │ │ #0 : (in Lde/duenndns/gmdice/NumberPicker$Formatter;) │ │ name : 'toString' │ │ type : '(I)Ljava/lang/String;' │ │ access : 0x0401 (PUBLIC ABSTRACT) │ │ code : (none) │ │ │ │ - source_file_idx : 187 (NumberPicker.java) │ │ + source_file_idx : 186 (NumberPicker.java) │ │ │ │ Class #11 header: │ │ -class_idx : 73 │ │ +class_idx : 72 │ │ access_flags : 0 (0x0000) │ │ -superclass_idx : 97 │ │ -source_file_idx : 187 │ │ +superclass_idx : 96 │ │ +source_file_idx : 186 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 2 │ │ virtual_methods_size: 1 │ │ │ │ Class #11 annotations: │ │ Annotations on class │ │ @@ -2603,18 +2626,18 @@ │ │ type : '(Lde/duenndns/gmdice/NumberPicker;)V' │ │ access : 0x10002 (PRIVATE CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -004310: |[004310] de.duenndns.gmdice.NumberPicker$NumberPickerInputFilter.:(Lde/duenndns/gmdice/NumberPicker;)V │ │ -004320: 5b01 3200 |0000: iput-object v1, v0, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0032 │ │ -004324: 7010 0501 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ -00432a: 0e00 |0005: return-void │ │ +004494: |[004494] de.duenndns.gmdice.NumberPicker$NumberPickerInputFilter.:(Lde/duenndns/gmdice/NumberPicker;)V │ │ +0044a4: 5b01 3200 |0000: iput-object v1, v0, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0032 │ │ +0044a8: 7010 0501 0000 |0002: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ +0044ae: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=354 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter; │ │ 0x0000 - 0x0006 reg=1 (null) Lde/duenndns/gmdice/NumberPicker; │ │ │ │ @@ -2623,138 +2646,133 @@ │ │ type : '(Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/NumberPicker$1;)V' │ │ access : 0x11000 (SYNTHETIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 2 │ │ insns size : 4 16-bit code units │ │ -00432c: |[00432c] de.duenndns.gmdice.NumberPicker$NumberPickerInputFilter.:(Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/NumberPicker$1;)V │ │ -00433c: 7020 ac00 1000 |0000: invoke-direct {v0, v1}, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;.:(Lde/duenndns/gmdice/NumberPicker;)V // method@00ac │ │ -004342: 0e00 |0003: return-void │ │ +0044b0: |[0044b0] de.duenndns.gmdice.NumberPicker$NumberPickerInputFilter.:(Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/NumberPicker$1;)V │ │ +0044c0: 7020 ac00 1000 |0000: invoke-direct {v0, v1}, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;.:(Lde/duenndns/gmdice/NumberPicker;)V // method@00ac │ │ +0044c6: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=354 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter; │ │ 0x0000 - 0x0004 reg=1 x0 Lde/duenndns/gmdice/NumberPicker; │ │ 0x0000 - 0x0004 reg=2 x1 Lde/duenndns/gmdice/NumberPicker$1; │ │ │ │ Virtual methods - │ │ #0 : (in Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;) │ │ name : 'filter' │ │ type : '(Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Ljava/lang/CharSequence;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ - registers : 23 │ │ + registers : 20 │ │ ins : 7 │ │ outs : 7 │ │ - insns size : 127 16-bit code units │ │ -004344: |[004344] de.duenndns.gmdice.NumberPicker$NumberPickerInputFilter.filter:(Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Ljava/lang/CharSequence; │ │ -004354: 0800 1000 |0000: move-object/from16 v0, v16 │ │ -004358: 5402 3200 |0002: iget-object v2, v0, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0032 │ │ -00435c: 7110 bd00 0200 |0004: invoke-static {v2}, Lde/duenndns/gmdice/NumberPicker;.access$600:(Lde/duenndns/gmdice/NumberPicker;)[Ljava/lang/String; // method@00bd │ │ -004362: 0c02 |0007: move-result-object v2 │ │ -004364: 3902 1b00 |0008: if-nez v2, 0023 // +001b │ │ -004368: 0800 1000 |000a: move-object/from16 v0, v16 │ │ -00436c: 5402 3200 |000c: iget-object v2, v0, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0032 │ │ -004370: 7110 be00 0200 |000e: invoke-static {v2}, Lde/duenndns/gmdice/NumberPicker;.access$700:(Lde/duenndns/gmdice/NumberPicker;)Landroid/text/InputFilter; // method@00be │ │ -004376: 0c02 |0011: move-result-object v2 │ │ -004378: 0803 1100 |0012: move-object/from16 v3, v17 │ │ -00437c: 0204 1200 |0014: move/from16 v4, v18 │ │ -004380: 0205 1300 |0016: move/from16 v5, v19 │ │ -004384: 0806 1400 |0018: move-object/from16 v6, v20 │ │ -004388: 0207 1500 |001a: move/from16 v7, v21 │ │ -00438c: 0208 1600 |001c: move/from16 v8, v22 │ │ -004390: 7807 2900 0200 |001e: invoke-interface/range {v2, v3, v4, v5, v6, v7, v8}, Landroid/text/InputFilter;.filter:(Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Ljava/lang/CharSequence; // method@0029 │ │ -004396: 0c0a |0021: move-result-object v10 │ │ -004398: 110a |0022: return-object v10 │ │ -00439a: 7803 fe00 1100 |0023: invoke-interface/range {v17, v18, v19}, Ljava/lang/CharSequence;.subSequence:(II)Ljava/lang/CharSequence; // method@00fe │ │ -0043a0: 0c02 |0026: move-result-object v2 │ │ -0043a2: 7110 0f01 0200 |0027: invoke-static {v2}, Ljava/lang/String;.valueOf:(Ljava/lang/Object;)Ljava/lang/String; // method@010f │ │ -0043a8: 0c0a |002a: move-result-object v10 │ │ -0043aa: 2202 6400 |002b: new-instance v2, Ljava/lang/StringBuilder; // type@0064 │ │ -0043ae: 7010 1001 0200 |002d: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ -0043b4: 1203 |0030: const/4 v3, #int 0 // #0 │ │ -0043b6: 0800 1400 |0031: move-object/from16 v0, v20 │ │ -0043ba: 0201 1500 |0033: move/from16 v1, v21 │ │ -0043be: 7230 2b00 3001 |0035: invoke-interface {v0, v3, v1}, Landroid/text/Spanned;.subSequence:(II)Ljava/lang/CharSequence; // method@002b │ │ -0043c4: 0c03 |0038: move-result-object v3 │ │ -0043c6: 7110 0f01 0300 |0039: invoke-static {v3}, Ljava/lang/String;.valueOf:(Ljava/lang/Object;)Ljava/lang/String; // method@010f │ │ -0043cc: 0c03 |003c: move-result-object v3 │ │ -0043ce: 6e20 1301 3200 |003d: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -0043d4: 0c02 |0040: move-result-object v2 │ │ -0043d6: 6e20 1201 a200 |0041: invoke-virtual {v2, v10}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0112 │ │ -0043dc: 0c02 |0044: move-result-object v2 │ │ -0043de: 7801 2a00 1400 |0045: invoke-interface/range {v20}, Landroid/text/Spanned;.length:()I // method@002a │ │ -0043e4: 0a03 |0048: move-result v3 │ │ -0043e6: 0800 1400 |0049: move-object/from16 v0, v20 │ │ -0043ea: 0201 1600 |004b: move/from16 v1, v22 │ │ -0043ee: 7230 2b00 1003 |004d: invoke-interface {v0, v1, v3}, Landroid/text/Spanned;.subSequence:(II)Ljava/lang/CharSequence; // method@002b │ │ -0043f4: 0c03 |0050: move-result-object v3 │ │ -0043f6: 6e20 1201 3200 |0051: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0112 │ │ -0043fc: 0c02 |0054: move-result-object v2 │ │ -0043fe: 6e10 1601 0200 |0055: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ -004404: 0c0d |0058: move-result-object v13 │ │ -004406: 7110 0f01 0d00 |0059: invoke-static {v13}, Ljava/lang/String;.valueOf:(Ljava/lang/Object;)Ljava/lang/String; // method@010f │ │ -00440c: 0c02 |005c: move-result-object v2 │ │ -00440e: 6e10 0d01 0200 |005d: invoke-virtual {v2}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@010d │ │ -004414: 0c0e |0060: move-result-object v14 │ │ -004416: 0800 1000 |0061: move-object/from16 v0, v16 │ │ -00441a: 5402 3200 |0063: iget-object v2, v0, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0032 │ │ -00441e: 7110 bd00 0200 |0065: invoke-static {v2}, Lde/duenndns/gmdice/NumberPicker;.access$600:(Lde/duenndns/gmdice/NumberPicker;)[Ljava/lang/String; // method@00bd │ │ -004424: 0c09 |0068: move-result-object v9 │ │ -004426: 219c |0069: array-length v12, v9 │ │ -004428: 120b |006a: const/4 v11, #int 0 // #0 │ │ -00442a: 35cb 1100 |006b: if-ge v11, v12, 007c // +0011 │ │ -00442e: 460f 090b |006d: aget-object v15, v9, v11 │ │ -004432: 6e10 0d01 0f00 |006f: invoke-virtual {v15}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@010d │ │ -004438: 0c0f |0072: move-result-object v15 │ │ -00443a: 6e20 0c01 ef00 |0073: invoke-virtual {v15, v14}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@010c │ │ -004440: 0a02 |0076: move-result v2 │ │ -004442: 3902 abff |0077: if-nez v2, 0022 // -0055 │ │ -004446: d80b 0b01 |0079: add-int/lit8 v11, v11, #int 1 // #01 │ │ -00444a: 28f0 |007b: goto 006b // -0010 │ │ -00444c: 1a0a 0000 |007c: const-string v10, "" // string@0000 │ │ -004450: 28a4 |007e: goto 0022 // -005c │ │ + insns size : 119 16-bit code units │ │ +0044c8: |[0044c8] de.duenndns.gmdice.NumberPicker$NumberPickerInputFilter.filter:(Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Ljava/lang/CharSequence; │ │ +0044d8: 54d2 3200 |0000: iget-object v2, v13, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0032 │ │ +0044dc: 7110 bd00 0200 |0002: invoke-static {v2}, Lde/duenndns/gmdice/NumberPicker;.access$600:(Lde/duenndns/gmdice/NumberPicker;)[Ljava/lang/String; // method@00bd │ │ +0044e2: 0c02 |0005: move-result-object v2 │ │ +0044e4: 3902 1700 |0006: if-nez v2, 001d // +0017 │ │ +0044e8: 54d2 3200 |0008: iget-object v2, v13, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0032 │ │ +0044ec: 7110 be00 0200 |000a: invoke-static {v2}, Lde/duenndns/gmdice/NumberPicker;.access$700:(Lde/duenndns/gmdice/NumberPicker;)Landroid/text/InputFilter; // method@00be │ │ +0044f2: 0c02 |000d: move-result-object v2 │ │ +0044f4: 07e3 |000e: move-object v3, v14 │ │ +0044f6: 01f4 |000f: move v4, v15 │ │ +0044f8: 0205 1000 |0010: move/from16 v5, v16 │ │ +0044fc: 0806 1100 |0012: move-object/from16 v6, v17 │ │ +004500: 0207 1200 |0014: move/from16 v7, v18 │ │ +004504: 0208 1300 |0016: move/from16 v8, v19 │ │ +004508: 7807 2900 0200 |0018: invoke-interface/range {v2, v3, v4, v5, v6, v7, v8}, Landroid/text/InputFilter;.filter:(Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Ljava/lang/CharSequence; // method@0029 │ │ +00450e: 0c09 |001b: move-result-object v9 │ │ +004510: 1109 |001c: return-object v9 │ │ +004512: 7803 fe00 0e00 |001d: invoke-interface/range {v14, v15, v16}, Ljava/lang/CharSequence;.subSequence:(II)Ljava/lang/CharSequence; // method@00fe │ │ +004518: 0c02 |0020: move-result-object v2 │ │ +00451a: 7110 0f01 0200 |0021: invoke-static {v2}, Ljava/lang/String;.valueOf:(Ljava/lang/Object;)Ljava/lang/String; // method@010f │ │ +004520: 0c09 |0024: move-result-object v9 │ │ +004522: 2202 6300 |0025: new-instance v2, Ljava/lang/StringBuilder; // type@0063 │ │ +004526: 7010 1001 0200 |0027: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ +00452c: 1203 |002a: const/4 v3, #int 0 // #0 │ │ +00452e: 0800 1100 |002b: move-object/from16 v0, v17 │ │ +004532: 0201 1200 |002d: move/from16 v1, v18 │ │ +004536: 7230 2b00 3001 |002f: invoke-interface {v0, v3, v1}, Landroid/text/Spanned;.subSequence:(II)Ljava/lang/CharSequence; // method@002b │ │ +00453c: 0c03 |0032: move-result-object v3 │ │ +00453e: 7110 0f01 0300 |0033: invoke-static {v3}, Ljava/lang/String;.valueOf:(Ljava/lang/Object;)Ljava/lang/String; // method@010f │ │ +004544: 0c03 |0036: move-result-object v3 │ │ +004546: 6e20 1301 3200 |0037: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +00454c: 0c02 |003a: move-result-object v2 │ │ +00454e: 6e20 1201 9200 |003b: invoke-virtual {v2, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0112 │ │ +004554: 0c02 |003e: move-result-object v2 │ │ +004556: 7801 2a00 1100 |003f: invoke-interface/range {v17}, Landroid/text/Spanned;.length:()I // method@002a │ │ +00455c: 0a03 |0042: move-result v3 │ │ +00455e: 0800 1100 |0043: move-object/from16 v0, v17 │ │ +004562: 0201 1300 |0045: move/from16 v1, v19 │ │ +004566: 7230 2b00 1003 |0047: invoke-interface {v0, v1, v3}, Landroid/text/Spanned;.subSequence:(II)Ljava/lang/CharSequence; // method@002b │ │ +00456c: 0c03 |004a: move-result-object v3 │ │ +00456e: 6e20 1201 3200 |004b: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0112 │ │ +004574: 0c02 |004e: move-result-object v2 │ │ +004576: 6e10 1601 0200 |004f: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ +00457c: 0c0a |0052: move-result-object v10 │ │ +00457e: 7110 0f01 0a00 |0053: invoke-static {v10}, Ljava/lang/String;.valueOf:(Ljava/lang/Object;)Ljava/lang/String; // method@010f │ │ +004584: 0c02 |0056: move-result-object v2 │ │ +004586: 6e10 0d01 0200 |0057: invoke-virtual {v2}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@010d │ │ +00458c: 0c0b |005a: move-result-object v11 │ │ +00458e: 54d2 3200 |005b: iget-object v2, v13, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0032 │ │ +004592: 7110 bd00 0200 |005d: invoke-static {v2}, Lde/duenndns/gmdice/NumberPicker;.access$600:(Lde/duenndns/gmdice/NumberPicker;)[Ljava/lang/String; // method@00bd │ │ +004598: 0c03 |0060: move-result-object v3 │ │ +00459a: 2134 |0061: array-length v4, v3 │ │ +00459c: 1202 |0062: const/4 v2, #int 0 // #0 │ │ +00459e: 3542 1100 |0063: if-ge v2, v4, 0074 // +0011 │ │ +0045a2: 460c 0302 |0065: aget-object v12, v3, v2 │ │ +0045a6: 6e10 0d01 0c00 |0067: invoke-virtual {v12}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@010d │ │ +0045ac: 0c0c |006a: move-result-object v12 │ │ +0045ae: 6e20 0c01 bc00 |006b: invoke-virtual {v12, v11}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@010c │ │ +0045b4: 0a05 |006e: move-result v5 │ │ +0045b6: 3905 adff |006f: if-nez v5, 001c // -0053 │ │ +0045ba: d802 0201 |0071: add-int/lit8 v2, v2, #int 1 // #01 │ │ +0045be: 28f0 |0073: goto 0063 // -0010 │ │ +0045c0: 1a09 0000 |0074: const-string v9, "" // string@0000 │ │ +0045c4: 28a6 |0076: goto 001c // -005a │ │ catches : (none) │ │ positions : │ │ 0x0000 line=357 │ │ - 0x000a line=358 │ │ - 0x0022 line=371 │ │ - 0x0023 line=360 │ │ - 0x002b line=361 │ │ - 0x0059 line=364 │ │ - 0x0061 line=365 │ │ - 0x006f line=366 │ │ - 0x0073 line=367 │ │ - 0x0079 line=365 │ │ - 0x007c line=371 │ │ - locals : │ │ - 0x006f - 0x007c reg=15 val Ljava/lang/String; │ │ - 0x0069 - 0x007f reg=9 arr$ [Ljava/lang/String; │ │ - 0x002b - 0x007f reg=10 filtered Ljava/lang/CharSequence; │ │ - 0x006b - 0x007f reg=11 i$ I │ │ - 0x006a - 0x007f reg=12 len$ I │ │ - 0x0059 - 0x007f reg=13 result Ljava/lang/String; │ │ - 0x0061 - 0x007f reg=14 str Ljava/lang/String; │ │ - 0x0000 - 0x007f reg=16 this Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter; │ │ - 0x0000 - 0x007f reg=17 source Ljava/lang/CharSequence; │ │ - 0x0000 - 0x007f reg=18 start I │ │ - 0x0000 - 0x007f reg=19 end I │ │ - 0x0000 - 0x007f reg=20 dest Landroid/text/Spanned; │ │ - 0x0000 - 0x007f reg=21 dstart I │ │ - 0x0000 - 0x007f reg=22 dend I │ │ + 0x0008 line=358 │ │ + 0x001c line=371 │ │ + 0x001d line=360 │ │ + 0x0025 line=361 │ │ + 0x003f line=363 │ │ + 0x0053 line=364 │ │ + 0x005b line=365 │ │ + 0x0067 line=366 │ │ + 0x006b line=367 │ │ + 0x0071 line=365 │ │ + 0x0074 line=371 │ │ + locals : │ │ + 0x0067 - 0x0074 reg=12 val Ljava/lang/String; │ │ + 0x0025 - 0x0077 reg=9 filtered Ljava/lang/CharSequence; │ │ + 0x0053 - 0x0077 reg=10 result Ljava/lang/String; │ │ + 0x005b - 0x0077 reg=11 str Ljava/lang/String; │ │ + 0x0000 - 0x0077 reg=13 this Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter; │ │ + 0x0000 - 0x0077 reg=14 source Ljava/lang/CharSequence; │ │ + 0x0000 - 0x0077 reg=15 start I │ │ + 0x0000 - 0x0077 reg=16 end I │ │ + 0x0000 - 0x0077 reg=17 dest Landroid/text/Spanned; │ │ + 0x0000 - 0x0077 reg=18 dstart I │ │ + 0x0000 - 0x0077 reg=19 dend I │ │ │ │ - source_file_idx : 187 (NumberPicker.java) │ │ + source_file_idx : 186 (NumberPicker.java) │ │ │ │ Class #12 header: │ │ -class_idx : 74 │ │ +class_idx : 73 │ │ access_flags : 0 (0x0000) │ │ -superclass_idx : 28 │ │ -source_file_idx : 187 │ │ +superclass_idx : 27 │ │ +source_file_idx : 186 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 2 │ │ virtual_methods_size: 3 │ │ │ │ Class #12 annotations: │ │ Annotations on class │ │ @@ -2778,18 +2796,18 @@ │ │ type : '(Lde/duenndns/gmdice/NumberPicker;)V' │ │ access : 0x10002 (PRIVATE CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -004454: |[004454] de.duenndns.gmdice.NumberPicker$NumberRangeKeyListener.:(Lde/duenndns/gmdice/NumberPicker;)V │ │ -004464: 5b01 3300 |0000: iput-object v1, v0, Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0033 │ │ -004468: 7010 2c00 0000 |0002: invoke-direct {v0}, Landroid/text/method/NumberKeyListener;.:()V // method@002c │ │ -00446e: 0e00 |0005: return-void │ │ +0045c8: |[0045c8] de.duenndns.gmdice.NumberPicker$NumberRangeKeyListener.:(Lde/duenndns/gmdice/NumberPicker;)V │ │ +0045d8: 5b01 3300 |0000: iput-object v1, v0, Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0033 │ │ +0045dc: 7010 2c00 0000 |0002: invoke-direct {v0}, Landroid/text/method/NumberKeyListener;.:()V // method@002c │ │ +0045e2: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=375 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener; │ │ 0x0000 - 0x0006 reg=1 (null) Lde/duenndns/gmdice/NumberPicker; │ │ │ │ @@ -2798,17 +2816,17 @@ │ │ type : '(Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/NumberPicker$1;)V' │ │ access : 0x11000 (SYNTHETIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 2 │ │ insns size : 4 16-bit code units │ │ -004470: |[004470] de.duenndns.gmdice.NumberPicker$NumberRangeKeyListener.:(Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/NumberPicker$1;)V │ │ -004480: 7020 af00 1000 |0000: invoke-direct {v0, v1}, Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener;.:(Lde/duenndns/gmdice/NumberPicker;)V // method@00af │ │ -004486: 0e00 |0003: return-void │ │ +0045e4: |[0045e4] de.duenndns.gmdice.NumberPicker$NumberRangeKeyListener.:(Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/NumberPicker$1;)V │ │ +0045f4: 7020 af00 1000 |0000: invoke-direct {v0, v1}, Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener;.:(Lde/duenndns/gmdice/NumberPicker;)V // method@00af │ │ +0045fa: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=375 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener; │ │ 0x0000 - 0x0004 reg=1 x0 Lde/duenndns/gmdice/NumberPicker; │ │ 0x0000 - 0x0004 reg=2 x1 Lde/duenndns/gmdice/NumberPicker$1; │ │ @@ -2819,60 +2837,61 @@ │ │ type : '(Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Ljava/lang/CharSequence;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 12 │ │ ins : 7 │ │ outs : 7 │ │ insns size : 74 16-bit code units │ │ -004488: |[004488] de.duenndns.gmdice.NumberPicker$NumberRangeKeyListener.filter:(Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Ljava/lang/CharSequence; │ │ -004498: 7507 2d00 0500 |0000: invoke-super/range {v5, v6, v7, v8, v9, v10, v11}, Landroid/text/method/NumberKeyListener;.filter:(Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Ljava/lang/CharSequence; // method@002d │ │ -00449e: 0c00 |0003: move-result-object v0 │ │ -0044a0: 3900 0600 |0004: if-nez v0, 000a // +0006 │ │ -0044a4: 7230 fe00 7608 |0006: invoke-interface {v6, v7, v8}, Ljava/lang/CharSequence;.subSequence:(II)Ljava/lang/CharSequence; // method@00fe │ │ -0044aa: 0c00 |0009: move-result-object v0 │ │ -0044ac: 2203 6400 |000a: new-instance v3, Ljava/lang/StringBuilder; // type@0064 │ │ -0044b0: 7010 1001 0300 |000c: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ -0044b6: 1204 |000f: const/4 v4, #int 0 // #0 │ │ -0044b8: 7230 2b00 490a |0010: invoke-interface {v9, v4, v10}, Landroid/text/Spanned;.subSequence:(II)Ljava/lang/CharSequence; // method@002b │ │ -0044be: 0c04 |0013: move-result-object v4 │ │ -0044c0: 7110 0f01 0400 |0014: invoke-static {v4}, Ljava/lang/String;.valueOf:(Ljava/lang/Object;)Ljava/lang/String; // method@010f │ │ -0044c6: 0c04 |0017: move-result-object v4 │ │ -0044c8: 6e20 1301 4300 |0018: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -0044ce: 0c03 |001b: move-result-object v3 │ │ -0044d0: 6e20 1201 0300 |001c: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0112 │ │ -0044d6: 0c03 |001f: move-result-object v3 │ │ -0044d8: 7210 2a00 0900 |0020: invoke-interface {v9}, Landroid/text/Spanned;.length:()I // method@002a │ │ -0044de: 0a04 |0023: move-result v4 │ │ -0044e0: 7230 2b00 b904 |0024: invoke-interface {v9, v11, v4}, Landroid/text/Spanned;.subSequence:(II)Ljava/lang/CharSequence; // method@002b │ │ -0044e6: 0c04 |0027: move-result-object v4 │ │ -0044e8: 6e20 1201 4300 |0028: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0112 │ │ -0044ee: 0c03 |002b: move-result-object v3 │ │ -0044f0: 6e10 1601 0300 |002c: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ -0044f6: 0c01 |002f: move-result-object v1 │ │ -0044f8: 1a03 0000 |0030: const-string v3, "" // string@0000 │ │ -0044fc: 6e20 0701 1300 |0032: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@0107 │ │ -004502: 0a03 |0035: move-result v3 │ │ -004504: 3803 0300 |0036: if-eqz v3, 0039 // +0003 │ │ -004508: 1101 |0038: return-object v1 │ │ -00450a: 5453 3300 |0039: iget-object v3, v5, Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0033 │ │ -00450e: 7120 c000 1300 |003b: invoke-static {v3, v1}, Lde/duenndns/gmdice/NumberPicker;.access$900:(Lde/duenndns/gmdice/NumberPicker;Ljava/lang/String;)I // method@00c0 │ │ -004514: 0a02 |003e: move-result v2 │ │ -004516: 5453 3300 |003f: iget-object v3, v5, Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0033 │ │ -00451a: 5233 3f00 |0041: iget v3, v3, Lde/duenndns/gmdice/NumberPicker;.mEnd:I // field@003f │ │ -00451e: 3732 0500 |0043: if-le v2, v3, 0048 // +0005 │ │ -004522: 1a01 0000 |0045: const-string v1, "" // string@0000 │ │ -004526: 28f1 |0047: goto 0038 // -000f │ │ -004528: 0701 |0048: move-object v1, v0 │ │ -00452a: 28ef |0049: goto 0038 // -0011 │ │ +0045fc: |[0045fc] de.duenndns.gmdice.NumberPicker$NumberRangeKeyListener.filter:(Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Ljava/lang/CharSequence; │ │ +00460c: 7507 2d00 0500 |0000: invoke-super/range {v5, v6, v7, v8, v9, v10, v11}, Landroid/text/method/NumberKeyListener;.filter:(Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Ljava/lang/CharSequence; // method@002d │ │ +004612: 0c00 |0003: move-result-object v0 │ │ +004614: 3900 0600 |0004: if-nez v0, 000a // +0006 │ │ +004618: 7230 fe00 7608 |0006: invoke-interface {v6, v7, v8}, Ljava/lang/CharSequence;.subSequence:(II)Ljava/lang/CharSequence; // method@00fe │ │ +00461e: 0c00 |0009: move-result-object v0 │ │ +004620: 2203 6300 |000a: new-instance v3, Ljava/lang/StringBuilder; // type@0063 │ │ +004624: 7010 1001 0300 |000c: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ +00462a: 1204 |000f: const/4 v4, #int 0 // #0 │ │ +00462c: 7230 2b00 490a |0010: invoke-interface {v9, v4, v10}, Landroid/text/Spanned;.subSequence:(II)Ljava/lang/CharSequence; // method@002b │ │ +004632: 0c04 |0013: move-result-object v4 │ │ +004634: 7110 0f01 0400 |0014: invoke-static {v4}, Ljava/lang/String;.valueOf:(Ljava/lang/Object;)Ljava/lang/String; // method@010f │ │ +00463a: 0c04 |0017: move-result-object v4 │ │ +00463c: 6e20 1301 4300 |0018: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +004642: 0c03 |001b: move-result-object v3 │ │ +004644: 6e20 1201 0300 |001c: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0112 │ │ +00464a: 0c03 |001f: move-result-object v3 │ │ +00464c: 7210 2a00 0900 |0020: invoke-interface {v9}, Landroid/text/Spanned;.length:()I // method@002a │ │ +004652: 0a04 |0023: move-result v4 │ │ +004654: 7230 2b00 b904 |0024: invoke-interface {v9, v11, v4}, Landroid/text/Spanned;.subSequence:(II)Ljava/lang/CharSequence; // method@002b │ │ +00465a: 0c04 |0027: move-result-object v4 │ │ +00465c: 6e20 1201 4300 |0028: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0112 │ │ +004662: 0c03 |002b: move-result-object v3 │ │ +004664: 6e10 1601 0300 |002c: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ +00466a: 0c01 |002f: move-result-object v1 │ │ +00466c: 1a03 0000 |0030: const-string v3, "" // string@0000 │ │ +004670: 6e20 0701 1300 |0032: invoke-virtual {v3, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@0107 │ │ +004676: 0a03 |0035: move-result v3 │ │ +004678: 3803 0300 |0036: if-eqz v3, 0039 // +0003 │ │ +00467c: 1101 |0038: return-object v1 │ │ +00467e: 5453 3300 |0039: iget-object v3, v5, Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0033 │ │ +004682: 7120 c000 1300 |003b: invoke-static {v3, v1}, Lde/duenndns/gmdice/NumberPicker;.access$900:(Lde/duenndns/gmdice/NumberPicker;Ljava/lang/String;)I // method@00c0 │ │ +004688: 0a02 |003e: move-result v2 │ │ +00468a: 5453 3300 |003f: iget-object v3, v5, Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener;.this$0:Lde/duenndns/gmdice/NumberPicker; // field@0033 │ │ +00468e: 5233 3f00 |0041: iget v3, v3, Lde/duenndns/gmdice/NumberPicker;.mEnd:I // field@003f │ │ +004692: 3732 0500 |0043: if-le v2, v3, 0048 // +0005 │ │ +004696: 1a01 0000 |0045: const-string v1, "" // string@0000 │ │ +00469a: 28f1 |0047: goto 0038 // -000f │ │ +00469c: 0701 |0048: move-object v1, v0 │ │ +00469e: 28ef |0049: goto 0038 // -0011 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=392 │ │ 0x0004 line=393 │ │ 0x0006 line=394 │ │ 0x000a line=397 │ │ + 0x0020 line=399 │ │ 0x0030 line=401 │ │ 0x0038 line=414 │ │ 0x0039 line=404 │ │ 0x003f line=411 │ │ 0x0045 line=412 │ │ 0x0049 line=414 │ │ locals : │ │ @@ -2893,18 +2912,18 @@ │ │ type : '()[C' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 5 16-bit code units │ │ -00452c: |[00452c] de.duenndns.gmdice.NumberPicker$NumberRangeKeyListener.getAcceptedChars:()[C │ │ -00453c: 7100 bf00 0000 |0000: invoke-static {}, Lde/duenndns/gmdice/NumberPicker;.access$800:()[C // method@00bf │ │ -004542: 0c00 |0003: move-result-object v0 │ │ -004544: 1100 |0004: return-object v0 │ │ +0046a0: |[0046a0] de.duenndns.gmdice.NumberPicker$NumberRangeKeyListener.getAcceptedChars:()[C │ │ +0046b0: 7100 bf00 0000 |0000: invoke-static {}, Lde/duenndns/gmdice/NumberPicker;.access$800:()[C // method@00bf │ │ +0046b6: 0c00 |0003: move-result-object v0 │ │ +0046b8: 1100 |0004: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=385 │ │ locals : │ │ 0x0000 - 0x0005 reg=1 this Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener; │ │ │ │ #2 : (in Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener;) │ │ @@ -2912,30 +2931,30 @@ │ │ type : '()I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 2 16-bit code units │ │ -004548: |[004548] de.duenndns.gmdice.NumberPicker$NumberRangeKeyListener.getInputType:()I │ │ -004558: 1220 |0000: const/4 v0, #int 2 // #2 │ │ -00455a: 0f00 |0001: return v0 │ │ +0046bc: |[0046bc] de.duenndns.gmdice.NumberPicker$NumberRangeKeyListener.getInputType:()I │ │ +0046cc: 1220 |0000: const/4 v0, #int 2 // #2 │ │ +0046ce: 0f00 |0001: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=380 │ │ locals : │ │ 0x0000 - 0x0002 reg=1 this Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener; │ │ │ │ - source_file_idx : 187 (NumberPicker.java) │ │ + source_file_idx : 186 (NumberPicker.java) │ │ │ │ Class #13 header: │ │ -class_idx : 75 │ │ +class_idx : 74 │ │ access_flags : 1537 (0x0601) │ │ -superclass_idx : 97 │ │ -source_file_idx : 187 │ │ +superclass_idx : 96 │ │ +source_file_idx : 186 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 0 │ │ virtual_methods_size: 1 │ │ │ │ Class #13 annotations: │ │ Annotations on class │ │ @@ -2953,21 +2972,21 @@ │ │ Virtual methods - │ │ #0 : (in Lde/duenndns/gmdice/NumberPicker$OnChangedListener;) │ │ name : 'onChanged' │ │ type : '(Lde/duenndns/gmdice/NumberPicker;II)V' │ │ access : 0x0401 (PUBLIC ABSTRACT) │ │ code : (none) │ │ │ │ - source_file_idx : 187 (NumberPicker.java) │ │ + source_file_idx : 186 (NumberPicker.java) │ │ │ │ Class #14 header: │ │ -class_idx : 76 │ │ +class_idx : 75 │ │ access_flags : 1 (0x0001) │ │ -superclass_idx : 47 │ │ -source_file_idx : 187 │ │ +superclass_idx : 46 │ │ +source_file_idx : 186 │ │ static_fields_size : 7 │ │ instance_fields_size: 17 │ │ direct_methods_size : 16 │ │ virtual_methods_size: 18 │ │ │ │ Class #14 annotations: │ │ Annotations on class │ │ @@ -3091,25 +3110,25 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 1 │ │ insns size : 32 16-bit code units │ │ -00455c: |[00455c] de.duenndns.gmdice.NumberPicker.:()V │ │ -00456c: 2200 4600 |0000: new-instance v0, Lde/duenndns/gmdice/NumberPicker$1; // type@0046 │ │ -004570: 7010 a700 0000 |0002: invoke-direct {v0}, Lde/duenndns/gmdice/NumberPicker$1;.:()V // method@00a7 │ │ -004576: 6900 3a00 |0005: sput-object v0, Lde/duenndns/gmdice/NumberPicker;.TWO_DIGIT_FORMATTER:Lde/duenndns/gmdice/NumberPicker$Formatter; // field@003a │ │ -00457a: 1300 0a00 |0007: const/16 v0, #int 10 // #a │ │ -00457e: 2300 7200 |0009: new-array v0, v0, [C // type@0072 │ │ -004582: 2600 0700 0000 |000b: fill-array-data v0, 00000012 // +00000007 │ │ -004588: 6900 3800 |000e: sput-object v0, Lde/duenndns/gmdice/NumberPicker;.DIGIT_CHARACTERS:[C // field@0038 │ │ -00458c: 0e00 |0010: return-void │ │ -00458e: 0000 |0011: nop // spacer │ │ -004590: 0003 0200 0a00 0000 3000 3100 3200 ... |0012: array-data (14 units) │ │ +0046d0: |[0046d0] de.duenndns.gmdice.NumberPicker.:()V │ │ +0046e0: 2200 4500 |0000: new-instance v0, Lde/duenndns/gmdice/NumberPicker$1; // type@0045 │ │ +0046e4: 7010 a700 0000 |0002: invoke-direct {v0}, Lde/duenndns/gmdice/NumberPicker$1;.:()V // method@00a7 │ │ +0046ea: 6900 3a00 |0005: sput-object v0, Lde/duenndns/gmdice/NumberPicker;.TWO_DIGIT_FORMATTER:Lde/duenndns/gmdice/NumberPicker$Formatter; // field@003a │ │ +0046ee: 1300 0a00 |0007: const/16 v0, #int 10 // #a │ │ +0046f2: 2300 7100 |0009: new-array v0, v0, [C // type@0071 │ │ +0046f6: 2600 0700 0000 |000b: fill-array-data v0, 00000012 // +00000007 │ │ +0046fc: 6900 3800 |000e: sput-object v0, Lde/duenndns/gmdice/NumberPicker;.DIGIT_CHARACTERS:[C // field@0038 │ │ +004700: 0e00 |0010: return-void │ │ +004702: 0000 |0011: nop // spacer │ │ +004704: 0003 0200 0a00 0000 3000 3100 3200 ... |0012: array-data (14 units) │ │ catches : (none) │ │ positions : │ │ 0x0000 line=68 │ │ 0x0007 line=347 │ │ locals : │ │ │ │ #1 : (in Lde/duenndns/gmdice/NumberPicker;) │ │ @@ -3117,18 +3136,18 @@ │ │ type : '(Landroid/content/Context;)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 5 16-bit code units │ │ -0045ac: |[0045ac] de.duenndns.gmdice.NumberPicker.:(Landroid/content/Context;)V │ │ -0045bc: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -0045be: 7030 b700 2100 |0001: invoke-direct {v1, v2, v0}, Lde/duenndns/gmdice/NumberPicker;.:(Landroid/content/Context;Landroid/util/AttributeSet;)V // method@00b7 │ │ -0045c4: 0e00 |0004: return-void │ │ +004720: |[004720] de.duenndns.gmdice.NumberPicker.:(Landroid/content/Context;)V │ │ +004730: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +004732: 7030 b700 2100 |0001: invoke-direct {v1, v2, v0}, Lde/duenndns/gmdice/NumberPicker;.:(Landroid/content/Context;Landroid/util/AttributeSet;)V // method@00b7 │ │ +004738: 0e00 |0004: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=111 │ │ 0x0004 line=112 │ │ locals : │ │ 0x0000 - 0x0005 reg=1 this Lde/duenndns/gmdice/NumberPicker; │ │ 0x0000 - 0x0005 reg=2 context Landroid/content/Context; │ │ @@ -3138,136 +3157,136 @@ │ │ type : '(Landroid/content/Context;Landroid/util/AttributeSet;)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 4 │ │ insns size : 5 16-bit code units │ │ -0045c8: |[0045c8] de.duenndns.gmdice.NumberPicker.:(Landroid/content/Context;Landroid/util/AttributeSet;)V │ │ -0045d8: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -0045da: 7040 b800 2103 |0001: invoke-direct {v1, v2, v3, v0}, Lde/duenndns/gmdice/NumberPicker;.:(Landroid/content/Context;Landroid/util/AttributeSet;I)V // method@00b8 │ │ -0045e0: 0e00 |0004: return-void │ │ +00473c: |[00473c] de.duenndns.gmdice.NumberPicker.:(Landroid/content/Context;Landroid/util/AttributeSet;)V │ │ +00474c: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +00474e: 7040 b800 2103 |0001: invoke-direct {v1, v2, v3, v0}, Lde/duenndns/gmdice/NumberPicker;.:(Landroid/content/Context;Landroid/util/AttributeSet;I)V // method@00b8 │ │ +004754: 0e00 |0004: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=115 │ │ 0x0004 line=116 │ │ locals : │ │ 0x0000 - 0x0005 reg=1 this Lde/duenndns/gmdice/NumberPicker; │ │ 0x0000 - 0x0005 reg=2 context Landroid/content/Context; │ │ 0x0000 - 0x0005 reg=3 attrs Landroid/util/AttributeSet; │ │ │ │ #3 : (in Lde/duenndns/gmdice/NumberPicker;) │ │ name : '' │ │ type : '(Landroid/content/Context;Landroid/util/AttributeSet;I)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ - registers : 12 │ │ + registers : 13 │ │ ins : 4 │ │ outs : 4 │ │ insns size : 214 16-bit code units │ │ -0045e4: |[0045e4] de.duenndns.gmdice.NumberPicker.:(Landroid/content/Context;Landroid/util/AttributeSet;I)V │ │ -0045f4: 1207 |0000: const/4 v7, #int 0 // #0 │ │ -0045f6: 1216 |0001: const/4 v6, #int 1 // #1 │ │ -0045f8: 1205 |0002: const/4 v5, #int 0 // #0 │ │ -0045fa: 7030 5400 980a |0003: invoke-direct {v8, v9, v10}, Landroid/widget/LinearLayout;.:(Landroid/content/Context;Landroid/util/AttributeSet;)V // method@0054 │ │ -004600: 2203 4700 |0006: new-instance v3, Lde/duenndns/gmdice/NumberPicker$2; // type@0047 │ │ -004604: 7020 a900 8300 |0008: invoke-direct {v3, v8}, Lde/duenndns/gmdice/NumberPicker$2;.:(Lde/duenndns/gmdice/NumberPicker;)V // method@00a9 │ │ -00460a: 5b83 4700 |000b: iput-object v3, v8, Lde/duenndns/gmdice/NumberPicker;.mRunnable:Ljava/lang/Runnable; // field@0047 │ │ -00460e: 1603 2c01 |000d: const-wide/16 v3, #int 300 // #12c │ │ -004612: 5a83 4800 |000f: iput-wide v3, v8, Lde/duenndns/gmdice/NumberPicker;.mSpeed:J // field@0048 │ │ -004616: 6e20 d200 6800 |0011: invoke-virtual {v8, v6}, Lde/duenndns/gmdice/NumberPicker;.setOrientation:(I)V // method@00d2 │ │ -00461c: 1a03 8601 |0014: const-string v3, "layout_inflater" // string@0186 │ │ -004620: 6e20 1400 3900 |0016: invoke-virtual {v9, v3}, Landroid/content/Context;.getSystemService:(Ljava/lang/String;)Ljava/lang/Object; // method@0014 │ │ -004626: 0c01 |0019: move-result-object v1 │ │ -004628: 1f01 2000 |001a: check-cast v1, Landroid/view/LayoutInflater; // type@0020 │ │ -00462c: 1403 0200 037f |001c: const v3, #float 1.74129e+38 // #7f030002 │ │ -004632: 6e40 2f00 3168 |001f: invoke-virtual {v1, v3, v8, v6}, Landroid/view/LayoutInflater;.inflate:(ILandroid/view/ViewGroup;Z)Landroid/view/View; // method@002f │ │ -004638: 2203 1600 |0022: new-instance v3, Landroid/os/Handler; // type@0016 │ │ -00463c: 7010 2400 0300 |0024: invoke-direct {v3}, Landroid/os/Handler;.:()V // method@0024 │ │ -004642: 5b83 4100 |0027: iput-object v3, v8, Lde/duenndns/gmdice/NumberPicker;.mHandler:Landroid/os/Handler; // field@0041 │ │ -004646: 2202 4900 |0029: new-instance v2, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter; // type@0049 │ │ -00464a: 7030 ad00 8207 |002b: invoke-direct {v2, v8, v7}, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;.:(Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/NumberPicker$1;)V // method@00ad │ │ -004650: 2203 4a00 |002e: new-instance v3, Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener; // type@004a │ │ -004654: 7030 b000 8307 |0030: invoke-direct {v3, v8, v7}, Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener;.:(Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/NumberPicker$1;)V // method@00b0 │ │ -00465a: 5b83 4500 |0033: iput-object v3, v8, Lde/duenndns/gmdice/NumberPicker;.mNumberInputFilter:Landroid/text/InputFilter; // field@0045 │ │ -00465e: 1403 0900 067f |0035: const v3, #float 1.78117e+38 // #7f060009 │ │ -004664: 6e20 c400 3800 |0038: invoke-virtual {v8, v3}, Lde/duenndns/gmdice/NumberPicker;.findViewById:(I)Landroid/view/View; // method@00c4 │ │ -00466a: 0c03 |003b: move-result-object v3 │ │ -00466c: 1f03 4d00 |003c: check-cast v3, Lde/duenndns/gmdice/NumberPickerButton; // type@004d │ │ -004670: 5b83 4300 |003e: iput-object v3, v8, Lde/duenndns/gmdice/NumberPicker;.mIncrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@0043 │ │ -004674: 5483 4300 |0040: iget-object v3, v8, Lde/duenndns/gmdice/NumberPicker;.mIncrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@0043 │ │ -004678: 6e20 e500 8300 |0042: invoke-virtual {v3, v8}, Lde/duenndns/gmdice/NumberPickerButton;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@00e5 │ │ -00467e: 5483 4300 |0045: iget-object v3, v8, Lde/duenndns/gmdice/NumberPicker;.mIncrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@0043 │ │ -004682: 6e20 e600 8300 |0047: invoke-virtual {v3, v8}, Lde/duenndns/gmdice/NumberPickerButton;.setOnLongClickListener:(Landroid/view/View$OnLongClickListener;)V // method@00e6 │ │ -004688: 5483 4300 |004a: iget-object v3, v8, Lde/duenndns/gmdice/NumberPicker;.mIncrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@0043 │ │ -00468c: 6e20 e400 8300 |004c: invoke-virtual {v3, v8}, Lde/duenndns/gmdice/NumberPickerButton;.setNumberPicker:(Lde/duenndns/gmdice/NumberPicker;)V // method@00e4 │ │ -004692: 1403 0b00 067f |004f: const v3, #float 1.78117e+38 // #7f06000b │ │ -004698: 6e20 c400 3800 |0052: invoke-virtual {v8, v3}, Lde/duenndns/gmdice/NumberPicker;.findViewById:(I)Landroid/view/View; // method@00c4 │ │ -00469e: 0c03 |0055: move-result-object v3 │ │ -0046a0: 1f03 4d00 |0056: check-cast v3, Lde/duenndns/gmdice/NumberPickerButton; // type@004d │ │ -0046a4: 5b83 3d00 |0058: iput-object v3, v8, Lde/duenndns/gmdice/NumberPicker;.mDecrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@003d │ │ -0046a8: 5483 3d00 |005a: iget-object v3, v8, Lde/duenndns/gmdice/NumberPicker;.mDecrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@003d │ │ -0046ac: 6e20 e500 8300 |005c: invoke-virtual {v3, v8}, Lde/duenndns/gmdice/NumberPickerButton;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@00e5 │ │ -0046b2: 5483 3d00 |005f: iget-object v3, v8, Lde/duenndns/gmdice/NumberPicker;.mDecrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@003d │ │ -0046b6: 6e20 e600 8300 |0061: invoke-virtual {v3, v8}, Lde/duenndns/gmdice/NumberPickerButton;.setOnLongClickListener:(Landroid/view/View$OnLongClickListener;)V // method@00e6 │ │ -0046bc: 5483 3d00 |0064: iget-object v3, v8, Lde/duenndns/gmdice/NumberPicker;.mDecrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@003d │ │ -0046c0: 6e20 e400 8300 |0066: invoke-virtual {v3, v8}, Lde/duenndns/gmdice/NumberPickerButton;.setNumberPicker:(Lde/duenndns/gmdice/NumberPicker;)V // method@00e4 │ │ -0046c6: 1403 0a00 067f |0069: const v3, #float 1.78117e+38 // #7f06000a │ │ -0046cc: 6e20 c400 3800 |006c: invoke-virtual {v8, v3}, Lde/duenndns/gmdice/NumberPicker;.findViewById:(I)Landroid/view/View; // method@00c4 │ │ -0046d2: 0c03 |006f: move-result-object v3 │ │ -0046d4: 1f03 2d00 |0070: check-cast v3, Landroid/widget/EditText; // type@002d │ │ -0046d8: 5b83 4a00 |0072: iput-object v3, v8, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ -0046dc: 5483 4a00 |0074: iget-object v3, v8, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ -0046e0: 6e20 4a00 8300 |0076: invoke-virtual {v3, v8}, Landroid/widget/EditText;.setOnFocusChangeListener:(Landroid/view/View$OnFocusChangeListener;)V // method@004a │ │ -0046e6: 5483 4a00 |0079: iget-object v3, v8, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ -0046ea: 1304 0210 |007b: const/16 v4, #int 4098 // #1002 │ │ -0046ee: 6e20 4b00 4300 |007d: invoke-virtual {v3, v4}, Landroid/widget/EditText;.setRawInputType:(I)V // method@004b │ │ -0046f4: 6e10 c800 0800 |0080: invoke-virtual {v8}, Lde/duenndns/gmdice/NumberPicker;.isEnabled:()Z // method@00c8 │ │ -0046fa: 0a03 |0083: move-result v3 │ │ -0046fc: 3903 0500 |0084: if-nez v3, 0089 // +0005 │ │ -004700: 6e20 cf00 5800 |0086: invoke-virtual {v8, v5}, Lde/duenndns/gmdice/NumberPicker;.setEnabled:(Z)V // method@00cf │ │ -004706: 6203 8d00 |0089: sget-object v3, Lde/duenndns/gmdice/R$styleable;.numberpicker:[I // field@008d │ │ -00470a: 6e30 1500 a903 |008b: invoke-virtual {v9, v10, v3}, Landroid/content/Context;.obtainStyledAttributes:(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray; // method@0015 │ │ -004710: 0c00 |008e: move-result-object v0 │ │ -004712: 6e30 1f00 5005 |008f: invoke-virtual {v0, v5, v5}, Landroid/content/res/TypedArray;.getInt:(II)I // method@001f │ │ -004718: 0a03 |0092: move-result v3 │ │ -00471a: 5983 4900 |0093: iput v3, v8, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ -00471e: 1303 c800 |0095: const/16 v3, #int 200 // #c8 │ │ -004722: 6e30 1f00 6003 |0097: invoke-virtual {v0, v6, v3}, Landroid/content/res/TypedArray;.getInt:(II)I // method@001f │ │ -004728: 0a03 |009a: move-result v3 │ │ -00472a: 5983 3f00 |009b: iput v3, v8, Lde/duenndns/gmdice/NumberPicker;.mEnd:I // field@003f │ │ -00472e: 1243 |009d: const/4 v3, #int 4 // #4 │ │ -004730: 6e30 1e00 3006 |009e: invoke-virtual {v0, v3, v6}, Landroid/content/res/TypedArray;.getBoolean:(IZ)Z // method@001e │ │ -004736: 0a03 |00a1: move-result v3 │ │ -004738: 5c83 4b00 |00a2: iput-boolean v3, v8, Lde/duenndns/gmdice/NumberPicker;.mWrap:Z // field@004b │ │ -00473c: 1223 |00a4: const/4 v3, #int 2 // #2 │ │ -00473e: 6e30 1f00 3005 |00a5: invoke-virtual {v0, v3, v5}, Landroid/content/res/TypedArray;.getInt:(II)I // method@001f │ │ -004744: 0a03 |00a8: move-result v3 │ │ -004746: 5983 3b00 |00a9: iput v3, v8, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -00474a: 5283 4900 |00ab: iget v3, v8, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ -00474e: 5284 3b00 |00ad: iget v4, v8, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -004752: 5285 3f00 |00af: iget v5, v8, Lde/duenndns/gmdice/NumberPicker;.mEnd:I // field@003f │ │ -004756: 7120 0401 5400 |00b1: invoke-static {v4, v5}, Ljava/lang/Math;.min:(II)I // method@0104 │ │ -00475c: 0a04 |00b4: move-result v4 │ │ -00475e: 7120 0301 4300 |00b5: invoke-static {v3, v4}, Ljava/lang/Math;.max:(II)I // method@0103 │ │ -004764: 0a03 |00b8: move-result v3 │ │ -004766: 5983 3b00 |00b9: iput v3, v8, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -00476a: 5483 4a00 |00bb: iget-object v3, v8, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ -00476e: 2204 6400 |00bd: new-instance v4, Ljava/lang/StringBuilder; // type@0064 │ │ -004772: 7010 1001 0400 |00bf: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ -004778: 1a05 0000 |00c2: const-string v5, "" // string@0000 │ │ -00477c: 6e20 1301 5400 |00c4: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -004782: 0c04 |00c7: move-result-object v4 │ │ -004784: 5285 3b00 |00c8: iget v5, v8, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -004788: 6e20 1101 5400 |00ca: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0111 │ │ -00478e: 0c04 |00cd: move-result-object v4 │ │ -004790: 6e10 1601 0400 |00ce: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ -004796: 0c04 |00d1: move-result-object v4 │ │ -004798: 6e20 4d00 4300 |00d2: invoke-virtual {v3, v4}, Landroid/widget/EditText;.setText:(Ljava/lang/CharSequence;)V // method@004d │ │ -00479e: 0e00 |00d5: return-void │ │ +004758: |[004758] de.duenndns.gmdice.NumberPicker.:(Landroid/content/Context;Landroid/util/AttributeSet;I)V │ │ +004768: 1208 |0000: const/4 v8, #int 0 // #0 │ │ +00476a: 1217 |0001: const/4 v7, #int 1 // #1 │ │ +00476c: 1206 |0002: const/4 v6, #int 0 // #0 │ │ +00476e: 7030 5400 a90b |0003: invoke-direct {v9, v10, v11}, Landroid/widget/LinearLayout;.:(Landroid/content/Context;Landroid/util/AttributeSet;)V // method@0054 │ │ +004774: 2203 4600 |0006: new-instance v3, Lde/duenndns/gmdice/NumberPicker$2; // type@0046 │ │ +004778: 7020 a900 9300 |0008: invoke-direct {v3, v9}, Lde/duenndns/gmdice/NumberPicker$2;.:(Lde/duenndns/gmdice/NumberPicker;)V // method@00a9 │ │ +00477e: 5b93 4700 |000b: iput-object v3, v9, Lde/duenndns/gmdice/NumberPicker;.mRunnable:Ljava/lang/Runnable; // field@0047 │ │ +004782: 1604 2c01 |000d: const-wide/16 v4, #int 300 // #12c │ │ +004786: 5a94 4800 |000f: iput-wide v4, v9, Lde/duenndns/gmdice/NumberPicker;.mSpeed:J // field@0048 │ │ +00478a: 6e20 d200 7900 |0011: invoke-virtual {v9, v7}, Lde/duenndns/gmdice/NumberPicker;.setOrientation:(I)V // method@00d2 │ │ +004790: 1a03 8301 |0014: const-string v3, "layout_inflater" // string@0183 │ │ +004794: 6e20 1400 3a00 |0016: invoke-virtual {v10, v3}, Landroid/content/Context;.getSystemService:(Ljava/lang/String;)Ljava/lang/Object; // method@0014 │ │ +00479a: 0c01 |0019: move-result-object v1 │ │ +00479c: 1f01 1f00 |001a: check-cast v1, Landroid/view/LayoutInflater; // type@001f │ │ +0047a0: 1403 0200 037f |001c: const v3, #float 1.74129e+38 // #7f030002 │ │ +0047a6: 6e40 2f00 3179 |001f: invoke-virtual {v1, v3, v9, v7}, Landroid/view/LayoutInflater;.inflate:(ILandroid/view/ViewGroup;Z)Landroid/view/View; // method@002f │ │ +0047ac: 2203 1500 |0022: new-instance v3, Landroid/os/Handler; // type@0015 │ │ +0047b0: 7010 2400 0300 |0024: invoke-direct {v3}, Landroid/os/Handler;.:()V // method@0024 │ │ +0047b6: 5b93 4100 |0027: iput-object v3, v9, Lde/duenndns/gmdice/NumberPicker;.mHandler:Landroid/os/Handler; // field@0041 │ │ +0047ba: 2202 4800 |0029: new-instance v2, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter; // type@0048 │ │ +0047be: 7030 ad00 9208 |002b: invoke-direct {v2, v9, v8}, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;.:(Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/NumberPicker$1;)V // method@00ad │ │ +0047c4: 2203 4900 |002e: new-instance v3, Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener; // type@0049 │ │ +0047c8: 7030 b000 9308 |0030: invoke-direct {v3, v9, v8}, Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener;.:(Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/NumberPicker$1;)V // method@00b0 │ │ +0047ce: 5b93 4500 |0033: iput-object v3, v9, Lde/duenndns/gmdice/NumberPicker;.mNumberInputFilter:Landroid/text/InputFilter; // field@0045 │ │ +0047d2: 1403 0900 067f |0035: const v3, #float 1.78117e+38 // #7f060009 │ │ +0047d8: 6e20 c400 3900 |0038: invoke-virtual {v9, v3}, Lde/duenndns/gmdice/NumberPicker;.findViewById:(I)Landroid/view/View; // method@00c4 │ │ +0047de: 0c03 |003b: move-result-object v3 │ │ +0047e0: 1f03 4c00 |003c: check-cast v3, Lde/duenndns/gmdice/NumberPickerButton; // type@004c │ │ +0047e4: 5b93 4300 |003e: iput-object v3, v9, Lde/duenndns/gmdice/NumberPicker;.mIncrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@0043 │ │ +0047e8: 5493 4300 |0040: iget-object v3, v9, Lde/duenndns/gmdice/NumberPicker;.mIncrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@0043 │ │ +0047ec: 6e20 e500 9300 |0042: invoke-virtual {v3, v9}, Lde/duenndns/gmdice/NumberPickerButton;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@00e5 │ │ +0047f2: 5493 4300 |0045: iget-object v3, v9, Lde/duenndns/gmdice/NumberPicker;.mIncrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@0043 │ │ +0047f6: 6e20 e600 9300 |0047: invoke-virtual {v3, v9}, Lde/duenndns/gmdice/NumberPickerButton;.setOnLongClickListener:(Landroid/view/View$OnLongClickListener;)V // method@00e6 │ │ +0047fc: 5493 4300 |004a: iget-object v3, v9, Lde/duenndns/gmdice/NumberPicker;.mIncrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@0043 │ │ +004800: 6e20 e400 9300 |004c: invoke-virtual {v3, v9}, Lde/duenndns/gmdice/NumberPickerButton;.setNumberPicker:(Lde/duenndns/gmdice/NumberPicker;)V // method@00e4 │ │ +004806: 1403 0b00 067f |004f: const v3, #float 1.78117e+38 // #7f06000b │ │ +00480c: 6e20 c400 3900 |0052: invoke-virtual {v9, v3}, Lde/duenndns/gmdice/NumberPicker;.findViewById:(I)Landroid/view/View; // method@00c4 │ │ +004812: 0c03 |0055: move-result-object v3 │ │ +004814: 1f03 4c00 |0056: check-cast v3, Lde/duenndns/gmdice/NumberPickerButton; // type@004c │ │ +004818: 5b93 3d00 |0058: iput-object v3, v9, Lde/duenndns/gmdice/NumberPicker;.mDecrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@003d │ │ +00481c: 5493 3d00 |005a: iget-object v3, v9, Lde/duenndns/gmdice/NumberPicker;.mDecrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@003d │ │ +004820: 6e20 e500 9300 |005c: invoke-virtual {v3, v9}, Lde/duenndns/gmdice/NumberPickerButton;.setOnClickListener:(Landroid/view/View$OnClickListener;)V // method@00e5 │ │ +004826: 5493 3d00 |005f: iget-object v3, v9, Lde/duenndns/gmdice/NumberPicker;.mDecrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@003d │ │ +00482a: 6e20 e600 9300 |0061: invoke-virtual {v3, v9}, Lde/duenndns/gmdice/NumberPickerButton;.setOnLongClickListener:(Landroid/view/View$OnLongClickListener;)V // method@00e6 │ │ +004830: 5493 3d00 |0064: iget-object v3, v9, Lde/duenndns/gmdice/NumberPicker;.mDecrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@003d │ │ +004834: 6e20 e400 9300 |0066: invoke-virtual {v3, v9}, Lde/duenndns/gmdice/NumberPickerButton;.setNumberPicker:(Lde/duenndns/gmdice/NumberPicker;)V // method@00e4 │ │ +00483a: 1403 0a00 067f |0069: const v3, #float 1.78117e+38 // #7f06000a │ │ +004840: 6e20 c400 3900 |006c: invoke-virtual {v9, v3}, Lde/duenndns/gmdice/NumberPicker;.findViewById:(I)Landroid/view/View; // method@00c4 │ │ +004846: 0c03 |006f: move-result-object v3 │ │ +004848: 1f03 2c00 |0070: check-cast v3, Landroid/widget/EditText; // type@002c │ │ +00484c: 5b93 4a00 |0072: iput-object v3, v9, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ +004850: 5493 4a00 |0074: iget-object v3, v9, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ +004854: 6e20 4a00 9300 |0076: invoke-virtual {v3, v9}, Landroid/widget/EditText;.setOnFocusChangeListener:(Landroid/view/View$OnFocusChangeListener;)V // method@004a │ │ +00485a: 5493 4a00 |0079: iget-object v3, v9, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ +00485e: 1304 0210 |007b: const/16 v4, #int 4098 // #1002 │ │ +004862: 6e20 4b00 4300 |007d: invoke-virtual {v3, v4}, Landroid/widget/EditText;.setRawInputType:(I)V // method@004b │ │ +004868: 6e10 c800 0900 |0080: invoke-virtual {v9}, Lde/duenndns/gmdice/NumberPicker;.isEnabled:()Z // method@00c8 │ │ +00486e: 0a03 |0083: move-result v3 │ │ +004870: 3903 0500 |0084: if-nez v3, 0089 // +0005 │ │ +004874: 6e20 cf00 6900 |0086: invoke-virtual {v9, v6}, Lde/duenndns/gmdice/NumberPicker;.setEnabled:(Z)V // method@00cf │ │ +00487a: 6203 8d00 |0089: sget-object v3, Lde/duenndns/gmdice/R$styleable;.numberpicker:[I // field@008d │ │ +00487e: 6e30 1500 ba03 |008b: invoke-virtual {v10, v11, v3}, Landroid/content/Context;.obtainStyledAttributes:(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray; // method@0015 │ │ +004884: 0c00 |008e: move-result-object v0 │ │ +004886: 6e30 1f00 6006 |008f: invoke-virtual {v0, v6, v6}, Landroid/content/res/TypedArray;.getInt:(II)I // method@001f │ │ +00488c: 0a03 |0092: move-result v3 │ │ +00488e: 5993 4900 |0093: iput v3, v9, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ +004892: 1303 c800 |0095: const/16 v3, #int 200 // #c8 │ │ +004896: 6e30 1f00 7003 |0097: invoke-virtual {v0, v7, v3}, Landroid/content/res/TypedArray;.getInt:(II)I // method@001f │ │ +00489c: 0a03 |009a: move-result v3 │ │ +00489e: 5993 3f00 |009b: iput v3, v9, Lde/duenndns/gmdice/NumberPicker;.mEnd:I // field@003f │ │ +0048a2: 1243 |009d: const/4 v3, #int 4 // #4 │ │ +0048a4: 6e30 1e00 3007 |009e: invoke-virtual {v0, v3, v7}, Landroid/content/res/TypedArray;.getBoolean:(IZ)Z // method@001e │ │ +0048aa: 0a03 |00a1: move-result v3 │ │ +0048ac: 5c93 4b00 |00a2: iput-boolean v3, v9, Lde/duenndns/gmdice/NumberPicker;.mWrap:Z // field@004b │ │ +0048b0: 1223 |00a4: const/4 v3, #int 2 // #2 │ │ +0048b2: 6e30 1f00 3006 |00a5: invoke-virtual {v0, v3, v6}, Landroid/content/res/TypedArray;.getInt:(II)I // method@001f │ │ +0048b8: 0a03 |00a8: move-result v3 │ │ +0048ba: 5993 3b00 |00a9: iput v3, v9, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +0048be: 5293 4900 |00ab: iget v3, v9, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ +0048c2: 5294 3b00 |00ad: iget v4, v9, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +0048c6: 5295 3f00 |00af: iget v5, v9, Lde/duenndns/gmdice/NumberPicker;.mEnd:I // field@003f │ │ +0048ca: 7120 0401 5400 |00b1: invoke-static {v4, v5}, Ljava/lang/Math;.min:(II)I // method@0104 │ │ +0048d0: 0a04 |00b4: move-result v4 │ │ +0048d2: 7120 0301 4300 |00b5: invoke-static {v3, v4}, Ljava/lang/Math;.max:(II)I // method@0103 │ │ +0048d8: 0a03 |00b8: move-result v3 │ │ +0048da: 5993 3b00 |00b9: iput v3, v9, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +0048de: 5493 4a00 |00bb: iget-object v3, v9, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ +0048e2: 2204 6300 |00bd: new-instance v4, Ljava/lang/StringBuilder; // type@0063 │ │ +0048e6: 7010 1001 0400 |00bf: invoke-direct {v4}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ +0048ec: 1a05 0000 |00c2: const-string v5, "" // string@0000 │ │ +0048f0: 6e20 1301 5400 |00c4: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +0048f6: 0c04 |00c7: move-result-object v4 │ │ +0048f8: 5295 3b00 |00c8: iget v5, v9, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +0048fc: 6e20 1101 5400 |00ca: invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0111 │ │ +004902: 0c04 |00cd: move-result-object v4 │ │ +004904: 6e10 1601 0400 |00ce: invoke-virtual {v4}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ +00490a: 0c04 |00d1: move-result-object v4 │ │ +00490c: 6e20 4d00 4300 |00d2: invoke-virtual {v3, v4}, Landroid/widget/EditText;.setText:(Ljava/lang/CharSequence;)V // method@004d │ │ +004912: 0e00 |00d5: return-void │ │ catches : (none) │ │ positions : │ │ 0x0003 line=120 │ │ 0x0006 line=82 │ │ 0x000d line=105 │ │ 0x0011 line=121 │ │ 0x0014 line=122 │ │ @@ -3296,31 +3315,31 @@ │ │ 0x00ab line=150 │ │ 0x00bb line=151 │ │ 0x00d5 line=152 │ │ locals : │ │ 0x008f - 0x00d6 reg=0 a Landroid/content/res/TypedArray; │ │ 0x001c - 0x00d6 reg=1 inflater Landroid/view/LayoutInflater; │ │ 0x002e - 0x00d6 reg=2 inputFilter Landroid/text/InputFilter; │ │ - 0x0000 - 0x00d6 reg=8 this Lde/duenndns/gmdice/NumberPicker; │ │ - 0x0000 - 0x00d6 reg=9 context Landroid/content/Context; │ │ - 0x0000 - 0x00d6 reg=10 attrs Landroid/util/AttributeSet; │ │ - 0x0000 - 0x00d6 reg=11 defStyle I │ │ + 0x0000 - 0x00d6 reg=9 this Lde/duenndns/gmdice/NumberPicker; │ │ + 0x0000 - 0x00d6 reg=10 context Landroid/content/Context; │ │ + 0x0000 - 0x00d6 reg=11 attrs Landroid/util/AttributeSet; │ │ + 0x0000 - 0x00d6 reg=12 defStyle I │ │ │ │ #4 : (in Lde/duenndns/gmdice/NumberPicker;) │ │ name : 'access$000' │ │ type : '(Lde/duenndns/gmdice/NumberPicker;)Z' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -0047a0: |[0047a0] de.duenndns.gmdice.NumberPicker.access$000:(Lde/duenndns/gmdice/NumberPicker;)Z │ │ -0047b0: 5510 4200 |0000: iget-boolean v0, v1, Lde/duenndns/gmdice/NumberPicker;.mIncrement:Z // field@0042 │ │ -0047b4: 0f00 |0002: return v0 │ │ +004914: |[004914] de.duenndns.gmdice.NumberPicker.access$000:(Lde/duenndns/gmdice/NumberPicker;)Z │ │ +004924: 5510 4200 |0000: iget-boolean v0, v1, Lde/duenndns/gmdice/NumberPicker;.mIncrement:Z // field@0042 │ │ +004928: 0f00 |0002: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ locals : │ │ 0x0000 - 0x0003 reg=1 x0 Lde/duenndns/gmdice/NumberPicker; │ │ │ │ #5 : (in Lde/duenndns/gmdice/NumberPicker;) │ │ @@ -3328,17 +3347,17 @@ │ │ type : '(Lde/duenndns/gmdice/NumberPicker;)J' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -0047b8: |[0047b8] de.duenndns.gmdice.NumberPicker.access$100:(Lde/duenndns/gmdice/NumberPicker;)J │ │ -0047c8: 5320 4800 |0000: iget-wide v0, v2, Lde/duenndns/gmdice/NumberPicker;.mSpeed:J // field@0048 │ │ -0047cc: 1000 |0002: return-wide v0 │ │ +00492c: |[00492c] de.duenndns.gmdice.NumberPicker.access$100:(Lde/duenndns/gmdice/NumberPicker;)J │ │ +00493c: 5320 4800 |0000: iget-wide v0, v2, Lde/duenndns/gmdice/NumberPicker;.mSpeed:J // field@0048 │ │ +004940: 1000 |0002: return-wide v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ locals : │ │ 0x0000 - 0x0003 reg=2 x0 Lde/duenndns/gmdice/NumberPicker; │ │ │ │ #6 : (in Lde/duenndns/gmdice/NumberPicker;) │ │ @@ -3346,17 +3365,17 @@ │ │ type : '(Lde/duenndns/gmdice/NumberPicker;)Landroid/os/Handler;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -0047d0: |[0047d0] de.duenndns.gmdice.NumberPicker.access$200:(Lde/duenndns/gmdice/NumberPicker;)Landroid/os/Handler; │ │ -0047e0: 5410 4100 |0000: iget-object v0, v1, Lde/duenndns/gmdice/NumberPicker;.mHandler:Landroid/os/Handler; // field@0041 │ │ -0047e4: 1100 |0002: return-object v0 │ │ +004944: |[004944] de.duenndns.gmdice.NumberPicker.access$200:(Lde/duenndns/gmdice/NumberPicker;)Landroid/os/Handler; │ │ +004954: 5410 4100 |0000: iget-object v0, v1, Lde/duenndns/gmdice/NumberPicker;.mHandler:Landroid/os/Handler; // field@0041 │ │ +004958: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ locals : │ │ 0x0000 - 0x0003 reg=1 x0 Lde/duenndns/gmdice/NumberPicker; │ │ │ │ #7 : (in Lde/duenndns/gmdice/NumberPicker;) │ │ @@ -3364,17 +3383,17 @@ │ │ type : '(Lde/duenndns/gmdice/NumberPicker;)Z' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -0047e8: |[0047e8] de.duenndns.gmdice.NumberPicker.access$300:(Lde/duenndns/gmdice/NumberPicker;)Z │ │ -0047f8: 5510 3c00 |0000: iget-boolean v0, v1, Lde/duenndns/gmdice/NumberPicker;.mDecrement:Z // field@003c │ │ -0047fc: 0f00 |0002: return v0 │ │ +00495c: |[00495c] de.duenndns.gmdice.NumberPicker.access$300:(Lde/duenndns/gmdice/NumberPicker;)Z │ │ +00496c: 5510 3c00 |0000: iget-boolean v0, v1, Lde/duenndns/gmdice/NumberPicker;.mDecrement:Z // field@003c │ │ +004970: 0f00 |0002: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ locals : │ │ 0x0000 - 0x0003 reg=1 x0 Lde/duenndns/gmdice/NumberPicker; │ │ │ │ #8 : (in Lde/duenndns/gmdice/NumberPicker;) │ │ @@ -3382,17 +3401,17 @@ │ │ type : '(Lde/duenndns/gmdice/NumberPicker;)[Ljava/lang/String;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -004800: |[004800] de.duenndns.gmdice.NumberPicker.access$600:(Lde/duenndns/gmdice/NumberPicker;)[Ljava/lang/String; │ │ -004810: 5410 3e00 |0000: iget-object v0, v1, Lde/duenndns/gmdice/NumberPicker;.mDisplayedValues:[Ljava/lang/String; // field@003e │ │ -004814: 1100 |0002: return-object v0 │ │ +004974: |[004974] de.duenndns.gmdice.NumberPicker.access$600:(Lde/duenndns/gmdice/NumberPicker;)[Ljava/lang/String; │ │ +004984: 5410 3e00 |0000: iget-object v0, v1, Lde/duenndns/gmdice/NumberPicker;.mDisplayedValues:[Ljava/lang/String; // field@003e │ │ +004988: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ locals : │ │ 0x0000 - 0x0003 reg=1 x0 Lde/duenndns/gmdice/NumberPicker; │ │ │ │ #9 : (in Lde/duenndns/gmdice/NumberPicker;) │ │ @@ -3400,17 +3419,17 @@ │ │ type : '(Lde/duenndns/gmdice/NumberPicker;)Landroid/text/InputFilter;' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -004818: |[004818] de.duenndns.gmdice.NumberPicker.access$700:(Lde/duenndns/gmdice/NumberPicker;)Landroid/text/InputFilter; │ │ -004828: 5410 4500 |0000: iget-object v0, v1, Lde/duenndns/gmdice/NumberPicker;.mNumberInputFilter:Landroid/text/InputFilter; // field@0045 │ │ -00482c: 1100 |0002: return-object v0 │ │ +00498c: |[00498c] de.duenndns.gmdice.NumberPicker.access$700:(Lde/duenndns/gmdice/NumberPicker;)Landroid/text/InputFilter; │ │ +00499c: 5410 4500 |0000: iget-object v0, v1, Lde/duenndns/gmdice/NumberPicker;.mNumberInputFilter:Landroid/text/InputFilter; // field@0045 │ │ +0049a0: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ locals : │ │ 0x0000 - 0x0003 reg=1 x0 Lde/duenndns/gmdice/NumberPicker; │ │ │ │ #10 : (in Lde/duenndns/gmdice/NumberPicker;) │ │ @@ -3418,35 +3437,35 @@ │ │ type : '()[C' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -004830: |[004830] de.duenndns.gmdice.NumberPicker.access$800:()[C │ │ -004840: 6200 3800 |0000: sget-object v0, Lde/duenndns/gmdice/NumberPicker;.DIGIT_CHARACTERS:[C // field@0038 │ │ -004844: 1100 |0002: return-object v0 │ │ +0049a4: |[0049a4] de.duenndns.gmdice.NumberPicker.access$800:()[C │ │ +0049b4: 6200 3800 |0000: sget-object v0, Lde/duenndns/gmdice/NumberPicker;.DIGIT_CHARACTERS:[C // field@0038 │ │ +0049b8: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ locals : │ │ │ │ #11 : (in Lde/duenndns/gmdice/NumberPicker;) │ │ name : 'access$900' │ │ type : '(Lde/duenndns/gmdice/NumberPicker;Ljava/lang/String;)I' │ │ access : 0x1008 (STATIC SYNTHETIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 5 16-bit code units │ │ -004848: |[004848] de.duenndns.gmdice.NumberPicker.access$900:(Lde/duenndns/gmdice/NumberPicker;Ljava/lang/String;)I │ │ -004858: 7020 c700 2100 |0000: invoke-direct {v1, v2}, Lde/duenndns/gmdice/NumberPicker;.getSelectedPos:(Ljava/lang/String;)I // method@00c7 │ │ -00485e: 0a00 |0003: move-result v0 │ │ -004860: 0f00 |0004: return v0 │ │ +0049bc: |[0049bc] de.duenndns.gmdice.NumberPicker.access$900:(Lde/duenndns/gmdice/NumberPicker;Ljava/lang/String;)I │ │ +0049cc: 7020 c700 2100 |0000: invoke-direct {v1, v2}, Lde/duenndns/gmdice/NumberPicker;.getSelectedPos:(Ljava/lang/String;)I // method@00c7 │ │ +0049d2: 0a00 |0003: move-result v0 │ │ +0049d4: 0f00 |0004: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ locals : │ │ 0x0000 - 0x0005 reg=1 x0 Lde/duenndns/gmdice/NumberPicker; │ │ 0x0000 - 0x0005 reg=2 x1 Ljava/lang/String; │ │ │ │ @@ -3455,70 +3474,73 @@ │ │ type : '(I)Ljava/lang/String;' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 16 16-bit code units │ │ -004864: |[004864] de.duenndns.gmdice.NumberPicker.formatNumber:(I)Ljava/lang/String; │ │ -004874: 5410 4000 |0000: iget-object v0, v1, Lde/duenndns/gmdice/NumberPicker;.mFormatter:Lde/duenndns/gmdice/NumberPicker$Formatter; // field@0040 │ │ -004878: 3800 0900 |0002: if-eqz v0, 000b // +0009 │ │ -00487c: 5410 4000 |0004: iget-object v0, v1, Lde/duenndns/gmdice/NumberPicker;.mFormatter:Lde/duenndns/gmdice/NumberPicker$Formatter; // field@0040 │ │ -004880: 7220 ab00 2000 |0006: invoke-interface {v0, v2}, Lde/duenndns/gmdice/NumberPicker$Formatter;.toString:(I)Ljava/lang/String; // method@00ab │ │ -004886: 0c00 |0009: move-result-object v0 │ │ -004888: 1100 |000a: return-object v0 │ │ -00488a: 7110 0e01 0200 |000b: invoke-static {v2}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@010e │ │ -004890: 0c00 |000e: move-result-object v0 │ │ -004892: 28fb |000f: goto 000a // -0005 │ │ +0049d8: |[0049d8] de.duenndns.gmdice.NumberPicker.formatNumber:(I)Ljava/lang/String; │ │ +0049e8: 5410 4000 |0000: iget-object v0, v1, Lde/duenndns/gmdice/NumberPicker;.mFormatter:Lde/duenndns/gmdice/NumberPicker$Formatter; // field@0040 │ │ +0049ec: 3800 0900 |0002: if-eqz v0, 000b // +0009 │ │ +0049f0: 5410 4000 |0004: iget-object v0, v1, Lde/duenndns/gmdice/NumberPicker;.mFormatter:Lde/duenndns/gmdice/NumberPicker$Formatter; // field@0040 │ │ +0049f4: 7220 ab00 2000 |0006: invoke-interface {v0, v2}, Lde/duenndns/gmdice/NumberPicker$Formatter;.toString:(I)Ljava/lang/String; // method@00ab │ │ +0049fa: 0c00 |0009: move-result-object v0 │ │ +0049fc: 1100 |000a: return-object v0 │ │ +0049fe: 7110 0e01 0200 |000b: invoke-static {v2}, Ljava/lang/String;.valueOf:(I)Ljava/lang/String; // method@010e │ │ +004a04: 0c00 |000e: move-result-object v0 │ │ +004a06: 28fb |000f: goto 000a // -0005 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=243 │ │ + 0x0006 line=244 │ │ + 0x000a line=243 │ │ + 0x000b line=245 │ │ locals : │ │ 0x0000 - 0x0010 reg=1 this Lde/duenndns/gmdice/NumberPicker; │ │ 0x0000 - 0x0010 reg=2 value I │ │ │ │ #13 : (in Lde/duenndns/gmdice/NumberPicker;) │ │ name : 'getSelectedPos' │ │ type : '(Ljava/lang/String;)I' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 49 16-bit code units │ │ -004894: |[004894] de.duenndns.gmdice.NumberPicker.getSelectedPos:(Ljava/lang/String;)I │ │ -0048a4: 5421 3e00 |0000: iget-object v1, v2, Lde/duenndns/gmdice/NumberPicker;.mDisplayedValues:[Ljava/lang/String; // field@003e │ │ -0048a8: 3901 0700 |0002: if-nez v1, 0009 // +0007 │ │ -0048ac: 7110 0101 0300 |0004: invoke-static {v3}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@0101 │ │ -0048b2: 0a01 |0007: move-result v1 │ │ -0048b4: 0f01 |0008: return v1 │ │ -0048b6: 1200 |0009: const/4 v0, #int 0 // #0 │ │ -0048b8: 5421 3e00 |000a: iget-object v1, v2, Lde/duenndns/gmdice/NumberPicker;.mDisplayedValues:[Ljava/lang/String; // field@003e │ │ -0048bc: 2111 |000c: array-length v1, v1 │ │ -0048be: 3510 1b00 |000d: if-ge v0, v1, 0028 // +001b │ │ -0048c2: 6e10 0d01 0300 |000f: invoke-virtual {v3}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@010d │ │ -0048c8: 0c03 |0012: move-result-object v3 │ │ -0048ca: 5421 3e00 |0013: iget-object v1, v2, Lde/duenndns/gmdice/NumberPicker;.mDisplayedValues:[Ljava/lang/String; // field@003e │ │ -0048ce: 4601 0100 |0015: aget-object v1, v1, v0 │ │ -0048d2: 6e10 0d01 0100 |0017: invoke-virtual {v1}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@010d │ │ -0048d8: 0c01 |001a: move-result-object v1 │ │ -0048da: 6e20 0c01 3100 |001b: invoke-virtual {v1, v3}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@010c │ │ -0048e0: 0a01 |001e: move-result v1 │ │ -0048e2: 3801 0600 |001f: if-eqz v1, 0025 // +0006 │ │ -0048e6: 5221 4900 |0021: iget v1, v2, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ -0048ea: b001 |0023: add-int/2addr v1, v0 │ │ -0048ec: 28e4 |0024: goto 0008 // -001c │ │ -0048ee: d800 0001 |0025: add-int/lit8 v0, v0, #int 1 // #01 │ │ -0048f2: 28e3 |0027: goto 000a // -001d │ │ -0048f4: 7110 0101 0300 |0028: invoke-static {v3}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@0101 │ │ -0048fa: 0a01 |002b: move-result v1 │ │ -0048fc: 28dc |002c: goto 0008 // -0024 │ │ -0048fe: 0d01 |002d: move-exception v1 │ │ -004900: 5221 4900 |002e: iget v1, v2, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ -004904: 28d8 |0030: goto 0008 // -0028 │ │ +004a08: |[004a08] de.duenndns.gmdice.NumberPicker.getSelectedPos:(Ljava/lang/String;)I │ │ +004a18: 5421 3e00 |0000: iget-object v1, v2, Lde/duenndns/gmdice/NumberPicker;.mDisplayedValues:[Ljava/lang/String; // field@003e │ │ +004a1c: 3901 0700 |0002: if-nez v1, 0009 // +0007 │ │ +004a20: 7110 0101 0300 |0004: invoke-static {v3}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@0101 │ │ +004a26: 0a01 |0007: move-result v1 │ │ +004a28: 0f01 |0008: return v1 │ │ +004a2a: 1200 |0009: const/4 v0, #int 0 // #0 │ │ +004a2c: 5421 3e00 |000a: iget-object v1, v2, Lde/duenndns/gmdice/NumberPicker;.mDisplayedValues:[Ljava/lang/String; // field@003e │ │ +004a30: 2111 |000c: array-length v1, v1 │ │ +004a32: 3510 1b00 |000d: if-ge v0, v1, 0028 // +001b │ │ +004a36: 6e10 0d01 0300 |000f: invoke-virtual {v3}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@010d │ │ +004a3c: 0c03 |0012: move-result-object v3 │ │ +004a3e: 5421 3e00 |0013: iget-object v1, v2, Lde/duenndns/gmdice/NumberPicker;.mDisplayedValues:[Ljava/lang/String; // field@003e │ │ +004a42: 4601 0100 |0015: aget-object v1, v1, v0 │ │ +004a46: 6e10 0d01 0100 |0017: invoke-virtual {v1}, Ljava/lang/String;.toLowerCase:()Ljava/lang/String; // method@010d │ │ +004a4c: 0c01 |001a: move-result-object v1 │ │ +004a4e: 6e20 0c01 3100 |001b: invoke-virtual {v1, v3}, Ljava/lang/String;.startsWith:(Ljava/lang/String;)Z // method@010c │ │ +004a54: 0a01 |001e: move-result v1 │ │ +004a56: 3801 0600 |001f: if-eqz v1, 0025 // +0006 │ │ +004a5a: 5221 4900 |0021: iget v1, v2, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ +004a5e: b001 |0023: add-int/2addr v1, v0 │ │ +004a60: 28e4 |0024: goto 0008 // -001c │ │ +004a62: d800 0001 |0025: add-int/lit8 v0, v0, #int 1 // #01 │ │ +004a66: 28e3 |0027: goto 000a // -001d │ │ +004a68: 7110 0101 0300 |0028: invoke-static {v3}, Ljava/lang/Integer;.parseInt:(Ljava/lang/String;)I // method@0101 │ │ +004a6e: 0a01 |002b: move-result v1 │ │ +004a70: 28dc |002c: goto 0008 // -0024 │ │ +004a72: 0d01 |002d: move-exception v1 │ │ +004a74: 5221 4900 |002e: iget v1, v2, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ +004a78: 28d8 |0030: goto 0008 // -0028 │ │ catches : 1 │ │ 0x0028 - 0x002b │ │ Ljava/lang/NumberFormatException; -> 0x002d │ │ positions : │ │ 0x0000 line=420 │ │ 0x0004 line=421 │ │ 0x0008 line=442 │ │ @@ -3540,31 +3562,31 @@ │ │ type : '(Ljava/lang/CharSequence;)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 33 16-bit code units │ │ -004914: |[004914] de.duenndns.gmdice.NumberPicker.validateCurrentView:(Ljava/lang/CharSequence;)V │ │ -004924: 7210 ff00 0300 |0000: invoke-interface {v3}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@00ff │ │ -00492a: 0c01 |0003: move-result-object v1 │ │ -00492c: 7020 c700 1200 |0004: invoke-direct {v2, v1}, Lde/duenndns/gmdice/NumberPicker;.getSelectedPos:(Ljava/lang/String;)I // method@00c7 │ │ -004932: 0a00 |0007: move-result v0 │ │ -004934: 5221 4900 |0008: iget v1, v2, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ -004938: 3410 1300 |000a: if-lt v0, v1, 001d // +0013 │ │ -00493c: 5221 3f00 |000c: iget v1, v2, Lde/duenndns/gmdice/NumberPicker;.mEnd:I // field@003f │ │ -004940: 3610 0f00 |000e: if-gt v0, v1, 001d // +000f │ │ -004944: 5221 3b00 |0010: iget v1, v2, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -004948: 3201 0b00 |0012: if-eq v1, v0, 001d // +000b │ │ -00494c: 5221 3b00 |0014: iget v1, v2, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -004950: 5921 4600 |0016: iput v1, v2, Lde/duenndns/gmdice/NumberPicker;.mPrevious:I // field@0046 │ │ -004954: 5920 3b00 |0018: iput v0, v2, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -004958: 6e10 c900 0200 |001a: invoke-virtual {v2}, Lde/duenndns/gmdice/NumberPicker;.notifyChange:()V // method@00c9 │ │ -00495e: 6e10 d700 0200 |001d: invoke-virtual {v2}, Lde/duenndns/gmdice/NumberPicker;.updateView:()V // method@00d7 │ │ -004964: 0e00 |0020: return-void │ │ +004a88: |[004a88] de.duenndns.gmdice.NumberPicker.validateCurrentView:(Ljava/lang/CharSequence;)V │ │ +004a98: 7210 ff00 0300 |0000: invoke-interface {v3}, Ljava/lang/CharSequence;.toString:()Ljava/lang/String; // method@00ff │ │ +004a9e: 0c01 |0003: move-result-object v1 │ │ +004aa0: 7020 c700 1200 |0004: invoke-direct {v2, v1}, Lde/duenndns/gmdice/NumberPicker;.getSelectedPos:(Ljava/lang/String;)I // method@00c7 │ │ +004aa6: 0a00 |0007: move-result v0 │ │ +004aa8: 5221 4900 |0008: iget v1, v2, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ +004aac: 3410 1300 |000a: if-lt v0, v1, 001d // +0013 │ │ +004ab0: 5221 3f00 |000c: iget v1, v2, Lde/duenndns/gmdice/NumberPicker;.mEnd:I // field@003f │ │ +004ab4: 3610 0f00 |000e: if-gt v0, v1, 001d // +000f │ │ +004ab8: 5221 3b00 |0010: iget v1, v2, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +004abc: 3201 0b00 |0012: if-eq v1, v0, 001d // +000b │ │ +004ac0: 5221 3b00 |0014: iget v1, v2, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +004ac4: 5921 4600 |0016: iput v1, v2, Lde/duenndns/gmdice/NumberPicker;.mPrevious:I // field@0046 │ │ +004ac8: 5920 3b00 |0018: iput v0, v2, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +004acc: 6e10 c900 0200 |001a: invoke-virtual {v2}, Lde/duenndns/gmdice/NumberPicker;.notifyChange:()V // method@00c9 │ │ +004ad2: 6e10 d700 0200 |001d: invoke-virtual {v2}, Lde/duenndns/gmdice/NumberPicker;.updateView:()V // method@00d7 │ │ +004ad8: 0e00 |0020: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=283 │ │ 0x0008 line=284 │ │ 0x0010 line=285 │ │ 0x0014 line=286 │ │ 0x0018 line=287 │ │ @@ -3581,28 +3603,28 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 26 16-bit code units │ │ -004968: |[004968] de.duenndns.gmdice.NumberPicker.validateInput:(Landroid/view/View;)V │ │ -004978: 1f03 3400 |0000: check-cast v3, Landroid/widget/TextView; // type@0034 │ │ -00497c: 6e10 5b00 0300 |0002: invoke-virtual {v3}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@005b │ │ -004982: 0c01 |0005: move-result-object v1 │ │ -004984: 7110 0f01 0100 |0006: invoke-static {v1}, Ljava/lang/String;.valueOf:(Ljava/lang/Object;)Ljava/lang/String; // method@010f │ │ -00498a: 0c00 |0009: move-result-object v0 │ │ -00498c: 1a01 0000 |000a: const-string v1, "" // string@0000 │ │ -004990: 6e20 0701 0100 |000c: invoke-virtual {v1, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@0107 │ │ -004996: 0a01 |000f: move-result v1 │ │ -004998: 3801 0600 |0010: if-eqz v1, 0016 // +0006 │ │ -00499c: 6e10 d700 0200 |0012: invoke-virtual {v2}, Lde/duenndns/gmdice/NumberPicker;.updateView:()V // method@00d7 │ │ -0049a2: 0e00 |0015: return-void │ │ -0049a4: 7020 d800 0200 |0016: invoke-direct {v2, v0}, Lde/duenndns/gmdice/NumberPicker;.validateCurrentView:(Ljava/lang/CharSequence;)V // method@00d8 │ │ -0049aa: 28fc |0019: goto 0015 // -0004 │ │ +004adc: |[004adc] de.duenndns.gmdice.NumberPicker.validateInput:(Landroid/view/View;)V │ │ +004aec: 1f03 3300 |0000: check-cast v3, Landroid/widget/TextView; // type@0033 │ │ +004af0: 6e10 5b00 0300 |0002: invoke-virtual {v3}, Landroid/widget/TextView;.getText:()Ljava/lang/CharSequence; // method@005b │ │ +004af6: 0c01 |0005: move-result-object v1 │ │ +004af8: 7110 0f01 0100 |0006: invoke-static {v1}, Ljava/lang/String;.valueOf:(Ljava/lang/Object;)Ljava/lang/String; // method@010f │ │ +004afe: 0c00 |0009: move-result-object v0 │ │ +004b00: 1a01 0000 |000a: const-string v1, "" // string@0000 │ │ +004b04: 6e20 0701 0100 |000c: invoke-virtual {v1, v0}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@0107 │ │ +004b0a: 0a01 |000f: move-result v1 │ │ +004b0c: 3801 0600 |0010: if-eqz v1, 0016 // +0006 │ │ +004b10: 6e10 d700 0200 |0012: invoke-virtual {v2}, Lde/duenndns/gmdice/NumberPicker;.updateView:()V // method@00d7 │ │ +004b16: 0e00 |0015: return-void │ │ +004b18: 7020 d800 0200 |0016: invoke-direct {v2, v0}, Lde/duenndns/gmdice/NumberPicker;.validateCurrentView:(Ljava/lang/CharSequence;)V // method@00d8 │ │ +004b1e: 28fc |0019: goto 0015 // -0004 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=305 │ │ 0x000a line=306 │ │ 0x0012 line=309 │ │ 0x0015 line=315 │ │ 0x0016 line=313 │ │ @@ -3617,18 +3639,18 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 4 16-bit code units │ │ -0049ac: |[0049ac] de.duenndns.gmdice.NumberPicker.cancelDecrement:()V │ │ -0049bc: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -0049be: 5c10 3c00 |0001: iput-boolean v0, v1, Lde/duenndns/gmdice/NumberPicker;.mDecrement:Z // field@003c │ │ -0049c2: 0e00 |0003: return-void │ │ +004b20: |[004b20] de.duenndns.gmdice.NumberPicker.cancelDecrement:()V │ │ +004b30: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +004b32: 5c10 3c00 |0001: iput-boolean v0, v1, Lde/duenndns/gmdice/NumberPicker;.mDecrement:Z // field@003c │ │ +004b36: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=344 │ │ 0x0003 line=345 │ │ locals : │ │ 0x0000 - 0x0004 reg=1 this Lde/duenndns/gmdice/NumberPicker; │ │ │ │ @@ -3637,18 +3659,18 @@ │ │ type : '()V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 4 16-bit code units │ │ -0049c4: |[0049c4] de.duenndns.gmdice.NumberPicker.cancelIncrement:()V │ │ -0049d4: 1200 |0000: const/4 v0, #int 0 // #0 │ │ -0049d6: 5c10 4200 |0001: iput-boolean v0, v1, Lde/duenndns/gmdice/NumberPicker;.mIncrement:Z // field@0042 │ │ -0049da: 0e00 |0003: return-void │ │ +004b38: |[004b38] de.duenndns.gmdice.NumberPicker.cancelIncrement:()V │ │ +004b48: 1200 |0000: const/4 v0, #int 0 // #0 │ │ +004b4a: 5c10 4200 |0001: iput-boolean v0, v1, Lde/duenndns/gmdice/NumberPicker;.mIncrement:Z // field@0042 │ │ +004b4e: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=340 │ │ 0x0003 line=341 │ │ locals : │ │ 0x0000 - 0x0004 reg=1 this Lde/duenndns/gmdice/NumberPicker; │ │ │ │ @@ -3657,36 +3679,36 @@ │ │ type : '(I)V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 40 16-bit code units │ │ -0049dc: |[0049dc] de.duenndns.gmdice.NumberPicker.changeCurrent:(I)V │ │ -0049ec: 5210 3f00 |0000: iget v0, v1, Lde/duenndns/gmdice/NumberPicker;.mEnd:I // field@003f │ │ -0049f0: 3702 1800 |0002: if-le v2, v0, 001a // +0018 │ │ -0049f4: 5510 4b00 |0004: iget-boolean v0, v1, Lde/duenndns/gmdice/NumberPicker;.mWrap:Z // field@004b │ │ -0049f8: 3800 1100 |0006: if-eqz v0, 0017 // +0011 │ │ -0049fc: 5212 4900 |0008: iget v2, v1, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ -004a00: 5210 3b00 |000a: iget v0, v1, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -004a04: 5910 4600 |000c: iput v0, v1, Lde/duenndns/gmdice/NumberPicker;.mPrevious:I // field@0046 │ │ -004a08: 5912 3b00 |000e: iput v2, v1, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -004a0c: 6e10 c900 0100 |0010: invoke-virtual {v1}, Lde/duenndns/gmdice/NumberPicker;.notifyChange:()V // method@00c9 │ │ -004a12: 6e10 d700 0100 |0013: invoke-virtual {v1}, Lde/duenndns/gmdice/NumberPicker;.updateView:()V // method@00d7 │ │ -004a18: 0e00 |0016: return-void │ │ -004a1a: 5212 3f00 |0017: iget v2, v1, Lde/duenndns/gmdice/NumberPicker;.mEnd:I // field@003f │ │ -004a1e: 28f1 |0019: goto 000a // -000f │ │ -004a20: 5210 4900 |001a: iget v0, v1, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ -004a24: 3502 eeff |001c: if-ge v2, v0, 000a // -0012 │ │ -004a28: 5510 4b00 |001e: iget-boolean v0, v1, Lde/duenndns/gmdice/NumberPicker;.mWrap:Z // field@004b │ │ -004a2c: 3800 0500 |0020: if-eqz v0, 0025 // +0005 │ │ -004a30: 5212 3f00 |0022: iget v2, v1, Lde/duenndns/gmdice/NumberPicker;.mEnd:I // field@003f │ │ -004a34: 28e6 |0024: goto 000a // -001a │ │ -004a36: 5212 4900 |0025: iget v2, v1, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ -004a3a: 28fd |0027: goto 0024 // -0003 │ │ +004b50: |[004b50] de.duenndns.gmdice.NumberPicker.changeCurrent:(I)V │ │ +004b60: 5210 3f00 |0000: iget v0, v1, Lde/duenndns/gmdice/NumberPicker;.mEnd:I // field@003f │ │ +004b64: 3702 1800 |0002: if-le v2, v0, 001a // +0018 │ │ +004b68: 5510 4b00 |0004: iget-boolean v0, v1, Lde/duenndns/gmdice/NumberPicker;.mWrap:Z // field@004b │ │ +004b6c: 3800 1100 |0006: if-eqz v0, 0017 // +0011 │ │ +004b70: 5212 4900 |0008: iget v2, v1, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ +004b74: 5210 3b00 |000a: iget v0, v1, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +004b78: 5910 4600 |000c: iput v0, v1, Lde/duenndns/gmdice/NumberPicker;.mPrevious:I // field@0046 │ │ +004b7c: 5912 3b00 |000e: iput v2, v1, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +004b80: 6e10 c900 0100 |0010: invoke-virtual {v1}, Lde/duenndns/gmdice/NumberPicker;.notifyChange:()V // method@00c9 │ │ +004b86: 6e10 d700 0100 |0013: invoke-virtual {v1}, Lde/duenndns/gmdice/NumberPicker;.updateView:()V // method@00d7 │ │ +004b8c: 0e00 |0016: return-void │ │ +004b8e: 5212 3f00 |0017: iget v2, v1, Lde/duenndns/gmdice/NumberPicker;.mEnd:I // field@003f │ │ +004b92: 28f1 |0019: goto 000a // -000f │ │ +004b94: 5210 4900 |001a: iget v0, v1, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ +004b98: 3502 eeff |001c: if-ge v2, v0, 000a // -0012 │ │ +004b9c: 5510 4b00 |001e: iget-boolean v0, v1, Lde/duenndns/gmdice/NumberPicker;.mWrap:Z // field@004b │ │ +004ba0: 3800 0500 |0020: if-eqz v0, 0025 // +0005 │ │ +004ba4: 5212 3f00 |0022: iget v2, v1, Lde/duenndns/gmdice/NumberPicker;.mEnd:I // field@003f │ │ +004ba8: 28e6 |0024: goto 000a // -001a │ │ +004baa: 5212 4900 |0025: iget v2, v1, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ +004bae: 28fd |0027: goto 0024 // -0003 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=250 │ │ 0x0004 line=251 │ │ 0x000a line=255 │ │ 0x000e line=256 │ │ 0x0010 line=258 │ │ @@ -3704,19 +3726,19 @@ │ │ type : '()I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 8 16-bit code units │ │ -004a3c: |[004a3c] de.duenndns.gmdice.NumberPicker.getCurrent:()I │ │ -004a4c: 5410 4a00 |0000: iget-object v0, v1, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ -004a50: 7020 d900 0100 |0002: invoke-direct {v1, v0}, Lde/duenndns/gmdice/NumberPicker;.validateInput:(Landroid/view/View;)V // method@00d9 │ │ -004a56: 5210 3b00 |0005: iget v0, v1, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -004a5a: 0f00 |0007: return v0 │ │ +004bb0: |[004bb0] de.duenndns.gmdice.NumberPicker.getCurrent:()I │ │ +004bc0: 5410 4a00 |0000: iget-object v0, v1, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ +004bc4: 7020 d900 0100 |0002: invoke-direct {v1, v0}, Lde/duenndns/gmdice/NumberPicker;.validateInput:(Landroid/view/View;)V // method@00d9 │ │ +004bca: 5210 3b00 |0005: iget v0, v1, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +004bce: 0f00 |0007: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=449 │ │ 0x0005 line=450 │ │ locals : │ │ 0x0000 - 0x0008 reg=1 this Lde/duenndns/gmdice/NumberPicker; │ │ │ │ @@ -3725,22 +3747,22 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 4 │ │ ins : 1 │ │ outs : 4 │ │ insns size : 14 16-bit code units │ │ -004a5c: |[004a5c] de.duenndns.gmdice.NumberPicker.notifyChange:()V │ │ -004a6c: 5430 4400 |0000: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker;.mListener:Lde/duenndns/gmdice/NumberPicker$OnChangedListener; // field@0044 │ │ -004a70: 3800 0b00 |0002: if-eqz v0, 000d // +000b │ │ -004a74: 5430 4400 |0004: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker;.mListener:Lde/duenndns/gmdice/NumberPicker$OnChangedListener; // field@0044 │ │ -004a78: 5231 4600 |0006: iget v1, v3, Lde/duenndns/gmdice/NumberPicker;.mPrevious:I // field@0046 │ │ -004a7c: 5232 3b00 |0008: iget v2, v3, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -004a80: 7240 b400 3021 |000a: invoke-interface {v0, v3, v1, v2}, Lde/duenndns/gmdice/NumberPicker$OnChangedListener;.onChanged:(Lde/duenndns/gmdice/NumberPicker;II)V // method@00b4 │ │ -004a86: 0e00 |000d: return-void │ │ +004bd0: |[004bd0] de.duenndns.gmdice.NumberPicker.notifyChange:()V │ │ +004be0: 5430 4400 |0000: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker;.mListener:Lde/duenndns/gmdice/NumberPicker$OnChangedListener; // field@0044 │ │ +004be4: 3800 0b00 |0002: if-eqz v0, 000d // +000b │ │ +004be8: 5430 4400 |0004: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker;.mListener:Lde/duenndns/gmdice/NumberPicker$OnChangedListener; // field@0044 │ │ +004bec: 5231 4600 |0006: iget v1, v3, Lde/duenndns/gmdice/NumberPicker;.mPrevious:I // field@0046 │ │ +004bf0: 5232 3b00 |0008: iget v2, v3, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +004bf4: 7240 b400 3021 |000a: invoke-interface {v0, v3, v1, v2}, Lde/duenndns/gmdice/NumberPicker$OnChangedListener;.onChanged:(Lde/duenndns/gmdice/NumberPicker;II)V // method@00b4 │ │ +004bfa: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=263 │ │ 0x0004 line=264 │ │ 0x000d line=266 │ │ locals : │ │ 0x0000 - 0x000e reg=3 this Lde/duenndns/gmdice/NumberPicker; │ │ @@ -3750,39 +3772,39 @@ │ │ type : '(Landroid/view/View;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 52 16-bit code units │ │ -004a88: |[004a88] de.duenndns.gmdice.NumberPicker.onClick:(Landroid/view/View;)V │ │ -004a98: 5420 4a00 |0000: iget-object v0, v2, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ -004a9c: 7020 d900 0200 |0002: invoke-direct {v2, v0}, Lde/duenndns/gmdice/NumberPicker;.validateInput:(Landroid/view/View;)V // method@00d9 │ │ -004aa2: 5420 4a00 |0005: iget-object v0, v2, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ -004aa6: 6e10 4700 0000 |0007: invoke-virtual {v0}, Landroid/widget/EditText;.hasFocus:()Z // method@0047 │ │ -004aac: 0a00 |000a: move-result v0 │ │ -004aae: 3900 0700 |000b: if-nez v0, 0012 // +0007 │ │ -004ab2: 5420 4a00 |000d: iget-object v0, v2, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ -004ab6: 6e10 4800 0000 |000f: invoke-virtual {v0}, Landroid/widget/EditText;.requestFocus:()Z // method@0048 │ │ -004abc: 1400 0900 067f |0012: const v0, #float 1.78117e+38 // #7f060009 │ │ -004ac2: 6e10 3600 0300 |0015: invoke-virtual {v3}, Landroid/view/View;.getId:()I // method@0036 │ │ -004ac8: 0a01 |0018: move-result v1 │ │ -004aca: 3310 0a00 |0019: if-ne v0, v1, 0023 // +000a │ │ -004ace: 5220 3b00 |001b: iget v0, v2, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -004ad2: d800 0001 |001d: add-int/lit8 v0, v0, #int 1 // #01 │ │ -004ad6: 6e20 c300 0200 |001f: invoke-virtual {v2, v0}, Lde/duenndns/gmdice/NumberPicker;.changeCurrent:(I)V // method@00c3 │ │ -004adc: 0e00 |0022: return-void │ │ -004ade: 1400 0b00 067f |0023: const v0, #float 1.78117e+38 // #7f06000b │ │ -004ae4: 6e10 3600 0300 |0026: invoke-virtual {v3}, Landroid/view/View;.getId:()I // method@0036 │ │ -004aea: 0a01 |0029: move-result v1 │ │ -004aec: 3310 f8ff |002a: if-ne v0, v1, 0022 // -0008 │ │ -004af0: 5220 3b00 |002c: iget v0, v2, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -004af4: d800 00ff |002e: add-int/lit8 v0, v0, #int -1 // #ff │ │ -004af8: 6e20 c300 0200 |0030: invoke-virtual {v2, v0}, Lde/duenndns/gmdice/NumberPicker;.changeCurrent:(I)V // method@00c3 │ │ -004afe: 28ef |0033: goto 0022 // -0011 │ │ +004bfc: |[004bfc] de.duenndns.gmdice.NumberPicker.onClick:(Landroid/view/View;)V │ │ +004c0c: 5420 4a00 |0000: iget-object v0, v2, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ +004c10: 7020 d900 0200 |0002: invoke-direct {v2, v0}, Lde/duenndns/gmdice/NumberPicker;.validateInput:(Landroid/view/View;)V // method@00d9 │ │ +004c16: 5420 4a00 |0005: iget-object v0, v2, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ +004c1a: 6e10 4700 0000 |0007: invoke-virtual {v0}, Landroid/widget/EditText;.hasFocus:()Z // method@0047 │ │ +004c20: 0a00 |000a: move-result v0 │ │ +004c22: 3900 0700 |000b: if-nez v0, 0012 // +0007 │ │ +004c26: 5420 4a00 |000d: iget-object v0, v2, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ +004c2a: 6e10 4800 0000 |000f: invoke-virtual {v0}, Landroid/widget/EditText;.requestFocus:()Z // method@0048 │ │ +004c30: 1400 0900 067f |0012: const v0, #float 1.78117e+38 // #7f060009 │ │ +004c36: 6e10 3600 0300 |0015: invoke-virtual {v3}, Landroid/view/View;.getId:()I // method@0036 │ │ +004c3c: 0a01 |0018: move-result v1 │ │ +004c3e: 3310 0a00 |0019: if-ne v0, v1, 0023 // +000a │ │ +004c42: 5220 3b00 |001b: iget v0, v2, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +004c46: d800 0001 |001d: add-int/lit8 v0, v0, #int 1 // #01 │ │ +004c4a: 6e20 c300 0200 |001f: invoke-virtual {v2, v0}, Lde/duenndns/gmdice/NumberPicker;.changeCurrent:(I)V // method@00c3 │ │ +004c50: 0e00 |0022: return-void │ │ +004c52: 1400 0b00 067f |0023: const v0, #float 1.78117e+38 // #7f06000b │ │ +004c58: 6e10 3600 0300 |0026: invoke-virtual {v3}, Landroid/view/View;.getId:()I // method@0036 │ │ +004c5e: 0a01 |0029: move-result v1 │ │ +004c60: 3310 f8ff |002a: if-ne v0, v1, 0022 // -0008 │ │ +004c64: 5220 3b00 |002c: iget v0, v2, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +004c68: d800 00ff |002e: add-int/lit8 v0, v0, #int -1 // #ff │ │ +004c6c: 6e20 c300 0200 |0030: invoke-virtual {v2, v0}, Lde/duenndns/gmdice/NumberPicker;.changeCurrent:(I)V // method@00c3 │ │ +004c72: 28ef |0033: goto 0022 // -0011 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=231 │ │ 0x0005 line=232 │ │ 0x0012 line=235 │ │ 0x001b line=236 │ │ 0x0022 line=240 │ │ @@ -3797,18 +3819,18 @@ │ │ type : '(Landroid/view/View;Z)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 2 │ │ insns size : 6 16-bit code units │ │ -004b00: |[004b00] de.duenndns.gmdice.NumberPicker.onFocusChange:(Landroid/view/View;Z)V │ │ -004b10: 3902 0500 |0000: if-nez v2, 0005 // +0005 │ │ -004b14: 7020 d900 1000 |0002: invoke-direct {v0, v1}, Lde/duenndns/gmdice/NumberPicker;.validateInput:(Landroid/view/View;)V // method@00d9 │ │ -004b1a: 0e00 |0005: return-void │ │ +004c74: |[004c74] de.duenndns.gmdice.NumberPicker.onFocusChange:(Landroid/view/View;Z)V │ │ +004c84: 3902 0500 |0000: if-nez v2, 0005 // +0005 │ │ +004c88: 7020 d900 1000 |0002: invoke-direct {v0, v1}, Lde/duenndns/gmdice/NumberPicker;.validateInput:(Landroid/view/View;)V // method@00d9 │ │ +004c8e: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=299 │ │ 0x0002 line=300 │ │ 0x0005 line=302 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lde/duenndns/gmdice/NumberPicker; │ │ @@ -3820,38 +3842,38 @@ │ │ type : '(Landroid/view/View;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 49 16-bit code units │ │ -004b1c: |[004b1c] de.duenndns.gmdice.NumberPicker.onLongClick:(Landroid/view/View;)Z │ │ -004b2c: 1212 |0000: const/4 v2, #int 1 // #1 │ │ -004b2e: 5430 4a00 |0001: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ -004b32: 6e10 4500 0000 |0003: invoke-virtual {v0}, Landroid/widget/EditText;.clearFocus:()V // method@0045 │ │ -004b38: 5430 4a00 |0006: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ -004b3c: 6e10 4800 0000 |0008: invoke-virtual {v0}, Landroid/widget/EditText;.requestFocus:()Z // method@0048 │ │ -004b42: 1400 0900 067f |000b: const v0, #float 1.78117e+38 // #7f060009 │ │ -004b48: 6e10 3600 0400 |000e: invoke-virtual {v4}, Landroid/view/View;.getId:()I // method@0036 │ │ -004b4e: 0a01 |0011: move-result v1 │ │ -004b50: 3310 0c00 |0012: if-ne v0, v1, 001e // +000c │ │ -004b54: 5c32 4200 |0014: iput-boolean v2, v3, Lde/duenndns/gmdice/NumberPicker;.mIncrement:Z // field@0042 │ │ -004b58: 5430 4100 |0016: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker;.mHandler:Landroid/os/Handler; // field@0041 │ │ -004b5c: 5431 4700 |0018: iget-object v1, v3, Lde/duenndns/gmdice/NumberPicker;.mRunnable:Ljava/lang/Runnable; // field@0047 │ │ -004b60: 6e20 2500 1000 |001a: invoke-virtual {v0, v1}, Landroid/os/Handler;.post:(Ljava/lang/Runnable;)Z // method@0025 │ │ -004b66: 0f02 |001d: return v2 │ │ -004b68: 1400 0b00 067f |001e: const v0, #float 1.78117e+38 // #7f06000b │ │ -004b6e: 6e10 3600 0400 |0021: invoke-virtual {v4}, Landroid/view/View;.getId:()I // method@0036 │ │ -004b74: 0a01 |0024: move-result v1 │ │ -004b76: 3310 f8ff |0025: if-ne v0, v1, 001d // -0008 │ │ -004b7a: 5c32 3c00 |0027: iput-boolean v2, v3, Lde/duenndns/gmdice/NumberPicker;.mDecrement:Z // field@003c │ │ -004b7e: 5430 4100 |0029: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker;.mHandler:Landroid/os/Handler; // field@0041 │ │ -004b82: 5431 4700 |002b: iget-object v1, v3, Lde/duenndns/gmdice/NumberPicker;.mRunnable:Ljava/lang/Runnable; // field@0047 │ │ -004b86: 6e20 2500 1000 |002d: invoke-virtual {v0, v1}, Landroid/os/Handler;.post:(Ljava/lang/Runnable;)Z // method@0025 │ │ -004b8c: 28ed |0030: goto 001d // -0013 │ │ +004c90: |[004c90] de.duenndns.gmdice.NumberPicker.onLongClick:(Landroid/view/View;)Z │ │ +004ca0: 1212 |0000: const/4 v2, #int 1 // #1 │ │ +004ca2: 5430 4a00 |0001: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ +004ca6: 6e10 4500 0000 |0003: invoke-virtual {v0}, Landroid/widget/EditText;.clearFocus:()V // method@0045 │ │ +004cac: 5430 4a00 |0006: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ +004cb0: 6e10 4800 0000 |0008: invoke-virtual {v0}, Landroid/widget/EditText;.requestFocus:()Z // method@0048 │ │ +004cb6: 1400 0900 067f |000b: const v0, #float 1.78117e+38 // #7f060009 │ │ +004cbc: 6e10 3600 0400 |000e: invoke-virtual {v4}, Landroid/view/View;.getId:()I // method@0036 │ │ +004cc2: 0a01 |0011: move-result v1 │ │ +004cc4: 3310 0c00 |0012: if-ne v0, v1, 001e // +000c │ │ +004cc8: 5c32 4200 |0014: iput-boolean v2, v3, Lde/duenndns/gmdice/NumberPicker;.mIncrement:Z // field@0042 │ │ +004ccc: 5430 4100 |0016: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker;.mHandler:Landroid/os/Handler; // field@0041 │ │ +004cd0: 5431 4700 |0018: iget-object v1, v3, Lde/duenndns/gmdice/NumberPicker;.mRunnable:Ljava/lang/Runnable; // field@0047 │ │ +004cd4: 6e20 2500 1000 |001a: invoke-virtual {v0, v1}, Landroid/os/Handler;.post:(Ljava/lang/Runnable;)Z // method@0025 │ │ +004cda: 0f02 |001d: return v2 │ │ +004cdc: 1400 0b00 067f |001e: const v0, #float 1.78117e+38 // #7f06000b │ │ +004ce2: 6e10 3600 0400 |0021: invoke-virtual {v4}, Landroid/view/View;.getId:()I // method@0036 │ │ +004ce8: 0a01 |0024: move-result v1 │ │ +004cea: 3310 f8ff |0025: if-ne v0, v1, 001d // -0008 │ │ +004cee: 5c32 3c00 |0027: iput-boolean v2, v3, Lde/duenndns/gmdice/NumberPicker;.mDecrement:Z // field@003c │ │ +004cf2: 5430 4100 |0029: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker;.mHandler:Landroid/os/Handler; // field@0041 │ │ +004cf6: 5431 4700 |002b: iget-object v1, v3, Lde/duenndns/gmdice/NumberPicker;.mRunnable:Ljava/lang/Runnable; // field@0047 │ │ +004cfa: 6e20 2500 1000 |002d: invoke-virtual {v0, v1}, Landroid/os/Handler;.post:(Ljava/lang/Runnable;)Z // method@0025 │ │ +004d00: 28ed |0030: goto 001d // -0013 │ │ catches : (none) │ │ positions : │ │ 0x0001 line=326 │ │ 0x0006 line=327 │ │ 0x000b line=328 │ │ 0x0014 line=329 │ │ 0x0016 line=330 │ │ @@ -3868,18 +3890,18 @@ │ │ type : '(I)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -004b90: |[004b90] de.duenndns.gmdice.NumberPicker.setCurrent:(I)V │ │ -004ba0: 5901 3b00 |0000: iput v1, v0, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -004ba4: 6e10 d700 0000 |0002: invoke-virtual {v0}, Lde/duenndns/gmdice/NumberPicker;.updateView:()V // method@00d7 │ │ -004baa: 0e00 |0005: return-void │ │ +004d04: |[004d04] de.duenndns.gmdice.NumberPicker.setCurrent:(I)V │ │ +004d14: 5901 3b00 |0000: iput v1, v0, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +004d18: 6e10 d700 0000 |0002: invoke-virtual {v0}, Lde/duenndns/gmdice/NumberPicker;.updateView:()V // method@00d7 │ │ +004d1e: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=211 │ │ 0x0002 line=212 │ │ 0x0005 line=213 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lde/duenndns/gmdice/NumberPicker; │ │ @@ -3890,19 +3912,19 @@ │ │ type : '(I)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 9 16-bit code units │ │ -004bac: |[004bac] de.duenndns.gmdice.NumberPicker.setCurrentAndNotify:(I)V │ │ -004bbc: 5901 3b00 |0000: iput v1, v0, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -004bc0: 6e10 c900 0000 |0002: invoke-virtual {v0}, Lde/duenndns/gmdice/NumberPicker;.notifyChange:()V // method@00c9 │ │ -004bc6: 6e10 d700 0000 |0005: invoke-virtual {v0}, Lde/duenndns/gmdice/NumberPicker;.updateView:()V // method@00d7 │ │ -004bcc: 0e00 |0008: return-void │ │ +004d20: |[004d20] de.duenndns.gmdice.NumberPicker.setCurrentAndNotify:(I)V │ │ +004d30: 5901 3b00 |0000: iput v1, v0, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +004d34: 6e10 c900 0000 |0002: invoke-virtual {v0}, Lde/duenndns/gmdice/NumberPicker;.notifyChange:()V // method@00c9 │ │ +004d3a: 6e10 d700 0000 |0005: invoke-virtual {v0}, Lde/duenndns/gmdice/NumberPicker;.updateView:()V // method@00d7 │ │ +004d40: 0e00 |0008: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=216 │ │ 0x0002 line=217 │ │ 0x0005 line=218 │ │ 0x0008 line=219 │ │ locals : │ │ @@ -3914,23 +3936,23 @@ │ │ type : '(Z)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 19 16-bit code units │ │ -004bd0: |[004bd0] de.duenndns.gmdice.NumberPicker.setEnabled:(Z)V │ │ -004be0: 6f20 5500 2100 |0000: invoke-super {v1, v2}, Landroid/widget/LinearLayout;.setEnabled:(Z)V // method@0055 │ │ -004be6: 5410 4300 |0003: iget-object v0, v1, Lde/duenndns/gmdice/NumberPicker;.mIncrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@0043 │ │ -004bea: 6e20 e300 2000 |0005: invoke-virtual {v0, v2}, Lde/duenndns/gmdice/NumberPickerButton;.setEnabled:(Z)V // method@00e3 │ │ -004bf0: 5410 3d00 |0008: iget-object v0, v1, Lde/duenndns/gmdice/NumberPicker;.mDecrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@003d │ │ -004bf4: 6e20 e300 2000 |000a: invoke-virtual {v0, v2}, Lde/duenndns/gmdice/NumberPickerButton;.setEnabled:(Z)V // method@00e3 │ │ -004bfa: 5410 4a00 |000d: iget-object v0, v1, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ -004bfe: 6e20 4900 2000 |000f: invoke-virtual {v0, v2}, Landroid/widget/EditText;.setEnabled:(Z)V // method@0049 │ │ -004c04: 0e00 |0012: return-void │ │ +004d44: |[004d44] de.duenndns.gmdice.NumberPicker.setEnabled:(Z)V │ │ +004d54: 6f20 5500 2100 |0000: invoke-super {v1, v2}, Landroid/widget/LinearLayout;.setEnabled:(Z)V // method@0055 │ │ +004d5a: 5410 4300 |0003: iget-object v0, v1, Lde/duenndns/gmdice/NumberPicker;.mIncrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@0043 │ │ +004d5e: 6e20 e300 2000 |0005: invoke-virtual {v0, v2}, Lde/duenndns/gmdice/NumberPickerButton;.setEnabled:(Z)V // method@00e3 │ │ +004d64: 5410 3d00 |0008: iget-object v0, v1, Lde/duenndns/gmdice/NumberPicker;.mDecrementButton:Lde/duenndns/gmdice/NumberPickerButton; // field@003d │ │ +004d68: 6e20 e300 2000 |000a: invoke-virtual {v0, v2}, Lde/duenndns/gmdice/NumberPickerButton;.setEnabled:(Z)V // method@00e3 │ │ +004d6e: 5410 4a00 |000d: iget-object v0, v1, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ +004d72: 6e20 4900 2000 |000f: invoke-virtual {v0, v2}, Landroid/widget/EditText;.setEnabled:(Z)V // method@0049 │ │ +004d78: 0e00 |0012: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=156 │ │ 0x0003 line=157 │ │ 0x0008 line=158 │ │ 0x000d line=159 │ │ 0x0012 line=160 │ │ @@ -3943,17 +3965,17 @@ │ │ type : '(Lde/duenndns/gmdice/NumberPicker$Formatter;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -004c08: |[004c08] de.duenndns.gmdice.NumberPicker.setFormatter:(Lde/duenndns/gmdice/NumberPicker$Formatter;)V │ │ -004c18: 5b01 4000 |0000: iput-object v1, v0, Lde/duenndns/gmdice/NumberPicker;.mFormatter:Lde/duenndns/gmdice/NumberPicker$Formatter; // field@0040 │ │ -004c1c: 0e00 |0002: return-void │ │ +004d7c: |[004d7c] de.duenndns.gmdice.NumberPicker.setFormatter:(Lde/duenndns/gmdice/NumberPicker$Formatter;)V │ │ +004d8c: 5b01 4000 |0000: iput-object v1, v0, Lde/duenndns/gmdice/NumberPicker;.mFormatter:Lde/duenndns/gmdice/NumberPicker$Formatter; // field@0040 │ │ +004d90: 0e00 |0002: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=167 │ │ 0x0002 line=168 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 this Lde/duenndns/gmdice/NumberPicker; │ │ 0x0000 - 0x0003 reg=1 formatter Lde/duenndns/gmdice/NumberPicker$Formatter; │ │ @@ -3963,17 +3985,17 @@ │ │ type : '(Lde/duenndns/gmdice/NumberPicker$OnChangedListener;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -004c20: |[004c20] de.duenndns.gmdice.NumberPicker.setOnChangeListener:(Lde/duenndns/gmdice/NumberPicker$OnChangedListener;)V │ │ -004c30: 5b01 4400 |0000: iput-object v1, v0, Lde/duenndns/gmdice/NumberPicker;.mListener:Lde/duenndns/gmdice/NumberPicker$OnChangedListener; // field@0044 │ │ -004c34: 0e00 |0002: return-void │ │ +004d94: |[004d94] de.duenndns.gmdice.NumberPicker.setOnChangeListener:(Lde/duenndns/gmdice/NumberPicker$OnChangedListener;)V │ │ +004da4: 5b01 4400 |0000: iput-object v1, v0, Lde/duenndns/gmdice/NumberPicker;.mListener:Lde/duenndns/gmdice/NumberPicker$OnChangedListener; // field@0044 │ │ +004da8: 0e00 |0002: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=163 │ │ 0x0002 line=164 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 this Lde/duenndns/gmdice/NumberPicker; │ │ 0x0000 - 0x0003 reg=1 listener Lde/duenndns/gmdice/NumberPicker$OnChangedListener; │ │ @@ -3983,20 +4005,20 @@ │ │ type : '(II)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 1 │ │ insns size : 10 16-bit code units │ │ -004c38: |[004c38] de.duenndns.gmdice.NumberPicker.setRange:(II)V │ │ -004c48: 5901 4900 |0000: iput v1, v0, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ -004c4c: 5902 3f00 |0002: iput v2, v0, Lde/duenndns/gmdice/NumberPicker;.mEnd:I // field@003f │ │ -004c50: 5901 3b00 |0004: iput v1, v0, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -004c54: 6e10 d700 0000 |0006: invoke-virtual {v0}, Lde/duenndns/gmdice/NumberPicker;.updateView:()V // method@00d7 │ │ -004c5a: 0e00 |0009: return-void │ │ +004dac: |[004dac] de.duenndns.gmdice.NumberPicker.setRange:(II)V │ │ +004dbc: 5901 4900 |0000: iput v1, v0, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ +004dc0: 5902 3f00 |0002: iput v2, v0, Lde/duenndns/gmdice/NumberPicker;.mEnd:I // field@003f │ │ +004dc4: 5901 3b00 |0004: iput v1, v0, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +004dc8: 6e10 d700 0000 |0006: invoke-virtual {v0}, Lde/duenndns/gmdice/NumberPicker;.updateView:()V // method@00d7 │ │ +004dce: 0e00 |0009: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=178 │ │ 0x0002 line=179 │ │ 0x0004 line=180 │ │ 0x0006 line=181 │ │ 0x0009 line=182 │ │ @@ -4010,21 +4032,21 @@ │ │ type : '(II[Ljava/lang/String;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 4 │ │ outs : 1 │ │ insns size : 12 16-bit code units │ │ -004c5c: |[004c5c] de.duenndns.gmdice.NumberPicker.setRange:(II[Ljava/lang/String;)V │ │ -004c6c: 5b03 3e00 |0000: iput-object v3, v0, Lde/duenndns/gmdice/NumberPicker;.mDisplayedValues:[Ljava/lang/String; // field@003e │ │ -004c70: 5901 4900 |0002: iput v1, v0, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ -004c74: 5902 3f00 |0004: iput v2, v0, Lde/duenndns/gmdice/NumberPicker;.mEnd:I // field@003f │ │ -004c78: 5901 3b00 |0006: iput v1, v0, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -004c7c: 6e10 d700 0000 |0008: invoke-virtual {v0}, Lde/duenndns/gmdice/NumberPicker;.updateView:()V // method@00d7 │ │ -004c82: 0e00 |000b: return-void │ │ +004dd0: |[004dd0] de.duenndns.gmdice.NumberPicker.setRange:(II[Ljava/lang/String;)V │ │ +004de0: 5b03 3e00 |0000: iput-object v3, v0, Lde/duenndns/gmdice/NumberPicker;.mDisplayedValues:[Ljava/lang/String; // field@003e │ │ +004de4: 5901 4900 |0002: iput v1, v0, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ +004de8: 5902 3f00 |0004: iput v2, v0, Lde/duenndns/gmdice/NumberPicker;.mEnd:I // field@003f │ │ +004dec: 5901 3b00 |0006: iput v1, v0, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +004df0: 6e10 d700 0000 |0008: invoke-virtual {v0}, Lde/duenndns/gmdice/NumberPicker;.updateView:()V // method@00d7 │ │ +004df6: 0e00 |000b: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=203 │ │ 0x0002 line=204 │ │ 0x0004 line=205 │ │ 0x0006 line=206 │ │ 0x0008 line=207 │ │ @@ -4036,41 +4058,41 @@ │ │ 0x0000 - 0x000c reg=3 displayedValues [Ljava/lang/String; │ │ │ │ #15 : (in Lde/duenndns/gmdice/NumberPicker;) │ │ name : 'setSpeed' │ │ type : '(J)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ - registers : 3 │ │ + registers : 4 │ │ ins : 3 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -004c84: |[004c84] de.duenndns.gmdice.NumberPicker.setSpeed:(J)V │ │ -004c94: 5a01 4800 |0000: iput-wide v1, v0, Lde/duenndns/gmdice/NumberPicker;.mSpeed:J // field@0048 │ │ -004c98: 0e00 |0002: return-void │ │ +004df8: |[004df8] de.duenndns.gmdice.NumberPicker.setSpeed:(J)V │ │ +004e08: 5a12 4800 |0000: iput-wide v2, v1, Lde/duenndns/gmdice/NumberPicker;.mSpeed:J // field@0048 │ │ +004e0c: 0e00 |0002: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=227 │ │ 0x0002 line=228 │ │ locals : │ │ - 0x0000 - 0x0003 reg=0 this Lde/duenndns/gmdice/NumberPicker; │ │ - 0x0000 - 0x0003 reg=1 speed J │ │ + 0x0000 - 0x0003 reg=1 this Lde/duenndns/gmdice/NumberPicker; │ │ + 0x0000 - 0x0003 reg=2 speed J │ │ │ │ #16 : (in Lde/duenndns/gmdice/NumberPicker;) │ │ name : 'setWrap' │ │ type : '(Z)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -004c9c: |[004c9c] de.duenndns.gmdice.NumberPicker.setWrap:(Z)V │ │ -004cac: 5c01 4b00 |0000: iput-boolean v1, v0, Lde/duenndns/gmdice/NumberPicker;.mWrap:Z // field@004b │ │ -004cb0: 0e00 |0002: return-void │ │ +004e10: |[004e10] de.duenndns.gmdice.NumberPicker.setWrap:(Z)V │ │ +004e20: 5c01 4b00 |0000: iput-boolean v1, v0, Lde/duenndns/gmdice/NumberPicker;.mWrap:Z // field@004b │ │ +004e24: 0e00 |0002: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=190 │ │ 0x0002 line=191 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 this Lde/duenndns/gmdice/NumberPicker; │ │ 0x0000 - 0x0003 reg=1 wrap Z │ │ @@ -4080,55 +4102,55 @@ │ │ type : '()V' │ │ access : 0x0004 (PROTECTED) │ │ code - │ │ registers : 5 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 46 16-bit code units │ │ -004cb4: |[004cb4] de.duenndns.gmdice.NumberPicker.updateView:()V │ │ -004cc4: 5440 3e00 |0000: iget-object v0, v4, Lde/duenndns/gmdice/NumberPicker;.mDisplayedValues:[Ljava/lang/String; // field@003e │ │ -004cc8: 3900 1d00 |0002: if-nez v0, 001f // +001d │ │ -004ccc: 5440 4a00 |0004: iget-object v0, v4, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ -004cd0: 5241 3b00 |0006: iget v1, v4, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -004cd4: 7020 c500 1400 |0008: invoke-direct {v4, v1}, Lde/duenndns/gmdice/NumberPicker;.formatNumber:(I)Ljava/lang/String; // method@00c5 │ │ -004cda: 0c01 |000b: move-result-object v1 │ │ -004cdc: 6e20 4d00 1000 |000c: invoke-virtual {v0, v1}, Landroid/widget/EditText;.setText:(Ljava/lang/CharSequence;)V // method@004d │ │ -004ce2: 5440 4a00 |000f: iget-object v0, v4, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ -004ce6: 5441 4a00 |0011: iget-object v1, v4, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ -004cea: 6e10 4600 0100 |0013: invoke-virtual {v1}, Landroid/widget/EditText;.getText:()Landroid/text/Editable; // method@0046 │ │ -004cf0: 0c01 |0016: move-result-object v1 │ │ -004cf2: 7210 2800 0100 |0017: invoke-interface {v1}, Landroid/text/Editable;.length:()I // method@0028 │ │ -004cf8: 0a01 |001a: move-result v1 │ │ -004cfa: 6e20 4c00 1000 |001b: invoke-virtual {v0, v1}, Landroid/widget/EditText;.setSelection:(I)V // method@004c │ │ -004d00: 0e00 |001e: return-void │ │ -004d02: 5440 4a00 |001f: iget-object v0, v4, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ -004d06: 5441 3e00 |0021: iget-object v1, v4, Lde/duenndns/gmdice/NumberPicker;.mDisplayedValues:[Ljava/lang/String; // field@003e │ │ -004d0a: 5242 3b00 |0023: iget v2, v4, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ -004d0e: 5243 4900 |0025: iget v3, v4, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ -004d12: b132 |0027: sub-int/2addr v2, v3 │ │ -004d14: 4601 0102 |0028: aget-object v1, v1, v2 │ │ -004d18: 6e20 4d00 1000 |002a: invoke-virtual {v0, v1}, Landroid/widget/EditText;.setText:(Ljava/lang/CharSequence;)V // method@004d │ │ -004d1e: 28e2 |002d: goto 000f // -001e │ │ +004e28: |[004e28] de.duenndns.gmdice.NumberPicker.updateView:()V │ │ +004e38: 5440 3e00 |0000: iget-object v0, v4, Lde/duenndns/gmdice/NumberPicker;.mDisplayedValues:[Ljava/lang/String; // field@003e │ │ +004e3c: 3900 1d00 |0002: if-nez v0, 001f // +001d │ │ +004e40: 5440 4a00 |0004: iget-object v0, v4, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ +004e44: 5241 3b00 |0006: iget v1, v4, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +004e48: 7020 c500 1400 |0008: invoke-direct {v4, v1}, Lde/duenndns/gmdice/NumberPicker;.formatNumber:(I)Ljava/lang/String; // method@00c5 │ │ +004e4e: 0c01 |000b: move-result-object v1 │ │ +004e50: 6e20 4d00 1000 |000c: invoke-virtual {v0, v1}, Landroid/widget/EditText;.setText:(Ljava/lang/CharSequence;)V // method@004d │ │ +004e56: 5440 4a00 |000f: iget-object v0, v4, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ +004e5a: 5441 4a00 |0011: iget-object v1, v4, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ +004e5e: 6e10 4600 0100 |0013: invoke-virtual {v1}, Landroid/widget/EditText;.getText:()Landroid/text/Editable; // method@0046 │ │ +004e64: 0c01 |0016: move-result-object v1 │ │ +004e66: 7210 2800 0100 |0017: invoke-interface {v1}, Landroid/text/Editable;.length:()I // method@0028 │ │ +004e6c: 0a01 |001a: move-result v1 │ │ +004e6e: 6e20 4c00 1000 |001b: invoke-virtual {v0, v1}, Landroid/widget/EditText;.setSelection:(I)V // method@004c │ │ +004e74: 0e00 |001e: return-void │ │ +004e76: 5440 4a00 |001f: iget-object v0, v4, Lde/duenndns/gmdice/NumberPicker;.mText:Landroid/widget/EditText; // field@004a │ │ +004e7a: 5441 3e00 |0021: iget-object v1, v4, Lde/duenndns/gmdice/NumberPicker;.mDisplayedValues:[Ljava/lang/String; // field@003e │ │ +004e7e: 5242 3b00 |0023: iget v2, v4, Lde/duenndns/gmdice/NumberPicker;.mCurrent:I // field@003b │ │ +004e82: 5243 4900 |0025: iget v3, v4, Lde/duenndns/gmdice/NumberPicker;.mStart:I // field@0049 │ │ +004e86: b132 |0027: sub-int/2addr v2, v3 │ │ +004e88: 4601 0102 |0028: aget-object v1, v1, v2 │ │ +004e8c: 6e20 4d00 1000 |002a: invoke-virtual {v0, v1}, Landroid/widget/EditText;.setText:(Ljava/lang/CharSequence;)V // method@004d │ │ +004e92: 28e2 |002d: goto 000f // -001e │ │ catches : (none) │ │ positions : │ │ 0x0000 line=274 │ │ 0x0004 line=275 │ │ 0x000f line=279 │ │ 0x001e line=280 │ │ 0x001f line=277 │ │ locals : │ │ 0x0000 - 0x002e reg=4 this Lde/duenndns/gmdice/NumberPicker; │ │ │ │ - source_file_idx : 187 (NumberPicker.java) │ │ + source_file_idx : 186 (NumberPicker.java) │ │ │ │ Class #15 header: │ │ -class_idx : 77 │ │ +class_idx : 76 │ │ access_flags : 1 (0x0001) │ │ -superclass_idx : 46 │ │ -source_file_idx : 188 │ │ +superclass_idx : 45 │ │ +source_file_idx : 187 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 5 │ │ virtual_methods_size: 4 │ │ │ │ Class #15 - │ │ Class descriptor : 'Lde/duenndns/gmdice/NumberPickerButton;' │ │ @@ -4147,17 +4169,17 @@ │ │ type : '(Landroid/content/Context;)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 4 16-bit code units │ │ -004d20: |[004d20] de.duenndns.gmdice.NumberPickerButton.:(Landroid/content/Context;)V │ │ -004d30: 7020 4e00 1000 |0000: invoke-direct {v0, v1}, Landroid/widget/ImageButton;.:(Landroid/content/Context;)V // method@004e │ │ -004d36: 0e00 |0003: return-void │ │ +004e94: |[004e94] de.duenndns.gmdice.NumberPickerButton.:(Landroid/content/Context;)V │ │ +004ea4: 7020 4e00 1000 |0000: invoke-direct {v0, v1}, Landroid/widget/ImageButton;.:(Landroid/content/Context;)V // method@004e │ │ +004eaa: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=42 │ │ 0x0003 line=43 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lde/duenndns/gmdice/NumberPickerButton; │ │ 0x0000 - 0x0004 reg=1 context Landroid/content/Context; │ │ @@ -4167,17 +4189,17 @@ │ │ type : '(Landroid/content/Context;Landroid/util/AttributeSet;)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 4 16-bit code units │ │ -004d38: |[004d38] de.duenndns.gmdice.NumberPickerButton.:(Landroid/content/Context;Landroid/util/AttributeSet;)V │ │ -004d48: 7030 4f00 1002 |0000: invoke-direct {v0, v1, v2}, Landroid/widget/ImageButton;.:(Landroid/content/Context;Landroid/util/AttributeSet;)V // method@004f │ │ -004d4e: 0e00 |0003: return-void │ │ +004eac: |[004eac] de.duenndns.gmdice.NumberPickerButton.:(Landroid/content/Context;Landroid/util/AttributeSet;)V │ │ +004ebc: 7030 4f00 1002 |0000: invoke-direct {v0, v1, v2}, Landroid/widget/ImageButton;.:(Landroid/content/Context;Landroid/util/AttributeSet;)V // method@004f │ │ +004ec2: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=38 │ │ 0x0003 line=39 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lde/duenndns/gmdice/NumberPickerButton; │ │ 0x0000 - 0x0004 reg=1 context Landroid/content/Context; │ │ @@ -4188,17 +4210,17 @@ │ │ type : '(Landroid/content/Context;Landroid/util/AttributeSet;I)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 4 │ │ ins : 4 │ │ outs : 4 │ │ insns size : 4 16-bit code units │ │ -004d50: |[004d50] de.duenndns.gmdice.NumberPickerButton.:(Landroid/content/Context;Landroid/util/AttributeSet;I)V │ │ -004d60: 7040 5000 1032 |0000: invoke-direct {v0, v1, v2, v3}, Landroid/widget/ImageButton;.:(Landroid/content/Context;Landroid/util/AttributeSet;I)V // method@0050 │ │ -004d66: 0e00 |0003: return-void │ │ +004ec4: |[004ec4] de.duenndns.gmdice.NumberPickerButton.:(Landroid/content/Context;Landroid/util/AttributeSet;I)V │ │ +004ed4: 7040 5000 1032 |0000: invoke-direct {v0, v1, v2, v3}, Landroid/widget/ImageButton;.:(Landroid/content/Context;Landroid/util/AttributeSet;I)V // method@0050 │ │ +004eda: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=34 │ │ 0x0003 line=35 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lde/duenndns/gmdice/NumberPickerButton; │ │ 0x0000 - 0x0004 reg=1 context Landroid/content/Context; │ │ @@ -4210,29 +4232,29 @@ │ │ type : '()V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 30 16-bit code units │ │ -004d68: |[004d68] de.duenndns.gmdice.NumberPickerButton.cancelLongpress:()V │ │ -004d78: 1400 0900 067f |0000: const v0, #float 1.78117e+38 // #7f060009 │ │ -004d7e: 6e10 df00 0200 |0003: invoke-virtual {v2}, Lde/duenndns/gmdice/NumberPickerButton;.getId:()I // method@00df │ │ -004d84: 0a01 |0006: move-result v1 │ │ -004d86: 3310 0800 |0007: if-ne v0, v1, 000f // +0008 │ │ -004d8a: 5420 4c00 |0009: iget-object v0, v2, Lde/duenndns/gmdice/NumberPickerButton;.mNumberPicker:Lde/duenndns/gmdice/NumberPicker; // field@004c │ │ -004d8e: 6e10 c200 0000 |000b: invoke-virtual {v0}, Lde/duenndns/gmdice/NumberPicker;.cancelIncrement:()V // method@00c2 │ │ -004d94: 0e00 |000e: return-void │ │ -004d96: 1400 0b00 067f |000f: const v0, #float 1.78117e+38 // #7f06000b │ │ -004d9c: 6e10 df00 0200 |0012: invoke-virtual {v2}, Lde/duenndns/gmdice/NumberPickerButton;.getId:()I // method@00df │ │ -004da2: 0a01 |0015: move-result v1 │ │ -004da4: 3310 f8ff |0016: if-ne v0, v1, 000e // -0008 │ │ -004da8: 5420 4c00 |0018: iget-object v0, v2, Lde/duenndns/gmdice/NumberPickerButton;.mNumberPicker:Lde/duenndns/gmdice/NumberPicker; // field@004c │ │ -004dac: 6e10 c100 0000 |001a: invoke-virtual {v0}, Lde/duenndns/gmdice/NumberPicker;.cancelDecrement:()V // method@00c1 │ │ -004db2: 28f1 |001d: goto 000e // -000f │ │ +004edc: |[004edc] de.duenndns.gmdice.NumberPickerButton.cancelLongpress:()V │ │ +004eec: 1400 0900 067f |0000: const v0, #float 1.78117e+38 // #7f060009 │ │ +004ef2: 6e10 df00 0200 |0003: invoke-virtual {v2}, Lde/duenndns/gmdice/NumberPickerButton;.getId:()I // method@00df │ │ +004ef8: 0a01 |0006: move-result v1 │ │ +004efa: 3310 0800 |0007: if-ne v0, v1, 000f // +0008 │ │ +004efe: 5420 4c00 |0009: iget-object v0, v2, Lde/duenndns/gmdice/NumberPickerButton;.mNumberPicker:Lde/duenndns/gmdice/NumberPicker; // field@004c │ │ +004f02: 6e10 c200 0000 |000b: invoke-virtual {v0}, Lde/duenndns/gmdice/NumberPicker;.cancelIncrement:()V // method@00c2 │ │ +004f08: 0e00 |000e: return-void │ │ +004f0a: 1400 0b00 067f |000f: const v0, #float 1.78117e+38 // #7f06000b │ │ +004f10: 6e10 df00 0200 |0012: invoke-virtual {v2}, Lde/duenndns/gmdice/NumberPickerButton;.getId:()I // method@00df │ │ +004f16: 0a01 |0015: move-result v1 │ │ +004f18: 3310 f8ff |0016: if-ne v0, v1, 000e // -0008 │ │ +004f1c: 5420 4c00 |0018: iget-object v0, v2, Lde/duenndns/gmdice/NumberPickerButton;.mNumberPicker:Lde/duenndns/gmdice/NumberPicker; // field@004c │ │ +004f20: 6e10 c100 0000 |001a: invoke-virtual {v0}, Lde/duenndns/gmdice/NumberPicker;.cancelDecrement:()V // method@00c1 │ │ +004f26: 28f1 |001d: goto 000e // -000f │ │ catches : (none) │ │ positions : │ │ 0x0000 line=78 │ │ 0x0009 line=79 │ │ 0x000e line=83 │ │ 0x000f line=80 │ │ 0x0018 line=81 │ │ @@ -4244,28 +4266,29 @@ │ │ type : '(Landroid/view/MotionEvent;)V' │ │ access : 0x0002 (PRIVATE) │ │ code - │ │ registers : 4 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 18 16-bit code units │ │ -004db4: |[004db4] de.duenndns.gmdice.NumberPickerButton.cancelLongpressIfRequired:(Landroid/view/MotionEvent;)V │ │ -004dc4: 6e10 3400 0300 |0000: invoke-virtual {v3}, Landroid/view/MotionEvent;.getAction:()I // method@0034 │ │ -004dca: 0a00 |0003: move-result v0 │ │ -004dcc: 1231 |0004: const/4 v1, #int 3 // #3 │ │ -004dce: 3210 0900 |0005: if-eq v0, v1, 000e // +0009 │ │ -004dd2: 6e10 3400 0300 |0007: invoke-virtual {v3}, Landroid/view/MotionEvent;.getAction:()I // method@0034 │ │ -004dd8: 0a00 |000a: move-result v0 │ │ -004dda: 1211 |000b: const/4 v1, #int 1 // #1 │ │ -004ddc: 3310 0500 |000c: if-ne v0, v1, 0011 // +0005 │ │ -004de0: 7010 dd00 0200 |000e: invoke-direct {v2}, Lde/duenndns/gmdice/NumberPickerButton;.cancelLongpress:()V // method@00dd │ │ -004de6: 0e00 |0011: return-void │ │ +004f28: |[004f28] de.duenndns.gmdice.NumberPickerButton.cancelLongpressIfRequired:(Landroid/view/MotionEvent;)V │ │ +004f38: 6e10 3400 0300 |0000: invoke-virtual {v3}, Landroid/view/MotionEvent;.getAction:()I // method@0034 │ │ +004f3e: 0a00 |0003: move-result v0 │ │ +004f40: 1231 |0004: const/4 v1, #int 3 // #3 │ │ +004f42: 3210 0900 |0005: if-eq v0, v1, 000e // +0009 │ │ +004f46: 6e10 3400 0300 |0007: invoke-virtual {v3}, Landroid/view/MotionEvent;.getAction:()I // method@0034 │ │ +004f4c: 0a00 |000a: move-result v0 │ │ +004f4e: 1211 |000b: const/4 v1, #int 1 // #1 │ │ +004f50: 3310 0500 |000c: if-ne v0, v1, 0011 // +0005 │ │ +004f54: 7010 dd00 0200 |000e: invoke-direct {v2}, Lde/duenndns/gmdice/NumberPickerButton;.cancelLongpress:()V // method@00dd │ │ +004f5a: 0e00 |0011: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=71 │ │ + 0x0007 line=72 │ │ 0x000e line=73 │ │ 0x0011 line=75 │ │ locals : │ │ 0x0000 - 0x0012 reg=2 this Lde/duenndns/gmdice/NumberPickerButton; │ │ 0x0000 - 0x0012 reg=3 event Landroid/view/MotionEvent; │ │ │ │ Virtual methods - │ │ @@ -4274,23 +4297,23 @@ │ │ type : '(ILandroid/view/KeyEvent;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 4 │ │ ins : 3 │ │ outs : 3 │ │ insns size : 16 16-bit code units │ │ -004de8: |[004de8] de.duenndns.gmdice.NumberPickerButton.onKeyUp:(ILandroid/view/KeyEvent;)Z │ │ -004df8: 1300 1700 |0000: const/16 v0, #int 23 // #17 │ │ -004dfc: 3202 0600 |0002: if-eq v2, v0, 0008 // +0006 │ │ -004e00: 1300 4200 |0004: const/16 v0, #int 66 // #42 │ │ -004e04: 3302 0500 |0006: if-ne v2, v0, 000b // +0005 │ │ -004e08: 7010 dd00 0100 |0008: invoke-direct {v1}, Lde/duenndns/gmdice/NumberPickerButton;.cancelLongpress:()V // method@00dd │ │ -004e0e: 6f30 5100 2103 |000b: invoke-super {v1, v2, v3}, Landroid/widget/ImageButton;.onKeyUp:(ILandroid/view/KeyEvent;)Z // method@0051 │ │ -004e14: 0a00 |000e: move-result v0 │ │ -004e16: 0f00 |000f: return v0 │ │ +004f5c: |[004f5c] de.duenndns.gmdice.NumberPickerButton.onKeyUp:(ILandroid/view/KeyEvent;)Z │ │ +004f6c: 1300 1700 |0000: const/16 v0, #int 23 // #17 │ │ +004f70: 3202 0600 |0002: if-eq v2, v0, 0008 // +0006 │ │ +004f74: 1300 4200 |0004: const/16 v0, #int 66 // #42 │ │ +004f78: 3302 0500 |0006: if-ne v2, v0, 000b // +0005 │ │ +004f7c: 7010 dd00 0100 |0008: invoke-direct {v1}, Lde/duenndns/gmdice/NumberPickerButton;.cancelLongpress:()V // method@00dd │ │ +004f82: 6f30 5100 2103 |000b: invoke-super {v1, v2, v3}, Landroid/widget/ImageButton;.onKeyUp:(ILandroid/view/KeyEvent;)Z // method@0051 │ │ +004f88: 0a00 |000e: move-result v0 │ │ +004f8a: 0f00 |000f: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=63 │ │ 0x0008 line=65 │ │ 0x000b line=67 │ │ locals : │ │ 0x0000 - 0x0010 reg=1 this Lde/duenndns/gmdice/NumberPickerButton; │ │ @@ -4302,19 +4325,19 @@ │ │ type : '(Landroid/view/MotionEvent;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 8 16-bit code units │ │ -004e18: |[004e18] de.duenndns.gmdice.NumberPickerButton.onTouchEvent:(Landroid/view/MotionEvent;)Z │ │ -004e28: 7020 de00 2100 |0000: invoke-direct {v1, v2}, Lde/duenndns/gmdice/NumberPickerButton;.cancelLongpressIfRequired:(Landroid/view/MotionEvent;)V // method@00de │ │ -004e2e: 6f20 5200 2100 |0003: invoke-super {v1, v2}, Landroid/widget/ImageButton;.onTouchEvent:(Landroid/view/MotionEvent;)Z // method@0052 │ │ -004e34: 0a00 |0006: move-result v0 │ │ -004e36: 0f00 |0007: return v0 │ │ +004f8c: |[004f8c] de.duenndns.gmdice.NumberPickerButton.onTouchEvent:(Landroid/view/MotionEvent;)Z │ │ +004f9c: 7020 de00 2100 |0000: invoke-direct {v1, v2}, Lde/duenndns/gmdice/NumberPickerButton;.cancelLongpressIfRequired:(Landroid/view/MotionEvent;)V // method@00de │ │ +004fa2: 6f20 5200 2100 |0003: invoke-super {v1, v2}, Landroid/widget/ImageButton;.onTouchEvent:(Landroid/view/MotionEvent;)Z // method@0052 │ │ +004fa8: 0a00 |0006: move-result v0 │ │ +004faa: 0f00 |0007: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=51 │ │ 0x0003 line=52 │ │ locals : │ │ 0x0000 - 0x0008 reg=1 this Lde/duenndns/gmdice/NumberPickerButton; │ │ 0x0000 - 0x0008 reg=2 event Landroid/view/MotionEvent; │ │ @@ -4324,19 +4347,19 @@ │ │ type : '(Landroid/view/MotionEvent;)Z' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 8 16-bit code units │ │ -004e38: |[004e38] de.duenndns.gmdice.NumberPickerButton.onTrackballEvent:(Landroid/view/MotionEvent;)Z │ │ -004e48: 7020 de00 2100 |0000: invoke-direct {v1, v2}, Lde/duenndns/gmdice/NumberPickerButton;.cancelLongpressIfRequired:(Landroid/view/MotionEvent;)V // method@00de │ │ -004e4e: 6f20 5300 2100 |0003: invoke-super {v1, v2}, Landroid/widget/ImageButton;.onTrackballEvent:(Landroid/view/MotionEvent;)Z // method@0053 │ │ -004e54: 0a00 |0006: move-result v0 │ │ -004e56: 0f00 |0007: return v0 │ │ +004fac: |[004fac] de.duenndns.gmdice.NumberPickerButton.onTrackballEvent:(Landroid/view/MotionEvent;)Z │ │ +004fbc: 7020 de00 2100 |0000: invoke-direct {v1, v2}, Lde/duenndns/gmdice/NumberPickerButton;.cancelLongpressIfRequired:(Landroid/view/MotionEvent;)V // method@00de │ │ +004fc2: 6f20 5300 2100 |0003: invoke-super {v1, v2}, Landroid/widget/ImageButton;.onTrackballEvent:(Landroid/view/MotionEvent;)Z // method@0053 │ │ +004fc8: 0a00 |0006: move-result v0 │ │ +004fca: 0f00 |0007: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=57 │ │ 0x0003 line=58 │ │ locals : │ │ 0x0000 - 0x0008 reg=1 this Lde/duenndns/gmdice/NumberPickerButton; │ │ 0x0000 - 0x0008 reg=2 event Landroid/view/MotionEvent; │ │ @@ -4346,31 +4369,31 @@ │ │ type : '(Lde/duenndns/gmdice/NumberPicker;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -004e58: |[004e58] de.duenndns.gmdice.NumberPickerButton.setNumberPicker:(Lde/duenndns/gmdice/NumberPicker;)V │ │ -004e68: 5b01 4c00 |0000: iput-object v1, v0, Lde/duenndns/gmdice/NumberPickerButton;.mNumberPicker:Lde/duenndns/gmdice/NumberPicker; // field@004c │ │ -004e6c: 0e00 |0002: return-void │ │ +004fcc: |[004fcc] de.duenndns.gmdice.NumberPickerButton.setNumberPicker:(Lde/duenndns/gmdice/NumberPicker;)V │ │ +004fdc: 5b01 4c00 |0000: iput-object v1, v0, Lde/duenndns/gmdice/NumberPickerButton;.mNumberPicker:Lde/duenndns/gmdice/NumberPicker; // field@004c │ │ +004fe0: 0e00 |0002: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=46 │ │ 0x0002 line=47 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 this Lde/duenndns/gmdice/NumberPickerButton; │ │ 0x0000 - 0x0003 reg=1 picker Lde/duenndns/gmdice/NumberPicker; │ │ │ │ - source_file_idx : 188 (NumberPickerButton.java) │ │ + source_file_idx : 187 (NumberPickerButton.java) │ │ │ │ Class #16 header: │ │ -class_idx : 78 │ │ +class_idx : 77 │ │ access_flags : 1024 (0x0400) │ │ -superclass_idx : 97 │ │ +superclass_idx : 96 │ │ source_file_idx : 46 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #16 - │ │ @@ -4386,17 +4409,17 @@ │ │ type : '()V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -004e70: |[004e70] de.duenndns.gmdice.OnDiceChange.:()V │ │ -004e80: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ -004e86: 0e00 |0003: return-void │ │ +004fe4: |[004fe4] de.duenndns.gmdice.OnDiceChange.:()V │ │ +004ff4: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ +004ffa: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=341 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lde/duenndns/gmdice/OnDiceChange; │ │ │ │ Virtual methods - │ │ @@ -4405,18 +4428,18 @@ │ │ type : '(Lde/duenndns/gmdice/DiceSet;)V' │ │ access : 0x0401 (PUBLIC ABSTRACT) │ │ code : (none) │ │ │ │ source_file_idx : 46 (GameMasterDice.java) │ │ │ │ Class #17 header: │ │ -class_idx : 79 │ │ +class_idx : 78 │ │ access_flags : 17 (0x0011) │ │ -superclass_idx : 97 │ │ -source_file_idx : 193 │ │ +superclass_idx : 96 │ │ +source_file_idx : 192 │ │ static_fields_size : 5 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 0 │ │ │ │ Class #17 annotations: │ │ Annotations on class │ │ @@ -4461,31 +4484,31 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -004e88: |[004e88] de.duenndns.gmdice.R$attr.:()V │ │ -004e98: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ -004e9e: 0e00 |0003: return-void │ │ +004ffc: |[004ffc] de.duenndns.gmdice.R$attr.:()V │ │ +00500c: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ +005012: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=11 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lde/duenndns/gmdice/R$attr; │ │ │ │ Virtual methods - │ │ - source_file_idx : 193 (R.java) │ │ + source_file_idx : 192 (R.java) │ │ │ │ Class #18 header: │ │ -class_idx : 80 │ │ +class_idx : 79 │ │ access_flags : 17 (0x0011) │ │ -superclass_idx : 97 │ │ -source_file_idx : 193 │ │ +superclass_idx : 96 │ │ +source_file_idx : 192 │ │ static_fields_size : 18 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 0 │ │ │ │ Class #18 annotations: │ │ Annotations on class │ │ @@ -4595,31 +4618,31 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -004ea0: |[004ea0] de.duenndns.gmdice.R$drawable.:()V │ │ -004eb0: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ -004eb6: 0e00 |0003: return-void │ │ +005014: |[005014] de.duenndns.gmdice.R$drawable.:()V │ │ +005024: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ +00502a: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=53 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lde/duenndns/gmdice/R$drawable; │ │ │ │ Virtual methods - │ │ - source_file_idx : 193 (R.java) │ │ + source_file_idx : 192 (R.java) │ │ │ │ Class #19 header: │ │ -class_idx : 81 │ │ +class_idx : 80 │ │ access_flags : 17 (0x0011) │ │ -superclass_idx : 97 │ │ -source_file_idx : 193 │ │ +superclass_idx : 96 │ │ +source_file_idx : 192 │ │ static_fields_size : 16 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 0 │ │ │ │ Class #19 annotations: │ │ Annotations on class │ │ @@ -4719,31 +4742,31 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -004eb8: |[004eb8] de.duenndns.gmdice.R$id.:()V │ │ -004ec8: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ -004ece: 0e00 |0003: return-void │ │ +00502c: |[00502c] de.duenndns.gmdice.R$id.:()V │ │ +00503c: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ +005042: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=73 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lde/duenndns/gmdice/R$id; │ │ │ │ Virtual methods - │ │ - source_file_idx : 193 (R.java) │ │ + source_file_idx : 192 (R.java) │ │ │ │ Class #20 header: │ │ -class_idx : 82 │ │ +class_idx : 81 │ │ access_flags : 17 (0x0011) │ │ -superclass_idx : 97 │ │ -source_file_idx : 193 │ │ +superclass_idx : 96 │ │ +source_file_idx : 192 │ │ static_fields_size : 5 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 0 │ │ │ │ Class #20 annotations: │ │ Annotations on class │ │ @@ -4788,31 +4811,31 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -004ed0: |[004ed0] de.duenndns.gmdice.R$layout.:()V │ │ -004ee0: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ -004ee6: 0e00 |0003: return-void │ │ +005044: |[005044] de.duenndns.gmdice.R$layout.:()V │ │ +005054: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ +00505a: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=91 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lde/duenndns/gmdice/R$layout; │ │ │ │ Virtual methods - │ │ - source_file_idx : 193 (R.java) │ │ + source_file_idx : 192 (R.java) │ │ │ │ Class #21 header: │ │ -class_idx : 83 │ │ +class_idx : 82 │ │ access_flags : 17 (0x0011) │ │ -superclass_idx : 97 │ │ -source_file_idx : 193 │ │ +superclass_idx : 96 │ │ +source_file_idx : 192 │ │ static_fields_size : 1 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 0 │ │ │ │ Class #21 annotations: │ │ Annotations on class │ │ @@ -4837,31 +4860,31 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -004ee8: |[004ee8] de.duenndns.gmdice.R$menu.:()V │ │ -004ef8: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ -004efe: 0e00 |0003: return-void │ │ +00505c: |[00505c] de.duenndns.gmdice.R$menu.:()V │ │ +00506c: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ +005072: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=98 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lde/duenndns/gmdice/R$menu; │ │ │ │ Virtual methods - │ │ - source_file_idx : 193 (R.java) │ │ + source_file_idx : 192 (R.java) │ │ │ │ Class #22 header: │ │ -class_idx : 84 │ │ +class_idx : 83 │ │ access_flags : 17 (0x0011) │ │ -superclass_idx : 97 │ │ -source_file_idx : 193 │ │ +superclass_idx : 96 │ │ +source_file_idx : 192 │ │ static_fields_size : 19 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 0 │ │ │ │ Class #22 annotations: │ │ Annotations on class │ │ @@ -4976,31 +4999,31 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -004f00: |[004f00] de.duenndns.gmdice.R$string.:()V │ │ -004f10: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ -004f16: 0e00 |0003: return-void │ │ +005074: |[005074] de.duenndns.gmdice.R$string.:()V │ │ +005084: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ +00508a: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=101 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lde/duenndns/gmdice/R$string; │ │ │ │ Virtual methods - │ │ - source_file_idx : 193 (R.java) │ │ + source_file_idx : 192 (R.java) │ │ │ │ Class #23 header: │ │ -class_idx : 85 │ │ +class_idx : 84 │ │ access_flags : 17 (0x0011) │ │ -superclass_idx : 97 │ │ -source_file_idx : 193 │ │ +superclass_idx : 96 │ │ +source_file_idx : 192 │ │ static_fields_size : 6 │ │ instance_fields_size: 0 │ │ direct_methods_size : 2 │ │ virtual_methods_size: 0 │ │ │ │ Class #23 annotations: │ │ Annotations on class │ │ @@ -5050,53 +5073,53 @@ │ │ type : '()V' │ │ access : 0x10008 (STATIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 0 │ │ outs : 0 │ │ insns size : 24 16-bit code units │ │ -004f18: |[004f18] de.duenndns.gmdice.R$styleable.:()V │ │ -004f28: 1250 |0000: const/4 v0, #int 5 // #5 │ │ -004f2a: 2300 7300 |0001: new-array v0, v0, [I // type@0073 │ │ -004f2e: 2600 0700 0000 |0003: fill-array-data v0, 0000000a // +00000007 │ │ -004f34: 6900 8d00 |0006: sput-object v0, Lde/duenndns/gmdice/R$styleable;.numberpicker:[I // field@008d │ │ -004f38: 0e00 |0008: return-void │ │ -004f3a: 0000 |0009: nop // spacer │ │ -004f3c: 0003 0400 0500 0000 0000 017f 0100 ... |000a: array-data (14 units) │ │ +00508c: |[00508c] de.duenndns.gmdice.R$styleable.:()V │ │ +00509c: 1250 |0000: const/4 v0, #int 5 // #5 │ │ +00509e: 2300 7200 |0001: new-array v0, v0, [I // type@0072 │ │ +0050a2: 2600 0700 0000 |0003: fill-array-data v0, 0000000a // +00000007 │ │ +0050a8: 6900 8d00 |0006: sput-object v0, Lde/duenndns/gmdice/R$styleable;.numberpicker:[I // field@008d │ │ +0050ac: 0e00 |0008: return-void │ │ +0050ae: 0000 |0009: nop // spacer │ │ +0050b0: 0003 0400 0500 0000 0000 017f 0100 ... |000a: array-data (14 units) │ │ catches : (none) │ │ positions : │ │ 0x0000 line=141 │ │ locals : │ │ │ │ #1 : (in Lde/duenndns/gmdice/R$styleable;) │ │ name : '' │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -004f58: |[004f58] de.duenndns.gmdice.R$styleable.:()V │ │ -004f68: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ -004f6e: 0e00 |0003: return-void │ │ +0050cc: |[0050cc] de.duenndns.gmdice.R$styleable.:()V │ │ +0050dc: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ +0050e2: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=122 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lde/duenndns/gmdice/R$styleable; │ │ │ │ Virtual methods - │ │ - source_file_idx : 193 (R.java) │ │ + source_file_idx : 192 (R.java) │ │ │ │ Class #24 header: │ │ -class_idx : 86 │ │ +class_idx : 85 │ │ access_flags : 17 (0x0011) │ │ -superclass_idx : 97 │ │ -source_file_idx : 193 │ │ +superclass_idx : 96 │ │ +source_file_idx : 192 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 0 │ │ │ │ Class #24 annotations: │ │ Annotations on class │ │ @@ -5115,31 +5138,30 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 1 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 4 16-bit code units │ │ -004f70: |[004f70] de.duenndns.gmdice.R.:()V │ │ -004f80: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ -004f86: 0e00 |0003: return-void │ │ +0050e4: |[0050e4] de.duenndns.gmdice.R.:()V │ │ +0050f4: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ +0050fa: 0e00 |0003: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=10 │ │ - 0x0003 line=122 │ │ locals : │ │ 0x0000 - 0x0004 reg=0 this Lde/duenndns/gmdice/R; │ │ │ │ Virtual methods - │ │ - source_file_idx : 193 (R.java) │ │ + source_file_idx : 192 (R.java) │ │ │ │ Class #25 header: │ │ -class_idx : 87 │ │ +class_idx : 86 │ │ access_flags : 0 (0x0000) │ │ -superclass_idx : 97 │ │ +superclass_idx : 96 │ │ source_file_idx : 46 │ │ static_fields_size : 0 │ │ instance_fields_size: 2 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 3 │ │ │ │ Class #25 - │ │ @@ -5163,19 +5185,19 @@ │ │ type : '(Ljava/lang/String;I)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 1 │ │ insns size : 8 16-bit code units │ │ -004f88: |[004f88] de.duenndns.gmdice.RollResult.:(Ljava/lang/String;I)V │ │ -004f98: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ -004f9e: 5b01 9400 |0003: iput-object v1, v0, Lde/duenndns/gmdice/RollResult;.result:Ljava/lang/String; // field@0094 │ │ -004fa2: 5902 9300 |0005: iput v2, v0, Lde/duenndns/gmdice/RollResult;.color:I // field@0093 │ │ -004fa6: 0e00 |0007: return-void │ │ +0050fc: |[0050fc] de.duenndns.gmdice.RollResult.:(Ljava/lang/String;I)V │ │ +00510c: 7010 0501 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.:()V // method@0105 │ │ +005112: 5b01 9400 |0003: iput-object v1, v0, Lde/duenndns/gmdice/RollResult;.result:Ljava/lang/String; // field@0094 │ │ +005116: 5902 9300 |0005: iput v2, v0, Lde/duenndns/gmdice/RollResult;.color:I // field@0093 │ │ +00511a: 0e00 |0007: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=350 │ │ 0x0003 line=351 │ │ 0x0005 line=352 │ │ 0x0007 line=353 │ │ locals : │ │ @@ -5189,17 +5211,17 @@ │ │ type : '(I)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -004fa8: |[004fa8] de.duenndns.gmdice.RollResult.setColor:(I)V │ │ -004fb8: 5901 9300 |0000: iput v1, v0, Lde/duenndns/gmdice/RollResult;.color:I // field@0093 │ │ -004fbc: 0e00 |0002: return-void │ │ +00511c: |[00511c] de.duenndns.gmdice.RollResult.setColor:(I)V │ │ +00512c: 5901 9300 |0000: iput v1, v0, Lde/duenndns/gmdice/RollResult;.color:I // field@0093 │ │ +005130: 0e00 |0002: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=356 │ │ 0x0002 line=357 │ │ locals : │ │ 0x0000 - 0x0003 reg=0 this Lde/duenndns/gmdice/RollResult; │ │ 0x0000 - 0x0003 reg=1 col I │ │ @@ -5209,63 +5231,67 @@ │ │ type : '(Landroid/content/Context;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 34 16-bit code units │ │ -004fc0: |[004fc0] de.duenndns.gmdice.RollResult.showDetails:(Landroid/content/Context;)V │ │ -004fd0: 2200 0400 |0000: new-instance v0, Landroid/app/AlertDialog$Builder; // type@0004 │ │ -004fd4: 7020 0200 4000 |0002: invoke-direct {v0, v4}, Landroid/app/AlertDialog$Builder;.:(Landroid/content/Context;)V // method@0002 │ │ -004fda: 1401 0a00 047f |0005: const v1, #float 1.75458e+38 // #7f04000a │ │ -004fe0: 6e20 0a00 1000 |0008: invoke-virtual {v0, v1}, Landroid/app/AlertDialog$Builder;.setTitle:(I)Landroid/app/AlertDialog$Builder; // method@000a │ │ -004fe6: 0c00 |000b: move-result-object v0 │ │ -004fe8: 5431 9400 |000c: iget-object v1, v3, Lde/duenndns/gmdice/RollResult;.result:Ljava/lang/String; // field@0094 │ │ -004fec: 6e20 0600 1000 |000e: invoke-virtual {v0, v1}, Landroid/app/AlertDialog$Builder;.setMessage:(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder; // method@0006 │ │ -004ff2: 0c00 |0011: move-result-object v0 │ │ -004ff4: 1401 0a00 0401 |0012: const v1, #float 2.42446e-38 // #0104000a │ │ -004ffa: 1202 |0015: const/4 v2, #int 0 // #0 │ │ -004ffc: 6e30 0900 1002 |0016: invoke-virtual {v0, v1, v2}, Landroid/app/AlertDialog$Builder;.setPositiveButton:(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; // method@0009 │ │ -005002: 0c00 |0019: move-result-object v0 │ │ -005004: 6e10 0300 0000 |001a: invoke-virtual {v0}, Landroid/app/AlertDialog$Builder;.create:()Landroid/app/AlertDialog; // method@0003 │ │ -00500a: 0c00 |001d: move-result-object v0 │ │ -00500c: 6e10 0d00 0000 |001e: invoke-virtual {v0}, Landroid/app/AlertDialog;.show:()V // method@000d │ │ -005012: 0e00 |0021: return-void │ │ +005134: |[005134] de.duenndns.gmdice.RollResult.showDetails:(Landroid/content/Context;)V │ │ +005144: 2200 0400 |0000: new-instance v0, Landroid/app/AlertDialog$Builder; // type@0004 │ │ +005148: 7020 0200 4000 |0002: invoke-direct {v0, v4}, Landroid/app/AlertDialog$Builder;.:(Landroid/content/Context;)V // method@0002 │ │ +00514e: 1401 0a00 047f |0005: const v1, #float 1.75458e+38 // #7f04000a │ │ +005154: 6e20 0a00 1000 |0008: invoke-virtual {v0, v1}, Landroid/app/AlertDialog$Builder;.setTitle:(I)Landroid/app/AlertDialog$Builder; // method@000a │ │ +00515a: 0c00 |000b: move-result-object v0 │ │ +00515c: 5431 9400 |000c: iget-object v1, v3, Lde/duenndns/gmdice/RollResult;.result:Ljava/lang/String; // field@0094 │ │ +005160: 6e20 0600 1000 |000e: invoke-virtual {v0, v1}, Landroid/app/AlertDialog$Builder;.setMessage:(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder; // method@0006 │ │ +005166: 0c00 |0011: move-result-object v0 │ │ +005168: 1401 0a00 0401 |0012: const v1, #float 2.42446e-38 // #0104000a │ │ +00516e: 1202 |0015: const/4 v2, #int 0 // #0 │ │ +005170: 6e30 0900 1002 |0016: invoke-virtual {v0, v1, v2}, Landroid/app/AlertDialog$Builder;.setPositiveButton:(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; // method@0009 │ │ +005176: 0c00 |0019: move-result-object v0 │ │ +005178: 6e10 0300 0000 |001a: invoke-virtual {v0}, Landroid/app/AlertDialog$Builder;.create:()Landroid/app/AlertDialog; // method@0003 │ │ +00517e: 0c00 |001d: move-result-object v0 │ │ +005180: 6e10 0d00 0000 |001e: invoke-virtual {v0}, Landroid/app/AlertDialog;.show:()V // method@000d │ │ +005186: 0e00 |0021: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=360 │ │ + 0x0008 line=361 │ │ + 0x000e line=362 │ │ + 0x0016 line=363 │ │ + 0x001a line=364 │ │ 0x0021 line=365 │ │ locals : │ │ 0x0000 - 0x0022 reg=3 this Lde/duenndns/gmdice/RollResult; │ │ 0x0000 - 0x0022 reg=4 ctx Landroid/content/Context; │ │ │ │ #2 : (in Lde/duenndns/gmdice/RollResult;) │ │ name : 'toString' │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -005014: |[005014] de.duenndns.gmdice.RollResult.toString:()Ljava/lang/String; │ │ -005024: 5410 9400 |0000: iget-object v0, v1, Lde/duenndns/gmdice/RollResult;.result:Ljava/lang/String; // field@0094 │ │ -005028: 1100 |0002: return-object v0 │ │ +005188: |[005188] de.duenndns.gmdice.RollResult.toString:()Ljava/lang/String; │ │ +005198: 5410 9400 |0000: iget-object v0, v1, Lde/duenndns/gmdice/RollResult;.result:Ljava/lang/String; // field@0094 │ │ +00519c: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=369 │ │ locals : │ │ 0x0000 - 0x0003 reg=1 this Lde/duenndns/gmdice/RollResult; │ │ │ │ source_file_idx : 46 (GameMasterDice.java) │ │ │ │ Class #26 header: │ │ -class_idx : 88 │ │ +class_idx : 87 │ │ access_flags : 0 (0x0000) │ │ -superclass_idx : 43 │ │ +superclass_idx : 42 │ │ source_file_idx : 46 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #26 annotations: │ │ @@ -5285,18 +5311,18 @@ │ │ type : '(Landroid/content/Context;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 7 16-bit code units │ │ -00502c: |[00502c] de.duenndns.gmdice.RollResultAdapter.:(Landroid/content/Context;)V │ │ -00503c: 1400 0400 037f |0000: const v0, #float 1.74129e+38 // #7f030004 │ │ -005042: 7030 3900 2100 |0003: invoke-direct {v1, v2, v0}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I)V // method@0039 │ │ -005048: 0e00 |0006: return-void │ │ +0051a0: |[0051a0] de.duenndns.gmdice.RollResultAdapter.:(Landroid/content/Context;)V │ │ +0051b0: 1400 0400 037f |0000: const v0, #float 1.74129e+38 // #7f030004 │ │ +0051b6: 7030 3900 2100 |0003: invoke-direct {v1, v2, v0}, Landroid/widget/ArrayAdapter;.:(Landroid/content/Context;I)V // method@0039 │ │ +0051bc: 0e00 |0006: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=376 │ │ 0x0006 line=377 │ │ locals : │ │ 0x0000 - 0x0007 reg=1 this Lde/duenndns/gmdice/RollResultAdapter; │ │ 0x0000 - 0x0007 reg=2 ctx Landroid/content/Context; │ │ @@ -5307,25 +5333,25 @@ │ │ type : '(ILandroid/view/View;Landroid/view/ViewGroup;)Landroid/view/View;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 4 │ │ outs : 4 │ │ insns size : 19 16-bit code units │ │ -00504c: |[00504c] de.duenndns.gmdice.RollResultAdapter.getView:(ILandroid/view/View;Landroid/view/ViewGroup;)Landroid/view/View; │ │ -00505c: 6f40 3e00 4365 |0000: invoke-super {v3, v4, v5, v6}, Landroid/widget/ArrayAdapter;.getView:(ILandroid/view/View;Landroid/view/ViewGroup;)Landroid/view/View; // method@003e │ │ -005062: 0c00 |0003: move-result-object v0 │ │ -005064: 0701 |0004: move-object v1, v0 │ │ -005066: 1f01 3400 |0005: check-cast v1, Landroid/widget/TextView; // type@0034 │ │ -00506a: 6e20 f900 4300 |0007: invoke-virtual {v3, v4}, Lde/duenndns/gmdice/RollResultAdapter;.getItem:(I)Ljava/lang/Object; // method@00f9 │ │ -005070: 0c02 |000a: move-result-object v2 │ │ -005072: 1f02 5700 |000b: check-cast v2, Lde/duenndns/gmdice/RollResult; // type@0057 │ │ -005076: 5222 9300 |000d: iget v2, v2, Lde/duenndns/gmdice/RollResult;.color:I // field@0093 │ │ -00507a: 6e20 5e00 2100 |000f: invoke-virtual {v1, v2}, Landroid/widget/TextView;.setTextColor:(I)V // method@005e │ │ -005080: 1100 |0012: return-object v0 │ │ +0051c0: |[0051c0] de.duenndns.gmdice.RollResultAdapter.getView:(ILandroid/view/View;Landroid/view/ViewGroup;)Landroid/view/View; │ │ +0051d0: 6f40 3e00 4365 |0000: invoke-super {v3, v4, v5, v6}, Landroid/widget/ArrayAdapter;.getView:(ILandroid/view/View;Landroid/view/ViewGroup;)Landroid/view/View; // method@003e │ │ +0051d6: 0c00 |0003: move-result-object v0 │ │ +0051d8: 0701 |0004: move-object v1, v0 │ │ +0051da: 1f01 3300 |0005: check-cast v1, Landroid/widget/TextView; // type@0033 │ │ +0051de: 6e20 f900 4300 |0007: invoke-virtual {v3, v4}, Lde/duenndns/gmdice/RollResultAdapter;.getItem:(I)Ljava/lang/Object; // method@00f9 │ │ +0051e4: 0c02 |000a: move-result-object v2 │ │ +0051e6: 1f02 5600 |000b: check-cast v2, Lde/duenndns/gmdice/RollResult; // type@0056 │ │ +0051ea: 5222 9300 |000d: iget v2, v2, Lde/duenndns/gmdice/RollResult;.color:I // field@0093 │ │ +0051ee: 6e20 5e00 2100 |000f: invoke-virtual {v1, v2}, Landroid/widget/TextView;.setTextColor:(I)V // method@005e │ │ +0051f4: 1100 |0012: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=380 │ │ 0x0005 line=381 │ │ 0x0012 line=382 │ │ locals : │ │ 0x0004 - 0x0013 reg=0 res Landroid/view/View; │ │ @@ -5333,17 +5359,17 @@ │ │ 0x0000 - 0x0013 reg=4 position I │ │ 0x0000 - 0x0013 reg=5 convertView Landroid/view/View; │ │ 0x0000 - 0x0013 reg=6 parent Landroid/view/ViewGroup; │ │ │ │ source_file_idx : 46 (GameMasterDice.java) │ │ │ │ Class #27 header: │ │ -class_idx : 59 │ │ +class_idx : 58 │ │ access_flags : 1 (0x0001) │ │ -superclass_idx : 62 │ │ +superclass_idx : 61 │ │ source_file_idx : 30 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 2 │ │ │ │ Class #27 - │ │ @@ -5359,23 +5385,23 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 13 16-bit code units │ │ -005084: |[005084] de.duenndns.gmdice.Coin.:()V │ │ -005094: 7010 6e00 0100 |0000: invoke-direct {v1}, Lde/duenndns/gmdice/DiceSet;.:()V // method@006e │ │ -00509a: 1210 |0003: const/4 v0, #int 1 // #1 │ │ -00509c: 5910 0300 |0004: iput v0, v1, Lde/duenndns/gmdice/Coin;.count:I // field@0003 │ │ -0050a0: 1220 |0006: const/4 v0, #int 2 // #2 │ │ -0050a2: 5910 0500 |0007: iput v0, v1, Lde/duenndns/gmdice/Coin;.sides:I // field@0005 │ │ -0050a6: 1200 |0009: const/4 v0, #int 0 // #0 │ │ -0050a8: 5910 0400 |000a: iput v0, v1, Lde/duenndns/gmdice/Coin;.modifier:I // field@0004 │ │ -0050ac: 0e00 |000c: return-void │ │ +0051f8: |[0051f8] de.duenndns.gmdice.Coin.:()V │ │ +005208: 7010 6e00 0100 |0000: invoke-direct {v1}, Lde/duenndns/gmdice/DiceSet;.:()V // method@006e │ │ +00520e: 1210 |0003: const/4 v0, #int 1 // #1 │ │ +005210: 5910 0300 |0004: iput v0, v1, Lde/duenndns/gmdice/Coin;.count:I // field@0003 │ │ +005214: 1220 |0006: const/4 v0, #int 2 // #2 │ │ +005216: 5910 0500 |0007: iput v0, v1, Lde/duenndns/gmdice/Coin;.sides:I // field@0005 │ │ +00521a: 1200 |0009: const/4 v0, #int 0 // #0 │ │ +00521c: 5910 0400 |000a: iput v0, v1, Lde/duenndns/gmdice/Coin;.modifier:I // field@0004 │ │ +005220: 0e00 |000c: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=26 │ │ 0x0003 line=27 │ │ 0x0006 line=28 │ │ 0x0009 line=29 │ │ 0x000c line=30 │ │ @@ -5388,26 +5414,26 @@ │ │ type : '(Landroid/content/Context;Ljava/util/Random;)Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 3 │ │ outs : 2 │ │ insns size : 20 16-bit code units │ │ -0050b0: |[0050b0] de.duenndns.gmdice.Coin.roll:(Landroid/content/Context;Ljava/util/Random;)Ljava/lang/String; │ │ -0050c0: 1220 |0000: const/4 v0, #int 2 // #2 │ │ -0050c2: 6e20 2701 0400 |0001: invoke-virtual {v4, v0}, Ljava/util/Random;.nextInt:(I)I // method@0127 │ │ -0050c8: 0a00 |0004: move-result v0 │ │ -0050ca: 1211 |0005: const/4 v1, #int 1 // #1 │ │ -0050cc: 3310 0a00 |0006: if-ne v0, v1, 0010 // +000a │ │ -0050d0: 1400 0c00 047f |0008: const v0, #float 1.75458e+38 // #7f04000c │ │ -0050d6: 6e20 1300 0300 |000b: invoke-virtual {v3, v0}, Landroid/content/Context;.getString:(I)Ljava/lang/String; // method@0013 │ │ -0050dc: 0c00 |000e: move-result-object v0 │ │ -0050de: 1100 |000f: return-object v0 │ │ -0050e0: 1400 0b00 047f |0010: const v0, #float 1.75458e+38 // #7f04000b │ │ -0050e6: 28f8 |0013: goto 000b // -0008 │ │ +005224: |[005224] de.duenndns.gmdice.Coin.roll:(Landroid/content/Context;Ljava/util/Random;)Ljava/lang/String; │ │ +005234: 1220 |0000: const/4 v0, #int 2 // #2 │ │ +005236: 6e20 2701 0400 |0001: invoke-virtual {v4, v0}, Ljava/util/Random;.nextInt:(I)I // method@0127 │ │ +00523c: 0a00 |0004: move-result v0 │ │ +00523e: 1211 |0005: const/4 v1, #int 1 // #1 │ │ +005240: 3310 0a00 |0006: if-ne v0, v1, 0010 // +000a │ │ +005244: 1400 0c00 047f |0008: const v0, #float 1.75458e+38 // #7f04000c │ │ +00524a: 6e20 1300 0300 |000b: invoke-virtual {v3, v0}, Landroid/content/Context;.getString:(I)Ljava/lang/String; // method@0013 │ │ +005250: 0c00 |000e: move-result-object v0 │ │ +005252: 1100 |000f: return-object v0 │ │ +005254: 1400 0b00 047f |0010: const v0, #float 1.75458e+38 // #7f04000b │ │ +00525a: 28f8 |0013: goto 000b // -0008 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=37 │ │ locals : │ │ 0x0000 - 0x0014 reg=2 this Lde/duenndns/gmdice/Coin; │ │ 0x0000 - 0x0014 reg=3 ctx Landroid/content/Context; │ │ 0x0000 - 0x0014 reg=4 gen Ljava/util/Random; │ │ @@ -5417,29 +5443,29 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -0050e8: |[0050e8] de.duenndns.gmdice.Coin.toString:()Ljava/lang/String; │ │ -0050f8: 1a00 0f00 |0000: const-string v0, "1d2" // string@000f │ │ -0050fc: 1100 |0002: return-object v0 │ │ +00525c: |[00525c] de.duenndns.gmdice.Coin.toString:()Ljava/lang/String; │ │ +00526c: 1a00 0f00 |0000: const-string v0, "1d2" // string@000f │ │ +005270: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=33 │ │ locals : │ │ 0x0000 - 0x0003 reg=1 this Lde/duenndns/gmdice/Coin; │ │ │ │ source_file_idx : 30 (Coin.java) │ │ │ │ Class #28 header: │ │ -class_idx : 60 │ │ +class_idx : 59 │ │ access_flags : 1 (0x0001) │ │ -superclass_idx : 62 │ │ +superclass_idx : 61 │ │ source_file_idx : 38 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 3 │ │ │ │ Class #28 - │ │ @@ -5455,23 +5481,23 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 14 16-bit code units │ │ -005100: |[005100] de.duenndns.gmdice.DSADiceSet.:()V │ │ -005110: 7010 6e00 0100 |0000: invoke-direct {v1}, Lde/duenndns/gmdice/DiceSet;.:()V // method@006e │ │ -005116: 1230 |0003: const/4 v0, #int 3 // #3 │ │ -005118: 5910 0600 |0004: iput v0, v1, Lde/duenndns/gmdice/DSADiceSet;.count:I // field@0006 │ │ -00511c: 1300 1400 |0006: const/16 v0, #int 20 // #14 │ │ -005120: 5910 0800 |0008: iput v0, v1, Lde/duenndns/gmdice/DSADiceSet;.sides:I // field@0008 │ │ -005124: 1200 |000a: const/4 v0, #int 0 // #0 │ │ -005126: 5910 0700 |000b: iput v0, v1, Lde/duenndns/gmdice/DSADiceSet;.modifier:I // field@0007 │ │ -00512a: 0e00 |000d: return-void │ │ +005274: |[005274] de.duenndns.gmdice.DSADiceSet.:()V │ │ +005284: 7010 6e00 0100 |0000: invoke-direct {v1}, Lde/duenndns/gmdice/DiceSet;.:()V // method@006e │ │ +00528a: 1230 |0003: const/4 v0, #int 3 // #3 │ │ +00528c: 5910 0600 |0004: iput v0, v1, Lde/duenndns/gmdice/DSADiceSet;.count:I // field@0006 │ │ +005290: 1300 1400 |0006: const/16 v0, #int 20 // #14 │ │ +005294: 5910 0800 |0008: iput v0, v1, Lde/duenndns/gmdice/DSADiceSet;.sides:I // field@0008 │ │ +005298: 1200 |000a: const/4 v0, #int 0 // #0 │ │ +00529a: 5910 0700 |000b: iput v0, v1, Lde/duenndns/gmdice/DSADiceSet;.modifier:I // field@0007 │ │ +00529e: 0e00 |000d: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=27 │ │ 0x0003 line=28 │ │ 0x0006 line=29 │ │ 0x000a line=30 │ │ 0x000d line=31 │ │ @@ -5484,17 +5510,17 @@ │ │ type : '()I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 4 16-bit code units │ │ -00512c: |[00512c] de.duenndns.gmdice.DSADiceSet.hashCode:()I │ │ -00513c: 1400 40bf 0f00 |0000: const v0, #float 1.44614e-39 // #000fbf40 │ │ -005142: 0f00 |0003: return v0 │ │ +0052a0: |[0052a0] de.duenndns.gmdice.DSADiceSet.hashCode:()I │ │ +0052b0: 1400 40bf 0f00 |0000: const v0, #float 1.44614e-39 // #000fbf40 │ │ +0052b6: 0f00 |0003: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=49 │ │ locals : │ │ 0x0000 - 0x0004 reg=1 this Lde/duenndns/gmdice/DSADiceSet; │ │ │ │ #1 : (in Lde/duenndns/gmdice/DSADiceSet;) │ │ @@ -5502,35 +5528,35 @@ │ │ type : '(Landroid/content/Context;Ljava/util/Random;)Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 3 │ │ outs : 2 │ │ insns size : 40 16-bit code units │ │ -005144: |[005144] de.duenndns.gmdice.DSADiceSet.roll:(Landroid/content/Context;Ljava/util/Random;)Ljava/lang/String; │ │ -005154: 2202 6400 |0000: new-instance v2, Ljava/lang/StringBuilder; // type@0064 │ │ -005158: 7010 1001 0200 |0002: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ -00515e: 1200 |0005: const/4 v0, #int 0 // #0 │ │ -005160: 5243 0600 |0006: iget v3, v4, Lde/duenndns/gmdice/DSADiceSet;.count:I // field@0006 │ │ -005164: 3530 1b00 |0008: if-ge v0, v3, 0023 // +001b │ │ -005168: 5243 0800 |000a: iget v3, v4, Lde/duenndns/gmdice/DSADiceSet;.sides:I // field@0008 │ │ -00516c: 6e20 2701 3600 |000c: invoke-virtual {v6, v3}, Ljava/util/Random;.nextInt:(I)I // method@0127 │ │ -005172: 0a03 |000f: move-result v3 │ │ -005174: d801 0301 |0010: add-int/lit8 v1, v3, #int 1 // #01 │ │ -005178: 6e20 1101 1200 |0012: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0111 │ │ -00517e: 5243 0600 |0015: iget v3, v4, Lde/duenndns/gmdice/DSADiceSet;.count:I // field@0006 │ │ -005182: d803 03ff |0017: add-int/lit8 v3, v3, #int -1 // #ff │ │ -005186: 3530 0700 |0019: if-ge v0, v3, 0020 // +0007 │ │ -00518a: 1a03 0500 |001b: const-string v3, " · " // string@0005 │ │ -00518e: 6e20 1301 3200 |001d: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -005194: d800 0001 |0020: add-int/lit8 v0, v0, #int 1 // #01 │ │ -005198: 28e4 |0022: goto 0006 // -001c │ │ -00519a: 6e10 1601 0200 |0023: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ -0051a0: 0c03 |0026: move-result-object v3 │ │ -0051a2: 1103 |0027: return-object v3 │ │ +0052b8: |[0052b8] de.duenndns.gmdice.DSADiceSet.roll:(Landroid/content/Context;Ljava/util/Random;)Ljava/lang/String; │ │ +0052c8: 2202 6300 |0000: new-instance v2, Ljava/lang/StringBuilder; // type@0063 │ │ +0052cc: 7010 1001 0200 |0002: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ +0052d2: 1200 |0005: const/4 v0, #int 0 // #0 │ │ +0052d4: 5243 0600 |0006: iget v3, v4, Lde/duenndns/gmdice/DSADiceSet;.count:I // field@0006 │ │ +0052d8: 3530 1b00 |0008: if-ge v0, v3, 0023 // +001b │ │ +0052dc: 5243 0800 |000a: iget v3, v4, Lde/duenndns/gmdice/DSADiceSet;.sides:I // field@0008 │ │ +0052e0: 6e20 2701 3600 |000c: invoke-virtual {v6, v3}, Ljava/util/Random;.nextInt:(I)I // method@0127 │ │ +0052e6: 0a03 |000f: move-result v3 │ │ +0052e8: d801 0301 |0010: add-int/lit8 v1, v3, #int 1 // #01 │ │ +0052ec: 6e20 1101 1200 |0012: invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0111 │ │ +0052f2: 5243 0600 |0015: iget v3, v4, Lde/duenndns/gmdice/DSADiceSet;.count:I // field@0006 │ │ +0052f6: d803 03ff |0017: add-int/lit8 v3, v3, #int -1 // #ff │ │ +0052fa: 3530 0700 |0019: if-ge v0, v3, 0020 // +0007 │ │ +0052fe: 1a03 0500 |001b: const-string v3, " · " // string@0005 │ │ +005302: 6e20 1301 3200 |001d: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +005308: d800 0001 |0020: add-int/lit8 v0, v0, #int 1 // #01 │ │ +00530c: 28e4 |0022: goto 0006 // -001c │ │ +00530e: 6e10 1601 0200 |0023: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ +005314: 0c03 |0026: move-result-object v3 │ │ +005316: 1103 |0027: return-object v3 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=34 │ │ 0x0005 line=35 │ │ 0x000a line=36 │ │ 0x0012 line=37 │ │ 0x0015 line=38 │ │ @@ -5550,29 +5576,29 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -0051a4: |[0051a4] de.duenndns.gmdice.DSADiceSet.toString:()Ljava/lang/String; │ │ -0051b4: 1a00 1300 |0000: const-string v0, "3D20" // string@0013 │ │ -0051b8: 1100 |0002: return-object v0 │ │ +005318: |[005318] de.duenndns.gmdice.DSADiceSet.toString:()Ljava/lang/String; │ │ +005328: 1a00 1300 |0000: const-string v0, "3D20" // string@0013 │ │ +00532c: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=45 │ │ locals : │ │ 0x0000 - 0x0003 reg=1 this Lde/duenndns/gmdice/DSADiceSet; │ │ │ │ source_file_idx : 38 (DSADiceSet.java) │ │ │ │ Class #29 header: │ │ -class_idx : 63 │ │ +class_idx : 62 │ │ access_flags : 1 (0x0001) │ │ -superclass_idx : 62 │ │ +superclass_idx : 61 │ │ source_file_idx : 43 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 3 │ │ │ │ Class #29 - │ │ @@ -5588,23 +5614,23 @@ │ │ type : '()V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 1 │ │ insns size : 13 16-bit code units │ │ -0051bc: |[0051bc] de.duenndns.gmdice.FUDGEDiceSet.:()V │ │ -0051cc: 7010 6e00 0100 |0000: invoke-direct {v1}, Lde/duenndns/gmdice/DiceSet;.:()V // method@006e │ │ -0051d2: 1240 |0003: const/4 v0, #int 4 // #4 │ │ -0051d4: 5910 1000 |0004: iput v0, v1, Lde/duenndns/gmdice/FUDGEDiceSet;.count:I // field@0010 │ │ -0051d8: 1230 |0006: const/4 v0, #int 3 // #3 │ │ -0051da: 5910 1200 |0007: iput v0, v1, Lde/duenndns/gmdice/FUDGEDiceSet;.sides:I // field@0012 │ │ -0051de: 1200 |0009: const/4 v0, #int 0 // #0 │ │ -0051e0: 5910 1100 |000a: iput v0, v1, Lde/duenndns/gmdice/FUDGEDiceSet;.modifier:I // field@0011 │ │ -0051e4: 0e00 |000c: return-void │ │ +005330: |[005330] de.duenndns.gmdice.FUDGEDiceSet.:()V │ │ +005340: 7010 6e00 0100 |0000: invoke-direct {v1}, Lde/duenndns/gmdice/DiceSet;.:()V // method@006e │ │ +005346: 1240 |0003: const/4 v0, #int 4 // #4 │ │ +005348: 5910 1000 |0004: iput v0, v1, Lde/duenndns/gmdice/FUDGEDiceSet;.count:I // field@0010 │ │ +00534c: 1230 |0006: const/4 v0, #int 3 // #3 │ │ +00534e: 5910 1200 |0007: iput v0, v1, Lde/duenndns/gmdice/FUDGEDiceSet;.sides:I // field@0012 │ │ +005352: 1200 |0009: const/4 v0, #int 0 // #0 │ │ +005354: 5910 1100 |000a: iput v0, v1, Lde/duenndns/gmdice/FUDGEDiceSet;.modifier:I // field@0011 │ │ +005358: 0e00 |000c: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=27 │ │ 0x0003 line=28 │ │ 0x0006 line=29 │ │ 0x0009 line=30 │ │ 0x000c line=31 │ │ @@ -5617,17 +5643,17 @@ │ │ type : '()I' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 4 16-bit code units │ │ -0051e8: |[0051e8] de.duenndns.gmdice.FUDGEDiceSet.hashCode:()I │ │ -0051f8: 1400 ec33 9900 |0000: const v0, #float 1.40695e-38 // #009933ec │ │ -0051fe: 0f00 |0003: return v0 │ │ +00535c: |[00535c] de.duenndns.gmdice.FUDGEDiceSet.hashCode:()I │ │ +00536c: 1400 ec33 9900 |0000: const v0, #float 1.40695e-38 // #009933ec │ │ +005372: 0f00 |0003: return v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=64 │ │ locals : │ │ 0x0000 - 0x0004 reg=1 this Lde/duenndns/gmdice/FUDGEDiceSet; │ │ │ │ #1 : (in Lde/duenndns/gmdice/FUDGEDiceSet;) │ │ @@ -5635,56 +5661,56 @@ │ │ type : '(Landroid/content/Context;Ljava/util/Random;)Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 8 │ │ ins : 3 │ │ outs : 2 │ │ insns size : 81 16-bit code units │ │ -005200: |[005200] de.duenndns.gmdice.FUDGEDiceSet.roll:(Landroid/content/Context;Ljava/util/Random;)Ljava/lang/String; │ │ -005210: 2202 6400 |0000: new-instance v2, Ljava/lang/StringBuilder; // type@0064 │ │ -005214: 7010 1001 0200 |0002: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ -00521a: 1203 |0005: const/4 v3, #int 0 // #0 │ │ -00521c: 1200 |0006: const/4 v0, #int 0 // #0 │ │ -00521e: 5254 1000 |0007: iget v4, v5, Lde/duenndns/gmdice/FUDGEDiceSet;.count:I // field@0010 │ │ -005222: 3540 3300 |0009: if-ge v0, v4, 003c // +0033 │ │ -005226: 5254 1200 |000b: iget v4, v5, Lde/duenndns/gmdice/FUDGEDiceSet;.sides:I // field@0012 │ │ -00522a: 6e20 2701 4700 |000d: invoke-virtual {v7, v4}, Ljava/util/Random;.nextInt:(I)I // method@0127 │ │ -005230: 0a04 |0010: move-result v4 │ │ -005232: d801 0401 |0011: add-int/lit8 v1, v4, #int 1 // #01 │ │ -005236: 1214 |0013: const/4 v4, #int 1 // #1 │ │ -005238: 3341 1700 |0014: if-ne v1, v4, 002b // +0017 │ │ -00523c: 1a04 0c00 |0016: const-string v4, "-" // string@000c │ │ -005240: 6e20 1301 4200 |0018: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -005246: d803 03ff |001b: add-int/lit8 v3, v3, #int -1 // #ff │ │ -00524a: 5254 1000 |001d: iget v4, v5, Lde/duenndns/gmdice/FUDGEDiceSet;.count:I // field@0010 │ │ -00524e: d804 04ff |001f: add-int/lit8 v4, v4, #int -1 // #ff │ │ -005252: 3540 0700 |0021: if-ge v0, v4, 0028 // +0007 │ │ -005256: 1a04 0100 |0023: const-string v4, " " // string@0001 │ │ -00525a: 6e20 1301 4200 |0025: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -005260: d800 0001 |0028: add-int/lit8 v0, v0, #int 1 // #01 │ │ -005264: 28dd |002a: goto 0007 // -0023 │ │ -005266: 1234 |002b: const/4 v4, #int 3 // #3 │ │ -005268: 3341 0a00 |002c: if-ne v1, v4, 0036 // +000a │ │ -00526c: 1a04 0b00 |002e: const-string v4, "+" // string@000b │ │ -005270: 6e20 1301 4200 |0030: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -005276: d803 0301 |0033: add-int/lit8 v3, v3, #int 1 // #01 │ │ -00527a: 28e8 |0035: goto 001d // -0018 │ │ -00527c: 1a04 0d00 |0036: const-string v4, "0" // string@000d │ │ -005280: 6e20 1301 4200 |0038: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -005286: 28e2 |003b: goto 001d // -001e │ │ -005288: 3d03 0f00 |003c: if-lez v3, 004b // +000f │ │ -00528c: 1a04 0400 |003e: const-string v4, " = +" // string@0004 │ │ -005290: 6e20 1301 4200 |0040: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -005296: 6e20 1101 3200 |0043: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0111 │ │ -00529c: 6e10 1601 0200 |0046: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ -0052a2: 0c04 |0049: move-result-object v4 │ │ -0052a4: 1104 |004a: return-object v4 │ │ -0052a6: 1a04 0300 |004b: const-string v4, " = " // string@0003 │ │ -0052aa: 6e20 1301 4200 |004d: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -0052b0: 28f3 |0050: goto 0043 // -000d │ │ +005374: |[005374] de.duenndns.gmdice.FUDGEDiceSet.roll:(Landroid/content/Context;Ljava/util/Random;)Ljava/lang/String; │ │ +005384: 2202 6300 |0000: new-instance v2, Ljava/lang/StringBuilder; // type@0063 │ │ +005388: 7010 1001 0200 |0002: invoke-direct {v2}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ +00538e: 1203 |0005: const/4 v3, #int 0 // #0 │ │ +005390: 1200 |0006: const/4 v0, #int 0 // #0 │ │ +005392: 5254 1000 |0007: iget v4, v5, Lde/duenndns/gmdice/FUDGEDiceSet;.count:I // field@0010 │ │ +005396: 3540 3300 |0009: if-ge v0, v4, 003c // +0033 │ │ +00539a: 5254 1200 |000b: iget v4, v5, Lde/duenndns/gmdice/FUDGEDiceSet;.sides:I // field@0012 │ │ +00539e: 6e20 2701 4700 |000d: invoke-virtual {v7, v4}, Ljava/util/Random;.nextInt:(I)I // method@0127 │ │ +0053a4: 0a04 |0010: move-result v4 │ │ +0053a6: d801 0401 |0011: add-int/lit8 v1, v4, #int 1 // #01 │ │ +0053aa: 1214 |0013: const/4 v4, #int 1 // #1 │ │ +0053ac: 3341 1700 |0014: if-ne v1, v4, 002b // +0017 │ │ +0053b0: 1a04 0c00 |0016: const-string v4, "-" // string@000c │ │ +0053b4: 6e20 1301 4200 |0018: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +0053ba: d803 03ff |001b: add-int/lit8 v3, v3, #int -1 // #ff │ │ +0053be: 5254 1000 |001d: iget v4, v5, Lde/duenndns/gmdice/FUDGEDiceSet;.count:I // field@0010 │ │ +0053c2: d804 04ff |001f: add-int/lit8 v4, v4, #int -1 // #ff │ │ +0053c6: 3540 0700 |0021: if-ge v0, v4, 0028 // +0007 │ │ +0053ca: 1a04 0100 |0023: const-string v4, " " // string@0001 │ │ +0053ce: 6e20 1301 4200 |0025: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +0053d4: d800 0001 |0028: add-int/lit8 v0, v0, #int 1 // #01 │ │ +0053d8: 28dd |002a: goto 0007 // -0023 │ │ +0053da: 1234 |002b: const/4 v4, #int 3 // #3 │ │ +0053dc: 3341 0a00 |002c: if-ne v1, v4, 0036 // +000a │ │ +0053e0: 1a04 0b00 |002e: const-string v4, "+" // string@000b │ │ +0053e4: 6e20 1301 4200 |0030: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +0053ea: d803 0301 |0033: add-int/lit8 v3, v3, #int 1 // #01 │ │ +0053ee: 28e8 |0035: goto 001d // -0018 │ │ +0053f0: 1a04 0d00 |0036: const-string v4, "0" // string@000d │ │ +0053f4: 6e20 1301 4200 |0038: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +0053fa: 28e2 |003b: goto 001d // -001e │ │ +0053fc: 3d03 0f00 |003c: if-lez v3, 004b // +000f │ │ +005400: 1a04 0400 |003e: const-string v4, " = +" // string@0004 │ │ +005404: 6e20 1301 4200 |0040: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +00540a: 6e20 1101 3200 |0043: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0111 │ │ +005410: 6e10 1601 0200 |0046: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ +005416: 0c04 |0049: move-result-object v4 │ │ +005418: 1104 |004a: return-object v4 │ │ +00541a: 1a04 0300 |004b: const-string v4, " = " // string@0003 │ │ +00541e: 6e20 1301 4200 |004d: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +005424: 28f3 |0050: goto 0043 // -000d │ │ catches : (none) │ │ positions : │ │ 0x0000 line=34 │ │ 0x0005 line=36 │ │ 0x0006 line=37 │ │ 0x000b line=38 │ │ 0x0013 line=39 │ │ @@ -5716,29 +5742,29 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 2 │ │ ins : 1 │ │ outs : 0 │ │ insns size : 3 16-bit code units │ │ -0052b4: |[0052b4] de.duenndns.gmdice.FUDGEDiceSet.toString:()Ljava/lang/String; │ │ -0052c4: 1a00 1400 |0000: const-string v0, "4dF" // string@0014 │ │ -0052c8: 1100 |0002: return-object v0 │ │ +005428: |[005428] de.duenndns.gmdice.FUDGEDiceSet.toString:()Ljava/lang/String; │ │ +005438: 1a00 1400 |0000: const-string v0, "4dF" // string@0014 │ │ +00543c: 1100 |0002: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0000 line=60 │ │ locals : │ │ 0x0000 - 0x0003 reg=1 this Lde/duenndns/gmdice/FUDGEDiceSet; │ │ │ │ source_file_idx : 43 (FUDGEDiceSet.java) │ │ │ │ Class #30 header: │ │ -class_idx : 65 │ │ +class_idx : 64 │ │ access_flags : 0 (0x0000) │ │ -superclass_idx : 78 │ │ +superclass_idx : 77 │ │ source_file_idx : 46 │ │ static_fields_size : 0 │ │ instance_fields_size: 1 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #30 annotations: │ │ @@ -5763,57 +5789,57 @@ │ │ type : '(Lde/duenndns/gmdice/GameMasterDice;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 2 │ │ ins : 2 │ │ outs : 1 │ │ insns size : 6 16-bit code units │ │ -0052cc: |[0052cc] de.duenndns.gmdice.GameMasterDice$2.:(Lde/duenndns/gmdice/GameMasterDice;)V │ │ -0052dc: 5b01 1400 |0000: iput-object v1, v0, Lde/duenndns/gmdice/GameMasterDice$2;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0014 │ │ -0052e0: 7010 e700 0000 |0002: invoke-direct {v0}, Lde/duenndns/gmdice/OnDiceChange;.:()V // method@00e7 │ │ -0052e6: 0e00 |0005: return-void │ │ +005440: |[005440] de.duenndns.gmdice.GameMasterDice$2.:(Lde/duenndns/gmdice/GameMasterDice;)V │ │ +005450: 5b01 1400 |0000: iput-object v1, v0, Lde/duenndns/gmdice/GameMasterDice$2;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0014 │ │ +005454: 7010 e700 0000 |0002: invoke-direct {v0}, Lde/duenndns/gmdice/OnDiceChange;.:()V // method@00e7 │ │ +00545a: 0e00 |0005: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=219 │ │ locals : │ │ 0x0000 - 0x0006 reg=0 this Lde/duenndns/gmdice/GameMasterDice$2; │ │ - 0x0000 - 0x0006 reg=1 (null) Lde/duenndns/gmdice/GameMasterDice; │ │ + 0x0000 - 0x0006 reg=1 this$0 Lde/duenndns/gmdice/GameMasterDice; │ │ │ │ Virtual methods - │ │ #0 : (in Lde/duenndns/gmdice/GameMasterDice$2;) │ │ name : 'onDiceChange' │ │ type : '(Lde/duenndns/gmdice/DiceSet;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 13 16-bit code units │ │ -0052e8: |[0052e8] de.duenndns.gmdice.GameMasterDice$2.onDiceChange:(Lde/duenndns/gmdice/DiceSet;)V │ │ -0052f8: 5430 1400 |0000: iget-object v0, v3, Lde/duenndns/gmdice/GameMasterDice$2;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0014 │ │ -0052fc: 5431 1400 |0002: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice$2;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0014 │ │ -005300: 5411 2500 |0004: iget-object v1, v1, Lde/duenndns/gmdice/GameMasterDice;.button_colors:[I // field@0025 │ │ -005304: 1242 |0006: const/4 v2, #int 4 // #4 │ │ -005306: 4401 0102 |0007: aget v1, v1, v2 │ │ -00530a: 6e30 9d00 4001 |0009: invoke-virtual {v0, v4, v1}, Lde/duenndns/gmdice/GameMasterDice;.roll:(Lde/duenndns/gmdice/DiceSet;I)V // method@009d │ │ -005310: 0e00 |000c: return-void │ │ +00545c: |[00545c] de.duenndns.gmdice.GameMasterDice$2.onDiceChange:(Lde/duenndns/gmdice/DiceSet;)V │ │ +00546c: 5430 1400 |0000: iget-object v0, v3, Lde/duenndns/gmdice/GameMasterDice$2;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0014 │ │ +005470: 5431 1400 |0002: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice$2;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0014 │ │ +005474: 5411 2500 |0004: iget-object v1, v1, Lde/duenndns/gmdice/GameMasterDice;.button_colors:[I // field@0025 │ │ +005478: 1242 |0006: const/4 v2, #int 4 // #4 │ │ +00547a: 4401 0102 |0007: aget v1, v1, v2 │ │ +00547e: 6e30 9d00 4001 |0009: invoke-virtual {v0, v4, v1}, Lde/duenndns/gmdice/GameMasterDice;.roll:(Lde/duenndns/gmdice/DiceSet;I)V // method@009d │ │ +005484: 0e00 |000c: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=221 │ │ 0x000c line=222 │ │ locals : │ │ 0x0000 - 0x000d reg=3 this Lde/duenndns/gmdice/GameMasterDice$2; │ │ 0x0000 - 0x000d reg=4 ds Lde/duenndns/gmdice/DiceSet; │ │ │ │ source_file_idx : 46 (GameMasterDice.java) │ │ │ │ Class #31 header: │ │ -class_idx : 66 │ │ +class_idx : 65 │ │ access_flags : 0 (0x0000) │ │ -superclass_idx : 78 │ │ +superclass_idx : 77 │ │ source_file_idx : 46 │ │ static_fields_size : 0 │ │ instance_fields_size: 2 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #31 annotations: │ │ @@ -5842,58 +5868,58 @@ │ │ type : '(Lde/duenndns/gmdice/GameMasterDice;Landroid/widget/Button;)V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 3 │ │ outs : 1 │ │ insns size : 8 16-bit code units │ │ -005314: |[005314] de.duenndns.gmdice.GameMasterDice$3.:(Lde/duenndns/gmdice/GameMasterDice;Landroid/widget/Button;)V │ │ -005324: 5b01 1500 |0000: iput-object v1, v0, Lde/duenndns/gmdice/GameMasterDice$3;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0015 │ │ -005328: 5b02 1600 |0002: iput-object v2, v0, Lde/duenndns/gmdice/GameMasterDice$3;.val$btn:Landroid/widget/Button; // field@0016 │ │ -00532c: 7010 e700 0000 |0004: invoke-direct {v0}, Lde/duenndns/gmdice/OnDiceChange;.:()V // method@00e7 │ │ -005332: 0e00 |0007: return-void │ │ +005488: |[005488] de.duenndns.gmdice.GameMasterDice$3.:(Lde/duenndns/gmdice/GameMasterDice;Landroid/widget/Button;)V │ │ +005498: 5b01 1500 |0000: iput-object v1, v0, Lde/duenndns/gmdice/GameMasterDice$3;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0015 │ │ +00549c: 5b02 1600 |0002: iput-object v2, v0, Lde/duenndns/gmdice/GameMasterDice$3;.val$btn:Landroid/widget/Button; // field@0016 │ │ +0054a0: 7010 e700 0000 |0004: invoke-direct {v0}, Lde/duenndns/gmdice/OnDiceChange;.:()V // method@00e7 │ │ +0054a6: 0e00 |0007: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=250 │ │ locals : │ │ 0x0000 - 0x0008 reg=0 this Lde/duenndns/gmdice/GameMasterDice$3; │ │ - 0x0000 - 0x0008 reg=1 (null) Lde/duenndns/gmdice/GameMasterDice; │ │ + 0x0000 - 0x0008 reg=1 this$0 Lde/duenndns/gmdice/GameMasterDice; │ │ 0x0000 - 0x0008 reg=2 (null) Landroid/widget/Button; │ │ │ │ Virtual methods - │ │ #0 : (in Lde/duenndns/gmdice/GameMasterDice$3;) │ │ name : 'onDiceChange' │ │ type : '(Lde/duenndns/gmdice/DiceSet;)V' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 2 │ │ insns size : 37 16-bit code units │ │ -005334: |[005334] de.duenndns.gmdice.GameMasterDice$3.onDiceChange:(Lde/duenndns/gmdice/DiceSet;)V │ │ -005344: 5431 1600 |0000: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice$3;.val$btn:Landroid/widget/Button; // field@0016 │ │ -005348: 6e10 7500 0400 |0002: invoke-virtual {v4}, Lde/duenndns/gmdice/DiceSet;.toString:()Ljava/lang/String; // method@0075 │ │ -00534e: 0c02 |0005: move-result-object v2 │ │ -005350: 6e20 4400 2100 |0006: invoke-virtual {v1, v2}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@0044 │ │ -005356: 1200 |0009: const/4 v0, #int 0 // #0 │ │ -005358: 5431 1500 |000a: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice$3;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0015 │ │ -00535c: 5411 2800 |000c: iget-object v1, v1, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ -005360: 2111 |000e: array-length v1, v1 │ │ -005362: 3510 1500 |000f: if-ge v0, v1, 0024 // +0015 │ │ -005366: 5431 1600 |0011: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice$3;.val$btn:Landroid/widget/Button; // field@0016 │ │ -00536a: 5432 1500 |0013: iget-object v2, v3, Lde/duenndns/gmdice/GameMasterDice$3;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0015 │ │ -00536e: 5422 2800 |0015: iget-object v2, v2, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ -005372: 4602 0200 |0017: aget-object v2, v2, v0 │ │ -005376: 3321 0800 |0019: if-ne v1, v2, 0021 // +0008 │ │ -00537a: 5431 1500 |001b: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice$3;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0015 │ │ -00537e: 5411 2400 |001d: iget-object v1, v1, Lde/duenndns/gmdice/GameMasterDice;.button_cfg:[Lde/duenndns/gmdice/DiceSet; // field@0024 │ │ -005382: 4d04 0100 |001f: aput-object v4, v1, v0 │ │ -005386: d800 0001 |0021: add-int/lit8 v0, v0, #int 1 // #01 │ │ -00538a: 28e7 |0023: goto 000a // -0019 │ │ -00538c: 0e00 |0024: return-void │ │ +0054a8: |[0054a8] de.duenndns.gmdice.GameMasterDice$3.onDiceChange:(Lde/duenndns/gmdice/DiceSet;)V │ │ +0054b8: 5431 1600 |0000: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice$3;.val$btn:Landroid/widget/Button; // field@0016 │ │ +0054bc: 6e10 7500 0400 |0002: invoke-virtual {v4}, Lde/duenndns/gmdice/DiceSet;.toString:()Ljava/lang/String; // method@0075 │ │ +0054c2: 0c02 |0005: move-result-object v2 │ │ +0054c4: 6e20 4400 2100 |0006: invoke-virtual {v1, v2}, Landroid/widget/Button;.setText:(Ljava/lang/CharSequence;)V // method@0044 │ │ +0054ca: 1200 |0009: const/4 v0, #int 0 // #0 │ │ +0054cc: 5431 1500 |000a: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice$3;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0015 │ │ +0054d0: 5411 2800 |000c: iget-object v1, v1, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ +0054d4: 2111 |000e: array-length v1, v1 │ │ +0054d6: 3510 1500 |000f: if-ge v0, v1, 0024 // +0015 │ │ +0054da: 5431 1600 |0011: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice$3;.val$btn:Landroid/widget/Button; // field@0016 │ │ +0054de: 5432 1500 |0013: iget-object v2, v3, Lde/duenndns/gmdice/GameMasterDice$3;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0015 │ │ +0054e2: 5422 2800 |0015: iget-object v2, v2, Lde/duenndns/gmdice/GameMasterDice;.buttons:[Landroid/widget/Button; // field@0028 │ │ +0054e6: 4602 0200 |0017: aget-object v2, v2, v0 │ │ +0054ea: 3321 0800 |0019: if-ne v1, v2, 0021 // +0008 │ │ +0054ee: 5431 1500 |001b: iget-object v1, v3, Lde/duenndns/gmdice/GameMasterDice$3;.this$0:Lde/duenndns/gmdice/GameMasterDice; // field@0015 │ │ +0054f2: 5411 2400 |001d: iget-object v1, v1, Lde/duenndns/gmdice/GameMasterDice;.button_cfg:[Lde/duenndns/gmdice/DiceSet; // field@0024 │ │ +0054f6: 4d04 0100 |001f: aput-object v4, v1, v0 │ │ +0054fa: d800 0001 |0021: add-int/lit8 v0, v0, #int 1 // #01 │ │ +0054fe: 28e7 |0023: goto 000a // -0019 │ │ +005500: 0e00 |0024: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=252 │ │ 0x0009 line=254 │ │ 0x0011 line=255 │ │ 0x001b line=256 │ │ 0x0021 line=254 │ │ @@ -5902,18 +5928,18 @@ │ │ 0x000a - 0x0025 reg=0 i I │ │ 0x0000 - 0x0025 reg=3 this Lde/duenndns/gmdice/GameMasterDice$3; │ │ 0x0000 - 0x0025 reg=4 ds Lde/duenndns/gmdice/DiceSet; │ │ │ │ source_file_idx : 46 (GameMasterDice.java) │ │ │ │ Class #32 header: │ │ -class_idx : 70 │ │ +class_idx : 69 │ │ access_flags : 16 (0x0010) │ │ -superclass_idx : 97 │ │ -source_file_idx : 187 │ │ +superclass_idx : 96 │ │ +source_file_idx : 186 │ │ static_fields_size : 0 │ │ instance_fields_size: 3 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 1 │ │ │ │ Class #32 annotations: │ │ Annotations on class │ │ @@ -5946,27 +5972,27 @@ │ │ type : '()V' │ │ access : 0x10000 (CONSTRUCTOR) │ │ code - │ │ registers : 3 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 25 16-bit code units │ │ -005390: |[005390] de.duenndns.gmdice.NumberPicker$1.:()V │ │ -0053a0: 7010 0501 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@0105 │ │ -0053a6: 2200 6400 |0003: new-instance v0, Ljava/lang/StringBuilder; // type@0064 │ │ -0053aa: 7010 1001 0000 |0005: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ -0053b0: 5b20 2f00 |0008: iput-object v0, v2, Lde/duenndns/gmdice/NumberPicker$1;.mBuilder:Ljava/lang/StringBuilder; // field@002f │ │ -0053b4: 2200 6c00 |000a: new-instance v0, Ljava/util/Formatter; // type@006c │ │ -0053b8: 5421 2f00 |000c: iget-object v1, v2, Lde/duenndns/gmdice/NumberPicker$1;.mBuilder:Ljava/lang/StringBuilder; // field@002f │ │ -0053bc: 7020 2001 1000 |000e: invoke-direct {v0, v1}, Ljava/util/Formatter;.:(Ljava/lang/Appendable;)V // method@0120 │ │ -0053c2: 5b20 3000 |0011: iput-object v0, v2, Lde/duenndns/gmdice/NumberPicker$1;.mFmt:Ljava/util/Formatter; // field@0030 │ │ -0053c6: 1210 |0013: const/4 v0, #int 1 // #1 │ │ -0053c8: 2300 7700 |0014: new-array v0, v0, [Ljava/lang/Object; // type@0077 │ │ -0053cc: 5b20 2e00 |0016: iput-object v0, v2, Lde/duenndns/gmdice/NumberPicker$1;.mArgs:[Ljava/lang/Object; // field@002e │ │ -0053d0: 0e00 |0018: return-void │ │ +005504: |[005504] de.duenndns.gmdice.NumberPicker$1.:()V │ │ +005514: 7010 0501 0200 |0000: invoke-direct {v2}, Ljava/lang/Object;.:()V // method@0105 │ │ +00551a: 2200 6300 |0003: new-instance v0, Ljava/lang/StringBuilder; // type@0063 │ │ +00551e: 7010 1001 0000 |0005: invoke-direct {v0}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ +005524: 5b20 2f00 |0008: iput-object v0, v2, Lde/duenndns/gmdice/NumberPicker$1;.mBuilder:Ljava/lang/StringBuilder; // field@002f │ │ +005528: 2200 6b00 |000a: new-instance v0, Ljava/util/Formatter; // type@006b │ │ +00552c: 5421 2f00 |000c: iget-object v1, v2, Lde/duenndns/gmdice/NumberPicker$1;.mBuilder:Ljava/lang/StringBuilder; // field@002f │ │ +005530: 7020 2001 1000 |000e: invoke-direct {v0, v1}, Ljava/util/Formatter;.:(Ljava/lang/Appendable;)V // method@0120 │ │ +005536: 5b20 3000 |0011: iput-object v0, v2, Lde/duenndns/gmdice/NumberPicker$1;.mFmt:Ljava/util/Formatter; // field@0030 │ │ +00553a: 1210 |0013: const/4 v0, #int 1 // #1 │ │ +00553c: 2300 7600 |0014: new-array v0, v0, [Ljava/lang/Object; // type@0076 │ │ +005540: 5b20 2e00 |0016: iput-object v0, v2, Lde/duenndns/gmdice/NumberPicker$1;.mArgs:[Ljava/lang/Object; // field@002e │ │ +005544: 0e00 |0018: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=69 │ │ 0x0003 line=70 │ │ 0x000a line=71 │ │ 0x0013 line=72 │ │ locals : │ │ @@ -5978,50 +6004,50 @@ │ │ type : '(I)Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 5 │ │ ins : 2 │ │ outs : 3 │ │ insns size : 36 16-bit code units │ │ -0053d4: |[0053d4] de.duenndns.gmdice.NumberPicker$1.toString:(I)Ljava/lang/String; │ │ -0053e4: 1202 |0000: const/4 v2, #int 0 // #0 │ │ -0053e6: 5430 2e00 |0001: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker$1;.mArgs:[Ljava/lang/Object; // field@002e │ │ -0053ea: 7110 0201 0400 |0003: invoke-static {v4}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0053f0: 0c01 |0006: move-result-object v1 │ │ -0053f2: 4d01 0002 |0007: aput-object v1, v0, v2 │ │ -0053f6: 5430 2f00 |0009: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker$1;.mBuilder:Ljava/lang/StringBuilder; // field@002f │ │ -0053fa: 5431 2f00 |000b: iget-object v1, v3, Lde/duenndns/gmdice/NumberPicker$1;.mBuilder:Ljava/lang/StringBuilder; // field@002f │ │ -0053fe: 6e10 1501 0100 |000d: invoke-virtual {v1}, Ljava/lang/StringBuilder;.length:()I // method@0115 │ │ -005404: 0a01 |0010: move-result v1 │ │ -005406: 6e30 1401 2001 |0011: invoke-virtual {v0, v2, v1}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@0114 │ │ -00540c: 5430 3000 |0014: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker$1;.mFmt:Ljava/util/Formatter; // field@0030 │ │ -005410: 1a01 0700 |0016: const-string v1, "%02d" // string@0007 │ │ -005414: 5432 2e00 |0018: iget-object v2, v3, Lde/duenndns/gmdice/NumberPicker$1;.mArgs:[Ljava/lang/Object; // field@002e │ │ -005418: 6e30 2101 1002 |001a: invoke-virtual {v0, v1, v2}, Ljava/util/Formatter;.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter; // method@0121 │ │ -00541e: 5430 3000 |001d: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker$1;.mFmt:Ljava/util/Formatter; // field@0030 │ │ -005422: 6e10 2201 0000 |001f: invoke-virtual {v0}, Ljava/util/Formatter;.toString:()Ljava/lang/String; // method@0122 │ │ -005428: 0c00 |0022: move-result-object v0 │ │ -00542a: 1100 |0023: return-object v0 │ │ +005548: |[005548] de.duenndns.gmdice.NumberPicker$1.toString:(I)Ljava/lang/String; │ │ +005558: 1202 |0000: const/4 v2, #int 0 // #0 │ │ +00555a: 5430 2e00 |0001: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker$1;.mArgs:[Ljava/lang/Object; // field@002e │ │ +00555e: 7110 0201 0400 |0003: invoke-static {v4}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +005564: 0c01 |0006: move-result-object v1 │ │ +005566: 4d01 0002 |0007: aput-object v1, v0, v2 │ │ +00556a: 5430 2f00 |0009: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker$1;.mBuilder:Ljava/lang/StringBuilder; // field@002f │ │ +00556e: 5431 2f00 |000b: iget-object v1, v3, Lde/duenndns/gmdice/NumberPicker$1;.mBuilder:Ljava/lang/StringBuilder; // field@002f │ │ +005572: 6e10 1501 0100 |000d: invoke-virtual {v1}, Ljava/lang/StringBuilder;.length:()I // method@0115 │ │ +005578: 0a01 |0010: move-result v1 │ │ +00557a: 6e30 1401 2001 |0011: invoke-virtual {v0, v2, v1}, Ljava/lang/StringBuilder;.delete:(II)Ljava/lang/StringBuilder; // method@0114 │ │ +005580: 5430 3000 |0014: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker$1;.mFmt:Ljava/util/Formatter; // field@0030 │ │ +005584: 1a01 0700 |0016: const-string v1, "%02d" // string@0007 │ │ +005588: 5432 2e00 |0018: iget-object v2, v3, Lde/duenndns/gmdice/NumberPicker$1;.mArgs:[Ljava/lang/Object; // field@002e │ │ +00558c: 6e30 2101 1002 |001a: invoke-virtual {v0, v1, v2}, Ljava/util/Formatter;.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter; // method@0121 │ │ +005592: 5430 3000 |001d: iget-object v0, v3, Lde/duenndns/gmdice/NumberPicker$1;.mFmt:Ljava/util/Formatter; // field@0030 │ │ +005596: 6e10 2201 0000 |001f: invoke-virtual {v0}, Ljava/util/Formatter;.toString:()Ljava/lang/String; // method@0122 │ │ +00559c: 0c00 |0022: move-result-object v0 │ │ +00559e: 1100 |0023: return-object v0 │ │ catches : (none) │ │ positions : │ │ 0x0001 line=74 │ │ 0x0009 line=75 │ │ 0x0014 line=76 │ │ 0x001d line=77 │ │ locals : │ │ 0x0000 - 0x0024 reg=3 this Lde/duenndns/gmdice/NumberPicker$1; │ │ 0x0000 - 0x0024 reg=4 value I │ │ │ │ - source_file_idx : 187 (NumberPicker.java) │ │ + source_file_idx : 186 (NumberPicker.java) │ │ │ │ Class #33 header: │ │ -class_idx : 89 │ │ +class_idx : 88 │ │ access_flags : 1 (0x0001) │ │ -superclass_idx : 62 │ │ -source_file_idx : 197 │ │ +superclass_idx : 61 │ │ +source_file_idx : 196 │ │ static_fields_size : 0 │ │ instance_fields_size: 0 │ │ direct_methods_size : 1 │ │ virtual_methods_size: 2 │ │ │ │ Class #33 - │ │ Class descriptor : 'Lde/duenndns/gmdice/StandardDiceSet;' │ │ @@ -6036,20 +6062,20 @@ │ │ type : '(III)V' │ │ access : 0x10001 (PUBLIC CONSTRUCTOR) │ │ code - │ │ registers : 4 │ │ ins : 4 │ │ outs : 1 │ │ insns size : 10 16-bit code units │ │ -00542c: |[00542c] de.duenndns.gmdice.StandardDiceSet.:(III)V │ │ -00543c: 7010 6e00 0000 |0000: invoke-direct {v0}, Lde/duenndns/gmdice/DiceSet;.:()V // method@006e │ │ -005442: 5901 9500 |0003: iput v1, v0, Lde/duenndns/gmdice/StandardDiceSet;.count:I // field@0095 │ │ -005446: 5902 9700 |0005: iput v2, v0, Lde/duenndns/gmdice/StandardDiceSet;.sides:I // field@0097 │ │ -00544a: 5903 9600 |0007: iput v3, v0, Lde/duenndns/gmdice/StandardDiceSet;.modifier:I // field@0096 │ │ -00544e: 0e00 |0009: return-void │ │ +0055a0: |[0055a0] de.duenndns.gmdice.StandardDiceSet.:(III)V │ │ +0055b0: 7010 6e00 0000 |0000: invoke-direct {v0}, Lde/duenndns/gmdice/DiceSet;.:()V // method@006e │ │ +0055b6: 5901 9500 |0003: iput v1, v0, Lde/duenndns/gmdice/StandardDiceSet;.count:I // field@0095 │ │ +0055ba: 5902 9700 |0005: iput v2, v0, Lde/duenndns/gmdice/StandardDiceSet;.sides:I // field@0097 │ │ +0055be: 5903 9600 |0007: iput v3, v0, Lde/duenndns/gmdice/StandardDiceSet;.modifier:I // field@0096 │ │ +0055c2: 0e00 |0009: return-void │ │ catches : (none) │ │ positions : │ │ 0x0000 line=27 │ │ 0x0003 line=28 │ │ 0x0005 line=29 │ │ 0x0007 line=30 │ │ 0x0009 line=31 │ │ @@ -6065,59 +6091,59 @@ │ │ type : '(Landroid/content/Context;Ljava/util/Random;)Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 12 │ │ ins : 3 │ │ outs : 2 │ │ insns size : 86 16-bit code units │ │ -005450: |[005450] de.duenndns.gmdice.StandardDiceSet.roll:(Landroid/content/Context;Ljava/util/Random;)Ljava/lang/String; │ │ -005460: 1218 |0000: const/4 v8, #int 1 // #1 │ │ -005462: 1201 |0001: const/4 v1, #int 0 // #0 │ │ -005464: 2203 6400 |0002: new-instance v3, Ljava/lang/StringBuilder; // type@0064 │ │ -005468: 7010 1001 0300 |0004: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ -00546e: 1200 |0007: const/4 v0, #int 0 // #0 │ │ -005470: 5294 9500 |0008: iget v4, v9, Lde/duenndns/gmdice/StandardDiceSet;.count:I // field@0095 │ │ -005474: 3540 1c00 |000a: if-ge v0, v4, 0026 // +001c │ │ -005478: 5294 9700 |000c: iget v4, v9, Lde/duenndns/gmdice/StandardDiceSet;.sides:I // field@0097 │ │ -00547c: 6e20 2701 4b00 |000e: invoke-virtual {v11, v4}, Ljava/util/Random;.nextInt:(I)I // method@0127 │ │ -005482: 0a04 |0011: move-result v4 │ │ -005484: d802 0401 |0012: add-int/lit8 v2, v4, #int 1 // #01 │ │ -005488: 6e20 1101 2300 |0014: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0111 │ │ -00548e: b021 |0017: add-int/2addr v1, v2 │ │ -005490: 5294 9500 |0018: iget v4, v9, Lde/duenndns/gmdice/StandardDiceSet;.count:I // field@0095 │ │ -005494: d804 04ff |001a: add-int/lit8 v4, v4, #int -1 // #ff │ │ -005498: 3540 0700 |001c: if-ge v0, v4, 0023 // +0007 │ │ -00549c: 1a04 0b00 |001e: const-string v4, "+" // string@000b │ │ -0054a0: 6e20 1301 4300 |0020: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -0054a6: d800 0001 |0023: add-int/lit8 v0, v0, #int 1 // #01 │ │ -0054aa: 28e3 |0025: goto 0008 // -001d │ │ -0054ac: 5294 9600 |0026: iget v4, v9, Lde/duenndns/gmdice/StandardDiceSet;.modifier:I // field@0096 │ │ -0054b0: 3804 1900 |0028: if-eqz v4, 0041 // +0019 │ │ -0054b4: 1a04 0600 |002a: const-string v4, "%+d" // string@0006 │ │ -0054b8: 2385 7700 |002c: new-array v5, v8, [Ljava/lang/Object; // type@0077 │ │ -0054bc: 1206 |002e: const/4 v6, #int 0 // #0 │ │ -0054be: 5297 9600 |002f: iget v7, v9, Lde/duenndns/gmdice/StandardDiceSet;.modifier:I // field@0096 │ │ -0054c2: 7110 0201 0700 |0031: invoke-static {v7}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -0054c8: 0c07 |0034: move-result-object v7 │ │ -0054ca: 4d07 0506 |0035: aput-object v7, v5, v6 │ │ -0054ce: 7120 0801 5400 |0037: invoke-static {v4, v5}, Ljava/lang/String;.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; // method@0108 │ │ -0054d4: 0c04 |003a: move-result-object v4 │ │ -0054d6: 6e20 1301 4300 |003b: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -0054dc: 5294 9600 |003e: iget v4, v9, Lde/duenndns/gmdice/StandardDiceSet;.modifier:I // field@0096 │ │ -0054e0: b041 |0040: add-int/2addr v1, v4 │ │ -0054e2: 5294 9500 |0041: iget v4, v9, Lde/duenndns/gmdice/StandardDiceSet;.count:I // field@0095 │ │ -0054e6: 3684 0600 |0043: if-gt v4, v8, 0049 // +0006 │ │ -0054ea: 5294 9600 |0045: iget v4, v9, Lde/duenndns/gmdice/StandardDiceSet;.modifier:I // field@0096 │ │ -0054ee: 3804 0a00 |0047: if-eqz v4, 0051 // +000a │ │ -0054f2: 1a04 0300 |0049: const-string v4, " = " // string@0003 │ │ -0054f6: 6e20 1301 4300 |004b: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ -0054fc: 6e20 1101 1300 |004e: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0111 │ │ -005502: 6e10 1601 0300 |0051: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ -005508: 0c04 |0054: move-result-object v4 │ │ -00550a: 1104 |0055: return-object v4 │ │ +0055c4: |[0055c4] de.duenndns.gmdice.StandardDiceSet.roll:(Landroid/content/Context;Ljava/util/Random;)Ljava/lang/String; │ │ +0055d4: 1218 |0000: const/4 v8, #int 1 // #1 │ │ +0055d6: 1201 |0001: const/4 v1, #int 0 // #0 │ │ +0055d8: 2203 6300 |0002: new-instance v3, Ljava/lang/StringBuilder; // type@0063 │ │ +0055dc: 7010 1001 0300 |0004: invoke-direct {v3}, Ljava/lang/StringBuilder;.:()V // method@0110 │ │ +0055e2: 1200 |0007: const/4 v0, #int 0 // #0 │ │ +0055e4: 5294 9500 |0008: iget v4, v9, Lde/duenndns/gmdice/StandardDiceSet;.count:I // field@0095 │ │ +0055e8: 3540 1c00 |000a: if-ge v0, v4, 0026 // +001c │ │ +0055ec: 5294 9700 |000c: iget v4, v9, Lde/duenndns/gmdice/StandardDiceSet;.sides:I // field@0097 │ │ +0055f0: 6e20 2701 4b00 |000e: invoke-virtual {v11, v4}, Ljava/util/Random;.nextInt:(I)I // method@0127 │ │ +0055f6: 0a04 |0011: move-result v4 │ │ +0055f8: d802 0401 |0012: add-int/lit8 v2, v4, #int 1 // #01 │ │ +0055fc: 6e20 1101 2300 |0014: invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0111 │ │ +005602: b021 |0017: add-int/2addr v1, v2 │ │ +005604: 5294 9500 |0018: iget v4, v9, Lde/duenndns/gmdice/StandardDiceSet;.count:I // field@0095 │ │ +005608: d804 04ff |001a: add-int/lit8 v4, v4, #int -1 // #ff │ │ +00560c: 3540 0700 |001c: if-ge v0, v4, 0023 // +0007 │ │ +005610: 1a04 0b00 |001e: const-string v4, "+" // string@000b │ │ +005614: 6e20 1301 4300 |0020: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +00561a: d800 0001 |0023: add-int/lit8 v0, v0, #int 1 // #01 │ │ +00561e: 28e3 |0025: goto 0008 // -001d │ │ +005620: 5294 9600 |0026: iget v4, v9, Lde/duenndns/gmdice/StandardDiceSet;.modifier:I // field@0096 │ │ +005624: 3804 1900 |0028: if-eqz v4, 0041 // +0019 │ │ +005628: 1a04 0600 |002a: const-string v4, "%+d" // string@0006 │ │ +00562c: 2385 7600 |002c: new-array v5, v8, [Ljava/lang/Object; // type@0076 │ │ +005630: 1206 |002e: const/4 v6, #int 0 // #0 │ │ +005632: 5297 9600 |002f: iget v7, v9, Lde/duenndns/gmdice/StandardDiceSet;.modifier:I // field@0096 │ │ +005636: 7110 0201 0700 |0031: invoke-static {v7}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +00563c: 0c07 |0034: move-result-object v7 │ │ +00563e: 4d07 0506 |0035: aput-object v7, v5, v6 │ │ +005642: 7120 0801 5400 |0037: invoke-static {v4, v5}, Ljava/lang/String;.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; // method@0108 │ │ +005648: 0c04 |003a: move-result-object v4 │ │ +00564a: 6e20 1301 4300 |003b: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +005650: 5294 9600 |003e: iget v4, v9, Lde/duenndns/gmdice/StandardDiceSet;.modifier:I // field@0096 │ │ +005654: b041 |0040: add-int/2addr v1, v4 │ │ +005656: 5294 9500 |0041: iget v4, v9, Lde/duenndns/gmdice/StandardDiceSet;.count:I // field@0095 │ │ +00565a: 3684 0600 |0043: if-gt v4, v8, 0049 // +0006 │ │ +00565e: 5294 9600 |0045: iget v4, v9, Lde/duenndns/gmdice/StandardDiceSet;.modifier:I // field@0096 │ │ +005662: 3804 0a00 |0047: if-eqz v4, 0051 // +000a │ │ +005666: 1a04 0300 |0049: const-string v4, " = " // string@0003 │ │ +00566a: 6e20 1301 4300 |004b: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0113 │ │ +005670: 6e20 1101 1300 |004e: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0111 │ │ +005676: 6e10 1601 0300 |0051: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0116 │ │ +00567c: 0c04 |0054: move-result-object v4 │ │ +00567e: 1104 |0055: return-object v4 │ │ catches : (none) │ │ positions : │ │ 0x0001 line=34 │ │ 0x0002 line=36 │ │ 0x0007 line=37 │ │ 0x000c line=38 │ │ 0x0014 line=39 │ │ @@ -6146,54 +6172,54 @@ │ │ type : '()Ljava/lang/String;' │ │ access : 0x0001 (PUBLIC) │ │ code - │ │ registers : 7 │ │ ins : 1 │ │ outs : 2 │ │ insns size : 66 16-bit code units │ │ -00550c: |[00550c] de.duenndns.gmdice.StandardDiceSet.toString:()Ljava/lang/String; │ │ -00551c: 1225 |0000: const/4 v5, #int 2 // #2 │ │ -00551e: 1214 |0001: const/4 v4, #int 1 // #1 │ │ -005520: 1203 |0002: const/4 v3, #int 0 // #0 │ │ -005522: 5260 9600 |0003: iget v0, v6, Lde/duenndns/gmdice/StandardDiceSet;.modifier:I // field@0096 │ │ -005526: 3900 1b00 |0005: if-nez v0, 0020 // +001b │ │ -00552a: 1a00 0800 |0007: const-string v0, "%dd%d" // string@0008 │ │ -00552e: 2351 7700 |0009: new-array v1, v5, [Ljava/lang/Object; // type@0077 │ │ -005532: 5262 9500 |000b: iget v2, v6, Lde/duenndns/gmdice/StandardDiceSet;.count:I // field@0095 │ │ -005536: 7110 0201 0200 |000d: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -00553c: 0c02 |0010: move-result-object v2 │ │ -00553e: 4d02 0103 |0011: aput-object v2, v1, v3 │ │ -005542: 5262 9700 |0013: iget v2, v6, Lde/duenndns/gmdice/StandardDiceSet;.sides:I // field@0097 │ │ -005546: 7110 0201 0200 |0015: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -00554c: 0c02 |0018: move-result-object v2 │ │ -00554e: 4d02 0104 |0019: aput-object v2, v1, v4 │ │ -005552: 7120 0801 1000 |001b: invoke-static {v0, v1}, Ljava/lang/String;.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; // method@0108 │ │ -005558: 0c00 |001e: move-result-object v0 │ │ -00555a: 1100 |001f: return-object v0 │ │ -00555c: 1a00 0900 |0020: const-string v0, "%dd%d%+d" // string@0009 │ │ -005560: 1231 |0022: const/4 v1, #int 3 // #3 │ │ -005562: 2311 7700 |0023: new-array v1, v1, [Ljava/lang/Object; // type@0077 │ │ -005566: 5262 9500 |0025: iget v2, v6, Lde/duenndns/gmdice/StandardDiceSet;.count:I // field@0095 │ │ -00556a: 7110 0201 0200 |0027: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -005570: 0c02 |002a: move-result-object v2 │ │ -005572: 4d02 0103 |002b: aput-object v2, v1, v3 │ │ -005576: 5262 9700 |002d: iget v2, v6, Lde/duenndns/gmdice/StandardDiceSet;.sides:I // field@0097 │ │ -00557a: 7110 0201 0200 |002f: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -005580: 0c02 |0032: move-result-object v2 │ │ -005582: 4d02 0104 |0033: aput-object v2, v1, v4 │ │ -005586: 5262 9600 |0035: iget v2, v6, Lde/duenndns/gmdice/StandardDiceSet;.modifier:I // field@0096 │ │ -00558a: 7110 0201 0200 |0037: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ -005590: 0c02 |003a: move-result-object v2 │ │ -005592: 4d02 0105 |003b: aput-object v2, v1, v5 │ │ -005596: 7120 0801 1000 |003d: invoke-static {v0, v1}, Ljava/lang/String;.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; // method@0108 │ │ -00559c: 0c00 |0040: move-result-object v0 │ │ -00559e: 28de |0041: goto 001f // -0022 │ │ +005680: |[005680] de.duenndns.gmdice.StandardDiceSet.toString:()Ljava/lang/String; │ │ +005690: 1225 |0000: const/4 v5, #int 2 // #2 │ │ +005692: 1214 |0001: const/4 v4, #int 1 // #1 │ │ +005694: 1203 |0002: const/4 v3, #int 0 // #0 │ │ +005696: 5260 9600 |0003: iget v0, v6, Lde/duenndns/gmdice/StandardDiceSet;.modifier:I // field@0096 │ │ +00569a: 3900 1b00 |0005: if-nez v0, 0020 // +001b │ │ +00569e: 1a00 0800 |0007: const-string v0, "%dd%d" // string@0008 │ │ +0056a2: 2351 7600 |0009: new-array v1, v5, [Ljava/lang/Object; // type@0076 │ │ +0056a6: 5262 9500 |000b: iget v2, v6, Lde/duenndns/gmdice/StandardDiceSet;.count:I // field@0095 │ │ +0056aa: 7110 0201 0200 |000d: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0056b0: 0c02 |0010: move-result-object v2 │ │ +0056b2: 4d02 0103 |0011: aput-object v2, v1, v3 │ │ +0056b6: 5262 9700 |0013: iget v2, v6, Lde/duenndns/gmdice/StandardDiceSet;.sides:I // field@0097 │ │ +0056ba: 7110 0201 0200 |0015: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0056c0: 0c02 |0018: move-result-object v2 │ │ +0056c2: 4d02 0104 |0019: aput-object v2, v1, v4 │ │ +0056c6: 7120 0801 1000 |001b: invoke-static {v0, v1}, Ljava/lang/String;.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; // method@0108 │ │ +0056cc: 0c00 |001e: move-result-object v0 │ │ +0056ce: 1100 |001f: return-object v0 │ │ +0056d0: 1a00 0900 |0020: const-string v0, "%dd%d%+d" // string@0009 │ │ +0056d4: 1231 |0022: const/4 v1, #int 3 // #3 │ │ +0056d6: 2311 7600 |0023: new-array v1, v1, [Ljava/lang/Object; // type@0076 │ │ +0056da: 5262 9500 |0025: iget v2, v6, Lde/duenndns/gmdice/StandardDiceSet;.count:I // field@0095 │ │ +0056de: 7110 0201 0200 |0027: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0056e4: 0c02 |002a: move-result-object v2 │ │ +0056e6: 4d02 0103 |002b: aput-object v2, v1, v3 │ │ +0056ea: 5262 9700 |002d: iget v2, v6, Lde/duenndns/gmdice/StandardDiceSet;.sides:I // field@0097 │ │ +0056ee: 7110 0201 0200 |002f: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +0056f4: 0c02 |0032: move-result-object v2 │ │ +0056f6: 4d02 0104 |0033: aput-object v2, v1, v4 │ │ +0056fa: 5262 9600 |0035: iget v2, v6, Lde/duenndns/gmdice/StandardDiceSet;.modifier:I // field@0096 │ │ +0056fe: 7110 0201 0200 |0037: invoke-static {v2}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@0102 │ │ +005704: 0c02 |003a: move-result-object v2 │ │ +005706: 4d02 0105 |003b: aput-object v2, v1, v5 │ │ +00570a: 7120 0801 1000 |003d: invoke-static {v0, v1}, Ljava/lang/String;.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; // method@0108 │ │ +005710: 0c00 |0040: move-result-object v0 │ │ +005712: 28de |0041: goto 001f // -0022 │ │ catches : (none) │ │ positions : │ │ 0x0003 line=56 │ │ 0x0007 line=57 │ │ 0x001f line=59 │ │ locals : │ │ 0x0000 - 0x0042 reg=6 this Lde/duenndns/gmdice/StandardDiceSet; │ │ │ │ - source_file_idx : 197 (StandardDiceSet.java) │ │ + source_file_idx : 196 (StandardDiceSet.java) │ ├── classes.jar │ │ ├── zipinfo {} │ │ │ @@ -1,23 +1,23 @@ │ │ │ -Zip file size: 42526 bytes, number of entries: 34 │ │ │ +Zip file size: 42519 bytes, number of entries: 34 │ │ │ ?rwxrwxr-x 2.0 unx 162 b- stor 80-Jan-01 00:00 android/annotation/SuppressLint.class │ │ │ ?rwxrwxr-x 2.0 unx 141 b- stor 80-Jan-01 00:00 android/annotation/TargetApi.class │ │ │ ?rwxrwxr-x 2.0 unx 165 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/BuildConfig.class │ │ │ -?rwxrwxr-x 2.0 unx 1932 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/DiceCache.class │ │ │ +?rwxrwxr-x 2.0 unx 1923 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/DiceCache.class │ │ │ ?rwxrwxr-x 2.0 unx 1868 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/DiceSet.class │ │ │ ?rwxrwxr-x 2.0 unx 760 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/GameMasterDice$1.class │ │ │ ?rwxrwxr-x 2.0 unx 1231 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/GameMasterDice$4.class │ │ │ ?rwxrwxr-x 2.0 unx 1622 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/GameMasterDice$5.class │ │ │ ?rwxrwxr-x 2.0 unx 11603 b- defN 80-Jan-01 00:00 de/duenndns/gmdice/GameMasterDice.class │ │ │ ?rwxrwxr-x 2.0 unx 841 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/NumberPicker$2.class │ │ │ ?rwxrwxr-x 2.0 unx 136 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/NumberPicker$Formatter.class │ │ │ -?rwxrwxr-x 2.0 unx 1466 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/NumberPicker$NumberPickerInputFilter.class │ │ │ +?rwxrwxr-x 2.0 unx 1471 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/NumberPicker$NumberPickerInputFilter.class │ │ │ ?rwxrwxr-x 2.0 unx 1445 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/NumberPicker$NumberRangeKeyListener.class │ │ │ ?rwxrwxr-x 2.0 unx 162 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/NumberPicker$OnChangedListener.class │ │ │ -?rwxrwxr-x 2.0 unx 7474 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/NumberPicker.class │ │ │ +?rwxrwxr-x 2.0 unx 7471 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/NumberPicker.class │ │ │ ?rwxrwxr-x 2.0 unx 1256 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/NumberPickerButton.class │ │ │ ?rwxrwxr-x 2.0 unx 203 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/OnDiceChange.class │ │ │ ?rwxrwxr-x 2.0 unx 322 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/R$attr.class │ │ │ ?rwxrwxr-x 2.0 unx 989 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/R$drawable.class │ │ │ ?rwxrwxr-x 2.0 unx 669 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/R$id.class │ │ │ ?rwxrwxr-x 2.0 unx 337 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/R$layout.class │ │ │ ?rwxrwxr-x 2.0 unx 196 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/R$menu.class │ │ │ @@ -29,8 +29,8 @@ │ │ │ ?rwxrwxr-x 2.0 unx 579 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/Coin.class │ │ │ ?rwxrwxr-x 2.0 unx 767 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/DSADiceSet.class │ │ │ ?rwxrwxr-x 2.0 unx 913 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/FUDGEDiceSet.class │ │ │ ?rwxrwxr-x 2.0 unx 500 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/GameMasterDice$2.class │ │ │ ?rwxrwxr-x 2.0 unx 808 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/GameMasterDice$3.class │ │ │ ?rwxrwxr-x 2.0 unx 889 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/NumberPicker$1.class │ │ │ ?rwxrwxr-x 2.0 unx 1209 b- stor 80-Jan-01 00:00 de/duenndns/gmdice/StandardDiceSet.class │ │ │ -34 files, 43589 bytes uncompressed, 37306 bytes compressed: 14.4% │ │ │ +34 files, 43582 bytes uncompressed, 37299 bytes compressed: 14.4% │ │ ├── de/duenndns/gmdice/DiceCache.class │ │ │ ├── procyon -ec {} │ │ │ │ @@ -34,17 +34,16 @@ │ │ │ │ public void add(final FUDGEDiceSet set) { │ │ │ │ } │ │ │ │ │ │ │ │ public void loadFromString(final String s) { │ │ │ │ if (s != null) { │ │ │ │ final String[] split = s.split("\\|"); │ │ │ │ this.dscache.clear(); │ │ │ │ - final String[] array = split; │ │ │ │ for (int length = split.length, i = 0; i < length; ++i) { │ │ │ │ - final String s2 = array[i]; │ │ │ │ + final String s2 = split[i]; │ │ │ │ if (s2.length() > 0) { │ │ │ │ this.dscache.add(DiceSet.getDiceSet(s2)); │ │ │ │ } │ │ │ │ } │ │ │ │ } │ │ │ │ } │ │ ├── de/duenndns/gmdice/NumberPicker$NumberPickerInputFilter.class │ │ │ ├── javap -verbose -constants -s -l -private {} │ │ │ │ @@ -108,104 +108,108 @@ │ │ │ │ 2: invokespecial #17 // Method "":(Lde/duenndns/gmdice/NumberPicker;)V │ │ │ │ 5: return │ │ │ │ │ │ │ │ public java.lang.CharSequence filter(java.lang.CharSequence, int, int, android.text.Spanned, int, int); │ │ │ │ descriptor: (Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Ljava/lang/CharSequence; │ │ │ │ flags: (0x0001) ACC_PUBLIC │ │ │ │ Code: │ │ │ │ - stack=300, locals=18, args_size=7 │ │ │ │ + stack=300, locals=17, args_size=7 │ │ │ │ 0: aload_0 │ │ │ │ 1: getfield #10 // Field this$0:Lde/duenndns/gmdice/NumberPicker; │ │ │ │ 4: invokestatic #23 // Method de/duenndns/gmdice/NumberPicker.access$600:(Lde/duenndns/gmdice/NumberPicker;)[Ljava/lang/String; │ │ │ │ 7: astore 7 │ │ │ │ 9: aload 7 │ │ │ │ - 11: ifnonnull 47 │ │ │ │ + 11: ifnonnull 53 │ │ │ │ 14: aload_0 │ │ │ │ 15: getfield #10 // Field this$0:Lde/duenndns/gmdice/NumberPicker; │ │ │ │ 18: invokestatic #27 // Method de/duenndns/gmdice/NumberPicker.access$700:(Lde/duenndns/gmdice/NumberPicker;)Landroid/text/InputFilter; │ │ │ │ 21: astore 7 │ │ │ │ 23: aload_1 │ │ │ │ 24: astore 8 │ │ │ │ - 26: aload 7 │ │ │ │ - 28: aload_1 │ │ │ │ - 29: iload_2 │ │ │ │ - 30: iload_3 │ │ │ │ - 31: aload 4 │ │ │ │ - 33: iload 5 │ │ │ │ - 35: iload 6 │ │ │ │ - 37: invokeinterface #31, 7 // InterfaceMethod android/text/InputFilter.filter:(Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Ljava/lang/CharSequence; │ │ │ │ - 42: astore 9 │ │ │ │ - 44: aload 9 │ │ │ │ - 46: areturn │ │ │ │ - 47: aload_1 │ │ │ │ - 48: iload_2 │ │ │ │ - 49: iload_3 │ │ │ │ - 50: invokeinterface #37, 3 // InterfaceMethod java/lang/CharSequence.subSequence:(II)Ljava/lang/CharSequence; │ │ │ │ - 55: invokestatic #43 // Method java/lang/String.valueOf:(Ljava/lang/Object;)Ljava/lang/String; │ │ │ │ - 58: astore 9 │ │ │ │ - 60: new #45 // class java/lang/StringBuilder │ │ │ │ - 63: astore 7 │ │ │ │ - 65: aload 7 │ │ │ │ - 67: invokespecial #46 // Method java/lang/StringBuilder."":()V │ │ │ │ - 70: aload 4 │ │ │ │ - 72: iconst_0 │ │ │ │ - 73: iload 5 │ │ │ │ - 75: invokeinterface #49, 3 // InterfaceMethod android/text/Spanned.subSequence:(II)Ljava/lang/CharSequence; │ │ │ │ - 80: invokestatic #43 // Method java/lang/String.valueOf:(Ljava/lang/Object;)Ljava/lang/String; │ │ │ │ - 83: astore 8 │ │ │ │ - 85: aload 7 │ │ │ │ - 87: aload 8 │ │ │ │ - 89: invokevirtual #53 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ │ │ - 92: aload 9 │ │ │ │ - 94: invokevirtual #56 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ │ │ │ - 97: astore 7 │ │ │ │ - 99: aload 4 │ │ │ │ - 101: invokeinterface #60, 1 // InterfaceMethod android/text/Spanned.length:()I │ │ │ │ - 106: istore 10 │ │ │ │ - 108: aload 4 │ │ │ │ - 110: iload 6 │ │ │ │ - 112: iload 10 │ │ │ │ - 114: invokeinterface #49, 3 // InterfaceMethod android/text/Spanned.subSequence:(II)Ljava/lang/CharSequence; │ │ │ │ - 119: astore 8 │ │ │ │ - 121: aload 7 │ │ │ │ - 123: aload 8 │ │ │ │ - 125: invokevirtual #56 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ │ │ │ - 128: invokevirtual #64 // Method java/lang/StringBuilder.toString:()Ljava/lang/String; │ │ │ │ - 131: astore 11 │ │ │ │ - 133: aload 11 │ │ │ │ - 135: invokestatic #43 // Method java/lang/String.valueOf:(Ljava/lang/Object;)Ljava/lang/String; │ │ │ │ - 138: invokevirtual #67 // Method java/lang/String.toLowerCase:()Ljava/lang/String; │ │ │ │ - 141: astore 12 │ │ │ │ - 143: aload_0 │ │ │ │ - 144: getfield #10 // Field this$0:Lde/duenndns/gmdice/NumberPicker; │ │ │ │ - 147: astore 7 │ │ │ │ - 149: aload 7 │ │ │ │ - 151: invokestatic #23 // Method de/duenndns/gmdice/NumberPicker.access$600:(Lde/duenndns/gmdice/NumberPicker;)[Ljava/lang/String; │ │ │ │ - 154: astore 13 │ │ │ │ - 156: aload 13 │ │ │ │ - 158: arraylength │ │ │ │ - 159: istore 14 │ │ │ │ - 161: iconst_0 │ │ │ │ - 162: istore 15 │ │ │ │ - 164: iload 15 │ │ │ │ - 166: iload 14 │ │ │ │ - 168: if_icmpge 204 │ │ │ │ - 171: aload 13 │ │ │ │ - 173: iload 15 │ │ │ │ - 175: aaload │ │ │ │ - 176: invokevirtual #67 // Method java/lang/String.toLowerCase:()Ljava/lang/String; │ │ │ │ - 179: astore 16 │ │ │ │ - 181: aload 16 │ │ │ │ - 183: aload 12 │ │ │ │ - 185: invokevirtual #71 // Method java/lang/String.startsWith:(Ljava/lang/String;)Z │ │ │ │ - 188: istore 17 │ │ │ │ - 190: iload 17 │ │ │ │ - 192: ifne 44 │ │ │ │ - 195: iload 15 │ │ │ │ - 197: iconst_1 │ │ │ │ - 198: iadd │ │ │ │ - 199: istore 15 │ │ │ │ - 201: goto 164 │ │ │ │ - 204: ldc #73 // String │ │ │ │ - 206: astore 9 │ │ │ │ - 208: goto 44 │ │ │ │ + 26: iload_2 │ │ │ │ + 27: istore 9 │ │ │ │ + 29: iload_3 │ │ │ │ + 30: istore 10 │ │ │ │ + 32: aload 7 │ │ │ │ + 34: aload_1 │ │ │ │ + 35: iload_2 │ │ │ │ + 36: iload_3 │ │ │ │ + 37: aload 4 │ │ │ │ + 39: iload 5 │ │ │ │ + 41: iload 6 │ │ │ │ + 43: invokeinterface #31, 7 // InterfaceMethod android/text/InputFilter.filter:(Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Ljava/lang/CharSequence; │ │ │ │ + 48: astore 11 │ │ │ │ + 50: aload 11 │ │ │ │ + 52: areturn │ │ │ │ + 53: aload_1 │ │ │ │ + 54: iload_2 │ │ │ │ + 55: iload_3 │ │ │ │ + 56: invokeinterface #37, 3 // InterfaceMethod java/lang/CharSequence.subSequence:(II)Ljava/lang/CharSequence; │ │ │ │ + 61: invokestatic #43 // Method java/lang/String.valueOf:(Ljava/lang/Object;)Ljava/lang/String; │ │ │ │ + 64: astore 11 │ │ │ │ + 66: new #45 // class java/lang/StringBuilder │ │ │ │ + 69: astore 7 │ │ │ │ + 71: aload 7 │ │ │ │ + 73: invokespecial #46 // Method java/lang/StringBuilder."":()V │ │ │ │ + 76: aload 4 │ │ │ │ + 78: iconst_0 │ │ │ │ + 79: iload 5 │ │ │ │ + 81: invokeinterface #49, 3 // InterfaceMethod android/text/Spanned.subSequence:(II)Ljava/lang/CharSequence; │ │ │ │ + 86: invokestatic #43 // Method java/lang/String.valueOf:(Ljava/lang/Object;)Ljava/lang/String; │ │ │ │ + 89: astore 8 │ │ │ │ + 91: aload 7 │ │ │ │ + 93: aload 8 │ │ │ │ + 95: invokevirtual #53 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ │ │ + 98: aload 11 │ │ │ │ + 100: invokevirtual #56 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ │ │ │ + 103: astore 7 │ │ │ │ + 105: aload 4 │ │ │ │ + 107: invokeinterface #60, 1 // InterfaceMethod android/text/Spanned.length:()I │ │ │ │ + 112: istore 12 │ │ │ │ + 114: aload 4 │ │ │ │ + 116: iload 6 │ │ │ │ + 118: iload 12 │ │ │ │ + 120: invokeinterface #49, 3 // InterfaceMethod android/text/Spanned.subSequence:(II)Ljava/lang/CharSequence; │ │ │ │ + 125: astore 8 │ │ │ │ + 127: aload 7 │ │ │ │ + 129: aload 8 │ │ │ │ + 131: invokevirtual #56 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ │ │ │ + 134: invokevirtual #64 // Method java/lang/StringBuilder.toString:()Ljava/lang/String; │ │ │ │ + 137: astore 13 │ │ │ │ + 139: aload 13 │ │ │ │ + 141: invokestatic #43 // Method java/lang/String.valueOf:(Ljava/lang/Object;)Ljava/lang/String; │ │ │ │ + 144: invokevirtual #67 // Method java/lang/String.toLowerCase:()Ljava/lang/String; │ │ │ │ + 147: astore 14 │ │ │ │ + 149: aload_0 │ │ │ │ + 150: getfield #10 // Field this$0:Lde/duenndns/gmdice/NumberPicker; │ │ │ │ + 153: invokestatic #23 // Method de/duenndns/gmdice/NumberPicker.access$600:(Lde/duenndns/gmdice/NumberPicker;)[Ljava/lang/String; │ │ │ │ + 156: astore 8 │ │ │ │ + 158: aload 8 │ │ │ │ + 160: arraylength │ │ │ │ + 161: istore 9 │ │ │ │ + 163: iconst_0 │ │ │ │ + 164: istore 15 │ │ │ │ + 166: aconst_null │ │ │ │ + 167: astore 7 │ │ │ │ + 169: iload 15 │ │ │ │ + 171: iload 9 │ │ │ │ + 173: if_icmpge 209 │ │ │ │ + 176: aload 8 │ │ │ │ + 178: iload 15 │ │ │ │ + 180: aaload │ │ │ │ + 181: invokevirtual #67 // Method java/lang/String.toLowerCase:()Ljava/lang/String; │ │ │ │ + 184: astore 16 │ │ │ │ + 186: aload 16 │ │ │ │ + 188: aload 14 │ │ │ │ + 190: invokevirtual #71 // Method java/lang/String.startsWith:(Ljava/lang/String;)Z │ │ │ │ + 193: istore 10 │ │ │ │ + 195: iload 10 │ │ │ │ + 197: ifne 50 │ │ │ │ + 200: iload 15 │ │ │ │ + 202: iconst_1 │ │ │ │ + 203: iadd │ │ │ │ + 204: istore 15 │ │ │ │ + 206: goto 169 │ │ │ │ + 209: ldc #73 // String │ │ │ │ + 211: astore 11 │ │ │ │ + 213: goto 50 │ │ │ │ } │ │ ├── de/duenndns/gmdice/NumberPicker.class │ │ │ ├── javap -verbose -constants -s -l -private {} │ │ │ │ @@ -564,219 +564,217 @@ │ │ │ │ public de.duenndns.gmdice.NumberPicker(android.content.Context, android.util.AttributeSet, int); │ │ │ │ descriptor: (Landroid/content/Context;Landroid/util/AttributeSet;I)V │ │ │ │ flags: (0x0001) ACC_PUBLIC │ │ │ │ Code: │ │ │ │ stack=300, locals=15, args_size=4 │ │ │ │ 0: iconst_1 │ │ │ │ 1: istore 4 │ │ │ │ - 3: iconst_0 │ │ │ │ - 4: istore 5 │ │ │ │ - 6: aload_0 │ │ │ │ - 7: aload_1 │ │ │ │ - 8: aload_2 │ │ │ │ - 9: invokespecial #72 // Method android/widget/LinearLayout."":(Landroid/content/Context;Landroid/util/AttributeSet;)V │ │ │ │ - 12: new #74 // class de/duenndns/gmdice/NumberPicker$2 │ │ │ │ - 15: astore 6 │ │ │ │ - 17: aload 6 │ │ │ │ - 19: aload_0 │ │ │ │ - 20: invokespecial #77 // Method de/duenndns/gmdice/NumberPicker$2."":(Lde/duenndns/gmdice/NumberPicker;)V │ │ │ │ - 23: aload_0 │ │ │ │ - 24: aload 6 │ │ │ │ - 26: putfield #79 // Field mRunnable:Ljava/lang/Runnable; │ │ │ │ - 29: ldc2_w #80 // long 300l │ │ │ │ - 32: lstore 7 │ │ │ │ - 34: aload_0 │ │ │ │ - 35: lload 7 │ │ │ │ - 37: putfield #85 // Field mSpeed:J │ │ │ │ - 40: aload_0 │ │ │ │ - 41: iload 4 │ │ │ │ - 43: invokevirtual #89 // Method setOrientation:(I)V │ │ │ │ - 46: aload_1 │ │ │ │ - 47: ldc #91 // String layout_inflater │ │ │ │ - 49: invokevirtual #97 // Method android/content/Context.getSystemService:(Ljava/lang/String;)Ljava/lang/Object; │ │ │ │ - 52: checkcast #99 // class android/view/LayoutInflater │ │ │ │ - 55: astore 9 │ │ │ │ - 57: aload 9 │ │ │ │ - 59: ldc #100 // int 2130903042 │ │ │ │ - 61: aload_0 │ │ │ │ - 62: iload 4 │ │ │ │ - 64: invokevirtual #105 // Method android/view/LayoutInflater.inflate:(ILandroid/view/ViewGroup;Z)Landroid/view/View; │ │ │ │ - 67: pop │ │ │ │ - 68: new #107 // class android/os/Handler │ │ │ │ - 71: astore 6 │ │ │ │ - 73: aload 6 │ │ │ │ - 75: invokespecial #108 // Method android/os/Handler."":()V │ │ │ │ - 78: aload_0 │ │ │ │ - 79: aload 6 │ │ │ │ - 81: putfield #110 // Field mHandler:Landroid/os/Handler; │ │ │ │ - 84: new #112 // class de/duenndns/gmdice/NumberPicker$NumberPickerInputFilter │ │ │ │ - 87: astore 10 │ │ │ │ - 89: aload 10 │ │ │ │ - 91: aload_0 │ │ │ │ - 92: aconst_null │ │ │ │ - 93: invokespecial #115 // Method de/duenndns/gmdice/NumberPicker$NumberPickerInputFilter."":(Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/NumberPicker$1;)V │ │ │ │ - 96: new #117 // class de/duenndns/gmdice/NumberPicker$NumberRangeKeyListener │ │ │ │ - 99: astore 6 │ │ │ │ - 101: aload 6 │ │ │ │ - 103: aload_0 │ │ │ │ - 104: aconst_null │ │ │ │ - 105: invokespecial #118 // Method de/duenndns/gmdice/NumberPicker$NumberRangeKeyListener."":(Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/NumberPicker$1;)V │ │ │ │ - 108: aload_0 │ │ │ │ - 109: aload 6 │ │ │ │ - 111: putfield #120 // Field mNumberInputFilter:Landroid/text/InputFilter; │ │ │ │ - 114: aload_0 │ │ │ │ - 115: ldc #121 // int 2131099657 │ │ │ │ - 117: invokevirtual #126 // Method findViewById:(I)Landroid/view/View; │ │ │ │ - 120: checkcast #128 // class de/duenndns/gmdice/NumberPickerButton │ │ │ │ - 123: astore 6 │ │ │ │ - 125: aload_0 │ │ │ │ - 126: aload 6 │ │ │ │ - 128: putfield #130 // Field mIncrementButton:Lde/duenndns/gmdice/NumberPickerButton; │ │ │ │ - 131: aload_0 │ │ │ │ - 132: getfield #130 // Field mIncrementButton:Lde/duenndns/gmdice/NumberPickerButton; │ │ │ │ - 135: aload_0 │ │ │ │ - 136: invokevirtual #134 // Method de/duenndns/gmdice/NumberPickerButton.setOnClickListener:(Landroid/view/View$OnClickListener;)V │ │ │ │ - 139: aload_0 │ │ │ │ - 140: getfield #130 // Field mIncrementButton:Lde/duenndns/gmdice/NumberPickerButton; │ │ │ │ - 143: aload_0 │ │ │ │ - 144: invokevirtual #138 // Method de/duenndns/gmdice/NumberPickerButton.setOnLongClickListener:(Landroid/view/View$OnLongClickListener;)V │ │ │ │ - 147: aload_0 │ │ │ │ - 148: getfield #130 // Field mIncrementButton:Lde/duenndns/gmdice/NumberPickerButton; │ │ │ │ - 151: aload_0 │ │ │ │ - 152: invokevirtual #141 // Method de/duenndns/gmdice/NumberPickerButton.setNumberPicker:(Lde/duenndns/gmdice/NumberPicker;)V │ │ │ │ - 155: aload_0 │ │ │ │ - 156: ldc #142 // int 2131099659 │ │ │ │ - 158: invokevirtual #126 // Method findViewById:(I)Landroid/view/View; │ │ │ │ - 161: checkcast #128 // class de/duenndns/gmdice/NumberPickerButton │ │ │ │ - 164: astore 6 │ │ │ │ - 166: aload_0 │ │ │ │ - 167: aload 6 │ │ │ │ - 169: putfield #145 // Field mDecrementButton:Lde/duenndns/gmdice/NumberPickerButton; │ │ │ │ - 172: aload_0 │ │ │ │ - 173: getfield #145 // Field mDecrementButton:Lde/duenndns/gmdice/NumberPickerButton; │ │ │ │ - 176: aload_0 │ │ │ │ - 177: invokevirtual #134 // Method de/duenndns/gmdice/NumberPickerButton.setOnClickListener:(Landroid/view/View$OnClickListener;)V │ │ │ │ - 180: aload_0 │ │ │ │ - 181: getfield #145 // Field mDecrementButton:Lde/duenndns/gmdice/NumberPickerButton; │ │ │ │ - 184: aload_0 │ │ │ │ - 185: invokevirtual #138 // Method de/duenndns/gmdice/NumberPickerButton.setOnLongClickListener:(Landroid/view/View$OnLongClickListener;)V │ │ │ │ - 188: aload_0 │ │ │ │ - 189: getfield #145 // Field mDecrementButton:Lde/duenndns/gmdice/NumberPickerButton; │ │ │ │ - 192: aload_0 │ │ │ │ - 193: invokevirtual #141 // Method de/duenndns/gmdice/NumberPickerButton.setNumberPicker:(Lde/duenndns/gmdice/NumberPicker;)V │ │ │ │ - 196: aload_0 │ │ │ │ - 197: ldc #146 // int 2131099658 │ │ │ │ - 199: invokevirtual #126 // Method findViewById:(I)Landroid/view/View; │ │ │ │ - 202: checkcast #149 // class android/widget/EditText │ │ │ │ - 205: astore 6 │ │ │ │ - 207: aload_0 │ │ │ │ - 208: aload 6 │ │ │ │ - 210: putfield #151 // Field mText:Landroid/widget/EditText; │ │ │ │ - 213: aload_0 │ │ │ │ - 214: getfield #151 // Field mText:Landroid/widget/EditText; │ │ │ │ - 217: aload_0 │ │ │ │ - 218: invokevirtual #155 // Method android/widget/EditText.setOnFocusChangeListener:(Landroid/view/View$OnFocusChangeListener;)V │ │ │ │ - 221: aload_0 │ │ │ │ - 222: getfield #151 // Field mText:Landroid/widget/EditText; │ │ │ │ - 225: astore 6 │ │ │ │ - 227: sipush 4098 │ │ │ │ - 230: istore 11 │ │ │ │ - 232: aload 6 │ │ │ │ - 234: iload 11 │ │ │ │ - 236: invokevirtual #159 // Method android/widget/EditText.setRawInputType:(I)V │ │ │ │ - 239: aload_0 │ │ │ │ - 240: invokevirtual #163 // Method isEnabled:()Z │ │ │ │ - 243: istore 12 │ │ │ │ - 245: iload 12 │ │ │ │ - 247: ifne 255 │ │ │ │ - 250: aload_0 │ │ │ │ - 251: iconst_0 │ │ │ │ - 252: invokevirtual #167 // Method setEnabled:(Z)V │ │ │ │ - 255: getstatic #173 // Field de/duenndns/gmdice/R$styleable.numberpicker:[I │ │ │ │ - 258: astore 6 │ │ │ │ - 260: aload_1 │ │ │ │ - 261: aload_2 │ │ │ │ - 262: aload 6 │ │ │ │ - 264: invokevirtual #177 // Method android/content/Context.obtainStyledAttributes:(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray; │ │ │ │ - 267: astore 13 │ │ │ │ - 269: aload 13 │ │ │ │ - 271: iconst_0 │ │ │ │ - 272: iconst_0 │ │ │ │ - 273: invokevirtual #183 // Method android/content/res/TypedArray.getInt:(II)I │ │ │ │ - 276: istore 12 │ │ │ │ - 278: aload_0 │ │ │ │ - 279: iload 12 │ │ │ │ - 281: putfield #185 // Field mStart:I │ │ │ │ - 284: aload 13 │ │ │ │ - 286: iload 4 │ │ │ │ - 288: sipush 200 │ │ │ │ - 291: invokevirtual #183 // Method android/content/res/TypedArray.getInt:(II)I │ │ │ │ - 294: istore 12 │ │ │ │ - 296: aload_0 │ │ │ │ - 297: iload 12 │ │ │ │ - 299: putfield #188 // Field mEnd:I │ │ │ │ - 302: aload 13 │ │ │ │ - 304: iconst_4 │ │ │ │ - 305: iload 4 │ │ │ │ - 307: invokevirtual #193 // Method android/content/res/TypedArray.getBoolean:(IZ)Z │ │ │ │ - 310: istore 12 │ │ │ │ - 312: aload_0 │ │ │ │ - 313: iload 12 │ │ │ │ - 315: putfield #195 // Field mWrap:Z │ │ │ │ - 318: aload 13 │ │ │ │ - 320: iconst_2 │ │ │ │ - 321: iconst_0 │ │ │ │ - 322: invokevirtual #183 // Method android/content/res/TypedArray.getInt:(II)I │ │ │ │ - 325: istore 12 │ │ │ │ - 327: aload_0 │ │ │ │ - 328: iload 12 │ │ │ │ - 330: putfield #198 // Field mCurrent:I │ │ │ │ - 333: aload_0 │ │ │ │ - 334: getfield #185 // Field mStart:I │ │ │ │ - 337: istore 12 │ │ │ │ - 339: aload_0 │ │ │ │ - 340: getfield #198 // Field mCurrent:I │ │ │ │ - 343: istore 11 │ │ │ │ - 345: aload_0 │ │ │ │ - 346: getfield #188 // Field mEnd:I │ │ │ │ - 349: istore 5 │ │ │ │ - 351: iload 11 │ │ │ │ - 353: iload 5 │ │ │ │ - 355: invokestatic #203 // Method java/lang/Math.min:(II)I │ │ │ │ - 358: istore 11 │ │ │ │ - 360: iload 12 │ │ │ │ - 362: iload 11 │ │ │ │ - 364: invokestatic #206 // Method java/lang/Math.max:(II)I │ │ │ │ - 367: istore 12 │ │ │ │ - 369: aload_0 │ │ │ │ - 370: iload 12 │ │ │ │ - 372: putfield #198 // Field mCurrent:I │ │ │ │ - 375: aload_0 │ │ │ │ - 376: getfield #151 // Field mText:Landroid/widget/EditText; │ │ │ │ - 379: astore 6 │ │ │ │ - 381: new #208 // class java/lang/StringBuilder │ │ │ │ - 384: astore 14 │ │ │ │ - 386: aload 14 │ │ │ │ - 388: invokespecial #209 // Method java/lang/StringBuilder."":()V │ │ │ │ - 391: aload 14 │ │ │ │ - 393: ldc #211 // String │ │ │ │ - 395: invokevirtual #215 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ │ │ - 398: astore 14 │ │ │ │ - 400: aload_0 │ │ │ │ - 401: getfield #198 // Field mCurrent:I │ │ │ │ - 404: istore 5 │ │ │ │ - 406: aload 14 │ │ │ │ - 408: iload 5 │ │ │ │ - 410: invokevirtual #218 // Method java/lang/StringBuilder.append:(I)Ljava/lang/StringBuilder; │ │ │ │ - 413: invokevirtual #222 // Method java/lang/StringBuilder.toString:()Ljava/lang/String; │ │ │ │ - 416: astore 14 │ │ │ │ - 418: aload 6 │ │ │ │ - 420: aload 14 │ │ │ │ - 422: invokevirtual #226 // Method android/widget/EditText.setText:(Ljava/lang/CharSequence;)V │ │ │ │ - 425: return │ │ │ │ + 3: aload_0 │ │ │ │ + 4: aload_1 │ │ │ │ + 5: aload_2 │ │ │ │ + 6: invokespecial #72 // Method android/widget/LinearLayout."":(Landroid/content/Context;Landroid/util/AttributeSet;)V │ │ │ │ + 9: new #74 // class de/duenndns/gmdice/NumberPicker$2 │ │ │ │ + 12: astore 5 │ │ │ │ + 14: aload 5 │ │ │ │ + 16: aload_0 │ │ │ │ + 17: invokespecial #77 // Method de/duenndns/gmdice/NumberPicker$2."":(Lde/duenndns/gmdice/NumberPicker;)V │ │ │ │ + 20: aload_0 │ │ │ │ + 21: aload 5 │ │ │ │ + 23: putfield #79 // Field mRunnable:Ljava/lang/Runnable; │ │ │ │ + 26: ldc2_w #80 // long 300l │ │ │ │ + 29: lstore 6 │ │ │ │ + 31: aload_0 │ │ │ │ + 32: lload 6 │ │ │ │ + 34: putfield #85 // Field mSpeed:J │ │ │ │ + 37: aload_0 │ │ │ │ + 38: iload 4 │ │ │ │ + 40: invokevirtual #89 // Method setOrientation:(I)V │ │ │ │ + 43: aload_1 │ │ │ │ + 44: ldc #91 // String layout_inflater │ │ │ │ + 46: invokevirtual #97 // Method android/content/Context.getSystemService:(Ljava/lang/String;)Ljava/lang/Object; │ │ │ │ + 49: checkcast #99 // class android/view/LayoutInflater │ │ │ │ + 52: astore 8 │ │ │ │ + 54: aload 8 │ │ │ │ + 56: ldc #100 // int 2130903042 │ │ │ │ + 58: aload_0 │ │ │ │ + 59: iload 4 │ │ │ │ + 61: invokevirtual #105 // Method android/view/LayoutInflater.inflate:(ILandroid/view/ViewGroup;Z)Landroid/view/View; │ │ │ │ + 64: pop │ │ │ │ + 65: new #107 // class android/os/Handler │ │ │ │ + 68: astore 5 │ │ │ │ + 70: aload 5 │ │ │ │ + 72: invokespecial #108 // Method android/os/Handler."":()V │ │ │ │ + 75: aload_0 │ │ │ │ + 76: aload 5 │ │ │ │ + 78: putfield #110 // Field mHandler:Landroid/os/Handler; │ │ │ │ + 81: new #112 // class de/duenndns/gmdice/NumberPicker$NumberPickerInputFilter │ │ │ │ + 84: astore 9 │ │ │ │ + 86: aload 9 │ │ │ │ + 88: aload_0 │ │ │ │ + 89: aconst_null │ │ │ │ + 90: invokespecial #115 // Method de/duenndns/gmdice/NumberPicker$NumberPickerInputFilter."":(Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/NumberPicker$1;)V │ │ │ │ + 93: new #117 // class de/duenndns/gmdice/NumberPicker$NumberRangeKeyListener │ │ │ │ + 96: astore 5 │ │ │ │ + 98: aload 5 │ │ │ │ + 100: aload_0 │ │ │ │ + 101: aconst_null │ │ │ │ + 102: invokespecial #118 // Method de/duenndns/gmdice/NumberPicker$NumberRangeKeyListener."":(Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/NumberPicker$1;)V │ │ │ │ + 105: aload_0 │ │ │ │ + 106: aload 5 │ │ │ │ + 108: putfield #120 // Field mNumberInputFilter:Landroid/text/InputFilter; │ │ │ │ + 111: aload_0 │ │ │ │ + 112: ldc #121 // int 2131099657 │ │ │ │ + 114: invokevirtual #126 // Method findViewById:(I)Landroid/view/View; │ │ │ │ + 117: checkcast #128 // class de/duenndns/gmdice/NumberPickerButton │ │ │ │ + 120: astore 5 │ │ │ │ + 122: aload_0 │ │ │ │ + 123: aload 5 │ │ │ │ + 125: putfield #130 // Field mIncrementButton:Lde/duenndns/gmdice/NumberPickerButton; │ │ │ │ + 128: aload_0 │ │ │ │ + 129: getfield #130 // Field mIncrementButton:Lde/duenndns/gmdice/NumberPickerButton; │ │ │ │ + 132: aload_0 │ │ │ │ + 133: invokevirtual #134 // Method de/duenndns/gmdice/NumberPickerButton.setOnClickListener:(Landroid/view/View$OnClickListener;)V │ │ │ │ + 136: aload_0 │ │ │ │ + 137: getfield #130 // Field mIncrementButton:Lde/duenndns/gmdice/NumberPickerButton; │ │ │ │ + 140: aload_0 │ │ │ │ + 141: invokevirtual #138 // Method de/duenndns/gmdice/NumberPickerButton.setOnLongClickListener:(Landroid/view/View$OnLongClickListener;)V │ │ │ │ + 144: aload_0 │ │ │ │ + 145: getfield #130 // Field mIncrementButton:Lde/duenndns/gmdice/NumberPickerButton; │ │ │ │ + 148: aload_0 │ │ │ │ + 149: invokevirtual #141 // Method de/duenndns/gmdice/NumberPickerButton.setNumberPicker:(Lde/duenndns/gmdice/NumberPicker;)V │ │ │ │ + 152: aload_0 │ │ │ │ + 153: ldc #142 // int 2131099659 │ │ │ │ + 155: invokevirtual #126 // Method findViewById:(I)Landroid/view/View; │ │ │ │ + 158: checkcast #128 // class de/duenndns/gmdice/NumberPickerButton │ │ │ │ + 161: astore 5 │ │ │ │ + 163: aload_0 │ │ │ │ + 164: aload 5 │ │ │ │ + 166: putfield #145 // Field mDecrementButton:Lde/duenndns/gmdice/NumberPickerButton; │ │ │ │ + 169: aload_0 │ │ │ │ + 170: getfield #145 // Field mDecrementButton:Lde/duenndns/gmdice/NumberPickerButton; │ │ │ │ + 173: aload_0 │ │ │ │ + 174: invokevirtual #134 // Method de/duenndns/gmdice/NumberPickerButton.setOnClickListener:(Landroid/view/View$OnClickListener;)V │ │ │ │ + 177: aload_0 │ │ │ │ + 178: getfield #145 // Field mDecrementButton:Lde/duenndns/gmdice/NumberPickerButton; │ │ │ │ + 181: aload_0 │ │ │ │ + 182: invokevirtual #138 // Method de/duenndns/gmdice/NumberPickerButton.setOnLongClickListener:(Landroid/view/View$OnLongClickListener;)V │ │ │ │ + 185: aload_0 │ │ │ │ + 186: getfield #145 // Field mDecrementButton:Lde/duenndns/gmdice/NumberPickerButton; │ │ │ │ + 189: aload_0 │ │ │ │ + 190: invokevirtual #141 // Method de/duenndns/gmdice/NumberPickerButton.setNumberPicker:(Lde/duenndns/gmdice/NumberPicker;)V │ │ │ │ + 193: aload_0 │ │ │ │ + 194: ldc #146 // int 2131099658 │ │ │ │ + 196: invokevirtual #126 // Method findViewById:(I)Landroid/view/View; │ │ │ │ + 199: checkcast #149 // class android/widget/EditText │ │ │ │ + 202: astore 5 │ │ │ │ + 204: aload_0 │ │ │ │ + 205: aload 5 │ │ │ │ + 207: putfield #151 // Field mText:Landroid/widget/EditText; │ │ │ │ + 210: aload_0 │ │ │ │ + 211: getfield #151 // Field mText:Landroid/widget/EditText; │ │ │ │ + 214: aload_0 │ │ │ │ + 215: invokevirtual #155 // Method android/widget/EditText.setOnFocusChangeListener:(Landroid/view/View$OnFocusChangeListener;)V │ │ │ │ + 218: aload_0 │ │ │ │ + 219: getfield #151 // Field mText:Landroid/widget/EditText; │ │ │ │ + 222: astore 5 │ │ │ │ + 224: sipush 4098 │ │ │ │ + 227: istore 10 │ │ │ │ + 229: aload 5 │ │ │ │ + 231: iload 10 │ │ │ │ + 233: invokevirtual #159 // Method android/widget/EditText.setRawInputType:(I)V │ │ │ │ + 236: aload_0 │ │ │ │ + 237: invokevirtual #163 // Method isEnabled:()Z │ │ │ │ + 240: istore 11 │ │ │ │ + 242: iload 11 │ │ │ │ + 244: ifne 252 │ │ │ │ + 247: aload_0 │ │ │ │ + 248: iconst_0 │ │ │ │ + 249: invokevirtual #167 // Method setEnabled:(Z)V │ │ │ │ + 252: getstatic #173 // Field de/duenndns/gmdice/R$styleable.numberpicker:[I │ │ │ │ + 255: astore 5 │ │ │ │ + 257: aload_1 │ │ │ │ + 258: aload_2 │ │ │ │ + 259: aload 5 │ │ │ │ + 261: invokevirtual #177 // Method android/content/Context.obtainStyledAttributes:(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray; │ │ │ │ + 264: astore 12 │ │ │ │ + 266: aload 12 │ │ │ │ + 268: iconst_0 │ │ │ │ + 269: iconst_0 │ │ │ │ + 270: invokevirtual #183 // Method android/content/res/TypedArray.getInt:(II)I │ │ │ │ + 273: istore 11 │ │ │ │ + 275: aload_0 │ │ │ │ + 276: iload 11 │ │ │ │ + 278: putfield #185 // Field mStart:I │ │ │ │ + 281: aload 12 │ │ │ │ + 283: iload 4 │ │ │ │ + 285: sipush 200 │ │ │ │ + 288: invokevirtual #183 // Method android/content/res/TypedArray.getInt:(II)I │ │ │ │ + 291: istore 11 │ │ │ │ + 293: aload_0 │ │ │ │ + 294: iload 11 │ │ │ │ + 296: putfield #188 // Field mEnd:I │ │ │ │ + 299: aload 12 │ │ │ │ + 301: iconst_4 │ │ │ │ + 302: iload 4 │ │ │ │ + 304: invokevirtual #193 // Method android/content/res/TypedArray.getBoolean:(IZ)Z │ │ │ │ + 307: istore 11 │ │ │ │ + 309: aload_0 │ │ │ │ + 310: iload 11 │ │ │ │ + 312: putfield #195 // Field mWrap:Z │ │ │ │ + 315: aload 12 │ │ │ │ + 317: iconst_2 │ │ │ │ + 318: iconst_0 │ │ │ │ + 319: invokevirtual #183 // Method android/content/res/TypedArray.getInt:(II)I │ │ │ │ + 322: istore 11 │ │ │ │ + 324: aload_0 │ │ │ │ + 325: iload 11 │ │ │ │ + 327: putfield #198 // Field mCurrent:I │ │ │ │ + 330: aload_0 │ │ │ │ + 331: getfield #185 // Field mStart:I │ │ │ │ + 334: istore 11 │ │ │ │ + 336: aload_0 │ │ │ │ + 337: getfield #198 // Field mCurrent:I │ │ │ │ + 340: istore 10 │ │ │ │ + 342: aload_0 │ │ │ │ + 343: getfield #188 // Field mEnd:I │ │ │ │ + 346: istore 13 │ │ │ │ + 348: iload 10 │ │ │ │ + 350: iload 13 │ │ │ │ + 352: invokestatic #203 // Method java/lang/Math.min:(II)I │ │ │ │ + 355: istore 10 │ │ │ │ + 357: iload 11 │ │ │ │ + 359: iload 10 │ │ │ │ + 361: invokestatic #206 // Method java/lang/Math.max:(II)I │ │ │ │ + 364: istore 11 │ │ │ │ + 366: aload_0 │ │ │ │ + 367: iload 11 │ │ │ │ + 369: putfield #198 // Field mCurrent:I │ │ │ │ + 372: aload_0 │ │ │ │ + 373: getfield #151 // Field mText:Landroid/widget/EditText; │ │ │ │ + 376: astore 5 │ │ │ │ + 378: new #208 // class java/lang/StringBuilder │ │ │ │ + 381: astore 14 │ │ │ │ + 383: aload 14 │ │ │ │ + 385: invokespecial #209 // Method java/lang/StringBuilder."":()V │ │ │ │ + 388: aload 14 │ │ │ │ + 390: ldc #211 // String │ │ │ │ + 392: invokevirtual #215 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ │ │ + 395: astore 14 │ │ │ │ + 397: aload_0 │ │ │ │ + 398: getfield #198 // Field mCurrent:I │ │ │ │ + 401: istore 13 │ │ │ │ + 403: aload 14 │ │ │ │ + 405: iload 13 │ │ │ │ + 407: invokevirtual #218 // Method java/lang/StringBuilder.append:(I)Ljava/lang/StringBuilder; │ │ │ │ + 410: invokevirtual #222 // Method java/lang/StringBuilder.toString:()Ljava/lang/String; │ │ │ │ + 413: astore 14 │ │ │ │ + 415: aload 5 │ │ │ │ + 417: aload 14 │ │ │ │ + 419: invokevirtual #226 // Method android/widget/EditText.setText:(Ljava/lang/CharSequence;)V │ │ │ │ + 422: return │ │ │ │ │ │ │ │ static boolean access$000(de.duenndns.gmdice.NumberPicker); │ │ │ │ descriptor: (Lde/duenndns/gmdice/NumberPicker;)Z │ │ │ │ flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC │ │ │ │ Code: │ │ │ │ stack=300, locals=1, args_size=1 │ │ │ │ 0: aload_0 ├── smali/de/duenndns/gmdice/NumberPicker$NumberPickerInputFilter.smali │ @@ -45,76 +45,72 @@ │ │ return-void │ .end method │ │ │ # virtual methods │ .method public filter(Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Ljava/lang/CharSequence; │ - .locals 16 │ + .locals 13 │ .param p1, "source" # Ljava/lang/CharSequence; │ .param p2, "start" # I │ .param p3, "end" # I │ .param p4, "dest" # Landroid/text/Spanned; │ .param p5, "dstart" # I │ .param p6, "dend" # I │ │ .prologue │ .line 357 │ - move-object/from16 v0, p0 │ - │ - iget-object v2, v0, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;->this$0:Lde/duenndns/gmdice/NumberPicker; │ + iget-object v2, p0, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;->this$0:Lde/duenndns/gmdice/NumberPicker; │ │ invoke-static {v2}, Lde/duenndns/gmdice/NumberPicker;->access$600(Lde/duenndns/gmdice/NumberPicker;)[Ljava/lang/String; │ │ move-result-object v2 │ │ if-nez v2, :cond_1 │ │ .line 358 │ - move-object/from16 v0, p0 │ - │ - iget-object v2, v0, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;->this$0:Lde/duenndns/gmdice/NumberPicker; │ + iget-object v2, p0, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;->this$0:Lde/duenndns/gmdice/NumberPicker; │ │ invoke-static {v2}, Lde/duenndns/gmdice/NumberPicker;->access$700(Lde/duenndns/gmdice/NumberPicker;)Landroid/text/InputFilter; │ │ move-result-object v2 │ │ - move-object/from16 v3, p1 │ + move-object v3, p1 │ │ - move/from16 v4, p2 │ + move v4, p2 │ │ move/from16 v5, p3 │ │ move-object/from16 v6, p4 │ │ move/from16 v7, p5 │ │ move/from16 v8, p6 │ │ invoke-interface/range {v2 .. v8}, Landroid/text/InputFilter;->filter(Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Ljava/lang/CharSequence; │ │ - move-result-object v10 │ + move-result-object v9 │ │ .line 371 │ :cond_0 │ :goto_0 │ - return-object v10 │ + return-object v9 │ │ .line 360 │ :cond_1 │ invoke-interface/range {p1 .. p3}, Ljava/lang/CharSequence;->subSequence(II)Ljava/lang/CharSequence; │ │ move-result-object v2 │ │ invoke-static {v2}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String; │ │ - move-result-object v10 │ + move-result-object v9 │ │ .line 361 │ - .local v10, "filtered":Ljava/lang/CharSequence; │ + .local v9, "filtered":Ljava/lang/CharSequence; │ new-instance v2, Ljava/lang/StringBuilder; │ │ invoke-direct {v2}, Ljava/lang/StringBuilder;->()V │ │ const/4 v3, 0x0 │ │ move-object/from16 v0, p4 │ @@ -129,18 +125,19 @@ │ │ move-result-object v3 │ │ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ - invoke-virtual {v2, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ + invoke-virtual {v2, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ + .line 363 │ invoke-interface/range {p4 .. p4}, Landroid/text/Spanned;->length()I │ │ move-result v3 │ │ move-object/from16 v0, p4 │ │ move/from16 v1, p6 │ @@ -151,66 +148,61 @@ │ │ invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ │ move-result-object v2 │ │ invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v13 │ + move-result-object v10 │ │ .line 364 │ - .local v13, "result":Ljava/lang/String; │ - invoke-static {v13}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String; │ + .local v10, "result":Ljava/lang/String; │ + invoke-static {v10}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String; │ │ move-result-object v2 │ │ invoke-virtual {v2}, Ljava/lang/String;->toLowerCase()Ljava/lang/String; │ │ - move-result-object v14 │ + move-result-object v11 │ │ .line 365 │ - .local v14, "str":Ljava/lang/String; │ - move-object/from16 v0, p0 │ - │ - iget-object v2, v0, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;->this$0:Lde/duenndns/gmdice/NumberPicker; │ + .local v11, "str":Ljava/lang/String; │ + iget-object v2, p0, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;->this$0:Lde/duenndns/gmdice/NumberPicker; │ │ invoke-static {v2}, Lde/duenndns/gmdice/NumberPicker;->access$600(Lde/duenndns/gmdice/NumberPicker;)[Ljava/lang/String; │ │ - move-result-object v9 │ + move-result-object v3 │ │ - .local v9, "arr$":[Ljava/lang/String; │ - array-length v12, v9 │ + array-length v4, v3 │ │ - .local v12, "len$":I │ - const/4 v11, 0x0 │ + const/4 v2, 0x0 │ │ - .local v11, "i$":I │ :goto_1 │ - if-ge v11, v12, :cond_2 │ + if-ge v2, v4, :cond_2 │ │ - aget-object v15, v9, v11 │ + aget-object v12, v3, v2 │ │ .line 366 │ - .local v15, "val":Ljava/lang/String; │ - invoke-virtual {v15}, Ljava/lang/String;->toLowerCase()Ljava/lang/String; │ + .local v12, "val":Ljava/lang/String; │ + invoke-virtual {v12}, Ljava/lang/String;->toLowerCase()Ljava/lang/String; │ │ - move-result-object v15 │ + move-result-object v12 │ │ .line 367 │ - invoke-virtual {v15, v14}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z │ + invoke-virtual {v12, v11}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z │ │ - move-result v2 │ + move-result v5 │ │ - if-nez v2, :cond_0 │ + if-nez v5, :cond_0 │ │ .line 365 │ - add-int/lit8 v11, v11, 0x1 │ + add-int/lit8 v2, v2, 0x1 │ │ goto :goto_1 │ │ .line 371 │ - .end local v15 # "val":Ljava/lang/String; │ + .end local v12 # "val":Ljava/lang/String; │ :cond_2 │ - const-string v10, "" │ + const-string v9, "" │ │ goto :goto_0 │ .end method ├── smali/de/duenndns/gmdice/GameMasterDice$1.smali │ @@ -20,14 +20,15 @@ │ # instance fields │ .field final synthetic this$0:Lde/duenndns/gmdice/GameMasterDice; │ │ │ # direct methods │ .method constructor (Lde/duenndns/gmdice/GameMasterDice;)V │ .locals 0 │ + .param p1, "this$0" # Lde/duenndns/gmdice/GameMasterDice; │ │ .prologue │ .line 182 │ iput-object p1, p0, Lde/duenndns/gmdice/GameMasterDice$1;->this$0:Lde/duenndns/gmdice/GameMasterDice; │ │ invoke-direct {p0}, Ljava/lang/Object;->()V │ │ @@ -47,18 +48,20 @@ │ │ new-instance v1, Landroid/content/Intent; │ │ const-string v2, "android.intent.action.VIEW" │ │ const-string v3, "https://github.com/ge0rg/gamemasterdice/wiki" │ │ + .line 185 │ invoke-static {v3}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri; │ │ move-result-object v3 │ │ invoke-direct {v1, v2, v3}, Landroid/content/Intent;->(Ljava/lang/String;Landroid/net/Uri;)V │ │ + .line 184 │ invoke-virtual {v0, v1}, Lde/duenndns/gmdice/GameMasterDice;->startActivity(Landroid/content/Intent;)V │ │ .line 186 │ return-void │ .end method ├── smali/de/duenndns/gmdice/NumberPicker$2.smali │ @@ -20,28 +20,29 @@ │ # instance fields │ .field final synthetic this$0:Lde/duenndns/gmdice/NumberPicker; │ │ │ # direct methods │ .method constructor (Lde/duenndns/gmdice/NumberPicker;)V │ .locals 0 │ + .param p1, "this$0" # Lde/duenndns/gmdice/NumberPicker; │ │ .prologue │ .line 82 │ iput-object p1, p0, Lde/duenndns/gmdice/NumberPicker$2;->this$0:Lde/duenndns/gmdice/NumberPicker; │ │ invoke-direct {p0}, Ljava/lang/Object;->()V │ │ return-void │ .end method │ │ │ # virtual methods │ .method public run()V │ - .locals 3 │ + .locals 4 │ │ .prologue │ .line 84 │ iget-object v0, p0, Lde/duenndns/gmdice/NumberPicker$2;->this$0:Lde/duenndns/gmdice/NumberPicker; │ │ invoke-static {v0}, Lde/duenndns/gmdice/NumberPicker;->access$000(Lde/duenndns/gmdice/NumberPicker;)Z │ │ @@ -67,17 +68,17 @@ │ │ move-result-object v0 │ │ iget-object v1, p0, Lde/duenndns/gmdice/NumberPicker$2;->this$0:Lde/duenndns/gmdice/NumberPicker; │ │ invoke-static {v1}, Lde/duenndns/gmdice/NumberPicker;->access$100(Lde/duenndns/gmdice/NumberPicker;)J │ │ - move-result-wide v1 │ + move-result-wide v2 │ │ - invoke-virtual {v0, p0, v1, v2}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z │ + invoke-virtual {v0, p0, v2, v3}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z │ │ .line 91 │ :cond_0 │ :goto_0 │ return-void │ │ .line 87 │ @@ -108,13 +109,13 @@ │ │ move-result-object v0 │ │ iget-object v1, p0, Lde/duenndns/gmdice/NumberPicker$2;->this$0:Lde/duenndns/gmdice/NumberPicker; │ │ invoke-static {v1}, Lde/duenndns/gmdice/NumberPicker;->access$100(Lde/duenndns/gmdice/NumberPicker;)J │ │ - move-result-wide v1 │ + move-result-wide v2 │ │ - invoke-virtual {v0, p0, v1, v2}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z │ + invoke-virtual {v0, p0, v2, v3}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z │ │ goto :goto_0 │ .end method ├── smali/de/duenndns/gmdice/R.smali │ @@ -21,10 +21,9 @@ │ .method public constructor ()V │ .locals 0 │ │ .prologue │ .line 10 │ invoke-direct {p0}, Ljava/lang/Object;->()V │ │ - .line 122 │ return-void │ .end method ├── smali/de/duenndns/gmdice/RollResult.smali │ @@ -51,32 +51,36 @@ │ .line 360 │ new-instance v0, Landroid/app/AlertDialog$Builder; │ │ invoke-direct {v0, p1}, Landroid/app/AlertDialog$Builder;->(Landroid/content/Context;)V │ │ const v1, 0x7f04000a │ │ + .line 361 │ invoke-virtual {v0, v1}, Landroid/app/AlertDialog$Builder;->setTitle(I)Landroid/app/AlertDialog$Builder; │ │ move-result-object v0 │ │ iget-object v1, p0, Lde/duenndns/gmdice/RollResult;->result:Ljava/lang/String; │ │ + .line 362 │ invoke-virtual {v0, v1}, Landroid/app/AlertDialog$Builder;->setMessage(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder; │ │ move-result-object v0 │ │ const v1, 0x104000a │ │ const/4 v2, 0x0 │ │ + .line 363 │ invoke-virtual {v0, v1, v2}, Landroid/app/AlertDialog$Builder;->setPositiveButton(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; │ │ move-result-object v0 │ │ + .line 364 │ invoke-virtual {v0}, Landroid/app/AlertDialog$Builder;->create()Landroid/app/AlertDialog; │ │ move-result-object v0 │ │ invoke-virtual {v0}, Landroid/app/AlertDialog;->show()V │ │ .line 365 ├── smali/de/duenndns/gmdice/DiceCache.smali │ @@ -156,74 +156,69 @@ │ │ .prologue │ .line 41 │ return-void │ .end method │ │ .method public loadFromString(Ljava/lang/String;)V │ - .locals 7 │ + .locals 6 │ .param p1, "s" # Ljava/lang/String; │ │ .prologue │ .line 77 │ if-nez p1, :cond_1 │ │ .line 85 │ :cond_0 │ return-void │ │ .line 79 │ :cond_1 │ - const-string v5, "\\|" │ + const-string v2, "\\|" │ │ - invoke-virtual {p1, v5}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String; │ + invoke-virtual {p1, v2}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String; │ │ - move-result-object v4 │ + move-result-object v1 │ │ .line 80 │ - .local v4, "values":[Ljava/lang/String; │ - iget-object v5, p0, Lde/duenndns/gmdice/DiceCache;->dscache:Ljava/util/ArrayList; │ + .local v1, "values":[Ljava/lang/String; │ + iget-object v2, p0, Lde/duenndns/gmdice/DiceCache;->dscache:Ljava/util/ArrayList; │ │ - invoke-virtual {v5}, Ljava/util/ArrayList;->clear()V │ + invoke-virtual {v2}, Ljava/util/ArrayList;->clear()V │ │ .line 81 │ - move-object v0, v4 │ - │ - .local v0, "arr$":[Ljava/lang/String; │ - array-length v2, v0 │ + array-length v3, v1 │ │ - .local v2, "len$":I │ - const/4 v1, 0x0 │ + const/4 v2, 0x0 │ │ - .local v1, "i$":I │ :goto_0 │ - if-ge v1, v2, :cond_0 │ + if-ge v2, v3, :cond_0 │ │ - aget-object v3, v0, v1 │ + aget-object v0, v1, v2 │ │ .line 82 │ - .local v3, "v":Ljava/lang/String; │ - invoke-virtual {v3}, Ljava/lang/String;->length()I │ + .local v0, "v":Ljava/lang/String; │ + invoke-virtual {v0}, Ljava/lang/String;->length()I │ │ - move-result v5 │ + move-result v4 │ │ - if-lez v5, :cond_2 │ + if-lez v4, :cond_2 │ │ .line 83 │ - iget-object v5, p0, Lde/duenndns/gmdice/DiceCache;->dscache:Ljava/util/ArrayList; │ + iget-object v4, p0, Lde/duenndns/gmdice/DiceCache;->dscache:Ljava/util/ArrayList; │ │ - invoke-static {v3}, Lde/duenndns/gmdice/DiceSet;->getDiceSet(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; │ + invoke-static {v0}, Lde/duenndns/gmdice/DiceSet;->getDiceSet(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-virtual {v5, v6}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z │ + invoke-virtual {v4, v5}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z │ │ .line 81 │ :cond_2 │ - add-int/lit8 v1, v1, 0x1 │ + add-int/lit8 v2, v2, 0x1 │ │ goto :goto_0 │ .end method │ │ .method public populate(Landroid/widget/ArrayAdapter;Ljava/util/List;)V │ .locals 3 │ .annotation system Ldalvik/annotation/Signature; │ @@ -240,21 +235,20 @@ │ } │ .end annotation │ │ .prologue │ .line 57 │ .local p1, "list":Landroid/widget/ArrayAdapter;, "Landroid/widget/ArrayAdapter;" │ .local p2, "except":Ljava/util/List;, "Ljava/util/List;" │ - iget-object v2, p0, Lde/duenndns/gmdice/DiceCache;->dscache:Ljava/util/ArrayList; │ + iget-object v1, p0, Lde/duenndns/gmdice/DiceCache;->dscache:Ljava/util/ArrayList; │ │ - invoke-virtual {v2}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator; │ + invoke-virtual {v1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator; │ │ move-result-object v1 │ │ - .local v1, "i$":Ljava/util/Iterator; │ :cond_0 │ :goto_0 │ invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z │ │ move-result v2 │ │ if-eqz v2, :cond_1 │ @@ -281,103 +275,102 @@ │ invoke-virtual {p1, v2}, Landroid/widget/ArrayAdapter;->add(Ljava/lang/Object;)V │ │ goto :goto_0 │ │ .line 61 │ .end local v0 # "i":Lde/duenndns/gmdice/DiceSet; │ :cond_1 │ - const-string v2, "3D20" │ + const-string v1, "3D20" │ │ - invoke-static {v2}, Lde/duenndns/gmdice/DiceSet;->getDiceSet(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; │ + invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;->getDiceSet(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; │ │ - move-result-object v2 │ + move-result-object v1 │ │ - invoke-interface {p2, v2}, Ljava/util/List;->contains(Ljava/lang/Object;)Z │ + invoke-interface {p2, v1}, Ljava/util/List;->contains(Ljava/lang/Object;)Z │ │ - move-result v2 │ + move-result v1 │ │ - if-nez v2, :cond_2 │ + if-nez v1, :cond_2 │ │ .line 62 │ - const-string v2, "3D20" │ + const-string v1, "3D20" │ │ - invoke-virtual {p1, v2}, Landroid/widget/ArrayAdapter;->add(Ljava/lang/Object;)V │ + invoke-virtual {p1, v1}, Landroid/widget/ArrayAdapter;->add(Ljava/lang/Object;)V │ │ .line 63 │ :cond_2 │ - const-string v2, "4dF" │ + const-string v1, "4dF" │ │ - invoke-static {v2}, Lde/duenndns/gmdice/DiceSet;->getDiceSet(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; │ + invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;->getDiceSet(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; │ │ - move-result-object v2 │ + move-result-object v1 │ │ - invoke-interface {p2, v2}, Ljava/util/List;->contains(Ljava/lang/Object;)Z │ + invoke-interface {p2, v1}, Ljava/util/List;->contains(Ljava/lang/Object;)Z │ │ - move-result v2 │ + move-result v1 │ │ - if-nez v2, :cond_3 │ + if-nez v1, :cond_3 │ │ .line 64 │ - const-string v2, "4dF" │ + const-string v1, "4dF" │ │ - invoke-virtual {p1, v2}, Landroid/widget/ArrayAdapter;->add(Ljava/lang/Object;)V │ + invoke-virtual {p1, v1}, Landroid/widget/ArrayAdapter;->add(Ljava/lang/Object;)V │ │ .line 65 │ :cond_3 │ return-void │ .end method │ │ .method public toString()Ljava/lang/String; │ .locals 4 │ │ .prologue │ .line 68 │ - new-instance v2, Ljava/lang/StringBuilder; │ + new-instance v1, Ljava/lang/StringBuilder; │ │ - invoke-direct {v2}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v1}, Ljava/lang/StringBuilder;->()V │ │ .line 69 │ - .local v2, "sb":Ljava/lang/StringBuilder; │ - iget-object v3, p0, Lde/duenndns/gmdice/DiceCache;->dscache:Ljava/util/ArrayList; │ + .local v1, "sb":Ljava/lang/StringBuilder; │ + iget-object v2, p0, Lde/duenndns/gmdice/DiceCache;->dscache:Ljava/util/ArrayList; │ │ - invoke-virtual {v3}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator; │ + invoke-virtual {v2}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator; │ │ - move-result-object v1 │ + move-result-object v2 │ │ - .local v1, "i$":Ljava/util/Iterator; │ :goto_0 │ - invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z │ + invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z │ │ move-result v3 │ │ if-eqz v3, :cond_0 │ │ - invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ + invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object; │ │ move-result-object v0 │ │ check-cast v0, Lde/duenndns/gmdice/DiceSet; │ │ .line 70 │ .local v0, "i":Lde/duenndns/gmdice/DiceSet; │ invoke-virtual {v0}, Lde/duenndns/gmdice/DiceSet;->toString()Ljava/lang/String; │ │ move-result-object v3 │ │ - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ .line 71 │ const-string v3, "|" │ │ - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ goto :goto_0 │ │ .line 73 │ .end local v0 # "i":Lde/duenndns/gmdice/DiceSet; │ :cond_0 │ - invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v3 │ + move-result-object v2 │ │ - return-object v3 │ + return-object v2 │ .end method ├── smali/de/duenndns/gmdice/GameMasterDice.smali │ @@ -328,14 +328,15 @@ │ │ aput-object v2, v0, v1 │ │ const/16 v1, 0xa │ │ const/4 v2, 0x0 │ │ + .line 265 │ invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ move-result-object v2 │ │ aput-object v2, v0, v1 │ │ const/16 v1, 0xb │ @@ -426,14 +427,15 @@ │ │ move-result-object v2 │ │ aput-object v2, v0, v1 │ │ sput-object v0, Lde/duenndns/gmdice/GameMasterDice;->SPIN_MODIFIER:[Ljava/lang/Integer; │ │ + .line 264 │ return-void │ .end method │ │ .method public constructor ()V │ .locals 6 │ │ .prologue │ @@ -465,38 +467,42 @@ │ iput-object v0, p0, Lde/duenndns/gmdice/GameMasterDice;->button_colors:[I │ │ .line 63 │ new-array v0, v4, [Lde/duenndns/gmdice/DiceSet; │ │ const-string v1, "3D20" │ │ + .line 64 │ invoke-static {v1}, Lde/duenndns/gmdice/DiceSet;->getDiceSet(Ljava/lang/String;)Lde/duenndns/gmdice/DiceSet; │ │ move-result-object v1 │ │ aput-object v1, v0, v2 │ │ const/16 v1, 0x14 │ │ + .line 65 │ invoke-static {v3, v1, v2}, Lde/duenndns/gmdice/DiceSet;->getDiceSet(III)Lde/duenndns/gmdice/DiceSet; │ │ move-result-object v1 │ │ aput-object v1, v0, v3 │ │ const/4 v1, 0x2 │ │ + .line 66 │ invoke-static {v3, v5, v2}, Lde/duenndns/gmdice/DiceSet;->getDiceSet(III)Lde/duenndns/gmdice/DiceSet; │ │ move-result-object v2 │ │ aput-object v2, v0, v1 │ │ const/4 v1, 0x3 │ │ + .line 67 │ invoke-static {v3, v5, v4}, Lde/duenndns/gmdice/DiceSet;->getDiceSet(III)Lde/duenndns/gmdice/DiceSet; │ │ move-result-object v2 │ │ aput-object v2, v0, v1 │ │ iput-object v0, p0, Lde/duenndns/gmdice/GameMasterDice;->button_cfg:[Lde/duenndns/gmdice/DiceSet; │ @@ -567,14 +573,15 @@ │ .line 170 │ .local v2, "versionTitle":Ljava/lang/String; │ :try_start_0 │ invoke-virtual {p0}, Lde/duenndns/gmdice/GameMasterDice;->getPackageManager()Landroid/content/pm/PackageManager; │ │ move-result-object v3 │ │ + .line 171 │ invoke-virtual {p0}, Lde/duenndns/gmdice/GameMasterDice;->getPackageName()Ljava/lang/String; │ │ move-result-object v4 │ │ const/4 v5, 0x0 │ │ invoke-virtual {v3, v4, v5}, Landroid/content/pm/PackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo; │ @@ -642,46 +649,52 @@ │ │ .line 176 │ .local v0, "about":Ljava/lang/String; │ new-instance v3, Landroid/app/AlertDialog$Builder; │ │ invoke-direct {v3, p0}, Landroid/app/AlertDialog$Builder;->(Landroid/content/Context;)V │ │ + .line 177 │ invoke-virtual {v3, v2}, Landroid/app/AlertDialog$Builder;->setTitle(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder; │ │ move-result-object v3 │ │ const v4, 0x108009b │ │ + .line 178 │ invoke-virtual {v3, v4}, Landroid/app/AlertDialog$Builder;->setIcon(I)Landroid/app/AlertDialog$Builder; │ │ move-result-object v3 │ │ + .line 179 │ invoke-virtual {v3, v0}, Landroid/app/AlertDialog$Builder;->setMessage(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder; │ │ move-result-object v3 │ │ const v4, 0x104000a │ │ const/4 v5, 0x0 │ │ + .line 180 │ invoke-virtual {v3, v4, v5}, Landroid/app/AlertDialog$Builder;->setPositiveButton(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; │ │ move-result-object v3 │ │ const v4, 0x7f040012 │ │ new-instance v5, Lde/duenndns/gmdice/GameMasterDice$1; │ │ invoke-direct {v5, p0}, Lde/duenndns/gmdice/GameMasterDice$1;->(Lde/duenndns/gmdice/GameMasterDice;)V │ │ + .line 181 │ invoke-virtual {v3, v4, v5}, Landroid/app/AlertDialog$Builder;->setNeutralButton(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; │ │ move-result-object v3 │ │ + .line 188 │ invoke-virtual {v3}, Landroid/app/AlertDialog$Builder;->create()Landroid/app/AlertDialog; │ │ move-result-object v3 │ │ invoke-virtual {v3}, Landroid/app/AlertDialog;->show()V │ │ .line 189 │ @@ -799,42 +812,47 @@ │ .local v4, "np_m":Lde/duenndns/gmdice/NumberPicker; │ new-instance v0, Landroid/app/AlertDialog$Builder; │ │ invoke-direct {v0, p0}, Landroid/app/AlertDialog$Builder;->(Landroid/content/Context;)V │ │ const v1, 0x7f040004 │ │ + .line 296 │ invoke-virtual {v0, v1}, Landroid/app/AlertDialog$Builder;->setTitle(I)Landroid/app/AlertDialog$Builder; │ │ move-result-object v0 │ │ + .line 297 │ invoke-virtual {v0, v6}, Landroid/app/AlertDialog$Builder;->setView(Landroid/view/View;)Landroid/app/AlertDialog$Builder; │ │ move-result-object v8 │ │ const v9, 0x104000a │ │ new-instance v0, Lde/duenndns/gmdice/GameMasterDice$4; │ │ move-object v1, p0 │ │ move-object v5, p2 │ │ invoke-direct/range {v0 .. v5}, Lde/duenndns/gmdice/GameMasterDice$4;->(Lde/duenndns/gmdice/GameMasterDice;Lde/duenndns/gmdice/NumberPicker;Landroid/widget/Spinner;Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/OnDiceChange;)V │ │ + .line 298 │ invoke-virtual {v8, v9, v0}, Landroid/app/AlertDialog$Builder;->setPositiveButton(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; │ │ move-result-object v0 │ │ const/high16 v1, 0x1040000 │ │ + .line 307 │ invoke-virtual {v0, v1, v10}, Landroid/app/AlertDialog$Builder;->setNegativeButton(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; │ │ move-result-object v0 │ │ + .line 309 │ invoke-virtual {v0}, Landroid/app/AlertDialog$Builder;->create()Landroid/app/AlertDialog; │ │ move-result-object v0 │ │ invoke-virtual {v0}, Landroid/app/AlertDialog;->show()V │ │ .line 310 │ @@ -1628,34 +1646,38 @@ │ .line 319 │ new-instance v1, Landroid/app/AlertDialog$Builder; │ │ invoke-direct {v1, p0}, Landroid/app/AlertDialog$Builder;->(Landroid/content/Context;)V │ │ const v2, 0x7f040002 │ │ + .line 320 │ invoke-virtual {v1, v2}, Landroid/app/AlertDialog$Builder;->setTitle(I)Landroid/app/AlertDialog$Builder; │ │ move-result-object v1 │ │ new-instance v2, Lde/duenndns/gmdice/GameMasterDice$5; │ │ invoke-direct {v2, p0, v0, p1, p3}, Lde/duenndns/gmdice/GameMasterDice$5;->(Lde/duenndns/gmdice/GameMasterDice;Landroid/widget/ArrayAdapter;Lde/duenndns/gmdice/DiceSet;Lde/duenndns/gmdice/OnDiceChange;)V │ │ + .line 321 │ invoke-virtual {v1, v0, v2}, Landroid/app/AlertDialog$Builder;->setAdapter(Landroid/widget/ListAdapter;Landroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; │ │ move-result-object v1 │ │ const/high16 v2, 0x1040000 │ │ const/4 v3, 0x0 │ │ + .line 331 │ invoke-virtual {v1, v2, v3}, Landroid/app/AlertDialog$Builder;->setNegativeButton(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder; │ │ move-result-object v1 │ │ + .line 332 │ invoke-virtual {v1}, Landroid/app/AlertDialog$Builder;->create()Landroid/app/AlertDialog; │ │ move-result-object v1 │ │ invoke-virtual {v1}, Landroid/app/AlertDialog;->show()V │ │ .line 333 │ @@ -1822,22 +1844,24 @@ │ │ move-result-object v2 │ │ const-string v3, "cache" │ │ iget-object v4, p0, Lde/duenndns/gmdice/GameMasterDice;->dicecache:Lde/duenndns/gmdice/DiceCache; │ │ + .line 211 │ invoke-virtual {v4}, Lde/duenndns/gmdice/DiceCache;->toString()Ljava/lang/String; │ │ move-result-object v4 │ │ invoke-interface {v2, v3, v4}, Landroid/content/SharedPreferences$Editor;->putString(Ljava/lang/String;Ljava/lang/String;)Landroid/content/SharedPreferences$Editor; │ │ move-result-object v2 │ │ + .line 212 │ invoke-interface {v2}, Landroid/content/SharedPreferences$Editor;->commit()Z │ │ .line 213 │ return-void │ .end method │ │ .method toggleKeepScreenOn()V ├── smali/de/duenndns/gmdice/GameMasterDice$3.smali │ @@ -19,14 +19,15 @@ │ │ .field final synthetic val$btn:Landroid/widget/Button; │ │ │ # direct methods │ .method constructor (Lde/duenndns/gmdice/GameMasterDice;Landroid/widget/Button;)V │ .locals 0 │ + .param p1, "this$0" # Lde/duenndns/gmdice/GameMasterDice; │ │ .prologue │ .line 250 │ iput-object p1, p0, Lde/duenndns/gmdice/GameMasterDice$3;->this$0:Lde/duenndns/gmdice/GameMasterDice; │ │ iput-object p2, p0, Lde/duenndns/gmdice/GameMasterDice$3;->val$btn:Landroid/widget/Button; ├── smali/de/duenndns/gmdice/GameMasterDice$5.smali │ @@ -26,14 +26,15 @@ │ │ .field final synthetic val$onOk:Lde/duenndns/gmdice/OnDiceChange; │ │ │ # direct methods │ .method constructor (Lde/duenndns/gmdice/GameMasterDice;Landroid/widget/ArrayAdapter;Lde/duenndns/gmdice/DiceSet;Lde/duenndns/gmdice/OnDiceChange;)V │ .locals 0 │ + .param p1, "this$0" # Lde/duenndns/gmdice/GameMasterDice; │ │ .prologue │ .line 321 │ iput-object p1, p0, Lde/duenndns/gmdice/GameMasterDice$5;->this$0:Lde/duenndns/gmdice/GameMasterDice; │ │ iput-object p2, p0, Lde/duenndns/gmdice/GameMasterDice$5;->val$adapter:Landroid/widget/ArrayAdapter; ├── smali/de/duenndns/gmdice/NumberPicker$NumberRangeKeyListener.smali │ @@ -89,14 +89,15 @@ │ │ move-result-object v3 │ │ invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; │ │ move-result-object v3 │ │ + .line 399 │ invoke-interface {p4}, Landroid/text/Spanned;->length()I │ │ move-result v4 │ │ invoke-interface {p4, p6, v4}, Landroid/text/Spanned;->subSequence(II)Ljava/lang/CharSequence; │ │ move-result-object v4 ├── smali/de/duenndns/gmdice/GameMasterDice$4.smali │ @@ -28,14 +28,15 @@ │ │ .field final synthetic val$sp_s:Landroid/widget/Spinner; │ │ │ # direct methods │ .method constructor (Lde/duenndns/gmdice/GameMasterDice;Lde/duenndns/gmdice/NumberPicker;Landroid/widget/Spinner;Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/OnDiceChange;)V │ .locals 0 │ + .param p1, "this$0" # Lde/duenndns/gmdice/GameMasterDice; │ │ .prologue │ .line 299 │ iput-object p1, p0, Lde/duenndns/gmdice/GameMasterDice$4;->this$0:Lde/duenndns/gmdice/GameMasterDice; │ │ iput-object p2, p0, Lde/duenndns/gmdice/GameMasterDice$4;->val$np_c:Lde/duenndns/gmdice/NumberPicker; │ │ @@ -63,38 +64,41 @@ │ │ invoke-virtual {v1}, Lde/duenndns/gmdice/NumberPicker;->getCurrent()I │ │ move-result v2 │ │ iget-object v1, p0, Lde/duenndns/gmdice/GameMasterDice$4;->val$sp_s:Landroid/widget/Spinner; │ │ + .line 302 │ invoke-virtual {v1}, Landroid/widget/Spinner;->getSelectedItem()Ljava/lang/Object; │ │ move-result-object v1 │ │ check-cast v1, Ljava/lang/Integer; │ │ invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I │ │ move-result v1 │ │ iget-object v3, p0, Lde/duenndns/gmdice/GameMasterDice$4;->val$np_m:Lde/duenndns/gmdice/NumberPicker; │ │ + .line 303 │ invoke-virtual {v3}, Lde/duenndns/gmdice/NumberPicker;->getCurrent()I │ │ move-result v3 │ │ invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; │ │ move-result-object v3 │ │ invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I │ │ move-result v3 │ │ + .line 301 │ invoke-static {v2, v1, v3}, Lde/duenndns/gmdice/DiceSet;->getDiceSet(III)Lde/duenndns/gmdice/DiceSet; │ │ move-result-object v0 │ │ .line 304 │ .local v0, "ds":Lde/duenndns/gmdice/DiceSet; │ iget-object v1, p0, Lde/duenndns/gmdice/GameMasterDice$4;->val$onOk:Lde/duenndns/gmdice/OnDiceChange; ├── smali/de/duenndns/gmdice/GameMasterDice$2.smali │ @@ -17,14 +17,15 @@ │ # instance fields │ .field final synthetic this$0:Lde/duenndns/gmdice/GameMasterDice; │ │ │ # direct methods │ .method constructor (Lde/duenndns/gmdice/GameMasterDice;)V │ .locals 0 │ + .param p1, "this$0" # Lde/duenndns/gmdice/GameMasterDice; │ │ .prologue │ .line 219 │ iput-object p1, p0, Lde/duenndns/gmdice/GameMasterDice$2;->this$0:Lde/duenndns/gmdice/GameMasterDice; │ │ invoke-direct {p0}, Lde/duenndns/gmdice/OnDiceChange;->()V ├── smali/de/duenndns/gmdice/NumberPicker.smali │ @@ -137,76 +137,76 @@ │ invoke-direct {p0, p1, p2, v0}, Lde/duenndns/gmdice/NumberPicker;->(Landroid/content/Context;Landroid/util/AttributeSet;I)V │ │ .line 116 │ return-void │ .end method │ │ .method public constructor (Landroid/content/Context;Landroid/util/AttributeSet;I)V │ - .locals 8 │ + .locals 9 │ .param p1, "context" # Landroid/content/Context; │ .param p2, "attrs" # Landroid/util/AttributeSet; │ .param p3, "defStyle" # I │ │ .prologue │ - const/4 v7, 0x0 │ + const/4 v8, 0x0 │ │ - const/4 v6, 0x1 │ + const/4 v7, 0x1 │ │ - const/4 v5, 0x0 │ + const/4 v6, 0x0 │ │ .line 120 │ invoke-direct {p0, p1, p2}, Landroid/widget/LinearLayout;->(Landroid/content/Context;Landroid/util/AttributeSet;)V │ │ .line 82 │ new-instance v3, Lde/duenndns/gmdice/NumberPicker$2; │ │ invoke-direct {v3, p0}, Lde/duenndns/gmdice/NumberPicker$2;->(Lde/duenndns/gmdice/NumberPicker;)V │ │ iput-object v3, p0, Lde/duenndns/gmdice/NumberPicker;->mRunnable:Ljava/lang/Runnable; │ │ .line 105 │ - const-wide/16 v3, 0x12c │ + const-wide/16 v4, 0x12c │ │ - iput-wide v3, p0, Lde/duenndns/gmdice/NumberPicker;->mSpeed:J │ + iput-wide v4, p0, Lde/duenndns/gmdice/NumberPicker;->mSpeed:J │ │ .line 121 │ - invoke-virtual {p0, v6}, Lde/duenndns/gmdice/NumberPicker;->setOrientation(I)V │ + invoke-virtual {p0, v7}, Lde/duenndns/gmdice/NumberPicker;->setOrientation(I)V │ │ .line 122 │ const-string v3, "layout_inflater" │ │ invoke-virtual {p1, v3}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; │ │ move-result-object v1 │ │ check-cast v1, Landroid/view/LayoutInflater; │ │ .line 123 │ .local v1, "inflater":Landroid/view/LayoutInflater; │ const v3, 0x7f030002 │ │ - invoke-virtual {v1, v3, p0, v6}, Landroid/view/LayoutInflater;->inflate(ILandroid/view/ViewGroup;Z)Landroid/view/View; │ + invoke-virtual {v1, v3, p0, v7}, Landroid/view/LayoutInflater;->inflate(ILandroid/view/ViewGroup;Z)Landroid/view/View; │ │ .line 124 │ new-instance v3, Landroid/os/Handler; │ │ invoke-direct {v3}, Landroid/os/Handler;->()V │ │ iput-object v3, p0, Lde/duenndns/gmdice/NumberPicker;->mHandler:Landroid/os/Handler; │ │ .line 125 │ new-instance v2, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter; │ │ - invoke-direct {v2, p0, v7}, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;->(Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/NumberPicker$1;)V │ + invoke-direct {v2, p0, v8}, Lde/duenndns/gmdice/NumberPicker$NumberPickerInputFilter;->(Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/NumberPicker$1;)V │ │ .line 126 │ .local v2, "inputFilter":Landroid/text/InputFilter; │ new-instance v3, Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener; │ │ - invoke-direct {v3, p0, v7}, Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener;->(Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/NumberPicker$1;)V │ + invoke-direct {v3, p0, v8}, Lde/duenndns/gmdice/NumberPicker$NumberRangeKeyListener;->(Lde/duenndns/gmdice/NumberPicker;Lde/duenndns/gmdice/NumberPicker$1;)V │ │ iput-object v3, p0, Lde/duenndns/gmdice/NumberPicker;->mNumberInputFilter:Landroid/text/InputFilter; │ │ .line 127 │ const v3, 0x7f060009 │ │ invoke-virtual {p0, v3}, Lde/duenndns/gmdice/NumberPicker;->findViewById(I)Landroid/view/View; │ @@ -285,54 +285,54 @@ │ invoke-virtual {p0}, Lde/duenndns/gmdice/NumberPicker;->isEnabled()Z │ │ move-result v3 │ │ if-nez v3, :cond_0 │ │ .line 142 │ - invoke-virtual {p0, v5}, Lde/duenndns/gmdice/NumberPicker;->setEnabled(Z)V │ + invoke-virtual {p0, v6}, Lde/duenndns/gmdice/NumberPicker;->setEnabled(Z)V │ │ .line 145 │ :cond_0 │ sget-object v3, Lde/duenndns/gmdice/R$styleable;->numberpicker:[I │ │ invoke-virtual {p1, p2, v3}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray; │ │ move-result-object v0 │ │ .line 146 │ .local v0, "a":Landroid/content/res/TypedArray; │ - invoke-virtual {v0, v5, v5}, Landroid/content/res/TypedArray;->getInt(II)I │ + invoke-virtual {v0, v6, v6}, Landroid/content/res/TypedArray;->getInt(II)I │ │ move-result v3 │ │ iput v3, p0, Lde/duenndns/gmdice/NumberPicker;->mStart:I │ │ .line 147 │ const/16 v3, 0xc8 │ │ - invoke-virtual {v0, v6, v3}, Landroid/content/res/TypedArray;->getInt(II)I │ + invoke-virtual {v0, v7, v3}, Landroid/content/res/TypedArray;->getInt(II)I │ │ move-result v3 │ │ iput v3, p0, Lde/duenndns/gmdice/NumberPicker;->mEnd:I │ │ .line 148 │ const/4 v3, 0x4 │ │ - invoke-virtual {v0, v3, v6}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z │ + invoke-virtual {v0, v3, v7}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z │ │ move-result v3 │ │ iput-boolean v3, p0, Lde/duenndns/gmdice/NumberPicker;->mWrap:Z │ │ .line 149 │ const/4 v3, 0x2 │ │ - invoke-virtual {v0, v3, v5}, Landroid/content/res/TypedArray;->getInt(II)I │ + invoke-virtual {v0, v3, v6}, Landroid/content/res/TypedArray;->getInt(II)I │ │ move-result v3 │ │ iput v3, p0, Lde/duenndns/gmdice/NumberPicker;->mCurrent:I │ │ .line 150 │ iget v3, p0, Lde/duenndns/gmdice/NumberPicker;->mStart:I │ @@ -478,21 +478,24 @@ │ .line 243 │ iget-object v0, p0, Lde/duenndns/gmdice/NumberPicker;->mFormatter:Lde/duenndns/gmdice/NumberPicker$Formatter; │ │ if-eqz v0, :cond_0 │ │ iget-object v0, p0, Lde/duenndns/gmdice/NumberPicker;->mFormatter:Lde/duenndns/gmdice/NumberPicker$Formatter; │ │ + .line 244 │ invoke-interface {v0, p1}, Lde/duenndns/gmdice/NumberPicker$Formatter;->toString(I)Ljava/lang/String; │ │ move-result-object v0 │ │ + .line 243 │ :goto_0 │ return-object v0 │ │ + .line 245 │ :cond_0 │ invoke-static {p1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String; │ │ move-result-object v0 │ │ goto :goto_0 │ .end method │ @@ -1076,15 +1079,15 @@ │ invoke-virtual {p0}, Lde/duenndns/gmdice/NumberPicker;->updateView()V │ │ .line 208 │ return-void │ .end method │ │ .method public setSpeed(J)V │ - .locals 0 │ + .locals 1 │ .param p1, "speed" # J │ │ .prologue │ .line 227 │ iput-wide p1, p0, Lde/duenndns/gmdice/NumberPicker;->mSpeed:J │ │ .line 228 ├── smali/de/duenndns/gmdice/NumberPickerButton.smali │ @@ -98,14 +98,15 @@ │ │ move-result v0 │ │ const/4 v1, 0x3 │ │ if-eq v0, v1, :cond_0 │ │ + .line 72 │ invoke-virtual {p1}, Landroid/view/MotionEvent;->getAction()I │ │ move-result v0 │ │ const/4 v1, 0x1 │ │ if-ne v0, v1, :cond_1