2.62 MB
/home/fdroid/fdroiddata/tmp/com.google.android.apps.authenticator2_21.apk vs.
/home/fdroid/fdroiddata/tmp/sigcp_com.google.android.apps.authenticator2_21.apk
3.08 KB
/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-xhdpi/btn_dir_prev_pressed_holo_dark.9.png entry referenced by META-INF/MANIFEST.MF not found in the APK ERROR: res/drawable-xhdpi/btn_dir_next_pressed_holo_dark.9.png entry referenced by META-INF/MANIFEST.MF not found in the APK ERROR: res/drawable-xhdpi/howitworks_enter_password.png entry referenced by META-INF/MANIFEST.MF not found in the APK ERROR: res/drawable-xhdpi/howitworks_enter_code.png entry referenced by META-INF/MANIFEST.MF not found in the APK ERROR: res/drawable-xhdpi/howitworks_verify_device.png entry referenced by META-INF/MANIFEST.MF not found in the APK ERROR: res/drawable-xhdpi/btn_dir_next_normal_holo_dark.9.png entry referenced by META-INF/MANIFEST.MF not found in the APK ERROR: res/drawable-xhdpi/btn_dir_next_focused_holo_dark.9.png entry referenced by META-INF/MANIFEST.MF not found in the APK ERROR: res/drawable-xhdpi/btn_dir_prev_normal_holo_dark.9.png entry referenced by META-INF/MANIFEST.MF not found in the APK ERROR: res/drawable-xhdpi/btn_dir_next_disabled_focused_holo_dark.9.png entry referenced by META-INF/MANIFEST.MF not found in the APK ERROR: res/drawable-xhdpi/btn_dir_prev_disabled_focused_holo_dark.9.png entry referenced by META-INF/MANIFEST.MF not found in the APK ERROR: res/drawable-hdpi/ic_btn_back.png entry referenced by META-INF/MANIFEST.MF not found in the APK ERROR: res/drawable-xhdpi/btn_dir_prev_disabled_holo_dark.9.png entry referenced by META-INF/MANIFEST.MF not found in the APK ERROR: res/drawable-xhdpi/btn_dir_prev_focused_holo_dark.9.png entry referenced by META-INF/MANIFEST.MF not found in the APK ERROR: res/drawable-xhdpi/ic_launcher_authenticator.png entry referenced by META-INF/MANIFEST.MF not found in the APK ERROR: res/drawable-xhdpi/btn_dir_next_disabled_holo_dark.9.png entry referenced by META-INF/MANIFEST.MF not found in the APK ERROR: res/drawable-hdpi/ic_btn_next.png entry referenced by META-INF/MANIFEST.MF not found in the APK
    
Offset 1, 16 lines modifiedOffset 0, 0 lines modified
1 Verifies 
2 Verified·using·v1·scheme·(JAR·signing):·true 
3 Verified·using·v2·scheme·(APK·Signature·Scheme·v2):·false 
4 Verified·using·v3·scheme·(APK·Signature·Scheme·v3):·false 
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:·d669a0714efa92473d916b5c30cc6355df20a57460cb69c95ebf35af71346fdb 
10 Signer·#1·certificate·SHA-1·digest:·4006e11c6d5eca57e89d4a16652e2ca442a9a6ab 
11 Signer·#1·certificate·MD5·digest:·023433fcb71ea24730b41f075d7f62dc 
12 Signer·#1·key·algorithm:·RSA 
13 Signer·#1·key·size·(bits):·2048 
14 Signer·#1·public·key·SHA-256·digest:·77010d778bd11705d0b2e124ee83163c201d50db355e2416fc86b429693a5dc4 
15 Signer·#1·public·key·SHA-1·digest:·2876a1042a0a65f348cb96f08609ca5eff467f6d 
16 Signer·#1·public·key·MD5·digest:·c5ccbe3b1c66b74a06f43a3e24b9bbbd 
105 KB
zipinfo -v {}
Differences in extra fields detected; using output from zipinfo -v
    
Offset 1, 1474 lines modifiedOffset 1, 1459 lines modified
1 There·is·no·zipfile·comment.1 There·is·no·zipfile·comment.
  
2 End-of-central-directory·record:2 End-of-central-directory·record:
3 -------------------------------3 -------------------------------
  
4 ··Zip·archive·file·size:····················709849·(00000000000AD4D9h)4 ··Zip·archive·file·size:····················713295·(00000000000AE24Fh)
5 ··Actual·end-cent-dir·record·offset:········709827·(00000000000AD4C3h)5 ··Actual·end-cent-dir·record·offset:········713273·(00000000000AE239h)
6 ··Expected·end-cent-dir·record·offset:······709827·(00000000000AD4C3h)6 ··Expected·end-cent-dir·record·offset:······713273·(00000000000AE239h)
7 ··(based·on·the·length·of·the·central·directory·and·its·expected·offset)7 ··(based·on·the·length·of·the·central·directory·and·its·expected·offset)
  
8 ··This·zipfile·constitutes·the·sole·disk·of·a·single-part·archive;·its8 ··This·zipfile·constitutes·the·sole·disk·of·a·single-part·archive;·its
9 ··central·directory·contains·48·entries.9 ··central·directory·contains·49·entries.
10 ··The·central·directory·is·3944·(0000000000000F68h)·bytes·long,10 ··The·central·directory·is·4078·(0000000000000FEEh)·bytes·long,
11 ··and·its·(expected)·offset·in·bytes·from·the·beginning·of·the·zipfile11 ··and·its·(expected)·offset·in·bytes·from·the·beginning·of·the·zipfile
12 ··is·705883·(00000000000AC55Bh).12 ··is·709195·(00000000000AD24Bh).
  
  
13 Central·directory·entry·#1:13 Central·directory·entry·#1:
14 ---------------------------14 ---------------------------
  
15 ··META-INF/MANIFEST.MF15 ··AndroidManifest.xml
  
16 ··offset·of·local·header·from·start·of·archive:···016 ··offset·of·local·header·from·start·of·archive:···0
17 ··················································(0000000000000000h)·bytes17 ··················································(0000000000000000h)·bytes
18 ··file·system·or·operating·system·of·origin:······MS-DOS,·OS/2·or·NT·FAT18 ··file·system·or·operating·system·of·origin:······MS-DOS,·OS/2·or·NT·FAT
19 ··version·of·encoding·software:···················2.019 ··version·of·encoding·software:···················2.0
20 ··minimum·file·system·compatibility·required:·····MS-DOS,·OS/2·or·NT·FAT20 ··minimum·file·system·compatibility·required:·····MS-DOS,·OS/2·or·NT·FAT
21 ··minimum·software·version·required·to·extract:···2.021 ··minimum·software·version·required·to·extract:···2.0
22 ··compression·method:·····························deflated22 ··compression·method:·····························deflated
23 ··compression·sub-type·(deflation):···············normal23 ··compression·sub-type·(deflation):···············normal
24 ··file·security·status:···························not·encrypted24 ··file·security·status:···························not·encrypted
25 ··extended·local·header:··························yes25 ··extended·local·header:··························yes
26 ··file·last·modified·on·(DOS·date/time):··········2012·Aug·23·12:32:0626 ··file·last·modified·on·(DOS·date/time):··········2017·Oct·21·00:08:46
27 ··32-bit·CRC·value·(hex):·························5ce804b127 ··32-bit·CRC·value·(hex):·························2a9afe19
28 ··compressed·size:································1603·bytes28 ··compressed·size:································1352·bytes
29 ··uncompressed·size:······························4127·bytes29 ··uncompressed·size:······························5784·bytes
30 ··length·of·filename:·····························20·characters30 ··length·of·filename:·····························19·characters
31 ··length·of·extra·field:··························0·bytes31 ··length·of·extra·field:··························4·bytes
32 ··length·of·file·comment:·························0·characters32 ··length·of·file·comment:·························0·characters
33 ··disk·number·on·which·file·begins:···············disk·133 ··disk·number·on·which·file·begins:···············disk·1
34 ··apparent·file·type:·····························binary34 ··apparent·file·type:·····························binary
35 ··non-MSDOS·external·file·attributes:·············000000·hex35 ··non-MSDOS·external·file·attributes:·············000000·hex
36 ··MS-DOS·file·attributes·(00·hex):················none36 ··MS-DOS·file·attributes·(00·hex):················none
  
 37 ··The·central-directory·extra·field·contains:
 38 ··-·A·subfield·with·ID·0xcafe·(unknown)·and·0·data·bytes.
  
37 ··There·is·no·file·comment.39 ··There·is·no·file·comment.
  
38 Central·directory·entry·#2:40 Central·directory·entry·#2:
39 ---------------------------41 ---------------------------
  
40 ··There·are·an·extra·16·bytes·preceding·this·file.42 ··There·are·an·extra·16·bytes·preceding·this·file.
  
41 ··META-INF/5CD2035A.SF43 ··res/drawable-hdpi-v4/ic_btn_back.png
  
42 ··offset·of·local·header·from·start·of·archive:···166944 ··offset·of·local·header·from·start·of·archive:···1421
43 ··················································(0000000000000685h)·bytes45 ··················································(000000000000058Dh)·bytes
44 ··file·system·or·operating·system·of·origin:······MS-DOS,·OS/2·or·NT·FAT46 ··file·system·or·operating·system·of·origin:······MS-DOS,·OS/2·or·NT·FAT
45 ··version·of·encoding·software:···················2.047 ··version·of·encoding·software:···················1.0
46 ··minimum·file·system·compatibility·required:·····MS-DOS,·OS/2·or·NT·FAT48 ··minimum·file·system·compatibility·required:·····MS-DOS,·OS/2·or·NT·FAT
47 ··minimum·software·version·required·to·extract:···2.049 ··minimum·software·version·required·to·extract:···1.0
48 ··compression·method:·····························deflated50 ··compression·method:·····························none·(stored)
49 ··compression·sub-type·(deflation):···············normal 
50 ··file·security·status:···························not·encrypted51 ··file·security·status:···························not·encrypted
51 ··extended·local·header:··························yes52 ··extended·local·header:··························no
52 ··file·last·modified·on·(DOS·date/time):··········2012·Aug·23·12:32:0653 ··file·last·modified·on·(DOS·date/time):··········1980·Jan·1·00:00:00
53 ··32-bit·CRC·value·(hex):·························ea1066e754 ··32-bit·CRC·value·(hex):·························006bad18
54 ··compressed·size:································1666·bytes55 ··compressed·size:································1280·bytes
55 ··uncompressed·size:······························4248·bytes56 ··uncompressed·size:······························1280·bytes
56 ··length·of·filename:·····························20·characters57 ··length·of·filename:·····························36·characters
57 ··length·of·extra·field:··························0·bytes58 ··length·of·extra·field:··························0·bytes
58 ··length·of·file·comment:·························0·characters59 ··length·of·file·comment:·························0·characters
59 ··disk·number·on·which·file·begins:···············disk·160 ··disk·number·on·which·file·begins:···············disk·1
60 ··apparent·file·type:·····························binary61 ··apparent·file·type:·····························binary
61 ··non-MSDOS·external·file·attributes:·············000000·hex62 ··non-MSDOS·external·file·attributes:·············000000·hex
62 ··MS-DOS·file·attributes·(00·hex):················none63 ··MS-DOS·file·attributes·(00·hex):················none
  
63 ··There·is·no·file·comment.64 ··There·is·no·file·comment.
  
64 Central·directory·entry·#3:65 Central·directory·entry·#3:
65 ---------------------------66 ---------------------------
  
66 ··There·are·an·extra·16·bytes·preceding·this·file.67 ··res/drawable-hdpi-v4/ic_btn_next.png
  
67 ··META-INF/5CD2035A.RSA 
  
68 ··offset·of·local·header·from·start·of·archive:···340168 ··offset·of·local·header·from·start·of·archive:···2767
69 ··················································(0000000000000D49h)·bytes69 ··················································(0000000000000ACFh)·bytes
70 ··file·system·or·operating·system·of·origin:······MS-DOS,·OS/2·or·NT·FAT70 ··file·system·or·operating·system·of·origin:······MS-DOS,·OS/2·or·NT·FAT
71 ··version·of·encoding·software:···················2.071 ··version·of·encoding·software:···················1.0
72 ··minimum·file·system·compatibility·required:·····MS-DOS,·OS/2·or·NT·FAT72 ··minimum·file·system·compatibility·required:·····MS-DOS,·OS/2·or·NT·FAT
73 ··minimum·software·version·required·to·extract:···2.073 ··minimum·software·version·required·to·extract:···1.0
74 ··compression·method:·····························deflated74 ··compression·method:·····························none·(stored)
75 ··compression·sub-type·(deflation):···············normal 
76 ··file·security·status:···························not·encrypted75 ··file·security·status:···························not·encrypted
77 ··extended·local·header:··························yes76 ··extended·local·header:··························no
78 ··file·last·modified·on·(DOS·date/time):··········2012·Aug·23·12:32:0677 ··file·last·modified·on·(DOS·date/time):··········1980·Jan·1·00:00:00
79 ··32-bit·CRC·value·(hex):·························a0f9faf278 ··32-bit·CRC·value·(hex):·························6fb8b58d
80 ··compressed·size:································1040·bytes79 ··compressed·size:································1297·bytes
81 ··uncompressed·size:······························1297·bytes80 ··uncompressed·size:······························1297·bytes
82 ··length·of·filename:·····························21·characters81 ··length·of·filename:·····························36·characters
83 ··length·of·extra·field:··························0·bytes82 ··length·of·extra·field:··························0·bytes
84 ··length·of·file·comment:·························0·characters83 ··length·of·file·comment:·························0·characters
85 ··disk·number·on·which·file·begins:···············disk·184 ··disk·number·on·which·file·begins:···············disk·1
86 ··apparent·file·type:·····························binary85 ··apparent·file·type:·····························binary
87 ··non-MSDOS·external·file·attributes:·············000000·hex86 ··non-MSDOS·external·file·attributes:·············000000·hex
88 ··MS-DOS·file·attributes·(00·hex):················none87 ··MS-DOS·file·attributes·(00·hex):················none
  
89 ··There·is·no·file·comment.88 ··There·is·no·file·comment.
  
90 Central·directory·entry·#4:89 Central·directory·entry·#4:
91 ---------------------------90 ---------------------------
  
 91 ··res/drawable-ldpi-v11/ic_stat_notify_bt.png
92 ··There·are·an·extra·16·bytes·preceding·this·file. 
  
93 ··res/drawable/btn_dir_next_holo_dark.xml 
  
94 ··offset·of·local·header·from·start·of·archive:···450892 ··offset·of·local·header·from·start·of·archive:···4130
95 ··················································(000000000000119Ch)·bytes93 ··················································(0000000000001022h)·bytes
96 ··file·system·or·operating·system·of·origin:······MS-DOS,·OS/2·or·NT·FAT94 ··file·system·or·operating·system·of·origin:······MS-DOS,·OS/2·or·NT·FAT
97 ··version·of·encoding·software:···················2.095 ··version·of·encoding·software:···················1.0
98 ··minimum·file·system·compatibility·required:·····MS-DOS,·OS/2·or·NT·FAT96 ··minimum·file·system·compatibility·required:·····MS-DOS,·OS/2·or·NT·FAT
99 ··minimum·software·version·required·to·extract:···2.097 ··minimum·software·version·required·to·extract:···1.0
100 ··compression·method:·····························deflated98 ··compression·method:·····························none·(stored)
101 ··compression·sub-type·(deflation):···············normal 
Max diff block lines reached; 98983/107409 bytes (92.16%) of diff not shown.
123 B
filetype from file(1)
    
Offset 1, 1 lines modifiedOffset 1, 1 lines modified
1 Zip·archive·data,·at·least·v2.0·to·extract1 Java·archive·data·(JAR)
1.24 KB
AndroidManifest.xml (decoded)
1.18 KB
AndroidManifest.xml
    
Offset 1, 9 lines modifiedOffset 1, 9 lines modified
1 <?xml·version="1.0"·encoding="utf-8"?>1 <?xml·version="1.0"·encoding="utf-8"?>
2 <manifest·xmlns:android="http://schemas.android.com/apk/res/android"·android:versionCode="21"·android:versionName="2.21"·package="com.google.android.apps.authenticator2">2 <manifest·xmlns:android="http://schemas.android.com/apk/res/android"·android:versionCode="21"·android:versionName="2.21"·package="com.google.android.apps.authenticator2"·platformBuildVersionCode="15"·platformBuildVersionName="4.0.4-1406430">
3 ··<uses-sdk·android:minSdkVersion="7"·android:targetSdkVersion="14"/>3 ··<uses-sdk·android:minSdkVersion="7"·android:targetSdkVersion="14"/>
4 ··<uses-permission·android:name="android.permission.VIBRATE"/>4 ··<uses-permission·android:name="android.permission.VIBRATE"/>
5 ··<uses-permission·android:name="android.permission.INTERNET"/>5 ··<uses-permission·android:name="android.permission.INTERNET"/>
6 ··<application·android:theme="@style/AuthenticatorTheme"·android:label="@string/app_name_short"·android:icon="@drawable/ic_launcher_authenticator"·android:name="com.google.android.apps.authenticator.AuthenticatorApplication"·android:allowBackup="false">6 ··<application·android:theme="@style/AuthenticatorTheme"·android:label="@string/app_name_short"·android:icon="@drawable/ic_launcher_authenticator"·android:name="com.google.android.apps.authenticator.AuthenticatorApplication"·android:allowBackup="false">
7 ····<activity·android:label="@string/app_name_short"·android:name="com.google.android.apps.authenticator.AuthenticatorActivity"·android:launchMode="singleTask">7 ····<activity·android:label="@string/app_name_short"·android:name="com.google.android.apps.authenticator.AuthenticatorActivity"·android:launchMode="singleTask">
8 ······<intent-filter>8 ······<intent-filter>
9 ········<action·android:name="android.intent.action.MAIN"/>9 ········<action·android:name="android.intent.action.MAIN"/>
5.42 KB
resources.arsc
5.39 KB
aapt2 dump resources {}
    
Offset 120, 49 lines modifiedOffset 120, 49 lines modified
120 ··type·color·id=05·entryCount=1120 ··type·color·id=05·entryCount=1
121 ····resource·0x7f050000·color/countdown_indicator121 ····resource·0x7f050000·color/countdown_indicator
122 ······()·#ff71ca00122 ······()·#ff71ca00
123 ······(v11)·#ff5478c2123 ······(v11)·#ff5478c2
124 ······(v14)·@0x01060012124 ······(v14)·@0x01060012
125 ··type·drawable·id=02·entryCount=23125 ··type·drawable·id=02·entryCount=23
126 ····resource·0x7f020000·drawable/btn_dir_next_disabled_focused_holo_dark126 ····resource·0x7f020000·drawable/btn_dir_next_disabled_focused_holo_dark
127 ······(xhdpi-v4)·(file)·res/drawable-xhdpi/btn_dir_next_disabled_focused_holo_dark.9.png·type=PNG127 ······(xhdpi-v4)·(file)·res/drawable-xhdpi-v4/btn_dir_next_disabled_focused_holo_dark.9.png·type=PNG
128 ····resource·0x7f020001·drawable/btn_dir_next_disabled_holo_dark128 ····resource·0x7f020001·drawable/btn_dir_next_disabled_holo_dark
129 ······(xhdpi-v4)·(file)·res/drawable-xhdpi/btn_dir_next_disabled_holo_dark.9.png·type=PNG129 ······(xhdpi-v4)·(file)·res/drawable-xhdpi-v4/btn_dir_next_disabled_holo_dark.9.png·type=PNG
130 ····resource·0x7f020002·drawable/btn_dir_next_focused_holo_dark130 ····resource·0x7f020002·drawable/btn_dir_next_focused_holo_dark
131 ······(xhdpi-v4)·(file)·res/drawable-xhdpi/btn_dir_next_focused_holo_dark.9.png·type=PNG131 ······(xhdpi-v4)·(file)·res/drawable-xhdpi-v4/btn_dir_next_focused_holo_dark.9.png·type=PNG
132 ····resource·0x7f020003·drawable/btn_dir_next_holo_dark132 ····resource·0x7f020003·drawable/btn_dir_next_holo_dark
133 ······()·(file)·res/drawable/btn_dir_next_holo_dark.xml·type=XML133 ······()·(file)·res/drawable/btn_dir_next_holo_dark.xml·type=XML
134 ····resource·0x7f020004·drawable/btn_dir_next_normal_holo_dark134 ····resource·0x7f020004·drawable/btn_dir_next_normal_holo_dark
135 ······(xhdpi-v4)·(file)·res/drawable-xhdpi/btn_dir_next_normal_holo_dark.9.png·type=PNG135 ······(xhdpi-v4)·(file)·res/drawable-xhdpi-v4/btn_dir_next_normal_holo_dark.9.png·type=PNG
136 ····resource·0x7f020005·drawable/btn_dir_next_pressed_holo_dark136 ····resource·0x7f020005·drawable/btn_dir_next_pressed_holo_dark
137 ······(xhdpi-v4)·(file)·res/drawable-xhdpi/btn_dir_next_pressed_holo_dark.9.png·type=PNG137 ······(xhdpi-v4)·(file)·res/drawable-xhdpi-v4/btn_dir_next_pressed_holo_dark.9.png·type=PNG
138 ····resource·0x7f020006·drawable/btn_dir_prev_disabled_focused_holo_dark138 ····resource·0x7f020006·drawable/btn_dir_prev_disabled_focused_holo_dark
139 ······(xhdpi-v4)·(file)·res/drawable-xhdpi/btn_dir_prev_disabled_focused_holo_dark.9.png·type=PNG139 ······(xhdpi-v4)·(file)·res/drawable-xhdpi-v4/btn_dir_prev_disabled_focused_holo_dark.9.png·type=PNG
140 ····resource·0x7f020007·drawable/btn_dir_prev_disabled_holo_dark140 ····resource·0x7f020007·drawable/btn_dir_prev_disabled_holo_dark
141 ······(xhdpi-v4)·(file)·res/drawable-xhdpi/btn_dir_prev_disabled_holo_dark.9.png·type=PNG141 ······(xhdpi-v4)·(file)·res/drawable-xhdpi-v4/btn_dir_prev_disabled_holo_dark.9.png·type=PNG
142 ····resource·0x7f020008·drawable/btn_dir_prev_focused_holo_dark142 ····resource·0x7f020008·drawable/btn_dir_prev_focused_holo_dark
143 ······(xhdpi-v4)·(file)·res/drawable-xhdpi/btn_dir_prev_focused_holo_dark.9.png·type=PNG143 ······(xhdpi-v4)·(file)·res/drawable-xhdpi-v4/btn_dir_prev_focused_holo_dark.9.png·type=PNG
144 ····resource·0x7f020009·drawable/btn_dir_prev_holo_dark144 ····resource·0x7f020009·drawable/btn_dir_prev_holo_dark
145 ······()·(file)·res/drawable/btn_dir_prev_holo_dark.xml·type=XML145 ······()·(file)·res/drawable/btn_dir_prev_holo_dark.xml·type=XML
146 ····resource·0x7f02000a·drawable/btn_dir_prev_normal_holo_dark146 ····resource·0x7f02000a·drawable/btn_dir_prev_normal_holo_dark
147 ······(xhdpi-v4)·(file)·res/drawable-xhdpi/btn_dir_prev_normal_holo_dark.9.png·type=PNG147 ······(xhdpi-v4)·(file)·res/drawable-xhdpi-v4/btn_dir_prev_normal_holo_dark.9.png·type=PNG
148 ····resource·0x7f02000b·drawable/btn_dir_prev_pressed_holo_dark148 ····resource·0x7f02000b·drawable/btn_dir_prev_pressed_holo_dark
149 ······(xhdpi-v4)·(file)·res/drawable-xhdpi/btn_dir_prev_pressed_holo_dark.9.png·type=PNG149 ······(xhdpi-v4)·(file)·res/drawable-xhdpi-v4/btn_dir_prev_pressed_holo_dark.9.png·type=PNG
150 ····resource·0x7f02000c·drawable/howitworks_enter_code150 ····resource·0x7f02000c·drawable/howitworks_enter_code
151 ······(xhdpi-v4)·(file)·res/drawable-xhdpi/howitworks_enter_code.png·type=PNG151 ······(xhdpi-v4)·(file)·res/drawable-xhdpi-v4/howitworks_enter_code.png·type=PNG
152 ····resource·0x7f02000d·drawable/howitworks_enter_password152 ····resource·0x7f02000d·drawable/howitworks_enter_password
153 ······(xhdpi-v4)·(file)·res/drawable-xhdpi/howitworks_enter_password.png·type=PNG153 ······(xhdpi-v4)·(file)·res/drawable-xhdpi-v4/howitworks_enter_password.png·type=PNG
154 ····resource·0x7f02000e·drawable/howitworks_verify_device154 ····resource·0x7f02000e·drawable/howitworks_verify_device
155 ······(xhdpi-v4)·(file)·res/drawable-xhdpi/howitworks_verify_device.png·type=PNG155 ······(xhdpi-v4)·(file)·res/drawable-xhdpi-v4/howitworks_verify_device.png·type=PNG
156 ····resource·0x7f02000f·drawable/ic_btn_back156 ····resource·0x7f02000f·drawable/ic_btn_back
157 ······(hdpi-v4)·(file)·res/drawable-hdpi/ic_btn_back.png·type=PNG157 ······(hdpi-v4)·(file)·res/drawable-hdpi-v4/ic_btn_back.png·type=PNG
158 ····resource·0x7f020010·drawable/ic_btn_next158 ····resource·0x7f020010·drawable/ic_btn_next
159 ······(hdpi-v4)·(file)·res/drawable-hdpi/ic_btn_next.png·type=PNG159 ······(hdpi-v4)·(file)·res/drawable-hdpi-v4/ic_btn_next.png·type=PNG
160 ····resource·0x7f020011·drawable/ic_launcher_authenticator160 ····resource·0x7f020011·drawable/ic_launcher_authenticator
161 ······(xhdpi-v4)·(file)·res/drawable-xhdpi/ic_launcher_authenticator.png·type=PNG161 ······(xhdpi-v4)·(file)·res/drawable-xhdpi-v4/ic_launcher_authenticator.png·type=PNG
162 ····resource·0x7f020012·drawable/ic_stat_notify_bt162 ····resource·0x7f020012·drawable/ic_stat_notify_bt
163 ······(ldpi-v11)·(file)·res/drawable-ldpi-v11/ic_stat_notify_bt.png·type=PNG163 ······(ldpi-v11)·(file)·res/drawable-ldpi-v11/ic_stat_notify_bt.png·type=PNG
164 ····resource·0x7f020013·drawable/refresh164 ····resource·0x7f020013·drawable/refresh
165 ······()·(file)·res/drawable/refresh.png·type=PNG165 ······()·(file)·res/drawable/refresh.png·type=PNG
166 ······(mdpi-v11)·(file)·res/drawable-mdpi-v11/refresh.png·type=PNG166 ······(mdpi-v11)·(file)·res/drawable-mdpi-v11/refresh.png·type=PNG
167 ······(mdpi-v14)·(file)·res/drawable-mdpi-v14/refresh.png·type=PNG167 ······(mdpi-v14)·(file)·res/drawable-mdpi-v14/refresh.png·type=PNG
168 ····resource·0x7f020014·drawable/refresh_button168 ····resource·0x7f020014·drawable/refresh_button
Offset 262, 14 lines modifiedOffset 262, 15 lines modified
262 ······()·(file)·res/layout/howitworks_enter_password.xml·type=XML262 ······()·(file)·res/layout/howitworks_enter_password.xml·type=XML
263 ····resource·0x7f030005·layout/howitworks_verify_device263 ····resource·0x7f030005·layout/howitworks_verify_device
264 ······()·(file)·res/layout/howitworks_verify_device.xml·type=XML264 ······()·(file)·res/layout/howitworks_verify_device.xml·type=XML
265 ····resource·0x7f030006·layout/main265 ····resource·0x7f030006·layout/main
266 ······()·(file)·res/layout/main.xml·type=XML266 ······()·(file)·res/layout/main.xml·type=XML
267 ····resource·0x7f030007·layout/remove_account_prompt267 ····resource·0x7f030007·layout/remove_account_prompt
268 ······()·(file)·res/layout/remove_account_prompt.xml·type=XML268 ······()·(file)·res/layout/remove_account_prompt.xml·type=XML
 269 ······(v11)·(file)·res/layout-v11/remove_account_prompt.xml·type=XML
269 ····resource·0x7f030008·layout/rename270 ····resource·0x7f030008·layout/rename
270 ······()·(file)·res/layout/rename.xml·type=XML271 ······()·(file)·res/layout/rename.xml·type=XML
271 ····resource·0x7f030009·layout/timesync_about272 ····resource·0x7f030009·layout/timesync_about
272 ······()·(file)·res/layout/timesync_about.xml·type=XML273 ······()·(file)·res/layout/timesync_about.xml·type=XML
273 ····resource·0x7f03000a·layout/user_row274 ····resource·0x7f03000a·layout/user_row
274 ······()·(file)·res/layout/user_row.xml·type=XML275 ······()·(file)·res/layout/user_row.xml·type=XML
275 ····resource·0x7f03000b·layout/wizard_page276 ····resource·0x7f03000b·layout/wizard_page
2.28 MB
classes.dex
2.19 MB
dexdump -a -d -f -h {}
Ignoring differences in offsets to keep diff size reasonable.
    
Offset 1, 36 lines modifiedOffset 1, 36 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············:·13fc0db34 checksum············:·fc4fd995
5 signature···········:·29b5...329b5 signature···········:·94c0...b88a
6 file_size···········:·1179646 file_size···········:·139032
7 header_size·········:·1127 header_size·········:·112
8 link_size···········:·08 link_size···········:·0
9 link_off············:·0·(0x000000)9 link_off············:·0·(0x000000)
10 string_ids_size·····:·179010 string_ids_size·····:·1784
11 string_ids_off······:·112·(0x000070)11 string_ids_off······:·112·(0x000070)
12 type_ids_size·······:·31212 type_ids_size·······:·312
13 type_ids_off········:·7272·(0x001c68)13 type_ids_off········:·7248·(0x001c50)
14 proto_ids_size······:·35814 proto_ids_size······:·358
15 proto_ids_off·······:·8520·(0x002148)15 proto_ids_off·······:·8496·(0x002130)
16 field_ids_size······:·46116 field_ids_size······:·461
17 field_ids_off·······:·12816·(0x003210)17 field_ids_off·······:·12792·(0x0031f8)
18 method_ids_size·····:·92018 method_ids_size·····:·920
19 method_ids_off······:·16504·(0x004078)19 method_ids_off······:·16480·(0x004060)
20 class_defs_size·····:·11420 class_defs_size·····:·114
21 class_defs_off······:·23864·(0x005d38)21 class_defs_off······:·23840·(0x005d20)
22 data_size···········:·9045222 data_size···········:·111496
23 data_off············:·27512·(0x006b78)23 data_off············:·27536·(0x006b90)
  
24 Class·#0·header:24 Class·#0·header:
25 class_idx···········:·625 class_idx···········:·6
26 access_flags········:·9729·(0x2601)26 access_flags········:·9729·(0x2601)
27 superclass_idx······:·24327 superclass_idx······:·243
28 source_file_idx·····:·62728 source_file_idx·····:·624
29 static_fields_size··:·029 static_fields_size··:·0
30 instance_fields_size:·030 instance_fields_size:·0
31 direct_methods_size·:·031 direct_methods_size·:·0
32 virtual_methods_size:·132 virtual_methods_size:·1
  
33 Class·#0·annotations:33 Class·#0·annotations:
34 Annotations·on·class34 Annotations·on·class
Offset 49, 21 lines modifiedOffset 49, 21 lines modified
49 ··Virtual·methods···-49 ··Virtual·methods···-
50 ····#0··············:·(in·Landroid/annotation/SuppressLint;)50 ····#0··············:·(in·Landroid/annotation/SuppressLint;)
51 ······name··········:·'value'51 ······name··········:·'value'
52 ······type··········:·'()[Ljava/lang/String;'52 ······type··········:·'()[Ljava/lang/String;'
53 ······access········:·0x0401·(PUBLIC·ABSTRACT)53 ······access········:·0x0401·(PUBLIC·ABSTRACT)
54 ······code··········:·(none)54 ······code··········:·(none)
  
55 ··source_file_idx···:·627·(SuppressLint.java)55 ··source_file_idx···:·624·(SuppressLint.java)
  
56 Class·#1·header:56 Class·#1·header:
57 class_idx···········:·757 class_idx···········:·7
58 access_flags········:·9729·(0x2601)58 access_flags········:·9729·(0x2601)
59 superclass_idx······:·24359 superclass_idx······:·243
60 source_file_idx·····:·64260 source_file_idx·····:·639
61 static_fields_size··:·061 static_fields_size··:·0
62 instance_fields_size:·062 instance_fields_size:·0
63 direct_methods_size·:·063 direct_methods_size·:·0
64 virtual_methods_size:·164 virtual_methods_size:·1
  
65 Class·#1·annotations:65 Class·#1·annotations:
66 Annotations·on·class66 Annotations·on·class
Offset 82, 138 lines modifiedOffset 82, 32 lines modified
82 ··Virtual·methods···-82 ··Virtual·methods···-
83 ····#0··············:·(in·Landroid/annotation/TargetApi;)83 ····#0··············:·(in·Landroid/annotation/TargetApi;)
84 ······name··········:·'value'84 ······name··········:·'value'
85 ······type··········:·'()I'85 ······type··········:·'()I'
86 ······access········:·0x0401·(PUBLIC·ABSTRACT)86 ······access········:·0x0401·(PUBLIC·ABSTRACT)
87 ······code··········:·(none)87 ······code··········:·(none)
  
88 ··source_file_idx···:·642·(TargetApi.java)88 ··source_file_idx···:·639·(TargetApi.java)
  
89 Class·#2·header:89 Class·#2·header:
90 class_idx···········:·138 
91 access_flags········:·1536·(0x0600) 
92 superclass_idx······:·243 
93 source_file_idx·····:·587 
94 static_fields_size··:·0 
95 instance_fields_size:·0 
96 direct_methods_size·:·0 
97 virtual_methods_size:·1 
  
98 Class·#2·annotations: 
99 Annotations·on·class 
100 ··VISIBILITY_SYSTEM·Ldalvik/annotation/EnclosingClass;·value=Lcom/google/android/apps/authenticator/PasscodeGenerator; 
101 ··VISIBILITY_SYSTEM·Ldalvik/annotation/InnerClass;·accessFlags=1544·name="Signer" 
102 Annotations·on·method·#482·'sign' 
103 ··VISIBILITY_SYSTEM·Ldalvik/annotation/Throws;·value={·Ljava/security/GeneralSecurityException;·} 
  
104 Class·#2············- 
105 ··Class·descriptor··:·'Lcom/google/android/apps/authenticator/PasscodeGenerator$Signer;' 
106 ··Access·flags······:·0x0600·(INTERFACE·ABSTRACT) 
107 ··Superclass········:·'Ljava/lang/Object;' 
108 ··Interfaces········- 
109 ··Static·fields·····- 
110 ··Instance·fields···- 
111 ··Direct·methods····- 
112 ··Virtual·methods···- 
113 ····#0··············:·(in·Lcom/google/android/apps/authenticator/PasscodeGenerator$Signer;) 
114 ······name··········:·'sign' 
115 ······type··········:·'([B)[B' 
116 ······access········:·0x0401·(PUBLIC·ABSTRACT) 
117 ······code··········:·(none) 
  
118 ··source_file_idx···:·587·(PasscodeGenerator.java) 
  
119 Class·#3·header: 
120 class_idx···········:·96 
121 access_flags········:·16·(0x0010) 
122 superclass_idx······:·243 
123 source_file_idx·····:·60 
124 static_fields_size··:·0 
125 instance_fields_size:·1 
126 direct_methods_size·:·1 
127 virtual_methods_size:·1 
  
128 Class·#3·annotations: 
129 Annotations·on·class 
130 ··VISIBILITY_SYSTEM·Ldalvik/annotation/EnclosingMethod;·value=getSigningOracle 
131 ··VISIBILITY_SYSTEM·Ldalvik/annotation/InnerClass;·accessFlags=8·name=null 
  
132 Class·#3············- 
133 ··Class·descriptor··:·'Lcom/google/android/apps/authenticator/AccountDb$1;' 
134 ··Access·flags······:·0x0010·(FINAL) 
135 ··Superclass········:·'Ljava/lang/Object;' 
136 ··Interfaces········- 
137 ····#0··············:·'Lcom/google/android/apps/authenticator/PasscodeGenerator$Signer;' 
138 ··Static·fields·····- 
139 ··Instance·fields···- 
140 ····#0··············:·(in·Lcom/google/android/apps/authenticator/AccountDb$1;) 
141 ······name··········:·'val$mac' 
Max diff block lines reached; 2288116/2295126 bytes (99.69%) of diff not shown.
93.7 KB
classes.jar
17.5 KB
zipinfo {}
    
Offset 1, 101 lines modifiedOffset 1, 78 lines modified
1 Zip·file·size:·183890·bytes,·number·of·entries:·1141 Zip·file·size:·183855·bytes,·number·of·entries:·114
2 ?rwxrwxr-x··2.0·unx······162·b-·stor·80-Jan-01·00:00·android/annotation/SuppressLint.class2 ?rwxrwxr-x··2.0·unx······162·b-·stor·80-Jan-01·00:00·android/annotation/SuppressLint.class
3 ?rwxrwxr-x··2.0·unx······141·b-·stor·80-Jan-01·00:00·android/annotation/TargetApi.class3 ?rwxrwxr-x··2.0·unx······141·b-·stor·80-Jan-01·00:00·android/annotation/TargetApi.class
4 ?rwxrwxr-x··2.0·unx······138·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/PasscodeGenerator$Signer.class 
5 ?rwxrwxr-x··2.0·unx······405·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AccountDb$1.class 
6 ?rwxrwxr-x··2.0·unx······281·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AccountDb$AccountDbOpenException.class4 ?rwxrwxr-x··2.0·unx······281·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AccountDb$AccountDbOpenException.class
7 ?rwxrwxr-x··2.0·unx·····1251·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AccountDb$OtpType.class5 ?rwxrwxr-x··2.0·unx·····1251·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AccountDb$OtpType.class
8 ?rwxrwxr-x··2.0·unx····10590·b-·defN·80-Jan-01·00:00·com/google/android/apps/authenticator/AccountDb.class6 ?rwxrwxr-x··2.0·unx····10579·b-·defN·80-Jan-01·00:00·com/google/android/apps/authenticator/AccountDb.class
9 ?rwxrwxr-x··2.0·unx······545·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AddOtherAccountActivity$1.class7 ?rwxrwxr-x··2.0·unx······545·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AddOtherAccountActivity$1.class
10 ?rwxrwxr-x··2.0·unx······545·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AddOtherAccountActivity$2.class8 ?rwxrwxr-x··2.0·unx······545·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AddOtherAccountActivity$2.class
11 ?rwxrwxr-x··2.0·unx······778·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/testability/TestableActivity.class 
12 ?rwxrwxr-x··2.0·unx·····5529·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/wizard/WizardPageActivity.class 
13 ?rwxrwxr-x··2.0·unx·····1630·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AddOtherAccountActivity.class 
14 ?rwxrwxr-x··2.0·unx······727·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$10.class9 ?rwxrwxr-x··2.0·unx······727·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$10.class
15 ?rwxrwxr-x··2.0·unx······571·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$11.class10 ?rwxrwxr-x··2.0·unx······571·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$11.class
16 ?rwxrwxr-x··2.0·unx······245·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataimport/ImportController$Listener.class 
17 ?rwxrwxr-x··2.0·unx·····1403·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$12.class 
18 ?rwxrwxr-x··2.0·unx······537·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$1.class11 ?rwxrwxr-x··2.0·unx······537·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$1.class
19 ?rwxrwxr-x··2.0·unx······537·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$2.class12 ?rwxrwxr-x··2.0·unx······537·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$2.class
20 ?rwxrwxr-x··2.0·unx·····1084·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$3.class13 ?rwxrwxr-x··2.0·unx·····1084·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$3.class
21 ?rwxrwxr-x··2.0·unx······191·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/TotpCountdownTask$Listener.class 
22 ?rwxrwxr-x··2.0·unx······782·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$4.class 
23 ?rwxrwxr-x··2.0·unx······912·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$5.class14 ?rwxrwxr-x··2.0·unx······912·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$5.class
24 ?rwxrwxr-x··2.0·unx·····1908·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$6.class15 ?rwxrwxr-x··2.0·unx·····1908·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$6.class
25 ?rwxrwxr-x··2.0·unx·····1038·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$7.class16 ?rwxrwxr-x··2.0·unx·····1038·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$7.class
26 ?rwxrwxr-x··2.0·unx·····1558·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$8.class17 ?rwxrwxr-x··2.0·unx·····1558·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$8.class
27 ?rwxrwxr-x··2.0·unx······721·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$9.class18 ?rwxrwxr-x··2.0·unx······721·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$9.class
28 ?rwxrwxr-x··2.0·unx·····1361·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$1.class19 ?rwxrwxr-x··2.0·unx·····1361·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$1.class
29 ?rwxrwxr-x··2.0·unx·····1750·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$2.class20 ?rwxrwxr-x··2.0·unx·····1750·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$2.class
30 ?rwxrwxr-x··2.0·unx·····3694·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener.class21 ?rwxrwxr-x··2.0·unx·····3694·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener.class
31 ?rwxrwxr-x··2.0·unx·····1152·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$PinInfo.class22 ?rwxrwxr-x··2.0·unx·····1152·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$PinInfo.class
32 ?rwxrwxr-x··2.0·unx·····2694·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$PinListAdapter.class23 ?rwxrwxr-x··2.0·unx·····2694·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$PinListAdapter.class
33 ?rwxrwxr-x··2.0·unx·····1328·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams.class24 ?rwxrwxr-x··2.0·unx·····1328·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams.class
34 ?rwxrwxr-x··2.0·unx····23872·b-·defN·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity.class 
35 ?rwxrwxr-x··2.0·unx······894·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorApplication.class25 ?rwxrwxr-x··2.0·unx······894·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorApplication.class
36 ?rwxrwxr-x··2.0·unx······205·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/Base32String$DecodingException.class26 ?rwxrwxr-x··2.0·unx······205·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/Base32String$DecodingException.class
37 ?rwxrwxr-x··2.0·unx·····2944·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/Base32String.class27 ?rwxrwxr-x··2.0·unx·····2934·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/Base32String.class
38 ?rwxrwxr-x··2.0·unx·····2844·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/CheckCodeActivity.class28 ?rwxrwxr-x··2.0·unx·····2844·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/CheckCodeActivity.class
39 ?rwxrwxr-x··2.0·unx·····2382·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/CountdownIndicator.class29 ?rwxrwxr-x··2.0·unx·····2382·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/CountdownIndicator.class
40 ?rwxrwxr-x··2.0·unx·····3041·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/EnterKeyActivity.class 
41 ?rwxrwxr-x··2.0·unx·····1246·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/FileUtilities$StatStruct.class30 ?rwxrwxr-x··2.0·unx·····1246·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/FileUtilities$StatStruct.class
42 ?rwxrwxr-x··2.0·unx·····3458·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/FileUtilities.class31 ?rwxrwxr-x··2.0·unx·····3458·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/FileUtilities.class
43 ?rwxrwxr-x··2.0·unx·····1377·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/HexEncoding.class32 ?rwxrwxr-x··2.0·unx·····1372·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/HexEncoding.class
44 ?rwxrwxr-x··2.0·unx·····1226·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/OptionalFeatures.class33 ?rwxrwxr-x··2.0·unx·····1226·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/OptionalFeatures.class
45 ?rwxrwxr-x··2.0·unx·····2168·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/MarketBuildOptionalFeatures.class 
46 ?rwxrwxr-x··2.0·unx······281·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/OtpSourceException.class 
47 ?rwxrwxr-x··2.0·unx······246·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/OtpGenerationNotPermittedException.class 
48 ?rwxrwxr-x··2.0·unx······464·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/OtpSource.class34 ?rwxrwxr-x··2.0·unx······464·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/OtpSource.class
49 ?rwxrwxr-x··2.0·unx·····3489·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/OtpProvider.class35 ?rwxrwxr-x··2.0·unx······281·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/OtpSourceException.class
50 ?rwxrwxr-x··2.0·unx······413·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/PasscodeGenerator$1.class36 ?rwxrwxr-x··2.0·unx······138·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/PasscodeGenerator$Signer.class
51 ?rwxrwxr-x··2.0·unx·····2849·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/PasscodeGenerator.class37 ?rwxrwxr-x··2.0·unx·····2849·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/PasscodeGenerator.class
52 ?rwxrwxr-x··2.0·unx······699·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/Preconditions.class38 ?rwxrwxr-x··2.0·unx······699·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/Preconditions.class
53 ?rwxrwxr-x··2.0·unx······661·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/RunOnThisLooperThreadExecutor.class39 ?rwxrwxr-x··2.0·unx······661·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/RunOnThisLooperThreadExecutor.class
54 ?rwxrwxr-x··2.0·unx······805·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/testability/TestablePreferenceActivity.class 
55 ?rwxrwxr-x··2.0·unx·····1032·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/SettingsAboutActivity.class 
56 ?rwxrwxr-x··2.0·unx······369·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/SettingsActivity.class 
57 ?rwxrwxr-x··2.0·unx·····1550·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/TotpClock.class40 ?rwxrwxr-x··2.0·unx·····1550·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/TotpClock.class
 41 ?rwxrwxr-x··2.0·unx······191·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/TotpCountdownTask$Listener.class
58 ?rwxrwxr-x··2.0·unx·····2365·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/TotpCountdownTask.class42 ?rwxrwxr-x··2.0·unx·····2365·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/TotpCountdownTask.class
59 ?rwxrwxr-x··2.0·unx·····1064·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/TotpCounter.class43 ?rwxrwxr-x··2.0·unx·····1064·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/TotpCounter.class
60 ?rwxrwxr-x··2.0·unx·····1688·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/UserRowView.class44 ?rwxrwxr-x··2.0·unx·····1688·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/UserRowView.class
61 ?rwxrwxr-x··2.0·unx·····1056·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/Utilities.class45 ?rwxrwxr-x··2.0·unx·····1056·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/Utilities.class
62 ?rwxrwxr-x··2.0·unx······222·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataexport/IExportServiceV2.class46 ?rwxrwxr-x··2.0·unx······222·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataexport/IExportServiceV2.class
63 ?rwxrwxr-x··2.0·unx·····1400·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataexport/IExportServiceV2$Stub$Proxy.class 
64 ?rwxrwxr-x··2.0·unx·····1593·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataexport/IExportServiceV2$Stub.class 
65 ?rwxrwxr-x··2.0·unx······137·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataimport/ExportServiceBasedImportController$1.class47 ?rwxrwxr-x··2.0·unx······137·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataimport/ExportServiceBasedImportController$1.class
66 ?rwxrwxr-x··2.0·unx·····4873·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataimport/ExportServiceBasedImportController$ExportServiceConnection.class48 ?rwxrwxr-x··2.0·unx·····4873·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataimport/ExportServiceBasedImportController$ExportServiceConnection.class
 49 ?rwxrwxr-x··2.0·unx······245·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataimport/ImportController$Listener.class
67 ?rwxrwxr-x··2.0·unx······240·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataimport/ImportController.class50 ?rwxrwxr-x··2.0·unx······240·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataimport/ImportController.class
68 ?rwxrwxr-x··2.0·unx·····3480·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataimport/ExportServiceBasedImportController.class 
69 ?rwxrwxr-x··2.0·unx······111·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataimport/Importer$1.class51 ?rwxrwxr-x··2.0·unx······111·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataimport/Importer$1.class
70 ?rwxrwxr-x··2.0·unx······606·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataimport/Importer$IntegerStringComparator.class52 ?rwxrwxr-x··2.0·unx······606·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataimport/Importer$IntegerStringComparator.class
71 ?rwxrwxr-x··2.0·unx·····4764·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataimport/Importer.class53 ?rwxrwxr-x··2.0·unx·····4760·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataimport/Importer.class
72 ?rwxrwxr-x··2.0·unx······649·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/howitworks/IntroEnterCodeActivity.class 
73 ?rwxrwxr-x··2.0·unx······650·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/howitworks/IntroEnterPasswordActivity.class 
74 ?rwxrwxr-x··2.0·unx······664·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/howitworks/IntroVerifyDeviceActivity.class 
75 ?rwxrwxr-x··2.0·unx······400·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/testability/DependencyInjector$1.class 
76 ?rwxrwxr-x··2.0·unx······962·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/testability/DependencyInjector$Mode.class54 ?rwxrwxr-x··2.0·unx······962·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/testability/DependencyInjector$Mode.class
77 ?rwxrwxr-x··2.0·unx·····7592·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/testability/DependencyInjector.class55 ?rwxrwxr-x··2.0·unx·····7592·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/testability/DependencyInjector.class
78 ?rwxrwxr-x··2.0·unx·····2395·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/testability/HttpClientFactory.class56 ?rwxrwxr-x··2.0·unx·····2395·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/testability/HttpClientFactory.class
79 ?rwxrwxr-x··2.0·unx······659·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/testability/SharedPreferencesRenamingDelegatingContext.class57 ?rwxrwxr-x··2.0·unx······659·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/testability/SharedPreferencesRenamingDelegatingContext.class
80 ?rwxrwxr-x··2.0·unx······211·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/testability/StartActivityListener.class58 ?rwxrwxr-x··2.0·unx······211·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/testability/StartActivityListener.class
81 ?rwxrwxr-x··2.0·unx······704·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/AboutActivity.class59 ?rwxrwxr-x··2.0·unx······778·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/testability/TestableActivity.class
 60 ?rwxrwxr-x··2.0·unx······805·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/testability/TestablePreferenceActivity.class
82 ?rwxrwxr-x··2.0·unx·····2520·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/NetworkTimeProvider.class61 ?rwxrwxr-x··2.0·unx·····2519·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/NetworkTimeProvider.class
83 ?rwxrwxr-x··2.0·unx······392·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SettingsTimeCorrectionActivity.class 
84 ?rwxrwxr-x··2.0·unx······574·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowActivity$1.class62 ?rwxrwxr-x··2.0·unx······574·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowActivity$1.class
85 ?rwxrwxr-x··2.0·unx······574·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowActivity$2.class63 ?rwxrwxr-x··2.0·unx······574·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowActivity$2.class
86 ?rwxrwxr-x··2.0·unx······574·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowActivity$3.class64 ?rwxrwxr-x··2.0·unx······574·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowActivity$3.class
87 ?rwxrwxr-x··2.0·unx······895·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowActivity$4.class65 ?rwxrwxr-x··2.0·unx······895·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowActivity$4.class
88 ?rwxrwxr-x··2.0·unx······972·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowActivity$5.class66 ?rwxrwxr-x··2.0·unx······972·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowActivity$5.class
89 ?rwxrwxr-x··2.0·unx······248·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowController$Presenter.class 
90 ?rwxrwxr-x··2.0·unx·····4125·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowActivity.class 
91 ?rwxrwxr-x··2.0·unx······752·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowController$1.class67 ?rwxrwxr-x··2.0·unx······752·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowController$1.class
92 ?rwxrwxr-x··2.0·unx······855·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowController$2.class68 ?rwxrwxr-x··2.0·unx······855·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowController$2.class
93 ?rwxrwxr-x··2.0·unx······577·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowController$3.class69 ?rwxrwxr-x··2.0·unx······577·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowController$3.class
94 ?rwxrwxr-x··2.0·unx······846·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowController$4.class70 ?rwxrwxr-x··2.0·unx······846·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowController$4.class
 71 ?rwxrwxr-x··2.0·unx······248·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowController$Presenter.class
95 ?rwxrwxr-x··2.0·unx·····1117·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowController$Result.class72 ?rwxrwxr-x··2.0·unx·····1117·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowController$Result.class
96 ?rwxrwxr-x··2.0·unx·····1001·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowController$State.class73 ?rwxrwxr-x··2.0·unx·····1001·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowController$State.class
97 ?rwxrwxr-x··2.0·unx·····5473·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowController.class74 ?rwxrwxr-x··2.0·unx·····5473·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/timesync/SyncNowController.class
98 ?rwxrwxr-x··2.0·unx······562·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/wizard/WizardPageActivity$1.class75 ?rwxrwxr-x··2.0·unx······562·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/wizard/WizardPageActivity$1.class
99 ?rwxrwxr-x··2.0·unx······563·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/wizard/WizardPageActivity$2.class76 ?rwxrwxr-x··2.0·unx······563·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/wizard/WizardPageActivity$2.class
100 ?rwxrwxr-x··2.0·unx······564·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/wizard/WizardPageActivity$3.class77 ?rwxrwxr-x··2.0·unx······564·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/wizard/WizardPageActivity$3.class
101 ?rwxrwxr-x··2.0·unx······901·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/wizard/WizardPageActivity$4.class78 ?rwxrwxr-x··2.0·unx······901·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/wizard/WizardPageActivity$4.class
Offset 109, 8 lines modifiedOffset 86, 31 lines modified
109 ?rwxrwxr-x··2.0·unx······640·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator2/R$layout.class86 ?rwxrwxr-x··2.0·unx······640·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator2/R$layout.class
110 ?rwxrwxr-x··2.0·unx······208·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator2/R$menu.class87 ?rwxrwxr-x··2.0·unx······208·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator2/R$menu.class
111 ?rwxrwxr-x··2.0·unx·····4237·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator2/R$string.class88 ?rwxrwxr-x··2.0·unx·····4237·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator2/R$string.class
112 ?rwxrwxr-x··2.0·unx······684·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator2/R$style.class89 ?rwxrwxr-x··2.0·unx······684·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator2/R$style.class
113 ?rwxrwxr-x··2.0·unx······985·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator2/R$styleable.class90 ?rwxrwxr-x··2.0·unx······985·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator2/R$styleable.class
114 ?rwxrwxr-x··2.0·unx······306·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator2/R$xml.class91 ?rwxrwxr-x··2.0·unx······306·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator2/R$xml.class
115 ?rwxrwxr-x··2.0·unx······155·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator2/R.class92 ?rwxrwxr-x··2.0·unx······155·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator2/R.class
 93 ?rwxrwxr-x··2.0·unx······405·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AccountDb$1.class
 94 ?rwxrwxr-x··2.0·unx·····1403·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$12.class
 95 ?rwxrwxr-x··2.0·unx······782·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity$4.class
 96 ?rwxrwxr-x··2.0·unx····23876·b-·defN·80-Jan-01·00:00·com/google/android/apps/authenticator/AuthenticatorActivity.class
 97 ?rwxrwxr-x··2.0·unx·····2168·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/MarketBuildOptionalFeatures.class
 98 ?rwxrwxr-x··2.0·unx······246·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/OtpGenerationNotPermittedException.class
 99 ?rwxrwxr-x··2.0·unx·····3489·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/OtpProvider.class
 100 ?rwxrwxr-x··2.0·unx······413·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/PasscodeGenerator$1.class
 101 ?rwxrwxr-x··2.0·unx·····1032·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/SettingsAboutActivity.class
 102 ?rwxrwxr-x··2.0·unx······369·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/SettingsActivity.class
 103 ?rwxrwxr-x··2.0·unx·····1400·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataexport/IExportServiceV2$Stub$Proxy.class
 104 ?rwxrwxr-x··2.0·unx·····1593·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataexport/IExportServiceV2$Stub.class
 105 ?rwxrwxr-x··2.0·unx·····3480·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/dataimport/ExportServiceBasedImportController.class
 106 ?rwxrwxr-x··2.0·unx······400·b-·stor·80-Jan-01·00:00·com/google/android/apps/authenticator/testability/DependencyInjector$1.class
Max diff block lines reached; -1/17862 bytes (-0.01%) of diff not shown.
11.4 KB
zipnote «TEMP»/diffoscope_o5c_093g_tmp/tmphvubg8ou_.zip
    
Offset 1, 19 lines modifiedOffset 1, 13 lines modified
1 Filename:·android/annotation/SuppressLint.class1 Filename:·android/annotation/SuppressLint.class
2 Comment:·2 Comment:·
  
3 Filename:·android/annotation/TargetApi.class3 Filename:·android/annotation/TargetApi.class
4 Comment:·4 Comment:·
  
5 Filename:·com/google/android/apps/authenticator/PasscodeGenerator$Signer.class 
6 Comment:· 
  
7 Filename:·com/google/android/apps/authenticator/AccountDb$1.class 
8 Comment:· 
  
9 Filename:·com/google/android/apps/authenticator/AccountDb$AccountDbOpenException.class5 Filename:·com/google/android/apps/authenticator/AccountDb$AccountDbOpenException.class
10 Comment:·6 Comment:·
  
11 Filename:·com/google/android/apps/authenticator/AccountDb$OtpType.class7 Filename:·com/google/android/apps/authenticator/AccountDb$OtpType.class
12 Comment:·8 Comment:·
  
13 Filename:·com/google/android/apps/authenticator/AccountDb.class9 Filename:·com/google/android/apps/authenticator/AccountDb.class
Offset 21, 50 lines modifiedOffset 15, 29 lines modified
  
21 Filename:·com/google/android/apps/authenticator/AddOtherAccountActivity$1.class15 Filename:·com/google/android/apps/authenticator/AddOtherAccountActivity$1.class
22 Comment:·16 Comment:·
  
23 Filename:·com/google/android/apps/authenticator/AddOtherAccountActivity$2.class17 Filename:·com/google/android/apps/authenticator/AddOtherAccountActivity$2.class
24 Comment:·18 Comment:·
  
25 Filename:·com/google/android/apps/authenticator/testability/TestableActivity.class 
26 Comment:· 
  
27 Filename:·com/google/android/apps/authenticator/wizard/WizardPageActivity.class 
28 Comment:· 
  
29 Filename:·com/google/android/apps/authenticator/AddOtherAccountActivity.class 
30 Comment:· 
  
31 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$10.class19 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$10.class
32 Comment:·20 Comment:·
  
33 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$11.class21 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$11.class
34 Comment:·22 Comment:·
  
35 Filename:·com/google/android/apps/authenticator/dataimport/ImportController$Listener.class 
36 Comment:· 
  
37 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$12.class 
38 Comment:· 
  
39 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$1.class23 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$1.class
40 Comment:·24 Comment:·
  
41 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$2.class25 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$2.class
42 Comment:·26 Comment:·
  
43 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$3.class27 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$3.class
44 Comment:·28 Comment:·
  
45 Filename:·com/google/android/apps/authenticator/TotpCountdownTask$Listener.class 
46 Comment:· 
  
47 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$4.class 
48 Comment:· 
  
49 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$5.class29 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$5.class
50 Comment:·30 Comment:·
  
51 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$6.class31 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$6.class
52 Comment:·32 Comment:·
  
53 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$7.class33 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$7.class
Offset 90, 17 lines modifiedOffset 63, 14 lines modified
  
90 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$PinListAdapter.class63 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$PinListAdapter.class
91 Comment:·64 Comment:·
  
92 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams.class65 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams.class
93 Comment:·66 Comment:·
  
94 Filename:·com/google/android/apps/authenticator/AuthenticatorActivity.class 
95 Comment:· 
  
96 Filename:·com/google/android/apps/authenticator/AuthenticatorApplication.class67 Filename:·com/google/android/apps/authenticator/AuthenticatorApplication.class
97 Comment:·68 Comment:·
  
98 Filename:·com/google/android/apps/authenticator/Base32String$DecodingException.class69 Filename:·com/google/android/apps/authenticator/Base32String$DecodingException.class
99 Comment:·70 Comment:·
  
100 Filename:·com/google/android/apps/authenticator/Base32String.class71 Filename:·com/google/android/apps/authenticator/Base32String.class
Offset 108, 66 lines modifiedOffset 78, 48 lines modified
  
108 Filename:·com/google/android/apps/authenticator/CheckCodeActivity.class78 Filename:·com/google/android/apps/authenticator/CheckCodeActivity.class
109 Comment:·79 Comment:·
  
110 Filename:·com/google/android/apps/authenticator/CountdownIndicator.class80 Filename:·com/google/android/apps/authenticator/CountdownIndicator.class
111 Comment:·81 Comment:·
  
112 Filename:·com/google/android/apps/authenticator/EnterKeyActivity.class 
113 Comment:· 
  
114 Filename:·com/google/android/apps/authenticator/FileUtilities$StatStruct.class82 Filename:·com/google/android/apps/authenticator/FileUtilities$StatStruct.class
115 Comment:·83 Comment:·
  
116 Filename:·com/google/android/apps/authenticator/FileUtilities.class84 Filename:·com/google/android/apps/authenticator/FileUtilities.class
117 Comment:·85 Comment:·
  
118 Filename:·com/google/android/apps/authenticator/HexEncoding.class86 Filename:·com/google/android/apps/authenticator/HexEncoding.class
119 Comment:·87 Comment:·
  
120 Filename:·com/google/android/apps/authenticator/OptionalFeatures.class88 Filename:·com/google/android/apps/authenticator/OptionalFeatures.class
121 Comment:·89 Comment:·
  
122 Filename:·com/google/android/apps/authenticator/MarketBuildOptionalFeatures.class 
123 Comment:· 
  
124 Filename:·com/google/android/apps/authenticator/OtpSourceException.class 
125 Comment:· 
  
126 Filename:·com/google/android/apps/authenticator/OtpGenerationNotPermittedException.class 
127 Comment:· 
  
128 Filename:·com/google/android/apps/authenticator/OtpSource.class90 Filename:·com/google/android/apps/authenticator/OtpSource.class
129 Comment:·91 Comment:·
  
130 Filename:·com/google/android/apps/authenticator/OtpProvider.class92 Filename:·com/google/android/apps/authenticator/OtpSourceException.class
131 Comment:·93 Comment:·
  
132 Filename:·com/google/android/apps/authenticator/PasscodeGenerator$1.class94 Filename:·com/google/android/apps/authenticator/PasscodeGenerator$Signer.class
Max diff block lines reached; 7546/11605 bytes (65.02%) of diff not shown.
23.9 KB
com/google/android/apps/authenticator/AccountDb.class
23.8 KB
procyon -ec {}
    
Offset 97, 241 lines modifiedOffset 97, 235 lines modified
97 ········//····19:·ldc·············"databases"97 ········//····19:·ldc·············"databases"
98 ········//····21:·invokevirtual···android/content/Context.getDatabasePath:(Ljava/lang/String;)Ljava/io/File;98 ········//····21:·invokevirtual···android/content/Context.getDatabasePath:(Ljava/lang/String;)Ljava/io/File;
99 ········//····24:·invokevirtual···java/io/File.getAbsolutePath:()Ljava/lang/String;99 ········//····24:·invokevirtual···java/io/File.getAbsolutePath:()Ljava/lang/String;
100 ········//····27:·astore··········4100 ········//····27:·astore··········4
101 ········//····29:·iconst_3·······101 ········//····29:·iconst_3·······
102 ········//····30:·anewarray·······Ljava/lang/String;102 ········//····30:·anewarray·······Ljava/lang/String;
103 ········//····33:·astore··········5103 ········//····33:·astore··········5
104 ········//····35:·aconst_null···· 
105 ········//····36:·astore··········6 
106 ········//····38:·aload···········5104 ········//····35:·aload···········5
107 ········//····40:·iconst_0·······105 ········//····37:·iconst_0·······
108 ········//····41:·aload_2········106 ········//····38:·aload_2········
109 ········//····42:·aastore········107 ········//····39:·aastore········
110 ········//····43:·aload···········5108 ········//····40:·aload···········5
111 ········//····45:·iconst_1·······109 ········//····42:·iconst_1·······
112 ········//····46:·aload_3········110 ········//····43:·aload_3········
113 ········//····47:·aastore········111 ········//····44:·aastore········
114 ········//····48:·iconst_2······· 
115 ········//····49:·istore··········7 
116 ········//····51:·aload···········5112 ········//····45:·aload···········5
117 ········//····53:·iload···········7113 ········//····47:·iconst_2·······
118 ········//····55:·aload···········4114 ········//····48:·aload···········4
119 ········//····57:·aastore········115 ········//····50:·aastore········
120 ········//····58:·new·············Ljava/lang/StringBuilder;116 ········//····51:·new·············Ljava/lang/StringBuilder;
121 ········//····61:·astore··········8117 ········//····54:·astore··········6
122 ········//····63:·aload···········8118 ········//····56:·aload···········6
123 ········//····65:·invokespecial···java/lang/StringBuilder.<init>:()V119 ········//····58:·invokespecial···java/lang/StringBuilder.<init>:()V
124 ········//····68:·invokestatic····android/os/Process.myUid:()I120 ········//····61:·invokestatic····android/os/Process.myUid:()I
 121 ········//····64:·istore··········7
 122 ········//····66:·aload···········5
 123 ········//····68:·arraylength····
 124 ········//····69:·istore··········8
 125 ········//····71:·iconst_0·······
125 ········//····71:·istore··········9126 ········//····72:·istore··········9
 127 ········//····74:·iload···········9
 128 ········//····76:·iload···········8
 129 ········//····78:·if_icmpge·······419
126 ········//····73:·aload···········5130 ········//····81:·aload···········5
 131 ········//····83:·iload···········9
 132 ········//····85:·aaload·········
127 ········//····75:·astore··········10133 ········//····86:·astore··········10
128 ········//····77:·aload···········5 
129 ········//····79:·arraylength···· 
130 ········//····80:·istore··········11 
131 ········//····82:·iconst_0······· 
132 ········//····83:·istore··········12 
133 ········//····85:·iload···········12 
134 ········//····87:·iload···········11 
135 ········//····89:·if_icmpge·······430 
136 ········//····92:·aload···········10134 ········//····88:·aload···········10
137 ········//····94:·iload···········12 
138 ········//····96:·aaload········· 
139 ········//····97:·astore··········13 
140 ········//····99:·aload···········13 
141 ········//···101:·invokestatic····com/google/android/apps/authenticator/FileUtilities.getStat:(Ljava/lang/String;)Lcom/google/android/apps/authenticator/FileUtilities$StatStruct;135 ········//····90:·invokestatic····com/google/android/apps/authenticator/FileUtilities.getStat:(Ljava/lang/String;)Lcom/google/android/apps/authenticator/FileUtilities$StatStruct;
142 ········//···104:·astore··········14136 ········//····93:·astore··········11
143 ········//···106:·aconst_null····137 ········//····95:·aconst_null····
144 ········//···107:·astore··········15138 ········//····96:·astore··········12
145 ········//···109:·aload···········14139 ········//····98:·aload···········11
146 ········//···111:·getfield········com/google/android/apps/authenticator/FileUtilities$StatStruct.uid:I140 ········//···100:·getfield········com/google/android/apps/authenticator/FileUtilities$StatStruct.uid:I
147 ········//···114:·istore··········7141 ········//···103:·istore··········13
148 ········//···116:·iload···········7142 ········//···105:·iload···········13
149 ········//···118:·ifne············261143 ········//···107:·ifne············250
150 ········//···121:·ldc·············"root"144 ········//···110:·ldc·············"root"
151 ········//···123:·astore··········15145 ········//···112:·astore··········12
152 ········//···125:·new·············Ljava/lang/StringBuilder;146 ········//···114:·new·············Ljava/lang/StringBuilder;
153 ········//···128:·astore··········6147 ········//···117:·astore··········14
154 ········//···130:·aload···········6148 ········//···119:·aload···········14
155 ········//···132:·invokespecial···java/lang/StringBuilder.<init>:()V149 ········//···121:·invokespecial···java/lang/StringBuilder.<init>:()V
156 ········//···135:·aload···········6 
157 ········//···137:·aload···········13 
158 ········//···139:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; 
159 ········//···142:·astore··········6 
160 ········//···144:·ldc·············"·directory·stat·(my·UID:·" 
161 ········//···146:·astore··········16 
162 ········//···148:·aload···········6150 ········//···124:·aload···········14
163 ········//···150:·aload···········16151 ········//···126:·aload···········10
164 ········//···152:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;152 ········//···128:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
165 ········//···155:·astore··········6 
166 ········//···157:·aload···········6 
167 ········//···159:·iload···········9 
168 ········//···161:·invokevirtual···java/lang/StringBuilder.append:(I)Ljava/lang/StringBuilder; 
169 ········//···164:·astore··········6 
170 ········//···166:·aload···········6 
171 ········//···168:·invokevirtual···java/lang/StringBuilder.toString:()Ljava/lang/String; 
172 ········//···171:·astore··········6153 ········//···131:·astore··········14
 154 ········//···133:·ldc·············"·directory·stat·(my·UID:·"
 155 ········//···135:·astore··········15
173 ········//···173:·aload···········8156 ········//···137:·aload···········14
174 ········//···175:·aload···········6 
175 ········//···177:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; 
176 ········//···180:·pop············ 
177 ········//···181:·aload···········15157 ········//···139:·aload···········15
178 ········//···183:·ifnonnull·······309 
179 ········//···186:·ldc·············"):·" 
180 ········//···188:·astore··········6 
181 ········//···190:·aload···········8 
182 ········//···192:·aload···········6 
183 ········//···194:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;158 ········//···141:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
 159 ········//···144:·astore··········14
 160 ········//···146:·aload···········14
 161 ········//···148:·iload···········7
 162 ········//···150:·invokevirtual···java/lang/StringBuilder.append:(I)Ljava/lang/StringBuilder;
 163 ········//···153:·astore··········14
 164 ········//···155:·aload···········14
 165 ········//···157:·invokevirtual···java/lang/StringBuilder.toString:()Ljava/lang/String;
 166 ········//···160:·astore··········14
 167 ········//···162:·aload···········6
 168 ········//···164:·aload···········14
 169 ········//···166:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
184 ········//···197:·pop············170 ········//···169:·pop············
 171 ········//···170:·aload···········12
 172 ········//···172:·ifnonnull·······298
 173 ········//···175:·ldc·············"):·"
 174 ········//···177:·astore··········14
 175 ········//···179:·aload···········6
 176 ········//···181:·aload···········14
 177 ········//···183:·invokevirtual···java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
 178 ········//···186:·pop············
185 ········//···198:·new·············Ljava/lang/StringBuilder;179 ········//···187:·new·············Ljava/lang/StringBuilder;
186 ········//···201:·astore··········6180 ········//···190:·astore··········14
187 ········//···203:·aload···········6181 ········//···192:·aload···········14
188 ········//···205:·invokespecial···java/lang/StringBuilder.<init>:()V182 ········//···194:·invokespecial···java/lang/StringBuilder.<init>:()V
189 ········//···208:·aload···········14183 ········//···197:·aload···········11
190 ········//···210:·invokevirtual···com/google/android/apps/authenticator/FileUtilities$StatStruct.toString:()Ljava/lang/String;184 ········//···199:·invokevirtual···com/google/android/apps/authenticator/FileUtilities$StatStruct.toString:()Ljava/lang/String;
191 ········//···213:·astore··········16 
192 ········//···215:·aload···········6 
Max diff block lines reached; 5238/24371 bytes (21.49%) of diff not shown.
10.0 KB
com/google/android/apps/authenticator/AuthenticatorActivity.class
9.9 KB
procyon -ec {}
    
Offset 414, 16 lines modifiedOffset 414, 16 lines modified
414 ················break;414 ················break;
415 ············}415 ············}
416 ········}416 ········}
417 ········return·onContextItemSelected;417 ········return·onContextItemSelected;
418 ····}418 ····}
419 ····419 ····
420 ····public·void·onCreate(final·Bundle·bundle)·{420 ····public·void·onCreate(final·Bundle·bundle)·{
421 ········int·visibility·=·0; 
422 ········final·int·visibility2·=·8;421 ········final·int·visibility·=·8;
 422 ········int·visibility2·=·0;
423 ········super.onCreate(bundle);423 ········super.onCreate(bundle);
424 ········this.mAccountDb·=·DependencyInjector.getAccountDb();424 ········this.mAccountDb·=·DependencyInjector.getAccountDb();
425 ········this.mOtpProvider·=·DependencyInjector.getOtpProvider();425 ········this.mOtpProvider·=·DependencyInjector.getOtpProvider();
426 ········this.setTitle(2131099648);426 ········this.setTitle(2131099648);
427 ········this.mTotpCounter·=·this.mOtpProvider.getTotpCounter();427 ········this.mTotpCounter·=·this.mOtpProvider.getTotpCounter();
428 ········this.mTotpClock·=·this.mOtpProvider.getTotpClock();428 ········this.mTotpClock·=·this.mOtpProvider.getTotpClock();
429 ········this.setContentView(2130903046);429 ········this.setContentView(2130903046);
Offset 444, 31 lines modifiedOffset 444, 31 lines modified
444 ········}444 ········}
445 ········this.mUserList·=·(ListView)this.findViewById(2131361808);445 ········this.mUserList·=·(ListView)this.findViewById(2131361808);
446 ········this.mContentNoAccounts·=·this.findViewById(2131361803);446 ········this.mContentNoAccounts·=·this.findViewById(2131361803);
447 ········this.mContentAccountsPresent·=·this.findViewById(2131361806);447 ········this.mContentAccountsPresent·=·this.findViewById(2131361806);
448 ········final·View·mContentNoAccounts·=·this.mContentNoAccounts;448 ········final·View·mContentNoAccounts·=·this.mContentNoAccounts;
449 ········int·visibility3;449 ········int·visibility3;
450 ········if·(this.mUsers.length·>·0)·{450 ········if·(this.mUsers.length·>·0)·{
451 ············visibility3·=·visibility2;451 ············visibility3·=·visibility;
452 ········}452 ········}
453 ········else·{453 ········else·{
454 ············visibility3·=·0;454 ············visibility3·=·0;
455 ········}455 ········}
456 ········mContentNoAccounts.setVisibility(visibility3);456 ········mContentNoAccounts.setVisibility(visibility3);
457 ········final·View·mContentAccountsPresent·=·this.mContentAccountsPresent;457 ········final·View·mContentAccountsPresent·=·this.mContentAccountsPresent;
458 ········if·(this.mUsers.length·<=·0)·{458 ········if·(this.mUsers.length·<=·0)·{
459 ············visibility·=·visibility2;459 ············visibility2·=·visibility;
460 ········}460 ········}
461 ········mContentAccountsPresent.setVisibility(visibility);461 ········mContentAccountsPresent.setVisibility(visibility2);
462 ········((TextView)this.findViewById(2131361802)).setText((CharSequence)Html.fromHtml(this.getString(2131099716)));462 ········((TextView)this.findViewById(2131361802)).setText((CharSequence)Html.fromHtml(this.getString(2131099716)));
463 ········this.findViewById(2131361804).setOnClickListener((View$OnClickListener)new·AuthenticatorActivity$1(this));463 ········this.findViewById(2131361804).setOnClickListener((View$OnClickListener)new·AuthenticatorActivity$1(this));
464 ········this.findViewById(2131361805).setOnClickListener((View$OnClickListener)new·AuthenticatorActivity$2(this));464 ········this.findViewById(2131361805).setOnClickListener((View$OnClickListener)new·AuthenticatorActivity$2(this));
465 ········this.mEnterPinPrompt·=·(TextView)this.findViewById(2131361807);465 ········this.mEnterPinPrompt·=·(TextView)this.findViewById(2131361807);
466 ········this.mUserAdapter·=·new·AuthenticatorActivity$PinListAdapter(this,·(Context)this,·2130903050,·this.mUsers);466 ········this.mUserAdapter·=·new·AuthenticatorActivity$PinListAdapter(this,·(Context)this,·2130903050,·this.mUsers);
467 ········this.mUserList.setVisibility(visibility2);467 ········this.mUserList.setVisibility(visibility);
468 ········this.mUserList.setAdapter((ListAdapter)this.mUserAdapter);468 ········this.mUserList.setAdapter((ListAdapter)this.mUserAdapter);
469 ········this.mUserList.setOnItemClickListener((AdapterView$OnItemClickListener)new·AuthenticatorActivity$3(this));469 ········this.mUserList.setOnItemClickListener((AdapterView$OnItemClickListener)new·AuthenticatorActivity$3(this));
470 ········if·(bundle·==·null)·{470 ········if·(bundle·==·null)·{
471 ············DependencyInjector.getOptionalFeatures().onAuthenticatorActivityCreated(this);471 ············DependencyInjector.getOptionalFeatures().onAuthenticatorActivityCreated(this);
472 ············this.importDataFromOldAppIfNecessary();472 ············this.importDataFromOldAppIfNecessary();
473 ············this.handleIntent(this.getIntent());473 ············this.handleIntent(this.getIntent());
474 ········}474 ········}
Offset 623, 70 lines modifiedOffset 623, 69 lines modified
623 ····················while·(true)·{623 ····················while·(true)·{
624 ························Label_0136:·{624 ························Label_0136:·{
625 ····························if·(index·>=·size)·{625 ····························if·(index·>=·size)·{
626 ································break·Label_0136;626 ································break·Label_0136;
627 ····························}627 ····························}
628 ····························final·String·s·=·(String)list.get(index);628 ····························final·String·s·=·(String)list.get(index);
629 ····························final·int·n2·=·index;629 ····························final·int·n2·=·index;
630 ························Label_0263_Outer: 
631 ····························while·(true)·{630 ····························while·(true)·{
632 ································try·{631 ································try·{
633 ····································this.computeAndDisplayPin(s,·n2,·false);632 ····································this.computeAndDisplayPin(s,·n2,·false);
634 ····································++index;633 ····································++index;
635 ····································continue·Label_0121_Outer;634 ····································continue·Label_0121_Outer;
636 ····································//·iftrue(Label_0193:,·n·==·0) 
637 ····································//·iftrue(Label_0326:,·this.mUsers.length·<=·0) 
638 ····································//·iftrue(Label_0335:,·this.mUsers.length·<=·0) 
639 ····································//·iftrue(Label_0238:,·this.mUserList.getVisibility()·==·0)635 ····································View·mContentAccountsPresent;
 636 ····································int·visibility3·=·0;
 637 ····································View·mContentNoAccounts·=·null;
 638 ····································Block_7_Outer:Label_0292_Outer:
640 ····································while·(true)·{639 ····································while·(true)·{
641 ····································Block_9: 
642 ········································while·(true)·{ 
643 ············································this.mUserList.setVisibility(0);640 ········································this.mUserList.setVisibility(0);
644 ············································this.registerForContextMenu((View)this.mUserList);641 ········································this.registerForContextMenu((View)this.mUserList);
645 ············································Label_0193:·{642 ········································Label_0193:·{
646 ················································final·View·mContentAccountsPresent;643 ············································while·(true)·{
647 ················································Label_0292:·{644 ············································Label_0263:
 645 ················································while·(true)·{
648 ····················································Label_0238:·{646 ····················································Label_0238:·{
649 ························································break·Label_0238;647 ························································break·Label_0238;
650 ························································Label_0335:·{ 
651 ····························································visibility2·=·visibility; 
652 ························································} 
653 ························································break·Label_0292; 
654 ························································Block_7:·{ 
655 ····························································break·Block_7; 
656 ····························································this.mUsers·=·new·AuthenticatorActivity$PinInfo[0]; 
657 ····························································this.mUserList.setVisibility(visibility); 
658 ····························································break·Label_0238; 
659 ························································} 
660 ························································this.mUserAdapter·=·new·AuthenticatorActivity$PinListAdapter(this,·(Context)this,·2130903050,·this.mUsers);648 ························································this.mUserAdapter·=·new·AuthenticatorActivity$PinListAdapter(this,·(Context)this,·2130903050,·this.mUsers);
661 ························································this.mUserList.setAdapter((ListAdapter)this.mUserAdapter);649 ························································this.mUserList.setAdapter((ListAdapter)this.mUserAdapter);
662 ························································break·Label_0193;650 ························································break·Label_0193;
 651 ························································mContentAccountsPresent.setVisibility(visibility2);
 652 ························································return;
 653 ························································this.mUsers·=·new·AuthenticatorActivity$PinInfo[0];
 654 ························································this.mUserList.setVisibility(visibility);
 655 ························································break·Label_0238;
 656 ························································Label_0326:·{
 657 ····························································visibility3·=·0;
 658 ························································}
 659 ························································break·Label_0263;
 660 ························································n·=·0;
 661 ························································continue·Label_0087_Outer;
663 ····················································}662 ····················································}
664 ····················································final·View·mContentNoAccounts·=·this.mContentNoAccounts;663 ····················································mContentNoAccounts·=·this.mContentNoAccounts;
 664 ····················································visibility3·=·visibility;
665 ····················································break·Block_9;665 ····················································break·Label_0263;
666 ····················································n·=·0; 
667 ····················································continue·Label_0087_Outer;666 ····················································continue·Label_0292_Outer;
668 ····················································final·int·visibility3; 
669 ····················································mContentNoAccounts.setVisibility(visibility3); 
670 ····················································mContentAccountsPresent·=·this.mContentAccountsPresent; 
671 ················································}667 ················································}
672 ················································mContentAccountsPresent.setVisibility(visibility2);668 ················································mContentNoAccounts.setVisibility(visibility3);
 669 ················································mContentAccountsPresent·=·this.mContentAccountsPresent;
 670 ················································continue;
 671 ················································Label_0335:·{
 672 ····················································visibility2·=·visibility;
673 ················································return;673 ················································}
 674 ················································continue;
674 ············································}675 ············································}
675 ············································this.mUserAdapter.notifyDataSetChanged(); 
676 ············································continue·Label_0263_Outer; 
677 ········································} 
678 ········································int·visibility3·=·visibility; 
Max diff block lines reached; 869/10112 bytes (8.59%) of diff not shown.
14.1 KB
com/google/android/apps/authenticator/Base32String.class
14.0 KB
javap -verbose -constants -s -l -private {}
    
Offset 327, 198 lines modifiedOffset 327, 200 lines modified
327 ·········8:·aload_1327 ·········8:·aload_1
328 ·········9:·athrow328 ·········9:·athrow
  
329 ··protected·byte[]·decodeInternal(java.lang.String);329 ··protected·byte[]·decodeInternal(java.lang.String);
330 ····descriptor:·(Ljava/lang/String;)[B330 ····descriptor:·(Ljava/lang/String;)[B
331 ····flags:·(0x0004)·ACC_PROTECTED331 ····flags:·(0x0004)·ACC_PROTECTED
332 ····Code:332 ····Code:
333 ······stack=300,·locals=18,·args_size=2333 ······stack=300,·locals=19,·args_size=2
 334 ·········0:·iconst_0
 335 ·········1:·istore_2
 336 ·········2:·aconst_null
 337 ·········3:·astore_3
334 ·········0:·aload_1338 ·········4:·aload_1
335 ·········1:·invokevirtual·#87·················//·Method·java/lang/String.trim:()Ljava/lang/String;339 ·········5:·invokevirtual·#87·················//·Method·java/lang/String.trim:()Ljava/lang/String;
336 ·········4:·ldc···········#11·················//·String·-340 ·········8:·ldc···········#11·················//·String·-
337 ·········6:·ldc···········#89·················//·String 
338 ·········8:·invokevirtual·#93·················//·Method·java/lang/String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; 
339 ········11:·astore_2 
340 ········12:·ldc···········#89·················//·String341 ········10:·ldc···········#89·················//·String
341 ········14:·astore_3 
342 ········15:·aload_2 
343 ········16:·ldc···········#95·················//·String 
344 ········18:·aload_3 
345 ········19:·invokevirtual·#93·················//·Method·java/lang/String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;342 ········12:·invokevirtual·#93·················//·Method·java/lang/String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
346 ········22:·astore_1343 ········15:·astore········4
 344 ········17:·ldc···········#89·················//·String
 345 ········19:·astore········5
 346 ········21:·aload·········4
347 ········23:·ldc···········#89·················//·String347 ········23:·ldc···········#95·················//·String
 348 ········25:·aload·········5
 349 ········27:·invokevirtual·#93·················//·Method·java/lang/String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
 350 ········30:·astore_1
 351 ········31:·ldc···········#89·················//·String
348 ········25:·astore········4352 ········33:·astore········6
349 ········27:·aload_1353 ········35:·aload_1
350 ········28:·ldc···········#97·················//·String·[=]*$354 ········36:·ldc···········#97·················//·String·[=]*$
351 ········30:·aload·········4355 ········38:·aload·········6
352 ········32:·invokevirtual·#100················//·Method·java/lang/String.replaceFirst:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;356 ········40:·invokevirtual·#100················//·Method·java/lang/String.replaceFirst:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
353 ········35:·astore_1357 ········43:·astore_1
354 ········36:·getstatic·····#106················//·Field·java/util/Locale.US:Ljava/util/Locale;358 ········44:·getstatic·····#106················//·Field·java/util/Locale.US:Ljava/util/Locale;
355 ········39:·astore_2359 ········47:·astore········4
356 ········40:·aload_1360 ········49:·aload_1
357 ········41:·aload_2361 ········50:·aload·········4
358 ········42:·invokevirtual·#110················//·Method·java/lang/String.toUpperCase:(Ljava/util/Locale;)Ljava/lang/String;362 ········52:·invokevirtual·#110················//·Method·java/lang/String.toUpperCase:(Ljava/util/Locale;)Ljava/lang/String;
359 ········45:·astore_1363 ········55:·astore_1
360 ········46:·aload_1364 ········56:·aload_1
361 ········47:·invokevirtual·#114················//·Method·java/lang/String.length:()I365 ········57:·invokevirtual·#114················//·Method·java/lang/String.length:()I
362 ········50:·istore········5366 ········60:·istore········7
363 ········52:·iload·········5367 ········62:·iload·········7
364 ········54:·ifne··········70368 ········64:·ifne··········75
365 ········57:·iconst_0369 ········67:·iconst_0
366 ········58:·istore········5 
367 ········60:·aconst_null 
368 ········61:·astore_2 
369 ········62:·iconst_0 
370 ········63:·newarray·······byte370 ········68:·newarray·······byte
371 ········65:·astore········6371 ········70:·astore········8
372 ········67:·aload·········6372 ········72:·aload·········8
373 ········69:·areturn373 ········74:·areturn
374 ········70:·aload_1374 ········75:·aload_1
375 ········71:·invokevirtual·#114················//·Method·java/lang/String.length:()I375 ········76:·invokevirtual·#114················//·Method·java/lang/String.length:()I
376 ········74:·istore········7376 ········79:·istore········9
377 ········76:·aload_0377 ········81:·aload_0
378 ········77:·getfield······#50·················//·Field·SHIFT:I378 ········82:·getfield······#50·················//·Field·SHIFT:I
379 ········80:·iload·········7 
380 ········82:·imul 
381 ········83:·istore········5 
382 ········85:·iload·········5379 ········85:·iload·········9
 380 ········87:·imul
383 ········87:·bipush········8381 ········88:·bipush········8
384 ········89:·idiv382 ········90:·idiv
385 ········90:·istore········8383 ········91:·istore········10
386 ········92:·iload·········8384 ········93:·iload·········10
387 ········94:·newarray·······byte385 ········95:·newarray·······byte
388 ········96:·astore········6386 ········97:·astore········8
389 ········98:·iconst_0387 ········99:·iconst_0
390 ········99:·istore········9 
391 ·······101:·iconst_0 
392 ·······102:·istore········10 
393 ·······104:·iconst_0 
394 ·······105:·istore········11388 ·······100:·istore········11
 389 ·······102:·iconst_0
 390 ·······103:·istore········12
 391 ·······105:·iconst_0
 392 ·······106:·istore········13
395 ·······107:·aload_1393 ·······108:·aload_1
396 ·······108:·invokevirtual·#38·················//·Method·java/lang/String.toCharArray:()[C394 ·······109:·invokevirtual·#38·················//·Method·java/lang/String.toCharArray:()[C
397 ·······111:·astore········12395 ·······112:·astore········6
398 ·······113:·aload·········12396 ·······114:·aload·········6
399 ·······115:·arraylength397 ·······116:·arraylength
400 ·······116:·istore········13 
401 ·······118:·iconst_0 
402 ·······119:·istore········14398 ·······117:·istore········14
403 ·······121:·iconst_0399 ·······119:·iconst_0
 400 ·······120:·istore········7
 401 ·······122:·aconst_null
 402 ·······123:·astore········4
 403 ·······125:·iconst_0
404 ·······122:·istore········15404 ·······126:·istore········15
405 ·······124:·iload·········14405 ·······128:·iload·········7
406 ·······126:·iload·········13 
407 ·······128:·if_icmpge·····67 
408 ·······131:·aload·········12 
409 ·······133:·iload·········14406 ·······130:·iload·········14
 407 ·······132:·if_icmpge·····72
 408 ·······135:·aload·········6
 409 ·······137:·iload·········7
410 ·······135:·caload410 ·······139:·caload
411 ·······136:·istore········16411 ·······140:·istore········16
412 ·······138:·aload_0412 ·······142:·aload_0
413 ·······139:·getfield······#55·················//·Field·CHAR_MAP:Ljava/util/HashMap;413 ·······143:·getfield······#55·················//·Field·CHAR_MAP:Ljava/util/HashMap;
414 ·······142:·astore_2414 ·······146:·astore_3
415 ·······143:·iload·········16415 ·······147:·iload·········16
416 ·······145:·invokestatic··#61·················//·Method·java/lang/Character.valueOf:(C)Ljava/lang/Character;416 ·······149:·invokestatic··#61·················//·Method·java/lang/Character.valueOf:(C)Ljava/lang/Character;
417 ·······148:·astore········4417 ·······152:·astore········17
418 ·······150:·aload_2418 ·······154:·aload_3
419 ·······151:·aload·········4419 ·······155:·aload·········17
420 ·······153:·invokevirtual·#118················//·Method·java/util/HashMap.containsKey:(Ljava/lang/Object;)Z420 ·······157:·invokevirtual·#118················//·Method·java/util/HashMap.containsKey:(Ljava/lang/Object;)Z
421 ·······156:·istore········5 
422 ·······158:·iload·········5421 ·······160:·istore_2
 422 ·······161:·iload_2
423 ·······160:·ifne··········202423 ·······162:·ifne··········204
424 ·······163:·new···········#120················//·class·com/google/android/apps/authenticator/Base32String$DecodingException424 ·······165:·new···········#120················//·class·com/google/android/apps/authenticator/Base32String$DecodingException
425 ·······166:·astore_2425 ·······168:·astore_3
426 ·······167:·new···········#122················//·class·java/lang/StringBuilder426 ·······169:·new···········#122················//·class·java/lang/StringBuilder
427 ·······170:·astore········4427 ·······172:·astore········4
428 ·······172:·aload·········4428 ·······174:·aload·········4
Max diff block lines reached; 4133/14220 bytes (29.06%) of diff not shown.
4.13 KB
com/google/android/apps/authenticator/HexEncoding.class
4.02 KB
javap -verbose -constants -s -l -private {}
    
Offset 201, 77 lines modifiedOffset 201, 75 lines modified
201 ·······137:·aload_2201 ·······137:·aload_2
202 ·······138:·areturn202 ·······138:·areturn
  
203 ··public·static·java.lang.String·encode(byte[]);203 ··public·static·java.lang.String·encode(byte[]);
204 ····descriptor:·([B)Ljava/lang/String;204 ····descriptor:·([B)Ljava/lang/String;
205 ····flags:·(0x0009)·ACC_PUBLIC,·ACC_STATIC205 ····flags:·(0x0009)·ACC_PUBLIC,·ACC_STATIC
206 ····Code:206 ····Code:
207 ······stack=300,·locals=9,·args_size=1207 ······stack=300,·locals=8,·args_size=1
208 ·········0:·new···········#34·················//·class·java/lang/StringBuilder208 ·········0:·new···········#34·················//·class·java/lang/StringBuilder
209 ·········3:·astore_1209 ·········3:·astore_1
210 ·········4:·aload_0210 ·········4:·aload_0
211 ·········5:·arraylength211 ·········5:·arraylength
212 ·········6:·iconst_2212 ·········6:·iconst_2
213 ·········7:·imul213 ·········7:·imul
214 ·········8:·istore_2214 ·········8:·istore_2
215 ·········9:·aload_1215 ·········9:·aload_1
216 ········10:·iload_2216 ········10:·iload_2
217 ········11:·invokespecial·#37·················//·Method·java/lang/StringBuilder."<init>":(I)V217 ········11:·invokespecial·#37·················//·Method·java/lang/StringBuilder."<init>":(I)V
218 ········14:·aload_0218 ········14:·aload_0
219 ········15:·astore_3 
220 ········16:·aload_0 
221 ········17:·arraylength219 ········15:·arraylength
222 ········18:·istore········4220 ········16:·istore_3
223 ········20:·iconst_0221 ········17:·iconst_0
224 ········21:·istore········5 
225 ········23:·iload·········5 
226 ········25:·iload·········4222 ········18:·istore_2
 223 ········19:·iload_2
 224 ········20:·iload_3
227 ········27:·if_icmpge·····95225 ········21:·if_icmpge·····90
228 ········30:·aload_3226 ········24:·aload_0
229 ········31:·iload·········5227 ········25:·iload_2
230 ········33:·baload228 ········26:·baload
231 ········34:·istore········6229 ········27:·istore········4
232 ········36:·getstatic·····#16·················//·Field·HEX_DIGITS:[C230 ········29:·getstatic·····#16·················//·Field·HEX_DIGITS:[C
233 ········39:·astore········7231 ········32:·astore········5
 232 ········34:·iload·········4
 233 ········36:·iconst_4
 234 ········37:·iushr
 235 ········38:·bipush········15
 236 ········40:·iand
 237 ········41:·istore········6
 238 ········43:·aload·········5
234 ········41:·iload·········6239 ········45:·iload·········6
235 ········43:·iconst_4 
236 ········44:·iushr 
237 ········45:·bipush········15 
238 ········47:·iand240 ········47:·caload
239 ········48:·istore········8241 ········48:·istore········7
240 ········50:·aload·········7 
241 ········52:·iload·········8 
242 ········54:·caload 
243 ········55:·istore_2 
244 ········56:·aload_1242 ········50:·aload_1
245 ········57:·iload_2243 ········51:·iload·········7
246 ········58:·invokevirtual·#41·················//·Method·java/lang/StringBuilder.append:(C)Ljava/lang/StringBuilder;244 ········53:·invokevirtual·#41·················//·Method·java/lang/StringBuilder.append:(C)Ljava/lang/StringBuilder;
247 ········61:·pop245 ········56:·pop
248 ········62:·getstatic·····#16·················//·Field·HEX_DIGITS:[C246 ········57:·getstatic·····#16·················//·Field·HEX_DIGITS:[C
249 ········65:·astore········7247 ········60:·astore········5
250 ········67:·iload·········6248 ········62:·iload·········4
251 ········69:·bipush········15249 ········64:·bipush········15
252 ········71:·iand250 ········66:·iand
253 ········72:·istore········8251 ········67:·istore········6
254 ········74:·aload·········7252 ········69:·aload·········5
255 ········76:·iload·········8253 ········71:·iload·········6
256 ········78:·caload254 ········73:·caload
257 ········79:·istore_2255 ········74:·istore········7
258 ········80:·aload_1256 ········76:·aload_1
259 ········81:·iload_2257 ········77:·iload·········7
260 ········82:·invokevirtual·#41·················//·Method·java/lang/StringBuilder.append:(C)Ljava/lang/StringBuilder;258 ········79:·invokevirtual·#41·················//·Method·java/lang/StringBuilder.append:(C)Ljava/lang/StringBuilder;
261 ········85:·pop259 ········82:·pop
262 ········86:·iload·········5260 ········83:·iload_2
263 ········88:·iconst_1261 ········84:·iconst_1
264 ········89:·iadd262 ········85:·iadd
265 ········90:·istore········5263 ········86:·istore_2
266 ········92:·goto··········23264 ········87:·goto··········19
267 ········95:·aload_1265 ········90:·aload_1
268 ········96:·invokevirtual·#45·················//·Method·java/lang/StringBuilder.toString:()Ljava/lang/String;266 ········91:·invokevirtual·#45·················//·Method·java/lang/StringBuilder.toString:()Ljava/lang/String;
269 ········99:·areturn267 ········94:·areturn
  
270 ··private·static·int·getHexadecimalDigitValue(char);268 ··private·static·int·getHexadecimalDigitValue(char);
271 ····descriptor:·(C)I269 ····descriptor:·(C)I
272 ····flags:·(0x000a)·ACC_PRIVATE,·ACC_STATIC270 ····flags:·(0x000a)·ACC_PRIVATE,·ACC_STATIC
273 ····Code:271 ····Code:
274 ······stack=300,·locals=5,·args_size=1272 ······stack=300,·locals=5,·args_size=1
275 ·········0:·bipush········97273 ·········0:·bipush········97
10.5 KB
com/google/android/apps/authenticator/dataimport/Importer.class
10.4 KB
javap -verbose -constants -s -l -private {}
    
Offset 596, 122 lines modifiedOffset 596, 120 lines modified
596 ·········8:·ifeq··········0596 ·········8:·ifeq··········0
597 ········11:·return597 ········11:·return
  
598 ··private·boolean·tryImportPreferencesFromBundle(android.os.Bundle,·android.content.SharedPreferences);598 ··private·boolean·tryImportPreferencesFromBundle(android.os.Bundle,·android.content.SharedPreferences);
599 ····descriptor:·(Landroid/os/Bundle;Landroid/content/SharedPreferences;)Z599 ····descriptor:·(Landroid/os/Bundle;Landroid/content/SharedPreferences;)Z
600 ····flags:·(0x0002)·ACC_PRIVATE600 ····flags:·(0x0002)·ACC_PRIVATE
601 ····Code:601 ····Code:
602 ······stack=300,·locals=12,·args_size=3602 ······stack=300,·locals=11,·args_size=3
603 ·········0:·aload_2603 ·········0:·aload_2
604 ·········1:·invokeinterface·#179,··1··········//·InterfaceMethod·android/content/SharedPreferences.edit:()Landroid/content/SharedPreferences$Editor;604 ·········1:·invokeinterface·#179,··1··········//·InterfaceMethod·android/content/SharedPreferences.edit:()Landroid/content/SharedPreferences$Editor;
605 ·········6:·astore_3605 ·········6:·astore_3
606 ·········7:·aload_1606 ·········7:·aload_1
607 ·········8:·invokevirtual·#45·················//·Method·android/os/Bundle.keySet:()Ljava/util/Set;607 ·········8:·invokevirtual·#45·················//·Method·android/os/Bundle.keySet:()Ljava/util/Set;
608 ········11:·astore········4 
609 ········13:·aload·········4 
610 ········15:·invokeinterface·#182,··1··········//·InterfaceMethod·java/util/Set.iterator:()Ljava/util/Iterator;608 ········11:·invokeinterface·#182,··1··········//·InterfaceMethod·java/util/Set.iterator:()Ljava/util/Iterator;
611 ········20:·astore········5609 ········16:·astore········4
612 ········22:·aload·········5610 ········18:·aload·········4
613 ········24:·invokeinterface·#71,··1···········//·InterfaceMethod·java/util/Iterator.hasNext:()Z611 ········20:·invokeinterface·#71,··1···········//·InterfaceMethod·java/util/Iterator.hasNext:()Z
614 ········29:·istore········6612 ········25:·istore········5
615 ········31:·iload·········6613 ········27:·iload·········5
616 ········33:·ifeq··········249614 ········29:·ifeq··········245
617 ········36:·aload·········5615 ········32:·aload·········4
618 ········38:·invokeinterface·#75,··1···········//·InterfaceMethod·java/util/Iterator.next:()Ljava/lang/Object;616 ········34:·invokeinterface·#75,··1···········//·InterfaceMethod·java/util/Iterator.next:()Ljava/lang/Object;
619 ········43:·checkcast·····#77·················//·class·java/lang/String617 ········39:·checkcast·····#77·················//·class·java/lang/String
620 ········46:·astore········7618 ········42:·astore········6
621 ········48:·aload_1619 ········44:·aload_1
622 ········49:·aload·········7620 ········45:·aload·········6
623 ········51:·invokevirtual·#186················//·Method·android/os/Bundle.get:(Ljava/lang/String;)Ljava/lang/Object;621 ········47:·invokevirtual·#186················//·Method·android/os/Bundle.get:(Ljava/lang/String;)Ljava/lang/Object;
624 ········54:·astore········8622 ········50:·astore········7
625 ········56:·aload·········8623 ········52:·aload·········7
626 ········58:·instanceof····#188················//·class·java/lang/Boolean624 ········54:·instanceof····#188················//·class·java/lang/Boolean
627 ········61:·istore········6625 ········57:·istore········5
628 ········63:·iload·········6626 ········59:·iload·········5
629 ········65:·ifeq··········96627 ········61:·ifeq··········92
630 ········68:·aload·········8628 ········64:·aload·········7
631 ········70:·checkcast·····#188················//·class·java/lang/Boolean629 ········66:·checkcast·····#188················//·class·java/lang/Boolean
632 ········73:·astore········8630 ········69:·astore········7
633 ········75:·aload·········8631 ········71:·aload·········7
634 ········77:·invokevirtual·#191················//·Method·java/lang/Boolean.booleanValue:()Z632 ········73:·invokevirtual·#191················//·Method·java/lang/Boolean.booleanValue:()Z
635 ········80:·istore········6633 ········76:·istore········5
636 ········82:·aload_3634 ········78:·aload_3
637 ········83:·aload·········7635 ········79:·aload·········6
638 ········85:·iload·········6636 ········81:·iload·········5
639 ········87:·invokeinterface·#197,··3··········//·InterfaceMethod·android/content/SharedPreferences$Editor.putBoolean:(Ljava/lang/String;Z)Landroid/content/SharedPreferences$Editor;637 ········83:·invokeinterface·#197,··3··········//·InterfaceMethod·android/content/SharedPreferences$Editor.putBoolean:(Ljava/lang/String;Z)Landroid/content/SharedPreferences$Editor;
640 ········92:·pop638 ········88:·pop
641 ········93:·goto··········22639 ········89:·goto··········18
642 ········96:·aload·········8640 ········92:·aload·········7
643 ········98:·instanceof····#199················//·class·java/lang/Float641 ········94:·instanceof····#199················//·class·java/lang/Float
644 ·······101:·istore········6642 ········97:·istore········5
645 ·······103:·iload·········6643 ········99:·iload·········5
646 ·······105:·ifeq··········136644 ·······101:·ifeq··········132
647 ·······108:·aload·········8645 ·······104:·aload·········7
648 ·······110:·checkcast·····#199················//·class·java/lang/Float646 ·······106:·checkcast·····#199················//·class·java/lang/Float
649 ·······113:·astore········8647 ·······109:·astore········7
650 ·······115:·aload·········8648 ·······111:·aload·········7
651 ·······117:·invokevirtual·#203················//·Method·java/lang/Float.floatValue:()F649 ·······113:·invokevirtual·#203················//·Method·java/lang/Float.floatValue:()F
652 ·······120:·fstore········9650 ·······116:·fstore········8
653 ·······122:·aload_3651 ·······118:·aload_3
654 ·······123:·aload·········7652 ·······119:·aload·········6
655 ·······125:·fload·········9653 ·······121:·fload·········8
656 ·······127:·invokeinterface·#207,··3··········//·InterfaceMethod·android/content/SharedPreferences$Editor.putFloat:(Ljava/lang/String;F)Landroid/content/SharedPreferences$Editor;654 ·······123:·invokeinterface·#207,··3··········//·InterfaceMethod·android/content/SharedPreferences$Editor.putFloat:(Ljava/lang/String;F)Landroid/content/SharedPreferences$Editor;
657 ·······132:·pop655 ·······128:·pop
658 ·······133:·goto··········22656 ·······129:·goto··········18
659 ·······136:·aload·········8657 ·······132:·aload·········7
660 ·······138:·instanceof····#136················//·class·java/lang/Integer658 ·······134:·instanceof····#136················//·class·java/lang/Integer
661 ·······141:·istore········6659 ·······137:·istore········5
662 ·······143:·iload·········6660 ·······139:·iload·········5
663 ·······145:·ifeq··········176661 ·······141:·ifeq··········172
664 ·······148:·aload·········8662 ·······144:·aload·········7
665 ·······150:·checkcast·····#136················//·class·java/lang/Integer663 ·······146:·checkcast·····#136················//·class·java/lang/Integer
666 ·······153:·astore········8664 ·······149:·astore········7
667 ·······155:·aload·········8665 ·······151:·aload·········7
668 ·······157:·invokevirtual·#211················//·Method·java/lang/Integer.intValue:()I666 ·······153:·invokevirtual·#211················//·Method·java/lang/Integer.intValue:()I
669 ·······160:·istore········6667 ·······156:·istore········5
670 ·······162:·aload_3668 ·······158:·aload_3
671 ·······163:·aload·········7 
672 ·······165:·iload·········6669 ·······159:·aload·········6
 670 ·······161:·iload·········5
673 ·······167:·invokeinterface·#215,··3··········//·InterfaceMethod·android/content/SharedPreferences$Editor.putInt:(Ljava/lang/String;I)Landroid/content/SharedPreferences$Editor;671 ·······163:·invokeinterface·#215,··3··········//·InterfaceMethod·android/content/SharedPreferences$Editor.putInt:(Ljava/lang/String;I)Landroid/content/SharedPreferences$Editor;
674 ·······172:·pop672 ·······168:·pop
675 ·······173:·goto··········22673 ·······169:·goto··········18
676 ·······176:·aload·········8674 ·······172:·aload·········7
677 ·······178:·instanceof····#217················//·class·java/lang/Long675 ·······174:·instanceof····#217················//·class·java/lang/Long
678 ·······181:·istore········6676 ·······177:·istore········5
679 ·······183:·iload·········6677 ·······179:·iload·········5
680 ·······185:·ifeq··········216678 ·······181:·ifeq··········212
681 ·······188:·aload·········8679 ·······184:·aload·········7
682 ·······190:·checkcast·····#217················//·class·java/lang/Long680 ·······186:·checkcast·····#217················//·class·java/lang/Long
683 ·······193:·astore········8681 ·······189:·astore········7
684 ·······195:·aload·········8682 ·······191:·aload·········7
685 ·······197:·invokevirtual·#221················//·Method·java/lang/Long.longValue:()J683 ·······193:·invokevirtual·#221················//·Method·java/lang/Long.longValue:()J
686 ·······200:·lstore········10684 ·······196:·lstore········9
687 ·······202:·aload_3685 ·······198:·aload_3
688 ·······203:·aload·········7686 ·······199:·aload·········6
689 ·······205:·lload·········10687 ·······201:·lload·········9
690 ·······207:·invokeinterface·#225,··4··········//·InterfaceMethod·android/content/SharedPreferences$Editor.putLong:(Ljava/lang/String;J)Landroid/content/SharedPreferences$Editor;688 ·······203:·invokeinterface·#225,··4··········//·InterfaceMethod·android/content/SharedPreferences$Editor.putLong:(Ljava/lang/String;J)Landroid/content/SharedPreferences$Editor;
691 ·······212:·pop689 ·······208:·pop
692 ·······213:·goto··········22690 ·······209:·goto··········18
693 ·······216:·aload·········8691 ·······212:·aload·········7
694 ·······218:·instanceof····#77·················//·class·java/lang/String692 ·······214:·instanceof····#77·················//·class·java/lang/String
695 ·······221:·istore········6693 ·······217:·istore········5
696 ·······223:·iload·········6694 ·······219:·iload·········5
697 ·······225:·ifeq··········22695 ·······221:·ifeq··········18
698 ·······228:·aload·········8696 ·······224:·aload·········7
699 ·······230:·checkcast·····#77·················//·class·java/lang/String697 ·······226:·checkcast·····#77·················//·class·java/lang/String
700 ·······233:·astore········8698 ·······229:·astore········7
701 ·······235:·aload_3699 ·······231:·aload_3
 700 ·······232:·aload·········6
702 ·······236:·aload·········7701 ·······234:·aload·········7
703 ·······238:·aload·········8 
704 ·······240:·invokeinterface·#229,··3··········//·InterfaceMethod·android/content/SharedPreferences$Editor.putString:(Ljava/lang/String;Ljava/lang/String;)Landroid/content/SharedPreferences$Editor;702 ·······236:·invokeinterface·#229,··3··········//·InterfaceMethod·android/content/SharedPreferences$Editor.putString:(Ljava/lang/String;Ljava/lang/String;)Landroid/content/SharedPreferences$Editor;
705 ·······245:·pop703 ·······241:·pop
706 ·······246:·goto··········22704 ·······242:·goto··········18
707 ·······249:·aload_3705 ·······245:·aload_3
708 ·······250:·invokeinterface·#232,··1··········//·InterfaceMethod·android/content/SharedPreferences$Editor.commit:()Z706 ·······246:·invokeinterface·#232,··1··········//·InterfaceMethod·android/content/SharedPreferences$Editor.commit:()Z
709 ·······255:·ireturn707 ·······251:·ireturn
  
710 ··public·void·importFromBundle(android.os.Bundle,·com.google.android.apps.authenticator.AccountDb,·android.content.SharedPreferences);708 ··public·void·importFromBundle(android.os.Bundle,·com.google.android.apps.authenticator.AccountDb,·android.content.SharedPreferences);
711 ····descriptor:·(Landroid/os/Bundle;Lcom/google/android/apps/authenticator/AccountDb;Landroid/content/SharedPreferences;)V709 ····descriptor:·(Landroid/os/Bundle;Lcom/google/android/apps/authenticator/AccountDb;Landroid/content/SharedPreferences;)V
712 ····flags:·(0x0001)·ACC_PUBLIC710 ····flags:·(0x0001)·ACC_PUBLIC
713 ····Code:711 ····Code:
714 ······stack=300,·locals=7,·args_size=4712 ······stack=300,·locals=7,·args_size=4
715 ·········0:·ldc···········#9··················//·String·accountDb713 ·········0:·ldc···········#9··················//·String·accountDb
2.11 KB
com/google/android/apps/authenticator/timesync/NetworkTimeProvider.class
1.97 KB
procyon -ec {}
    
Offset 183, 16 lines modifiedOffset 183, 16 lines modified
183 ········//···312:·aload_2········183 ········//···312:·aload_2········
184 ········//···313:·aload_3········184 ········//···313:·aload_3········
185 ········//···314:·invokespecial···java/io/IOException.<init>:(Ljava/lang/String;)V185 ········//···314:·invokespecial···java/io/IOException.<init>:(Ljava/lang/String;)V
186 ········//···317:·aload_2········186 ········//···317:·aload_2········
187 ········//···318:·athrow·········187 ········//···318:·athrow·········
188 ········//···319:·astore_3·······188 ········//···319:·astore_3·······
189 ········//···320:·goto············160189 ········//···320:·goto············160
190 ········//···323:·astore··········4190 ········//···323:·astore_2·······
191 ········//···325:·goto············261191 ········//···324:·goto············261
192 ········//····Exceptions:192 ········//····Exceptions:
193 ········//··Try···········Handler193 ········//··Try···········Handler
194 ········//··Start··End····Start··End····Type············································194 ········//··Start··End····Start··End····Type············································
195 ········//··-----··-----··-----··-----··------------------------------------------------195 ········//··-----··-----··-----··-----··------------------------------------------------
196 ········//··51·····55·····162····181····Lorg/apache/http/client/ClientProtocolException;196 ········//··51·····55·····162····181····Lorg/apache/http/client/ClientProtocolException;
197 ········//··51·····55·····181····217····Ljava/io/IOException;197 ········//··51·····55·····181····217····Ljava/io/IOException;
198 ········//··57·····63·····162····181····Lorg/apache/http/client/ClientProtocolException;198 ········//··57·····63·····162····181····Lorg/apache/http/client/ClientProtocolException;
Offset 211, 16 lines modifiedOffset 211, 16 lines modified
211 ········//··139····146····319····323····Ljava/io/IOException;211 ········//··139····146····319····323····Ljava/io/IOException;
212 ········//··153····160····319····323····Ljava/io/IOException;212 ········//··153····160····319····323····Ljava/io/IOException;
213 ········//··217····224····138····162····Any213 ········//··217····224····138····162····Any
214 ········//··226····231····264····319····Lorg/apache/http/impl/cookie/DateParseException;214 ········//··226····231····264····319····Lorg/apache/http/impl/cookie/DateParseException;
215 ········//··226····231····138····162····Any215 ········//··226····231····138····162····Any
216 ········//··233····238····264····319····Lorg/apache/http/impl/cookie/DateParseException;216 ········//··233····238····264····319····Lorg/apache/http/impl/cookie/DateParseException;
217 ········//··233····238····138····162····Any217 ········//··233····238····138····162····Any
218 ········//··240····247····323····328····Ljava/io/IOException;218 ········//··240····247····323····327····Ljava/io/IOException;
219 ········//··254····261····323····328····Ljava/io/IOException;219 ········//··254····261····323····327····Ljava/io/IOException;
220 ········//··266····269····138····162····Any220 ········//··266····269····138····162····Any
221 ········//··270····273····138····162····Any221 ········//··270····273····138····162····Any
222 ········//··274····278····138····162····Any222 ········//··274····278····138····162····Any
223 ········//··283····288····138····162····Any223 ········//··283····288····138····162····Any
224 ········//··290····295····138····162····Any224 ········//··290····295····138····162····Any
225 ········//··301····306····138····162····Any225 ········//··301····306····138····162····Any
226 ········//··307····311····138····162····Any226 ········//··307····311····138····162····Any
2.23 KB
smali/com/google/android/apps/authenticator/AccountDb$OtpType.smali
    
Offset 114, 54 lines modifiedOffset 114, 51 lines modified
114 ····.locals·5114 ····.locals·5
115 ····.param·p0,·"i"····#·Ljava/lang/Integer;115 ····.param·p0,·"i"····#·Ljava/lang/Integer;
  
116 ····.prologue116 ····.prologue
117 ····.line·87117 ····.line·87
118 ····invoke-static·{},·Lcom/google/android/apps/authenticator/AccountDb$OtpType;->values()[Lcom/google/android/apps/authenticator/AccountDb$OtpType;118 ····invoke-static·{},·Lcom/google/android/apps/authenticator/AccountDb$OtpType;->values()[Lcom/google/android/apps/authenticator/AccountDb$OtpType;
  
119 ····move-result-object·v0119 ····move-result-object·v2
  
120 ····.local·v0,·"arr$":[Lcom/google/android/apps/authenticator/AccountDb$OtpType; 
121 ····array-length·v2,·v0120 ····array-length·v3,·v2
  
122 ····.local·v2,·"len$":I 
123 ····const/4·v1,·0x0121 ····const/4·v1,·0x0
  
124 ····.local·v1,·"i$":I 
125 ····:goto_0122 ····:goto_0
126 ····if-ge·v1,·v2,·:cond_1123 ····if-ge·v1,·v3,·:cond_1
  
127 ····aget-object·v3,·v0,·v1124 ····aget-object·v0,·v2,·v1
  
128 ····.line·88125 ····.line·88
129 ····.local·v3,·"type":Lcom/google/android/apps/authenticator/AccountDb$OtpType;126 ····.local·v0,·"type":Lcom/google/android/apps/authenticator/AccountDb$OtpType;
130 ····iget-object·v4,·v3,·Lcom/google/android/apps/authenticator/AccountDb$OtpType;->value:Ljava/lang/Integer;127 ····iget-object·v4,·v0,·Lcom/google/android/apps/authenticator/AccountDb$OtpType;->value:Ljava/lang/Integer;
  
131 ····invoke-virtual·{v4,·p0},·Ljava/lang/Integer;->equals(Ljava/lang/Object;)Z128 ····invoke-virtual·{v4,·p0},·Ljava/lang/Integer;->equals(Ljava/lang/Object;)Z
  
132 ····move-result·v4129 ····move-result·v4
  
133 ····if-eqz·v4,·:cond_0130 ····if-eqz·v4,·:cond_0
  
134 ····.line·93131 ····.line·93
135 ····.end·local·v3····#·"type":Lcom/google/android/apps/authenticator/AccountDb$OtpType;132 ····.end·local·v0····#·"type":Lcom/google/android/apps/authenticator/AccountDb$OtpType;
136 ····:goto_1133 ····:goto_1
137 ····return-object·v3134 ····return-object·v0
  
138 ····.line·87135 ····.line·87
139 ····.restart·local·v3····#·"type":Lcom/google/android/apps/authenticator/AccountDb$OtpType;136 ····.restart·local·v0····#·"type":Lcom/google/android/apps/authenticator/AccountDb$OtpType;
140 ····:cond_0137 ····:cond_0
141 ····add-int/lit8·v1,·v1,·0x1138 ····add-int/lit8·v1,·v1,·0x1
  
142 ····goto·:goto_0139 ····goto·:goto_0
  
143 ····.line·93140 ····.line·93
144 ····.end·local·v3····#·"type":Lcom/google/android/apps/authenticator/AccountDb$OtpType;141 ····.end·local·v0····#·"type":Lcom/google/android/apps/authenticator/AccountDb$OtpType;
145 ····:cond_1142 ····:cond_1
146 ····const/4·v3,·0x0143 ····const/4·v0,·0x0
  
147 ····goto·:goto_1144 ····goto·:goto_1
148 .end·method145 .end·method
  
149 .method·public·static·valueOf(Ljava/lang/String;)Lcom/google/android/apps/authenticator/AccountDb$OtpType;146 .method·public·static·valueOf(Ljava/lang/String;)Lcom/google/android/apps/authenticator/AccountDb$OtpType;
150 ····.locals·1147 ····.locals·1
151 ····.param·p0,·"name"····#·Ljava/lang/String;148 ····.param·p0,·"name"····#·Ljava/lang/String;
904 B
smali/com/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$1.smali
    
Offset 20, 14 lines modifiedOffset 20, 15 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$1:Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;21 .field·final·synthetic·this$1:Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$1"····#·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;
  
25 ····.prologue26 ····.prologue
26 ····.line·106827 ····.line·1068
27 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$1;->this$1:Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$1;->this$1:Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;
  
28 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
925 B
smali/com/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$2.smali
    
Offset 22, 14 lines modifiedOffset 22, 15 lines modified
  
22 .field·final·synthetic·val$pin:Ljava/lang/String;22 .field·final·synthetic·val$pin:Ljava/lang/String;
  
  
23 #·direct·methods23 #·direct·methods
24 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;Ljava/lang/String;)V24 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;Ljava/lang/String;)V
25 ····.locals·025 ····.locals·0
 26 ····.param·p1,·"this$1"····#·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;
  
26 ····.prologue27 ····.prologue
27 ····.line·107928 ····.line·1079
28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$2;->this$1:Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;29 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$2;->this$1:Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;
  
29 ····iput-object·p2,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$2;->val$pin:Ljava/lang/String;30 ····iput-object·p2,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$2;->val$pin:Ljava/lang/String;
  
21.4 KB
smali/com/google/android/apps/authenticator/AccountDb.smali
    
Offset 133, 20 lines modifiedOffset 133, 22 lines modified
  
133 ····const-string·v5,·"provider"133 ····const-string·v5,·"provider"
  
134 ····aput-object·v5,·v3,·v4134 ····aput-object·v5,·v3,·v4
  
135 ····const/16·v4,·0x8135 ····const/16·v4,·0x8
  
 136 ····.line·108
136 ····invoke-static·{v6},·Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;137 ····invoke-static·{v6},·Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
  
137 ····move-result-object·v5138 ····move-result-object·v5
  
138 ····aput-object·v5,·v3,·v4139 ····aput-object·v5,·v3,·v4
  
 140 ····.line·102
139 ····invoke-static·{v2,·v3},·Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;141 ····invoke-static·{v2,·v3},·Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
  
140 ····move-result-object·v2142 ····move-result-object·v2
  
141 ····invoke-virtual·{v1,·v2},·Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V143 ····invoke-virtual·{v1,·v2},·Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
  
142 ····.line·110144 ····.line·110
Offset 181, 20 lines modifiedOffset 183, 22 lines modified
  
181 ····aput-object·v4,·v3,·v6183 ····aput-object·v4,·v3,·v6
  
182 ····const-string·v4,·"provider"184 ····const-string·v4,·"provider"
  
183 ····aput-object·v4,·v3,·v7185 ····aput-object·v4,·v3,·v7
  
 186 ····.line·115
184 ····invoke-static·{v6},·Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;187 ····invoke-static·{v6},·Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
  
185 ····move-result-object·v4188 ····move-result-object·v4
  
186 ····aput-object·v4,·v3,·v8189 ····aput-object·v4,·v3,·v8
  
 190 ····.line·113
187 ····invoke-static·{v2,·v3},·Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;191 ····invoke-static·{v2,·v3},·Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
  
188 ····move-result-object·v2192 ····move-result-object·v2
  
189 ····invoke-virtual·{v1,·v2},·Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V193 ····invoke-virtual·{v1,·v2},·Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
  
190 ····.line·117194 ····.line·117
Offset 278, 322 lines modifiedOffset 282, 317 lines modified
  
278 ····move-result-object·v0282 ····move-result-object·v0
  
279 ····return-object·v0283 ····return-object·v0
280 .end·method284 .end·method
  
281 .method·private·getAccountDbOpenFailedErrorString(Landroid/content/Context;)Ljava/lang/String;285 .method·private·getAccountDbOpenFailedErrorString(Landroid/content/Context;)Ljava/lang/String;
282 ····.locals·17286 ····.locals·16
283 ····.param·p1,·"context"····#·Landroid/content/Context;287 ····.param·p1,·"context"····#·Landroid/content/Context;
  
284 ····.prologue288 ····.prologue
285 ····.line·138289 ····.line·138
286 ····invoke-virtual/range·{p1·..·p1},·Landroid/content/Context;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;290 ····invoke-virtual/range·{p1·..·p1},·Landroid/content/Context;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;
  
287 ····move-result-object·v15291 ····move-result-object·v12
  
288 ····iget-object·v2,·v15,·Landroid/content/pm/ApplicationInfo;->dataDir:Ljava/lang/String;292 ····iget-object·v1,·v12,·Landroid/content/pm/ApplicationInfo;->dataDir:Ljava/lang/String;
  
289 ····.line·139293 ····.line·139
290 ····.local·v2,·"dataPackageDir":Ljava/lang/String;294 ····.local·v1,·"dataPackageDir":Ljava/lang/String;
291 ····const-string·v15,·"databases"295 ····const-string·v12,·"databases"
  
292 ····move-object/from16·v0,·p1296 ····move-object/from16·v0,·p1
  
293 ····invoke-virtual·{v0,·v15},·Landroid/content/Context;->getDatabasePath(Ljava/lang/String;)Ljava/io/File;297 ····invoke-virtual·{v0,·v12},·Landroid/content/Context;->getDatabasePath(Ljava/lang/String;)Ljava/io/File;
  
294 ····move-result-object·v15298 ····move-result-object·v12
  
295 ····invoke-virtual·{v15},·Ljava/io/File;->getParent()Ljava/lang/String;299 ····invoke-virtual·{v12},·Ljava/io/File;->getParent()Ljava/lang/String;
  
296 ····move-result-object·v3300 ····move-result-object·v2
  
297 ····.line·140301 ····.line·140
298 ····.local·v3,·"databaseDirPathname":Ljava/lang/String;302 ····.local·v2,·"databaseDirPathname":Ljava/lang/String;
299 ····const-string·v15,·"databases"303 ····const-string·v12,·"databases"
  
300 ····move-object/from16·v0,·p1304 ····move-object/from16·v0,·p1
  
301 ····invoke-virtual·{v0,·v15},·Landroid/content/Context;->getDatabasePath(Ljava/lang/String;)Ljava/io/File;305 ····invoke-virtual·{v0,·v12},·Landroid/content/Context;->getDatabasePath(Ljava/lang/String;)Ljava/io/File;
  
302 ····move-result-object·v15306 ····move-result-object·v12
  
303 ····invoke-virtual·{v15},·Ljava/io/File;->getAbsolutePath()Ljava/lang/String;307 ····invoke-virtual·{v12},·Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
  
304 ····move-result-object·v4308 ····move-result-object·v3
  
305 ····.line·141309 ····.line·141
306 ····.local·v4,·"databasePathname":Ljava/lang/String;310 ····.local·v3,·"databasePathname":Ljava/lang/String;
307 ····const/4·v15,·0x3311 ····const/4·v12,·0x3
  
308 ····new-array·v6,·v15,·[Ljava/lang/String;312 ····new-array·v5,·v12,·[Ljava/lang/String;
  
309 ····const/4·v15,·0x0313 ····const/4·v12,·0x0
  
310 ····aput-object·v2,·v6,·v15314 ····aput-object·v1,·v5,·v12
  
311 ····const/4·v15,·0x1315 ····const/4·v12,·0x1
  
312 ····aput-object·v3,·v6,·v15316 ····aput-object·v2,·v5,·v12
  
313 ····const/4·v15,·0x2317 ····const/4·v12,·0x2
  
314 ····aput-object·v4,·v6,·v15318 ····aput-object·v3,·v5,·v12
  
315 ····.line·142319 ····.line·142
316 ····.local·v6,·"dirsToStat":[Ljava/lang/String;320 ····.local·v5,·"dirsToStat":[Ljava/lang/String;
317 ····new-instance·v8,·Ljava/lang/StringBuilder;321 ····new-instance·v7,·Ljava/lang/StringBuilder;
  
318 ····invoke-direct·{v8},·Ljava/lang/StringBuilder;-><init>()V322 ····invoke-direct·{v7},·Ljava/lang/StringBuilder;-><init>()V
  
319 ····.line·143323 ····.line·143
320 ····.local·v8,·"error":Ljava/lang/StringBuilder;324 ····.local·v7,·"error":Ljava/lang/StringBuilder;
321 ····invoke-static·{},·Landroid/os/Process;->myUid()I325 ····invoke-static·{},·Landroid/os/Process;->myUid()I
  
322 ····move-result·v11326 ····move-result·v8
  
323 ····.line·144327 ····.line·144
324 ····.local·v11,·"myUid":I328 ····.local·v8,·"myUid":I
325 ····move-object·v1,·v6329 ····array-length·v13,·v5
  
326 ····.local·v1,·"arr$":[Ljava/lang/String; 
Max diff block lines reached; 17236/21821 bytes (78.99%) of diff not shown.
3.41 KB
smali/com/google/android/apps/authenticator/AuthenticatorActivity$8.smali
    
Offset 22, 14 lines modifiedOffset 22, 15 lines modified
  
22 .field·final·synthetic·val$saveKeyDialogParams:Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;22 .field·final·synthetic·val$saveKeyDialogParams:Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;
  
  
23 #·direct·methods23 #·direct·methods
24 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;)V24 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;)V
25 ····.locals·025 ····.locals·0
 26 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
26 ····.prologue27 ····.prologue
27 ····.line·91328 ····.line·913
28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$8;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;29 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$8;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
29 ····iput-object·p2,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$8;->val$saveKeyDialogParams:Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;30 ····iput-object·p2,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$8;->val$saveKeyDialogParams:Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;
  
Offset 47, 36 lines modifiedOffset 48, 41 lines modified
  
47 ····.prologue48 ····.prologue
48 ····.line·91649 ····.line·916
49 ····iget-object·v0,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$8;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;50 ····iget-object·v0,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$8;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
50 ····iget-object·v1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$8;->val$saveKeyDialogParams:Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;51 ····iget-object·v1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$8;->val$saveKeyDialogParams:Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;
  
 52 ····.line·917
51 ····invoke-static·{v1},·Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;->access$1300(Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;)Ljava/lang/String;53 ····invoke-static·{v1},·Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;->access$1300(Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;)Ljava/lang/String;
  
52 ····move-result-object·v154 ····move-result-object·v1
  
53 ····iget-object·v2,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$8;->val$saveKeyDialogParams:Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;55 ····iget-object·v2,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$8;->val$saveKeyDialogParams:Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;
  
 56 ····.line·918
54 ····invoke-static·{v2},·Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;->access$1400(Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;)Ljava/lang/String;57 ····invoke-static·{v2},·Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;->access$1400(Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;)Ljava/lang/String;
  
55 ····move-result-object·v258 ····move-result-object·v2
  
56 ····const/4·v3,·0x059 ····const/4·v3,·0x0
  
57 ····iget-object·v4,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$8;->val$saveKeyDialogParams:Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;60 ····iget-object·v4,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$8;->val$saveKeyDialogParams:Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;
  
 61 ····.line·920
58 ····invoke-static·{v4},·Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;->access$1500(Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;)Lcom/google/android/apps/authenticator/AccountDb$OtpType;62 ····invoke-static·{v4},·Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;->access$1500(Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;)Lcom/google/android/apps/authenticator/AccountDb$OtpType;
  
59 ····move-result-object·v463 ····move-result-object·v4
  
60 ····iget-object·v5,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$8;->val$saveKeyDialogParams:Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;64 ····iget-object·v5,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$8;->val$saveKeyDialogParams:Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;
  
 65 ····.line·921
61 ····invoke-static·{v5},·Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;->access$1600(Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;)Ljava/lang/Integer;66 ····invoke-static·{v5},·Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;->access$1600(Lcom/google/android/apps/authenticator/AuthenticatorActivity$SaveKeyDialogParams;)Ljava/lang/Integer;
  
62 ····move-result-object·v567 ····move-result-object·v5
  
 68 ····.line·916
63 ····invoke-static/range·{v0·..·v5},·Lcom/google/android/apps/authenticator/AuthenticatorActivity;->access$1200(Lcom/google/android/apps/authenticator/AuthenticatorActivity;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/google/android/apps/authenticator/AccountDb$OtpType;Ljava/lang/Integer;)V69 ····invoke-static/range·{v0·..·v5},·Lcom/google/android/apps/authenticator/AuthenticatorActivity;->access$1200(Lcom/google/android/apps/authenticator/AuthenticatorActivity;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/google/android/apps/authenticator/AccountDb$OtpType;Ljava/lang/Integer;)V
  
64 ····.line·92270 ····.line·922
65 ····return-void71 ····return-void
66 .end·method72 .end·method
3.13 KB
smali/com/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener.smali
    
Offset 125, 15 lines modifiedOffset 125, 15 lines modified
  
125 ····goto·:goto_1125 ····goto·:goto_1
126 .end·method126 .end·method
  
  
127 #·virtual·methods127 #·virtual·methods
128 .method·public·onClick(Landroid/view/View;)V128 .method·public·onClick(Landroid/view/View;)V
129 ····.locals·7129 ····.locals·8
130 ····.param·p1,·"v"····#·Landroid/view/View;130 ····.param·p1,·"v"····#·Landroid/view/View;
  
131 ····.prologue131 ····.prologue
132 ····.line·1046132 ····.line·1046
133 ····invoke-direct·{p0},·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;->findAccountPositionInList()I133 ····invoke-direct·{p0},·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;->findAccountPositionInList()I
  
134 ····move-result·v2134 ····move-result·v2
Offset 215, 28 lines modifiedOffset 215, 28 lines modified
215 ····.line·1067215 ····.line·1067
216 ····iget-object·v3,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;->mHandler:Landroid/os/Handler;216 ····iget-object·v3,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;->mHandler:Landroid/os/Handler;
  
217 ····new-instance·v4,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$1;217 ····new-instance·v4,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$1;
  
218 ····invoke-direct·{v4,·p0},·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$1;-><init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;)V218 ····invoke-direct·{v4,·p0},·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$1;-><init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;)V
  
219 ····const-wide/16·v5,·0x1388219 ····const-wide/16·v6,·0x1388
  
220 ····invoke-virtual·{v3,·v4,·v5,·v6},·Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z220 ····invoke-virtual·{v3,·v4,·v6,·v7},·Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
  
221 ····.line·1078221 ····.line·1078
222 ····iget-object·v3,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;->mHandler:Landroid/os/Handler;222 ····iget-object·v3,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;->mHandler:Landroid/os/Handler;
  
223 ····new-instance·v4,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$2;223 ····new-instance·v4,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$2;
  
224 ····invoke-direct·{v4,·p0,·v1},·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$2;-><init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;Ljava/lang/String;)V224 ····invoke-direct·{v4,·p0,·v1},·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener$2;-><init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;Ljava/lang/String;)V
  
225 ····const-wide/32·v5,·0x1d4c0225 ····const-wide/32·v6,·0x1d4c0
  
226 ····invoke-virtual·{v3,·v4,·v5,·v6},·Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z226 ····invoke-virtual·{v3,·v4,·v6,·v7},·Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
  
227 ····.line·1090227 ····.line·1090
228 ····.end·local·v1····#·"pin":Ljava/lang/String;228 ····.end·local·v1····#·"pin":Ljava/lang/String;
229 ····:goto_0229 ····:goto_0
230 ····return-void230 ····return-void
  
231 ····.line·1053231 ····.line·1053
Offset 249, 15 lines modifiedOffset 249, 17 lines modified
  
249 ····move-result-object·v3249 ····move-result-object·v3
  
250 ····iget-object·v4,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;250 ····iget-object·v4,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
251 ····iget-object·v5,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;->mAccount:Lcom/google/android/apps/authenticator/AuthenticatorActivity$PinInfo;251 ····iget-object·v5,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$NextOtpButtonListener;->mAccount:Lcom/google/android/apps/authenticator/AuthenticatorActivity$PinInfo;
  
 252 ····.line·1055
252 ····invoke-static·{v5},·Lcom/google/android/apps/authenticator/AuthenticatorActivity$PinInfo;->access$900(Lcom/google/android/apps/authenticator/AuthenticatorActivity$PinInfo;)Ljava/lang/String;253 ····invoke-static·{v5},·Lcom/google/android/apps/authenticator/AuthenticatorActivity$PinInfo;->access$900(Lcom/google/android/apps/authenticator/AuthenticatorActivity$PinInfo;)Ljava/lang/String;
  
253 ····move-result-object·v5254 ····move-result-object·v5
  
 255 ····.line·1054
254 ····invoke-interface·{v3,·v4,·v5,·v0},·Lcom/google/android/apps/authenticator/OptionalFeatures;->onAuthenticatorActivityGetNextOtpFailed(Lcom/google/android/apps/authenticator/AuthenticatorActivity;Ljava/lang/String;Lcom/google/android/apps/authenticator/OtpSourceException;)V256 ····invoke-interface·{v3,·v4,·v5,·v0},·Lcom/google/android/apps/authenticator/OptionalFeatures;->onAuthenticatorActivityGetNextOtpFailed(Lcom/google/android/apps/authenticator/AuthenticatorActivity;Ljava/lang/String;Lcom/google/android/apps/authenticator/OtpSourceException;)V
  
255 ····goto·:goto_0257 ····goto·:goto_0
256 .end·method258 .end·method
752 B
smali/com/google/android/apps/authenticator/AuthenticatorActivity$10.smali
    
Offset 20, 14 lines modifiedOffset 20, 15 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
25 ····.prologue26 ····.prologue
26 ····.line·96127 ····.line·961
27 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$10;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$10;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
28 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
2.13 KB
smali/com/google/android/apps/authenticator/FileUtilities.smali
    
Offset 128, 20 lines modifiedOffset 128, 22 lines modified
  
128 ····aput-object·v8,·v6,·v7128 ····aput-object·v8,·v6,·v7
  
129 ····const/4·v7,·0x1129 ····const/4·v7,·0x1
  
130 ····const-string·v8,·"android.os.FileUtils$FileStatus"130 ····const-string·v8,·"android.os.FileUtils$FileStatus"
  
 131 ····.line·64
131 ····invoke-static·{v8},·Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;132 ····invoke-static·{v8},·Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
  
132 ····move-result-object·v8133 ····move-result-object·v8
  
133 ····aput-object·v8,·v6,·v7134 ····aput-object·v8,·v6,·v7
  
 135 ····.line·63
134 ····invoke-virtual·{v4,·v5,·v6},·Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;136 ····invoke-virtual·{v4,·v5,·v6},·Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
  
135 ····move-result-object·v4137 ····move-result-object·v4
  
136 ····const/4·v5,·0x0138 ····const/4·v5,·0x0
  
137 ····const/4·v6,·0x2139 ····const/4·v6,·0x2
Offset 152, 20 lines modifiedOffset 154, 22 lines modified
  
152 ····aput-object·p0,·v6,·v7154 ····aput-object·p0,·v6,·v7
  
153 ····const/4·v7,·0x1155 ····const/4·v7,·0x1
  
154 ····aput-object·v1,·v6,·v7156 ····aput-object·v1,·v6,·v7
  
 157 ····.line·65
155 ····invoke-virtual·{v4,·v5,·v6},·Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;158 ····invoke-virtual·{v4,·v5,·v6},·Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
  
156 ····move-result-object·v4159 ····move-result-object·v4
  
157 ····check-cast·v4,·Ljava/lang/Boolean;160 ····check-cast·v4,·Ljava/lang/Boolean;
  
 161 ····.line·62
158 ····invoke-virtual·{v4},·Ljava/lang/Boolean;->booleanValue()Z162 ····invoke-virtual·{v4},·Ljava/lang/Boolean;->booleanValue()Z
  
159 ····move-result·v3163 ····move-result·v3
  
160 ····.line·66164 ····.line·66
161 ····.local·v3,·"success":Z165 ····.local·v3,·"success":Z
162 ····if-eqz·v3,·:cond_0166 ····if-eqz·v3,·:cond_0
Offset 386, 14 lines modifiedOffset 390, 15 lines modified
  
386 ····const/4·v5,·0x3390 ····const/4·v5,·0x3
  
387 ····sget-object·v6,·Ljava/lang/Integer;->TYPE:Ljava/lang/Class;391 ····sget-object·v6,·Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
  
388 ····aput-object·v6,·v4,·v5392 ····aput-object·v6,·v4,·v5
  
 393 ····.line·42
389 ····invoke-virtual·{v2,·v3,·v4},·Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;394 ····invoke-virtual·{v2,·v3,·v4},·Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
  
390 ····move-result-object·v2395 ····move-result-object·v2
  
391 ····const/4·v3,·0x0396 ····const/4·v3,·0x0
  
392 ····const/4·v4,·0x4397 ····const/4·v4,·0x4
Offset 404, 14 lines modifiedOffset 409, 15 lines modified
  
404 ····aput-object·p0,·v4,·v5409 ····aput-object·p0,·v4,·v5
  
405 ····const/4·v5,·0x1410 ····const/4·v5,·0x1
  
406 ····const/16·v6,·0x1c0411 ····const/16·v6,·0x1c0
  
 412 ····.line·43
407 ····invoke-static·{v6},·Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;413 ····invoke-static·{v6},·Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
  
408 ····move-result-object·v6414 ····move-result-object·v6
  
409 ····aput-object·v6,·v4,·v5415 ····aput-object·v6,·v4,·v5
  
410 ····const/4·v5,·0x2416 ····const/4·v5,·0x2
Offset 436, 14 lines modifiedOffset 442, 15 lines modified
  
436 ····invoke-virtual·{v2,·v3,·v4},·Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;442 ····invoke-virtual·{v2,·v3,·v4},·Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
  
437 ····move-result-object·v2443 ····move-result-object·v2
  
438 ····check-cast·v2,·Ljava/lang/Integer;444 ····check-cast·v2,·Ljava/lang/Integer;
  
 445 ····.line·41
439 ····invoke-virtual·{v2},·Ljava/lang/Integer;->intValue()I446 ····invoke-virtual·{v2},·Ljava/lang/Integer;->intValue()I
440 ····:try_end_0447 ····:try_end_0
441 ····.catch·Ljava/lang/Exception;·{:try_start_0·..·:try_end_0}·:catch_0448 ····.catch·Ljava/lang/Exception;·{:try_start_0·..·:try_end_0}·:catch_0
  
442 ····move-result·v1449 ····move-result·v1
  
443 ····.line·49450 ····.line·49
548 B
smali/com/google/android/apps/authenticator/AuthenticatorActivity$PinListAdapter.smali
    
Offset 111, 14 lines modifiedOffset 111, 15 lines modified
  
111 ····move-result-object·v0111 ····move-result-object·v0
  
112 ····.line·1139112 ····.line·1139
113 ····.local·v0,·"buttonView":Landroid/view/View;113 ····.local·v0,·"buttonView":Landroid/view/View;
114 ····const·v8,·0x7f0a0018114 ····const·v8,·0x7f0a0018
  
 115 ····.line·1140
115 ····invoke-virtual·{v6,·v8},·Landroid/view/View;->findViewById(I)Landroid/view/View;116 ····invoke-virtual·{v6,·v8},·Landroid/view/View;->findViewById(I)Landroid/view/View;
  
116 ····move-result-object·v2117 ····move-result-object·v2
  
117 ····check-cast·v2,·Lcom/google/android/apps/authenticator/CountdownIndicator;118 ····check-cast·v2,·Lcom/google/android/apps/authenticator/CountdownIndicator;
  
118 ····.line·1142119 ····.line·1142
1.7 KB
smali/com/google/android/apps/authenticator/AuthenticatorActivity$7.smali
    
Offset 20, 14 lines modifiedOffset 20, 15 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
25 ····.prologue26 ····.prologue
26 ····.line·88627 ····.line·886
27 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$7;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$7;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
28 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
Offset 45, 14 lines modifiedOffset 46, 15 lines modified
45 ····.line·88946 ····.line·889
46 ····new-instance·v1,·Landroid/content/Intent;47 ····new-instance·v1,·Landroid/content/Intent;
  
47 ····const-string·v2,·"android.intent.action.VIEW"48 ····const-string·v2,·"android.intent.action.VIEW"
  
48 ····const-string·v3,·"market://search?q=pname:com.google.zxing.client.android"49 ····const-string·v3,·"market://search?q=pname:com.google.zxing.client.android"
  
 50 ····.line·890
49 ····invoke-static·{v3},·Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;51 ····invoke-static·{v3},·Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
  
50 ····move-result-object·v352 ····move-result-object·v3
  
51 ····invoke-direct·{v1,·v2,·v3},·Landroid/content/Intent;-><init>(Ljava/lang/String;Landroid/net/Uri;)V53 ····invoke-direct·{v1,·v2,·v3},·Landroid/content/Intent;-><init>(Ljava/lang/String;Landroid/net/Uri;)V
  
52 ····.line·89254 ····.line·892
Offset 77, 14 lines modifiedOffset 79, 15 lines modified
77 ····new-instance·v1,·Landroid/content/Intent;79 ····new-instance·v1,·Landroid/content/Intent;
  
78 ····.end·local·v1····#·"intent":Landroid/content/Intent;80 ····.end·local·v1····#·"intent":Landroid/content/Intent;
79 ····const-string·v2,·"android.intent.action.VIEW"81 ····const-string·v2,·"android.intent.action.VIEW"
  
80 ····const-string·v3,·"https://zxing.googlecode.com/files/BarcodeScanner3.1.apk"82 ····const-string·v3,·"https://zxing.googlecode.com/files/BarcodeScanner3.1.apk"
  
 83 ····.line·896
81 ····invoke-static·{v3},·Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;84 ····invoke-static·{v3},·Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
  
82 ····move-result-object·v385 ····move-result-object·v3
  
83 ····invoke-direct·{v1,·v2,·v3},·Landroid/content/Intent;-><init>(Ljava/lang/String;Landroid/net/Uri;)V86 ····invoke-direct·{v1,·v2,·v3},·Landroid/content/Intent;-><init>(Ljava/lang/String;Landroid/net/Uri;)V
  
84 ····.line·89787 ····.line·897
1.13 KB
smali/com/google/android/apps/authenticator/AuthenticatorApplication.smali
    
Offset 19, 26 lines modifiedOffset 19, 27 lines modified
19 .method·public·onCreate()V19 .method·public·onCreate()V
20 ····.locals·120 ····.locals·1
  
21 ····.prologue21 ····.prologue
22 ····.line·3822 ····.line·38
23 ····invoke-super·{p0},·Landroid/app/Application;->onCreate()V23 ····invoke-super·{p0},·Landroid/app/Application;->onCreate()V
  
24 ····.line·4524 ····.line·46
25 ····:try_start_025 ····:try_start_0
26 ····invoke-virtual·{p0},·Lcom/google/android/apps/authenticator/AuthenticatorApplication;->getApplicationContext()Landroid/content/Context;26 ····invoke-virtual·{p0},·Lcom/google/android/apps/authenticator/AuthenticatorApplication;->getApplicationContext()Landroid/content/Context;
  
27 ····move-result-object·v027 ····move-result-object·v0
  
28 ····invoke-virtual·{v0},·Landroid/content/Context;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;28 ····invoke-virtual·{v0},·Landroid/content/Context;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;
  
29 ····move-result-object·v029 ····move-result-object·v0
  
30 ····iget-object·v0,·v0,·Landroid/content/pm/ApplicationInfo;->dataDir:Ljava/lang/String;30 ····iget-object·v0,·v0,·Landroid/content/pm/ApplicationInfo;->dataDir:Ljava/lang/String;
  
 31 ····.line·45
31 ····invoke-static·{v0},·Lcom/google/android/apps/authenticator/FileUtilities;->restrictAccessToOwnerOnly(Ljava/lang/String;)V32 ····invoke-static·{v0},·Lcom/google/android/apps/authenticator/FileUtilities;->restrictAccessToOwnerOnly(Ljava/lang/String;)V
32 ····:try_end_033 ····:try_end_0
33 ····.catch·Ljava/lang/Throwable;·{:try_start_0·..·:try_end_0}·:catch_034 ····.catch·Ljava/lang/Throwable;·{:try_start_0·..·:try_end_0}·:catch_0
  
34 ····.line·5335 ····.line·53
35 ····:goto_036 ····:goto_0
36 ····invoke-virtual·{p0},·Lcom/google/android/apps/authenticator/AuthenticatorApplication;->getApplicationContext()Landroid/content/Context;37 ····invoke-virtual·{p0},·Lcom/google/android/apps/authenticator/AuthenticatorApplication;->getApplicationContext()Landroid/content/Context;
772 B
smali/com/google/android/apps/authenticator/AuthenticatorActivity$5.smali
    
Offset 22, 14 lines modifiedOffset 22, 15 lines modified
  
22 .field·final·synthetic·val$user:Ljava/lang/String;22 .field·final·synthetic·val$user:Ljava/lang/String;
  
  
23 #·direct·methods23 #·direct·methods
24 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;Ljava/lang/String;)V24 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;Ljava/lang/String;)V
25 ····.locals·025 ····.locals·0
 26 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
26 ····.prologue27 ····.prologue
27 ····.line·72528 ····.line·725
28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$5;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;29 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$5;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
29 ····iput-object·p2,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$5;->val$user:Ljava/lang/String;30 ····iput-object·p2,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$5;->val$user:Ljava/lang/String;
  
922 B
smali/com/google/android/apps/authenticator/FileUtilities$StatStruct.smali
    
Offset 68, 14 lines modifiedOffset 68, 15 lines modified
  
68 ····new-array·v2,·v2,·[Ljava/lang/Object;68 ····new-array·v2,·v2,·[Ljava/lang/Object;
  
69 ····const/4·v3,·0x069 ····const/4·v3,·0x0
  
70 ····iget·v4,·p0,·Lcom/google/android/apps/authenticator/FileUtilities$StatStruct;->dev:I70 ····iget·v4,·p0,·Lcom/google/android/apps/authenticator/FileUtilities$StatStruct;->dev:I
  
 71 ····.line·122
71 ····invoke-static·{v4},·Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;72 ····invoke-static·{v4},·Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
  
72 ····move-result-object·v473 ····move-result-object·v4
  
73 ····aput-object·v4,·v2,·v374 ····aput-object·v4,·v2,·v3
  
74 ····const/4·v3,·0x175 ····const/4·v3,·0x1
Offset 194, 14 lines modifiedOffset 195, 15 lines modified
  
194 ····invoke-static·{v4,·v5},·Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;195 ····invoke-static·{v4,·v5},·Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
  
195 ····move-result-object·v4196 ····move-result-object·v4
  
196 ····aput-object·v4,·v2,·v3197 ····aput-object·v4,·v2,·v3
  
 198 ····.line·119
197 ····invoke-static·{v1,·v2},·Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;199 ····invoke-static·{v1,·v2},·Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
  
198 ····move-result-object·v1200 ····move-result-object·v1
  
199 ····invoke-direct·{v0,·v1},·Ljava/lang/String;-><init>(Ljava/lang/String;)V201 ····invoke-direct·{v0,·v1},·Ljava/lang/String;-><init>(Ljava/lang/String;)V
  
200 ····return-object·v0202 ····return-object·v0
749 B
smali/com/google/android/apps/authenticator/AuthenticatorActivity$3.smali
    
Offset 20, 14 lines modifiedOffset 20, 15 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
25 ····.prologue26 ····.prologue
26 ····.line·25727 ····.line·257
27 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$3;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$3;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
28 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
752 B
smali/com/google/android/apps/authenticator/AuthenticatorActivity$11.smali
    
Offset 20, 14 lines modifiedOffset 20, 15 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
25 ····.prologue26 ····.prologue
26 ····.line·98327 ····.line·983
27 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$11;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$11;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
28 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
762 B
smali/com/google/android/apps/authenticator/AddOtherAccountActivity$2.smali
    
Offset 20, 14 lines modifiedOffset 20, 15 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AddOtherAccountActivity;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AddOtherAccountActivity;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AddOtherAccountActivity;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AddOtherAccountActivity;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/AddOtherAccountActivity;
  
25 ····.prologue26 ····.prologue
26 ····.line·4827 ····.line·48
27 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AddOtherAccountActivity$2;->this$0:Lcom/google/android/apps/authenticator/AddOtherAccountActivity;28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AddOtherAccountActivity$2;->this$0:Lcom/google/android/apps/authenticator/AddOtherAccountActivity;
  
28 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
749 B
smali/com/google/android/apps/authenticator/AuthenticatorActivity$1.smali
    
Offset 20, 14 lines modifiedOffset 20, 15 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
25 ····.prologue26 ····.prologue
26 ····.line·23927 ····.line·239
27 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$1;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$1;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
28 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
753 B
smali/com/google/android/apps/authenticator/AuthenticatorActivity$12.smali
    
Offset 20, 14 lines modifiedOffset 20, 15 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
25 ····.prologue26 ····.prologue
26 ····.line·117827 ····.line·1178
27 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$12;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$12;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
28 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
3.16 KB
smali/com/google/android/apps/authenticator/PasscodeGenerator.smali
    
Offset 206, 15 lines modifiedOffset 206, 15 lines modified
206 ····:cond_0206 ····:cond_0
207 ····return-object·v1207 ····return-object·v1
208 .end·method208 .end·method
  
  
209 #·virtual·methods209 #·virtual·methods
210 .method·public·generateResponseCode(J)Ljava/lang/String;210 .method·public·generateResponseCode(J)Ljava/lang/String;
211 ····.locals·2211 ····.locals·3
212 ····.param·p1,·"state"····#·J212 ····.param·p1,·"state"····#·J
213 ····.annotation·system·Ldalvik/annotation/Throws;213 ····.annotation·system·Ldalvik/annotation/Throws;
214 ········value·=·{214 ········value·=·{
215 ············Ljava/security/GeneralSecurityException;215 ············Ljava/security/GeneralSecurityException;
216 ········}216 ········}
217 ····.end·annotation217 ····.end·annotation
  
Offset 240, 15 lines modifiedOffset 240, 15 lines modified
  
240 ····move-result-object·v1240 ····move-result-object·v1
  
241 ····return-object·v1241 ····return-object·v1
242 .end·method242 .end·method
  
243 .method·public·generateResponseCode(J[B)Ljava/lang/String;243 .method·public·generateResponseCode(J[B)Ljava/lang/String;
244 ····.locals·4244 ····.locals·5
245 ····.param·p1,·"state"····#·J245 ····.param·p1,·"state"····#·J
246 ····.param·p3,·"challenge"····#·[B246 ····.param·p3,·"challenge"····#·[B
247 ····.annotation·system·Ldalvik/annotation/Throws;247 ····.annotation·system·Ldalvik/annotation/Throws;
248 ········value·=·{248 ········value·=·{
249 ············Ljava/security/GeneralSecurityException;249 ············Ljava/security/GeneralSecurityException;
250 ········}250 ········}
251 ····.end·annotation251 ····.end·annotation
Offset 272, 26 lines modifiedOffset 272, 29 lines modified
  
272 ····add-int/lit8·v1,·v1,·0x8272 ····add-int/lit8·v1,·v1,·0x8
  
273 ····invoke-static·{v1},·Ljava/nio/ByteBuffer;->allocate(I)Ljava/nio/ByteBuffer;273 ····invoke-static·{v1},·Ljava/nio/ByteBuffer;->allocate(I)Ljava/nio/ByteBuffer;
  
274 ····move-result-object·v1274 ····move-result-object·v1
  
 275 ····.line·133
275 ····invoke-virtual·{v1,·p1,·p2},·Ljava/nio/ByteBuffer;->putLong(J)Ljava/nio/ByteBuffer;276 ····invoke-virtual·{v1,·p1,·p2},·Ljava/nio/ByteBuffer;->putLong(J)Ljava/nio/ByteBuffer;
  
276 ····move-result-object·v1277 ····move-result-object·v1
  
277 ····const/4·v2,·0x0278 ····const/4·v2,·0x0
  
278 ····array-length·v3,·p3279 ····array-length·v3,·p3
  
 280 ····.line·134
279 ····invoke-virtual·{v1,·p3,·v2,·v3},·Ljava/nio/ByteBuffer;->put([BII)Ljava/nio/ByteBuffer;281 ····invoke-virtual·{v1,·p3,·v2,·v3},·Ljava/nio/ByteBuffer;->put([BII)Ljava/nio/ByteBuffer;
  
280 ····move-result-object·v1282 ····move-result-object·v1
  
 283 ····.line·135
281 ····invoke-virtual·{v1},·Ljava/nio/ByteBuffer;->array()[B284 ····invoke-virtual·{v1},·Ljava/nio/ByteBuffer;->array()[B
  
282 ····move-result-object·v0285 ····move-result-object·v0
  
283 ····.line·136286 ····.line·136
284 ····.local·v0,·"value":[B287 ····.local·v0,·"value":[B
285 ····invoke-virtual·{p0,·v0},·Lcom/google/android/apps/authenticator/PasscodeGenerator;->generateResponseCode([B)Ljava/lang/String;288 ····invoke-virtual·{p0,·v0},·Lcom/google/android/apps/authenticator/PasscodeGenerator;->generateResponseCode([B)Ljava/lang/String;
Offset 360, 15 lines modifiedOffset 363, 15 lines modified
  
360 ····move-result-object·v4363 ····move-result-object·v4
  
361 ····return-object·v4364 ····return-object·v4
362 .end·method365 .end·method
  
363 .method·public·verifyResponseCode(JLjava/lang/String;)Z366 .method·public·verifyResponseCode(JLjava/lang/String;)Z
364 ····.locals·2367 ····.locals·3
365 ····.param·p1,·"challenge"····#·J368 ····.param·p1,·"challenge"····#·J
366 ····.param·p3,·"response"····#·Ljava/lang/String;369 ····.param·p3,·"response"····#·Ljava/lang/String;
367 ····.annotation·system·Ldalvik/annotation/Throws;370 ····.annotation·system·Ldalvik/annotation/Throws;
368 ········value·=·{371 ········value·=·{
369 ············Ljava/security/GeneralSecurityException;372 ············Ljava/security/GeneralSecurityException;
370 ········}373 ········}
371 ····.end·annotation374 ····.end·annotation
Offset 387, 15 lines modifiedOffset 390, 15 lines modified
  
387 ····move-result·v1390 ····move-result·v1
  
388 ····return·v1391 ····return·v1
389 .end·method392 .end·method
  
390 .method·public·verifyTimeoutCode(JLjava/lang/String;)Z393 .method·public·verifyTimeoutCode(JLjava/lang/String;)Z
391 ····.locals·6394 ····.locals·7
392 ····.param·p1,·"currentInterval"····#·J395 ····.param·p1,·"currentInterval"····#·J
393 ····.param·p3,·"timeoutCode"····#·Ljava/lang/String;396 ····.param·p3,·"timeoutCode"····#·Ljava/lang/String;
394 ····.annotation·system·Ldalvik/annotation/Throws;397 ····.annotation·system·Ldalvik/annotation/Throws;
395 ········value·=·{398 ········value·=·{
396 ············Ljava/security/GeneralSecurityException;399 ············Ljava/security/GeneralSecurityException;
397 ········}400 ········}
398 ····.end·annotation401 ····.end·annotation
Offset 448, 21 lines modifiedOffset 451, 21 lines modified
448 ····neg-int·v1,·p4451 ····neg-int·v1,·p4
  
449 ····.local·v1,·"i":I452 ····.local·v1,·"i":I
450 ····:goto_0453 ····:goto_0
451 ····if-gt·v1,·p5,·:cond_0454 ····if-gt·v1,·p5,·:cond_0
  
452 ····.line·222455 ····.line·222
453 ····int-to-long·v3,·v1456 ····int-to-long·v4,·v1
  
454 ····sub-long·v3,·p2,·v3457 ····sub-long·v4,·p2,·v4
  
455 ····const/4·v5,·0x0458 ····const/4·v3,·0x0
  
456 ····invoke-virtual·{p0,·v3,·v4,·v5},·Lcom/google/android/apps/authenticator/PasscodeGenerator;->generateResponseCode(J[B)Ljava/lang/String;459 ····invoke-virtual·{p0,·v4,·v5,·v3},·Lcom/google/android/apps/authenticator/PasscodeGenerator;->generateResponseCode(J[B)Ljava/lang/String;
  
457 ····move-result-object·v0460 ····move-result-object·v0
  
458 ····.line·223461 ····.line·223
459 ····.local·v0,·"candidate":Ljava/lang/String;462 ····.local·v0,·"candidate":Ljava/lang/String;
460 ····invoke-virtual·{v0,·p1},·Ljava/lang/String;->equals(Ljava/lang/Object;)Z463 ····invoke-virtual·{v0,·p1},·Ljava/lang/String;->equals(Ljava/lang/Object;)Z
  
3.86 KB
smali/com/google/android/apps/authenticator/HexEncoding.smali
    
Offset 107, 28 lines modifiedOffset 107, 30 lines modified
107 ····.restart·local·v5····#·"resultOffset":I107 ····.restart·local·v5····#·"resultOffset":I
108 ····:goto_0108 ····:goto_0
109 ····if-ge·v0,·v1,·:cond_1109 ····if-ge·v0,·v1,·:cond_1
  
110 ····.line·58110 ····.line·58
111 ····add-int/lit8·v4,·v5,·0x1111 ····add-int/lit8·v4,·v5,·0x1
  
 112 ····.line·59
112 ····.end·local·v5····#·"resultOffset":I113 ····.end·local·v5····#·"resultOffset":I
113 ····.restart·local·v4····#·"resultOffset":I114 ····.restart·local·v4····#·"resultOffset":I
114 ····invoke-virtual·{p0,·v0},·Ljava/lang/String;->charAt(I)C115 ····invoke-virtual·{p0,·v0},·Ljava/lang/String;->charAt(I)C
  
115 ····move-result·v6116 ····move-result·v6
  
116 ····invoke-static·{v6},·Lcom/google/android/apps/authenticator/HexEncoding;->getHexadecimalDigitValue(C)I117 ····invoke-static·{v6},·Lcom/google/android/apps/authenticator/HexEncoding;->getHexadecimalDigitValue(C)I
  
117 ····move-result·v6118 ····move-result·v6
  
118 ····shl-int/lit8·v6,·v6,·0x4119 ····shl-int/lit8·v6,·v6,·0x4
  
119 ····add-int/lit8·v7,·v0,·0x1120 ····add-int/lit8·v7,·v0,·0x1
  
 121 ····.line·60
120 ····invoke-virtual·{p0,·v7},·Ljava/lang/String;->charAt(I)C122 ····invoke-virtual·{p0,·v7},·Ljava/lang/String;->charAt(I)C
  
121 ····move-result·v7123 ····move-result·v7
  
122 ····invoke-static·{v7},·Lcom/google/android/apps/authenticator/HexEncoding;->getHexadecimalDigitValue(C)I124 ····invoke-static·{v7},·Lcom/google/android/apps/authenticator/HexEncoding;->getHexadecimalDigitValue(C)I
  
123 ····move-result·v7125 ····move-result·v7
Offset 150, 77 lines modifiedOffset 152, 72 lines modified
  
150 ····.line·62152 ····.line·62
151 ····:cond_1153 ····:cond_1
152 ····return-object·v2154 ····return-object·v2
153 .end·method155 .end·method
  
154 .method·public·static·encode([B)Ljava/lang/String;156 .method·public·static·encode([B)Ljava/lang/String;
155 ····.locals·7157 ····.locals·6
156 ····.param·p0,·"data"····#·[B158 ····.param·p0,·"data"····#·[B
  
157 ····.prologue159 ····.prologue
158 ····.line·35160 ····.line·35
159 ····new-instance·v4,·Ljava/lang/StringBuilder;161 ····new-instance·v1,·Ljava/lang/StringBuilder;
  
160 ····array-length·v5,·p0162 ····array-length·v2,·p0
  
161 ····mul-int/lit8·v5,·v5,·0x2163 ····mul-int/lit8·v2,·v2,·0x2
  
162 ····invoke-direct·{v4,·v5},·Ljava/lang/StringBuilder;-><init>(I)V164 ····invoke-direct·{v1,·v2},·Ljava/lang/StringBuilder;-><init>(I)V
  
163 ····.line·36165 ····.line·36
164 ····.local·v4,·"result":Ljava/lang/StringBuilder;166 ····.local·v1,·"result":Ljava/lang/StringBuilder;
165 ····move-object·v0,·p0 
  
166 ····.local·v0,·"arr$":[B 
167 ····array-length·v3,·v0167 ····array-length·v3,·p0
  
168 ····.local·v3,·"len$":I 
169 ····const/4·v2,·0x0168 ····const/4·v2,·0x0
  
170 ····.local·v2,·"i$":I 
171 ····:goto_0169 ····:goto_0
172 ····if-ge·v2,·v3,·:cond_0170 ····if-ge·v2,·v3,·:cond_0
  
173 ····aget-byte·v1,·v0,·v2171 ····aget-byte·v0,·p0,·v2
  
174 ····.line·37172 ····.line·37
175 ····.local·v1,·"b":B173 ····.local·v0,·"b":B
176 ····sget-object·v5,·Lcom/google/android/apps/authenticator/HexEncoding;->HEX_DIGITS:[C174 ····sget-object·v4,·Lcom/google/android/apps/authenticator/HexEncoding;->HEX_DIGITS:[C
  
177 ····ushr-int/lit8·v6,·v1,·0x4175 ····ushr-int/lit8·v5,·v0,·0x4
  
178 ····and-int/lit8·v6,·v6,·0xf176 ····and-int/lit8·v5,·v5,·0xf
  
179 ····aget-char·v5,·v5,·v6177 ····aget-char·v4,·v4,·v5
  
180 ····invoke-virtual·{v4,·v5},·Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;178 ····invoke-virtual·{v1,·v4},·Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
  
181 ····.line·38179 ····.line·38
182 ····sget-object·v5,·Lcom/google/android/apps/authenticator/HexEncoding;->HEX_DIGITS:[C180 ····sget-object·v4,·Lcom/google/android/apps/authenticator/HexEncoding;->HEX_DIGITS:[C
  
183 ····and-int/lit8·v6,·v1,·0xf181 ····and-int/lit8·v5,·v0,·0xf
  
184 ····aget-char·v5,·v5,·v6182 ····aget-char·v4,·v4,·v5
  
185 ····invoke-virtual·{v4,·v5},·Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;183 ····invoke-virtual·{v1,·v4},·Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
  
186 ····.line·36184 ····.line·36
187 ····add-int/lit8·v2,·v2,·0x1185 ····add-int/lit8·v2,·v2,·0x1
  
188 ····goto·:goto_0186 ····goto·:goto_0
  
189 ····.line·40187 ····.line·40
190 ····.end·local·v1····#·"b":B188 ····.end·local·v0····#·"b":B
191 ····:cond_0189 ····:cond_0
192 ····invoke-virtual·{v4},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;190 ····invoke-virtual·{v1},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  
193 ····move-result-object·v5191 ····move-result-object·v2
  
194 ····return-object·v5192 ····return-object·v2
195 .end·method193 .end·method
  
196 .method·private·static·getHexadecimalDigitValue(C)I194 .method·private·static·getHexadecimalDigitValue(C)I
197 ····.locals·3195 ····.locals·3
198 ····.param·p0,·"c"····#·C196 ····.param·p0,·"c"····#·C
  
199 ····.prologue197 ····.prologue
Offset 294, 14 lines modifiedOffset 291, 15 lines modified
  
294 ····const-string·v2,·"\'·(0x"291 ····const-string·v2,·"\'·(0x"
  
295 ····invoke-virtual·{v1,·v2},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;292 ····invoke-virtual·{v1,·v2},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  
296 ····move-result-object·v1293 ····move-result-object·v1
  
 294 ····.line·74
297 ····invoke-static·{p0},·Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;295 ····invoke-static·{p0},·Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
  
298 ····move-result-object·v2296 ····move-result-object·v2
  
299 ····invoke-virtual·{v1,·v2},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;297 ····invoke-virtual·{v1,·v2},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  
300 ····move-result-object·v1298 ····move-result-object·v1
1.3 KB
smali/com/google/android/apps/authenticator/EnterKeyActivity.smali
    
Offset 304, 32 lines modifiedOffset 304, 35 lines modified
304 ····move-result·v0304 ····move-result·v0
  
305 ····if-eqz·v0,·:cond_0305 ····if-eqz·v0,·:cond_0
  
306 ····.line·108306 ····.line·108
307 ····iget-object·v0,·p0,·Lcom/google/android/apps/authenticator/EnterKeyActivity;->mAccountName:Landroid/widget/EditText;307 ····iget-object·v0,·p0,·Lcom/google/android/apps/authenticator/EnterKeyActivity;->mAccountName:Landroid/widget/EditText;
  
 308 ····.line·109
308 ····invoke-virtual·{v0},·Landroid/widget/EditText;->getText()Landroid/text/Editable;309 ····invoke-virtual·{v0},·Landroid/widget/EditText;->getText()Landroid/text/Editable;
  
309 ····move-result-object·v0310 ····move-result-object·v0
  
310 ····invoke-virtual·{v0},·Ljava/lang/Object;->toString()Ljava/lang/String;311 ····invoke-virtual·{v0},·Ljava/lang/Object;->toString()Ljava/lang/String;
  
311 ····move-result-object·v1312 ····move-result-object·v1
  
 313 ····.line·110
312 ····invoke-direct·{p0},·Lcom/google/android/apps/authenticator/EnterKeyActivity;->getEnteredKey()Ljava/lang/String;314 ····invoke-direct·{p0},·Lcom/google/android/apps/authenticator/EnterKeyActivity;->getEnteredKey()Ljava/lang/String;
  
313 ····move-result-object·v2315 ····move-result-object·v2
  
314 ····const/4·v3,·0x0316 ····const/4·v3,·0x0
  
315 ····sget-object·v5,·Lcom/google/android/apps/authenticator/AccountDb;->DEFAULT_HOTP_COUNTER:Ljava/lang/Integer;317 ····sget-object·v5,·Lcom/google/android/apps/authenticator/AccountDb;->DEFAULT_HOTP_COUNTER:Ljava/lang/Integer;
  
316 ····move-object·v0,·p0318 ····move-object·v0,·p0
  
 319 ····.line·108
317 ····invoke-static/range·{v0·..·v5},·Lcom/google/android/apps/authenticator/AuthenticatorActivity;->saveSecret(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/google/android/apps/authenticator/AccountDb$OtpType;Ljava/lang/Integer;)Z320 ····invoke-static/range·{v0·..·v5},·Lcom/google/android/apps/authenticator/AuthenticatorActivity;->saveSecret(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/google/android/apps/authenticator/AccountDb$OtpType;Ljava/lang/Integer;)Z
  
318 ····.line·114321 ····.line·114
319 ····invoke-virtual·{p0},·Lcom/google/android/apps/authenticator/EnterKeyActivity;->exitWizard()V322 ····invoke-virtual·{p0},·Lcom/google/android/apps/authenticator/EnterKeyActivity;->exitWizard()V
  
320 ····.line·116323 ····.line·116
321 ····:cond_0324 ····:cond_0
749 B
smali/com/google/android/apps/authenticator/AuthenticatorActivity$4.smali
    
Offset 20, 14 lines modifiedOffset 20, 15 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
25 ····.prologue26 ····.prologue
26 ····.line·35027 ····.line·350
27 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$4;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$4;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
28 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
9.21 KB
smali/com/google/android/apps/authenticator/Base32String.smali
    
Offset 206, 237 lines modifiedOffset 206, 236 lines modified
  
206 ····invoke-direct·{v0},·Ljava/lang/CloneNotSupportedException;-><init>()V206 ····invoke-direct·{v0},·Ljava/lang/CloneNotSupportedException;-><init>()V
  
207 ····throw·v0207 ····throw·v0
208 .end·method208 .end·method
  
209 .method·protected·decodeInternal(Ljava/lang/String;)[B209 .method·protected·decodeInternal(Ljava/lang/String;)[B
210 ····.locals·14210 ····.locals·13
211 ····.param·p1,·"encoded"····#·Ljava/lang/String;211 ····.param·p1,·"encoded"····#·Ljava/lang/String;
212 ····.annotation·system·Ldalvik/annotation/Throws;212 ····.annotation·system·Ldalvik/annotation/Throws;
213 ········value·=·{213 ········value·=·{
214 ············Lcom/google/android/apps/authenticator/Base32String$DecodingException;214 ············Lcom/google/android/apps/authenticator/Base32String$DecodingException;
215 ········}215 ········}
216 ····.end·annotation216 ····.end·annotation
  
217 ····.prologue217 ····.prologue
 218 ····const/4·v8,·0x0
  
218 ····.line·71219 ····.line·71
219 ····invoke-virtual·{p1},·Ljava/lang/String;->trim()Ljava/lang/String;220 ····invoke-virtual·{p1},·Ljava/lang/String;->trim()Ljava/lang/String;
  
220 ····move-result-object·v11221 ····move-result-object·v9
  
221 ····const-string·v12,·"-"222 ····const-string·v10,·"-"
  
222 ····const-string·v13,·""223 ····const-string·v11,·""
  
223 ····invoke-virtual·{v11,·v12,·v13},·Ljava/lang/String;->replaceAll(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;224 ····invoke-virtual·{v9,·v10,·v11},·Ljava/lang/String;->replaceAll(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
  
224 ····move-result-object·v11225 ····move-result-object·v9
  
225 ····const-string·v12,·"·"226 ····const-string·v10,·"·"
  
226 ····const-string·v13,·""227 ····const-string·v11,·""
  
227 ····invoke-virtual·{v11,·v12,·v13},·Ljava/lang/String;->replaceAll(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;228 ····invoke-virtual·{v9,·v10,·v11},·Ljava/lang/String;->replaceAll(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
  
228 ····move-result-object·p1229 ····move-result-object·p1
  
229 ····.line·76230 ····.line·76
230 ····const-string·v11,·"[=]*$"231 ····const-string·v9,·"[=]*$"
  
231 ····const-string·v12,·""232 ····const-string·v10,·""
  
232 ····invoke-virtual·{p1,·v11,·v12},·Ljava/lang/String;->replaceFirst(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;233 ····invoke-virtual·{p1,·v9,·v10},·Ljava/lang/String;->replaceFirst(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
  
233 ····move-result-object·p1234 ····move-result-object·p1
  
234 ····.line·79235 ····.line·79
235 ····sget-object·v11,·Ljava/util/Locale;->US:Ljava/util/Locale;236 ····sget-object·v9,·Ljava/util/Locale;->US:Ljava/util/Locale;
  
236 ····invoke-virtual·{p1,·v11},·Ljava/lang/String;->toUpperCase(Ljava/util/Locale;)Ljava/lang/String;237 ····invoke-virtual·{p1,·v9},·Ljava/lang/String;->toUpperCase(Ljava/util/Locale;)Ljava/lang/String;
  
237 ····move-result-object·p1238 ····move-result-object·p1
  
238 ····.line·80239 ····.line·80
239 ····invoke-virtual·{p1},·Ljava/lang/String;->length()I240 ····invoke-virtual·{p1},·Ljava/lang/String;->length()I
  
240 ····move-result·v11241 ····move-result·v9
  
241 ····if-nez·v11,·:cond_1242 ····if-nez·v9,·:cond_1
  
242 ····.line·81243 ····.line·81
243 ····const/4·v11,·0x0 
  
244 ····new-array·v10,·v11,·[B244 ····new-array·v7,·v8,·[B
  
245 ····.line·106245 ····.line·106
246 ····:cond_0246 ····:cond_0
247 ····return-object·v10247 ····return-object·v7
  
248 ····.line·83248 ····.line·83
249 ····:cond_1249 ····:cond_1
250 ····invoke-virtual·{p1},·Ljava/lang/String;->length()I250 ····invoke-virtual·{p1},·Ljava/lang/String;->length()I
  
251 ····move-result·v4251 ····move-result·v3
  
252 ····.line·84252 ····.line·84
253 ····.local·v4,·"encodedLength":I253 ····.local·v3,·"encodedLength":I
254 ····iget·v11,·p0,·Lcom/google/android/apps/authenticator/Base32String;->SHIFT:I254 ····iget·v9,·p0,·Lcom/google/android/apps/authenticator/Base32String;->SHIFT:I
  
255 ····mul-int/2addr·v11,·v4255 ····mul-int/2addr·v9,·v3
  
256 ····div-int/lit8·v9,·v11,·0x8256 ····div-int/lit8·v6,·v9,·0x8
  
257 ····.line·85257 ····.line·85
258 ····.local·v9,·"outLength":I258 ····.local·v6,·"outLength":I
259 ····new-array·v10,·v9,·[B259 ····new-array·v7,·v6,·[B
  
260 ····.line·86260 ····.line·86
261 ····.local·v10,·"result":[B261 ····.local·v7,·"result":[B
262 ····const/4·v2,·0x0262 ····const/4·v1,·0x0
  
263 ····.line·87263 ····.line·87
264 ····.local·v2,·"buffer":I264 ····.local·v1,·"buffer":I
265 ····const/4·v7,·0x0265 ····const/4·v4,·0x0
  
266 ····.line·88266 ····.line·88
267 ····.local·v7,·"next":I267 ····.local·v4,·"next":I
268 ····const/4·v1,·0x0268 ····const/4·v0,·0x0
  
269 ····.line·89269 ····.line·89
270 ····.local·v1,·"bitsLeft":I270 ····.local·v0,·"bitsLeft":I
271 ····invoke-virtual·{p1},·Ljava/lang/String;->toCharArray()[C271 ····invoke-virtual·{p1},·Ljava/lang/String;->toCharArray()[C
  
272 ····move-result-object·v0272 ····move-result-object·v10
  
273 ····.local·v0,·"arr$":[C 
274 ····array-length·v6,·v0273 ····array-length·v11,·v10
  
 274 ····move·v9,·v8
275 ····.local·v6,·"len$":I 
276 ····const/4·v5,·0x0 
  
277 ····.local·v5,·"i$":I 
278 ····move·v8,·v7275 ····move·v5,·v4
  
279 ····.end·local·v7····#·"next":I276 ····.end·local·v4····#·"next":I
280 ····.local·v8,·"next":I277 ····.local·v5,·"next":I
281 ····:goto_0278 ····:goto_0
282 ····if-ge·v5,·v6,·:cond_0279 ····if-ge·v9,·v11,·:cond_0
  
283 ····aget-char·v3,·v0,·v5280 ····aget-char·v2,·v10,·v9
  
284 ····.line·90281 ····.line·90
285 ····.local·v3,·"c":C282 ····.local·v2,·"c":C
286 ····iget-object·v11,·p0,·Lcom/google/android/apps/authenticator/Base32String;->CHAR_MAP:Ljava/util/HashMap;283 ····iget-object·v8,·p0,·Lcom/google/android/apps/authenticator/Base32String;->CHAR_MAP:Ljava/util/HashMap;
Max diff block lines reached; 4878/9312 bytes (52.38%) of diff not shown.
1.95 KB
smali/com/google/android/apps/authenticator/CheckCodeActivity.smali
    
Offset 19, 15 lines modifiedOffset 19, 15 lines modified
19 ····.line·4219 ····.line·42
20 ····invoke-direct·{p0},·Landroid/app/Activity;-><init>()V20 ····invoke-direct·{p0},·Landroid/app/Activity;-><init>()V
  
21 ····return-void21 ····return-void
22 .end·method22 .end·method
  
23 .method·static·getCheckCode(Ljava/lang/String;)Ljava/lang/String;23 .method·static·getCheckCode(Ljava/lang/String;)Ljava/lang/String;
24 ····.locals·524 ····.locals·6
25 ····.param·p0,·"secret"····#·Ljava/lang/String;25 ····.param·p0,·"secret"····#·Ljava/lang/String;
26 ····.annotation·system·Ldalvik/annotation/Throws;26 ····.annotation·system·Ldalvik/annotation/Throws;
27 ········value·=·{27 ········value·=·{
28 ············Ljava/security/GeneralSecurityException;,28 ············Ljava/security/GeneralSecurityException;,
29 ············Lcom/google/android/apps/authenticator/Base32String$DecodingException;29 ············Lcom/google/android/apps/authenticator/Base32String$DecodingException;
30 ········}30 ········}
31 ····.end·annotation31 ····.end·annotation
Offset 59, 17 lines modifiedOffset 59, 17 lines modified
59 ····.line·9759 ····.line·97
60 ····new-instance·v2,·Lcom/google/android/apps/authenticator/PasscodeGenerator;60 ····new-instance·v2,·Lcom/google/android/apps/authenticator/PasscodeGenerator;
  
61 ····invoke-direct·{v2,·v1},·Lcom/google/android/apps/authenticator/PasscodeGenerator;-><init>(Ljavax/crypto/Mac;)V61 ····invoke-direct·{v2,·v1},·Lcom/google/android/apps/authenticator/PasscodeGenerator;-><init>(Ljavax/crypto/Mac;)V
  
62 ····.line·9862 ····.line·98
63 ····.local·v2,·"pcg":Lcom/google/android/apps/authenticator/PasscodeGenerator;63 ····.local·v2,·"pcg":Lcom/google/android/apps/authenticator/PasscodeGenerator;
64 ····const-wide/16·v3,·0x064 ····const-wide/16·v4,·0x0
  
65 ····invoke-virtual·{v2,·v3,·v4},·Lcom/google/android/apps/authenticator/PasscodeGenerator;->generateResponseCode(J)Ljava/lang/String;65 ····invoke-virtual·{v2,·v4,·v5},·Lcom/google/android/apps/authenticator/PasscodeGenerator;->generateResponseCode(J)Ljava/lang/String;
  
66 ····move-result-object·v366 ····move-result-object·v3
  
67 ····return-object·v367 ····return-object·v3
68 .end·method68 .end·method
  
  
Offset 284, 20 lines modifiedOffset 284, 22 lines modified
  
284 ····const/4·v12,·0x1284 ····const/4·v12,·0x1
  
285 ····new-array·v12,·v12,·[Ljava/lang/Object;285 ····new-array·v12,·v12,·[Ljava/lang/Object;
  
286 ····const/4·v13,·0x0286 ····const/4·v13,·0x0
  
 287 ····.line·85
287 ····invoke-static·{v10},·Landroid/text/TextUtils;->htmlEncode(Ljava/lang/String;)Ljava/lang/String;288 ····invoke-static·{v10},·Landroid/text/TextUtils;->htmlEncode(Ljava/lang/String;)Ljava/lang/String;
  
288 ····move-result-object·v14289 ····move-result-object·v14
  
289 ····aput-object·v14,·v12,·v13290 ····aput-object·v14,·v12,·v13
  
 291 ····.line·84
290 ····invoke-static·{v11,·v12},·Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;292 ····invoke-static·{v11,·v12},·Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
  
291 ····move-result-object·v2293 ····move-result-object·v2
  
292 ····.line·86294 ····.line·86
293 ····.local·v2,·"checkCodeMessage":Ljava/lang/String;295 ····.local·v2,·"checkCodeMessage":Ljava/lang/String;
294 ····invoke-static·{v2},·Landroid/text/Html;->fromHtml(Ljava/lang/String;)Landroid/text/Spanned;296 ····invoke-static·{v2},·Landroid/text/Html;->fromHtml(Ljava/lang/String;)Landroid/text/Spanned;
749 B
smali/com/google/android/apps/authenticator/AuthenticatorActivity$2.smali
    
Offset 20, 14 lines modifiedOffset 20, 15 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
25 ····.prologue26 ····.prologue
26 ····.line·24527 ····.line·245
27 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$2;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$2;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
28 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
2.62 KB
smali/com/google/android/apps/authenticator/TotpCountdownTask.smali
    
Offset 28, 15 lines modifiedOffset 28, 15 lines modified
28 .field·private·final·mRemainingTimeNotificationPeriod:J28 .field·private·final·mRemainingTimeNotificationPeriod:J
  
29 .field·private·mShouldStop:Z29 .field·private·mShouldStop:Z
  
  
30 #·direct·methods30 #·direct·methods
31 .method·constructor·<init>(Lcom/google/android/apps/authenticator/TotpCounter;Lcom/google/android/apps/authenticator/TotpClock;J)V31 .method·constructor·<init>(Lcom/google/android/apps/authenticator/TotpCounter;Lcom/google/android/apps/authenticator/TotpClock;J)V
32 ····.locals·232 ····.locals·3
33 ····.param·p1,·"counter"····#·Lcom/google/android/apps/authenticator/TotpCounter;33 ····.param·p1,·"counter"····#·Lcom/google/android/apps/authenticator/TotpCounter;
34 ····.param·p2,·"clock"····#·Lcom/google/android/apps/authenticator/TotpClock;34 ····.param·p2,·"clock"····#·Lcom/google/android/apps/authenticator/TotpClock;
35 ····.param·p3,·"remainingTimeNotificationPeriod"····#·J35 ····.param·p3,·"remainingTimeNotificationPeriod"····#·J
  
36 ····.prologue36 ····.prologue
37 ····.line·6237 ····.line·62
38 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V38 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
Offset 110, 59 lines modifiedOffset 110, 59 lines modified
  
110 ····.line·135110 ····.line·135
111 ····:cond_0111 ····:cond_0
112 ····return-void112 ····return-void
113 .end·method113 .end·method
  
114 .method·private·getCounterValue(J)J114 .method·private·getCounterValue(J)J
115 ····.locals·3115 ····.locals·5
116 ····.param·p1,·"time"····#·J116 ····.param·p1,·"time"····#·J
  
117 ····.prologue117 ····.prologue
118 ····.line·143118 ····.line·143
119 ····iget-object·v0,·p0,·Lcom/google/android/apps/authenticator/TotpCountdownTask;->mCounter:Lcom/google/android/apps/authenticator/TotpCounter;119 ····iget-object·v0,·p0,·Lcom/google/android/apps/authenticator/TotpCountdownTask;->mCounter:Lcom/google/android/apps/authenticator/TotpCounter;
  
120 ····invoke-static·{p1,·p2},·Lcom/google/android/apps/authenticator/Utilities;->millisToSeconds(J)J120 ····invoke-static·{p1,·p2},·Lcom/google/android/apps/authenticator/Utilities;->millisToSeconds(J)J
  
121 ····move-result-wide·v1121 ····move-result-wide·v2
  
122 ····invoke-virtual·{v0,·v1,·v2},·Lcom/google/android/apps/authenticator/TotpCounter;->getValueAtTime(J)J122 ····invoke-virtual·{v0,·v2,·v3},·Lcom/google/android/apps/authenticator/TotpCounter;->getValueAtTime(J)J
  
123 ····move-result-wide·v0123 ····move-result-wide·v0
  
124 ····return-wide·v0124 ····return-wide·v0
125 .end·method125 .end·method
  
126 .method·private·getCounterValueAge(J)J126 .method·private·getCounterValueAge(J)J
127 ····.locals·3127 ····.locals·5
128 ····.param·p1,·"time"····#·J128 ····.param·p1,·"time"····#·J
  
129 ····.prologue129 ····.prologue
130 ····.line·168130 ····.line·168
131 ····iget-object·v0,·p0,·Lcom/google/android/apps/authenticator/TotpCountdownTask;->mCounter:Lcom/google/android/apps/authenticator/TotpCounter;131 ····iget-object·v0,·p0,·Lcom/google/android/apps/authenticator/TotpCountdownTask;->mCounter:Lcom/google/android/apps/authenticator/TotpCounter;
  
132 ····invoke-direct·{p0,·p1,·p2},·Lcom/google/android/apps/authenticator/TotpCountdownTask;->getCounterValue(J)J132 ····invoke-direct·{p0,·p1,·p2},·Lcom/google/android/apps/authenticator/TotpCountdownTask;->getCounterValue(J)J
  
133 ····move-result-wide·v1133 ····move-result-wide·v2
  
134 ····invoke-virtual·{v0,·v1,·v2},·Lcom/google/android/apps/authenticator/TotpCounter;->getValueStartTime(J)J134 ····invoke-virtual·{v0,·v2,·v3},·Lcom/google/android/apps/authenticator/TotpCounter;->getValueStartTime(J)J
  
135 ····move-result-wide·v0135 ····move-result-wide·v0
  
136 ····invoke-static·{v0,·v1},·Lcom/google/android/apps/authenticator/Utilities;->secondsToMillis(J)J136 ····invoke-static·{v0,·v1},·Lcom/google/android/apps/authenticator/Utilities;->secondsToMillis(J)J
  
137 ····move-result-wide·v0137 ····move-result-wide·v0
  
138 ····sub-long·v0,·p1,·v0138 ····sub-long·v0,·p1,·v0
  
139 ····return-wide·v0139 ····return-wide·v0
140 .end·method140 .end·method
  
141 .method·private·getTimeTillNextCounterValue(J)J141 .method·private·getTimeTillNextCounterValue(J)J
142 ····.locals·8142 ····.locals·9
143 ····.param·p1,·"time"····#·J143 ····.param·p1,·"time"····#·J
  
144 ····.prologue144 ····.prologue
145 ····.line·154145 ····.line·154
146 ····invoke-direct·{p0,·p1,·p2},·Lcom/google/android/apps/authenticator/TotpCountdownTask;->getCounterValue(J)J146 ····invoke-direct·{p0,·p1,·p2},·Lcom/google/android/apps/authenticator/TotpCountdownTask;->getCounterValue(J)J
  
147 ····move-result-wide·v0147 ····move-result-wide·v0
5.47 KB
smali/com/google/android/apps/authenticator/OtpProvider.smali
    
Offset 20, 32 lines modifiedOffset 20, 32 lines modified
20 .field·private·final·mTotpClock:Lcom/google/android/apps/authenticator/TotpClock;20 .field·private·final·mTotpClock:Lcom/google/android/apps/authenticator/TotpClock;
  
21 .field·private·final·mTotpCounter:Lcom/google/android/apps/authenticator/TotpCounter;21 .field·private·final·mTotpCounter:Lcom/google/android/apps/authenticator/TotpCounter;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·public·constructor·<init>(ILcom/google/android/apps/authenticator/AccountDb;Lcom/google/android/apps/authenticator/TotpClock;)V23 .method·public·constructor·<init>(ILcom/google/android/apps/authenticator/AccountDb;Lcom/google/android/apps/authenticator/TotpClock;)V
24 ····.locals·324 ····.locals·4
25 ····.param·p1,·"interval"····#·I25 ····.param·p1,·"interval"····#·I
26 ····.param·p2,·"accountDb"····#·Lcom/google/android/apps/authenticator/AccountDb;26 ····.param·p2,·"accountDb"····#·Lcom/google/android/apps/authenticator/AccountDb;
27 ····.param·p3,·"totpClock"····#·Lcom/google/android/apps/authenticator/TotpClock;27 ····.param·p3,·"totpClock"····#·Lcom/google/android/apps/authenticator/TotpClock;
  
28 ····.prologue28 ····.prologue
29 ····.line·10329 ····.line·103
30 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V30 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
31 ····.line·10431 ····.line·104
32 ····iput-object·p2,·p0,·Lcom/google/android/apps/authenticator/OtpProvider;->mAccountDb:Lcom/google/android/apps/authenticator/AccountDb;32 ····iput-object·p2,·p0,·Lcom/google/android/apps/authenticator/OtpProvider;->mAccountDb:Lcom/google/android/apps/authenticator/AccountDb;
  
33 ····.line·10533 ····.line·105
34 ····new-instance·v0,·Lcom/google/android/apps/authenticator/TotpCounter;34 ····new-instance·v0,·Lcom/google/android/apps/authenticator/TotpCounter;
  
35 ····int-to-long·v1,·p135 ····int-to-long·v2,·p1
  
36 ····invoke-direct·{v0,·v1,·v2},·Lcom/google/android/apps/authenticator/TotpCounter;-><init>(J)V36 ····invoke-direct·{v0,·v2,·v3},·Lcom/google/android/apps/authenticator/TotpCounter;-><init>(J)V
  
37 ····iput-object·v0,·p0,·Lcom/google/android/apps/authenticator/OtpProvider;->mTotpCounter:Lcom/google/android/apps/authenticator/TotpCounter;37 ····iput-object·v0,·p0,·Lcom/google/android/apps/authenticator/OtpProvider;->mTotpCounter:Lcom/google/android/apps/authenticator/TotpCounter;
  
38 ····.line·10638 ····.line·106
39 ····iput-object·p3,·p0,·Lcom/google/android/apps/authenticator/OtpProvider;->mTotpClock:Lcom/google/android/apps/authenticator/TotpClock;39 ····iput-object·p3,·p0,·Lcom/google/android/apps/authenticator/OtpProvider;->mTotpClock:Lcom/google/android/apps/authenticator/TotpClock;
  
40 ····.line·10740 ····.line·107
Offset 64, 15 lines modifiedOffset 64, 15 lines modified
64 ····invoke-direct·{p0,·v0,·p1,·p2},·Lcom/google/android/apps/authenticator/OtpProvider;-><init>(ILcom/google/android/apps/authenticator/AccountDb;Lcom/google/android/apps/authenticator/TotpClock;)V64 ····invoke-direct·{p0,·v0,·p1,·p2},·Lcom/google/android/apps/authenticator/OtpProvider;-><init>(ILcom/google/android/apps/authenticator/AccountDb;Lcom/google/android/apps/authenticator/TotpClock;)V
  
65 ····.line·10165 ····.line·101
66 ····return-void66 ····return-void
67 .end·method67 .end·method
  
68 .method·private·computePin(Ljava/lang/String;J[B)Ljava/lang/String;68 .method·private·computePin(Ljava/lang/String;J[B)Ljava/lang/String;
69 ····.locals·569 ····.locals·6
70 ····.param·p1,·"secret"····#·Ljava/lang/String;70 ····.param·p1,·"secret"····#·Ljava/lang/String;
71 ····.param·p2,·"otp_state"····#·J71 ····.param·p2,·"otp_state"····#·J
72 ····.param·p4,·"challenge"····#·[B72 ····.param·p4,·"challenge"····#·[B
73 ····.annotation·system·Ldalvik/annotation/Throws;73 ····.annotation·system·Ldalvik/annotation/Throws;
74 ········value·=·{74 ········value·=·{
75 ············Lcom/google/android/apps/authenticator/OtpSourceException;75 ············Lcom/google/android/apps/authenticator/OtpSourceException;
76 ········}76 ········}
Offset 116, 29 lines modifiedOffset 116, 31 lines modified
116 ····:goto_0116 ····:goto_0
117 ····invoke-direct·{v1,·v2,·v3},·Lcom/google/android/apps/authenticator/PasscodeGenerator;-><init>(Lcom/google/android/apps/authenticator/PasscodeGenerator$Signer;I)V117 ····invoke-direct·{v1,·v2,·v3},·Lcom/google/android/apps/authenticator/PasscodeGenerator;-><init>(Lcom/google/android/apps/authenticator/PasscodeGenerator$Signer;I)V
  
118 ····.line·128118 ····.line·128
119 ····.local·v1,·"pcg":Lcom/google/android/apps/authenticator/PasscodeGenerator;119 ····.local·v1,·"pcg":Lcom/google/android/apps/authenticator/PasscodeGenerator;
120 ····if-nez·p4,·:cond_3120 ····if-nez·p4,·:cond_3
  
 121 ····.line·129
121 ····invoke-virtual·{v1,·p2,·p3},·Lcom/google/android/apps/authenticator/PasscodeGenerator;->generateResponseCode(J)Ljava/lang/String;122 ····invoke-virtual·{v1,·p2,·p3},·Lcom/google/android/apps/authenticator/PasscodeGenerator;->generateResponseCode(J)Ljava/lang/String;
  
122 ····move-result-object·v3123 ····move-result-object·v3
  
 124 ····.line·128
123 ····:goto_1125 ····:goto_1
124 ····return-object·v3126 ····return-object·v3
  
125 ····.line·125127 ····.line·125
126 ····.end·local·v1····#·"pcg":Lcom/google/android/apps/authenticator/PasscodeGenerator;128 ····.end·local·v1····#·"pcg":Lcom/google/android/apps/authenticator/PasscodeGenerator;
127 ····:cond_2129 ····:cond_2
128 ····const/16·v3,·0x9130 ····const/16·v3,·0x9
  
129 ····goto·:goto_0131 ····goto·:goto_0
  
130 ····.line·128132 ····.line·130
131 ····.restart·local·v1····#·"pcg":Lcom/google/android/apps/authenticator/PasscodeGenerator;133 ····.restart·local·v1····#·"pcg":Lcom/google/android/apps/authenticator/PasscodeGenerator;
132 ····:cond_3134 ····:cond_3
133 ····invoke-virtual·{v1,·p2,·p3,·p4},·Lcom/google/android/apps/authenticator/PasscodeGenerator;->generateResponseCode(J[B)Ljava/lang/String;135 ····invoke-virtual·{v1,·p2,·p3,·p4},·Lcom/google/android/apps/authenticator/PasscodeGenerator;->generateResponseCode(J[B)Ljava/lang/String;
134 ····:try_end_0136 ····:try_end_0
135 ····.catch·Ljava/security/GeneralSecurityException;·{:try_start_0·..·:try_end_0}·:catch_0137 ····.catch·Ljava/security/GeneralSecurityException;·{:try_start_0·..·:try_end_0}·:catch_0
  
136 ····move-result-object·v3138 ····move-result-object·v3
Offset 193, 47 lines modifiedOffset 195, 48 lines modified
  
193 ····move-result-object·v4195 ····move-result-object·v4
  
194 ····.line·81196 ····.line·81
195 ····.local·v4,·"type":Lcom/google/android/apps/authenticator/AccountDb$OtpType;197 ····.local·v4,·"type":Lcom/google/android/apps/authenticator/AccountDb$OtpType;
196 ····invoke-virtual·{p0,·p1},·Lcom/google/android/apps/authenticator/OtpProvider;->getSecret(Ljava/lang/String;)Ljava/lang/String;198 ····invoke-virtual·{p0,·p1},·Lcom/google/android/apps/authenticator/OtpProvider;->getSecret(Ljava/lang/String;)Ljava/lang/String;
  
197 ····move-result-object·v3199 ····move-result-object·v1
  
198 ····.line·83200 ····.line·83
199 ····.local·v3,·"secret":Ljava/lang/String;201 ····.local·v1,·"secret":Ljava/lang/String;
200 ····const-wide/16·v1,·0x0202 ····const-wide/16·v2,·0x0
  
201 ····.line·85203 ····.line·85
202 ····.local·v1,·"otp_state":J204 ····.local·v2,·"otp_state":J
203 ····sget-object·v5,·Lcom/google/android/apps/authenticator/AccountDb$OtpType;->TOTP:Lcom/google/android/apps/authenticator/AccountDb$OtpType;205 ····sget-object·v5,·Lcom/google/android/apps/authenticator/AccountDb$OtpType;->TOTP:Lcom/google/android/apps/authenticator/AccountDb$OtpType;
  
204 ····if-ne·v4,·v5,·:cond_2206 ····if-ne·v4,·v5,·:cond_2
  
205 ····.line·87207 ····.line·87
206 ····iget-object·v5,·p0,·Lcom/google/android/apps/authenticator/OtpProvider;->mTotpCounter:Lcom/google/android/apps/authenticator/TotpCounter;208 ····iget-object·v5,·p0,·Lcom/google/android/apps/authenticator/OtpProvider;->mTotpCounter:Lcom/google/android/apps/authenticator/TotpCounter;
  
207 ····iget-object·v6,·p0,·Lcom/google/android/apps/authenticator/OtpProvider;->mTotpClock:Lcom/google/android/apps/authenticator/TotpClock;209 ····iget-object·v6,·p0,·Lcom/google/android/apps/authenticator/OtpProvider;->mTotpClock:Lcom/google/android/apps/authenticator/TotpClock;
  
 210 ····.line·88
208 ····invoke-virtual·{v6},·Lcom/google/android/apps/authenticator/TotpClock;->currentTimeMillis()J211 ····invoke-virtual·{v6},·Lcom/google/android/apps/authenticator/TotpClock;->currentTimeMillis()J
  
209 ····move-result-wide·v6212 ····move-result-wide·v6
  
210 ····invoke-static·{v6,·v7},·Lcom/google/android/apps/authenticator/Utilities;->millisToSeconds(J)J213 ····invoke-static·{v6,·v7},·Lcom/google/android/apps/authenticator/Utilities;->millisToSeconds(J)J
  
211 ····move-result-wide·v6214 ····move-result-wide·v6
  
212 ····invoke-virtual·{v5,·v6,·v7},·Lcom/google/android/apps/authenticator/TotpCounter;->getValueAtTime(J)J215 ····invoke-virtual·{v5,·v6,·v7},·Lcom/google/android/apps/authenticator/TotpCounter;->getValueAtTime(J)J
  
213 ····move-result-wide·v1216 ····move-result-wide·v2
  
214 ····.line·96217 ····.line·96
215 ····:cond_1218 ····:cond_1
216 ····:goto_0219 ····:goto_0
217 ····invoke-direct·{p0,·v3,·v1,·v2,·p2},·Lcom/google/android/apps/authenticator/OtpProvider;->computePin(Ljava/lang/String;J[B)Ljava/lang/String;220 ····invoke-direct·{p0,·v1,·v2,·v3,·p2},·Lcom/google/android/apps/authenticator/OtpProvider;->computePin(Ljava/lang/String;J[B)Ljava/lang/String;
  
218 ····move-result-object·v5221 ····move-result-object·v5
  
219 ····return-object·v5222 ····return-object·v5
  
Max diff block lines reached; 353/5476 bytes (6.45%) of diff not shown.
1.61 KB
smali/com/google/android/apps/authenticator/TotpCounter.smali
    
Offset 7, 15 lines modifiedOffset 7, 15 lines modified
7 .field·private·final·mStartTime:J7 .field·private·final·mStartTime:J
  
8 .field·private·final·mTimeStep:J8 .field·private·final·mTimeStep:J
  
  
9 #·direct·methods9 #·direct·methods
10 .method·public·constructor·<init>(J)V10 .method·public·constructor·<init>(J)V
11 ····.locals·211 ····.locals·3
12 ····.param·p1,·"timeStep"····#·J12 ····.param·p1,·"timeStep"····#·J
  
13 ····.prologue13 ····.prologue
14 ····.line·6014 ····.line·60
15 ····const-wide/16·v0,·0x015 ····const-wide/16·v0,·0x0
  
16 ····invoke-direct·{p0,·p1,·p2,·v0,·v1},·Lcom/google/android/apps/authenticator/TotpCounter;-><init>(JJ)V16 ····invoke-direct·{p0,·p1,·p2,·v0,·v1},·Lcom/google/android/apps/authenticator/TotpCounter;-><init>(JJ)V
Offset 76, 15 lines modifiedOffset 76, 15 lines modified
76 ····iput-wide·p3,·p0,·Lcom/google/android/apps/authenticator/TotpCounter;->mStartTime:J76 ····iput-wide·p3,·p0,·Lcom/google/android/apps/authenticator/TotpCounter;->mStartTime:J
  
77 ····.line·7977 ····.line·79
78 ····return-void78 ····return-void
79 .end·method79 .end·method
  
80 .method·private·static·assertValidTime(J)V80 .method·private·static·assertValidTime(J)V
81 ····.locals·381 ····.locals·4
82 ····.param·p0,·"time"····#·J82 ····.param·p0,·"time"····#·J
  
83 ····.prologue83 ····.prologue
84 ····.line·14484 ····.line·144
85 ····const-wide/16·v0,·0x085 ····const-wide/16·v0,·0x0
  
86 ····cmp-long·v0,·p0,·v086 ····cmp-long·v0,·p0,·v0
Offset 140, 15 lines modifiedOffset 140, 15 lines modified
140 ····.line·87140 ····.line·87
141 ····iget-wide·v0,·p0,·Lcom/google/android/apps/authenticator/TotpCounter;->mTimeStep:J141 ····iget-wide·v0,·p0,·Lcom/google/android/apps/authenticator/TotpCounter;->mTimeStep:J
  
142 ····return-wide·v0142 ····return-wide·v0
143 .end·method143 .end·method
  
144 .method·public·getValueAtTime(J)J144 .method·public·getValueAtTime(J)J
145 ····.locals·6145 ····.locals·7
146 ····.param·p1,·"time"····#·J146 ····.param·p1,·"time"····#·J
  
147 ····.prologue147 ····.prologue
148 ····.line·107148 ····.line·107
149 ····invoke-static·{p1,·p2},·Lcom/google/android/apps/authenticator/TotpCounter;->assertValidTime(J)V149 ····invoke-static·{p1,·p2},·Lcom/google/android/apps/authenticator/TotpCounter;->assertValidTime(J)V
  
150 ····.line·124150 ····.line·124
Offset 186, 15 lines modifiedOffset 186, 15 lines modified
  
186 ····div-long/2addr·v2,·v4186 ····div-long/2addr·v2,·v4
  
187 ····goto·:goto_0187 ····goto·:goto_0
188 .end·method188 .end·method
  
189 .method·public·getValueStartTime(J)J189 .method·public·getValueStartTime(J)J
190 ····.locals·4190 ····.locals·5
191 ····.param·p1,·"value"····#·J191 ····.param·p1,·"value"····#·J
  
192 ····.prologue192 ····.prologue
193 ····.line·140193 ····.line·140
194 ····iget-wide·v0,·p0,·Lcom/google/android/apps/authenticator/TotpCounter;->mStartTime:J194 ····iget-wide·v0,·p0,·Lcom/google/android/apps/authenticator/TotpCounter;->mStartTime:J
  
195 ····iget-wide·v2,·p0,·Lcom/google/android/apps/authenticator/TotpCounter;->mTimeStep:J195 ····iget-wide·v2,·p0,·Lcom/google/android/apps/authenticator/TotpCounter;->mTimeStep:J
2.92 KB
smali/com/google/android/apps/authenticator/AuthenticatorActivity$6.smali
    
Offset 26, 14 lines modifiedOffset 26, 15 lines modified
  
26 .field·final·synthetic·val$user:Ljava/lang/String;26 .field·final·synthetic·val$user:Ljava/lang/String;
  
  
27 #·direct·methods27 #·direct·methods
28 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;Landroid/widget/EditText;Ljava/lang/String;Landroid/content/Context;)V28 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;Landroid/widget/EditText;Ljava/lang/String;Landroid/content/Context;)V
29 ····.locals·029 ····.locals·0
 30 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
30 ····.prologue31 ····.prologue
31 ····.line·74332 ····.line·743
32 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$6;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;33 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$6;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
33 ····iput-object·p2,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$6;->val$nameEdit:Landroid/widget/EditText;34 ····iput-object·p2,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$6;->val$nameEdit:Landroid/widget/EditText;
  
Offset 104, 14 lines modifiedOffset 105, 15 lines modified
  
104 ····.line·751105 ····.line·751
105 ····:cond_1106 ····:cond_1
106 ····iget-object·v0,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$6;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;107 ····iget-object·v0,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$6;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
107 ····iget-object·v2,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$6;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;108 ····iget-object·v2,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$6;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
 109 ····.line·752
108 ····invoke-static·{v2},·Lcom/google/android/apps/authenticator/AuthenticatorActivity;->access$1100(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)Lcom/google/android/apps/authenticator/AccountDb;110 ····invoke-static·{v2},·Lcom/google/android/apps/authenticator/AuthenticatorActivity;->access$1100(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)Lcom/google/android/apps/authenticator/AccountDb;
  
109 ····move-result-object·v2111 ····move-result-object·v2
  
110 ····iget-object·v3,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$6;->val$user:Ljava/lang/String;112 ····iget-object·v3,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$6;->val$user:Ljava/lang/String;
  
111 ····invoke-virtual·{v2,·v3},·Lcom/google/android/apps/authenticator/AccountDb;->getSecret(Ljava/lang/String;)Ljava/lang/String;113 ····invoke-virtual·{v2,·v3},·Lcom/google/android/apps/authenticator/AccountDb;->getSecret(Ljava/lang/String;)Ljava/lang/String;
Offset 130, 21 lines modifiedOffset 132, 23 lines modified
  
130 ····invoke-virtual·{v4,·v5},·Lcom/google/android/apps/authenticator/AccountDb;->getType(Ljava/lang/String;)Lcom/google/android/apps/authenticator/AccountDb$OtpType;132 ····invoke-virtual·{v4,·v5},·Lcom/google/android/apps/authenticator/AccountDb;->getType(Ljava/lang/String;)Lcom/google/android/apps/authenticator/AccountDb$OtpType;
  
131 ····move-result-object·v4133 ····move-result-object·v4
  
132 ····iget-object·v5,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$6;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;134 ····iget-object·v5,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$6;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
 135 ····.line·753
133 ····invoke-static·{v5},·Lcom/google/android/apps/authenticator/AuthenticatorActivity;->access$1100(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)Lcom/google/android/apps/authenticator/AccountDb;136 ····invoke-static·{v5},·Lcom/google/android/apps/authenticator/AuthenticatorActivity;->access$1100(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)Lcom/google/android/apps/authenticator/AccountDb;
  
134 ····move-result-object·v5137 ····move-result-object·v5
  
135 ····iget-object·v6,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$6;->val$user:Ljava/lang/String;138 ····iget-object·v6,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$6;->val$user:Ljava/lang/String;
  
136 ····invoke-virtual·{v5,·v6},·Lcom/google/android/apps/authenticator/AccountDb;->getCounter(Ljava/lang/String;)Ljava/lang/Integer;139 ····invoke-virtual·{v5,·v6},·Lcom/google/android/apps/authenticator/AccountDb;->getCounter(Ljava/lang/String;)Ljava/lang/Integer;
  
137 ····move-result-object·v5140 ····move-result-object·v5
  
 141 ····.line·751
138 ····invoke-static/range·{v0·..·v5},·Lcom/google/android/apps/authenticator/AuthenticatorActivity;->access$1200(Lcom/google/android/apps/authenticator/AuthenticatorActivity;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/google/android/apps/authenticator/AccountDb$OtpType;Ljava/lang/Integer;)V142 ····invoke-static/range·{v0·..·v5},·Lcom/google/android/apps/authenticator/AuthenticatorActivity;->access$1200(Lcom/google/android/apps/authenticator/AuthenticatorActivity;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/google/android/apps/authenticator/AccountDb$OtpType;Ljava/lang/Integer;)V
  
139 ····goto·:goto_0143 ····goto·:goto_0
140 .end·method144 .end·method
710 B
smali/com/google/android/apps/authenticator/AuthenticatorActivity$9.smali
    
Offset 22, 14 lines modifiedOffset 22, 15 lines modified
  
22 .field·final·synthetic·val$id:I22 .field·final·synthetic·val$id:I
  
  
23 #·direct·methods23 #·direct·methods
24 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;I)V24 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AuthenticatorActivity;I)V
25 ····.locals·025 ····.locals·0
 26 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
26 ····.prologue27 ····.prologue
27 ····.line·93028 ····.line·930
28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$9;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;29 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$9;->this$0:Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
29 ····iput·p2,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$9;->val$id:I30 ····iput·p2,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity$9;->val$id:I
  
762 B
smali/com/google/android/apps/authenticator/AddOtherAccountActivity$1.smali
    
Offset 20, 14 lines modifiedOffset 20, 15 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AddOtherAccountActivity;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/AddOtherAccountActivity;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AddOtherAccountActivity;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/AddOtherAccountActivity;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/AddOtherAccountActivity;
  
25 ····.prologue26 ····.prologue
26 ····.line·4227 ····.line·42
27 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AddOtherAccountActivity$1;->this$0:Lcom/google/android/apps/authenticator/AddOtherAccountActivity;28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/AddOtherAccountActivity$1;->this$0:Lcom/google/android/apps/authenticator/AddOtherAccountActivity;
  
28 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
62.7 KB
smali/com/google/android/apps/authenticator/AuthenticatorActivity.smali
    
Offset 102, 14 lines modifiedOffset 102, 15 lines modified
102 ····.line·107102 ····.line·107
103 ····new-instance·v0,·Ljava/lang/StringBuilder;103 ····new-instance·v0,·Ljava/lang/StringBuilder;
  
104 ····invoke-direct·{v0},·Ljava/lang/StringBuilder;-><init>()V104 ····invoke-direct·{v0},·Ljava/lang/StringBuilder;-><init>()V
  
105 ····const-class·v1,·Lcom/google/android/apps/authenticator/AuthenticatorActivity;105 ····const-class·v1,·Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
 106 ····.line·108
106 ····invoke-virtual·{v1},·Ljava/lang/Class;->getName()Ljava/lang/String;107 ····invoke-virtual·{v1},·Ljava/lang/Class;->getName()Ljava/lang/String;
  
107 ····move-result-object·v1108 ····move-result-object·v1
  
108 ····invoke-virtual·{v0,·v1},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;109 ····invoke-virtual·{v0,·v1},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  
109 ····move-result-object·v0110 ····move-result-object·v0
Offset 122, 14 lines modifiedOffset 123, 15 lines modified
  
122 ····invoke-virtual·{v0},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;123 ····invoke-virtual·{v0},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  
123 ····move-result-object·v0124 ····move-result-object·v0
  
124 ····sput-object·v0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity;->ACTION_SCAN_BARCODE:Ljava/lang/String;125 ····sput-object·v0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity;->ACTION_SCAN_BARCODE:Ljava/lang/String;
  
 126 ····.line·107
125 ····return-void127 ····return-void
126 .end·method128 .end·method
  
127 .method·public·constructor·<init>()V129 .method·public·constructor·<init>()V
128 ····.locals·1130 ····.locals·1
  
129 ····.prologue131 ····.prologue
Offset 139, 15 lines modifiedOffset 141, 14 lines modified
139 ····.line·115141 ····.line·115
140 ····const/4·v0,·0x0142 ····const/4·v0,·0x0
  
141 ····new-array·v0,·v0,·[Lcom/google/android/apps/authenticator/AuthenticatorActivity$PinInfo;143 ····new-array·v0,·v0,·[Lcom/google/android/apps/authenticator/AuthenticatorActivity$PinInfo;
  
142 ····iput-object·v0,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity;->mUsers:[Lcom/google/android/apps/authenticator/AuthenticatorActivity$PinInfo;144 ····iput-object·v0,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity;->mUsers:[Lcom/google/android/apps/authenticator/AuthenticatorActivity$PinInfo;
  
143 ····.line·1215 
144 ····return-void145 ····return-void
145 .end·method146 .end·method
  
146 .method·static·synthetic·access$1100(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)Lcom/google/android/apps/authenticator/AccountDb;147 .method·static·synthetic·access$1100(Lcom/google/android/apps/authenticator/AuthenticatorActivity;)Lcom/google/android/apps/authenticator/AccountDb;
147 ····.locals·1148 ····.locals·1
148 ····.param·p0,·"x0"····#·Lcom/google/android/apps/authenticator/AuthenticatorActivity;149 ····.param·p0,·"x0"····#·Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
Offset 283, 15 lines modifiedOffset 284, 15 lines modified
283 ····.line·74284 ····.line·74
284 ····iget-object·v0,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity;->mUserList:Landroid/widget/ListView;285 ····iget-object·v0,·p0,·Lcom/google/android/apps/authenticator/AuthenticatorActivity;->mUserList:Landroid/widget/ListView;
  
285 ····return-object·v0286 ····return-object·v0
286 .end·method287 .end·method
  
287 .method·static·synthetic·access$500(Lcom/google/android/apps/authenticator/AuthenticatorActivity;J)V288 .method·static·synthetic·access$500(Lcom/google/android/apps/authenticator/AuthenticatorActivity;J)V
288 ····.locals·0289 ····.locals·1
289 ····.param·p0,·"x0"····#·Lcom/google/android/apps/authenticator/AuthenticatorActivity;290 ····.param·p0,·"x0"····#·Lcom/google/android/apps/authenticator/AuthenticatorActivity;
290 ····.param·p1,·"x1"····#·J291 ····.param·p1,·"x1"····#·J
  
291 ····.prologue292 ····.prologue
292 ····.line·74293 ····.line·74
293 ····invoke-direct·{p0,·p1,·p2},·Lcom/google/android/apps/authenticator/AuthenticatorActivity;->setTotpCountdownPhaseFromTimeTillNextValue(J)V294 ····invoke-direct·{p0,·p1,·p2},·Lcom/google/android/apps/authenticator/AuthenticatorActivity;->setTotpCountdownPhaseFromTimeTillNextValue(J)V
  
Offset 332, 38 lines modifiedOffset 333, 44 lines modified
  
332 ····.prologue333 ····.prologue
333 ····.line·1003334 ····.line·1003
334 ····new-instance·v0,·Landroid/app/AlertDialog$Builder;335 ····new-instance·v0,·Landroid/app/AlertDialog$Builder;
  
335 ····invoke-direct·{v0,·p0},·Landroid/app/AlertDialog$Builder;-><init>(Landroid/content/Context;)V336 ····invoke-direct·{v0,·p0},·Landroid/app/AlertDialog$Builder;-><init>(Landroid/content/Context;)V
  
 337 ····.line·1004
336 ····invoke-virtual·{v0,·p1},·Landroid/app/AlertDialog$Builder;->setTitle(I)Landroid/app/AlertDialog$Builder;338 ····invoke-virtual·{v0,·p1},·Landroid/app/AlertDialog$Builder;->setTitle(I)Landroid/app/AlertDialog$Builder;
  
337 ····move-result-object·v0339 ····move-result-object·v0
  
 340 ····.line·1005
338 ····invoke-virtual·{v0,·p2},·Landroid/app/AlertDialog$Builder;->setMessage(I)Landroid/app/AlertDialog$Builder;341 ····invoke-virtual·{v0,·p2},·Landroid/app/AlertDialog$Builder;->setMessage(I)Landroid/app/AlertDialog$Builder;
  
339 ····move-result-object·v0342 ····move-result-object·v0
  
 343 ····.line·1006
340 ····invoke-virtual·{v0,·p3},·Landroid/app/AlertDialog$Builder;->setIcon(I)Landroid/app/AlertDialog$Builder;344 ····invoke-virtual·{v0,·p3},·Landroid/app/AlertDialog$Builder;->setIcon(I)Landroid/app/AlertDialog$Builder;
  
341 ····move-result-object·v0345 ····move-result-object·v0
  
342 ····const·v1,·0x7f060037346 ····const·v1,·0x7f060037
  
343 ····const/4·v2,·0x0347 ····const/4·v2,·0x0
  
 348 ····.line·1007
344 ····invoke-virtual·{v0,·v1,·v2},·Landroid/app/AlertDialog$Builder;->setPositiveButton(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder;349 ····invoke-virtual·{v0,·v1,·v2},·Landroid/app/AlertDialog$Builder;->setPositiveButton(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder;
  
345 ····move-result-object·v0350 ····move-result-object·v0
  
 351 ····.line·1008
346 ····invoke-virtual·{v0},·Landroid/app/AlertDialog$Builder;->create()Landroid/app/AlertDialog;352 ····invoke-virtual·{v0},·Landroid/app/AlertDialog$Builder;->create()Landroid/app/AlertDialog;
  
347 ····move-result-object·v0353 ····move-result-object·v0
  
 354 ····.line·1003
348 ····return-object·v0355 ····return-object·v0
349 .end·method356 .end·method
  
350 .method·private·displayHowItWorksInstructions()V357 .method·private·displayHowItWorksInstructions()V
351 ····.locals·2358 ····.locals·2
  
352 ····.prologue359 ····.prologue
Offset 394, 18 lines modifiedOffset 401, 20 lines modified
  
394 ····new-instance·v1,·Landroid/content/ComponentName;401 ····new-instance·v1,·Landroid/content/ComponentName;
  
395 ····const-class·v2,·Lcom/google/android/apps/authenticator/AuthenticatorActivity;402 ····const-class·v2,·Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
396 ····invoke-direct·{v1,·p0,·v2},·Landroid/content/ComponentName;-><init>(Landroid/content/Context;Ljava/lang/Class;)V403 ····invoke-direct·{v1,·p0,·v2},·Landroid/content/ComponentName;-><init>(Landroid/content/Context;Ljava/lang/Class;)V
  
 404 ····.line·815
397 ····invoke-virtual·{v0,·v1},·Landroid/content/Intent;->setComponent(Landroid/content/ComponentName;)Landroid/content/Intent;405 ····invoke-virtual·{v0,·v1},·Landroid/content/Intent;->setComponent(Landroid/content/ComponentName;)Landroid/content/Intent;
  
398 ····move-result-object·v0406 ····move-result-object·v0
  
 407 ····.line·814
399 ····return-object·v0408 ····return-object·v0
400 .end·method409 .end·method
  
401 .method·private·getRenameClickListener(Landroid/content/Context;Ljava/lang/String;Landroid/widget/EditText;)Landroid/content/DialogInterface$OnClickListener;410 .method·private·getRenameClickListener(Landroid/content/Context;Ljava/lang/String;Landroid/widget/EditText;)Landroid/content/DialogInterface$OnClickListener;
402 ····.locals·1411 ····.locals·1
Max diff block lines reached; 59921/64016 bytes (93.60%) of diff not shown.
1.06 KB
smali/com/google/android/apps/authenticator/testability/DependencyInjector.smali
    
Offset 425, 14 lines modifiedOffset 425, 15 lines modified
425 ····:try_start_1425 ····:try_start_1
426 ····new-instance·v2,·Ljava/lang/StringBuilder;426 ····new-instance·v2,·Ljava/lang/StringBuilder;
  
427 ····invoke-direct·{v2},·Ljava/lang/StringBuilder;-><init>()V427 ····invoke-direct·{v2},·Ljava/lang/StringBuilder;-><init>()V
  
428 ····const-class·v4,·Lcom/google/android/apps/authenticator/AuthenticatorActivity;428 ····const-class·v4,·Lcom/google/android/apps/authenticator/AuthenticatorActivity;
  
 429 ····.line·211
429 ····invoke-virtual·{v4},·Ljava/lang/Class;->getPackage()Ljava/lang/Package;430 ····invoke-virtual·{v4},·Ljava/lang/Class;->getPackage()Ljava/lang/Package;
  
430 ····move-result-object·v4431 ····move-result-object·v4
  
431 ····invoke-virtual·{v4},·Ljava/lang/Package;->getName()Ljava/lang/String;432 ····invoke-virtual·{v4},·Ljava/lang/Package;->getName()Ljava/lang/String;
  
432 ····move-result-object·v4433 ····move-result-object·v4
Offset 447, 14 lines modifiedOffset 448, 15 lines modified
  
447 ····move-result-object·v2448 ····move-result-object·v2
  
448 ····invoke-virtual·{v2},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;449 ····invoke-virtual·{v2},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  
449 ····move-result-object·v2450 ····move-result-object·v2
  
 451 ····.line·210
450 ····invoke-static·{v2},·Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;452 ····invoke-static·{v2},·Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
451 ····:try_end_1453 ····:try_end_1
452 ····.catch·Ljava/lang/ClassNotFoundException;·{:try_start_1·..·:try_end_1}·:catch_1454 ····.catch·Ljava/lang/ClassNotFoundException;·{:try_start_1·..·:try_end_1}·:catch_1
453 ····.catchall·{:try_start_1·..·:try_end_1}·:catchall_0455 ····.catchall·{:try_start_1·..·:try_end_1}·:catchall_0
  
454 ····move-result-object·v1456 ····move-result-object·v1
  
3.36 KB
smali/com/google/android/apps/authenticator/testability/HttpClientFactory.smali
    
Offset 19, 52 lines modifiedOffset 19, 52 lines modified
19 ····.line·5319 ····.line·53
20 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V20 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
21 ····return-void21 ····return-void
22 .end·method22 .end·method
  
23 .method·private·static·configureHttpClient(Lorg/apache/http/client/HttpClient;)V23 .method·private·static·configureHttpClient(Lorg/apache/http/client/HttpClient;)V
24 ····.locals·424 ····.locals·5
25 ····.param·p0,·"httpClient"····#·Lorg/apache/http/client/HttpClient;25 ····.param·p0,·"httpClient"····#·Lorg/apache/http/client/HttpClient;
  
26 ····.prologue26 ····.prologue
27 ····const/16·v1,·0x4e2027 ····const/16·v1,·0x4e20
  
28 ····const/4·v3,·0x028 ····const/4·v4,·0x0
  
29 ····.line·7829 ····.line·78
30 ····invoke-interface·{p0},·Lorg/apache/http/client/HttpClient;->getParams()Lorg/apache/http/params/HttpParams;30 ····invoke-interface·{p0},·Lorg/apache/http/client/HttpClient;->getParams()Lorg/apache/http/params/HttpParams;
  
31 ····move-result-object·v031 ····move-result-object·v0
  
32 ····.line·7932 ····.line·79
33 ····.local·v0,·"params":Lorg/apache/http/params/HttpParams;33 ····.local·v0,·"params":Lorg/apache/http/params/HttpParams;
34 ····invoke-static·{v0,·v3},·Lorg/apache/http/params/HttpConnectionParams;->setStaleCheckingEnabled(Lorg/apache/http/params/HttpParams;Z)V34 ····invoke-static·{v0,·v4},·Lorg/apache/http/params/HttpConnectionParams;->setStaleCheckingEnabled(Lorg/apache/http/params/HttpParams;Z)V
  
35 ····.line·8035 ····.line·80
36 ····invoke-static·{v0,·v1},·Lorg/apache/http/params/HttpConnectionParams;->setConnectionTimeout(Lorg/apache/http/params/HttpParams;I)V36 ····invoke-static·{v0,·v1},·Lorg/apache/http/params/HttpConnectionParams;->setConnectionTimeout(Lorg/apache/http/params/HttpParams;I)V
  
37 ····.line·8137 ····.line·81
38 ····invoke-static·{v0,·v1},·Lorg/apache/http/params/HttpConnectionParams;->setSoTimeout(Lorg/apache/http/params/HttpParams;I)V38 ····invoke-static·{v0,·v1},·Lorg/apache/http/params/HttpConnectionParams;->setSoTimeout(Lorg/apache/http/params/HttpParams;I)V
  
39 ····.line·8239 ····.line·82
40 ····const/16·v1,·0x200040 ····const/16·v1,·0x2000
  
41 ····invoke-static·{v0,·v1},·Lorg/apache/http/params/HttpConnectionParams;->setSocketBufferSize(Lorg/apache/http/params/HttpParams;I)V41 ····invoke-static·{v0,·v1},·Lorg/apache/http/params/HttpConnectionParams;->setSocketBufferSize(Lorg/apache/http/params/HttpParams;I)V
  
42 ····.line·8342 ····.line·83
43 ····const-wide/16·v1,·0x4e2043 ····const-wide/16·v2,·0x4e20
  
44 ····invoke-static·{v0,·v1,·v2},·Lorg/apache/http/conn/params/ConnManagerParams;->setTimeout(Lorg/apache/http/params/HttpParams;J)V44 ····invoke-static·{v0,·v2,·v3},·Lorg/apache/http/conn/params/ConnManagerParams;->setTimeout(Lorg/apache/http/params/HttpParams;J)V
  
45 ····.line·8645 ····.line·86
46 ····invoke-static·{v0,·v3},·Lorg/apache/http/client/params/HttpClientParams;->setRedirecting(Lorg/apache/http/params/HttpParams;Z)V46 ····invoke-static·{v0,·v4},·Lorg/apache/http/client/params/HttpClientParams;->setRedirecting(Lorg/apache/http/params/HttpParams;Z)V
  
47 ····.line·8947 ····.line·89
48 ····invoke-static·{v0,·v3},·Lorg/apache/http/client/params/HttpClientParams;->setAuthenticating(Lorg/apache/http/params/HttpParams;Z)V48 ····invoke-static·{v0,·v4},·Lorg/apache/http/client/params/HttpClientParams;->setAuthenticating(Lorg/apache/http/params/HttpParams;Z)V
  
49 ····.line·9049 ····.line·90
50 ····return-void50 ····return-void
51 .end·method51 .end·method
  
52 .method·static·createHttpClient(Landroid/content/Context;)Lorg/apache/http/client/HttpClient;52 .method·static·createHttpClient(Landroid/content/Context;)Lorg/apache/http/client/HttpClient;
53 ····.locals·453 ····.locals·4
Offset 154, 14 lines modifiedOffset 154, 15 lines modified
154 ····const/4·v7,·0x2154 ····const/4·v7,·0x2
  
155 ····const/4·v6,·0x1155 ····const/4·v6,·0x1
  
156 ····const/4·v5,·0x0156 ····const/4·v5,·0x0
  
157 ····.line·99157 ····.line·99
 158 ····.line·100
158 ····invoke-virtual·{p0},·Landroid/content/Context;->getClassLoader()Ljava/lang/ClassLoader;159 ····invoke-virtual·{p0},·Landroid/content/Context;->getClassLoader()Ljava/lang/ClassLoader;
  
159 ····move-result-object·v2160 ····move-result-object·v2
  
160 ····const-string·v3,·"android.net.http.AndroidHttpClient"161 ····const-string·v3,·"android.net.http.AndroidHttpClient"
  
161 ····invoke-virtual·{v2,·v3},·Ljava/lang/ClassLoader;->loadClass(Ljava/lang/String;)Ljava/lang/Class;162 ····invoke-virtual·{v2,·v3},·Ljava/lang/ClassLoader;->loadClass(Ljava/lang/String;)Ljava/lang/Class;
Offset 178, 14 lines modifiedOffset 179, 15 lines modified
  
178 ····aput-object·v4,·v3,·v5179 ····aput-object·v4,·v3,·v5
  
179 ····const-class·v4,·Landroid/content/Context;180 ····const-class·v4,·Landroid/content/Context;
  
180 ····aput-object·v4,·v3,·v6181 ····aput-object·v4,·v3,·v6
  
 182 ····.line·102
181 ····invoke-virtual·{v0,·v2,·v3},·Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;183 ····invoke-virtual·{v0,·v2,·v3},·Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
  
182 ····move-result-object·v1184 ····move-result-object·v1
  
183 ····.line·103185 ····.line·103
184 ····.local·v1,·"newInstanceMethod":Ljava/lang/reflect/Method;186 ····.local·v1,·"newInstanceMethod":Ljava/lang/reflect/Method;
185 ····new-array·v2,·v7,·[Ljava/lang/Object;187 ····new-array·v2,·v7,·[Ljava/lang/Object;
14.3 KB
smali/com/google/android/apps/authenticator/dataimport/Importer.smali
    
Offset 2, 15 lines modifiedOffset 2, 14 lines modified
2 .super·Ljava/lang/Object;2 .super·Ljava/lang/Object;
3 .source·"Importer.java"3 .source·"Importer.java"
  
  
4 #·annotations4 #·annotations
5 .annotation·system·Ldalvik/annotation/MemberClasses;5 .annotation·system·Ldalvik/annotation/MemberClasses;
6 ····value·=·{6 ····value·=·{
7 ········Lcom/google/android/apps/authenticator/dataimport/Importer$1;, 
8 ········Lcom/google/android/apps/authenticator/dataimport/Importer$IntegerStringComparator;7 ········Lcom/google/android/apps/authenticator/dataimport/Importer$IntegerStringComparator;
9 ····}8 ····}
10 .end·annotation9 .end·annotation
  
  
11 #·static·fields10 #·static·fields
12 .field·static·final·KEY_ACCOUNTS:Ljava/lang/String;·=·"accountDb"11 .field·static·final·KEY_ACCOUNTS:Ljava/lang/String;·=·"accountDb"
Offset 48, 61 lines modifiedOffset 47, 59 lines modified
48 .method·public·constructor·<init>()V47 .method·public·constructor·<init>()V
49 ····.locals·048 ····.locals·0
  
50 ····.prologue49 ····.prologue
51 ····.line·3650 ····.line·36
52 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V51 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
53 ····.line·134 
54 ····return-void52 ····return-void
55 .end·method53 .end·method
  
56 .method·private·importAccountDbFromBundle(Landroid/os/Bundle;Lcom/google/android/apps/authenticator/AccountDb;)V54 .method·private·importAccountDbFromBundle(Landroid/os/Bundle;Lcom/google/android/apps/authenticator/AccountDb;)V
57 ····.locals·1355 ····.locals·13
58 ····.param·p1,·"bundle"····#·Landroid/os/Bundle;56 ····.param·p1,·"bundle"····#·Landroid/os/Bundle;
59 ····.param·p2,·"accountDb"····#·Lcom/google/android/apps/authenticator/AccountDb;57 ····.param·p2,·"accountDb"····#·Lcom/google/android/apps/authenticator/AccountDb;
  
60 ····.prologue58 ····.prologue
61 ····.line·8359 ····.line·83
62 ····new-instance·v10,·Ljava/util/ArrayList;60 ····new-instance·v9,·Ljava/util/ArrayList;
  
63 ····invoke-virtual·{p1},·Landroid/os/Bundle;->keySet()Ljava/util/Set;61 ····invoke-virtual·{p1},·Landroid/os/Bundle;->keySet()Ljava/util/Set;
  
64 ····move-result-object·v062 ····move-result-object·v0
  
65 ····invoke-direct·{v10,·v0},·Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V63 ····invoke-direct·{v9,·v0},·Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V
  
66 ····.line·8464 ····.line·84
67 ····.local·v10,·"sortedAccountBundleKeys":Ljava/util/List;,·"Ljava/util/List<Ljava/lang/String;>;"65 ····.local·v9,·"sortedAccountBundleKeys":Ljava/util/List;,·"Ljava/util/List<Ljava/lang/String;>;"
68 ····new-instance·v0,·Lcom/google/android/apps/authenticator/dataimport/Importer$IntegerStringComparator;66 ····new-instance·v0,·Lcom/google/android/apps/authenticator/dataimport/Importer$IntegerStringComparator;
  
69 ····const/4·v3,·0x067 ····const/4·v3,·0x0
  
70 ····invoke-direct·{v0,·v3},·Lcom/google/android/apps/authenticator/dataimport/Importer$IntegerStringComparator;-><init>(Lcom/google/android/apps/authenticator/dataimport/Importer$1;)V68 ····invoke-direct·{v0,·v3},·Lcom/google/android/apps/authenticator/dataimport/Importer$IntegerStringComparator;-><init>(Lcom/google/android/apps/authenticator/dataimport/Importer$1;)V
  
71 ····invoke-static·{v10,·v0},·Ljava/util/Collections;->sort(Ljava/util/List;Ljava/util/Comparator;)V69 ····invoke-static·{v9,·v0},·Ljava/util/Collections;->sort(Ljava/util/List;Ljava/util/Comparator;)V
  
72 ····.line·8570 ····.line·85
73 ····const/4·v9,·0x071 ····const/4·v8,·0x0
  
74 ····.line·8672 ····.line·86
75 ····.local·v9,·"importedAccountCount":I73 ····.local·v8,·"importedAccountCount":I
76 ····invoke-interface·{v10},·Ljava/util/List;->iterator()Ljava/util/Iterator;74 ····invoke-interface·{v9},·Ljava/util/List;->iterator()Ljava/util/Iterator;
  
77 ····move-result-object·v875 ····move-result-object·v11
  
78 ····.local·v8,·"i$":Ljava/util/Iterator; 
79 ····:goto_076 ····:goto_0
80 ····invoke-interface·{v8},·Ljava/util/Iterator;->hasNext()Z77 ····invoke-interface·{v11},·Ljava/util/Iterator;->hasNext()Z
  
81 ····move-result·v078 ····move-result·v0
  
82 ····if-eqz·v0,·:cond_879 ····if-eqz·v0,·:cond_8
  
83 ····invoke-interface·{v8},·Ljava/util/Iterator;->next()Ljava/lang/Object;80 ····invoke-interface·{v11},·Ljava/util/Iterator;->next()Ljava/lang/Object;
  
84 ····move-result-object·v781 ····move-result-object·v7
  
85 ····check-cast·v7,·Ljava/lang/String;82 ····check-cast·v7,·Ljava/lang/String;
  
86 ····.line·8783 ····.line·87
87 ····.local·v7,·"accountBundleKey":Ljava/lang/String;84 ····.local·v7,·"accountBundleKey":Ljava/lang/String;
Offset 237, 34 lines modifiedOffset 234, 35 lines modified
  
237 ····.line·103234 ····.line·103
238 ····:cond_2235 ····:cond_2
239 ····const-string·v0,·"type"236 ····const-string·v0,·"type"
  
240 ····invoke-virtual·{v6,·v0},·Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;237 ····invoke-virtual·{v6,·v0},·Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
  
241 ····move-result-object·v11238 ····move-result-object·v10
  
242 ····.line·105239 ····.line·105
243 ····.local·v11,·"typeString":Ljava/lang/String;240 ····.local·v10,·"typeString":Ljava/lang/String;
244 ····const-string·v0,·"totp"241 ····const-string·v0,·"totp"
  
245 ····invoke-virtual·{v0,·v11},·Ljava/lang/String;->equals(Ljava/lang/Object;)Z242 ····invoke-virtual·{v0,·v10},·Ljava/lang/String;->equals(Ljava/lang/Object;)Z
  
246 ····move-result·v0243 ····move-result·v0
  
247 ····if-eqz·v0,·:cond_3244 ····if-eqz·v0,·:cond_3
  
248 ····.line·106245 ····.line·106
249 ····sget-object·v4,·Lcom/google/android/apps/authenticator/AccountDb$OtpType;->TOTP:Lcom/google/android/apps/authenticator/AccountDb$OtpType;246 ····sget-object·v4,·Lcom/google/android/apps/authenticator/AccountDb$OtpType;->TOTP:Lcom/google/android/apps/authenticator/AccountDb$OtpType;
  
250 ····.line·115247 ····.line·115
251 ····.local·v4,·"type":Lcom/google/android/apps/authenticator/AccountDb$OtpType;248 ····.local·v4,·"type":Lcom/google/android/apps/authenticator/AccountDb$OtpType;
252 ····:goto_1249 ····:goto_1
253 ····const-string·v0,·"counter"250 ····const-string·v0,·"counter"
  
 251 ····.line·116
254 ····invoke-virtual·{v6,·v0},·Landroid/os/Bundle;->containsKey(Ljava/lang/String;)Z252 ····invoke-virtual·{v6,·v0},·Landroid/os/Bundle;->containsKey(Ljava/lang/String;)Z
  
255 ····move-result·v0253 ····move-result·v0
  
256 ····if-eqz·v0,·:cond_5254 ····if-eqz·v0,·:cond_5
  
257 ····const-string·v0,·"counter"255 ····const-string·v0,·"counter"
Offset 320, 15 lines modifiedOffset 318, 15 lines modified
  
320 ····.line·107318 ····.line·107
321 ····.end·local·v4····#·"type":Lcom/google/android/apps/authenticator/AccountDb$OtpType;319 ····.end·local·v4····#·"type":Lcom/google/android/apps/authenticator/AccountDb$OtpType;
322 ····.end·local·v5····#·"counter":Ljava/lang/Integer;320 ····.end·local·v5····#·"counter":Ljava/lang/Integer;
323 ····:cond_3321 ····:cond_3
324 ····const-string·v0,·"hotp"322 ····const-string·v0,·"hotp"
  
325 ····invoke-virtual·{v0,·v11},·Ljava/lang/String;->equals(Ljava/lang/Object;)Z323 ····invoke-virtual·{v0,·v10},·Ljava/lang/String;->equals(Ljava/lang/Object;)Z
  
326 ····move-result·v0324 ····move-result·v0
  
327 ····if-eqz·v0,·:cond_4325 ····if-eqz·v0,·:cond_4
  
Max diff block lines reached; 10036/14485 bytes (69.29%) of diff not shown.
1.64 KB
smali/com/google/android/apps/authenticator/dataimport/ExportServiceBasedImportController$ExportServiceConnection.smali
    
Offset 95, 28 lines modifiedOffset 95, 32 lines modified
  
95 ····.line·10495 ····.line·104
96 ····:try_start_296 ····:try_start_2
97 ····new-instance·v3,·Lcom/google/android/apps/authenticator/dataimport/Importer;97 ····new-instance·v3,·Lcom/google/android/apps/authenticator/dataimport/Importer;
  
98 ····invoke-direct·{v3},·Lcom/google/android/apps/authenticator/dataimport/Importer;-><init>()V98 ····invoke-direct·{v3},·Lcom/google/android/apps/authenticator/dataimport/Importer;-><init>()V
  
 99 ····.line·106
99 ····invoke-static·{},·Lcom/google/android/apps/authenticator/testability/DependencyInjector;->getAccountDb()Lcom/google/android/apps/authenticator/AccountDb;100 ····invoke-static·{},·Lcom/google/android/apps/authenticator/testability/DependencyInjector;->getAccountDb()Lcom/google/android/apps/authenticator/AccountDb;
  
100 ····move-result-object·v4101 ····move-result-object·v4
  
 102 ····.line·107
101 ····invoke-static·{},·Lcom/google/android/apps/authenticator/testability/DependencyInjector;->getOptionalFeatures()Lcom/google/android/apps/authenticator/OptionalFeatures;103 ····invoke-static·{},·Lcom/google/android/apps/authenticator/testability/DependencyInjector;->getOptionalFeatures()Lcom/google/android/apps/authenticator/OptionalFeatures;
  
102 ····move-result-object·v5104 ····move-result-object·v5
  
103 ····iget-object·v6,·p0,·Lcom/google/android/apps/authenticator/dataimport/ExportServiceBasedImportController$ExportServiceConnection;->mContext:Landroid/content/Context;105 ····iget-object·v6,·p0,·Lcom/google/android/apps/authenticator/dataimport/ExportServiceBasedImportController$ExportServiceConnection;->mContext:Landroid/content/Context;
  
 106 ····.line·108
104 ····invoke-interface·{v5,·v6},·Lcom/google/android/apps/authenticator/OptionalFeatures;->getSharedPreferencesForDataImportFromOldApp(Landroid/content/Context;)Landroid/content/SharedPreferences;107 ····invoke-interface·{v5,·v6},·Lcom/google/android/apps/authenticator/OptionalFeatures;->getSharedPreferencesForDataImportFromOldApp(Landroid/content/Context;)Landroid/content/SharedPreferences;
  
105 ····move-result-object·v5108 ····move-result-object·v5
  
 109 ····.line·104
106 ····invoke-virtual·{v3,·v2,·v4,·v5},·Lcom/google/android/apps/authenticator/dataimport/Importer;->importFromBundle(Landroid/os/Bundle;Lcom/google/android/apps/authenticator/AccountDb;Landroid/content/SharedPreferences;)V110 ····invoke-virtual·{v3,·v2,·v4,·v5},·Lcom/google/android/apps/authenticator/dataimport/Importer;->importFromBundle(Landroid/os/Bundle;Lcom/google/android/apps/authenticator/AccountDb;Landroid/content/SharedPreferences;)V
  
107 ····.line·109111 ····.line·109
108 ····const-string·v3,·"ImportController"112 ····const-string·v3,·"ImportController"
  
109 ····const-string·v4,·"Successfully·imported·data·from·the·old·app"113 ····const-string·v4,·"Successfully·imported·data·from·the·old·app"
  
874 B
smali/com/google/android/apps/authenticator/dataimport/Importer$IntegerStringComparator.smali
    
Offset 49, 25 lines modifiedOffset 49, 21 lines modified
49 ····return-void49 ····return-void
50 .end·method50 .end·method
  
  
51 #·virtual·methods51 #·virtual·methods
52 .method·public·bridge·synthetic·compare(Ljava/lang/Object;Ljava/lang/Object;)I52 .method·public·bridge·synthetic·compare(Ljava/lang/Object;Ljava/lang/Object;)I
53 ····.locals·153 ····.locals·1
54 ····.param·p1,·"x0"····#·Ljava/lang/Object; 
55 ····.param·p2,·"x1"····#·Ljava/lang/Object; 
  
56 ····.prologue54 ····.prologue
57 ····.line·13455 ····.line·134
58 ····check-cast·p1,·Ljava/lang/String;56 ····check-cast·p1,·Ljava/lang/String;
  
59 ····.end·local·p1····#·"x0":Ljava/lang/Object; 
60 ····check-cast·p2,·Ljava/lang/String;57 ····check-cast·p2,·Ljava/lang/String;
  
61 ····.end·local·p2····#·"x1":Ljava/lang/Object; 
62 ····invoke-virtual·{p0,·p1,·p2},·Lcom/google/android/apps/authenticator/dataimport/Importer$IntegerStringComparator;->compare(Ljava/lang/String;Ljava/lang/String;)I58 ····invoke-virtual·{p0,·p1,·p2},·Lcom/google/android/apps/authenticator/dataimport/Importer$IntegerStringComparator;->compare(Ljava/lang/String;Ljava/lang/String;)I
  
63 ····move-result·v059 ····move-result·v0
  
64 ····return·v060 ····return·v0
65 .end·method61 .end·method
  
1.39 KB
smali/com/google/android/apps/authenticator/dataimport/ExportServiceBasedImportController.smali
    
Offset 5, 15 lines modifiedOffset 5, 14 lines modified
5 #·interfaces5 #·interfaces
6 .implements·Lcom/google/android/apps/authenticator/dataimport/ImportController;6 .implements·Lcom/google/android/apps/authenticator/dataimport/ImportController;
  
  
7 #·annotations7 #·annotations
8 .annotation·system·Ldalvik/annotation/MemberClasses;8 .annotation·system·Ldalvik/annotation/MemberClasses;
9 ····value·=·{9 ····value·=·{
10 ········Lcom/google/android/apps/authenticator/dataimport/ExportServiceBasedImportController$1;, 
11 ········Lcom/google/android/apps/authenticator/dataimport/ExportServiceBasedImportController$ExportServiceConnection;10 ········Lcom/google/android/apps/authenticator/dataimport/ExportServiceBasedImportController$ExportServiceConnection;
12 ····}11 ····}
13 .end·annotation12 .end·annotation
  
  
14 #·static·fields13 #·static·fields
15 .field·private·static·final·LOG_TAG:Ljava/lang/String;·=·"ImportController"14 .field·private·static·final·LOG_TAG:Ljava/lang/String;·=·"ImportController"
Offset 149, 20 lines modifiedOffset 148, 22 lines modified
149 ····.line·165148 ····.line·165
150 ····new-instance·v0,·Landroid/content/Intent;149 ····new-instance·v0,·Landroid/content/Intent;
  
151 ····const-string·v1,·"android.intent.action.DELETE"150 ····const-string·v1,·"android.intent.action.DELETE"
  
152 ····const-string·v2,·"package:com.google.android.apps.authenticator"151 ····const-string·v2,·"package:com.google.android.apps.authenticator"
  
 152 ····.line·166
153 ····invoke-static·{v2},·Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;153 ····invoke-static·{v2},·Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
  
154 ····move-result-object·v2154 ····move-result-object·v2
  
155 ····invoke-direct·{v0,·v1,·v2},·Landroid/content/Intent;-><init>(Ljava/lang/String;Landroid/net/Uri;)V155 ····invoke-direct·{v0,·v1,·v2},·Landroid/content/Intent;-><init>(Ljava/lang/String;Landroid/net/Uri;)V
  
 156 ····.line·165
156 ····invoke-interface·{p0,·v0},·Lcom/google/android/apps/authenticator/dataimport/ImportController$Listener;->onOldAppUninstallSuggested(Landroid/content/Intent;)V157 ····invoke-interface·{p0,·v0},·Lcom/google/android/apps/authenticator/dataimport/ImportController$Listener;->onOldAppUninstallSuggested(Landroid/content/Intent;)V
  
157 ····.line·168158 ····.line·168
158 ····:cond_0159 ····:cond_0
159 ····return-void160 ····return-void
160 .end·method161 .end·method
  
784 B
smali/com/google/android/apps/authenticator/timesync/SyncNowController$2.smali
    
Offset 20, 14 lines modifiedOffset 20, 15 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowController;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowController;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/timesync/SyncNowController;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/timesync/SyncNowController;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/timesync/SyncNowController;
  
25 ····.prologue26 ····.prologue
26 ····.line·23127 ····.line·231
27 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowController$2;->this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowController;28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowController$2;->this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowController;
  
28 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
770 B
smali/com/google/android/apps/authenticator/timesync/SyncNowActivity$3.smali
    
Offset 20, 14 lines modifiedOffset 20, 15 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;
  
25 ····.prologue26 ····.prologue
26 ····.line·14127 ····.line·141
27 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity$3;->this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity$3;->this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;
  
28 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
784 B
smali/com/google/android/apps/authenticator/timesync/SyncNowController$1.smali
    
Offset 20, 14 lines modifiedOffset 20, 15 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowController;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowController;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/timesync/SyncNowController;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/timesync/SyncNowController;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/timesync/SyncNowController;
  
25 ····.prologue26 ····.prologue
26 ····.line·16527 ····.line·165
27 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowController$1;->this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowController;28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowController$1;->this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowController;
  
28 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
1.49 KB
smali/com/google/android/apps/authenticator/timesync/NetworkTimeProvider.smali
    
Offset 245, 15 lines modifiedOffset 245, 15 lines modified
245 ····.line·77245 ····.line·77
246 ····.local·v4,·"networkDate":Ljava/util/Date;246 ····.local·v4,·"networkDate":Ljava/util/Date;
247 ····invoke-virtual·{v4},·Ljava/util/Date;->getTime()J247 ····invoke-virtual·{v4},·Ljava/util/Date;->getTime()J
248 ····:try_end_4248 ····:try_end_4
249 ····.catch·Lorg/apache/http/impl/cookie/DateParseException;·{:try_start_4·..·:try_end_4}·:catch_2249 ····.catch·Lorg/apache/http/impl/cookie/DateParseException;·{:try_start_4·..·:try_end_4}·:catch_2
250 ····.catchall·{:try_start_4·..·:try_end_4}·:catchall_0250 ····.catchall·{:try_start_4·..·:try_end_4}·:catchall_0
  
251 ····move-result-wide·v7251 ····move-result-wide·v8
  
252 ····.line·87252 ····.line·87
253 ····:try_start_5253 ····:try_start_5
254 ····invoke-interface·{v3},·Lorg/apache/http/HttpResponse;->getEntity()Lorg/apache/http/HttpEntity;254 ····invoke-interface·{v3},·Lorg/apache/http/HttpResponse;->getEntity()Lorg/apache/http/HttpEntity;
  
255 ····move-result-object·v6255 ····move-result-object·v6
  
Offset 262, 19 lines modifiedOffset 262, 19 lines modified
262 ····if-eqz·v6,·:cond_2262 ····if-eqz·v6,·:cond_2
  
263 ····.line·89263 ····.line·89
264 ····invoke-interface·{v6},·Lorg/apache/http/HttpEntity;->consumeContent()V264 ····invoke-interface·{v6},·Lorg/apache/http/HttpEntity;->consumeContent()V
265 ····:try_end_5265 ····:try_end_5
266 ····.catch·Ljava/io/IOException;·{:try_start_5·..·:try_end_5}·:catch_4266 ····.catch·Ljava/io/IOException;·{:try_start_5·..·:try_end_5}·:catch_4
  
267 ····.line·93267 ····.line·77
268 ····.end·local·v6····#·"responseEntity":Lorg/apache/http/HttpEntity;268 ····.end·local·v6····#·"responseEntity":Lorg/apache/http/HttpEntity;
269 ····:cond_2269 ····:cond_2
270 ····:goto_1270 ····:goto_1
271 ····return-wide·v7271 ····return-wide·v8
  
272 ····.line·78272 ····.line·78
273 ····.end·local·v4····#·"networkDate":Ljava/util/Date;273 ····.end·local·v4····#·"networkDate":Ljava/util/Date;
274 ····:catch_2274 ····:catch_2
275 ····move-exception·v2275 ····move-exception·v2
  
276 ····.line·79276 ····.line·79
Offset 321, 11 lines modifiedOffset 321, 11 lines modified
  
321 ····goto·:goto_0321 ····goto·:goto_0
  
322 ····.restart·local·v0····#·"dateHeader":Lorg/apache/http/Header;322 ····.restart·local·v0····#·"dateHeader":Lorg/apache/http/Header;
323 ····.restart·local·v1····#·"dateHeaderValue":Ljava/lang/String;323 ····.restart·local·v1····#·"dateHeaderValue":Ljava/lang/String;
324 ····.restart·local·v4····#·"networkDate":Ljava/util/Date;324 ····.restart·local·v4····#·"networkDate":Ljava/util/Date;
325 ····:catch_4325 ····:catch_4
326 ····move-exception·v9326 ····move-exception·v7
  
327 ····goto·:goto_1327 ····goto·:goto_1
328 .end·method328 .end·method
783 B
smali/com/google/android/apps/authenticator/timesync/SyncNowController$3.smali
    
Offset 22, 14 lines modifiedOffset 22, 15 lines modified
  
22 .field·final·synthetic·val$timeCorrectionMinutes:I22 .field·final·synthetic·val$timeCorrectionMinutes:I
  
  
23 #·direct·methods23 #·direct·methods
24 .method·constructor·<init>(Lcom/google/android/apps/authenticator/timesync/SyncNowController;I)V24 .method·constructor·<init>(Lcom/google/android/apps/authenticator/timesync/SyncNowController;I)V
25 ····.locals·025 ····.locals·0
 26 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/timesync/SyncNowController;
  
26 ····.prologue27 ····.prologue
27 ····.line·24328 ····.line·243
28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowController$3;->this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowController;29 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowController$3;->this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowController;
  
29 ····iput·p2,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowController$3;->val$timeCorrectionMinutes:I30 ····iput·p2,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowController$3;->val$timeCorrectionMinutes:I
  
4.07 KB
smali/com/google/android/apps/authenticator/timesync/SyncNowController.smali
    
Offset 2, 15 lines modifiedOffset 2, 14 lines modified
2 .super·Ljava/lang/Object;2 .super·Ljava/lang/Object;
3 .source·"SyncNowController.java"3 .source·"SyncNowController.java"
  
  
4 #·annotations4 #·annotations
5 .annotation·system·Ldalvik/annotation/MemberClasses;5 .annotation·system·Ldalvik/annotation/MemberClasses;
6 ····value·=·{6 ····value·=·{
7 ········Lcom/google/android/apps/authenticator/timesync/SyncNowController$4;, 
8 ········Lcom/google/android/apps/authenticator/timesync/SyncNowController$State;,7 ········Lcom/google/android/apps/authenticator/timesync/SyncNowController$State;,
9 ········Lcom/google/android/apps/authenticator/timesync/SyncNowController$Presenter;,8 ········Lcom/google/android/apps/authenticator/timesync/SyncNowController$Presenter;,
10 ········Lcom/google/android/apps/authenticator/timesync/SyncNowController$Result;9 ········Lcom/google/android/apps/authenticator/timesync/SyncNowController$Result;
11 ····}10 ····}
12 .end·annotation11 .end·annotation
  
  
Offset 40, 14 lines modifiedOffset 39, 15 lines modified
40 .method·constructor·<init>(Lcom/google/android/apps/authenticator/TotpClock;Lcom/google/android/apps/authenticator/timesync/NetworkTimeProvider;)V39 .method·constructor·<init>(Lcom/google/android/apps/authenticator/TotpClock;Lcom/google/android/apps/authenticator/timesync/NetworkTimeProvider;)V
41 ····.locals·640 ····.locals·6
42 ····.param·p1,·"totpClock"····#·Lcom/google/android/apps/authenticator/TotpClock;41 ····.param·p1,·"totpClock"····#·Lcom/google/android/apps/authenticator/TotpClock;
43 ····.param·p2,·"networkTimeProvider"····#·Lcom/google/android/apps/authenticator/timesync/NetworkTimeProvider;42 ····.param·p2,·"networkTimeProvider"····#·Lcom/google/android/apps/authenticator/timesync/NetworkTimeProvider;
  
44 ····.prologue43 ····.prologue
45 ····.line·9144 ····.line·91
 45 ····.line·94
46 ····invoke-static·{},·Ljava/util/concurrent/Executors;->newSingleThreadExecutor()Ljava/util/concurrent/ExecutorService;46 ····invoke-static·{},·Ljava/util/concurrent/Executors;->newSingleThreadExecutor()Ljava/util/concurrent/ExecutorService;
  
47 ····move-result-object·v347 ····move-result-object·v3
  
48 ····const/4·v4,·0x148 ····const/4·v4,·0x1
  
49 ····new-instance·v5,·Lcom/google/android/apps/authenticator/RunOnThisLooperThreadExecutor;49 ····new-instance·v5,·Lcom/google/android/apps/authenticator/RunOnThisLooperThreadExecutor;
Offset 56, 14 lines modifiedOffset 56, 15 lines modified
  
56 ····move-object·v0,·p056 ····move-object·v0,·p0
  
57 ····move-object·v1,·p157 ····move-object·v1,·p1
  
58 ····move-object·v2,·p258 ····move-object·v2,·p2
  
 59 ····.line·91
59 ····invoke-direct/range·{v0·..·v5},·Lcom/google/android/apps/authenticator/timesync/SyncNowController;-><init>(Lcom/google/android/apps/authenticator/TotpClock;Lcom/google/android/apps/authenticator/timesync/NetworkTimeProvider;Ljava/util/concurrent/Executor;ZLjava/util/concurrent/Executor;)V60 ····invoke-direct/range·{v0·..·v5},·Lcom/google/android/apps/authenticator/timesync/SyncNowController;-><init>(Lcom/google/android/apps/authenticator/TotpClock;Lcom/google/android/apps/authenticator/timesync/NetworkTimeProvider;Ljava/util/concurrent/Executor;ZLjava/util/concurrent/Executor;)V
  
60 ····.line·9761 ····.line·97
61 ····return-void62 ····return-void
62 .end·method63 .end·method
  
63 .method·constructor·<init>(Lcom/google/android/apps/authenticator/TotpClock;Lcom/google/android/apps/authenticator/timesync/NetworkTimeProvider;Ljava/util/concurrent/Executor;ZLjava/util/concurrent/Executor;)V64 .method·constructor·<init>(Lcom/google/android/apps/authenticator/TotpClock;Lcom/google/android/apps/authenticator/timesync/NetworkTimeProvider;Ljava/util/concurrent/Executor;ZLjava/util/concurrent/Executor;)V
Offset 317, 50 lines modifiedOffset 318, 50 lines modified
317 ····:try_start_0318 ····:try_start_0
318 ····iget-object·v6,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowController;->mNetworkTimeProvider:Lcom/google/android/apps/authenticator/timesync/NetworkTimeProvider;319 ····iget-object·v6,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowController;->mNetworkTimeProvider:Lcom/google/android/apps/authenticator/timesync/NetworkTimeProvider;
  
319 ····invoke-virtual·{v6},·Lcom/google/android/apps/authenticator/timesync/NetworkTimeProvider;->getNetworkTime()J320 ····invoke-virtual·{v6},·Lcom/google/android/apps/authenticator/timesync/NetworkTimeProvider;->getNetworkTime()J
320 ····:try_end_0321 ····:try_end_0
321 ····.catch·Ljava/io/IOException;·{:try_start_0·..·:try_end_0}·:catch_0322 ····.catch·Ljava/io/IOException;·{:try_start_0·..·:try_end_0}·:catch_0
  
322 ····move-result-wide·v1323 ····move-result-wide·v2
  
323 ····.line·240324 ····.line·240
324 ····.local·v1,·"networkTimeMillis":J325 ····.local·v2,·"networkTimeMillis":J
325 ····invoke-static·{},·Ljava/lang/System;->currentTimeMillis()J326 ····invoke-static·{},·Ljava/lang/System;->currentTimeMillis()J
  
326 ····move-result-wide·v6327 ····move-result-wide·v6
  
327 ····sub-long·v3,·v1,·v6328 ····sub-long·v4,·v2,·v6
  
328 ····.line·241329 ····.line·241
329 ····.local·v3,·"timeCorrectionMillis":J330 ····.local·v4,·"timeCorrectionMillis":J
330 ····long-to-double·v6,·v3331 ····long-to-double·v6,·v4
  
331 ····const-wide·v8,·0x40ed4c0000000000L····#·60000.0332 ····const-wide·v8,·0x40ed4c0000000000L····#·60000.0
  
332 ····div-double/2addr·v6,·v8333 ····div-double/2addr·v6,·v8
  
333 ····invoke-static·{v6,·v7},·Ljava/lang/Math;->round(D)J334 ····invoke-static·{v6,·v7},·Ljava/lang/Math;->round(D)J
  
334 ····move-result-wide·v6335 ····move-result-wide·v6
  
335 ····long-to-int·v5,·v6336 ····long-to-int·v1,·v6
  
336 ····.line·243337 ····.line·243
337 ····.local·v5,·"timeCorrectionMinutes":I338 ····.local·v1,·"timeCorrectionMinutes":I
338 ····new-instance·v6,·Lcom/google/android/apps/authenticator/timesync/SyncNowController$3;339 ····new-instance·v6,·Lcom/google/android/apps/authenticator/timesync/SyncNowController$3;
  
339 ····invoke-direct·{v6,·p0,·v5},·Lcom/google/android/apps/authenticator/timesync/SyncNowController$3;-><init>(Lcom/google/android/apps/authenticator/timesync/SyncNowController;I)V340 ····invoke-direct·{v6,·p0,·v1},·Lcom/google/android/apps/authenticator/timesync/SyncNowController$3;-><init>(Lcom/google/android/apps/authenticator/timesync/SyncNowController;I)V
  
340 ····invoke-interface·{p1,·v6},·Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V341 ····invoke-interface·{p1,·v6},·Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
  
341 ····.line·249342 ····.line·249
342 ····.end·local·v1····#·"networkTimeMillis":J 
343 ····.end·local·v3····#·"timeCorrectionMillis":J 
344 ····.end·local·v5····#·"timeCorrectionMinutes":I343 ····.end·local·v1····#·"timeCorrectionMinutes":I
 344 ····.end·local·v2····#·"networkTimeMillis":J
 345 ····.end·local·v4····#·"timeCorrectionMillis":J
345 ····:goto_0346 ····:goto_0
346 ····return-void347 ····return-void
  
347 ····.line·229348 ····.line·229
348 ····:catch_0349 ····:catch_0
349 ····move-exception·v0350 ····move-exception·v0
  
770 B
smali/com/google/android/apps/authenticator/timesync/SyncNowActivity$2.smali
    
Offset 20, 14 lines modifiedOffset 20, 15 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;
  
25 ····.prologue26 ····.prologue
26 ····.line·12627 ····.line·126
27 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity$2;->this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity$2;->this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;
  
28 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
770 B
smali/com/google/android/apps/authenticator/timesync/SyncNowActivity$4.smali
    
Offset 20, 14 lines modifiedOffset 20, 15 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;
  
25 ····.prologue26 ····.prologue
26 ····.line·16827 ····.line·168
27 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity$4;->this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity$4;->this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;
  
28 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
7.86 KB
smali/com/google/android/apps/authenticator/timesync/SyncNowActivity.smali
    
Offset 2, 37 lines modifiedOffset 2, 28 lines modified
2 .super·Landroid/app/Activity;2 .super·Landroid/app/Activity;
3 .source·"SyncNowActivity.java"3 .source·"SyncNowActivity.java"
  
4 #·interfaces4 #·interfaces
5 .implements·Lcom/google/android/apps/authenticator/timesync/SyncNowController$Presenter;5 .implements·Lcom/google/android/apps/authenticator/timesync/SyncNowController$Presenter;
  
  
6 #·annotations 
7 .annotation·system·Ldalvik/annotation/MemberClasses; 
8 ····value·=·{ 
9 ········Lcom/google/android/apps/authenticator/timesync/SyncNowActivity$5; 
10 ····} 
11 .end·annotation 
  
  
12 #·instance·fields6 #·instance·fields
13 .field·private·mController:Lcom/google/android/apps/authenticator/timesync/SyncNowController;7 .field·private·mController:Lcom/google/android/apps/authenticator/timesync/SyncNowController;
  
14 .field·private·mProgressDialog:Landroid/app/Dialog;8 .field·private·mProgressDialog:Landroid/app/Dialog;
  
  
15 #·direct·methods9 #·direct·methods
16 .method·public·constructor·<init>()V10 .method·public·constructor·<init>()V
17 ····.locals·011 ····.locals·0
  
18 ····.prologue12 ····.prologue
19 ····.line·3613 ····.line·36
20 ····invoke-direct·{p0},·Landroid/app/Activity;-><init>()V14 ····invoke-direct·{p0},·Landroid/app/Activity;-><init>()V
  
21 ····.line·154 
22 ····return-void15 ····return-void
23 .end·method16 .end·method
  
24 .method·static·synthetic·access$000(Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;)Lcom/google/android/apps/authenticator/timesync/SyncNowController;17 .method·static·synthetic·access$000(Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;)Lcom/google/android/apps/authenticator/timesync/SyncNowController;
25 ····.locals·118 ····.locals·1
26 ····.param·p0,·"x0"····#·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;19 ····.param·p0,·"x0"····#·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;
  
Offset 72, 24 lines modifiedOffset 63, 27 lines modified
  
72 ····.prologue63 ····.prologue
73 ····const/4·v2,·0x164 ····const/4·v2,·0x1
  
74 ····.line·16265 ····.line·162
75 ····const·v0,·0x7f06004c66 ····const·v0,·0x7f06004c
  
 67 ····.line·164
76 ····invoke-virtual·{p0,·v0},·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;->getString(I)Ljava/lang/String;68 ····invoke-virtual·{p0,·v0},·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;->getString(I)Ljava/lang/String;
  
77 ····move-result-object·v069 ····move-result-object·v0
  
78 ····const·v1,·0x7f06004d70 ····const·v1,·0x7f06004d
  
 71 ····.line·165
79 ····invoke-virtual·{p0,·v1},·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;->getString(I)Ljava/lang/String;72 ····invoke-virtual·{p0,·v1},·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;->getString(I)Ljava/lang/String;
  
80 ····move-result-object·v173 ····move-result-object·v1
  
 74 ····.line·162
81 ····invoke-static·{p0,·v0,·v1,·v2,·v2},·Landroid/app/ProgressDialog;->show(Landroid/content/Context;Ljava/lang/CharSequence;Ljava/lang/CharSequence;ZZ)Landroid/app/ProgressDialog;75 ····invoke-static·{p0,·v0,·v1,·v2,·v2},·Landroid/app/ProgressDialog;->show(Landroid/content/Context;Ljava/lang/CharSequence;Ljava/lang/CharSequence;ZZ)Landroid/app/ProgressDialog;
  
82 ····move-result-object·v076 ····move-result-object·v0
  
83 ····iput-object·v0,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;->mProgressDialog:Landroid/app/Dialog;77 ····iput-object·v0,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;->mProgressDialog:Landroid/app/Dialog;
  
84 ····.line·16878 ····.line·168
Offset 153, 20 lines modifiedOffset 147, 22 lines modified
153 ····.line·63147 ····.line·63
154 ····return-void148 ····return-void
  
155 ····.line·57149 ····.line·57
156 ····:cond_0150 ····:cond_0
157 ····new-instance·v0,·Lcom/google/android/apps/authenticator/timesync/SyncNowController;151 ····new-instance·v0,·Lcom/google/android/apps/authenticator/timesync/SyncNowController;
  
 152 ····.line·58
158 ····invoke-static·{},·Lcom/google/android/apps/authenticator/testability/DependencyInjector;->getTotpClock()Lcom/google/android/apps/authenticator/TotpClock;153 ····invoke-static·{},·Lcom/google/android/apps/authenticator/testability/DependencyInjector;->getTotpClock()Lcom/google/android/apps/authenticator/TotpClock;
  
159 ····move-result-object·v1154 ····move-result-object·v1
  
160 ····new-instance·v2,·Lcom/google/android/apps/authenticator/timesync/NetworkTimeProvider;155 ····new-instance·v2,·Lcom/google/android/apps/authenticator/timesync/NetworkTimeProvider;
  
 156 ····.line·59
161 ····invoke-static·{},·Lcom/google/android/apps/authenticator/testability/DependencyInjector;->getHttpClient()Lorg/apache/http/client/HttpClient;157 ····invoke-static·{},·Lcom/google/android/apps/authenticator/testability/DependencyInjector;->getHttpClient()Lorg/apache/http/client/HttpClient;
  
162 ····move-result-object·v3158 ····move-result-object·v3
  
163 ····invoke-direct·{v2,·v3},·Lcom/google/android/apps/authenticator/timesync/NetworkTimeProvider;-><init>(Lorg/apache/http/client/HttpClient;)V159 ····invoke-direct·{v2,·v3},·Lcom/google/android/apps/authenticator/timesync/NetworkTimeProvider;-><init>(Lorg/apache/http/client/HttpClient;)V
  
164 ····invoke-direct·{v0,·v1,·v2},·Lcom/google/android/apps/authenticator/timesync/SyncNowController;-><init>(Lcom/google/android/apps/authenticator/TotpClock;Lcom/google/android/apps/authenticator/timesync/NetworkTimeProvider;)V160 ····invoke-direct·{v0,·v1,·v2},·Lcom/google/android/apps/authenticator/timesync/SyncNowController;-><init>(Lcom/google/android/apps/authenticator/TotpClock;Lcom/google/android/apps/authenticator/timesync/NetworkTimeProvider;)V
Offset 226, 132 lines modifiedOffset 222, 153 lines modified
  
226 ····.line·106222 ····.line·106
227 ····:pswitch_0223 ····:pswitch_0
228 ····new-instance·v0,·Landroid/app/AlertDialog$Builder;224 ····new-instance·v0,·Landroid/app/AlertDialog$Builder;
  
229 ····invoke-direct·{v0,·p0},·Landroid/app/AlertDialog$Builder;-><init>(Landroid/content/Context;)V225 ····invoke-direct·{v0,·p0},·Landroid/app/AlertDialog$Builder;-><init>(Landroid/content/Context;)V
  
 226 ····.line·107
230 ····invoke-virtual·{v0,·v2},·Landroid/app/AlertDialog$Builder;->setCancelable(Z)Landroid/app/AlertDialog$Builder;227 ····invoke-virtual·{v0,·v2},·Landroid/app/AlertDialog$Builder;->setCancelable(Z)Landroid/app/AlertDialog$Builder;
  
231 ····move-result-object·v0228 ····move-result-object·v0
  
232 ····const·v1,·0x7f060050229 ····const·v1,·0x7f060050
  
 230 ····.line·108
233 ····invoke-virtual·{v0,·v1},·Landroid/app/AlertDialog$Builder;->setTitle(I)Landroid/app/AlertDialog$Builder;231 ····invoke-virtual·{v0,·v1},·Landroid/app/AlertDialog$Builder;->setTitle(I)Landroid/app/AlertDialog$Builder;
  
234 ····move-result-object·v0232 ····move-result-object·v0
  
235 ····const·v1,·0x7f060051233 ····const·v1,·0x7f060051
  
 234 ····.line·109
236 ····invoke-virtual·{v0,·v1},·Landroid/app/AlertDialog$Builder;->setMessage(I)Landroid/app/AlertDialog$Builder;235 ····invoke-virtual·{v0,·v1},·Landroid/app/AlertDialog$Builder;->setMessage(I)Landroid/app/AlertDialog$Builder;
  
237 ····move-result-object·v0236 ····move-result-object·v0
  
 237 ····.line·110
238 ····invoke-virtual·{v0,·v4},·Landroid/app/AlertDialog$Builder;->setIcon(I)Landroid/app/AlertDialog$Builder;238 ····invoke-virtual·{v0,·v4},·Landroid/app/AlertDialog$Builder;->setIcon(I)Landroid/app/AlertDialog$Builder;
  
239 ····move-result-object·v0239 ····move-result-object·v0
  
240 ····new-instance·v1,·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity$1;240 ····new-instance·v1,·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity$1;
  
241 ····invoke-direct·{v1,·p0},·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity$1;-><init>(Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;)V241 ····invoke-direct·{v1,·p0},·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity$1;-><init>(Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;)V
  
 242 ····.line·111
242 ····invoke-virtual·{v0,·v3,·v1},·Landroid/app/AlertDialog$Builder;->setNeutralButton(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder;243 ····invoke-virtual·{v0,·v3,·v1},·Landroid/app/AlertDialog$Builder;->setNeutralButton(ILandroid/content/DialogInterface$OnClickListener;)Landroid/app/AlertDialog$Builder;
  
Max diff block lines reached; 3596/7900 bytes (45.52%) of diff not shown.
770 B
smali/com/google/android/apps/authenticator/timesync/SyncNowActivity$1.smali
    
Offset 20, 14 lines modifiedOffset 20, 15 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;
  
25 ····.prologue26 ····.prologue
26 ····.line·11127 ····.line·111
27 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity$1;->this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/timesync/SyncNowActivity$1;->this$0:Lcom/google/android/apps/authenticator/timesync/SyncNowActivity;
  
28 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
1.92 KB
smali/com/google/android/apps/authenticator/wizard/WizardPageActivity$2.smali
    
Offset 20, 18 lines modifiedOffset 20, 19 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;
  
25 ····.prologue26 ····.prologue
26 ····.line·10827 ····.line·108
27 ····.local·p0,·"this":Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$2;,·"Lcom/google/android/apps/authenticator/wizard/WizardPageActivity.2;"28 ····.local·p0,·"this":Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$2;,·"Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$2;"
28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$2;->this$0:Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;29 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$2;->this$0:Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;
  
29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V30 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
30 ····return-void31 ····return-void
31 .end·method32 .end·method
  
Offset 39, 15 lines modifiedOffset 40, 15 lines modified
39 #·virtual·methods40 #·virtual·methods
40 .method·public·onClick(Landroid/view/View;)V41 .method·public·onClick(Landroid/view/View;)V
41 ····.locals·142 ····.locals·1
42 ····.param·p1,·"v"····#·Landroid/view/View;43 ····.param·p1,·"v"····#·Landroid/view/View;
  
43 ····.prologue44 ····.prologue
44 ····.line·11145 ····.line·111
45 ····.local·p0,·"this":Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$2;,·"Lcom/google/android/apps/authenticator/wizard/WizardPageActivity.2;"46 ····.local·p0,·"this":Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$2;,·"Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$2;"
46 ····iget-object·v0,·p0,·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$2;->this$0:Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;47 ····iget-object·v0,·p0,·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$2;->this$0:Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;
  
47 ····invoke-virtual·{v0},·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;->onRightButtonPressed()V48 ····invoke-virtual·{v0},·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;->onRightButtonPressed()V
  
48 ····.line·11249 ····.line·112
49 ····return-void50 ····return-void
50 .end·method51 .end·method
1.88 KB
smali/com/google/android/apps/authenticator/wizard/WizardPageActivity.smali
    
Offset 2, 15 lines modifiedOffset 2, 14 lines modified
2 .super·Lcom/google/android/apps/authenticator/testability/TestableActivity;2 .super·Lcom/google/android/apps/authenticator/testability/TestableActivity;
3 .source·"WizardPageActivity.java"3 .source·"WizardPageActivity.java"
  
  
4 #·annotations4 #·annotations
5 .annotation·system·Ldalvik/annotation/MemberClasses;5 .annotation·system·Ldalvik/annotation/MemberClasses;
6 ····value·=·{6 ····value·=·{
7 ········Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$4;, 
8 ········Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$ButtonBarType;7 ········Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$ButtonBarType;
9 ····}8 ····}
10 .end·annotation9 .end·annotation
  
11 .annotation·system·Ldalvik/annotation/Signature;10 .annotation·system·Ldalvik/annotation/Signature;
12 ····value·=·{11 ····value·=·{
13 ········"<WizardState::",12 ········"<WizardState::",
Offset 62, 15 lines modifiedOffset 61, 14 lines modified
62 ····.locals·061 ····.locals·0
  
63 ····.prologue62 ····.prologue
64 ····.line·4963 ····.line·49
65 ····.local·p0,·"this":Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;,·"Lcom/google/android/apps/authenticator/wizard/WizardPageActivity<TWizardState;>;"64 ····.local·p0,·"this":Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;,·"Lcom/google/android/apps/authenticator/wizard/WizardPageActivity<TWizardState;>;"
66 ····invoke-direct·{p0},·Lcom/google/android/apps/authenticator/testability/TestableActivity;-><init>()V65 ····invoke-direct·{p0},·Lcom/google/android/apps/authenticator/testability/TestableActivity;-><init>()V
  
67 ····.line·55 
68 ····return-void66 ····return-void
69 .end·method67 .end·method
  
70 .method·private·setButtonBarType(Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$ButtonBarType;)V68 .method·private·setButtonBarType(Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$ButtonBarType;)V
71 ····.locals·469 ····.locals·4
72 ····.param·p1,·"type"····#·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$ButtonBarType;70 ····.param·p1,·"type"····#·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$ButtonBarType;
  
Offset 266, 21 lines modifiedOffset 264, 24 lines modified
266 ····.prologue264 ····.prologue
267 ····.line·200265 ····.line·200
268 ····.local·p0,·"this":Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;,·"Lcom/google/android/apps/authenticator/wizard/WizardPageActivity<TWizardState;>;"266 ····.local·p0,·"this":Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;,·"Lcom/google/android/apps/authenticator/wizard/WizardPageActivity<TWizardState;>;"
269 ····if-eqz·p1,·:cond_0267 ····if-eqz·p1,·:cond_0
  
270 ····const-string·v0,·"wizardState"268 ····const-string·v0,·"wizardState"
  
 269 ····.line·201
271 ····invoke-virtual·{p1,·v0},·Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;270 ····invoke-virtual·{p1,·v0},·Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
  
272 ····move-result-object·v0271 ····move-result-object·v0
  
 272 ····.line·200
273 ····:goto_0273 ····:goto_0
274 ····return-object·v0274 ····return-object·v0
  
 275 ····.line·201
275 ····:cond_0276 ····:cond_0
276 ····const/4·v0,·0x0277 ····const/4·v0,·0x0
  
277 ····goto·:goto_0278 ····goto·:goto_0
278 .end·method279 .end·method
  
279 .method·protected·onCreate(Landroid/os/Bundle;)V280 .method·protected·onCreate(Landroid/os/Bundle;)V
1.92 KB
smali/com/google/android/apps/authenticator/wizard/WizardPageActivity$1.smali
    
Offset 20, 18 lines modifiedOffset 20, 19 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;
  
25 ····.prologue26 ····.prologue
26 ····.line·10027 ····.line·100
27 ····.local·p0,·"this":Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$1;,·"Lcom/google/android/apps/authenticator/wizard/WizardPageActivity.1;"28 ····.local·p0,·"this":Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$1;,·"Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$1;"
28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$1;->this$0:Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;29 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$1;->this$0:Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;
  
29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V30 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
30 ····return-void31 ····return-void
31 .end·method32 .end·method
  
Offset 39, 15 lines modifiedOffset 40, 15 lines modified
39 #·virtual·methods40 #·virtual·methods
40 .method·public·onClick(Landroid/view/View;)V41 .method·public·onClick(Landroid/view/View;)V
41 ····.locals·142 ····.locals·1
42 ····.param·p1,·"v"····#·Landroid/view/View;43 ····.param·p1,·"v"····#·Landroid/view/View;
  
43 ····.prologue44 ····.prologue
44 ····.line·10345 ····.line·103
45 ····.local·p0,·"this":Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$1;,·"Lcom/google/android/apps/authenticator/wizard/WizardPageActivity.1;"46 ····.local·p0,·"this":Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$1;,·"Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$1;"
46 ····iget-object·v0,·p0,·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$1;->this$0:Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;47 ····iget-object·v0,·p0,·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$1;->this$0:Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;
  
47 ····invoke-virtual·{v0},·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;->onLeftButtonPressed()V48 ····invoke-virtual·{v0},·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;->onLeftButtonPressed()V
  
48 ····.line·10449 ····.line·104
49 ····return-void50 ····return-void
50 .end·method51 .end·method
1.92 KB
smali/com/google/android/apps/authenticator/wizard/WizardPageActivity$3.smali
    
Offset 20, 18 lines modifiedOffset 20, 19 lines modified
20 #·instance·fields20 #·instance·fields
21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;21 .field·final·synthetic·this$0:Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;)V23 .method·constructor·<init>(Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;)V
24 ····.locals·024 ····.locals·0
 25 ····.param·p1,·"this$0"····#·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;
  
25 ····.prologue26 ····.prologue
26 ····.line·11627 ····.line·116
27 ····.local·p0,·"this":Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$3;,·"Lcom/google/android/apps/authenticator/wizard/WizardPageActivity.3;"28 ····.local·p0,·"this":Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$3;,·"Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$3;"
28 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$3;->this$0:Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;29 ····iput-object·p1,·p0,·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$3;->this$0:Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;
  
29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V30 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
30 ····return-void31 ····return-void
31 .end·method32 .end·method
  
Offset 39, 15 lines modifiedOffset 40, 15 lines modified
39 #·virtual·methods40 #·virtual·methods
40 .method·public·onClick(Landroid/view/View;)V41 .method·public·onClick(Landroid/view/View;)V
41 ····.locals·142 ····.locals·1
42 ····.param·p1,·"v"····#·Landroid/view/View;43 ····.param·p1,·"v"····#·Landroid/view/View;
  
43 ····.prologue44 ····.prologue
44 ····.line·11945 ····.line·119
45 ····.local·p0,·"this":Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$3;,·"Lcom/google/android/apps/authenticator/wizard/WizardPageActivity.3;"46 ····.local·p0,·"this":Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$3;,·"Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$3;"
46 ····iget-object·v0,·p0,·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$3;->this$0:Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;47 ····iget-object·v0,·p0,·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity$3;->this$0:Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;
  
47 ····invoke-virtual·{v0},·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;->onMiddleButtonPressed()V48 ····invoke-virtual·{v0},·Lcom/google/android/apps/authenticator/wizard/WizardPageActivity;->onMiddleButtonPressed()V
  
48 ····.line·12049 ····.line·120
49 ····return-void50 ····return-void
50 .end·method51 .end·method
3.72 KB
res/drawable-mdpi-v11/refresh_pressed.png
2.79 KB
sng
    
Offset 62, 43 lines modifiedOffset 62, 43 lines modified
62 ····(255,255,255)·····#·rgb·=·(0xff,0xff,0xff)·grey10062 ····(255,255,255)·····#·rgb·=·(0xff,0xff,0xff)·grey100
63 ····(255,255,255)·····#·rgb·=·(0xff,0xff,0xff)·grey10063 ····(255,255,255)·····#·rgb·=·(0xff,0xff,0xff)·grey100
64 ····(255,255,255)·····#·rgb·=·(0xff,0xff,0xff)·grey10064 ····(255,255,255)·····#·rgb·=·(0xff,0xff,0xff)·grey100
65 ····(255,255,255)·····#·rgb·=·(0xff,0xff,0xff)·grey10065 ····(255,255,255)·····#·rgb·=·(0xff,0xff,0xff)·grey100
66 ····(255,255,255)·····#·rgb·=·(0xff,0xff,0xff)·grey10066 ····(255,255,255)·····#·rgb·=·(0xff,0xff,0xff)·grey100
67 }67 }
68 tRNS·{68 tRNS·{
69 ·0·27·91·147·159·255·87·183·187·253·51·203·55·107·247·251·254·111·204·152·128·160·40·252·96·167·191·171·148·151·196·99·28·20·35·144·199·72·103·244·68·3·219·12·71·172·112·135·143·139·75·227·83·7·119·215·59·123·179·223}69 ·0·27·91·147·159·87·183·187·253·51·203·55·107·247·251·254·111·204·152·128·160·40·252·96·167·191·171·148·151·196·99·28·20·35·144·199·72·103·244·68·3·219·12·71·172·112·135·143·139·75·227·83·7·119·215·59·123·179·223}
70 IMAGE·{70 IMAGE·{
71 ····pixels·base6471 ····pixels·base64
72 0000000000000000000000000000000072 00000000000000000000000000000000
73 0000000000000000000000000000000073 00000000000000000000000000000000
74 0000000000012344432100000555550074 0000000000012344432100000xxxxx00
75 00000000067555555555860009999900 
76 0000000AB5555555555555BC99999900 
77 000000DE555555555555555FG9999900 
78 00000H5555555555555555555G999900 
79 0000D555555555555555555555G99900 
80 000AE55555555IJKJI55555555599900 
81 000B5555555LM00000ML555555559900 
82 006555555NO000000009G55555555900 
83 007555555O00000059999G5555555900 
84 01555555L0000000599999G555555900 
85 02555555M00000005999999955555900 
86 0355555I000000005999999955555900 
87 0P55555J00000000555555555555550075 00000000056xxxxxxxxx750008888800
 76 00000009AxxxxxxxxxxxxxAB88888800
 77 000000CDxxxxxxxxxxxxxxxEF8888800
 78 00000GxxxxxxxxxxxxxxxxxxxF888800
 79 0000CxxxxxxxxxxxxxxxxxxxxxF88800
 80 0009DxxxxxxxxHIJIHxxxxxxxxx88800
 81 000AxxxxxxxKL00000LKxxxxxxxx8800
 82 005xxxxxxMN000000008Fxxxxxxxx800
 83 006xxxxxxN000000x8888Fxxxxxxx800
 84 01xxxxxxK0000000x88888Fxxxxxx800
 85 02xxxxxxL0000000x8888888xxxxx800
 86 03xxxxxH00000000x8888888xxxxx800
 87 0OxxxxxI00000000xxxxxxxxxxxxxx00
 88 0PxxxxxJ000000000000000000000000
88 0Q55555K00000000000000000000000089 0QxxxxxR000000000000000000000000
89 0R55555S00000000000000000000000090 0SxxxxxT000000000000000000000000
 91 0UxxxxxMV0000000000000WMxx000000
 92 0XxxxxxxY0000000000000Yxxxxx0000
 93 00ZxxxxxMa00000000000aMxxxxx0000
 94 00bxxxxxxcd000000000dcxxxxxxb000
 95 00efxxxxxxMJg00000gJMxxxxxxfe000
 96 000hxxxxxxxxcijNjicxxxxxxxxh0000
 97 0000kxxxxxxxxxxxxxxxxxxxxxk00000
 98 00000lxxxxxxxxxxxxxxxxxxxl000000
 99 000000mxxxxxxxxxxxxxxxxxm0000000
 100 0000000noxxxxxxxxxxxxxop00000000
 101 00000000qrsxxxxxxxxxfrq000000000
90 0T55555U000000000000000000000000 
91 0V55555NW0000000000000XN55000000 
92 0Y555555Z0000000000000Z555550000 
93 00a55555Nb00000000000bN555550000 
94 00c555555de000000000ed555555c000 
95 00fg555555NKh00000hKN555555gf000 
96 000i55555555djkOkjd55555555i0000 
97 0000l555555555555555555555l00000 
98 00000m5555555555555555555m000000 
99 000000n55555555555555555n0000000 
100 0000000op5555555555555pq00000000 
101 00000000rst555555555gsr000000000 
102 00000000000uvwaxawvu000000000000102 00000000000tuvZwZvut000000000000
103 00000000000000000000000000000000103 00000000000000000000000000000000
104 }104 }
876 B
Image content
Pixel difference
compared images
Flicker difference
compared images
4.82 KB
res/drawable-mdpi-v11/refresh.png
3.53 KB
sng
    
Offset 5, 15 lines modifiedOffset 5, 14 lines modified
5 }5 }
6 PLTE·{6 PLTE·{
7 ····(··0,··0,··0)·····#·rgb·=·(0x00,0x00,0x00)·grey07 ····(··0,··0,··0)·····#·rgb·=·(0x00,0x00,0x00)·grey0
8 ····(164,183,222)·····#·rgb·=·(0xa4,0xb7,0xde)8 ····(164,183,222)·····#·rgb·=·(0xa4,0xb7,0xde)
9 ····(151,173,217)·····#·rgb·=·(0x97,0xad,0xd9)9 ····(151,173,217)·····#·rgb·=·(0x97,0xad,0xd9)
10 ····(134,160,212)·····#·rgb·=·(0x86,0xa0,0xd4)10 ····(134,160,212)·····#·rgb·=·(0x86,0xa0,0xd4)
11 ····(130,156,210)·····#·rgb·=·(0x82,0x9c,0xd2)11 ····(130,156,210)·····#·rgb·=·(0x82,0x9c,0xd2)
12 ····(·84,120,194)·····#·rgb·=·(0x54,0x78,0xc2) 
13 ····(151,173,218)·····#·rgb·=·(0x97,0xad,0xda)12 ····(151,173,218)·····#·rgb·=·(0x97,0xad,0xda)
14 ····(121,149,207)·····#·rgb·=·(0x79,0x95,0xcf)13 ····(121,149,207)·····#·rgb·=·(0x79,0x95,0xcf)
15 ····(120,148,206)·····#·rgb·=·(0x78,0x94,0xce)14 ····(120,148,206)·····#·rgb·=·(0x78,0x94,0xce)
16 ····(·85,121,194)·····#·rgb·=·(0x55,0x79,0xc2)15 ····(·85,121,194)·····#·rgb·=·(0x55,0x79,0xc2)
17 ····(160,180,221)·····#·rgb·=·(0xa0,0xb4,0xdd)16 ····(160,180,221)·····#·rgb·=·(0xa0,0xb4,0xdd)
18 ····(112,142,204)·····#·rgb·=·(0x70,0x8e,0xcc)17 ····(112,142,204)·····#·rgb·=·(0x70,0x8e,0xcc)
19 ····(159,179,220)·····#·rgb·=·(0x9f,0xb3,0xdc)18 ····(159,179,220)·····#·rgb·=·(0x9f,0xb3,0xdc)
Offset 60, 45 lines modifiedOffset 59, 46 lines modified
60 ····(169,187,224)·····#·rgb·=·(0xa9,0xbb,0xe0)59 ····(169,187,224)·····#·rgb·=·(0xa9,0xbb,0xe0)
61 ····(143,166,215)·····#·rgb·=·(0x8f,0xa6,0xd7)60 ····(143,166,215)·····#·rgb·=·(0x8f,0xa6,0xd7)
62 ····(107,138,202)·····#·rgb·=·(0x6b,0x8a,0xca)61 ····(107,138,202)·····#·rgb·=·(0x6b,0x8a,0xca)
63 ····(157,178,220)·····#·rgb·=·(0x9d,0xb2,0xdc)62 ····(157,178,220)·····#·rgb·=·(0x9d,0xb2,0xdc)
64 ····(142,166,214)·····#·rgb·=·(0x8e,0xa6,0xd6)63 ····(142,166,214)·····#·rgb·=·(0x8e,0xa6,0xd6)
65 ····(123,150,207)·····#·rgb·=·(0x7b,0x96,0xcf)64 ····(123,150,207)·····#·rgb·=·(0x7b,0x96,0xcf)
66 ····(103,135,200)·····#·rgb·=·(0x67,0x87,0xc8)65 ····(103,135,200)·····#·rgb·=·(0x67,0x87,0xc8)
 66 ····(·84,120,194)·····#·rgb·=·(0x54,0x78,0xc2)
67 }67 }
68 tRNS·{68 tRNS·{
69 ·0·27·91·147·159·255·87·183·187·253·51·203·55·107·247·251·254·111·204·152·128·160·40·252·96·167·191·171·148·151·196·99·28·20·35·144·199·72·103·244·68·3·219·12·71·172·112·135·143·139·75·227·83·7·119·215·59·123·179·223}69 ·0·27·91·147·159·87·183·187·253·51·203·55·107·247·251·254·111·204·152·128·160·40·252·96·167·191·171·148·151·196·99·28·20·35·144·199·72·103·244·68·3·219·12·71·172·112·135·143·139·75·227·83·7·119·215·59·123·179·223}
70 IMAGE·{70 IMAGE·{
71 ····pixels·base6471 ····pixels·base64
72 0000000000000000000000000000000072 00000000000000000000000000000000
73 0000000000000000000000000000000073 00000000000000000000000000000000
74 0000000000012344432100000555550074 0000000000012344432100000xxxxx00
75 00000000067555555555860009999900 
76 0000000AB5555555555555BC99999900 
77 000000DE555555555555555FG9999900 
78 00000H5555555555555555555G999900 
79 0000D555555555555555555555G99900 
80 000AE55555555IJKJI55555555599900 
81 000B5555555LM00000ML555555559900 
82 006555555NO000000009G55555555900 
83 007555555O00000059999G5555555900 
84 01555555L0000000599999G555555900 
85 02555555M00000005999999955555900 
86 0355555I000000005999999955555900 
87 0P55555J00000000555555555555550075 00000000056xxxxxxxxx750008888800
 76 00000009AxxxxxxxxxxxxxAB88888800
 77 000000CDxxxxxxxxxxxxxxxEF8888800
 78 00000GxxxxxxxxxxxxxxxxxxxF888800
 79 0000CxxxxxxxxxxxxxxxxxxxxxF88800
 80 0009DxxxxxxxxHIJIHxxxxxxxxx88800
 81 000AxxxxxxxKL00000LKxxxxxxxx8800
 82 005xxxxxxMN000000008Fxxxxxxxx800
 83 006xxxxxxN000000x8888Fxxxxxxx800
 84 01xxxxxxK0000000x88888Fxxxxxx800
 85 02xxxxxxL0000000x8888888xxxxx800
 86 03xxxxxH00000000x8888888xxxxx800
 87 0OxxxxxI00000000xxxxxxxxxxxxxx00
 88 0PxxxxxJ000000000000000000000000
88 0Q55555K00000000000000000000000089 0QxxxxxR000000000000000000000000
89 0R55555S00000000000000000000000090 0SxxxxxT000000000000000000000000
 91 0UxxxxxMV0000000000000WMxx000000
 92 0XxxxxxxY0000000000000Yxxxxx0000
 93 00ZxxxxxMa00000000000aMxxxxx0000
 94 00bxxxxxxcd000000000dcxxxxxxb000
 95 00efxxxxxxMJg00000gJMxxxxxxfe000
 96 000hxxxxxxxxcijNjicxxxxxxxxh0000
 97 0000kxxxxxxxxxxxxxxxxxxxxxk00000
 98 00000lxxxxxxxxxxxxxxxxxxxl000000
 99 000000mxxxxxxxxxxxxxxxxxm0000000
 100 0000000noxxxxxxxxxxxxxop00000000
 101 00000000qrsxxxxxxxxxfrq000000000
90 0T55555U000000000000000000000000 
91 0V55555NW0000000000000XN55000000 
92 0Y555555Z0000000000000Z555550000 
93 00a55555Nb00000000000bN555550000 
94 00c555555de000000000ed555555c000 
95 00fg555555NKh00000hKN555555gf000 
96 000i55555555djkOkjd55555555i0000 
97 0000l555555555555555555555l00000 
98 00000m5555555555555555555m000000 
99 000000n55555555555555555n0000000 
100 0000000op5555555555555pq00000000 
101 00000000rst555555555gsr000000000 
102 00000000000uvwaxawvu000000000000102 00000000000tuvZwZvut000000000000
103 00000000000000000000000000000000103 00000000000000000000000000000000
104 }104 }
1.22 KB
Image content
Pixel difference
compared images
Flicker difference
compared images
3.78 KB
res/drawable/refresh_pressed.png
2.86 KB
sng
    
Offset 60, 46 lines modifiedOffset 60, 45 lines modified
60 ····(182,107,·49)·····#·rgb·=·(0xb6,0x6b,0x31)60 ····(182,107,·49)·····#·rgb·=·(0xb6,0x6b,0x31)
61 ····(182,107,·49)·····#·rgb·=·(0xb6,0x6b,0x31)61 ····(182,107,·49)·····#·rgb·=·(0xb6,0x6b,0x31)
62 ····(182,107,·49)·····#·rgb·=·(0xb6,0x6b,0x31)62 ····(182,107,·49)·····#·rgb·=·(0xb6,0x6b,0x31)
63 ····(182,107,·49)·····#·rgb·=·(0xb6,0x6b,0x31)63 ····(182,107,·49)·····#·rgb·=·(0xb6,0x6b,0x31)
64 ····(182,107,·49)·····#·rgb·=·(0xb6,0x6b,0x31)64 ····(182,107,·49)·····#·rgb·=·(0xb6,0x6b,0x31)
65 ····(182,107,·49)·····#·rgb·=·(0xb6,0x6b,0x31)65 ····(182,107,·49)·····#·rgb·=·(0xb6,0x6b,0x31)
66 ····(182,107,·49)·····#·rgb·=·(0xb6,0x6b,0x31)66 ····(182,107,·49)·····#·rgb·=·(0xb6,0x6b,0x31)
67 ····(182,107,·49)·····#·rgb·=·(0xb6,0x6b,0x31) 
68 }67 }
69 tRNS·{68 tRNS·{
70 ·0·27·91·147·159·253·87·183·255·187·51·203·55·107·247·251·254·111·204·152·128·160·40·0·252·96·167·191·171·148·151·196·99·28·20·35·144·199·72·103·244·68·3·219·12·71·172·112·135·143·139·75·227·83·7·119·215·59·123·179·223}69 ·0·27·91·147·159·253·87·183·187·51·203·55·107·247·251·254·111·204·152·128·160·40·252·96·167·191·171·148·151·196·99·28·20·35·144·199·72·103·244·68·3·219·12·71·172·112·135·143·139·75·227·83·7·119·215·59·123·179·223}
71 IMAGE·{70 IMAGE·{
72 ····pixels·base6471 ····pixels·base64
73 0000000000000000000000000000000072 00000000000000000000000000000000
74 0000000000000000000000000000000073 00000000000000000000000000000000
75 0000000000012344432100000555550074 00000000000123444321000005555500
76 00000000067888888888960008888800 
77 0000000AB8888888888888BC58888800 
78 000000DE888888888888888FG8888800 
79 00000H88888888888888888888888800 
80 0000D888888888888888888888G55500 
81 000AE88888888IJKJI88888888855500 
82 000B8888888LM00000NL888888885500 
83 006888888OP000000NN5G88888888500 
84 007888888P00000085555G8888888500 
85 01888888L0000000855555G888888500 
86 02888888M00000008555555588888500 
87 0388888I000000008588855588888500 
88 0Q88888J00000000888888888888880075 00000000067xxxxxxxxx86000xxxxx00
 76 00000009AxxxxxxxxxxxxxAB5xxxxx00
 77 000000CDxxxxxxxxxxxxxxxEFxxxxx00
 78 00000Gxxxxxxxxxxxxxxxxxxxxxxxx00
 79 0000CxxxxxxxxxxxxxxxxxxxxxF55500
 80 0009DxxxxxxxxHIJIHxxxxxxxxx55500
 81 000AxxxxxxxKL000000Kxxxxxxxx5500
 82 006xxxxxxMN000000005Fxxxxxxxx500
 83 007xxxxxxN000000x5555Fxxxxxxx500
 84 01xxxxxxK0000000x55555Fxxxxxx500
 85 02xxxxxxL0000000x5555555xxxxx500
 86 03xxxxxH00000000x5xxx555xxxxx500
 87 0OxxxxxI00000000xxxxxxxxxxxxxx00
 88 0PxxxxxJ000000000000000000000000
89 0R88888K00000000000000000000000089 0QxxxxxR000000000000000000000000
90 0S88888T00000000000000000000000090 0SxxxxxT000000000000000000000000
 91 0UxxxxxMV0000000000000WMxx000000
 92 0XxxxxxxY0000000000000Yxxxxx0000
 93 00ZxxxxxMa00000000000aMxxxxx0000
 94 00bxxxxxxcd000000000dcxxxxxxb000
 95 00efxxxxxxMJg00000gJMxxxxxxfe000
 96 000hxxxxxxxxcijNjicxxxxxxxxh0000
 97 0000kxxxxxxxxxxxxxxxxxxxxxk00000
 98 00000lxxxxxxxxxxxxxxxxxxxl000000
 99 000000mxxxxxxxxxxxxxxxxxm0000000
 100 0000000noxxxxxxxxxxxxxop00000000
 101 00000000qrsxxxxxxxxxfrq000000000
91 0U88888V000000000000000000000000 
92 0W88888OX0000000000000YO88000000 
93 0Z888888a0000000000000a888880000 
94 00b88888Oc00000000000cO888880000 
95 00d888888ef000000000fe888888d000 
96 00gh888888OKi00000iKO888888hg000 
97 000j88888888eklPlke88888888j0000 
98 0000m888888888888888888888m00000 
99 00000n8888888888888888888n000000 
100 000000o88888888888888888o0000000 
101 0000000pq8888888888888qr00000000 
102 00000000stu888888888hts000000000 
103 00000000000vwxbybxwv000000000000102 00000000000tuvZwZvut000000000000
104 00000000000000000000000000000000103 00000000000000000000000000000000
105 }104 }
876 B
Image content
Pixel difference
compared images
Flicker difference
compared images
3.83 KB
res/drawable/refresh_disabled.png
2.91 KB
sng
    
Offset 60, 46 lines modifiedOffset 60, 45 lines modified
60 ····(·99,·99,·99)·····#·rgb·=·(0x63,0x63,0x63)·grey3960 ····(·99,·99,·99)·····#·rgb·=·(0x63,0x63,0x63)·grey39
61 ····(·99,·99,·99)·····#·rgb·=·(0x63,0x63,0x63)·grey3961 ····(·99,·99,·99)·····#·rgb·=·(0x63,0x63,0x63)·grey39
62 ····(·99,·99,·99)·····#·rgb·=·(0x63,0x63,0x63)·grey3962 ····(·99,·99,·99)·····#·rgb·=·(0x63,0x63,0x63)·grey39
63 ····(·99,·99,·99)·····#·rgb·=·(0x63,0x63,0x63)·grey3963 ····(·99,·99,·99)·····#·rgb·=·(0x63,0x63,0x63)·grey39
64 ····(·99,·99,·99)·····#·rgb·=·(0x63,0x63,0x63)·grey3964 ····(·99,·99,·99)·····#·rgb·=·(0x63,0x63,0x63)·grey39
65 ····(·99,·99,·99)·····#·rgb·=·(0x63,0x63,0x63)·grey3965 ····(·99,·99,·99)·····#·rgb·=·(0x63,0x63,0x63)·grey39
66 ····(·99,·99,·99)·····#·rgb·=·(0x63,0x63,0x63)·grey3966 ····(·99,·99,·99)·····#·rgb·=·(0x63,0x63,0x63)·grey39
67 ····(·99,·99,·99)·····#·rgb·=·(0x63,0x63,0x63)·grey39 
68 }67 }
69 tRNS·{68 tRNS·{
70 ·0·27·91·147·159·253·87·183·255·187·51·203·55·107·247·251·254·111·204·152·128·160·40·0·252·96·167·191·171·148·151·196·99·28·20·35·144·199·72·103·244·68·3·219·12·71·172·112·135·143·139·75·227·83·7·119·215·59·123·179·223}69 ·0·27·91·147·159·253·87·183·187·51·203·55·107·247·251·254·111·204·152·128·160·40·252·96·167·191·171·148·151·196·99·28·20·35·144·199·72·103·244·68·3·219·12·71·172·112·135·143·139·75·227·83·7·119·215·59·123·179·223}
71 IMAGE·{70 IMAGE·{
72 ····pixels·base6471 ····pixels·base64
73 0000000000000000000000000000000072 00000000000000000000000000000000
74 0000000000000000000000000000000073 00000000000000000000000000000000
75 0000000000012344432100000555550074 00000000000123444321000005555500
76 00000000067888888888960008888800 
77 0000000AB8888888888888BC58888800 
78 000000DE888888888888888FG8888800 
79 00000H88888888888888888888888800 
80 0000D888888888888888888888G55500 
81 000AE88888888IJKJI88888888855500 
82 000B8888888LMNNNNNML888888885500 
83 006888888OPNNNNNNNN5G88888888500 
84 007888888PNNNNNN85555G8888888500 
85 01888888LNNNNNNN855555G888888500 
86 02888888MNNNNNNN8555555588888500 
87 0388888INNNNNNNN8555555588888500 
88 0Q88888JNNNNNNNN8888888888888800 
89 0R88888KNNNNNNNNNNNNNNNNNNNNNN00 
90 0S88888TNNNNNNNNNNNNNNNNNNNNNN00 
91 0U88888VNNNNNNNNNNNNNNNNNNNNNN00 
92 0W88888OXNNNNNNNNNNNNNYO88NNNN00 
93 0Z888888aNNNNNNNNNNNNNa88888NN00 
94 00b88888OcNNNNNNNNNNNcO88888N000 
95 00d888888efNNNNNNNNNfe888888d000 
96 00gh888888OKiNNNNNiKO888888hg000 
97 000j88888888eklPlke88888888j0000 
98 0000m888888888888888888888m00000 
99 00000n8888888888888888888n000000 
100 000000o88888888888888888o0000000 
101 0000000pq8888888888888qr00000000 
102 00000000stu888888888hts00000000075 00000000067xxxxxxxxx86000xxxxx00
 76 00000009AxxxxxxxxxxxxxAB5xxxxx00
 77 000000CDxxxxxxxxxxxxxxxEFxxxxx00
 78 00000Gxxxxxxxxxxxxxxxxxxxxxxxx00
 79 0000CxxxxxxxxxxxxxxxxxxxxxF55500
 80 0009DxxxxxxxxHIJIHxxxxxxxxx55500
 81 000AxxxxxxxKL00000LKxxxxxxxx5500
 82 006xxxxxxMN000000005Fxxxxxxxx500
 83 007xxxxxxN000000x5555Fxxxxxxx500
 84 01xxxxxxK0000000x55555Fxxxxxx500
 85 02xxxxxxL0000000x5555555xxxxx500
 86 03xxxxxH00000000x5555555xxxxx500
 87 0OxxxxxI00000000xxxxxxxxxxxxxx00
 88 0PxxxxxJ000000000000000000000000
 89 0QxxxxxR000000000000000000000000
 90 0SxxxxxT000000000000000000000000
 91 0UxxxxxMV0000000000000WMxx000000
 92 0XxxxxxxY0000000000000Yxxxxx0000
 93 00ZxxxxxMa00000000000aMxxxxx0000
 94 00bxxxxxxcd000000000dcxxxxxxb000
 95 00efxxxxxxMJg00000gJMxxxxxxfe000
 96 000hxxxxxxxxcijNjicxxxxxxxxh0000
 97 0000kxxxxxxxxxxxxxxxxxxxxxk00000
 98 00000lxxxxxxxxxxxxxxxxxxxl000000
 99 000000mxxxxxxxxxxxxxxxxxm0000000
 100 0000000noxxxxxxxxxxxxxop00000000
 101 00000000qrsxxxxxxxxxfrq000000000
103 00000000000vwxbybxwv000000000000102 00000000000tuvZwZvut000000000000
104 00000000000000000000000000000000103 00000000000000000000000000000000
105 }104 }
876 B
Image content
Pixel difference
compared images
Flicker difference
compared images
4.8 KB
res/drawable/refresh.png
3.53 KB
sng
    
Offset 5, 15 lines modifiedOffset 5, 14 lines modified
5 }5 }
6 PLTE·{6 PLTE·{
7 ····(··0,··0,··0)·····#·rgb·=·(0x00,0x00,0x00)·grey07 ····(··0,··0,··0)·····#·rgb·=·(0x00,0x00,0x00)·grey0
8 ····(179,226,120)·····#·rgb·=·(0xb3,0xe2,0x78)8 ····(179,226,120)·····#·rgb·=·(0xb3,0xe2,0x78)
9 ····(168,222,100)·····#·rgb·=·(0xa8,0xde,0x64)9 ····(168,222,100)·····#·rgb·=·(0xa8,0xde,0x64)
10 ····(155,217,·75)·····#·rgb·=·(0x9b,0xd9,0x4b)10 ····(155,217,·75)·····#·rgb·=·(0x9b,0xd9,0x4b)
11 ····(151,216,·69)·····#·rgb·=·(0x97,0xd8,0x45)11 ····(151,216,·69)·····#·rgb·=·(0x97,0xd8,0x45)
12 ····(113,202,··0)·····#·rgb·=·(0x71,0xca,0x00) 
13 ····(169,222,100)·····#·rgb·=·(0xa9,0xde,0x64)12 ····(169,222,100)·····#·rgb·=·(0xa9,0xde,0x64)
14 ····(144,213,·56)·····#·rgb·=·(0x90,0xd5,0x38)13 ····(144,213,·56)·····#·rgb·=·(0x90,0xd5,0x38)
15 ····(142,213,·53)·····#·rgb·=·(0x8e,0xd5,0x35)14 ····(142,213,·53)·····#·rgb·=·(0x8e,0xd5,0x35)
16 ····(114,202,··2)·····#·rgb·=·(0x72,0xca,0x02)15 ····(114,202,··2)·····#·rgb·=·(0x72,0xca,0x02)
17 ····(176,225,113)·····#·rgb·=·(0xb0,0xe1,0x71)16 ····(176,225,113)·····#·rgb·=·(0xb0,0xe1,0x71)
18 ····(136,210,·42)·····#·rgb·=·(0x88,0xd2,0x2a)17 ····(136,210,·42)·····#·rgb·=·(0x88,0xd2,0x2a)
19 ····(175,225,111)·····#·rgb·=·(0xaf,0xe1,0x6f)18 ····(175,225,111)·····#·rgb·=·(0xaf,0xe1,0x6f)
Offset 60, 45 lines modifiedOffset 59, 46 lines modified
60 ····(184,228,127)·····#·rgb·=·(0xb8,0xe4,0x7f)59 ····(184,228,127)·····#·rgb·=·(0xb8,0xe4,0x7f)
61 ····(162,220,·88)·····#·rgb·=·(0xa2,0xdc,0x58)60 ····(162,220,·88)·····#·rgb·=·(0xa2,0xdc,0x58)
62 ····(132,209,·34)·····#·rgb·=·(0x84,0xd1,0x22)61 ····(132,209,·34)·····#·rgb·=·(0x84,0xd1,0x22)
63 ····(174,224,110)·····#·rgb·=·(0xae,0xe0,0x6e)62 ····(174,224,110)·····#·rgb·=·(0xae,0xe0,0x6e)
64 ····(161,220,·87)·····#·rgb·=·(0xa1,0xdc,0x57)63 ····(161,220,·87)·····#·rgb·=·(0xa1,0xdc,0x57)
65 ····(145,214,·58)·····#·rgb·=·(0x91,0xd6,0x3a)64 ····(145,214,·58)·····#·rgb·=·(0x91,0xd6,0x3a)
66 ····(128,207,·28)·····#·rgb·=·(0x80,0xcf,0x1c)65 ····(128,207,·28)·····#·rgb·=·(0x80,0xcf,0x1c)
 66 ····(113,202,··0)·····#·rgb·=·(0x71,0xca,0x00)
67 }67 }
68 tRNS·{68 tRNS·{
69 ·0·27·91·147·159·255·87·183·187·253·51·203·55·107·247·251·254·111·204·152·128·160·40·252·96·167·191·171·148·151·196·99·28·20·35·144·199·72·103·244·68·3·219·12·71·172·112·135·143·139·75·227·83·7·119·215·59·123·179·223}69 ·0·27·91·147·159·87·183·187·253·51·203·55·107·247·251·254·111·204·152·128·160·40·252·96·167·191·171·148·151·196·99·28·20·35·144·199·72·103·244·68·3·219·12·71·172·112·135·143·139·75·227·83·7·119·215·59·123·179·223}
70 IMAGE·{70 IMAGE·{
71 ····pixels·base6471 ····pixels·base64
72 0000000000000000000000000000000072 00000000000000000000000000000000
73 0000000000000000000000000000000073 00000000000000000000000000000000
74 0000000000012344432100000555550074 0000000000012344432100000xxxxx00
75 00000000067555555555860009999900 
76 0000000AB5555555555555BC99999900 
77 000000DE555555555555555FG9999900 
78 00000H5555555555555555555G999900 
79 0000D555555555555555555555G99900 
80 000AE55555555IJKJI55555555599900 
81 000B5555555LM00000ML555555559900 
82 006555555NO000000009G55555555900 
83 007555555O00000059999G5555555900 
84 01555555L0000000599999G555555900 
85 02555555M00000005999999955555900 
86 0355555I000000005999999955555900 
87 0P55555J00000000555555555555550075 00000000056xxxxxxxxx750008888800
 76 00000009AxxxxxxxxxxxxxAB88888800
 77 000000CDxxxxxxxxxxxxxxxEF8888800
 78 00000GxxxxxxxxxxxxxxxxxxxF888800
 79 0000CxxxxxxxxxxxxxxxxxxxxxF88800
 80 0009DxxxxxxxxHIJIHxxxxxxxxx88800
 81 000AxxxxxxxKL00000LKxxxxxxxx8800
 82 005xxxxxxMN000000008Fxxxxxxxx800
 83 006xxxxxxN000000x8888Fxxxxxxx800
 84 01xxxxxxK0000000x88888Fxxxxxx800
 85 02xxxxxxL0000000x8888888xxxxx800
 86 03xxxxxH00000000x8888888xxxxx800
 87 0OxxxxxI00000000xxxxxxxxxxxxxx00
 88 0PxxxxxJ000000000000000000000000
88 0Q55555K00000000000000000000000089 0QxxxxxR000000000000000000000000
89 0R55555S00000000000000000000000090 0SxxxxxT000000000000000000000000
 91 0UxxxxxMV0000000000000WMxx000000
 92 0XxxxxxxY0000000000000Yxxxxx0000
 93 00ZxxxxxMa00000000000aMxxxxx0000
 94 00bxxxxxxcd000000000dcxxxxxxb000
 95 00efxxxxxxMJg00000gJMxxxxxxfe000
 96 000hxxxxxxxxcijNjicxxxxxxxxh0000
 97 0000kxxxxxxxxxxxxxxxxxxxxxk00000
 98 00000lxxxxxxxxxxxxxxxxxxxl000000
 99 000000mxxxxxxxxxxxxxxxxxm0000000
 100 0000000noxxxxxxxxxxxxxop00000000
 101 00000000qrsxxxxxxxxxfrq000000000
90 0T55555U000000000000000000000000 
91 0V55555NW0000000000000XN55000000 
92 0Y555555Z0000000000000Z555550000 
93 00a55555Nb00000000000bN555550000 
94 00c555555de000000000ed555555c000 
95 00fg555555NKh00000hKN555555gf000 
96 000i55555555djkOkjd55555555i0000 
97 0000l555555555555555555555l00000 
98 00000m5555555555555555555m000000 
99 000000n55555555555555555n0000000 
100 0000000op5555555555555pq00000000 
101 00000000rst555555555gsr000000000 
102 00000000000uvwaxawvu000000000000102 00000000000tuvZwZvut000000000000
103 00000000000000000000000000000000103 00000000000000000000000000000000
104 }104 }
1.21 KB
Image content
Pixel difference
compared images
Flicker difference
compared images
7.83 KB
res/drawable-hdpi-v4/ic_btn_back.png
5.26 KB
sng
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 #SNG:·from·stdin1 #SNG:·from·stdin
2 IHDR·{2 IHDR·{
3 ····width:·32;·height:·32;·bitdepth:·8;3 ····width:·32;·height:·32;·bitdepth:·8;
4 ····using·color·alpha;4 ····using·color·alpha;
5 }5 }
6 IMAGE·{6 IMAGE·{
7 ····pixels·hex7 ····pixels·hex
8 6b9a0100·4b6c012d·3349019f·324801cc·324801cc·324801f9·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801fc·324801cc·3248[·...·truncated·by·diffoscope;·len:·29,·SHA:·ebfcd49c56dc083f8524700a4bd989ed6a37dd78ebcece9e140383c370c6fff1·...·]00·8 00000000·4b6c012d·3349019f·324801cc·324801cc·324801f9·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801fc·324801cc·3248[·...·truncated·by·diffoscope;·len:·29,·SHA:·205081f6b6dbb1481cf3c0959ceb22dc7b0fc4165fc82ffa51960aa089b83160·...·]00·
9 5f89012d·547901f9·638f01ff·78ad02ff·83bd02ff·8ac602ff·90d002ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·90d002ff·8ac702ff·84be02ff·79ae02ff·648f01ff·547901f9·5f890130·9 5f89012d·547901f9·638f01ff·78ad02ff·83bd02ff·8ac602ff·90d002ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·90d002ff·8ac702ff·84be02ff·79ae02ff·648f01ff·547901f9·5f890130·
10 73a5029c·79af02ff·8fce02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·92d006ff·94d10bff·95d10dff·93d10aff·91d005ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·8fce02ff·79ae02ff·72a3029f·10 73a5029c·79af02ff·8fce02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·92d006ff·94d10bff·95d10dff·93d10aff·91d005ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·8fce02ff·79ae02ff·72a3029f·
11 7db302cc·87c102ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce03ff·92cf07ff·99d216ff·9fd525ff·a3d62eff·9bd31bff·93d00aff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·86bf02ff·7cb202d5·11 7db302cc·87c102ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce03ff·92cf07ff·99d216ff·9fd525ff·a3d62eff·9bd31bff·93d00aff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·86bf02ff·7cb202d5·
12 80b602e1·8bc602ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc03ff·93ce0aff·9ad11aff·a2d52dff·b1db50ff·ecf6d4ff·9ad11cff·93ce0aff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8cc702ff·81b802ed·12 80b602e1·8bc602ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc03ff·93ce0aff·9ad11aff·a2d52dff·b1db50ff·ecf6d4ff·9ad11cff·93ce0aff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8cc702ff·81b802ed·
13 80b802f0·8bc702ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8eca04ff·92cc0dff·9ad01fff·a2d430ff·b9de64ff·f7fbedff·ffffffff·90cb08ff·8eca04ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8cc902ff·81b902f0·13 80b802f0·8bc702ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8eca04ff·92cc0dff·9ad01fff·a2d430ff·b9de64ff·f7fbedff·ffffffff·90cb08ff·8eca04ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8cc902ff·81b902f0·
14 81b802f0·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8dc905ff·92cb10ff·9bcf23ff·a2d232ff·c7e585ff·fdfefaff·ffffffff·ffffffff·84bc02ff·8bc602ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·81b802f0·14 81b802f0·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8dc905ff·92cb10ff·9bcf23ff·a2d232ff·c7e585ff·fdfefaff·ffffffff·ffffffff·84bc02ff·8bc602ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·81b802f0·
15 80b602f0·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc603ff·8dc707ff·93ca14ff·9cce28ff·a4d23aff·d8ecabff·ffffffff·ffffffff·ffffffff·ffffffff·7fb502ff·89c302ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·80b602f0·15 80b602f0·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc603ff·8dc707ff·93ca14ff·9cce28ff·a4d23aff·d8ecabff·ffffffff·ffffffff·ffffffff·ffffffff·7fb502ff·89c302ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·80b602f0·
Offset 32, 9 lines modifiedOffset 32, 9 lines modified
32 689000f0·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·709a00ff·6b9300ff·5d8000ff·4b6700ff·687b36ff·edefe7ff·ffffffff·ffffffff·648a00ff·6f9900ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·689000f0·32 689000f0·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·709a00ff·6b9300ff·5d8000ff·4b6700ff·687b36ff·edefe7ff·ffffffff·ffffffff·648a00ff·6f9900ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·689000f0·
33 678e00f0·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709900ff·6b9300ff·608400ff·4e6b00ff·536918ff·d7dcc9ff·ffffffff·5d7f00ff·6c9500ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·678e00f0·33 678e00f0·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709900ff·6b9300ff·608400ff·4e6b00ff·536918ff·d7dcc9ff·ffffffff·5d7f00ff·6c9500ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·678e00f0·
34 688e00f0·719903ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9700ff·6c9400ff·628700ff·527000ff·4a6406ff·bac59fff·587900ff·699000ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·709801ff·678d00f0·34 688e00f0·719903ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9700ff·6c9400ff·628700ff·527000ff·4a6406ff·bac59fff·587900ff·699000ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·709801ff·678d00f0·
35 688e00e1·729907ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6c9400ff·658900ff·5b7c00ff·597900ff·608300ff·6a9100ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·719805ff·688e00ed·35 688e00e1·729907ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6c9400ff·658900ff·5b7c00ff·597900ff·608300ff·6a9100ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·719805ff·688e00ed·
36 6a9100cc·74990dff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6c9200ff·6a8f00ff·688e00ff·6a8f00ff·6c9200ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·74990dff·6a9000d2·36 6a9100cc·74990dff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6c9200ff·6a8f00ff·688e00ff·6a8f00ff·6c9200ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·74990dff·6a9000d2·
37 72980b96·7b9e1aff·6d9402ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6d9301ff·7b9e1aff·72970aa5·37 72980b96·7b9e1aff·6d9402ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6d9301ff·7b9e1aff·72970aa5·
38 89a7332d·94b047f6·90ad40ff·82a227ff·799b18ff·74970fff·6e9305ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6e9305ff·73970eff·799b18ff·81a126ff·90ad40ff·95b049f9·8aa83533·38 89a7332d·94b047f6·90ad40ff·82a227ff·799b18ff·74970fff·6e9305ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6e9305ff·73970eff·799b18ff·81a126ff·90ad40ff·95b049f9·8aa83533·
39 87a63200·9cb5552d·adc27293·aec274cc·aec274cc·aec274e4·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274e7·aec274cc·aec2[·...·truncated·by·diffoscope;·len:·29,·SHA:·1287c4636a5b2dd9f0b0465acce5ed9cd7d13108eb65fe0853f80184d30a4540·...·]00·39 00000000·9cb5552d·adc27293·aec274cc·aec274cc·aec274e4·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274e7·aec274cc·aec2[·...·truncated·by·diffoscope;·len:·29,·SHA:·9a77f727cffa7b28171ad0d78804d0e47c4695503045fa8c44e934395b6f3a43·...·]00·
40 }40 }
2.5 KB
Image content
Pixel difference
compared images
Flicker difference
compared images
7.84 KB
res/drawable-hdpi-v4/ic_btn_next.png
5.26 KB
sng
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 #SNG:·from·stdin1 #SNG:·from·stdin
2 IHDR·{2 IHDR·{
3 ····width:·32;·height:·32;·bitdepth:·8;3 ····width:·32;·height:·32;·bitdepth:·8;
4 ····using·color·alpha;4 ····using·color·alpha;
5 }5 }
6 IMAGE·{6 IMAGE·{
7 ····pixels·hex7 ····pixels·hex
8 6b9a0100·4a6b012d·334901a2·324801cc·324801cc·324801fc·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801f9·324801cc·3248[·...·truncated·by·diffoscope;·len:·29,·SHA:·3b7d5307c41a5ee8f91a211620b417495aca72ad42b8ed4be8e2c3d9976dd55c·...·]00·8 00000000·4a6b012d·334901a2·324801cc·324801cc·324801fc·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801ff·324801f9·324801cc·3248[·...·truncated·by·diffoscope;·len:·29,·SHA:·b026156ec675f226f69fb34dbfab42a52ea10e29a0f17f002a2ab230ae1534da·...·]00·
9 5f890130·547901f9·648f01ff·79ae02ff·84be02ff·8ac702ff·90d002ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·90d002ff·8ac602ff·83bd02ff·78ad02ff·638f01ff·547901f9·5f89012d·9 5f890130·547901f9·648f01ff·79ae02ff·84be02ff·8ac702ff·90d002ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·91d102ff·90d002ff·8ac602ff·83bd02ff·78ad02ff·638f01ff·547901f9·5f89012d·
10 72a3029f·79ae02ff·8fce02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·91d005ff·93d10aff·95d10dff·94d10bff·92d006ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·8fce02ff·79af02ff·73a5029c·10 72a3029f·79ae02ff·8fce02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·91d005ff·93d10aff·95d10dff·94d10bff·92d006ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·90cf02ff·8fce02ff·79af02ff·73a5029c·
11 7cb202d5·86bf02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·93d00aff·9bd31bff·a3d62eff·9fd525ff·99d216ff·92cf07ff·90ce03ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·87c102ff·7db302cc·11 7cb202d5·86bf02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·93d00aff·9bd31bff·a3d62eff·9fd525ff·99d216ff·92cf07ff·90ce03ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·90ce02ff·87c102ff·7db302cc·
12 81b802ed·8cc702ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·93ce0aff·9ad11cff·ecf6d4ff·b1db50ff·a2d52dff·9ad11aff·93ce0aff·8fcc03ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8bc602ff·80b602e1·12 81b802ed·8cc702ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·93ce0aff·9ad11cff·ecf6d4ff·b1db50ff·a2d52dff·9ad11aff·93ce0aff·8fcc03ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8fcc02ff·8bc602ff·80b602e1·
13 81b902f0·8cc902ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8eca04ff·90cb08ff·ffffffff·f7fbedff·b9de64ff·a2d430ff·9ad01fff·92cc0dff·8eca04ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8bc702ff·80b802f0·13 81b902f0·8cc902ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8eca04ff·90cb08ff·ffffffff·f7fbedff·b9de64ff·a2d430ff·9ad01fff·92cc0dff·8eca04ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8dca02ff·8bc702ff·80b802f0·
14 81b802f0·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8bc602ff·84bc02ff·ffffffff·ffffffff·fdfefaff·c7e585ff·a2d232ff·9bcf23ff·92cb10ff·8dc905ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·81b802f0·14 81b802f0·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8bc602ff·84bc02ff·ffffffff·ffffffff·fdfefaff·c7e585ff·a2d232ff·9bcf23ff·92cb10ff·8dc905ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·8cc802ff·81b802f0·
15 80b602f0·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·89c302ff·7fb502ff·ffffffff·ffffffff·ffffffff·ffffffff·d8ecabff·a4d23aff·9cce28ff·93ca14ff·8dc707ff·8bc603ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·80b602f0·15 80b602f0·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·89c302ff·7fb502ff·ffffffff·ffffffff·ffffffff·ffffffff·d8ecabff·a4d23aff·9cce28ff·93ca14ff·8dc707ff·8bc603ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·8bc602ff·80b602f0·
Offset 32, 9 lines modifiedOffset 32, 9 lines modified
32 689000f0·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·6f9900ff·648a00ff·ffffffff·ffffffff·edefe7ff·687b36ff·4b6700ff·5d8000ff·6b9300ff·709a00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·689000f0·32 689000f0·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·6f9900ff·648a00ff·ffffffff·ffffffff·edefe7ff·687b36ff·4b6700ff·5d8000ff·6b9300ff·709a00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·719c00ff·689000f0·
33 678e00f0·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·6c9500ff·5d7f00ff·ffffffff·d7dcc9ff·536918ff·4e6b00ff·608400ff·6b9300ff·709900ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·678e00f0·33 678e00f0·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·6c9500ff·5d7f00ff·ffffffff·d7dcc9ff·536918ff·4e6b00ff·608400ff·6b9300ff·709900ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·709a00ff·678e00f0·
34 678d00f0·709801ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·699000ff·587900ff·bac59fff·4a6406ff·527000ff·628700ff·6c9400ff·6f9700ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·719903ff·688e00f0·34 678d00f0·709801ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·699000ff·587900ff·bac59fff·4a6406ff·527000ff·628700ff·6c9400ff·6f9700ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·6f9800ff·719903ff·688e00f0·
35 688e00ed·719805ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6a9100ff·608300ff·597900ff·5b7c00ff·658900ff·6c9400ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·729907ff·688e00e1·35 688e00ed·719805ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6a9100ff·608300ff·597900ff·5b7c00ff·658900ff·6c9400ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·6e9600ff·729907ff·688e00e1·
36 6a9000d2·74990dff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6c9200ff·6a8f00ff·688e00ff·6a8f00ff·6c9200ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·74990dff·6a9100cc·36 6a9000d2·74990dff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6c9200ff·6a8f00ff·688e00ff·6a8f00ff·6c9200ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·6d9400ff·74990dff·6a9100cc·
37 72970aa5·7b9e1aff·6d9301ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6d9402ff·7b9e1aff·72980b96·37 72970aa5·7b9e1aff·6d9301ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6c9300ff·6d9402ff·7b9e1aff·72980b96·
38 8aa83533·95b049f9·90ad40ff·81a126ff·799b18ff·73970eff·6e9305ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6e9305ff·74970fff·799b18ff·82a227ff·90ad40ff·94b047f6·89a7332d·38 8aa83533·95b049f9·90ad40ff·81a126ff·799b18ff·73970eff·6e9305ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6b9100ff·6e9305ff·74970fff·799b18ff·82a227ff·90ad40ff·94b047f6·89a7332d·
39 88a63300·9cb5562d·adc27299·aec274cc·aec274cc·aec274e7·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274e4·aec274cc·aec2[·...·truncated·by·diffoscope;·len:·29,·SHA:·3c9e1ec779cd02d271d263c022216e30ac12e50cdf1297ba45fa44e9e4c2ed77·...·]00·39 00000000·9cb5562d·adc27299·aec274cc·aec274cc·aec274e7·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274ff·aec274e4·aec274cc·aec2[·...·truncated·by·diffoscope;·len:·29,·SHA:·48b5d34a2ceec3ae6c170a5da9281ffc523f90f5d521af0752101968e4c4c0ae·...·]00·
40 }40 }
2.51 KB
Image content
Pixel difference
compared images
Flicker difference
compared images
567 B
res/layout/remove_account_prompt.xml
495 B
res/layout/remove_account_prompt.xml
    
Offset 1, 2 lines modifiedOffset 1, 2 lines modified
1 <?xml·version="1.0"·encoding="utf-8"?>1 <?xml·version="1.0"·encoding="utf-8"?>
2 <WebView·xmlns:android="http://schemas.android.com/apk/res/android"·android:id="@id/web_view"·android:layout_width="fill_parent"·android:layout_height="wrap_content"·android:layerType="software"/>2 <WebView·xmlns:android="http://schemas.android.com/apk/res/android"·android:id="@id/web_view"·android:layout_width="fill_parent"·android:layout_height="wrap_content"/>
4.82 KB
res/drawable-mdpi-v14/refresh.png
3.53 KB
sng
    
Offset 5, 15 lines modifiedOffset 5, 14 lines modified
5 }5 }
6 PLTE·{6 PLTE·{
7 ····(··0,··0,··0)·····#·rgb·=·(0x00,0x00,0x00)·grey07 ····(··0,··0,··0)·····#·rgb·=·(0x00,0x00,0x00)·grey0
8 ····(147,215,241)·····#·rgb·=·(0x93,0xd7,0xf1)8 ····(147,215,241)·····#·rgb·=·(0x93,0xd7,0xf1)
9 ····(131,210,239)·····#·rgb·=·(0x83,0xd2,0xef)9 ····(131,210,239)·····#·rgb·=·(0x83,0xd2,0xef)
10 ····(111,202,236)·····#·rgb·=·(0x6f,0xca,0xec)10 ····(111,202,236)·····#·rgb·=·(0x6f,0xca,0xec)
11 ····(106,201,236)·····#·rgb·=·(0x6a,0xc9,0xec)11 ····(106,201,236)·····#·rgb·=·(0x6a,0xc9,0xec)
12 ····(·51,181,229)·····#·rgb·=·(0x33,0xb5,0xe5) 
13 ····(131,210,239)·····#·rgb·=·(0x83,0xd2,0xef)12 ····(131,210,239)·····#·rgb·=·(0x83,0xd2,0xef)
14 ····(·96,197,234)·····#·rgb·=·(0x60,0xc5,0xea)13 ····(·96,197,234)·····#·rgb·=·(0x60,0xc5,0xea)
15 ····(·94,196,234)·····#·rgb·=·(0x5e,0xc4,0xea)14 ····(·94,196,234)·····#·rgb·=·(0x5e,0xc4,0xea)
16 ····(·52,181,229)·····#·rgb·=·(0x34,0xb5,0xe5)15 ····(·52,181,229)·····#·rgb·=·(0x34,0xb5,0xe5)
17 ····(141,213,240)·····#·rgb·=·(0x8d,0xd5,0xf0)16 ····(141,213,240)·····#·rgb·=·(0x8d,0xd5,0xf0)
18 ····(·85,193,233)·····#·rgb·=·(0x55,0xc1,0xe9)17 ····(·85,193,233)·····#·rgb·=·(0x55,0xc1,0xe9)
19 ····(140,213,240)·····#·rgb·=·(0x8c,0xd5,0xf0)18 ····(140,213,240)·····#·rgb·=·(0x8c,0xd5,0xf0)
Offset 60, 45 lines modifiedOffset 59, 46 lines modified
60 ····(153,218,242)·····#·rgb·=·(0x99,0xda,0xf2)59 ····(153,218,242)·····#·rgb·=·(0x99,0xda,0xf2)
61 ····(121,206,238)·····#·rgb·=·(0x79,0xce,0xee)60 ····(121,206,238)·····#·rgb·=·(0x79,0xce,0xee)
62 ····(·78,191,232)·····#·rgb·=·(0x4e,0xbf,0xe8)61 ····(·78,191,232)·····#·rgb·=·(0x4e,0xbf,0xe8)
63 ····(139,213,240)·····#·rgb·=·(0x8b,0xd5,0xf0)62 ····(139,213,240)·····#·rgb·=·(0x8b,0xd5,0xf0)
64 ····(120,206,237)·····#·rgb·=·(0x78,0xce,0xed)63 ····(120,206,237)·····#·rgb·=·(0x78,0xce,0xed)
65 ····(·97,197,234)·····#·rgb·=·(0x61,0xc5,0xea)64 ····(·97,197,234)·····#·rgb·=·(0x61,0xc5,0xea)
66 ····(·73,189,231)·····#·rgb·=·(0x49,0xbd,0xe7)65 ····(·73,189,231)·····#·rgb·=·(0x49,0xbd,0xe7)
 66 ····(·51,181,229)·····#·rgb·=·(0x33,0xb5,0xe5)
67 }67 }
68 tRNS·{68 tRNS·{
69 ·0·27·91·147·159·255·87·183·187·253·51·203·55·107·247·251·254·111·204·152·128·160·40·252·96·167·191·171·148·151·196·99·28·20·35·144·199·72·103·244·68·3·219·12·71·172·112·135·143·139·75·227·83·7·119·215·59·123·179·223}69 ·0·27·91·147·159·87·183·187·253·51·203·55·107·247·251·254·111·204·152·128·160·40·252·96·167·191·171·148·151·196·99·28·20·35·144·199·72·103·244·68·3·219·12·71·172·112·135·143·139·75·227·83·7·119·215·59·123·179·223}
70 IMAGE·{70 IMAGE·{
71 ····pixels·base6471 ····pixels·base64
72 0000000000000000000000000000000072 00000000000000000000000000000000
73 0000000000000000000000000000000073 00000000000000000000000000000000
74 0000000000012344432100000555550074 0000000000012344432100000xxxxx00
75 00000000067555555555860009999900 
76 0000000AB5555555555555BC99999900 
77 000000DE555555555555555FG9999900 
78 00000H5555555555555555555G999900 
79 0000D555555555555555555555G99900 
80 000AE55555555IJKJI55555555599900 
81 000B5555555LM00000ML555555559900 
82 006555555NO000000009G55555555900 
83 007555555O00000059999G5555555900 
84 01555555L0000000599999G555555900 
85 02555555M00000005999999955555900 
86 0355555I000000005999999955555900 
87 0P55555J00000000555555555555550075 00000000056xxxxxxxxx750008888800
 76 00000009AxxxxxxxxxxxxxAB88888800
 77 000000CDxxxxxxxxxxxxxxxEF8888800
 78 00000GxxxxxxxxxxxxxxxxxxxF888800
 79 0000CxxxxxxxxxxxxxxxxxxxxxF88800
 80 0009DxxxxxxxxHIJIHxxxxxxxxx88800
 81 000AxxxxxxxKL00000LKxxxxxxxx8800
 82 005xxxxxxMN000000008Fxxxxxxxx800
 83 006xxxxxxN000000x8888Fxxxxxxx800
 84 01xxxxxxK0000000x88888Fxxxxxx800
 85 02xxxxxxL0000000x8888888xxxxx800
 86 03xxxxxH00000000x8888888xxxxx800
 87 0OxxxxxI00000000xxxxxxxxxxxxxx00
 88 0PxxxxxJ000000000000000000000000
88 0Q55555K00000000000000000000000089 0QxxxxxR000000000000000000000000
89 0R55555S00000000000000000000000090 0SxxxxxT000000000000000000000000
 91 0UxxxxxMV0000000000000WMxx000000
 92 0XxxxxxxY0000000000000Yxxxxx0000
 93 00ZxxxxxMa00000000000aMxxxxx0000
 94 00bxxxxxxcd000000000dcxxxxxxb000
 95 00efxxxxxxMJg00000gJMxxxxxxfe000
 96 000hxxxxxxxxcijNjicxxxxxxxxh0000
 97 0000kxxxxxxxxxxxxxxxxxxxxxk00000
 98 00000lxxxxxxxxxxxxxxxxxxxl000000
 99 000000mxxxxxxxxxxxxxxxxxm0000000
 100 0000000noxxxxxxxxxxxxxop00000000
 101 00000000qrsxxxxxxxxxfrq000000000
90 0T55555U000000000000000000000000 
91 0V55555NW0000000000000XN55000000 
92 0Y555555Z0000000000000Z555550000 
93 00a55555Nb00000000000bN555550000 
94 00c555555de000000000ed555555c000 
95 00fg555555NKh00000hKN555555gf000 
96 000i55555555djkOkjd55555555i0000 
97 0000l555555555555555555555l00000 
98 00000m5555555555555555555m000000 
99 000000n55555555555555555n0000000 
100 0000000op5555555555555pq00000000 
101 00000000rst555555555gsr000000000 
102 00000000000uvwaxawvu000000000000102 00000000000tuvZwZvut000000000000
103 00000000000000000000000000000000103 00000000000000000000000000000000
104 }104 }
1.22 KB
Image content
Pixel difference
compared images
Flicker difference
compared images