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:·8e5302fe841d1e8b79ad6d3c447c1f4b0d106ab2cc8ec0131c4b0b2ce1dffd11 | ||
10 | Signer·#1·certificate·SHA-1·digest:·eb035a5d90c8ae6ee7da81dfe340625aa307e798 | ||
11 | Signer·#1·certificate·MD5·digest:·3e19cc65143b013fdcc16b61f59fe9c6 | ||
12 | Signer·#1·key·algorithm:·RSA | ||
13 | Signer·#1·key·size·(bits):·2048 | ||
14 | Signer·#1·public·key·SHA-256·digest:·4e1df85533fc04cc3005d5715e5bd861f2ce01d7503d4544e60baf47dcd92b15 | ||
15 | Signer·#1·public·key·SHA-1·digest:·16fbda7d3c5311e56186ce81155608751963f8cb | ||
16 | Signer·#1·public·key·MD5·digest:·c5457c5b94ebee9ebe1f6013ba32f610 | ||
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 56, 15 lines modified | Offset 56, 15 lines modified | ||
56 | ··minimum·file·system·compatibility·required:·····MS-DOS,·OS/2·or·NT·FAT | 56 | ··minimum·file·system·compatibility·required:·····MS-DOS,·OS/2·or·NT·FAT |
57 | ··minimum·software·version·required·to·extract:···0.0 | 57 | ··minimum·software·version·required·to·extract:···0.0 |
58 | ··compression·method:·····························deflated | 58 | ··compression·method:·····························deflated |
59 | ··compression·sub-type·(deflation):···············normal | 59 | ··compression·sub-type·(deflation):···············normal |
60 | ··file·security·status:···························not·encrypted | 60 | ··file·security·status:···························not·encrypted |
61 | ··extended·local·header:··························no | 61 | ··extended·local·header:··························no |
62 | ··file·last·modified·on·(DOS·date/time):··········1981·Jan·1·01:01:02 | 62 | ··file·last·modified·on·(DOS·date/time):··········1981·Jan·1·01:01:02 |
63 | ··32-bit·CRC·value·(hex):························· | 63 | ··32-bit·CRC·value·(hex):·························843f3068 |
64 | ··compressed·size:································27775·bytes | 64 | ··compressed·size:································27775·bytes |
65 | ··uncompressed·size:······························62428·bytes | 65 | ··uncompressed·size:······························62428·bytes |
66 | ··length·of·filename:·····························11·characters | 66 | ··length·of·filename:·····························11·characters |
67 | ··length·of·extra·field:··························0·bytes | 67 | ··length·of·extra·field:··························0·bytes |
68 | ··length·of·file·comment:·························0·characters | 68 | ··length·of·file·comment:·························0·characters |
69 | ··disk·number·on·which·file·begins:···············disk·1 | 69 | ··disk·number·on·which·file·begins:···············disk·1 |
70 | ··apparent·file·type:·····························binary | 70 | ··apparent·file·type:·····························binary |
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············:·7bde690b |
5 | signature···········:· | 5 | signature···········:·3787...55c7 |
6 | file_size···········:·62428 | 6 | file_size···········:·62428 |
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·····:·914 | 10 | string_ids_size·····:·914 |
11 | string_ids_off······:·112·(0x000070) | 11 | string_ids_off······:·112·(0x000070) |
12 | type_ids_size·······:·171 | 12 | type_ids_size·······:·171 |
Offset 857, 15 lines modified | Offset 857, 15 lines modified | ||
857 | ······type··········:·'Ljava/lang/String;' | 857 | ······type··········:·'Ljava/lang/String;' |
858 | ······access········:·0x0019·(PUBLIC·STATIC·FINAL) | 858 | ······access········:·0x0019·(PUBLIC·STATIC·FINAL) |
859 | ······value·········:·"release" | 859 | ······value·········:·"release" |
860 | ····#2··············:·(in·Lorg/billthefarmer/gridle/BuildConfig;) | 860 | ····#2··············:·(in·Lorg/billthefarmer/gridle/BuildConfig;) |
861 | ······name··········:·'BUILT' | 861 | ······name··········:·'BUILT' |
862 | ······type··········:·'J' | 862 | ······type··········:·'J' |
863 | ······access········:·0x0019·(PUBLIC·STATIC·FINAL) | 863 | ······access········:·0x0019·(PUBLIC·STATIC·FINAL) |
864 | ······value·········:·166 | 864 | ······value·········:·1667728890936 |
865 | ····#3··············:·(in·Lorg/billthefarmer/gridle/BuildConfig;) | 865 | ····#3··············:·(in·Lorg/billthefarmer/gridle/BuildConfig;) |
866 | ······name··········:·'DEBUG' | 866 | ······name··········:·'DEBUG' |
867 | ······type··········:·'Z' | 867 | ······type··········:·'Z' |
868 | ······access········:·0x0019·(PUBLIC·STATIC·FINAL) | 868 | ······access········:·0x0019·(PUBLIC·STATIC·FINAL) |
869 | ······value·········:·false | 869 | ······value·········:·false |
870 | ····#4··············:·(in·Lorg/billthefarmer/gridle/BuildConfig;) | 870 | ····#4··············:·(in·Lorg/billthefarmer/gridle/BuildConfig;) |
871 | ······name··········:·'VERSION_CODE' | 871 | ······name··········:·'VERSION_CODE' |
Offset 2077, 15 lines modified | Offset 2077, 15 lines modified | ||
2077 | 00521a:·6e10·0401·0300·························|0041:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.find:()Z·//·method@0104 | 2077 | 00521a:·6e10·0401·0300·························|0041:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.find:()Z·//·method@0104 |
2078 | 005220:·0a04···································|0044:·move-result·v4 | 2078 | 005220:·0a04···································|0044:·move-result·v4 |
2079 | 005222:·3804·1a00······························|0045:·if-eqz·v4,·005f·//·+001a | 2079 | 005222:·3804·1a00······························|0045:·if-eqz·v4,·005f·//·+001a |
2080 | 005226:·6e10·0601·0300·························|0047:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.start:()I·//·method@0106 | 2080 | 005226:·6e10·0601·0300·························|0047:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.start:()I·//·method@0106 |
2081 | 00522c:·0a04···································|004a:·move-result·v4 | 2081 | 00522c:·0a04···································|004a:·move-result·v4 |
2082 | 00522e:·6e10·0301·0300·························|004b:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.end:()I·//·method@0103 | 2082 | 00522e:·6e10·0301·0300·························|004b:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.end:()I·//·method@0103 |
2083 | 005234:·0a03···································|004e:·move-result·v3 | 2083 | 005234:·0a03···································|004e:·move-result·v3 |
2084 | 005236:·1805· | 2084 | 005236:·1805·385c·634c·8401·0000···············|004f:·const-wide·v5,·#double·8.23968e-312·//·#000001844c635c38 |
2085 | 005240:·7120·c300·6500·························|0054:·invoke-static·{v5,·v6},·Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long;·//·method@00c3 | 2085 | 005240:·7120·c300·6500·························|0054:·invoke-static·{v5,·v6},·Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long;·//·method@00c3 |
2086 | 005246:·0c05···································|0057:·move-result-object·v5 | 2086 | 005246:·0c05···································|0057:·move-result-object·v5 |
2087 | 005248:·6e20·e400·5100·························|0058:·invoke-virtual·{v1,·v5},·Ljava/text/DateFormat;.format:(Ljava/lang/Object;)Ljava/lang/String;·//·method@00e4 | 2087 | 005248:·6e20·e400·5100·························|0058:·invoke-virtual·{v1,·v5},·Ljava/text/DateFormat;.format:(Ljava/lang/Object;)Ljava/lang/String;·//·method@00e4 |
2088 | 00524e:·0c01···································|005b:·move-result-object·v1 | 2088 | 00524e:·0c01···································|005b:·move-result-object·v1 |
2089 | 005250:·6e40·6a00·4213·························|005c:·invoke-virtual·{v2,·v4,·v3,·v1},·Landroid/text/SpannableStringBuilder;.replace:(IILjava/lang/CharSequence;)Landroid/text/SpannableStringBuilder;·//·method@006a | 2089 | 005250:·6e40·6a00·4213·························|005c:·invoke-virtual·{v2,·v4,·v3,·v1},·Landroid/text/SpannableStringBuilder;.replace:(IILjava/lang/CharSequence;)Landroid/text/SpannableStringBuilder;·//·method@006a |
2090 | 005256:·6e20·0d00·2000·························|005f:·invoke-virtual·{v0,·v2},·Landroid/app/AlertDialog$Builder;.setMessage:(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder;·//·method@000d | 2090 | 005256:·6e20·0d00·2000·························|005f:·invoke-virtual·{v0,·v2},·Landroid/app/AlertDialog$Builder;.setMessage:(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder;·//·method@000d |
2091 | 00525c:·1401·0a00·0401·························|0062:·const·v1,·#float·2.42446e-38·//·#0104000a | 2091 | 00525c:·1401·0a00·0401·························|0062:·const·v1,·#float·2.42446e-38·//·#0104000a |
Offset 1, 8 lines modified | Offset 1, 8 lines modified | ||
1 | Zip·file·size:·7418 | 1 | Zip·file·size:·74182·bytes,·number·of·entries:·38 |
2 | ?rwxrwxr-x··2.0·unx······224·b-·stor·80-Jan-01·00:00·android/support/v4/content/FileProvider$PathStrategy.class | 2 | ?rwxrwxr-x··2.0·unx······224·b-·stor·80-Jan-01·00:00·android/support/v4/content/FileProvider$PathStrategy.class |
3 | ?rwxrwxr-x··2.0·unx·····6727·b-·stor·80-Jan-01·00:00·android/support/v4/content/FileProvider.class | 3 | ?rwxrwxr-x··2.0·unx·····6727·b-·stor·80-Jan-01·00:00·android/support/v4/content/FileProvider.class |
4 | ?rwxrwxr-x··2.0·unx······444·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/BuildConfig.class | 4 | ?rwxrwxr-x··2.0·unx······444·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/BuildConfig.class |
5 | ?rwxrwxr-x··2.0·unx······601·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Gridle$$ExternalSyntheticBackport0.class | 5 | ?rwxrwxr-x··2.0·unx······601·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Gridle$$ExternalSyntheticBackport0.class |
6 | ?rwxrwxr-x··2.0·unx······513·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Gridle$$ExternalSyntheticLambda1.class | 6 | ?rwxrwxr-x··2.0·unx······513·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Gridle$$ExternalSyntheticLambda1.class |
7 | ?rwxrwxr-x··2.0·unx······486·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Gridle$$ExternalSyntheticLambda2.class | 7 | ?rwxrwxr-x··2.0·unx······486·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Gridle$$ExternalSyntheticLambda2.class |
8 | ?rwxrwxr-x··2.0·unx······486·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Gridle$$ExternalSyntheticLambda3.class | 8 | ?rwxrwxr-x··2.0·unx······486·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Gridle$$ExternalSyntheticLambda3.class |
Offset 33, 8 lines modified | Offset 33, 8 lines modified | ||
33 | ?rwxrwxr-x··2.0·unx······518·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/R$styleable.class | 33 | ?rwxrwxr-x··2.0·unx······518·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/R$styleable.class |
34 | ?rwxrwxr-x··2.0·unx······198·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/R$xml.class | 34 | ?rwxrwxr-x··2.0·unx······198·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/R$xml.class |
35 | ?rwxrwxr-x··2.0·unx······141·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/R.class | 35 | ?rwxrwxr-x··2.0·unx······141·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/R.class |
36 | ?rwxrwxr-x··2.0·unx······543·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Search$1.class | 36 | ?rwxrwxr-x··2.0·unx······543·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Search$1.class |
37 | ?rwxrwxr-x··2.0·unx·····2874·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Search.class | 37 | ?rwxrwxr-x··2.0·unx·····2874·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Search.class |
38 | ?rwxrwxr-x··2.0·unx·····7152·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Words.class | 38 | ?rwxrwxr-x··2.0·unx·····7152·b-·stor·80-Jan-01·00:00·org/billthefarmer/gridle/Words.class |
39 | ?rwxrwxr-x··2.0·unx·····3192·b-·stor·80-Jan-01·00:00·android/support/v4/content/FileProvider$SimplePathStrategy.class | 39 | ?rwxrwxr-x··2.0·unx·····3192·b-·stor·80-Jan-01·00:00·android/support/v4/content/FileProvider$SimplePathStrategy.class |
40 | 38·files,·86708·bytes·uncompressed,·6766 | 40 | 38·files,·86708·bytes·uncompressed,·67668·bytes·compressed:··22.0% |
Offset 1, 12 lines modified | Offset 1, 12 lines modified | ||
1 | package·org.billthefarmer.gridle; | 1 | package·org.billthefarmer.gridle; |
2 | public·final·class·BuildConfig | 2 | public·final·class·BuildConfig |
3 | { | 3 | { |
4 | ····public·static·final·String·APPLICATION_ID·=·"org.billthefarmer.gridle"; | 4 | ····public·static·final·String·APPLICATION_ID·=·"org.billthefarmer.gridle"; |
5 | ····public·static·final·String·BUILD_TYPE·=·"release"; | 5 | ····public·static·final·String·BUILD_TYPE·=·"release"; |
6 | ····public·static·final·long·BUILT·=·166 | 6 | ····public·static·final·long·BUILT·=·1667728890936L; |
7 | ····public·static·final·boolean·DEBUG·=·false; | 7 | ····public·static·final·boolean·DEBUG·=·false; |
8 | ····public·static·final·int·VERSION_CODE·=·108; | 8 | ····public·static·final·int·VERSION_CODE·=·108; |
9 | ····public·static·final·String·VERSION_NAME·=·"1.08"; | 9 | ····public·static·final·String·VERSION_NAME·=·"1.08"; |
10 | } | 10 | } |
Offset 181, 15 lines modified | Offset 181, 15 lines modified | ||
181 | ········final·SpannableStringBuilder·message·=·new·SpannableStringBuilder(this.getText(2131230751)); | 181 | ········final·SpannableStringBuilder·message·=·new·SpannableStringBuilder(this.getText(2131230751)); |
182 | ········final·Matcher·matcher·=·Pattern.compile("%s").matcher((CharSequence)message); | 182 | ········final·Matcher·matcher·=·Pattern.compile("%s").matcher((CharSequence)message); |
183 | ········if·(matcher.find())·{ | 183 | ········if·(matcher.find())·{ |
184 | ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)"1.08"); | 184 | ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)"1.08"); |
185 | ········} | 185 | ········} |
186 | ········matcher.reset((CharSequence)message); | 186 | ········matcher.reset((CharSequence)message); |
187 | ········if·(matcher.find())·{ | 187 | ········if·(matcher.find())·{ |
188 | ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)dateTimeInstance.format(Long.valueOf(166 | 188 | ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)dateTimeInstance.format(Long.valueOf(1667728890936L))); |
189 | ········} | 189 | ········} |
190 | ········alertDialog$Builder.setMessage((CharSequence)message); | 190 | ········alertDialog$Builder.setMessage((CharSequence)message); |
191 | ········alertDialog$Builder.setPositiveButton(17039370,·(DialogInterface$OnClickListener)null); | 191 | ········alertDialog$Builder.setPositiveButton(17039370,·(DialogInterface$OnClickListener)null); |
192 | ········final·TextView·textView·=·(TextView)((Dialog)alertDialog$Builder.show()).findViewById(16908299); | 192 | ········final·TextView·textView·=·(TextView)((Dialog)alertDialog$Builder.show()).findViewById(16908299); |
193 | ········if·(textView·!=·null)·{ | 193 | ········if·(textView·!=·null)·{ |
194 | ············textView.setTextAppearance(alertDialog$Builder.getContext(),·16973894); | 194 | ············textView.setTextAppearance(alertDialog$Builder.getContext(),·16973894); |
195 | ············textView.setMovementMethod(LinkMovementMethod.getInstance()); | 195 | ············textView.setMovementMethod(LinkMovementMethod.getInstance()); |
Offset 399, 15 lines modified | Offset 399, 15 lines modified | ||
399 | ····move-result·v4 | 399 | ····move-result·v4 |
400 | ····invoke-virtual·{v3},·Ljava/util/regex/Matcher;->end()I | 400 | ····invoke-virtual·{v3},·Ljava/util/regex/Matcher;->end()I |
401 | ····move-result·v3 | 401 | ····move-result·v3 |
402 | ····const-wide·v5,·0x18 | 402 | ····const-wide·v5,·0x1844c635c38L |
403 | ····.line·1256 | 403 | ····.line·1256 |
404 | ····invoke-static·{v5,·v6},·Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; | 404 | ····invoke-static·{v5,·v6},·Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; |
405 | ····move-result-object·v5 | 405 | ····move-result-object·v5 |
406 | ····invoke-virtual·{v1,·v5},·Ljava/text/DateFormat;->format(Ljava/lang/Object;)Ljava/lang/String; | 406 | ····invoke-virtual·{v1,·v5},·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.gridle" | 5 | .field·public·static·final·APPLICATION_ID:Ljava/lang/String;·=·"org.billthefarmer.gridle" |
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·=·0x18 | 7 | .field·public·static·final·BUILT:J·=·0x1844c635c38L |
8 | .field·public·static·final·DEBUG:Z·=·false | 8 | .field·public·static·final·DEBUG:Z·=·false |
9 | .field·public·static·final·VERSION_CODE:I·=·0x6c | 9 | .field·public·static·final·VERSION_CODE:I·=·0x6c |
10 | .field·public·static·final·VERSION_NAME:Ljava/lang/String;·=·"1.08" | 10 | .field·public·static·final·VERSION_NAME:Ljava/lang/String;·=·"1.08" |