Offset 1, 17 lines modified | Offset 0, 0 lines modified | ||
1 | Verifies | ||
2 | Verified·using·v1·scheme·(JAR·signing):·true | ||
3 | Verified·using·v2·scheme·(APK·Signature·Scheme·v2):·true | ||
4 | Verified·using·v3·scheme·(APK·Signature·Scheme·v3):·true | ||
5 | Verified·using·v4·scheme·(APK·Signature·Scheme·v4):·false | ||
6 | Verified·for·SourceStamp:·false | ||
7 | Number·of·signers:·1 | ||
8 | Signer·#1·certificate·DN:·CN=FDroid,·OU=FDroid,·O=fdroid.org,·L=ORG,·ST=ORG,·C=UK | ||
9 | Signer·#1·certificate·SHA-256·digest:·2d6faebf95d906eab05a9f598302d0ff4f3d0509ba5b223da3276b9c2d40fd8f | ||
10 | Signer·#1·certificate·SHA-1·digest:·d01d2244a16e5aaec335121f78f618bae7b4636f | ||
11 | Signer·#1·certificate·MD5·digest:·7c9f6728c829ab6a6e96a71b49bb495a | ||
12 | Signer·#1·key·algorithm:·RSA | ||
13 | Signer·#1·key·size·(bits):·2048 | ||
14 | Signer·#1·public·key·SHA-256·digest:·8c0419b78f715ab8538f03ca0075220d7217ad560c9f0e6c9a075e6f20758d32 | ||
15 | Signer·#1·public·key·SHA-1·digest:·4e5685b11001025122a8f5764f15842fb33e7ced | ||
16 | Signer·#1·public·key·MD5·digest:·d08b08d1c672a2d786312f621af7c79e | ||
17 | WARNING:·META-INF/com/android/build/gradle/app-metadata.properties·not·protected·by·signature.·Unauthorized·modifications·to·this·JAR·entry·will·not·be·detected.·Delete·or·move·the·entry·outside·of·META-INF/. |
Offset 57, 8 lines modified | Offset 57, 8 lines modified | ||
57 | -rw----·····0.0·fat·····2370·b-·stor·81-Jan-01·01:01·res/xM.png | 57 | -rw----·····0.0·fat·····2370·b-·stor·81-Jan-01·01:01·res/xM.png |
58 | -rw----·····0.0·fat······464·b-·defN·81-Jan-01·01:01·res/xl.xml | 58 | -rw----·····0.0·fat······464·b-·defN·81-Jan-01·01:01·res/xl.xml |
59 | -rw----·····0.0·fat······454·b-·stor·81-Jan-01·01:01·res/yN.png | 59 | -rw----·····0.0·fat······454·b-·stor·81-Jan-01·01:01·res/yN.png |
60 | -rw----·····0.0·fat····12772·b-·stor·81-Jan-01·01:01·resources.arsc | 60 | -rw----·····0.0·fat····12772·b-·stor·81-Jan-01·01:01·resources.arsc |
61 | -rw----·····2.0·fat·····5052·b-·defN·81-Jan-01·01:01·META-INF/A6E28384.SF | 61 | -rw----·····2.0·fat·····5052·b-·defN·81-Jan-01·01:01·META-INF/A6E28384.SF |
62 | -rw----·····2.0·fat·····1334·b-·defN·81-Jan-01·01:01·META-INF/A6E28384.RSA | 62 | -rw----·····2.0·fat·····1334·b-·defN·81-Jan-01·01:01·META-INF/A6E28384.RSA |
63 | -rw----·····2.0·fat·····4925·b-·defN·81-Jan-01·01:01·META-INF/MANIFEST.MF | 63 | -rw----·····2.0·fat·····4925·b-·defN·81-Jan-01·01:01·META-INF/MANIFEST.MF |
64 | 62·files,·1710409·bytes·uncompressed,·52490 | 64 | 62·files,·1710409·bytes·uncompressed,·524908·bytes·compressed:··69.3% |
Offset 1, 12 lines modified | Offset 1, 12 lines modified | ||
1 | DEX·version·'035' | 1 | DEX·version·'035' |
2 | DEX·file·header: | 2 | DEX·file·header: |
3 | magic···············:·'dex\n035\0' | 3 | magic···············:·'dex\n035\0' |
4 | checksum············:· | 4 | checksum············:·7fe75535 |
5 | signature···········:· | 5 | signature···········:·3dfc...c573 |
6 | file_size···········:·35552 | 6 | file_size···········:·35552 |
7 | header_size·········:·112 | 7 | header_size·········:·112 |
8 | link_size···········:·0 | 8 | link_size···········:·0 |
9 | link_off············:·0·(0x000000) | 9 | link_off············:·0·(0x000000) |
10 | string_ids_size·····:·619 | 10 | string_ids_size·····:·619 |
11 | string_ids_off······:·112·(0x000070) | 11 | string_ids_off······:·112·(0x000070) |
12 | type_ids_size·······:·124 | 12 | type_ids_size·······:·124 |
Offset 108, 15 lines modified | Offset 108, 15 lines modified | ||
108 | ······type··········:·'Ljava/lang/String;' | 108 | ······type··········:·'Ljava/lang/String;' |
109 | ······access········:·0x0019·(PUBLIC·STATIC·FINAL) | 109 | ······access········:·0x0019·(PUBLIC·STATIC·FINAL) |
110 | ······value·········:·"release" | 110 | ······value·········:·"release" |
111 | ····#2··············:·(in·Lorg/billthefarmer/crossword/BuildConfig;) | 111 | ····#2··············:·(in·Lorg/billthefarmer/crossword/BuildConfig;) |
112 | ······name··········:·'BUILT' | 112 | ······name··········:·'BUILT' |
113 | ······type··········:·'J' | 113 | ······type··········:·'J' |
114 | ······access········:·0x0019·(PUBLIC·STATIC·FINAL) | 114 | ······access········:·0x0019·(PUBLIC·STATIC·FINAL) |
115 | ······value·········:·169 | 115 | ······value·········:·1697113237579 |
116 | ····#3··············:·(in·Lorg/billthefarmer/crossword/BuildConfig;) | 116 | ····#3··············:·(in·Lorg/billthefarmer/crossword/BuildConfig;) |
117 | ······name··········:·'DEBUG' | 117 | ······name··········:·'DEBUG' |
118 | ······type··········:·'Z' | 118 | ······type··········:·'Z' |
119 | ······access········:·0x0019·(PUBLIC·STATIC·FINAL) | 119 | ······access········:·0x0019·(PUBLIC·STATIC·FINAL) |
120 | ······value·········:·false | 120 | ······value·········:·false |
121 | ····#4··············:·(in·Lorg/billthefarmer/crossword/BuildConfig;) | 121 | ····#4··············:·(in·Lorg/billthefarmer/crossword/BuildConfig;) |
122 | ······name··········:·'VERSION_CODE' | 122 | ······name··········:·'VERSION_CODE' |
Offset 5011, 15 lines modified | Offset 5011, 15 lines modified | ||
5011 | 003b66:·6e10·8f00·0200·························|003b:·invoke-virtual·{v2},·Ljava/util/regex/Matcher;.find:()Z·//·method@008f | 5011 | 003b66:·6e10·8f00·0200·························|003b:·invoke-virtual·{v2},·Ljava/util/regex/Matcher;.find:()Z·//·method@008f |
5012 | 003b6c:·0a03···································|003e:·move-result·v3 | 5012 | 003b6c:·0a03···································|003e:·move-result·v3 |
5013 | 003b6e:·3803·1a00······························|003f:·if-eqz·v3,·0059·//·+001a | 5013 | 003b6e:·3803·1a00······························|003f:·if-eqz·v3,·0059·//·+001a |
5014 | 003b72:·6e10·9100·0200·························|0041:·invoke-virtual·{v2},·Ljava/util/regex/Matcher;.start:()I·//·method@0091 | 5014 | 003b72:·6e10·9100·0200·························|0041:·invoke-virtual·{v2},·Ljava/util/regex/Matcher;.start:()I·//·method@0091 |
5015 | 003b78:·0a03···································|0044:·move-result·v3 | 5015 | 003b78:·0a03···································|0044:·move-result·v3 |
5016 | 003b7a:·6e10·8e00·0200·························|0045:·invoke-virtual·{v2},·Ljava/util/regex/Matcher;.end:()I·//·method@008e | 5016 | 003b7a:·6e10·8e00·0200·························|0045:·invoke-virtual·{v2},·Ljava/util/regex/Matcher;.end:()I·//·method@008e |
5017 | 003b80:·0a02···································|0048:·move-result·v2 | 5017 | 003b80:·0a02···································|0048:·move-result·v2 |
5018 | 003b82:·1804· | 5018 | 003b82:·1804·4be8·d423·8b01·0000···············|0049:·const-wide·v4,·#double·8.38485e-312·//·#0000018b23d4e84b |
5019 | 003b8c:·7120·6100·5400·························|004e:·invoke-static·{v4,·v5},·Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long;·//·method@0061 | 5019 | 003b8c:·7120·6100·5400·························|004e:·invoke-static·{v4,·v5},·Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long;·//·method@0061 |
5020 | 003b92:·0c04···································|0051:·move-result-object·v4 | 5020 | 003b92:·0c04···································|0051:·move-result-object·v4 |
5021 | 003b94:·6e20·7700·4000·························|0052:·invoke-virtual·{v0,·v4},·Ljava/text/DateFormat;.format:(Ljava/lang/Object;)Ljava/lang/String;·//·method@0077 | 5021 | 003b94:·6e20·7700·4000·························|0052:·invoke-virtual·{v0,·v4},·Ljava/text/DateFormat;.format:(Ljava/lang/Object;)Ljava/lang/String;·//·method@0077 |
5022 | 003b9a:·0c00···································|0055:·move-result-object·v0 | 5022 | 003b9a:·0c00···································|0055:·move-result-object·v0 |
5023 | 003b9c:·6e40·1d00·3102·························|0056:·invoke-virtual·{v1,·v3,·v2,·v0},·Landroid/text/SpannableStringBuilder;.replace:(IILjava/lang/CharSequence;)Landroid/text/SpannableStringBuilder;·//·method@001d | 5023 | 003b9c:·6e40·1d00·3102·························|0056:·invoke-virtual·{v1,·v3,·v2,·v0},·Landroid/text/SpannableStringBuilder;.replace:(IILjava/lang/CharSequence;)Landroid/text/SpannableStringBuilder;·//·method@001d |
5024 | 003ba2:·6e20·0800·1700·························|0059:·invoke-virtual·{v7,·v1},·Landroid/app/AlertDialog$Builder;.setMessage:(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder;·//·method@0008 | 5024 | 003ba2:·6e20·0800·1700·························|0059:·invoke-virtual·{v7,·v1},·Landroid/app/AlertDialog$Builder;.setMessage:(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder;·//·method@0008 |
5025 | 003ba8:·1400·0a00·0401·························|005c:·const·v0,·#float·2.42446e-38·//·#0104000a | 5025 | 003ba8:·1400·0a00·0401·························|005c:·const·v0,·#float·2.42446e-38·//·#0104000a |
Offset 1, 8 lines modified | Offset 1, 8 lines modified | ||
1 | Zip·file·size:·4410 | 1 | Zip·file·size:·44107·bytes,·number·of·entries:·27 |
2 | ?rwxrwxr-x··2.0·unx······506·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/Anagram$$ExternalSyntheticLambda0.class | 2 | ?rwxrwxr-x··2.0·unx······506·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/Anagram$$ExternalSyntheticLambda0.class |
3 | ?rwxrwxr-x··2.0·unx······450·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/BuildConfig.class | 3 | ?rwxrwxr-x··2.0·unx······450·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/BuildConfig.class |
4 | ?rwxrwxr-x··2.0·unx·····3752·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/Data$AnagramTask.class | 4 | ?rwxrwxr-x··2.0·unx·····3752·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/Data$AnagramTask.class |
5 | ?rwxrwxr-x··2.0·unx······676·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/Data$Element.class | 5 | ?rwxrwxr-x··2.0·unx······676·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/Data$Element.class |
6 | ?rwxrwxr-x··2.0·unx·····1461·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/Data$LoadTask.class | 6 | ?rwxrwxr-x··2.0·unx·····1461·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/Data$LoadTask.class |
7 | ?rwxrwxr-x··2.0·unx······152·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/Data$OnPostExecuteListener.class | 7 | ?rwxrwxr-x··2.0·unx······152·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/Data$OnPostExecuteListener.class |
8 | ?rwxrwxr-x··2.0·unx·····1481·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/Data$SearchTask.class | 8 | ?rwxrwxr-x··2.0·unx·····1481·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/Data$SearchTask.class |
Offset 22, 8 lines modified | Offset 22, 8 lines modified | ||
22 | ?rwxrwxr-x··2.0·unx······799·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/R$style.class | 22 | ?rwxrwxr-x··2.0·unx······799·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/R$style.class |
23 | ?rwxrwxr-x··2.0·unx······546·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/R$styleable.class | 23 | ?rwxrwxr-x··2.0·unx······546·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/R$styleable.class |
24 | ?rwxrwxr-x··2.0·unx······144·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/R.class | 24 | ?rwxrwxr-x··2.0·unx······144·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/R.class |
25 | ?rwxrwxr-x··2.0·unx······587·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/SearchActivity$1.class | 25 | ?rwxrwxr-x··2.0·unx······587·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/SearchActivity$1.class |
26 | ?rwxrwxr-x··2.0·unx·····2606·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/SearchActivity.class | 26 | ?rwxrwxr-x··2.0·unx·····2606·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/SearchActivity.class |
27 | ?rwxrwxr-x··2.0·unx·····5941·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/Anagram.class | 27 | ?rwxrwxr-x··2.0·unx·····5941·b-·stor·80-Jan-01·00:00·org/billthefarmer/crossword/Anagram.class |
28 | ?rwxrwxr-x··2.0·unx····13645·b-·defN·80-Jan-01·00:00·org/billthefarmer/crossword/Main.class | 28 | ?rwxrwxr-x··2.0·unx····13645·b-·defN·80-Jan-01·00:00·org/billthefarmer/crossword/Main.class |
29 | 27·files,·46792·bytes·uncompressed,·3955 | 29 | 27·files,·46792·bytes·uncompressed,·39551·bytes·compressed:··15.5% |
Offset 1, 12 lines modified | Offset 1, 12 lines modified | ||
1 | package·org.billthefarmer.crossword; | 1 | package·org.billthefarmer.crossword; |
2 | public·final·class·BuildConfig | 2 | public·final·class·BuildConfig |
3 | { | 3 | { |
4 | ····public·static·final·String·APPLICATION_ID·=·"org.billthefarmer.crossword"; | 4 | ····public·static·final·String·APPLICATION_ID·=·"org.billthefarmer.crossword"; |
5 | ····public·static·final·String·BUILD_TYPE·=·"release"; | 5 | ····public·static·final·String·BUILD_TYPE·=·"release"; |
6 | ····public·static·final·long·BUILT·=·169 | 6 | ····public·static·final·long·BUILT·=·1697113237579L; |
7 | ····public·static·final·boolean·DEBUG·=·false; | 7 | ····public·static·final·boolean·DEBUG·=·false; |
8 | ····public·static·final·int·VERSION_CODE·=·122; | 8 | ····public·static·final·int·VERSION_CODE·=·122; |
9 | ····public·static·final·String·VERSION_NAME·=·"1.22"; | 9 | ····public·static·final·String·VERSION_NAME·=·"1.22"; |
10 | } | 10 | } |
Offset 150, 15 lines modified | Offset 150, 15 lines modified | ||
150 | ········final·SpannableStringBuilder·message·=·new·SpannableStringBuilder(this.getText(2131296281)); | 150 | ········final·SpannableStringBuilder·message·=·new·SpannableStringBuilder(this.getText(2131296281)); |
151 | ········final·Matcher·matcher·=·Pattern.compile("%s").matcher((CharSequence)message); | 151 | ········final·Matcher·matcher·=·Pattern.compile("%s").matcher((CharSequence)message); |
152 | ········if·(matcher.find())·{ | 152 | ········if·(matcher.find())·{ |
153 | ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)"1.22"); | 153 | ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)"1.22"); |
154 | ········} | 154 | ········} |
155 | ········matcher.reset((CharSequence)message); | 155 | ········matcher.reset((CharSequence)message); |
156 | ········if·(matcher.find())·{ | 156 | ········if·(matcher.find())·{ |
157 | ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)dateTimeInstance.format(Long.valueOf(169 | 157 | ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)dateTimeInstance.format(Long.valueOf(1697113237579L))); |
158 | ········} | 158 | ········} |
159 | ········alertDialog$Builder.setMessage((CharSequence)message); | 159 | ········alertDialog$Builder.setMessage((CharSequence)message); |
160 | ········alertDialog$Builder.setPositiveButton(17039370,·(DialogInterface$OnClickListener)null); | 160 | ········alertDialog$Builder.setPositiveButton(17039370,·(DialogInterface$OnClickListener)null); |
161 | ········final·TextView·textView·=·(TextView)((Dialog)alertDialog$Builder.show()).findViewById(16908299); | 161 | ········final·TextView·textView·=·(TextView)((Dialog)alertDialog$Builder.show()).findViewById(16908299); |
162 | ········if·(textView·!=·null)·{ | 162 | ········if·(textView·!=·null)·{ |
163 | ············textView.setTextAppearance(alertDialog$Builder.getContext(),·16973894); | 163 | ············textView.setTextAppearance(alertDialog$Builder.getContext(),·16973894); |
164 | ············textView.setMovementMethod(LinkMovementMethod.getInstance()); | 164 | ············textView.setMovementMethod(LinkMovementMethod.getInstance()); |
Offset 488, 15 lines modified | Offset 488, 15 lines modified | ||
488 | ····move-result·v3 | 488 | ····move-result·v3 |
489 | ····invoke-virtual·{v2},·Ljava/util/regex/Matcher;->end()I | 489 | ····invoke-virtual·{v2},·Ljava/util/regex/Matcher;->end()I |
490 | ····move-result·v2 | 490 | ····move-result·v2 |
491 | ····const-wide·v4,·0x18b | 491 | ····const-wide·v4,·0x18b23d4e84bL |
492 | ····.line·611 | 492 | ····.line·611 |
493 | ····invoke-static·{v4,·v5},·Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; | 493 | ····invoke-static·{v4,·v5},·Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; |
494 | ····move-result-object·v4 | 494 | ····move-result-object·v4 |
495 | ····invoke-virtual·{v0,·v4},·Ljava/text/DateFormat;->format(Ljava/lang/Object;)Ljava/lang/String; | 495 | ····invoke-virtual·{v0,·v4},·Ljava/text/DateFormat;->format(Ljava/lang/Object;)Ljava/lang/String; |
Offset 4, 15 lines modified | Offset 4, 15 lines modified | ||
4 | #·static·fields | 4 | #·static·fields |
5 | .field·public·static·final·APPLICATION_ID:Ljava/lang/String;·=·"org.billthefarmer.crossword" | 5 | .field·public·static·final·APPLICATION_ID:Ljava/lang/String;·=·"org.billthefarmer.crossword" |
6 | .field·public·static·final·BUILD_TYPE:Ljava/lang/String;·=·"release" | 6 | .field·public·static·final·BUILD_TYPE:Ljava/lang/String;·=·"release" |
7 | .field·public·static·final·BUILT:J·=·0x18b | 7 | .field·public·static·final·BUILT:J·=·0x18b23d4e84bL |
8 | .field·public·static·final·DEBUG:Z·=·false | 8 | .field·public·static·final·DEBUG:Z·=·false |
9 | .field·public·static·final·VERSION_CODE:I·=·0x7a | 9 | .field·public·static·final·VERSION_CODE:I·=·0x7a |
10 | .field·public·static·final·VERSION_NAME:Ljava/lang/String;·=·"1.22" | 10 | .field·public·static·final·VERSION_NAME:Ljava/lang/String;·=·"1.22" |